devrites 3.2.2 → 3.2.4
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/CHANGELOG.md +14 -0
- package/README.md +1 -1
- package/docs/architecture.md +6 -2
- package/docs/command-map.md +3 -3
- package/docs/engine/agent-contract.md +3 -2
- package/docs/harness-compliance.md +2 -2
- package/docs/orchestration.md +15 -12
- package/docs/porting-to-a-new-harness.md +2 -1
- package/docs/skills.md +7 -2
- package/engine/hooks.go +39 -4
- package/engine/hooks_agent_dispatch.go +1193 -0
- package/engine/hooks_workspace.go +78 -10
- package/engine/internal/forge/forge.go +0 -2
- package/engine/internal/harness/compliance.go +1 -1
- package/engine/internal/harness/harness.go +3 -0
- package/engine/internal/lib/doubtcoverage.go +2 -12
- package/engine/internal/lib/reconcile.go +4 -29
- package/engine/internal/lib/reconcile_test.go +14 -10
- package/engine/main.go +4 -1
- package/engine/tests/hook_test.go +877 -1
- package/engine/tests/lib_parity_test.go +5 -17
- package/engine/tests/parity_reconcile_test.go +1 -1
- package/engine/tests/parity_test.go +2 -6
- package/pack/.claude/skills/devrites-api-interface/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-audit/SKILL.md +5 -6
- package/pack/.claude/skills/devrites-browser-proof/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-debug-recovery/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-doubt/SKILL.md +2 -1
- package/pack/.claude/skills/devrites-frontend-craft/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-interview/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-lib/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-lib/reference/model-tiers.md +4 -3
- package/pack/.claude/skills/devrites-lib/reference/parallel-dispatch.md +4 -5
- package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +15 -8
- package/pack/.claude/skills/devrites-prose-craft/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-refresh-indexes/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-source-driven/SKILL.md +1 -0
- package/pack/.claude/skills/devrites-ux-shape/SKILL.md +1 -0
- package/pack/.claude/skills/rite/SKILL.md +1 -0
- package/pack/.claude/skills/rite-adopt/SKILL.md +1 -0
- package/pack/.claude/skills/rite-autocomplete/SKILL.md +1 -0
- package/pack/.claude/skills/rite-build/SKILL.md +2 -1
- package/pack/.claude/skills/rite-build/reference/phase-contract.md +3 -4
- package/pack/.claude/skills/rite-build/reference/wright-dispatch.md +11 -12
- package/pack/.claude/skills/rite-clarify/SKILL.md +1 -0
- package/pack/.claude/skills/rite-converge/SKILL.md +1 -0
- package/pack/.claude/skills/rite-customize/SKILL.md +1 -0
- package/pack/.claude/skills/rite-define/SKILL.md +1 -0
- package/pack/.claude/skills/rite-doctor/SKILL.md +1 -0
- package/pack/.claude/skills/rite-dogfood/SKILL.md +1 -0
- package/pack/.claude/skills/rite-explain/SKILL.md +4 -2
- package/pack/.claude/skills/rite-frame/SKILL.md +1 -0
- package/pack/.claude/skills/rite-handoff/SKILL.md +1 -0
- package/pack/.claude/skills/rite-learn/SKILL.md +1 -0
- package/pack/.claude/skills/rite-plan/SKILL.md +1 -0
- package/pack/.claude/skills/rite-polish/SKILL.md +1 -0
- package/pack/.claude/skills/rite-pov/SKILL.md +1 -0
- package/pack/.claude/skills/rite-pr-feedback/SKILL.md +1 -0
- package/pack/.claude/skills/rite-pressure-test/SKILL.md +1 -0
- package/pack/.claude/skills/rite-prototype/SKILL.md +1 -0
- package/pack/.claude/skills/rite-prove/SKILL.md +1 -0
- package/pack/.claude/skills/rite-quick/SKILL.md +1 -0
- package/pack/.claude/skills/rite-resolve/SKILL.md +1 -0
- package/pack/.claude/skills/rite-review/SKILL.md +1 -0
- package/pack/.claude/skills/rite-seal/SKILL.md +1 -0
- package/pack/.claude/skills/rite-seal/reference/phase-contract.md +2 -3
- package/pack/.claude/skills/rite-seal/reference/risk-and-rollback.md +10 -12
- package/pack/.claude/skills/rite-ship/SKILL.md +1 -0
- package/pack/.claude/skills/rite-spec/SKILL.md +1 -0
- package/pack/.claude/skills/rite-status/SKILL.md +1 -0
- package/pack/.claude/skills/rite-temper/SKILL.md +3 -2
- package/pack/.claude/skills/rite-upgrade/SKILL.md +3 -1
- package/pack/.claude/skills/rite-vet/SKILL.md +1 -0
- package/pack/.claude/skills/rite-zoom-out/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-api-interface/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-audit/SKILL.md +5 -6
- package/pack/generated/claude/skills/devrites-browser-proof/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-debug-recovery/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-doubt/SKILL.md +2 -1
- package/pack/generated/claude/skills/devrites-frontend-craft/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-interview/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-lib/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-lib/reference/model-tiers.md +4 -3
- package/pack/generated/claude/skills/devrites-lib/reference/parallel-dispatch.md +4 -5
- package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +15 -8
- package/pack/generated/claude/skills/devrites-prose-craft/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-refresh-indexes/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-source-driven/SKILL.md +1 -0
- package/pack/generated/claude/skills/devrites-ux-shape/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-adopt/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-build/SKILL.md +2 -1
- package/pack/generated/claude/skills/rite-build/reference/phase-contract.md +3 -4
- package/pack/generated/claude/skills/rite-build/reference/wright-dispatch.md +11 -12
- package/pack/generated/claude/skills/rite-clarify/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-converge/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-customize/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-define/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-doctor/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-dogfood/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-explain/SKILL.md +4 -2
- package/pack/generated/claude/skills/rite-frame/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-handoff/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-learn/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-plan/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-polish/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-pov/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-pr-feedback/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-pressure-test/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-prototype/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-prove/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-quick/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-resolve/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-review/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-seal/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-seal/reference/phase-contract.md +2 -3
- package/pack/generated/claude/skills/rite-seal/reference/risk-and-rollback.md +10 -12
- package/pack/generated/claude/skills/rite-ship/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-spec/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-status/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-temper/SKILL.md +3 -2
- package/pack/generated/claude/skills/rite-upgrade/SKILL.md +3 -1
- package/pack/generated/claude/skills/rite-vet/SKILL.md +1 -0
- package/pack/generated/claude/skills/rite-zoom-out/SKILL.md +1 -0
- package/pack/generated/codex/AGENTS.md +2 -4
- package/pack/generated/codex/hooks.json +24 -5
- package/pack/generated/codex/skills/devrites-api-interface/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-audit/SKILL.md +10 -10
- package/pack/generated/codex/skills/devrites-browser-proof/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-debug-recovery/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-doubt/SKILL.md +7 -5
- package/pack/generated/codex/skills/devrites-frontend-craft/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-interview/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-lib/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-lib/reference/model-tiers.md +4 -3
- package/pack/generated/codex/skills/devrites-lib/reference/parallel-dispatch.md +4 -5
- package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +15 -8
- package/pack/generated/codex/skills/devrites-prose-craft/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-refresh-indexes/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-source-driven/SKILL.md +6 -4
- package/pack/generated/codex/skills/devrites-ux-shape/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-adopt/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-build/SKILL.md +7 -5
- package/pack/generated/codex/skills/rite-build/reference/phase-contract.md +3 -4
- package/pack/generated/codex/skills/rite-build/reference/wright-dispatch.md +11 -12
- package/pack/generated/codex/skills/rite-clarify/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-converge/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-customize/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-define/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-doctor/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-dogfood/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-explain/SKILL.md +9 -6
- package/pack/generated/codex/skills/rite-frame/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-handoff/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-learn/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-plan/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-polish/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-pov/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-pr-feedback/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-pressure-test/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-prototype/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-prove/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-quick/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-resolve/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-review/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-seal/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-seal/reference/phase-contract.md +2 -3
- package/pack/generated/codex/skills/rite-seal/reference/risk-and-rollback.md +10 -12
- package/pack/generated/codex/skills/rite-ship/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-spec/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-status/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-temper/SKILL.md +8 -6
- package/pack/generated/codex/skills/rite-upgrade/SKILL.md +8 -5
- package/pack/generated/codex/skills/rite-vet/SKILL.md +6 -4
- package/pack/generated/codex/skills/rite-zoom-out/SKILL.md +6 -4
- package/package.json +1 -1
- package/scripts/codex-generate.sh +32 -18
- package/scripts/live-hosts/agent-result.schema.json +2 -1
- package/scripts/live-hosts/claude.sh +2 -2
- package/scripts/live-hosts/codex.sh +4 -0
- package/scripts/live-hosts/fake-host.py +1 -8
- package/scripts/live-hosts/host-transport.py +1 -2
- package/scripts/run-agent-contract-evals.py +3 -3
- package/scripts/run-evals.sh +3 -34
- package/scripts/validate-frontmatter.py +34 -1
- package/engine/testdata/golden/TestParityA1Guard/inline-fallback-silent.golden +0 -1
- package/engine/testdata/golden/TestParityDoubtCoverage/arg=inline.golden +0 -3
- package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing-inline.golden +0 -3
- package/scripts/eval-runner.py +0 -275
- package/scripts/eval-scorer.mjs +0 -46
- package/scripts/render-eval-summary.py +0 -48
- /package/engine/testdata/golden/TestParityReconcile/{inline-fallback → close-window}/snapshot.golden +0 -0
- /package/engine/testdata/golden/TestParityReconcile/{inline-fallback.golden → close-window.golden} +0 -0
|
@@ -45,8 +45,7 @@
|
|
|
45
45
|
against the ledger: an every-slice-trivial feature (`- none`) is a valid pass; a stood triggering
|
|
46
46
|
decision (boundary / data-model / auth / public-API / migration / branching) with no verdict is
|
|
47
47
|
the finding, same severity as rc=3.
|
|
48
|
-
- **rc=0:** covered, or not assessable
|
|
49
|
-
verdicts by hand).
|
|
48
|
+
- **rc=0:** covered, or not assessable because no wright was logged.
|
|
50
49
|
Either way, walk the `## Decisions stood` ledger yourself: severity rides the unverified
|
|
51
50
|
**decision**, never the exit code alone.
|
|
52
51
|
5. Check **security, data, migration, rollback**, strategy scope, principles,
|
|
@@ -61,7 +60,7 @@
|
|
|
61
60
|
[`parallel-dispatch.md`](../../devrites-lib/reference/parallel-dispatch.md). Await
|
|
62
61
|
fresh-context batches of at most three and give reviewers only the workspace path plus
|
|
63
62
|
immutable diff, without author reasoning. Use named role → safely enforced generic fresh
|
|
64
|
-
agent
|
|
63
|
+
agent; if neither is available, seal remains NO-GO. Carry Spec/Code verdicts only
|
|
65
64
|
for an unchanged post-review diff; rerun the other applicable axes.
|
|
66
65
|
**Footprint: account for the whole roster.** For each reviewer you dispatch, append
|
|
67
66
|
`devrites-engine footprint log <slug> reviewer devrites-<x>-reviewer` (the reviewer's **exact agent name**:
|
|
@@ -25,18 +25,16 @@ For each risky step, state how to back it out:
|
|
|
25
25
|
- A new external dependency with no failure handling is at least **Important**.
|
|
26
26
|
- Record the chosen rollback path in `seal.md` → "Rollback / Recovery".
|
|
27
27
|
|
|
28
|
-
## Fresh-context
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
-
|
|
33
|
-
|
|
34
|
-
-
|
|
35
|
-
|
|
36
|
-
-
|
|
37
|
-
|
|
38
|
-
- Security or irreversible-risk scope has no reduced-assurance override: unavailable
|
|
39
|
-
independent review remains NO-GO.
|
|
28
|
+
## Fresh-context availability
|
|
29
|
+
|
|
30
|
+
A required review must run in a fresh spawned agent:
|
|
31
|
+
|
|
32
|
+
- If neither a named role nor a guarded generic agent is available, record the roster
|
|
33
|
+
skip reason and keep seal **NO-GO**.
|
|
34
|
+
- Never run the reviewer in the root context or log root work as a dispatched review.
|
|
35
|
+
- AFK never auto-accepts a missing reviewer.
|
|
36
|
+
- Security or irreversible-risk scope remains NO-GO while independent review is
|
|
37
|
+
unavailable.
|
|
40
38
|
|
|
41
39
|
## Destructive operations
|
|
42
40
|
Confirm any destructive step with the user before shipping. Verify backups exist where
|
|
@@ -3,6 +3,7 @@ name: rite-ship
|
|
|
3
3
|
description: Ship the sealed feature: commit, push, tag, archive, close. Use when the user says "ship it", "push the branch", "tag the release", or "close the task" after /rite-seal GO. Not for GO/NO-GO readiness.
|
|
4
4
|
argument-hint: "[feature-slug]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-ship: ship + close the task
|
|
@@ -3,6 +3,7 @@ name: rite-spec
|
|
|
3
3
|
description: Spec new or high-risk behavior before code and write its `.devrites/work/<slug>/` workspace. Use for a feature/app, vague product idea, auth or migration work, or a public-API change. Not for approved-spec planning.
|
|
4
4
|
argument-hint: "<feature or idea>"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-spec: investigate and write the spec
|
|
@@ -3,6 +3,7 @@ name: rite-temper
|
|
|
3
3
|
description: Temper a readied spec before planning. Use when the user says "temper this", "strategy review", "pre-mortem the spec", or asks if we are over/under-building. Not for code review or final seal.
|
|
4
4
|
argument-hint: "[feature-slug] [--mode expand|selective|hold|reduce]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: devrites-strategy-reviewer
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-temper: review scope and risk before planning
|
|
@@ -112,8 +113,8 @@ that needs more than the default pre-mortem) selected by the section's risk).
|
|
|
112
113
|
dimension still below bar after 3 is classified by decision ownership: a product/scope/risk
|
|
113
114
|
choice becomes a blocking question; an objective spec defect stays blocked with the exact
|
|
114
115
|
required edit and routes to `/rite-spec`, not `/rite-resolve`. Irreversible-risk findings
|
|
115
|
-
always pause. Use the shared capability ladder;
|
|
116
|
-
|
|
116
|
+
always pause. Use the shared capability ladder; if no fresh-agent rung is available,
|
|
117
|
+
stop for HITL. After an accepted edit to a
|
|
117
118
|
coverage-bound input, repeat step 6's revalidation and digest refresh before handoff.
|
|
118
119
|
8. **STOP.** Report the mode, the scope deltas, and the floor verdict; recommend `/rite-define`.
|
|
119
120
|
|
|
@@ -4,6 +4,7 @@ description: User-invoked semantic upgrade for an active legacy DevRites workspa
|
|
|
4
4
|
argument-hint: "[feature-slug]"
|
|
5
5
|
user-invocable: true
|
|
6
6
|
disable-model-invocation: true
|
|
7
|
+
required-agent-roles: devrites-upgrade-planner
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# /rite-upgrade: bring an active workspace onto the current contract
|
|
@@ -58,7 +59,8 @@ Plan, Vet, Converge, and Build phase contracts needed by the assessment.
|
|
|
58
59
|
devrites-engine snapshot [feature-slug]
|
|
59
60
|
```
|
|
60
61
|
If every semantic artifact names the current contract and `build-readiness` passes,
|
|
61
|
-
|
|
62
|
+
mark the candidate as a likely no-op; the fresh upgrade assessment in step 2 must
|
|
63
|
+
confirm that before reporting it.
|
|
62
64
|
1. **Freeze the preservation baseline.** Create the standard orchestrator-controlled
|
|
63
65
|
`agent-packet/v1` baseline. Include exact paths for current phase/artifact contracts,
|
|
64
66
|
`state.md`, `spec.md`, `decision-coverage.md`, `architecture.md`, `plan.md`, `tasks.md`,
|
|
@@ -3,6 +3,7 @@ name: rite-vet
|
|
|
3
3
|
description: Vet a defined plan before code with senior-engineer engineering review. Use when the user says "vet the plan", "engineering review", "lock in the plan", or before building. Not for code review or final seal.
|
|
4
4
|
argument-hint: "[slug] [--cross-model] [--full]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: devrites-plan-reviewer
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-vet: review the plan before build
|
|
@@ -4,6 +4,7 @@ description: User-invoked read-only structural map of unfamiliar code: modules,
|
|
|
4
4
|
argument-hint: "[symbol | file | area to map]"
|
|
5
5
|
user-invocable: true
|
|
6
6
|
disable-model-invocation: true
|
|
7
|
+
required-agent-roles: none
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# /rite-zoom-out: step up one abstraction layer
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-api-interface
|
|
3
3
|
description: Design stable API/interface contracts before implementation: REST/GraphQL endpoints, module boundaries, type contracts, FE/BE splits. Use when the user says "design the API" or a slice crosses a boundary. Not for helpers.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: none
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-api-interface: contract before implementation
|
|
@@ -3,6 +3,7 @@ name: devrites-audit
|
|
|
3
3
|
description: Read-only feature audit on security/perf/simplify: auth trust boundary, injection, secrets, hot-path, payload-size, perf budget, Chesterton delete/cleanup. Use when auditing one axis. Not for writes.
|
|
4
4
|
argument-hint: "<security | perf | simplify>"
|
|
5
5
|
user-invocable: false
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# devrites-audit: read-only audit dispatch
|
|
@@ -39,14 +40,12 @@ no cross-pollination and the shared maximum of three concurrent read-only roles.
|
|
|
39
40
|
|
|
40
41
|
## Fallback and scope
|
|
41
42
|
|
|
42
|
-
Use the capability ladder
|
|
43
|
-
|
|
44
|
-
`independence: fallback`. Use these role contracts:
|
|
43
|
+
Use the capability ladder. If no safe fresh-context rung preserves the role's
|
|
44
|
+
read-only boundary, stop for HITL. Use these role contracts:
|
|
45
45
|
|
|
46
46
|
- `.claude/agents/devrites-security-auditor.md`
|
|
47
47
|
- `.claude/agents/devrites-performance-reviewer.md`
|
|
48
48
|
- `.claude/agents/devrites-simplifier-reviewer.md`
|
|
49
49
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
active feature. Critical findings block seal; simplification never changes behavior.
|
|
50
|
+
Stay inside the active feature. Critical findings block seal; simplification never
|
|
51
|
+
changes behavior.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-browser-proof
|
|
3
3
|
description: Observe and prove working UI behavior in a real browser with screenshots, interactions, network evidence, and Core Web Vitals. Use for browser proof or performance after the page works.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: none
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-browser-proof: runtime evidence for UI
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-debug-recovery
|
|
3
3
|
description: Debug application failures: tests, builds, CI, runtime exceptions, browser errors, app 500s. Reproduce, rank hypotheses, fix root cause, regression-test. Use when "debug", "build is red", "tests fail", or the app is broken. Not for DevRites install health.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: none
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-debug-recovery: fix the root cause, not the symptom
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-doubt
|
|
3
3
|
description: Stress-test one non-trivial decision with an adversarial independent take. Use when the user says "are we sure", "double-check", "what could go wrong", or before boundary/data/auth/API/migration choices. Not for trivial choices.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: devrites-doubt-reviewer
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-doubt: CLAIM → EXTRACT → DOUBT → RECONCILE → STOP
|
|
@@ -22,7 +23,7 @@ code · claiming "this is safe", "this scales", or "this matches the spec".
|
|
|
22
23
|
`agent-packet/v1` and the adversarial objective *"find what's wrong; do not
|
|
23
24
|
validate."* Follow
|
|
24
25
|
[`agents.md`](../devrites-lib/reference/standards/agents.md). Inline does not satisfy
|
|
25
|
-
independence;
|
|
26
|
+
independence; if no fresh-agent rung is available, stop for HITL.
|
|
26
27
|
- [ ] **4. RECONCILE**: classify EVERY finding: contract misread | valid & actionable |
|
|
27
28
|
valid trade-off | noise. **Doubt-theater check:** if two or more cycles find substantive
|
|
28
29
|
issues but classify **zero** as actionable, the review is too agreeable. Sharpen the
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-frontend-craft
|
|
3
3
|
description: Implement frontend at senior designer-engineer quality: every state covered, anti-AI-slop, WCAG 2.2 AA. Use when the user says "build the UI", "design system", "a11y", or `/rite-build` detects UI. Not for polishing a built feature or design exploration.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: none
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-frontend-craft: UI like a senior designer-engineer
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-interview
|
|
3
3
|
description: Interview the user one question at a time to extract intent. Use when the user says "interview me", "I am not sure what I want", or the ask is underspecified. Not for casual clarification.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: none
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-interview: extract intent
|
|
@@ -3,6 +3,7 @@ name: devrites-lib
|
|
|
3
3
|
description: Internal shared DevRites helper library. Documents cross-cutting engine commands and references; not a user workflow. Do not invoke directly.
|
|
4
4
|
user-invocable: false
|
|
5
5
|
disable-model-invocation: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# devrites-lib: internal shared helpers (not a command)
|
|
@@ -21,13 +21,14 @@ one to a reviewer to save cost. The tier a scout runs on is where savings are sa
|
|
|
21
21
|
## The degradation rule
|
|
22
22
|
|
|
23
23
|
Tiers are an optimization, never a correctness dependency. A skill written against tiers must run
|
|
24
|
-
correctly on a harness that cannot select models per agent
|
|
24
|
+
correctly on a harness that cannot select models per agent:
|
|
25
25
|
|
|
26
26
|
1. **Per-agent model override unavailable** → dispatch the scout on the **inherited** model and
|
|
27
27
|
keep its **read budget and output cap**. The cost control falls back to structure, not model
|
|
28
28
|
choice. This is why every scout dispatch also carries an explicit read budget.
|
|
29
|
-
2. **No
|
|
30
|
-
|
|
29
|
+
2. **No safe fresh-agent rung** → stop for HITL when the scout is required, or record the
|
|
30
|
+
explicitly optional scout as skipped. Never relabel root-context work as independent
|
|
31
|
+
specialist dispatch.
|
|
31
32
|
|
|
32
33
|
A skill that only works when it can pick a cheap model is broken. The tier names the *intent*; the
|
|
33
34
|
budget enforces it regardless of what the harness can do.
|
|
@@ -91,9 +91,8 @@ devrites-engine footprint roster <slug>
|
|
|
91
91
|
```
|
|
92
92
|
|
|
93
93
|
`roster` rc=3 means an unaccounted reviewer: dispatch or record why it does not apply.
|
|
94
|
-
rc=1 means an always-on skip; this is valid only for an unchanged-candidate
|
|
95
|
-
|
|
96
|
-
[`../../rite-seal/reference/risk-and-rollback.md`](../../rite-seal/reference/risk-and-rollback.md).
|
|
94
|
+
rc=1 means an always-on skip; this is valid only for an unchanged-candidate
|
|
95
|
+
carry-forward. A required reviewer that cannot be dispatched blocks the phase.
|
|
97
96
|
|
|
98
97
|
## Reconciliation
|
|
99
98
|
|
|
@@ -106,5 +105,5 @@ or the explicit independence fallback in
|
|
|
106
105
|
6. Apply the caller's gate; do not invent a composite score.
|
|
107
106
|
|
|
108
107
|
Every panel reviewer runs at the ceiling or inherited tier. If the named role is
|
|
109
|
-
unavailable, use the universal ladder.
|
|
110
|
-
|
|
108
|
+
unavailable, use the universal ladder. If no fresh-agent rung is available, stop for
|
|
109
|
+
HITL; never execute the reviewer in the root context.
|
|
@@ -50,7 +50,7 @@ review fan-out. Phase skills own their phase-locked role choice.
|
|
|
50
50
|
|
|
51
51
|
## Fresh-context dispatch ladder
|
|
52
52
|
|
|
53
|
-
Use the first
|
|
53
|
+
Use the first safe rung:
|
|
54
54
|
|
|
55
55
|
1. Dispatch the named custom role with the host's spawn primitive.
|
|
56
56
|
2. If spawning works but that role is unavailable, use a generic fresh agent only when
|
|
@@ -59,13 +59,20 @@ Use the first available rung; capability failure never changes the contract:
|
|
|
59
59
|
allowlist (or an isolated/staged checkout) for a `worker`. Tell it to read the
|
|
60
60
|
generated role contract, then give it the same packet. An instruction-only shared-tree
|
|
61
61
|
writer is not an available rung.
|
|
62
|
-
3.
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
62
|
+
3. Otherwise stop for HITL; specialist work never runs in the root context.
|
|
63
|
+
|
|
64
|
+
Every canonical skill declares `required-agent-roles` in its frontmatter. Use `none`
|
|
65
|
+
when no fresh agent is unconditionally required for that invocation. Codex reads this
|
|
66
|
+
field from the installed skill at `UserPromptSubmit` and arms a fail-closed completion
|
|
67
|
+
receipt for every listed role; the engine derives roles from skill metadata.
|
|
68
|
+
Conditional scouts and reviewers remain owned by their explicit phase triggers.
|
|
69
|
+
|
|
70
|
+
Claude: `Agent`; Codex: `spawn_agent`. V2 calls the named `agent_type` with
|
|
71
|
+
unique `task_name` and `fork_turns="none"`. GPT-5.6 may hide `agent_type` from the
|
|
72
|
+
schema, but runtime accepts it and loads the TOML; never use `default`. V2 bypasses
|
|
73
|
+
hooks, so Stop/reconcile verify role, native instructions, wait, completion, and result.
|
|
74
|
+
V1 uses guarded `explorer`/`worker` with injected rules and receipt. Prose
|
|
75
|
+
isn't evidence.
|
|
69
76
|
|
|
70
77
|
## File-backed dispatch contract
|
|
71
78
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-prose-craft
|
|
3
3
|
description: Humanize prose without losing technical content. Use when asked to remove AI-writing tells, match a writing sample or project voice, edit artifacts/replies/commit or PR prose, or run `/rite-polish`'s prose pass. Not for code comments or UI craft.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: none
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-prose-craft: prose that reads human
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-refresh-indexes
|
|
3
3
|
description: Refresh stale optional indexes. Use when structural lookup disagrees with live code or rite-doctor requests a synchronous reindex.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: none
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-refresh-indexes: keep the code-intelligence indexes fresh
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-source-driven
|
|
3
3
|
description: Verify uncertain framework/library behavior against official docs or installed source before relying on it. Use when the user says "check the docs", "verify this assumption", or hits an unfamiliar API. Not for internal code.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: devrites-evidence-scout
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-source-driven: verify, don't guess
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: devrites-ux-shape
|
|
3
3
|
description: Plan UX/UI before code: design direction, design brief, visual direction, key states, interaction model for screens/forms/dashboards/settings pages. Use when shaping UI. Not for building/polish.
|
|
4
4
|
user-invocable: false
|
|
5
|
+
required-agent-roles: none
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# devrites-ux-shape: plan the UX/UI before code
|
|
@@ -3,6 +3,7 @@ name: rite-adopt
|
|
|
3
3
|
description: Adopt an existing or legacy codebase into DevRites by reverse-engineering current behavior, seeding conventions, and establishing the workflow. Use for inherited or live applications.
|
|
4
4
|
argument-hint: "[path or area to adopt] [+ what you want to build next]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-adopt: onboard existing code
|
|
@@ -3,6 +3,7 @@ name: rite-autocomplete
|
|
|
3
3
|
description: Run the DevRites lifecycle end-to-end unattended; --ship confirms the final gate. Use when the user says "autocomplete", "one-shot this feature", or "ship it autonomously". Not for a single phase.
|
|
4
4
|
argument-hint: "[idea] [--ship|--yolo] [--max-slices N]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-autocomplete: full lifecycle, unattended
|
|
@@ -3,6 +3,7 @@ name: rite-build
|
|
|
3
3
|
description: Build one approved vertical slice, then stop with evidence. Use when the next planned slice should be implemented. Not for multiple slices.
|
|
4
4
|
argument-hint: "[slice number or name]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: devrites-slice-wright
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-build: one verified slice
|
|
@@ -19,7 +20,7 @@ doubt, fail-on-red, recording, and stop checks. See
|
|
|
19
20
|
## Rules consulted (read on demand from `.claude/skills/devrites-lib/reference/standards/`)
|
|
20
21
|
Read `.claude/skills/devrites-lib/reference/standards/core.md` first (workflow step 0). The
|
|
21
22
|
following load on demand: **the wright reads them** (they are named in its contract) while it
|
|
22
|
-
writes; read them yourself for the doubt/record gates
|
|
23
|
+
writes; read them yourself for the doubt/record gates:
|
|
23
24
|
- `coding-style.md`: naming, function shape, guard clauses, comments, reuse-first.
|
|
24
25
|
- `error-handling.md`: fail fast, no silent catches, fail closed.
|
|
25
26
|
- `testing.md`: pyramid, behaviour over implementation, see-it-fail-first.
|
|
@@ -55,9 +55,8 @@ See also [`one-slice-cycle.md`](one-slice-cycle.md).
|
|
|
55
55
|
**Default serial branch.** Follow
|
|
56
56
|
[`wright-dispatch.md`](wright-dispatch.md) end to end; it owns snapshot timing, stuck
|
|
57
57
|
logging, the exact packet, conditional skill loading, and return checks. Dispatch through
|
|
58
|
-
named wright → safely enforced generic fresh worker
|
|
59
|
-
|
|
60
|
-
enforcement or isolated staging; it never skips reconciliation. Before any canonical
|
|
58
|
+
named wright → safely enforced generic fresh worker. If neither is available, stop for
|
|
59
|
+
HITL; the root never performs wright work. Before any canonical
|
|
61
60
|
`.devrites/` mutation, validate the typed result and require a clean immediate
|
|
62
61
|
`devrites-engine reconcile check`; exit `5` rejects the writer result.
|
|
63
62
|
4. **Doubt every stood decision before accepting the slice.** The writer never grades its
|
|
@@ -176,4 +175,4 @@ See also [`one-slice-cycle.md`](one-slice-cycle.md).
|
|
|
176
175
|
just built. **When every slice is built** (`✅ ALL BUILT`) say so explicitly (the build
|
|
177
176
|
phase is complete, the next phase is `/rite-prove`) don't leave completion implicit.
|
|
178
177
|
|
|
179
|
-
> **Mid-flight discipline.** The wright
|
|
178
|
+
> **Mid-flight discipline.** The wright must resist doing two slices, skipping TDD, adding a defensive check, or wandering outside `touched-files.md`; you must resist skipping the post-return `devrites-doubt` because the wright "seems confident": see [`anti-patterns.md`](anti-patterns.md). Load it the moment you reach for the excuse.
|
|
@@ -121,15 +121,14 @@ Only then persist `state.md`, `evidence.md`, `touched-files.md`, decision/doubt
|
|
|
121
121
|
and browser evidence. Keep the retained window across a genuine human wait that will
|
|
122
122
|
resume the same slice. Close it before abandoning the slice for a scope/plan transition.
|
|
123
123
|
|
|
124
|
-
## Host
|
|
125
|
-
|
|
126
|
-
Use named wright →
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
wright
|
|
134
|
-
|
|
135
|
-
same allowlist, baseline, integrity gates, and close command remain mandatory.
|
|
124
|
+
## Host dispatch
|
|
125
|
+
|
|
126
|
+
Use named wright → enforced V1 generic worker from `standards/agents.md`. On Codex
|
|
127
|
+
MultiAgent V2, dispatch the exact named `devrites-slice-wright` with a unique
|
|
128
|
+
`task_name` and `fork_turns="none"`; its durable child rollout must prove the native
|
|
129
|
+
wright role, wait, completion, and non-empty result from the current reconcile window.
|
|
130
|
+
Any generic worker still needs the exact allowlist or an isolated checkout;
|
|
131
|
+
reconciliation alone is insufficient. If no safe fresh-agent rung is available, stop
|
|
132
|
+
for HITL. On Codex, `reconcile check` and `reconcile close` require the completed
|
|
133
|
+
wright receipt bound to the current reconcile snapshot.
|
|
134
|
+
The root never performs wright work.
|
|
@@ -3,6 +3,7 @@ name: rite-clarify
|
|
|
3
3
|
description: Run the topology-first decision-coverage scan after rite-spec and before strategy or architecture. Audit actors, journeys, states, data, integrations, operations, proof, assumptions, and must-NOT boundaries; close Partial/Missing rows and emit decision-coverage.md CLEAR. Use for missing/stale coverage or a missed pre-build product decision.
|
|
4
4
|
argument-hint: "[feature-slug]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-clarify: resolve product decisions
|
|
@@ -3,6 +3,7 @@ name: rite-converge
|
|
|
3
3
|
description: Converge intent and live code. Use when resuming a half-built feature, after `/rite-adopt` drift, or the user asks "what's left to build". Not for initial planning.
|
|
4
4
|
argument-hint: "[feature-slug]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: devrites-evidence-scout
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-converge: compare live code with intent
|
|
@@ -4,6 +4,7 @@ description: User-invoked helper for authoring DevRites overrides or extensions.
|
|
|
4
4
|
argument-hint: "[override <agent> | extension <name>]"
|
|
5
5
|
user-invocable: true
|
|
6
6
|
disable-model-invocation: true
|
|
7
|
+
required-agent-roles: none
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# /rite-customize: guided project customization
|
|
@@ -3,6 +3,7 @@ name: rite-define
|
|
|
3
3
|
description: Define the first build plan from an approved spec: architecture, task slices, traceability, and state. Use when turning approved intent into its initial plan.
|
|
4
4
|
argument-hint: "[feature-slug]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: devrites-plan-drafter
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-define: plan from the spec
|
|
@@ -3,6 +3,7 @@ name: rite-doctor
|
|
|
3
3
|
description: Doctor DevRites setup or index health. Use when workflow wiring is broken, the user asks to check DevRites, or says "reindex". Not for application bugs.
|
|
4
4
|
argument-hint: "[--code | --reindex]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-doctor: health check
|
|
@@ -4,6 +4,7 @@ description: User-invoked explainer that teaches one concept, diff, idea, or rec
|
|
|
4
4
|
argument-hint: "[a concept | a diff ref | an idea | \"what did I do this week?\"], or bare to be asked"
|
|
5
5
|
user-invocable: true
|
|
6
6
|
disable-model-invocation: true
|
|
7
|
+
required-agent-roles: none
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# /rite-explain: the human half of the learning loop
|
|
@@ -42,8 +43,9 @@ Dispatch by task shape, per [`devrites-lib/reference/model-tiers.md`](../devrite
|
|
|
42
43
|
orchestrator's own model; nothing is dispatched down. Teaching quality is the whole product: do
|
|
43
44
|
not cheapen it.
|
|
44
45
|
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
No per-agent model control means dispatch the scout as a same-model fresh agent under the
|
|
47
|
+
same budget. If no fresh-agent rung is available, stop with the missing capability; never run
|
|
48
|
+
the scout in the root context.
|
|
47
49
|
|
|
48
50
|
## Workflow
|
|
49
51
|
|
|
@@ -3,6 +3,7 @@ name: rite-frame
|
|
|
3
3
|
description: Frame an ad-hoc ask before coding, then audit the diff. Use for underspecified imperative asks, raw-diff self-audits, or `/rite-quick` setup. Not a lifecycle gate.
|
|
4
4
|
argument-hint: "[task to frame | diff to audit]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-frame: frame the goal, audit the diff
|
|
@@ -4,6 +4,7 @@ description: User-invoked handoff writer: sync chat-only context into `.devrites
|
|
|
4
4
|
user-invocable: true
|
|
5
5
|
disable-model-invocation: true
|
|
6
6
|
argument-hint: "[what the next session will focus on]"
|
|
7
|
+
required-agent-roles: none
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# /rite-handoff: chat-only context, into a fresh-agent doc
|
|
@@ -4,6 +4,7 @@ description: User-invoked review of the learning ledger; promotes recurring less
|
|
|
4
4
|
argument-hint: "[--mine | \"<lesson to record>\"]"
|
|
5
5
|
user-invocable: true
|
|
6
6
|
disable-model-invocation: true
|
|
7
|
+
required-agent-roles: none
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# /rite-learn: the cross-feature learning loop
|
|
@@ -3,6 +3,7 @@ name: rite-plan
|
|
|
3
3
|
description: Re-plan existing work when reality invalidates the plan: reslice a slice that is too big, repair drift, reorder dependencies, split boundaries, or unblock work. Not first-pass decomposition.
|
|
4
4
|
argument-hint: "[mode: decompose|reslice|repair|reorder|split|unblock|course-correct|revise]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: devrites-plan-drafter
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-plan: (re)plan an active feature
|
|
@@ -3,6 +3,7 @@ name: rite-polish
|
|
|
3
3
|
description: Polish the active feature before review: code always, UI when touched. Use when the user says "polish this", "finish before review", "normalize the UI", or "make it bolder/quieter". Not for repo-wide refactors.
|
|
4
4
|
argument-hint: "[target | bolder | quieter | distill | harden | normalize-only]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-polish: finish before review
|
|
@@ -3,6 +3,7 @@ name: rite-pov
|
|
|
3
3
|
description: Project-grounded verdict for adopting, switching, rejecting, or revisiting a named external technology, library, platform, CVE, or pattern. Use when deciding whether this project should commit to an outside option.
|
|
4
4
|
argument-hint: "[candidate/link/question]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-pov: project-grounded external verdict
|
|
@@ -4,6 +4,7 @@ description: Explicit utility for resolving GitHub PR review feedback.
|
|
|
4
4
|
argument-hint: "[PR number|thread URL|blank for current branch]"
|
|
5
5
|
user-invocable: true
|
|
6
6
|
disable-model-invocation: true
|
|
7
|
+
required-agent-roles: none
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# /rite-pr-feedback: resolve PR review threads
|
|
@@ -3,6 +3,7 @@ name: rite-pressure-test
|
|
|
3
3
|
description: Pressure-test a rough/vague idea: ideate, explore 3-5 approaches, radically different shapes, diverge then converge on direction before spec. Not for writing spec.
|
|
4
4
|
argument-hint: "[rough idea or plan to stress-test]"
|
|
5
5
|
user-invocable: true
|
|
6
|
+
required-agent-roles: none
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# /rite-pressure-test: diverge then converge
|
|
@@ -4,6 +4,7 @@ description: User-invoked throwaway prototype for one logic or UI design questio
|
|
|
4
4
|
user-invocable: true
|
|
5
5
|
disable-model-invocation: true
|
|
6
6
|
argument-hint: "[the question the prototype is answering]"
|
|
7
|
+
required-agent-roles: none
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# /rite-prototype: answer one question with throwaway code
|