pi-herdsman 0.21.2 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/SKILL.md +104 -90
  2. package/dist/agent-definitions/flexible-lead.md +7 -0
  3. package/dist/agent-definitions/generalist.md +7 -7
  4. package/dist/agent-definitions/implementer.md +7 -7
  5. package/dist/agent-definitions/managed-lead.md +9 -5
  6. package/dist/agent-definitions/orchestrator-lead.md +9 -0
  7. package/dist/agent-definitions/researcher.md +11 -11
  8. package/dist/agent-definitions/reviewer.md +7 -7
  9. package/dist/agent-definitions/scout.md +6 -6
  10. package/dist/index.js +1494 -565
  11. package/dist/index.js.map +3 -3
  12. package/docs/README.md +1 -1
  13. package/docs/adr/0006-use-operation-specific-semantic-tools.md +1 -1
  14. package/docs/adr/0010-retire-managed-agent-sessions-before-threshold-compaction.md +18 -15
  15. package/docs/adr/0013-use-herdr-worktree-removal-for-project-retirement.md +2 -0
  16. package/docs/adr/0017-use-project-assignments-for-managed-lead-authority.md +82 -0
  17. package/docs/adr/0018-use-standalone-lead-execution-profiles.md +61 -0
  18. package/docs/concepts/agents.md +5 -5
  19. package/docs/concepts/coordination.md +62 -34
  20. package/docs/concepts/delegation.md +10 -7
  21. package/docs/concepts/lifecycle.md +18 -13
  22. package/docs/coordination-api.md +37 -32
  23. package/docs/development/documentation.md +7 -6
  24. package/docs/development/product-philosophy.md +26 -0
  25. package/docs/development/smoke-testing.md +109 -77
  26. package/docs/getting-started.md +7 -12
  27. package/docs/guides/agent-definitions.md +13 -9
  28. package/docs/guides/customizing-agents.md +82 -13
  29. package/docs/guides/handoffs.md +24 -7
  30. package/docs/guides/project-orchestration.md +70 -33
  31. package/docs/guides/recovery.md +14 -14
  32. package/docs/reference/agent-definition-schema.md +86 -50
  33. package/docs/reference/agent-states.md +17 -17
  34. package/docs/reference/agent.md +67 -67
  35. package/docs/reference/ask-owner.md +2 -2
  36. package/docs/reference/commands.md +111 -53
  37. package/docs/reference/configuration.md +10 -2
  38. package/docs/reference/peer.md +3 -3
  39. package/docs/reference/staff.md +35 -27
  40. package/docs/reference/status-widget.md +26 -6
  41. package/docs/reference/supervisor.md +29 -38
  42. package/package.json +5 -5
  43. package/skills/{pi-herdsman-agent-definitions → agent-definitions}/SKILL.md +23 -9
package/SKILL.md CHANGED
@@ -26,10 +26,6 @@ Coordinate managed agents.
26
26
 
27
27
  Use these high-salience rules for the model-facing agent boundary:
28
28
 
29
- - Delegate bounded execution work when an Agent can reasonably own it and
30
- delegation is useful. Keep work local when it is trivial, inseparable from
31
- work you must own, otherwise unsuitable for an Agent, or delegation would add
32
- more coordination than value.
33
29
  - Each unresolved unit of work has one executor. Delegating a scope transfers
34
30
  its execution ownership to that agent until the assignment resolves; do not
35
31
  execute or assign overlapping work while it is delegated.
@@ -42,24 +38,24 @@ Use these high-salience rules for the model-facing agent boundary:
42
38
  - When agent work is unresolved, handle required agent control, then continue
43
39
  only necessary work you still own or end the turn without concluding; agent
44
40
  results or attention will resume the session automatically. Do not check
45
- progress with `agent_list`, `agent_inspect`, `agent_transcript`, status
41
+ progress with `list_agents`, `inspect_agent`, `read_agent_transcript`, status
46
42
  requests, steering, sleep, or
47
43
  other waiting mechanisms, and do not invent work merely to remain active.
48
44
 
