claude-dev-env 1.93.0 → 1.94.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.
- package/_shared/pr-loop/CLAUDE.md +1 -0
- package/_shared/pr-loop/audit-contract.md +1 -1
- package/_shared/pr-loop/gh-payloads.md +3 -3
- package/_shared/pr-loop/post-audit-thread-contract.md +51 -0
- package/_shared/pr-loop/scripts/README.md +2 -2
- package/_shared/pr-loop/scripts/code_rules_gate.py +127 -13
- package/_shared/pr-loop/scripts/fix_hookspath.py +47 -12
- package/_shared/pr-loop/scripts/pr_loop_shared_constants/code_rules_gate_constants.py +4 -0
- package/_shared/pr-loop/scripts/tests/test_code_rules_gate.py +146 -69
- package/_shared/pr-loop/scripts/tests/test_fix_hookspath.py +497 -374
- package/_shared/pr-loop/state-schema.md +3 -22
- package/bin/CLAUDE.md +1 -1
- package/bin/install.mjs +2 -7
- package/bin/install.test.mjs +10 -4
- package/hooks/blocking/CLAUDE.md +2 -0
- package/hooks/blocking/pii_commit_command.py +398 -0
- package/hooks/blocking/pii_payload_scan.py +133 -0
- package/hooks/blocking/pii_prevention_blocker.py +151 -449
- package/hooks/blocking/pii_scanner.py +26 -1
- package/hooks/blocking/test_code_rules_enforcer_dead_config_field.py +2 -2
- package/hooks/blocking/test_pii_prevention_blocker.py +299 -0
- package/hooks/blocking/test_pii_scanner.py +27 -2
- package/hooks/blocking/test_verdict_directory_write_blocker.py +42 -7
- package/hooks/hooks_constants/CLAUDE.md +2 -2
- package/hooks/hooks_constants/code_rules_path_utils_constants.py +0 -2
- package/hooks/hooks_constants/local_identity.py +65 -15
- package/hooks/hooks_constants/pii_prevention_constants.py +20 -8
- package/hooks/hooks_constants/pr_description_enforcer_constants.py +1 -1
- package/hooks/hooks_constants/test_local_identity.py +68 -0
- package/package.json +1 -1
- package/scripts/CLAUDE.md +10 -1
- package/scripts/Get-SessionAccount.ps1 +210 -0
- package/scripts/tests/CLAUDE.md +15 -1
- package/scripts/tests/Get-SessionAccount.Tests.ps1 +350 -0
- package/skills/CLAUDE.md +3 -25
- package/skills/anthropic-plan/SKILL.md +1 -13
- package/skills/autoconverge/CLAUDE.md +5 -2
- package/skills/autoconverge/SKILL.md +112 -387
- package/skills/autoconverge/reference/CLAUDE.md +4 -1
- package/skills/autoconverge/reference/closing-report.md +9 -2
- package/skills/autoconverge/reference/convergence.md +26 -22
- package/skills/autoconverge/reference/headless-safety.md +44 -0
- package/skills/autoconverge/reference/multi-pr.md +88 -0
- package/skills/autoconverge/reference/self-closing-loop.md +84 -0
- package/skills/autoconverge/reference/stop-conditions.md +21 -13
- package/skills/autoconverge/workflow/converge.clean-audit.test.mjs +87 -27
- package/skills/autoconverge/workflow/converge.contract.test.mjs +40 -10
- package/skills/autoconverge/workflow/converge.copilot-gate.test.mjs +179 -47
- package/skills/autoconverge/workflow/converge.fix-progress.test.mjs +1 -1
- package/skills/autoconverge/workflow/converge.mjs +284 -94
- package/skills/bugteam/CLAUDE.md +1 -1
- package/skills/bugteam/CONSTRAINTS.md +3 -3
- package/skills/bugteam/PROMPTS.md +8 -19
- package/skills/bugteam/SKILL.md +13 -14
- package/skills/bugteam/reference/CLAUDE.md +1 -1
- package/skills/bugteam/reference/audit-and-teammates.md +2 -2
- package/skills/bugteam/reference/copilot-gap-analysis.md +2 -0
- package/skills/bugteam/reference/github-pr-reviews.md +56 -38
- package/skills/bugteam/reference/team-setup.md +11 -11
- package/skills/bugteam/scripts/CLAUDE.md +6 -6
- package/skills/bugteam/scripts/README.md +20 -8
- package/skills/bugteam/scripts/bugteam_code_rules_gate.py +13 -1463
- package/skills/bugteam/scripts/bugteam_fix_hookspath.py +23 -358
- package/skills/bugteam/scripts/bugteam_preflight.py +13 -315
- package/skills/bugteam/scripts/bugteam_scripts_constants/CLAUDE.md +2 -3
- package/skills/bugteam/scripts/test_bugteam_code_rules_gate.py +34 -1053
- package/skills/bugteam/scripts/test_bugteam_fix_hookspath.py +30 -347
- package/skills/bugteam/scripts/test_bugteam_preflight.py +30 -305
- package/skills/copilot-finding-triage/SKILL.md +80 -28
- package/skills/copilot-finding-triage/reference/tier-rubric.md +70 -11
- package/skills/copilot-finding-triage/templates/notification.md +8 -3
- package/skills/everything-search/SKILL.md +1 -2
- package/skills/grokify/SKILL.md +58 -0
- package/skills/grokify/templates/handoff-template.md +92 -0
- package/skills/orchestrator/SKILL.md +12 -8
- package/skills/orchestrator-refresh/SKILL.md +3 -3
- package/skills/pr-converge/SKILL.md +132 -233
- package/skills/pr-converge/reference/convergence-gates.md +102 -66
- package/skills/pr-converge/reference/examples.md +37 -25
- package/skills/pr-converge/reference/fix-protocol.md +7 -7
- package/skills/pr-converge/reference/multi-pr-orchestration.md +10 -4
- package/skills/pr-converge/reference/per-tick.md +64 -41
- package/skills/pr-converge/reference/state-schema.md +27 -2
- package/skills/pr-converge/scripts/CLAUDE.md +8 -0
- package/skills/pr-converge/scripts/README.md +4 -3
- package/skills/pr-converge/scripts/_pr_converge_path_setup.py +23 -0
- package/skills/pr-converge/scripts/check_convergence.py +189 -645
- package/skills/pr-converge/scripts/check_convergence_gates.py +235 -0
- package/skills/pr-converge/scripts/check_convergence_thread_gates.py +219 -0
- package/skills/pr-converge/scripts/conftest.py +8 -0
- package/skills/pr-converge/scripts/pr_converge_scripts_constants/CLAUDE.md +1 -0
- package/skills/pr-converge/scripts/pr_converge_scripts_constants/convergence_gate_constants.py +36 -0
- package/skills/pr-converge/scripts/test__pr_converge_path_setup.py +26 -0
- package/skills/pr-converge/scripts/test_check_convergence.py +73 -228
- package/skills/pr-converge/scripts/test_check_convergence_contract.py +321 -0
- package/skills/pr-converge/scripts/test_check_convergence_gates.py +68 -0
- package/skills/pr-converge/scripts/test_check_convergence_thread_gates.py +75 -0
- package/skills/privacy-hygiene/SKILL.md +8 -7
- package/skills/reviewer-gates/SKILL.md +26 -8
- package/skills/session-log/SKILL.md +11 -12
- package/skills/session-tidy/SKILL.md +40 -30
- package/skills/skill-builder/CLAUDE.md +13 -10
- package/skills/skill-builder/SKILL.md +31 -31
- package/skills/skill-builder/references/CLAUDE.md +10 -6
- package/skills/skill-builder/references/delegation-map.md +13 -4
- package/skills/skill-builder/references/description-field.md +113 -0
- package/skills/skill-builder/references/self-audit-checklist.md +21 -4
- package/skills/skill-builder/references/skill-modularity.md +113 -0
- package/skills/skill-builder/references/skill-types.md +4 -0
- package/skills/skill-builder/templates/CLAUDE.md +4 -4
- package/skills/skill-builder/templates/gap-analysis.md +25 -1
- package/skills/skill-builder/workflows/CLAUDE.md +6 -4
- package/skills/skill-builder/workflows/improve-skill.md +17 -16
- package/skills/skill-builder/workflows/new-skill.md +34 -10
- package/skills/skill-builder/workflows/polish-skill.md +59 -43
- package/skills/usage-pause/SKILL.md +10 -14
- package/skills/bdd-protocol/CLAUDE.md +0 -26
- package/skills/bdd-protocol/SKILL.md +0 -30
- package/skills/bdd-protocol/references/CLAUDE.md +0 -10
- package/skills/bdd-protocol/references/anti-patterns.md +0 -26
- package/skills/bdd-protocol/references/example-mapping.md +0 -23
- package/skills/bg-agent/CLAUDE.md +0 -17
- package/skills/bg-agent/SKILL.md +0 -69
- package/skills/bugteam/scripts/bugteam_scripts_constants/bugteam_code_rules_gate_constants.py +0 -55
- package/skills/bugteam/scripts/bugteam_scripts_constants/bugteam_fix_hookspath_constants.py +0 -26
- package/skills/bugteam/scripts/bugteam_scripts_constants/bugteam_preflight_constants.py +0 -35
- package/skills/caveman/CLAUDE.md +0 -15
- package/skills/caveman/SKILL.md +0 -38
- package/skills/code/CLAUDE.md +0 -17
- package/skills/code/SKILL.md +0 -178
- package/skills/deep-research/CLAUDE.md +0 -17
- package/skills/deep-research/SKILL.md +0 -80
- package/skills/findbugs/CLAUDE.md +0 -20
- package/skills/findbugs/SKILL.md +0 -241
- package/skills/fixbugs/CLAUDE.md +0 -19
- package/skills/fixbugs/SKILL.md +0 -142
- package/skills/gh-paginate/CLAUDE.md +0 -18
- package/skills/gh-paginate/SKILL.md +0 -84
- package/skills/gotcha/CLAUDE.md +0 -33
- package/skills/gotcha/SKILL.md +0 -73
- package/skills/implement/CLAUDE.md +0 -27
- package/skills/implement/SKILL.md +0 -66
- package/skills/implement/scripts/CLAUDE.md +0 -22
- package/skills/implement/scripts/append_note.py +0 -133
- package/skills/implement/scripts/implement_scripts_constants/CLAUDE.md +0 -22
- package/skills/implement/scripts/implement_scripts_constants/__init__.py +0 -0
- package/skills/implement/scripts/implement_scripts_constants/notes_constants.py +0 -12
- package/skills/implement/scripts/test_append_note.py +0 -191
- package/skills/log-audit/CLAUDE.md +0 -20
- package/skills/log-audit/SKILL.md +0 -66
- package/skills/log-audit/reference/CLAUDE.md +0 -9
- package/skills/log-audit/reference/charter.md +0 -52
- package/skills/log-audit/scripts/CLAUDE.md +0 -27
- package/skills/log-audit/scripts/cluster_recurrences.py +0 -261
- package/skills/log-audit/scripts/collect_log_window.py +0 -199
- package/skills/log-audit/scripts/log_audit_constants/CLAUDE.md +0 -12
- package/skills/log-audit/scripts/log_audit_constants/__init__.py +0 -0
- package/skills/log-audit/scripts/log_audit_constants/cluster_recurrences_constants.py +0 -23
- package/skills/log-audit/scripts/log_audit_constants/collect_log_window_constants.py +0 -24
- package/skills/log-audit/scripts/log_audit_constants/mine_copilot_findings_constants.py +0 -49
- package/skills/log-audit/scripts/mine_copilot_findings.py +0 -302
- package/skills/log-audit/scripts/test_cluster_recurrences.py +0 -160
- package/skills/log-audit/scripts/test_collect_log_window.py +0 -111
- package/skills/log-audit/scripts/test_mine_copilot_findings.py +0 -126
- package/skills/logifix/CLAUDE.md +0 -36
- package/skills/logifix/SKILL.md +0 -69
- package/skills/logifix/scripts/CLAUDE.md +0 -16
- package/skills/logifix/scripts/logifix.ps1 +0 -205
- package/skills/monitor-open-prs/CLAUDE.md +0 -34
- package/skills/monitor-open-prs/SKILL.md +0 -88
- package/skills/monitor-open-prs/scripts/CLAUDE.md +0 -17
- package/skills/monitor-open-prs/scripts/discover_open_prs.py +0 -69
- package/skills/monitor-open-prs/scripts/test_discover_open_prs.py +0 -149
- package/skills/monitor-open-prs/test_skill_contract.py +0 -27
- package/skills/post-audit-findings/SKILL.md +0 -80
- package/skills/pr-consistency-audit/CLAUDE.md +0 -34
- package/skills/pr-consistency-audit/SKILL.md +0 -116
- package/skills/pr-consistency-audit/reference/CLAUDE.md +0 -16
- package/skills/pr-consistency-audit/reference/detection-rules.md +0 -96
- package/skills/pr-consistency-audit/reference/illustrations.md +0 -78
- package/skills/pr-fix-protocol/SKILL.md +0 -65
- package/skills/pr-review-responder/CLAUDE.md +0 -35
- package/skills/pr-review-responder/EXAMPLES.md +0 -590
- package/skills/pr-review-responder/PRINCIPLES.md +0 -533
- package/skills/pr-review-responder/README.md +0 -168
- package/skills/pr-review-responder/SKILL.md +0 -203
- package/skills/pr-review-responder/TESTING.md +0 -350
- package/skills/pr-scope-resolve/SKILL.md +0 -45
- package/skills/pre-compact/CLAUDE.md +0 -24
- package/skills/pre-compact/SKILL.md +0 -134
- package/skills/qbug/CLAUDE.md +0 -40
- package/skills/qbug/SKILL.md +0 -387
- package/skills/qbug/test_qbug_skill_audit_schema.py +0 -152
- package/skills/qbug/test_qbug_skill_post_fix_audit.py +0 -103
- package/skills/refine/CLAUDE.md +0 -44
- package/skills/refine/SKILL.md +0 -262
- package/skills/refine/templates/CLAUDE.md +0 -17
- package/skills/refine/templates/implementation-notes-template.html +0 -56
- package/skills/refine/templates/plan-template.md +0 -60
- package/skills/research-mode/CLAUDE.md +0 -35
- package/skills/research-mode/SKILL.md +0 -53
- package/skills/structure-prompt/CLAUDE.md +0 -42
- package/skills/structure-prompt/SKILL.md +0 -44
- package/skills/structure-prompt/reference/CLAUDE.md +0 -28
- package/skills/structure-prompt/reference/adversarial-tuning.md +0 -62
- package/skills/structure-prompt/reference/block-classification.md +0 -27
- package/skills/structure-prompt/reference/canonical-case.md +0 -48
- package/skills/structure-prompt/reference/citation-depth.md +0 -70
- package/skills/structure-prompt/reference/cleanup.md +0 -33
- package/skills/structure-prompt/reference/constraints.md +0 -33
- package/skills/structure-prompt/reference/directives.md +0 -37
- package/skills/structure-prompt/reference/examples.md +0 -72
- package/skills/structure-prompt/reference/instantiation.md +0 -51
- package/skills/structure-prompt/reference/output-contract.md +0 -72
- package/skills/structure-prompt/reference/per-category.md +0 -23
- package/skills/structure-prompt/reference/persona.md +0 -38
- package/skills/structure-prompt/reference/research.md +0 -33
- package/skills/structure-prompt/reference/structure.md +0 -28
- package/skills/verified-build/CLAUDE.md +0 -33
- package/skills/verified-build/SKILL.md +0 -33
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: grokify
|
|
3
|
+
description: >-
|
|
4
|
+
Grok Build execution handoff prompt, embed Claude advisor.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Grokify
|
|
8
|
+
|
|
9
|
+
## Principle
|
|
10
|
+
|
|
11
|
+
One paste-ready handoff turns this session's work into a plan a Grok Build session can execute alone. Grok gets no access to this conversation, so the handoff carries everything: repos, findings, constraints, the phased plan, and a Claude advisor Grok reaches through the `claude` CLI.
|
|
12
|
+
|
|
13
|
+
## Gotchas
|
|
14
|
+
|
|
15
|
+
- Grok Build cannot spawn Claude subagents. The advisor is an out-of-process `claude -p` session — never write Agent-tool, `session-advisor`, or SendMessage instructions into the handoff.
|
|
16
|
+
- A `--resume` after a usage-limit failover to another binary fails, because a session store belongs to the binary that minted it. The handoff must tell Grok to treat that failure as starting over: re-send the charter plus a compact recap, capture the new `session_id`.
|
|
17
|
+
- Conversation-relative phrases ("as discussed", "the plan above", "the earlier choice") are dead text to Grok — every statement stands on its own.
|
|
18
|
+
- Copy findings' measured numbers and `file:line` citations into the handoff exactly, and label each figure measured, bounded, or unverified.
|
|
19
|
+
- The advisor session starts empty. The bind step must pipe the findings, constraints, and plan into the charter, or every later consult is answered from nothing.
|
|
20
|
+
- `claude` sessions are project-scoped by working directory. The handoff must tell Grok to run every bind and every `--resume` with the cwd set to the repo root it names — a bind launched from the Grok sandbox cwd files the session under that other project, and a later resume from the real worktree reports `No conversation found with session ID`. Treat a session-not-found error as a wrong-cwd or expired-session signal, not a model failure.
|
|
21
|
+
- `--output-format json` returns a JSON array of events, not one object. `session_id` comes from any event; the reply text is the `type == "result"` event's `.result` field. A parser expecting one top-level object reports a missing session id on a working bind.
|
|
22
|
+
- The charter travels as a file piped to stdin, or as one clean argv string. Half-escaped multiline shell expansion mangles the prompt in transit and the advisor sees a fragment.
|
|
23
|
+
|
|
24
|
+
## When this applies
|
|
25
|
+
|
|
26
|
+
The user types `/grokify`, alone or with guidance.
|
|
27
|
+
|
|
28
|
+
- Bare `/grokify`: build the handoff from the current session's context — the task in flight, its findings, plan, and constraints.
|
|
29
|
+
- `/grokify <guidance>`: the guidance names or scopes the task — a plan written earlier in the session, a file to read, or a fresh instruction. Build the handoff for that.
|
|
30
|
+
|
|
31
|
+
**Refusal:** no session context and no guidance — reply `What should Grok execute? One sentence.` and stop.
|
|
32
|
+
|
|
33
|
+
## Process
|
|
34
|
+
|
|
35
|
+
1. Collect the substance: repos and branch, established findings with `file:line` and measured numbers, hard constraints, and the phased plan with acceptance criteria. Pull from session context first, then from the guidance; read any files the guidance names.
|
|
36
|
+
2. Fill `templates/handoff-template.md`. Adapt every bracketed section to the task; keep the advisor CLI commands, signal rules, and consult cadence exactly as the template writes them.
|
|
37
|
+
3. Mark any decision that belongs to the user as an explicit ask-the-user fork inside the plan. The handoff never lets Grok pick silently.
|
|
38
|
+
4. Deliver one fenced markdown block (four-backtick fence, so inner fences survive), then one or two sentences naming the choices you baked in.
|
|
39
|
+
|
|
40
|
+
## Fixed advisor structure (never vary these parts)
|
|
41
|
+
|
|
42
|
+
- **Bind once, first:** charter + findings + constraints + plan piped from a temp file into `claude -p --model fable --effort high --output-format json`; parse and save `session_id` from the JSON reply.
|
|
43
|
+
- **Consult:** brief piped into `claude -p --resume <session_id> --model fable --effort high --output-format json`.
|
|
44
|
+
- **ConsultB** If fable is unavailable, use opus with max effort: `claude -p --resume <session_id> --model opus --effort max --output-format json`.
|
|
45
|
+
- **Signals:** every advisor reply opens with exactly one of ENDORSE, CORRECTION, PLAN, or STOP. CORRECTION and PLAN are actions to take, with a report-back in the next consult on that topic. STOP halts that line of work and surfaces it to the user. When the CLI is unreachable, Grok stops and says so — it never self-endorses in the advisor's place.
|
|
46
|
+
- **Cadence, mandatory:** after planning and before any edit; per phase before implementation (TDD red + approach) and after (diff, tests, acceptance evidence); before every `git commit` and `git push`; on every user-facing fork before asking; on any twice-repeated failure or stall.
|
|
47
|
+
|
|
48
|
+
## File index
|
|
49
|
+
|
|
50
|
+
| File | Purpose |
|
|
51
|
+
|---|---|
|
|
52
|
+
| `SKILL.md` | Trigger, process, fixed advisor structure. |
|
|
53
|
+
| `templates/handoff-template.md` | Section-by-section skeleton of the handoff prompt. |
|
|
54
|
+
|
|
55
|
+
## Folder map
|
|
56
|
+
|
|
57
|
+
- `SKILL.md` — the whole workflow.
|
|
58
|
+
- `templates/` — the handoff skeleton.
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# Handoff template
|
|
2
|
+
|
|
3
|
+
Fill every `[bracketed]` part from the session. Keep the advisor sections word-for-word except the charter's mission sentences.
|
|
4
|
+
|
|
5
|
+
````markdown
|
|
6
|
+
# Execution Handoff (Grok Build): [task title]
|
|
7
|
+
|
|
8
|
+
You are Grok, executing this plan yourself on Grok Build. You write the code, run the
|
|
9
|
+
tests, and run the checks. You do NOT decide alone: a standing Claude advisor (Fable High
|
|
10
|
+
tier, or Opus MAX if Fable is unavailable, reached via CLI) reviews every significant step at the cadence below.
|
|
11
|
+
|
|
12
|
+
## Repos and branch
|
|
13
|
+
|
|
14
|
+
- [repo, working-tree path, and the branch to develop on; push and PR rules]
|
|
15
|
+
- [any read-only sibling repos and what they are for]
|
|
16
|
+
|
|
17
|
+
## Established findings (treat as settled)
|
|
18
|
+
|
|
19
|
+
[Each finding on its own bullet with file:line citations and measured numbers, each
|
|
20
|
+
labeled measured, bounded, or unverified. Include refuted hypotheses so Grok does not
|
|
21
|
+
re-fix them.]
|
|
22
|
+
|
|
23
|
+
## Hard constraints
|
|
24
|
+
|
|
25
|
+
[Non-negotiables: values that stay fixed, behavior that stays, repo conventions
|
|
26
|
+
(commit style, test-first rules, where constants live), anything out of scope.
|
|
27
|
+
CONFIRM THESE WITH THE USER FIRST, VIA ASKUSERQUESTION, BEFORE EMBEDDING]
|
|
28
|
+
|
|
29
|
+
## The advisor: Claude Fable High / Opus MAX via CLI (bind FIRST, before any change)
|
|
30
|
+
|
|
31
|
+
**Bind (once, at run start):**
|
|
32
|
+
0. `cd` to the repo root named under Repos and branch — and do the same before every
|
|
33
|
+
later consult. `claude` sessions are project-scoped by working directory; a bind
|
|
34
|
+
or resume run from any other cwd (your sandbox, a temp dir) files the session
|
|
35
|
+
under a different project and later resumes report "No conversation found".
|
|
36
|
+
1. Write the charter to a temp file. Charter text: "You are the standing advisor for a
|
|
37
|
+
Grok executor working on [one-sentence mission]. You never edit files or run
|
|
38
|
+
commands; you only answer. Open every reply with exactly one signal word: ENDORSE,
|
|
39
|
+
CORRECTION, PLAN, or STOP. Each consult brings the delta since the last consult
|
|
40
|
+
(real output, never a full recap), the live decision or blocker, and load-bearing
|
|
41
|
+
paths or excerpts. If a consult re-raises something you already answered with
|
|
42
|
+
nothing new attached, restate the prior answer and name it a restatement." Then
|
|
43
|
+
append the full Established findings, Hard constraints, and Plan sections of this
|
|
44
|
+
document to the same file.
|
|
45
|
+
2. Bind: `claude -p --model fable --effort high --output-format json < <charter-file>`
|
|
46
|
+
2a. If 2 fails, replace fable with opus, effort high to max.
|
|
47
|
+
3. The JSON output is an array of events, not one object. Take `session_id` from any
|
|
48
|
+
event; the reply text is the `type == "result"` event's `.result` field. Persist
|
|
49
|
+
`session_id`, the repo root, and the cwd to a state file at once.
|
|
50
|
+
4. If the primary `claude` binary is usage-limited, fall back through
|
|
51
|
+
`python "$HOME/.claude/scripts/claude_chain_runner.py" -- -p --model fable --effort high --output-format json`.
|
|
52
|
+
A failover does NOT carry the session_id. On ANY resume failure — failover,
|
|
53
|
+
session-not-found, expiry — first confirm the cwd is the repo root, then re-bind
|
|
54
|
+
once from there with the charter plus a three-line recap of consults so far, and
|
|
55
|
+
persist the new session_id. A session-not-found error is a wrong-cwd or expired
|
|
56
|
+
session, not a model failure.
|
|
57
|
+
|
|
58
|
+
**Consult (every time):** write the brief to a temp file, then
|
|
59
|
+
`claude -p --resume <session_id> --model fable (or opus) --effort high (max for opus) --output-format json < <brief-file>`.
|
|
60
|
+
Act on the reply's opening signal: ENDORSE — proceed. CORRECTION — apply it first;
|
|
61
|
+
your next consult on that topic opens with what happened. PLAN — adopt it; same
|
|
62
|
+
report-back rule. STOP — halt that line of work and surface it to the user. Never
|
|
63
|
+
proceed past a mandatory checkpoint on an unread or unanswered consult; if the CLI
|
|
64
|
+
and its fallback both fail, stop and tell the user rather than self-endorsing.
|
|
65
|
+
|
|
66
|
+
**Mandatory consult cadence:**
|
|
67
|
+
1. After binding, before touching any file: your concrete per-phase execution plan.
|
|
68
|
+
2. Per phase, BEFORE implementation: the failing tests you wrote and your approach.
|
|
69
|
+
3. Per phase, AFTER implementation: diff summary, test results, acceptance evidence.
|
|
70
|
+
4. Before EVERY `git commit` and EVERY `git push`.
|
|
71
|
+
5. On any user-facing fork: your proposed framing, before asking the user.
|
|
72
|
+
6. Any time the same failure repeats twice, progress stalls, or you reconsider an
|
|
73
|
+
approach.
|
|
74
|
+
|
|
75
|
+
## Plan
|
|
76
|
+
|
|
77
|
+
[Numbered phases. Each phase: what to change (with paths), how to prove it worked
|
|
78
|
+
(acceptance criteria with commands or counts), and its blast radius. A decision that
|
|
79
|
+
belongs to the user is its own phase, marked USER DECISION — never pick silently. End
|
|
80
|
+
with a verify-and-land phase: re-run the baseline check, gates green, advisor ENDORSE,
|
|
81
|
+
then commit and push.]
|
|
82
|
+
|
|
83
|
+
## Execution discipline
|
|
84
|
+
|
|
85
|
+
- Track each phase as an explicit task; mark it complete only when its acceptance
|
|
86
|
+
evidence exists and the advisor has seen it.
|
|
87
|
+
- Every progress claim rests on command output from this run; label anything
|
|
88
|
+
unverified as unverified.
|
|
89
|
+
- Keep a consult log (checkpoint, signal received) and include it in the final report.
|
|
90
|
+
- Final message: outcome first (evidence, phases landed, commits pushed), then the
|
|
91
|
+
decisions taken, then honest gaps.
|
|
92
|
+
````
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: orchestrator
|
|
3
3
|
description: >-
|
|
4
|
-
|
|
4
|
+
Orchestrator mode: plan and delegate while workflow-backed agents
|
|
5
5
|
execute; a shared session-advisor answers hard decisions with endorse,
|
|
6
6
|
correction, plan, or stop. Triggers: '/orchestrator', 'orchestrator
|
|
7
7
|
strategy', 'run with an orchestrator', 'executor-advisor mode',
|
|
@@ -24,7 +24,7 @@ than a solo frontier agent held to the same verification rigor, with
|
|
|
24
24
|
Claude Code has no `multiagent` coordinator field or Managed-Agents-style
|
|
25
25
|
`create_agent`/`send_to_agent` primitives; this skill reaches the same
|
|
26
26
|
shape with the tools Claude Code already has. Under this skill the session
|
|
27
|
-
is the
|
|
27
|
+
is the orchestrator. In Claude Code the user always talks to the session and never to a
|
|
28
28
|
subagent, so the session is the user's sole interface: all user-facing
|
|
29
29
|
communication flows through it. It spawns and resumes executor subagents
|
|
30
30
|
— `clean-coder` and the like — and those executors do every bit of the
|
|
@@ -79,12 +79,16 @@ session drives the plan and routes hard decisions to the shared advisor
|
|
|
79
79
|
On a **Claude host**, follow the Warm-up procedure in that doc (Agent spawn
|
|
80
80
|
of `session-advisor`). Compute the model floor as the max of the
|
|
81
81
|
orchestrating session's own tier and the highest model in the Workflow Agent
|
|
82
|
-
Routing table below (
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
block from that doc
|
|
82
|
+
Routing table below (for example, max(Sonnet, Opus) = Opus when those are
|
|
83
|
+
the tiers in play). That floor is a lower bound only — the Claude spawn walk
|
|
84
|
+
tries top-down from Fable down to that floor per
|
|
85
|
+
[`_shared/advisor/advisor-protocol.md`](../../_shared/advisor/advisor-protocol.md);
|
|
86
|
+
it is not a "spawn only at the floor" rule. Paste the **Claude host**
|
|
87
|
+
Advisor block from that doc, with the resolved agent name filled in, into
|
|
88
|
+
every executor's spawn prompt. On a **Grok host**, skip that spawn — use
|
|
89
|
+
the protocol's self-as-advisor path (this session *is* the advisor; single
|
|
90
|
+
tier `Grok`, attempt result `self`). Paste the **Grok host** Advisor block
|
|
91
|
+
from that doc into every executor's spawn prompt — never the Claude
|
|
88
92
|
SendMessage block. Every row in the routing table is a consumer of the
|
|
89
93
|
shared advisor, not just this session. The orchestrating session owns the
|
|
90
94
|
shared advisor's lifecycle end to end (spawn or self-bind, drift handling
|
|
@@ -15,9 +15,9 @@ Detect the host profile first (see Host profiles in
|
|
|
15
15
|
Re-assert the discipline for that host only — do not invent a Claude
|
|
16
16
|
`session-advisor` spawn on a Grok host.
|
|
17
17
|
|
|
18
|
-
1. **You are the
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
1. **You are the orchestrator.** Orchestrate and hold the user conversation;
|
|
19
|
+
spawn executor subagents to do all the work — every code edit and build or
|
|
20
|
+
test run.
|
|
21
21
|
2. **Hard decisions go to the shared advisor.**
|
|
22
22
|
- **Claude host:** executors consult the warm `session-advisor` via
|
|
23
23
|
`SendMessage` and receive one of four signals — ENDORSE, CORRECTION, PLAN,
|