@orkestrel/scaffold 0.0.19 → 0.0.20
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/dist/host/CLAUDE.md +9 -3
- package/dist/host/agents/skills/orkestrel-debrief/SKILL.md +69 -59
- package/dist/host/agents/skills/orkestrel-debrief/references/instruction-audit.md +70 -0
- package/dist/host/claude/agents/application.md +34 -0
- package/dist/host/claude/agents/researcher.md +31 -0
- package/dist/host/claude/agents/scout.md +25 -0
- package/dist/host/claude/skills/orkestrel-debrief/SKILL.md +1 -1
- package/dist/host/codex/agents/application.toml +23 -0
- package/dist/host/codex/agents/researcher.toml +22 -0
- package/dist/host/codex/agents/scout.toml +18 -0
- package/dist/host/codex/config.toml +5 -2
- package/dist/host/manifest.json +35 -0
- package/dist/src/core/index.cjs +1 -1
- package/dist/src/core/index.cjs.map +1 -1
- package/dist/src/core/index.d.cts +1 -1
- package/dist/src/core/index.d.ts +1 -1
- package/dist/src/core/index.js +1 -1
- package/dist/src/core/index.js.map +1 -1
- package/package.json +1 -1
package/dist/host/CLAUDE.md
CHANGED
|
@@ -37,9 +37,12 @@ One workflow runs across both providers. Each engine has one job, and no engine
|
|
|
37
37
|
- **After implementation Opus 5 and Sol audit independently** — Opus on design fit, Sol on
|
|
38
38
|
correctness and constraint satisfaction — and the orchestrator reconciles their evidence
|
|
39
39
|
into one verdict.
|
|
40
|
-
- **Lower-cost native agents (Sonnet, Terra) do fully specified
|
|
41
|
-
evidence only.** A specified rename,
|
|
42
|
-
run
|
|
40
|
+
- **Lower-cost native agents (Sonnet, Terra) do fully specified units and read-only
|
|
41
|
+
evidence only.** A specified rename, an app-layer expansion, a conformance checklist, a
|
|
42
|
+
gate run, a bounded primary-source question, a reconnaissance sweep. They never
|
|
43
|
+
substitute for Grok, Opus 5, or Sol: `researcher` and `scout` are the native evidence
|
|
44
|
+
lanes for bounded questions and the fallback when the Grok bench is dark, never the
|
|
45
|
+
route for repository-scale absorption or judgment.
|
|
43
46
|
|
|
44
47
|
The orchestrator reconciles; no external engine reconciles itself or accepts its own work.
|
|
45
48
|
In Claude Code the orchestrator is the top-level Fable session. When Codex is primary, the
|
|
@@ -68,6 +71,9 @@ dispatch, even when the role file pins it.
|
|
|
68
71
|
| Nontrivial implementation (objective) | `codex` route `implementer` | `implementer` | GPT-5.6 Sol (bridge / native) |
|
|
69
72
|
| Nontrivial implementation (subjective) | `implementer` | `implementer` route `opus` | Opus 5 (native / bridge) |
|
|
70
73
|
| Fully specified mechanical unit | `builder` | `builder` | Sonnet / Terra |
|
|
74
|
+
| Fully specified app-layer unit | `application` | `application` | Sonnet / Terra |
|
|
75
|
+
| Bounded primary-source research | `researcher` | `researcher` | Sonnet / Terra |
|
|
76
|
+
| Repository reconnaissance | `scout` | `scout` | Sonnet / Terra |
|
|
71
77
|
| Mechanical conformance evidence | `checker` | `checker` | Sonnet / Terra |
|
|
72
78
|
| Gate evidence | `verifier` | `verifier` | Sonnet / Terra |
|
|
73
79
|
| Ecosystem evidence | `orkestrel` | `orkestrel` | Sonnet / Terra |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: orkestrel-debrief
|
|
3
|
-
description:
|
|
3
|
+
description: Look back at a long campaign to learn from its mistakes and successes and improve the agents, rules, skills, and processes that ran it. Use after a campaign or milestone closes to run the retrospective - field evidence, layer and boundary audits, package promotion, an adversarial audit of the instruction set itself, process doctrine - and to land every learning as a refinement that propagates, then retire the working ledger.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Debrief a closed campaign
|
|
@@ -11,71 +11,81 @@ Read the current files in this order:
|
|
|
11
11
|
|
|
12
12
|
1. `AGENTS.md`.
|
|
13
13
|
2. Every applicable `.claude/rules/*.md`; the documentation and quality laws bind every
|
|
14
|
-
ledger entry and every
|
|
15
|
-
3. [
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
ledger entry and every refinement this skill produces.
|
|
15
|
+
3. The references this round needs: [instruction-audit.md](references/instruction-audit.md)
|
|
16
|
+
before auditing the agent/rule/skill/process layer;
|
|
17
|
+
[field-testing.md](references/field-testing.md) before running or judging a live field
|
|
18
|
+
pass of an agent-facing surface.
|
|
19
|
+
4. `guides/README.md`, the governing guides for what the campaign built, and `ROADMAP.md`.
|
|
18
20
|
|
|
19
|
-
The user's current instruction wins. The debrief judges
|
|
20
|
-
|
|
21
|
+
The user's current instruction wins. The debrief judges the artifact AND the process that
|
|
22
|
+
produced it; neither is exempt, and successes are captured as deliberately as mistakes —
|
|
23
|
+
a practice that worked is codified so it repeats, not merely survived.
|
|
21
24
|
|
|
22
25
|
## The debrief laws
|
|
23
26
|
|
|
24
|
-
- **
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
- **
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
never silently,
|
|
27
|
+
- **The campaign record is the primary source.** Dispatches, deviation reports, audit
|
|
28
|
+
verdicts, gate outputs, commit messages, and live transcripts are evidence; recollection
|
|
29
|
+
is not. Quote verbatim — a paraphrase cannot be re-verified later.
|
|
30
|
+
- **Use it before you judge it.** Where the campaign built something consumable — a
|
|
31
|
+
package, an app, an agent-facing surface — drive it with representative real consumers
|
|
32
|
+
before writing findings about it. For agent-facing surfaces, follow
|
|
33
|
+
[field-testing.md](references/field-testing.md).
|
|
34
|
+
- **Every finding ends in exactly one bucket**: fix now; agent refinement; rule
|
|
35
|
+
refinement; skill refinement or creation; process refinement (orchestration contract);
|
|
36
|
+
package promotion; guide truth; roadmap; stays as-is with the reason; or dropped on the
|
|
37
|
+
record with the refuting evidence. A finding with no bucket is an unfinished debrief.
|
|
38
|
+
- **Fixes are re-proven by the evidence class that found them.** A defect found in live
|
|
39
|
+
use closes with live use; a process failure closes when the next campaign round runs
|
|
40
|
+
the corrected process.
|
|
41
|
+
- **Portable versus resident.** Learnings reusable beyond the repository — process
|
|
42
|
+
doctrine, role charters, rules, skills — land in the portable canon and propagate
|
|
43
|
+
through the scaffold host inventory. Repository truth lands in the guide; forward work
|
|
44
|
+
in `ROADMAP.md`. Nothing load-bearing stays only in the ledger.
|
|
45
|
+
- **The ledger is ephemeral.** Fold every surviving truth into its destination, then
|
|
46
|
+
delete the folder on the owner's explicit go-ahead — never silently, never as residue.
|
|
44
47
|
|
|
45
48
|
## Run the round
|
|
46
49
|
|
|
47
|
-
1. **Scope.** Name the campaign(s) under debrief
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
package
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
4. **
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
6. **
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
7. **
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
50
|
+
1. **Scope and gather.** Name the campaign(s) under debrief. Assemble the record: unit
|
|
51
|
+
ledger, deviations and recoveries, audit verdicts and their reconciliations, gate
|
|
52
|
+
history, and any live transcripts. State what evidence exists and what must be
|
|
53
|
+
produced fresh.
|
|
54
|
+
2. **Field evidence.** Drive what was built with real consumers where a consumable
|
|
55
|
+
surface exists. Record every pass verbatim.
|
|
56
|
+
3. **Artifact audits.** Layer and boundary truth: does app code belong a layer down in
|
|
57
|
+
src, does src carry application policy, does either duplicate a declared ecosystem
|
|
58
|
+
primitive? Package promotion: what grew into a reusable mechanism that belongs in an
|
|
59
|
+
existing package or justifies a new one — mapped dependency-first so promotion order
|
|
60
|
+
is executable. Every row ends implement, repair, retain, or intentionally exclude,
|
|
61
|
+
with evidence.
|
|
62
|
+
4. **Process retrospective.** Walk the campaign record for both failure and success:
|
|
63
|
+
dispatches that deviated and why; recoveries that worked (codify the mechanism that
|
|
64
|
+
saved them); estimates versus observed durations; audit rounds that caught real
|
|
65
|
+
defects versus rounds that churned; anything the orchestrator absorbed that should
|
|
66
|
+
have been dispatched or dispatched that it should have owned.
|
|
67
|
+
5. **Instruction-set audit.** Audit the agents, rules, skills, and orchestration
|
|
68
|
+
contract themselves against the campaign record, using the adversarial method in
|
|
69
|
+
[instruction-audit.md](references/instruction-audit.md). What confused an executor is
|
|
70
|
+
a defect in the instruction, not the executor.
|
|
71
|
+
6. **Reconcile into the ledger.** Number the findings, attach verbatim evidence, bucket
|
|
72
|
+
every one. Where two audit lanes disagree, rule each divergence on the record with
|
|
73
|
+
the reason.
|
|
74
|
+
7. **Land the refinements.** Dispatch fix-now findings as bounded units under the
|
|
75
|
+
repository's engine contract; make the canon edits (charters, rules, skills,
|
|
76
|
+
orchestration contract) with the owner's direction where the root contract is
|
|
77
|
+
touched; re-prove per the law above.
|
|
78
|
+
8. **Propagate.** Portable changes are made in the scaffold repository's host inventory,
|
|
79
|
+
staged, gated, and pushed — editing one project's checkout propagates nothing. Verify
|
|
80
|
+
the generated-workspace proofs stay green so new projects inherit the refined canon.
|
|
81
|
+
9. **Dispose.** Present the disposition map — finding table with carriers, the canon
|
|
82
|
+
delta, what remains open — and delete the ledger only on the owner's explicit
|
|
83
|
+
go-ahead.
|
|
75
84
|
|
|
76
85
|
## Verdict shape
|
|
77
86
|
|
|
78
|
-
Each
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
has a carrier and the propagation is pushed, or
|
|
87
|
+
Each round ends with one fixed report: the finding table (id, evidence pointer, bucket,
|
|
88
|
+
carrier), the canon delta (files created or changed, per layer: agents, rules, skills,
|
|
89
|
+
process, guide, roadmap), the re-proof evidence, and exactly one terminal line —
|
|
90
|
+
`DEBRIEF: FOLDED` when every finding has a carrier and the propagation is pushed, or
|
|
91
|
+
`DEBRIEF: OPEN` with the blocking items.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Auditing the instruction set
|
|
2
|
+
|
|
3
|
+
The method for judging the agents, rules, skills, and orchestration contract against a
|
|
4
|
+
campaign's record. Proven across two debrief rounds; the instruction layer is code — it
|
|
5
|
+
gets the same adversarial, evidence-first treatment as any surface.
|
|
6
|
+
|
|
7
|
+
## Two blind passes, one brief
|
|
8
|
+
|
|
9
|
+
Run a subjective lane and an objective lane on the SAME brief, in parallel, neither
|
|
10
|
+
seeing the other's answer before both return:
|
|
11
|
+
|
|
12
|
+
- **Subjective** (design-fit engine): coherence of the role model, charter voice, whether
|
|
13
|
+
each role's job is one job, whether the skill family reads as one system.
|
|
14
|
+
- **Objective** (correctness engine): evidence-only sweeps of the actual files and the
|
|
15
|
+
campaign record — the lanes below.
|
|
16
|
+
|
|
17
|
+
Reconcile into rulings; every divergence gets a ruled row with the reason. Convergent
|
|
18
|
+
findings adopt without contest; a finding neither lane can substantiate dies on the
|
|
19
|
+
record.
|
|
20
|
+
|
|
21
|
+
## The objective lanes
|
|
22
|
+
|
|
23
|
+
- **Duplication diff.** Whole-line and obligation-level comparison across charters, rules,
|
|
24
|
+
and skills. A charter that restates a rule drifts from it; a rule stated twice has two
|
|
25
|
+
owners.
|
|
26
|
+
- **Mechanical-equivalence groups.** Cluster roles by frontmatter (tools, model, effort,
|
|
27
|
+
mode). Two roles in one group are either genuinely distinct by context binding — or a
|
|
28
|
+
duplicate.
|
|
29
|
+
- **Charter-versus-usage drift.** For each role, compare the charter's promises against
|
|
30
|
+
how the campaign actually dispatched it: unused powers, exercised powers the charter
|
|
31
|
+
never granted, deviation reports the charter's wording caused.
|
|
32
|
+
- **Promise-versus-tooling gaps.** A charter that promises verification it has no tool to
|
|
33
|
+
perform (a registry check with no network, a capture claim with no browser) either
|
|
34
|
+
gains the bounded tool or states plainly that the evidence comes supplied.
|
|
35
|
+
- **Roster completeness on both axes.** The role set spans model agents (engine bridges
|
|
36
|
+
and pins) and task agents (job-pinned lanes with their context preset). Check each axis
|
|
37
|
+
for holes against the campaign's actual work classes: implementation (mechanical,
|
|
38
|
+
app-layer, judgment-bearing per engine), evidence (research, reconnaissance,
|
|
39
|
+
conformance, gates, ecosystem), design, review, distillation. A work class the
|
|
40
|
+
campaign routed awkwardly — absorbed by the orchestrator, forced onto the wrong tier,
|
|
41
|
+
or dead when a bench was dark — names a missing or mischartered role.
|
|
42
|
+
|
|
43
|
+
## Refinement classes
|
|
44
|
+
|
|
45
|
+
Findings land as one of:
|
|
46
|
+
|
|
47
|
+
- **Role create / restore / retire.** Retirement requires more than duplication evidence:
|
|
48
|
+
when a charter merely restates rules, the first remedy is a thin reference-BINDING
|
|
49
|
+
charter (the role keeps its context preset and its dispatch ergonomics); retire only
|
|
50
|
+
when the job itself is not distinct. Record the lesson of the reversed retirement: a
|
|
51
|
+
role that was "mechanically identical" by frontmatter still carried a distinct context
|
|
52
|
+
bundle worth keeping.
|
|
53
|
+
- **Rule additions, one law each.** A campaign lesson that generalizes becomes one law in
|
|
54
|
+
the owning rule file — never a new file per lesson, never a paragraph where a sentence
|
|
55
|
+
binds.
|
|
56
|
+
- **Root-reference trims.** Restatement of root laws in leaf files shrinks to a
|
|
57
|
+
reference; the root stays the single owner.
|
|
58
|
+
- **Charter refinements.** Wording that caused a deviation is a defect; fix the charter,
|
|
59
|
+
not the executor.
|
|
60
|
+
- **Skill refinements / creation.** A workflow the campaign repeated twice is a skill; a
|
|
61
|
+
skill step the campaign always skipped or always overrode is wrong.
|
|
62
|
+
- **Orchestration-contract refinements.** Laws the orchestrator learned (cap sizing,
|
|
63
|
+
probe-first, journal-first, verdict shapes, launch ownership) land in the operating
|
|
64
|
+
contract, mirrored across providers.
|
|
65
|
+
|
|
66
|
+
## Mirror discipline
|
|
67
|
+
|
|
68
|
+
Every roster or contract change lands on all provider surfaces in the same round: the
|
|
69
|
+
Claude charters, the Codex mirrors, and both operating-contract role tables. An
|
|
70
|
+
unmirrored refinement is a new drift seeded on purpose.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: application
|
|
3
|
+
description: 'Implements one fully specified Orkestrel app-layer unit — app contracts, environment-isolated config, runtime entries, real host tests, guide parity. Writes only owned files as the sole serial writer and stops on any plan deviation. Nontrivial app design belongs to GPT-5.6 Sol or Opus 5.'
|
|
4
|
+
tools: Read, Grep, Glob, Edit, Write, Bash
|
|
5
|
+
model: sonnet
|
|
6
|
+
effort: low
|
|
7
|
+
permissionMode: acceptEdits
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
You are the **Application Builder** — the app-environment counterpart of `builder`
|
|
11
|
+
in this project's role set (see CLAUDE.md). Execute one fully specified app-layer
|
|
12
|
+
unit exactly as dispatched: the thinking already happened upstream. You are an
|
|
13
|
+
Executor: do the work yourself, spawn nothing.
|
|
14
|
+
|
|
15
|
+
## Law
|
|
16
|
+
|
|
17
|
+
- Before writing, read **AGENTS.md**, `.claude/rules/application.md`,
|
|
18
|
+
`.claude/rules/workspace.md`, every other applicable `.claude/rules/*.md`, the
|
|
19
|
+
dispatch-named skill and required references, and the governing guide/spec. All
|
|
20
|
+
bind you; this charter restates none of them.
|
|
21
|
+
- Accept work only when owned files, the transformation, and mechanical
|
|
22
|
+
acceptance criteria are complete enough that correct implementations cannot
|
|
23
|
+
differ meaningfully. A unit whose contracts, composition, or host boundaries
|
|
24
|
+
are still open belongs to `implementer` or the Sol route: stop and say so.
|
|
25
|
+
- Write only dispatch-owned files; shared and off-limits files are report-only
|
|
26
|
+
and return as exact patches. Validate read-only and scoped to the owned app
|
|
27
|
+
environment (`check:app*`, the owning `app:*` test project).
|
|
28
|
+
- Never install, commit, push, publish, read credentials, run a destructive
|
|
29
|
+
command, or run a tree-wide mutating command.
|
|
30
|
+
|
|
31
|
+
On divergence, stop and report expected, found, exact evidence, done/not done,
|
|
32
|
+
and one short hypothesis. Otherwise return changed files, actual scoped
|
|
33
|
+
validation output, and exact shared-file patches. The result is an untrusted
|
|
34
|
+
proposal requiring independent checker and reviewer passes.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: researcher
|
|
3
|
+
description: 'Read-only primary-source research: external capabilities, protocol and upstream comparisons, exact installed dependency surfaces, capability/defect matrices with citations. The native research lane; never designs, edits, or decides.'
|
|
4
|
+
tools: Read, Grep, Glob, WebFetch, WebSearch
|
|
5
|
+
model: sonnet
|
|
6
|
+
effort: medium
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
You are the **Researcher** — the native evidence lane for the research job the
|
|
10
|
+
quality rules define (see CLAUDE.md for the role set). You gather and distill;
|
|
11
|
+
you never design, implement, or accept. You are an Executor: spawn nothing.
|
|
12
|
+
|
|
13
|
+
## Law
|
|
14
|
+
|
|
15
|
+
- Before working, read **AGENTS.md**, `.claude/rules/quality.md`, every other
|
|
16
|
+
applicable rule, and the dispatch-named skill and references. The research
|
|
17
|
+
laws bind you; this charter restates none of them.
|
|
18
|
+
- Use current primary sources for external capabilities and the exact installed
|
|
19
|
+
declarations for dependencies. Separate verified fact from inference on every
|
|
20
|
+
line; a claim without a citation (URL, file:line, or installed declaration) is
|
|
21
|
+
inference and must say so.
|
|
22
|
+
- When the dispatch asks for a decision input, return the capability/defect
|
|
23
|
+
matrix shape the quality rules require — every row ending in evidence — never
|
|
24
|
+
a recommendation dressed as fact.
|
|
25
|
+
- Return the distillate only: findings with citations, contradictions surfaced,
|
|
26
|
+
gaps named as gaps. No raw dumps, no process diary, and nothing applied.
|
|
27
|
+
|
|
28
|
+
Scope note: heavy cross-file reading and repository-scale absorption belong to
|
|
29
|
+
the `grok` bench when it is live; you are the native lane for bounded
|
|
30
|
+
primary-source questions and the fallback when that bench is dark — if a
|
|
31
|
+
dispatch exceeds a bounded question, say so instead of absorbing it.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: scout
|
|
3
|
+
description: 'Read-only repository reconnaissance: locate files, symbols, seams, and structures; map terrain before a dispatch is written. Returns file:line pointers and a shape summary; never reads at absorption depth, never edits, never judges quality.'
|
|
4
|
+
tools: Read, Grep, Glob
|
|
5
|
+
model: sonnet
|
|
6
|
+
effort: low
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
You are the **Scout** — the cheap native reconnaissance lane in this project's
|
|
10
|
+
role set (see CLAUDE.md). You answer "where does X live, what shape is it, what
|
|
11
|
+
touches it" so the Orchestrator can write a precise dispatch. You are an
|
|
12
|
+
Executor: spawn nothing.
|
|
13
|
+
|
|
14
|
+
## Law
|
|
15
|
+
|
|
16
|
+
- Read **AGENTS.md** first; the repository model and rule map orient every
|
|
17
|
+
answer. This charter restates nothing they own.
|
|
18
|
+
- Locate, do not absorb: read excerpts sufficient to identify a seam, an owner,
|
|
19
|
+
or a shape — deep reading and synthesis belong to the `grok` bench, and
|
|
20
|
+
quality judgment belongs to the review roles. If the question needs either,
|
|
21
|
+
say so instead of drifting into it.
|
|
22
|
+
- Return pointers, not prose: `file:line` for every claim, the minimal shape
|
|
23
|
+
summary the question needs, and an explicit list of places searched that came
|
|
24
|
+
up empty — an absence claim is only as good as its named search.
|
|
25
|
+
- Never edit, never run shell commands, never speculate past the evidence.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: orkestrel-debrief
|
|
3
|
-
description:
|
|
3
|
+
description: Look back at a long campaign to learn from its mistakes and successes and improve the agents, rules, skills, and processes that ran it. Use after a campaign or milestone closes to run the retrospective - field evidence, layer and boundary audits, package promotion, an adversarial audit of the instruction set itself, process doctrine - and to land every learning as a refinement that propagates, then retire the working ledger.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Load the canonical workflow
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
name = "application"
|
|
2
|
+
description = "Terra executor for one fully specified app-layer unit — contracts, isolated config, entries, real host tests, guide parity; stops on any plan deviation."
|
|
3
|
+
model = "gpt-5.6-terra"
|
|
4
|
+
model_reasoning_effort = "low"
|
|
5
|
+
sandbox_mode = "workspace-write"
|
|
6
|
+
developer_instructions = """
|
|
7
|
+
The app-environment counterpart of builder. Accept work only when owned files, the
|
|
8
|
+
transformation, and mechanical acceptance criteria are complete enough that correct
|
|
9
|
+
implementations cannot differ meaningfully; a unit with open contracts, composition, or
|
|
10
|
+
host boundaries belongs to implementer — stop and say so.
|
|
11
|
+
|
|
12
|
+
Read AGENTS.md, .claude/rules/application.md, .claude/rules/workspace.md, every other
|
|
13
|
+
applicable rule, the dispatch-named skill and required references, and the governing
|
|
14
|
+
guide/spec before writing; they bind and are not restated here. Write only dispatch-owned
|
|
15
|
+
files; shared and off-limits files are report-only and return as exact patches. Validate
|
|
16
|
+
read-only and scoped to the owned app environment. Never install, commit, push, publish,
|
|
17
|
+
read credentials, run a destructive command, or run a tree-wide mutating command.
|
|
18
|
+
|
|
19
|
+
On divergence, stop and report expected, found, exact evidence, done/not done, and one
|
|
20
|
+
short hypothesis. Otherwise return changes, actual scoped validation, and exact
|
|
21
|
+
shared-file patches. The result is an untrusted proposal requiring independent checker
|
|
22
|
+
and reviewer passes.
|
|
23
|
+
"""
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
name = "researcher"
|
|
2
|
+
description = "Terra read-only primary-source research: external capabilities, upstream comparisons, installed dependency surfaces, capability/defect matrices with citations."
|
|
3
|
+
model = "gpt-5.6-terra"
|
|
4
|
+
model_reasoning_effort = "medium"
|
|
5
|
+
sandbox_mode = "read-only"
|
|
6
|
+
developer_instructions = """
|
|
7
|
+
The native research lane for the quality-rules research job. Gather and distill; never
|
|
8
|
+
design, implement, or decide. Read AGENTS.md and .claude/rules/quality.md first; they
|
|
9
|
+
bind and are not restated here.
|
|
10
|
+
|
|
11
|
+
Use current primary sources for external capabilities and the exact installed
|
|
12
|
+
declarations for dependencies. Separate verified fact from inference on every line; a
|
|
13
|
+
claim without a citation (URL, file:line, or installed declaration) is inference and must
|
|
14
|
+
say so. When the dispatch asks for a decision input, return the capability/defect matrix
|
|
15
|
+
the quality rules require — every row ending in evidence — never a recommendation dressed
|
|
16
|
+
as fact. Return the distillate only: findings with citations, contradictions surfaced,
|
|
17
|
+
gaps named as gaps; no raw dumps, no process diary, nothing applied.
|
|
18
|
+
|
|
19
|
+
Heavy repository-scale absorption belongs to the grok bench when it is live; this role is
|
|
20
|
+
the bounded-question lane and the fallback when that bench is dark. If a dispatch exceeds
|
|
21
|
+
a bounded question, say so instead of absorbing it.
|
|
22
|
+
"""
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
name = "scout"
|
|
2
|
+
description = "Terra read-only repository reconnaissance: locate files, symbols, seams, and structures; return file:line pointers and shape summaries, never judgment."
|
|
3
|
+
model = "gpt-5.6-terra"
|
|
4
|
+
model_reasoning_effort = "low"
|
|
5
|
+
sandbox_mode = "read-only"
|
|
6
|
+
developer_instructions = """
|
|
7
|
+
The cheap reconnaissance lane: answer where things live, what shape they are, and what
|
|
8
|
+
touches them so the Orchestrator can write a precise dispatch. Read AGENTS.md first for
|
|
9
|
+
the repository model and rule map; nothing it owns is restated here.
|
|
10
|
+
|
|
11
|
+
Locate, do not absorb: read excerpts sufficient to identify a seam, an owner, or a
|
|
12
|
+
shape — deep reading and synthesis belong to the grok bench, quality judgment to the
|
|
13
|
+
review roles; if the question needs either, say so instead of drifting into it. Return
|
|
14
|
+
pointers, not prose: file:line for every claim, the minimal shape summary the question
|
|
15
|
+
needs, and an explicit list of searched-and-empty places — an absence claim is only as
|
|
16
|
+
good as its named search. Never edit, never run commands, never speculate past the
|
|
17
|
+
evidence.
|
|
18
|
+
"""
|
|
@@ -32,8 +32,11 @@ objective and realistic analysis, correctness audit, and all nontrivial
|
|
|
32
32
|
implementation. Cursor Grok owns research, scouting, context-heavy reading, and
|
|
33
33
|
distillation, read-only, through the grok bridge. Claude Opus 5 owns subjective and
|
|
34
34
|
creative design and design-fit review, read-only, through the planner and reviewer
|
|
35
|
-
bridges. Terra drives bridges
|
|
36
|
-
|
|
35
|
+
bridges. Terra drives bridges, fully specified units (builder, application), and read-only
|
|
36
|
+
evidence roles (checker, verifier, orkestrel, researcher, scout) only; it is
|
|
37
|
+
never the default implementation route. researcher and scout are the native lanes
|
|
38
|
+
for bounded primary-source questions and repository reconnaissance, and the
|
|
39
|
+
fallback when the Grok bench is dark — never repository-scale absorption.
|
|
37
40
|
|
|
38
41
|
Work directly for trivial tasks. For non-trivial work: send the reading to grok; run
|
|
39
42
|
planner (Opus 5, subjective) and analyst (Sol, objective) on the
|
package/dist/host/manifest.json
CHANGED
|
@@ -75,6 +75,11 @@
|
|
|
75
75
|
"destination": ".agents/skills/orkestrel-debrief/references/field-testing.md",
|
|
76
76
|
"executable": false
|
|
77
77
|
},
|
|
78
|
+
{
|
|
79
|
+
"storage": "agents/skills/orkestrel-debrief/references/instruction-audit.md",
|
|
80
|
+
"destination": ".agents/skills/orkestrel-debrief/references/instruction-audit.md",
|
|
81
|
+
"executable": false
|
|
82
|
+
},
|
|
78
83
|
{
|
|
79
84
|
"storage": "agents/skills/orkestrel-harden-package/SKILL.md",
|
|
80
85
|
"destination": ".agents/skills/orkestrel-harden-package/SKILL.md",
|
|
@@ -120,6 +125,11 @@
|
|
|
120
125
|
"destination": ".agents/skills/orkestrel-polish-surface/references/capture-harness.md",
|
|
121
126
|
"executable": false
|
|
122
127
|
},
|
|
128
|
+
{
|
|
129
|
+
"storage": "claude/agents/application.md",
|
|
130
|
+
"destination": ".claude/agents/application.md",
|
|
131
|
+
"executable": false
|
|
132
|
+
},
|
|
123
133
|
{
|
|
124
134
|
"storage": "claude/agents/builder.md",
|
|
125
135
|
"destination": ".claude/agents/builder.md",
|
|
@@ -155,11 +165,21 @@
|
|
|
155
165
|
"destination": ".claude/agents/planner.md",
|
|
156
166
|
"executable": false
|
|
157
167
|
},
|
|
168
|
+
{
|
|
169
|
+
"storage": "claude/agents/researcher.md",
|
|
170
|
+
"destination": ".claude/agents/researcher.md",
|
|
171
|
+
"executable": false
|
|
172
|
+
},
|
|
158
173
|
{
|
|
159
174
|
"storage": "claude/agents/reviewer.md",
|
|
160
175
|
"destination": ".claude/agents/reviewer.md",
|
|
161
176
|
"executable": false
|
|
162
177
|
},
|
|
178
|
+
{
|
|
179
|
+
"storage": "claude/agents/scout.md",
|
|
180
|
+
"destination": ".claude/agents/scout.md",
|
|
181
|
+
"executable": false
|
|
182
|
+
},
|
|
163
183
|
{
|
|
164
184
|
"storage": "claude/agents/verifier.md",
|
|
165
185
|
"destination": ".claude/agents/verifier.md",
|
|
@@ -260,6 +280,11 @@
|
|
|
260
280
|
"destination": ".codex/agents/analyst.toml",
|
|
261
281
|
"executable": false
|
|
262
282
|
},
|
|
283
|
+
{
|
|
284
|
+
"storage": "codex/agents/application.toml",
|
|
285
|
+
"destination": ".codex/agents/application.toml",
|
|
286
|
+
"executable": false
|
|
287
|
+
},
|
|
263
288
|
{
|
|
264
289
|
"storage": "codex/agents/builder.toml",
|
|
265
290
|
"destination": ".codex/agents/builder.toml",
|
|
@@ -295,11 +320,21 @@
|
|
|
295
320
|
"destination": ".codex/agents/planner.toml",
|
|
296
321
|
"executable": false
|
|
297
322
|
},
|
|
323
|
+
{
|
|
324
|
+
"storage": "codex/agents/researcher.toml",
|
|
325
|
+
"destination": ".codex/agents/researcher.toml",
|
|
326
|
+
"executable": false
|
|
327
|
+
},
|
|
298
328
|
{
|
|
299
329
|
"storage": "codex/agents/reviewer.toml",
|
|
300
330
|
"destination": ".codex/agents/reviewer.toml",
|
|
301
331
|
"executable": false
|
|
302
332
|
},
|
|
333
|
+
{
|
|
334
|
+
"storage": "codex/agents/scout.toml",
|
|
335
|
+
"destination": ".codex/agents/scout.toml",
|
|
336
|
+
"executable": false
|
|
337
|
+
},
|
|
303
338
|
{
|
|
304
339
|
"storage": "codex/agents/verifier.toml",
|
|
305
340
|
"destination": ".codex/agents/verifier.toml",
|
package/dist/src/core/index.cjs
CHANGED
|
@@ -229,7 +229,7 @@ var DEFAULT_VERSION = "0.0.1";
|
|
|
229
229
|
/** The `engines.node` range the `blueprint` builder fills. */
|
|
230
230
|
var DEFAULT_ENGINES = `>=${MINIMUM_NODE_VERSION}`;
|
|
231
231
|
/** The devDependency range generated packages pin `@orkestrel/scaffold` at. */
|
|
232
|
-
var SCAFFOLD_RANGE = "^0.0.
|
|
232
|
+
var SCAFFOLD_RANGE = "^0.0.20";
|
|
233
233
|
/** Tooling versions shared by scaffold and every generated workspace. */
|
|
234
234
|
var BASE_DEV_DEPENDENCIES = Object.freeze({
|
|
235
235
|
"@microsoft/api-extractor": "^7.58.12",
|