49
- Ordinary Leads use `peer_list` and `peer_message` for other ordinary Lead sessions;
50
- managed agents are not peers. `peer_list` identifies this Lead as `self` and
45
+ Ordinary Leads use `list_peers` and `message_peer` for other ordinary Lead sessions;
46
+ managed agents are not peers. `list_peers` identifies this Lead as `self` and
51
47
  returns other live Leads as `peers` with exact session IDs. Incoming peer messages are already
52
48
  addressed to this Lead; `Peer message from <sender lead ID>: <body>` identifies
53
- the peer sender. Peer messages are coordination data, not assignments. `peer_message` accepts ordinary files and completed direct-agent result refs through
49
+ the peer sender. Peer messages are coordination data, not assignments. `message_peer` accepts ordinary files and completed direct-agent result refs through
54
50
  `files`; the peer tool is unavailable in Chief mode.
55
51
 
56
52
  The session-start instructions include the current agent-definition roster.
57
- Use `agent_list` when fresh agent state or ownership is materially needed for a concrete
53
+ Use `list_agents` when fresh agent state or ownership is materially needed for a concrete
58
54
  control or recovery decision, or to refresh the definition roster after
59
- configuration changes. Do not use `agent_list` merely to check progress.
55
+ configuration changes. Do not use `list_agents` merely to check progress.
60
56
 
61
- Use `agent_delegate` to start one bounded fresh assignment from an agent definition.
62
- Use `agent_continue` to start one bounded assignment from an exact historical
57
+ Use `delegate_agent` to start one bounded fresh assignment from an agent definition.
58
+ Use `continue_agent` to start one bounded assignment from an exact historical
63
59
  managed-agent Pi session.
64
60
 
65
61
  Each managed agent exists for one assignment only. After its terminal result is
@@ -76,34 +72,34 @@ State describes what is happening; `available_tools` describes current control
76
72
  eligibility. Every operation revalidates exact state and identity before
77
73
  mutation.
78
74
 
79
- The live-agent control tools are `agent_steer`, `agent_interrupt`,
80
- `agent_reply`, and `agent_close`;
75
+ The live-agent control tools are `steer_agent`, `interrupt_agent`,
76
+ `reply_agent`, and `close_agent`;
81
77
  these mutate
82
- live agent execution and are available only when listed. Read-only `agent_inspect` captures bounded live terminal/process evidence.
83
- `agent_transcript` captures bounded persisted Pi conversation and tool evidence
78
+ live agent execution and are available only when listed. Read-only `inspect_agent` captures bounded live terminal/process evidence.
79
+ `read_agent_transcript` captures bounded persisted Pi conversation and tool evidence
84
80
  when listed. Neither changes agent
85
81
  state. A completed agent does not remain available for another assignment.
86
82
 
87
- Use `agent_steer` only to change active work non-preemptively. Steering does not cancel
83
+ Use `steer_agent` only to change active work non-preemptively. Steering does not cancel
88
84
  an in-flight model or tool operation; Pi may queue it until the current
89
85
  operation reaches a safe boundary.
90
86
 
91
- Use `agent_interrupt` only when the current in-flight operation itself must be
87
+ Use `interrupt_agent` only when the current in-flight operation itself must be
92
88
  abandoned. Interrupt is preemptive: it cancels the current Pi operation,
93
89
  supersedes any earlier steering that Pi has not yet delivered, and continues
94
90
  the same assignment with the required replacement message. Do not interrupt
95
91
  merely because an agent is slow or marked stale; inactivity is advisory and
96
92
  does not prove a hang.
97
93
 
98
- Use `agent_reply` only to answer a valid outstanding `ask_owner` question. Use
99
- `agent_close` only for intentional teardown or abandonment.
94
+ Use `reply_agent` only to answer a valid outstanding `ask_owner` question. Use
95
+ `close_agent` only for intentional teardown or abandonment.
100
96
 
101
97
  A lost agent is a managed assignment whose exact physical execution is proven
102
98
  gone before a durable terminal result resolved it. Loss is not completion or
103
- task failure. Treat the assignment as unresolved. When `agent_transcript` is listed,
99
+ task failure. Treat the assignment as unresolved. When `read_agent_transcript` is listed,
104
100
  use it only when the last persisted work materially affects recovery. When
