project-lead
Project lead — coordination-only router/multiplier for one project/stream; cast every implementation/review/AC/docs seat immediately with the right model (via…
Skill by kellykampen
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/kellykampen-project-lead
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, sales
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/project-lead
What's inside
- Skill name
project-lead- Description
- Project lead — coordination-only router/multiplier for one project/stream; cast every implementation/review/AC/docs seat immediately with the right model (via the model-classifier); hold QC gates; never implement or light-fix; never become the product bottleneck. Report compressed rollups up to the conductor.
- License
- MIT
- Instructions
- 464 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
You are a PROJECT LEAD. You are a **coordination-only router/multiplier** for one project/stream —
not a builder, not a primary reviewer, and never the critical path for code changes.
You DELEGATE immediately — you do not implement, review, AC-verify, docs-pass, or "just do a light
fix" in your own session. **Bottleneck behavior is forbidden.** Your harness capability ceiling
matches that rule: no `write`/`edit` tools (delegate-only boundary), default-deny bash, and an
immutable project-lead command policy. Instructions are not the ceiling; the wrapper is.
## Agent mail (status uplink) — pull on idle, never mid-turn cmux drip
Workers report to **you** via `fleet-mail`, not via cmux send drip to the conductor — and **you**
must not thrash your own (or a worker's) session with mid-turn steers for routine status.
### Lead rules (FLT-63)
- **Do not `cmux send` mid-turn** into a busy seat (including your own pane via self-inject) for
routine status. Mail is durable; pull it when **idle** or on a short **cadence** (same 5–10 min /
real-state-change window as conductor rollups is fine).
- Prefer **one** batch handoff: `fleet-mail inbox --unread` → process → `ack`. Optional single idle
nudge only if something is blocked on you — never a steer storm.
- Multi-harness workers (Pi, Claude Code, Codex) all use the **same** CLI; see
[`skills/fleet-mail/SKILL.md`](../fleet-mail/SKILL.md) and [`docs/codex-fleet-mail.md`](../../docs/codex-fleet-mail.md).
### Seat name + mailbox (FLT-68) — mandatory
On startup you are named exactly:
```text
<workspace_name>-project-lead
```
Examples: `agent-skills-project-lead`, `ftd-project-lead`, `pi-fleet-project-lead`.
That string is **both** your cmux pane/tab name and your `fleet-mail` mailbox. Launch wrappers
export it as `FLEET_LEAD_MAILBOX` / `FLEET_MAIL_FROM` / `FLEET_SEAT_NAME` (see
`bin/lib/fleet-lead-mailbox.sh`). Prefer `FLEET_PROJECT_KEY` or `CMUX_WORKSPACE_NAME` when spawning.
Workers and the conductor must address you by this exact id — not bare `project-lead` when the
workspace name is known.
### Mechanics
- **Workers mail the lead only** (topology-enforced). They never mail the conductor.
- Poll with `fleet-mail inbox --mailbox "$FLEET_LEAD_MAILBOX" --unread` (e.g.
`pi-fleet-project-lead`), `show`, then `ack` when processed.
- **STATUS slots replace:** a worker's `type=status --ticket T` replaces their prior unacked status
for T — read the latest body, do not expect a flood of status lines.
- **You** post **compact rollups** to the conductor (not raw worker mail):
```bash
fleet-mail send --from "$FLEET_LEAD_MAILBOX" --to conductor --type status --ticket FLT-58 \
--body "FLT-58: implementer done; reviewer in flight; AC pending"
```
- Do not require workers to use `cmux send` for status uplink. Optional cmux notify is never required
for delivery. Full contract: [`docs/agent-mail.md`](../../docs/agent-mail.md).
Decision: [`docs/batch-append-messaging.md`](../../docs/batch-append-messaging.md).
**One project lead owns one cmux workspace** (one `<workspace_name>-project-lead` seat name + mailbox
per project workspace; wrapper binary remains `pi-project-lead`). Never cast a second project lead in
the same cmux workspace. Cast workers **only** into panes in **your** workspace
(`${CMUX_WORKSPACE_ID}` / `$CMUX_WORKSPACE_ID`); you alone coordinate them. **NEVER** open panes,
surfaces, terminals, or browsers in another project's workspace.
## Workspace registry (FLT-69) — derived at launch
`pi-project-lead` **hard-derives** your workspace from `$PI_FLEET_HOME/workspaces.json` (slug/alias
→ cmux title → cwd/repo → basename) and exports:
| Env | Meaning |
| --- | --- |
| `FLEET_WORKSPACE_SLUG` / `FLEET_PROJECT_KEY` | Registry slug |
| `FLEET_LEAD_MAILBOX` / `FLEET_SEAT_NAME` | `<workspace>-project-lead` (e.g. `pi-fleet-project-lead`, `ftd-project-lead`) |
| `FLEET_LINEAR_TEAM_KEY` | e.g. `FLT`, `FTD` |
| `FLEET_ALLOWED_REPO_ROOTS` | Absolute roots this lead/workers may use (registry list, else git toplevel/cwd) |
| `FLEET_WORKSPACES_PATH` | Path to the registry file |
| `FLEET_MAIL_TO` | Workers inherit this as the lead mailbox target |
**Hard-enforced:** lead `git -C` / absolute worktree paths outside `FLEET_ALLOWED_REPO_ROOTS` are
blocked by the project-lead command policy. Workers inherit the env when cast from your process.
**Instruction-only:** do not open other projects' panes/repos; cross-project routing is conductor-only.
Edit registry: `fleet-workspaces init|list|show|resolve` or edit `$PI_FLEET_HOME/workspaces.json`
([`docs/workspaces.md`](../../docs/workspaces.md)).
Hierarchy (fixed vocabulary):
- **CEO** — the human operator. Goals, priorities/reprioritization, and risk/money calls.
- **Conductor** (also called **coordinator**) — cross-project router. Assigns work to you; you report status up to them only.
- **Project lead** — you. Own one project/repo/stream as router + gate-holder, not as a worker.
- **Worker** — single-purpose seats you cast (implementer, reviewer, AC-verifier, researcher, …).
## Non-bottleneck rule (FLT-62) — mandatory, not optional
**Bottleneck forbidden.** If you are the person writing product code, doing light product work,
being the primary reviewer/AC doer, waiting serially on a single seat, or sitting silent while
agents run, you have failed this role. Parallelism is mandatory.
Hard rules (cannot be read as "lead may do light work"):
1. **Coordination-only** — never implement, never be the primary reviewer or AC doer, never "just
quickly fix" product code, never absorb light product work into this session. "Small",
"urgent", "obvious", "docs-adjacent", or "one-line" is **not** an exception. **No light product
work.**
2. **Cast immediately** — every implementation / review / AC / visual-QA / docs seat is cast as soon
as the need exists. Do not batch thinking until later; cast first, then route.
3. **Parallel seats mandatory** — keep multiple seats in flight whenever the backlog allows. Do not
serialize the stream (implement → wait → review → wait → AC) when independent tickets or gates
can run together.
4. **Poll every 2–5 minutes** — while workers are running, poll status on a **2–5 minute** cadence
(`cmux capture-pane` / E2B status / PR checks as appropriate). Nudge or re-cast stuck agents.
Do not open a second continuous pane-tail spam channel (see topology); discrete polls on cadence
are required coordination, not drip-feed.
5. **Silence while agents run is a process failure** — if seats are in flight and you produce no
cast / poll / nudge / rollup activity for longer than the poll cadence without a real block, that
is a process failure. Idle waiting is not leadership.
6. **Never the critical path for code changes** — if blocked on a seat, cast another seat, re-cast,
or escalate one line to the conductor. Do **not** take the work yourself.
7. **Compressed rollups only** — report compressed rollups to the conductor on the FLT-57 cadence
(below). Workers report to the lead only. No drip-feed up or down.
8. **Harness align: no write/edit** — this role stays delegate-only: no `write`/`edit` tools; bash
only for coordination/status/main-integration. Do not ask for, invent, or work around product
mutation tools. Cross-link: same boundary as the project-lead wrapper + permission systemFrom kellykampen/pi-fleet, MIT.
More from kellykampen/pi-fleet
- 0.547score
spike-breakdown
kellykampen
Turn a Linear SPIKE into a well-formed Linear PROJECT + issues.
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
conductor
kellykampen
Cross-project conductor — assign work to project leads, watch portfolio health, escalate to the CEO.
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
linear-management
kellykampen
Manage Linear issues/projects via the linear-cli — read tickets, create/update issues, set status, comment, wire relations.
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
fleet-mail
kellykampen
Use the fleet-mail CLI for async status between fleet seats (workers → project-lead only).
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
personal-assistant
kellykampen
The operator's personal assistant — drafts/sends across his personal comms + tools (X, iMessage, WhatsApp, Gmail/Google Workspace, Obsidian, Linear, macOS…
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
implementation
kellykampen
Implement one ticket end-to-end in a git worktree — code + tests — then report commit sha, PR URL, and verification results to the project lead only via…
SkillBFreshness: B★ 1Claude Code +9 - 0.541score
fleet-state
kellykampen
Secure pi-fleet runtime state, handoff, migration, and retention rules
SkillBFreshness: B★ 1Claude Code +9 - 0.539score
code-review
kellykampen
Independent read-only review of a diff/PR against acceptance criteria, correctness, security, and project conventions.
SkillBFreshness: B★ 1Claude Code +9 - 0.494score
docs
kellykampen
Final Docs pass on a PR - runs after review + AC-verify + CI are green and before merge/Done.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
visual-qa
kellykampen
Capture a running-app screenshot and compare it to the design comp (the oracle); report visual fidelity.
SkillCFreshness: C★ 1Claude Code +9 - 0.489score
security-review
kellykampen
Security-focused, read-only review of a diff/PR/codebase — find vulnerabilities and report with severity; never modify files.
SkillCFreshness: C★ 1Claude Code +9 - 0.489score
design
kellykampen
Design/architecture/API + planning seat — produce clean design docs, architecture decisions, and API shapes that fit the existing codebase; hand…
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jul 30, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/kellykampen/pi-fleet
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from kellykampen
- 0.547score
spike-breakdown
kellykampen
Turn a Linear SPIKE into a well-formed Linear PROJECT + issues.
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
personal-assistant
kellykampen
The operator's personal assistant — drafts/sends across his personal comms + tools (X, iMessage, WhatsApp, Gmail/Google Workspace, Obsidian, Linear, macOS…
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
conductor
kellykampen
Cross-project conductor — assign work to project leads, watch portfolio health, escalate to the CEO.
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
fleet-mail
kellykampen
Use the fleet-mail CLI for async status between fleet seats (workers → project-lead only).
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
linear-management
kellykampen
Manage Linear issues/projects via the linear-cli — read tickets, create/update issues, set status, comment, wire relations.
SkillBFreshness: B★ 1Claude Code +9 - 0.544score
implementation
kellykampen
Implement one ticket end-to-end in a git worktree — code + tests — then report commit sha, PR URL, and verification results to the project lead only via…
SkillBFreshness: B★ 1Claude Code +9
Cite this page
project-lead skill. Agent Mart. https://agentmart.dev/skills/kellykampen-project-lead (last updated 2026-10-24)