Epic lead
The epic-lead is the single team-lead for one approved EPIC. It owns the
whole EPIC end-to-end — scope, dependencies, delegation, review, integration,
and authorized finalization — and delegates the implementation to sub-agents.
It does not implement in the main thread.
This skill is runtime-agnostic: it works for any agent application that can
delegate sub-agent work. Adapt the concrete delegation and ask mechanism to
your runtime; the orchestration rules below are universal.
Before acting, load and follow ai-agents-skills:kanban,
ai-agents-skills:git-flow, and ai-agents-skills:teamlead. They own the
Kanban lifecycle/scripts, Git mechanics, and delegation/review rules. This skill
adds only the EPIC orchestration delta.
Scope
- Own exactly one named
EPIC-<NUM> and its approved child cards. There is no
separate portfolio lead: this role makes the scope, dependency, and escalation
decisions for its own EPIC. Do not start another EPIC, infer a new card, or
expand scope.
- Record a short decision digest in the parent card before mutation: EPIC ID,
approved children, dependencies, acceptance criteria, authorization form,
default-branch baseline SHA, and parked risks.
- Accepted finalization authorization is explicit user approval at hand-off or
recorded EPIC-scoped upfront autonomous authorization. The latter applies only
to the named EPIC and approved children; it never grants push, later-EPIC
startup, scope expansion, or a test/review bypass.
Prepare
- Detect the default branch; never assume
main. On it, require a clean
git status --short baseline and record its SHA. Pre-existing dirt blocks
this EPIC procedure until resolved.
- Create exactly one
epic/<ID> branch from that baseline. All child work stays
on this branch; use Kanban's epic/subtask IDs and scripts.
- Agree the sub-agent model and reasoning level before starting. Ask the
user one question (options + a recommendation) to set the model tier and
reasoning level for the sub-agents that will implement the children. Use the
ai-agents-skills:model-tiers mapping (cheap / standard / judgment) and pass
the resolved slug on every delegation. If the user has no preference, default
to standard and let a sub-agent escalate on ambiguity.
- Build one concise dependency, acceptance, and evidence matrix. For each child
record predecessors, owner/zone, allowed paths, scoped gate, integration
boundary, and acceptance evidence.
- Parallel work is allowed only when the parent card declares it, dependencies
permit it, and zones/allowed paths do not overlap. Otherwise follow listed
child order.
Execute and review
- Follow Kanban stages and move cards with its scripts. Child cards stop at
ready; only the authorized parent gates their done transitions.
- Follow Git Flow exactly: explicit-path staging, each sub-agent commits its own
zone, the orchestrator makes only its wrap-up commit, and
Agent: <zone> is
the only commit trailer.
- The reviewer is read-only and reviews real diffs plus recorded evidence; it
never implements, stages, or commits. Use the teamlead's reviewer routing.
- After a failed scoped gate or review, make one recorded repair round for the
child and rerun the same relevant evidence. If the repair remains unresolved or
changes scope/dependencies, park/block the child and return the decision with
evidence to the user. Do not leak it into another child.
- Record authorization, agent/zone, gate command/result, reviewer verdict, commit
SHA, and any available sanitized prompt/session artifact ID, digest, or
checksum in the Kanban Execution Log. Never store full prompts or secrets, and
never add that evidence as Git trailers.
Integrate and finalize
- When every child is
ready, run Kanban's EPIC integration gate: clean restart
where relevant, refresh affected data, and the full project quality gate.
Review the integrated base SHA..HEAD diff and hand off the parent at ready
only with green evidence.
- On one accepted authorization form, move the parent EPIC
ready → done with
--approved, then move its children to done as Kanban permits.
- Verify
epic/<ID> is clean. Only then perform one local squash merge into the
detected default branch, following Git Flow. Do not push without separate user
approval and never force-push.
- Rename the archive branch, do not delete it:
git branch -m epic/<ID> done/<ID>.
- Hand off concisely: authorization reference, card states, commits/changed
zones, gate and review evidence, parked risks, clean status, archive branch,
and explicit no-push/no-later-EPIC status.
Do not import
Do not introduce candidate/amend finalization, custom commit trailers, WIP
checkpoint commits, mandatory profile names, or branch deletion. Those conflict
with the canonical shared workflows.
1---2name: epic-lead3description: Use when delivering one approved Kanban EPIC through governed integration, review, and handoff.4---56# Epic lead78The epic-lead is the **single team-lead** for one approved EPIC. It owns the9whole EPIC end-to-end — scope, dependencies, delegation, review, integration,10and authorized finalization — and delegates the implementation to sub-agents.11It does not implement in the main thread.1213This skill is **runtime-agnostic**: it works for any agent application that can14delegate sub-agent work. Adapt the concrete delegation and ask mechanism to15your runtime; the orchestration rules below are universal.1617Before acting, load and follow `ai-agents-skills:kanban`,18`ai-agents-skills:git-flow`, and `ai-agents-skills:teamlead`. They own the19Kanban lifecycle/scripts, Git mechanics, and delegation/review rules. This skill20adds only the EPIC orchestration delta.2122## Scope2324- Own exactly one named `EPIC-<NUM>` and its approved child cards. There is no25 separate portfolio lead: this role makes the scope, dependency, and escalation26 decisions for its own EPIC. Do not start another EPIC, infer a new card, or27 expand scope.28- Record a short decision digest in the parent card before mutation: EPIC ID,29 approved children, dependencies, acceptance criteria, authorization form,30 default-branch baseline SHA, and parked risks.31- Accepted finalization authorization is explicit user approval at hand-off or32 recorded EPIC-scoped upfront autonomous authorization. The latter applies only33 to the named EPIC and approved children; it never grants push, later-EPIC34 startup, scope expansion, or a test/review bypass.3536## Prepare37381. Detect the default branch; never assume `main`. On it, require a clean39 `git status --short` baseline and record its SHA. Pre-existing dirt blocks40 this EPIC procedure until resolved.412. Create exactly one `epic/<ID>` branch from that baseline. All child work stays42 on this branch; use Kanban's epic/subtask IDs and scripts.433. **Agree the sub-agent model and reasoning level before starting.** Ask the44 user one question (options + a recommendation) to set the model tier and45 reasoning level for the sub-agents that will implement the children. Use the46 `ai-agents-skills:model-tiers` mapping (cheap / standard / judgment) and pass47 the resolved slug on every delegation. If the user has no preference, default48 to standard and let a sub-agent escalate on ambiguity.494. Build one concise dependency, acceptance, and evidence matrix. For each child50 record predecessors, owner/zone, allowed paths, scoped gate, integration51 boundary, and acceptance evidence.525. Parallel work is allowed only when the parent card declares it, dependencies53 permit it, and zones/allowed paths do not overlap. Otherwise follow listed54 child order.5556## Execute and review5758- Follow Kanban stages and move cards with its scripts. Child cards stop at59 `ready`; only the authorized parent gates their `done` transitions.60- Follow Git Flow exactly: explicit-path staging, each sub-agent commits its own61 zone, the orchestrator makes only its wrap-up commit, and `Agent: <zone>` is62 the only commit trailer.63- The reviewer is read-only and reviews real diffs plus recorded evidence; it64 never implements, stages, or commits. Use the teamlead's reviewer routing.65- After a failed scoped gate or review, make one recorded repair round for the66 child and rerun the same relevant evidence. If the repair remains unresolved or67 changes scope/dependencies, park/block the child and return the decision with68 evidence to the user. Do not leak it into another child.69- Record authorization, agent/zone, gate command/result, reviewer verdict, commit70 SHA, and any available sanitized prompt/session artifact ID, digest, or71 checksum in the Kanban Execution Log. Never store full prompts or secrets, and72 never add that evidence as Git trailers.7374## Integrate and finalize75761. When every child is `ready`, run Kanban's EPIC integration gate: clean restart77 where relevant, refresh affected data, and the full project quality gate.78 Review the integrated `base SHA..HEAD` diff and hand off the parent at `ready`79 only with green evidence.802. On one accepted authorization form, move the parent EPIC `ready → done` with81 `--approved`, then move its children to `done` as Kanban permits.823. Verify `epic/<ID>` is clean. Only then perform one local squash merge into the83 detected default branch, following Git Flow. Do not push without separate user84 approval and never force-push.854. Rename the archive branch, do not delete it:86 `git branch -m epic/<ID> done/<ID>`.875. Hand off concisely: authorization reference, card states, commits/changed88 zones, gate and review evidence, parked risks, clean status, archive branch,89 and explicit no-push/no-later-EPIC status.9091## Do not import9293Do not introduce candidate/amend finalization, custom commit trailers, WIP94checkpoint commits, mandatory profile names, or branch deletion. Those conflict95with the canonical shared workflows.