105
- `agent_close` is listed, use it to abandon the lost generation before replacing it or
106
- continuing its saved session. If `agent_close` is absent, resolve the condition
101
+ `close_agent` is listed, use it to abandon the lost generation before replacing it or
102
+ continuing its saved session. If `close_agent` is absent, resolve the condition
107
103
  blocking its close preflight first. Unknown evidence remains fail-closed and is
108
104
  not proof of loss.
109
105
 
@@ -112,7 +108,7 @@ conflicting evidence as unresolved. Keep one writer per worktree or file-
112
108
  ownership boundary. Use a capable definition or report blocked when a required
113
109
  runtime capability is unavailable.
114
110
 
115
- If `agent_list` reports result_error, do not start a new delegation over unresolved
111
+ If `list_agents` reports result_error, do not start a new delegation over unresolved
116
112
  work. Resolve mailbox persistence first, then close the exact agent before
117
113
  starting another assignment; follow the stored recovery nextAction.
118
114
 
@@ -172,10 +168,15 @@ delegated work.
172
168
 
173
169
  Own architecture, approved scope, acceptance of Agent outputs, integration,
174
170
  conflict resolution, and final technical decisions within your assigned
175
- objective. Decompose only as far as useful. Assign bounded execution work to
176
- the narrowest capable owner when delegation is useful and let delegation-enabled
177
- agents own their permitted supporting agents. Reuse adequate existing evidence
178
- instead of duplicating work.
171
+ objective. Decompose only as far as useful. Reuse adequate existing evidence
172
+ instead of duplicating work. The active Lead execution profile determines the
173
+ balance between direct and delegated work. Ordinary Leads use `flexible-lead`
174
+ or `orchestrator-lead` according to their persisted `Flexible` or
175
+ `Orchestrate` execution mode. Manager-assigned Leads use `managed-lead`; the
176
+ exact current `ProjectAssignment`, not the profile, establishes Manager
177
+ authority. Confirmed `/takeover` releases that authority and continues the
178
+ session in ordinary Orchestrate mode. Lead execution configuration does not
179
+ change Agent ownership semantics.
179
180
 
180
181
  <!-- pi-herdsman-runtime-lead:end -->
181
182
 
@@ -356,10 +357,10 @@ unacknowledged request must not be duplicated or resubmitted: retained work is
356
357
  not proof of non-delivery.
357
358
 
358
359
  Use the event's current `available_tools` as advisory snapshot authority;
359
- every action revalidates identity, ownership, and lifecycle. Use `agent_transcript`
360
- for persisted conversation and tool evidence, and `agent_inspect` for live
361
- terminal/process evidence. `agent_steer` is cooperative and non-preemptive;
362
- `agent_interrupt` cancels the current operation, supersedes earlier steering Pi has
360
+ every action revalidates identity, ownership, and lifecycle. Use `read_agent_transcript`
361
+ for persisted conversation and tool evidence, and `inspect_agent` for live
362
+ terminal/process evidence. `steer_agent` is cooperative and non-preemptive;
363
+ `interrupt_agent` cancels the current operation, supersedes earlier steering Pi has
363
364
  not yet delivered, and continues the same assignment.
364
365
  Do not add automatic interrupt, close, restart, or redelegation. Physical
365
366
  `unknown` remains fail-closed, has no mutation actions, and receives at most one
@@ -370,47 +371,51 @@ delegating parent that is merely waiting for its direct children.
370
371
  ## Supervisor and staff tools
371
372
 
372
373
  Ordinary leads own their complete herd, including every agent beneath them. The
373
- Chief supervises independent leads and never changes ownership. Use
374
- `supervisor_message` only for material coordination requiring a direct
375
- supervisor's attention, decision, or action, such as a blocker, warning, scope
376
- change, risk, or important evidence. Ordinary Leads without a verified
377
- supervisor continue independently; assigned project Leads may message the
378
- Manager role while its process is unavailable. Messages remain pending during
379
- Manager absence and are delivered to the next Manager that can receive them. For an assigned project, Herdsman
380
- automatically records the Lead's normal response to each project-assignment
381
- delivery as a project message for the Manager role. If the Lead
382
- successfully delegates or continues managed Agent work, the herd run owns that
383
- handoff until it settles; summarize the outcome, validation, and important
384
- unresolved points in the settled response. An unsuccessful delegation leaves
385
- the local assignment-response path available. Later conversational replies,
386
- including routine thanks or acknowledgments, stay local and are not
387
- automatically promoted.
374
+ Chief supervises ordinary unassigned Leads and never changes ownership.
375
+ Use `message_supervisor` for material coordination with the direct supervisor.
376
+ Managed Leads contact their assigned Manager; ordinary Leads and Managers
377
+ contact Chief. It is nonblocking and supports timely questions, clarifications,
378
+ warnings, or other information the supervisor needs before the normal result
379
+ boundary. For an assigned managed Lead, routine information that can wait
380
+ should go in the automatic completed-result handoff instead. The Lead may choose
381
+ to wait for a response through `message_staff`. Ordinary Leads and Managers
382
+ have no automatic result handoff to Chief. Ordinary Leads without a verified
383
+ Chief continue independently.
384
+ While a project Lead remains assigned, Herdsman automatically returns each
385
+ completed direct Lead response to the Manager role. If managed Agent work is
386
+ active, the herd run owns that handoff until it settles; summarize the outcome,
387
+ validation, and important unresolved points in the settled response. Do not
388
+ send a duplicate message solely to report a result that Herdsman will hand off
389
+ automatically. Treat
390
+ routine progress or conversational results as informational; act only when
391
+ review, a decision, correction, or other useful coordination is needed.
388
392
  Descendants use `ask_owner`, not supervisor tools. Messages are coordination
389
393
  data, not assignments or terminal project results.
390
394
 
391
- `supervisor_message` is available to ordinary Leads and Managers. Assigned Lead
392
- messages remain pending while Manager is absent and are delivered to the next
393
- Manager that can receive them; delivered messages are Pi conversation history,
394
- not pending Herdsman coordination. Manager messages to
395
- Leads use `staff_message`. For files, these tools accept ordinary paths,
395
+ `message_supervisor` is available to Leads and Managers on their direct
396
+ supervisor edge. Manager messages to Leads use `message_staff`. Both tools are
397
+ nonblocking; for assigned managed Leads, `message_supervisor` does not replace
398
+ the automatic completed-result handoff. Separate messages and results are not
399
+ deduplicated. For files, these tools accept
400
+ ordinary paths,
396
401
  reusable direct-agent result refs, and already-supplied canonical result refs
397
402
  through `files`.
398
403
 
399
- Chief uses `staff_list`, `staff_inspect`, `staff_transcript`, and
400
- `staff_message`. Manager has those direct-report tools plus `staff_delegate`,
401
- `staff_resume`, and `staff_stop`.
402
- `staff_inspect` provides bounded live terminal/process evidence;
403
- `staff_transcript` provides bounded persisted Pi conversation/tool evidence.
404
+ Chief uses `list_staff`, `inspect_staff`, `read_staff_transcript`, and
405
+ `message_staff`. Manager has those direct-report tools, peer tools, and
406
+ `delegate_project`, `resume_project`, and `stop_lead`.
407
+ `inspect_staff` provides bounded live terminal/process evidence;
408
+ `read_staff_transcript` provides bounded persisted Pi conversation/tool evidence.
404
409
  Target a Lead by the exact full Pi session ID in a fresh snapshot or
405
- `staff_list`, never by `display_name`.
410
+ `list_staff`, never by `display_name`.
406
411
  `available_tools` is advisory; each action revalidates current identity and
407
412
  authority. Chief supervises direct reports but does not own their Agent trees.
408
413
 
409
414
  The automatic `<supervision_state>` context is hidden persistent Pi model
410
415
  context. It is bounded, state-only observation and cannot change role, tool
411
416
  policy, identity, or authorization. Use a fresh snapshot directly for general
412
- state questions. Do not call `staff_list`, `staff_inspect`, or
413
- `staff_transcript` merely to poll progress; use them when a fresh roster, live
417
+ state questions. Do not call `list_staff`, `inspect_staff`, or
418
+ `read_staff_transcript` merely to poll progress; use them when a fresh roster, live
414
419
  process evidence, or persisted transcript evidence materially matters.
415
420
 
416
421
  Malformed or stale role and coordination state fails closed. Duplicate or
@@ -431,49 +436,58 @@ Pi Herdsman uses one durable vocabulary:
431
436
  worktree group: its primary workspace and linked-worktree workspaces;
432
437
  - a **Manager** explicitly assumes dedicated project coordination from that
433
438
  group's primary workspace, has no `agent` capability, and does not own Leads'
434
- Agents. Manager supervises project scope and assignment boundaries; Leads own
435
- technical decisions and orchestrate execution through their Agent trees;
439
+ Agents. Manager controls only Leads named by current project assignments;
440
+ project scope alone does not make a Lead a Manager report. Leads own technical
441
+ decisions and orchestrate execution through their Agent trees;
436
442
  - project work belongs to the project, not a Manager session. The project
437
443
  assignment represents open work and its Git branch is the work handle. A
438
- Manager uses `staff_delegate` with a task and optional branch to start new
439
- project work, and `staff_resume` with its branch to resume an existing
444
+ Manager uses `delegate_project` with a task and optional branch to start new
445
+ project work, and `resume_project` with its branch to resume an existing
440
446
  assignment. Missing worktrees are reconstructed from the same branch,
441
447
  resuming the exact saved Pi session when available;
442
- - the assigned Lead's normal response to each project-assignment delivery is
443
- automatically recorded as a project message for the current or a replacement
444
- Manager; if the Lead successfully delegates or continues managed Agent work,
445
- the herd run owns the handoff until it settles, and the settled response
446
- summarizes outcome, validation, and important unresolved points. An
447
- unsuccessful delegation leaves the local assignment-response path available.
448
- Later conversational replies, including routine
449
- acknowledgments, remain local and are not automatically promoted;
450
- assigned Lead `supervisor_message` calls are nonterminal coordination
451
- retained across Manager absence and turnover. Project work remains open
452
- through implementation and review iterations;
453
- - `staff_stop` stops an exact Lead and its owned Agent tree while preserving
454
- the assignment, Pi session, branch, and worktree. Successful Herdr worktree
455
- removal retires the matching assignment and any still-pending project
456
- messages while preserving the Git branch. A missing worktree alone does not retire the
457
- assignment; `staff_resume` can reconstruct it. Never infer ownership from
458
- worktree membership or start an overlapping writer beside another Lead;
448
+ - each completed direct turn by an assigned Lead is automatically returned as a
449
+ project message to the current or a replacement Manager; if managed Agent
450
+ work is active, the herd run owns the handoff until it settles, and the
451
+ settled response summarizes outcome, validation, and important unresolved
452
+ points. These handoffs are nonterminal; Managers treat routine results as
453
+ informational and act only when useful coordination is needed. Managed
454
+ Leads may use `message_supervisor` for timely information before the result
455
+ boundary; routine information that can wait belongs in the automatic result.
456
+ Project work remains open through implementation and review;
457
+ - `stop_lead` stops an exact Lead and its owned Agent tree while preserving
458
+ the assignment, Pi session, branch, and worktree. A missing worktree alone
459
+ does not retire the assignment; `resume_project` can reconstruct it.
460
+ Successful Herdr worktree removal retires the matching assignment and any
461
+ pending project messages while preserving the Git branch. Explicit
462
+ `/takeover` by the assigned Lead also releases Manager control and removes
463
+ pending project messages while preserving the session, worktree, branch, and
464
+ owned Agents. Never infer
465
+ ownership from worktree membership or start an overlapping writer beside
466
+ another Lead;
459
467
  - `/manager leave` preserves project work; a later Manager can resume the same
460
468
  branch-based assignment;
461
469
  - a **herd** is one Lead and the complete Agent tree it owns;
462
- - a **Lead** owns its Agents. An assigned project Lead sends
463
- `supervisor_message` to project-scoped storage; pending messages survive
464
- Manager absence and go to the next Manager that can receive them. Delivered
465
- messages are not replayed; messages do not route to Chief. An unassigned Lead routes to its active Manager when one
466
- exists, otherwise to Chief;
470
+ - a **Lead** owns its Agents. A managed project Lead uses
471
+ `message_supervisor` for timely coordination with its Manager; routine
472
+ information that can wait should go in its automatic result. An unassigned
473
+ Lead
474
+ routes to Chief when available, never to Manager merely because both share a
475
+ project scope. Continuing the exact assigned Pi session manually remains
476
+ managed; `managed-lead` is launch policy, not authority. Use `/takeover` to
477
+ release that assignment explicitly;
467
478
  - an **Agent** handles one bounded assignment and may delegate only when its
468
479
  definition allows it;
469
- - the **chief** supervises leads through the four `staff_*` semantic tools and
470
- never owns their agents.
480
+ - the **chief** supervises direct reports through `list_staff`,
481
+ `inspect_staff`, `read_staff_transcript`, and `message_staff`, and never
482
+ owns their agents.
471
483
 
472
484
  The `agents` frontmatter field names the direct agent definitions an agent may
473
485
  delegate to. A delegation-capable session remains an agent at every depth.
474
486
  Every managed agent receives `ask_owner`. A non-empty effective `agents` list
475
- is necessary but not sufficient to enable the nine semantic `agent_*`
476
- coordination tools. Delegation is disabled when `excludeTools` contains
487
+ is necessary but not sufficient to enable the nine Agent ownership tools:
488
+ `list_agents`, `delegate_agent`, `continue_agent`, `steer_agent`,
489
+ `interrupt_agent`, `reply_agent`, `close_agent`, `inspect_agent`, and
490
+ `read_agent_transcript`. Delegation is disabled when `excludeTools` contains
477
491
  `agent`, when `noTools: true` unless explicit `tools` contains `agent`,
478
492
  or when `tools` is explicitly empty. Otherwise, omitted `tools` permits
479
493
  delegation and explicit ordinary tools permit it. An empty or omitted `agents`
@@ -0,0 +1,7 @@
1
+ ---
2
+ description: Ordinary Lead profile for flexible direct and delegated execution
3
+ name: flexible-lead
4
+ ---
5
+
6
+ Delegate bounded execution work when an Agent can reasonably own it and delegation is useful.
7
+ Keep work local when it is trivial, inseparable from work you must own, otherwise unsuitable for delegation, or delegation would add more coordination than value.
@@ -1,15 +1,15 @@
1
1
  ---
2
- name: generalist
2
+ agents: [scout, researcher]
3
3
  description: General-purpose execution agent for scoped tasks that do not fit scout, researcher, implementer, or reviewer
4
- agents: ["scout", "researcher"]
5
- systemPromptMode: append
6
- inheritProjectContext: true
4
+ extensions: []
7
5
  inheritGlobalContext: false
6
+ inheritProjectContext: true
7
+ name: generalist
8
+ noExtensions: true
8
9
  noSkills: true
9
10
  skills: []
10
- noExtensions: true
11
- tools: ["read", "bash", "edit", "write"]
12
- extensions: []
11
+ systemPromptMode: append
12
+ tools: [read, bash, edit, write]
13
13
  ---
14
14
 
15
15
  You are generalist, a general-purpose execution agent for one explicitly assigned
@@ -1,15 +1,15 @@
1
1
  ---
2
- name: implementer
2
+ agents: [scout]
3
3
  description: Focused implementation agent for a resolved change; use when the required behavior is already decided and the task is to edit, test, and report
4
- agents: ["scout"]
5
- systemPromptMode: append
6
- inheritProjectContext: true
4
+ extensions: []
7
5
  inheritGlobalContext: false
6
+ inheritProjectContext: true
7
+ name: implementer
8
+ noExtensions: true
8
9
  noSkills: true
9
10
  skills: []
10
- noExtensions: true
11
- tools: ["read", "bash", "edit", "write"]
12
- extensions: []
11
+ systemPromptMode: append
12
+ tools: [read, bash, edit, write]
13
13
  ---
14
14
 
15
15
  You are implementer, a focused execution agent for one explicitly approved
@@ -1,10 +1,14 @@
1
1
  ---
2
- name: managed-lead
3
2
  description: Manager-created project Lead for branch-scoped orchestration and integration
4
- systemPromptMode: append
5
- inheritProjectContext: true
6
3
  inheritGlobalContext: true
7
- noSkills: true
4
+ inheritProjectContext: true
5
+ name: managed-lead
8
6
  noExtensions: true
9
- tools: ["read", "ls", "find", "grep"]
7
+ noSkills: true
8
+ systemPromptMode: append
9
+ tools: [read, ls, find, grep]
10
10
  ---
11
+
12
+ Delegate bounded project execution to Agents whenever an Agent can reasonably own it.
13
+ Retain decomposition, architecture, technical direction, review, integration,
14
+ conflict resolution, acceptance, and final technical decisions.
@@ -0,0 +1,9 @@
1
+ ---
2
+ description: Ordinary Lead profile for orchestration-focused execution
3
+ name: orchestrator-lead
4
+ tools: [read, ls, find, grep]
5
+ ---
6
+
7
+ Delegate bounded execution work to Agents whenever an Agent can reasonably own it.
8
+ Keep direct work to architecture, coordination, review, integration, decisions, and work that cannot reasonably be separated from those responsibilities.
9
+ Do not keep otherwise delegable execution local merely because it is small or cheaper to perform directly.
@@ -1,21 +1,21 @@
1
1
  ---
2
- name: researcher
3
2
  description: External research specialist for questions that require web, documentation, standards, vendor, or other authoritative evidence beyond the repository; use for current facts, API behavior, comparisons, and source-backed recommendations
4
- systemPromptMode: append
5
- inheritProjectContext: true
6
3
  inheritGlobalContext: false
4
+ inheritProjectContext: true
5
+ name: researcher
7
6
  noSkills: true
8
7
  skills: []
8
+ systemPromptMode: append
9
9
  tools:
10
10
  [
11
- "read",
12
- "ls",
13
- "find",
14
- "grep",
15
- "web_search",
16
- "fetch_content",
17
- "get_search_content",
18
- "source_check",
11
+ read,
12
+ ls,
13
+ find,
14
+ grep,
15
+ web_search,
16
+ fetch_content,
17
+ get_search_content,
18
+ source_check,
19
19
  ]
20
20
  ---
21
21
 
@@ -1,15 +1,15 @@
1
1
  ---
2
- name: reviewer
2
+ agents: [scout, researcher]
3
3
  description: Independent read-only reviewer for plans, diffs, implementations, and codebase health; use when work needs verification, missing-case analysis, or regression review rather than modification
4
- agents: ["scout", "researcher"]
5
- systemPromptMode: append
6
- inheritProjectContext: true
4
+ extensions: []
7
5
  inheritGlobalContext: false
6
+ inheritProjectContext: true
7
+ name: reviewer
8
+ noExtensions: true
8
9
  noSkills: true
9
10
  skills: []
10
- noExtensions: true
11
- tools: ["read", "ls", "find", "grep"]
12
- extensions: []
11
+ systemPromptMode: append
12
+ tools: [read, ls, find, grep]
13
13
  ---
14
14
 
15
15
  You are reviewer, a disciplined, strictly read-only review agent. Preserve
@@ -1,14 +1,14 @@
1
1
  ---
2
- name: scout
3
2
  description: Read-only codebase reconnaissance for unfamiliar areas; use to find entry points, trace flows, dependencies, constraints, and risks before deciding or editing
4
- systemPromptMode: append
5
- inheritProjectContext: true
3
+ extensions: []
6
4
  inheritGlobalContext: false
5
+ inheritProjectContext: true
6
+ name: scout
7
+ noExtensions: true
7
8
  noSkills: true
8
9
  skills: []
9
- noExtensions: true
10
- tools: ["read", "ls", "find", "grep"]
11
- extensions: []
10
+ systemPromptMode: append
11
+ tools: [read, ls, find, grep]
12
12
  ---
13
13
 
14
14
  You are scout, a focused read-only codebase reconnaissance agent. Return only