@maestria/prime-agent 0.3.4 → 0.3.5

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/INSTALL.md CHANGED
@@ -1,42 +1,46 @@
1
1
  # Installing @maestria/prime-agent
2
2
 
3
- > Status: `Native candidate` - Skills-first delivery plus a verified executable extension subset. The generated skills match the documented Prime Agent Agent Skills contract and the extension (`dist/extension.mjs`) is verified against the pinned Prime fork's public extension API (verified 2026-08-13 against upstream commit `7787f07415d843b9a800f6a4720e0c739bd608e5`), but runtime behavior is **not yet tested end to end** in a live Prime session. Native recursive-subagent (`rlm`) dispatch and JSON/RPC headless-mode integration are deferred and are not part of this package.
3
+ > Status: `Native candidate`. Skills and the executable extension were verified against Prime's documented contracts on 2026-08-13, using upstream commit `7787f07415d843b9a800f6a4720e0c739bd608e5`. Live-session behavior is **not yet tested end to end**. Native recursive-subagent (`rlm`) dispatch and JSON/RPC headless-mode integration are deferred.
4
4
 
5
5
  ## Prerequisites
6
6
 
7
7
  - **Prime Agent** installed (see Prime's [getting started](https://github.com/PrimeIntellect-ai/prime-agent)).
8
8
  - Node.js and pnpm only if contributing to this repository (to regenerate files from the canonical core directives). Prime installs registered packages itself via npm; pnpm is not required to consume this package.
9
9
 
10
- ## What gets installed
10
+ ## Install
11
11
 
12
- When Prime loads this package it discovers two resource types from the `pi` manifest key in `package.json`:
12
+ Choose a setup based on what you want to load:
13
13
 
14
- - **Skills** (`pi.skills: ["./skills"]`): the 14 Agent Skills (`skills/<name>/SKILL.md`).
15
- - **Extension** (`pi.extensions: ["./dist/extension.mjs"]`): a compiled Prime/Pi extension that registers the workflow-mode slash commands (`/fein`, `/sonar`, `/blitz`, `/mode-clear`, `/maestria-status`) and injects the active mode's prompt on every agent turn. It covers only this verified subset - there is no recursive-subagent (`rlm`) dispatch and no JSON/RPC headless mode.
14
+ | Setup | Skills | Workflow-command extension |
15
+ | --- | --- | --- |
16
+ | [Register the package](#option-a-register-the-package-with-prime-preferred) | Yes | Automatic for the published npm package |
17
+ | [Add a settings entry](#option-b-explicit-skills-entry-in-settings-skills-only) | Yes | Requires a separate `extensions` entry |
18
+ | [Copy or symlink skills](#option-c-copy-or-symlink-into-a-skill-directory-skills-only) | Yes | Requires a separate `extensions` entry |
16
19
 
17
- The extension has **no runtime dependencies**: it consumes the Prime/Pi extension API exclusively through the `pi` object Prime passes to the extension factory, with type-only local declarations (`src/pi-api.ts` mirroring the pinned fork). Prime bundles the pi packages into its runtime (see Prime's `docs/packages.md`), so nothing extra is installed.
20
+ Prime discovers skills through project/global skill directories, registered package `skills/` directories or `pi.skills` entries, and the `skills` settings array. A dependency install (`pnpm add @maestria/prime-agent` or `npm install`) alone does not activate the package: Prime does not scan arbitrary packages in `node_modules`.
18
21
 
19
- ## Install
22
+ ### Option A: register the package with Prime (preferred)
20
23
 
21
- Prime Agent loads skills from project/global skill directories, package `skills/` directories or `pi.skills` entries, and the `skills` array in settings. It does **not** auto-discover arbitrary installed npm packages from `node_modules`. To make Prime load this package's skills **and extension**, register the package with Prime (Option A) or point Prime at the package's `skills/` directory explicitly (Options B and C - extension requires Option A or a manual `extensions` setting entry pointing at a built `dist/extension.mjs`, see below).
24
+ Register the published package to load both skills and the extension:
22
25
 
23
- ### Option A: register the package with Prime (preferred, required for the extension)
26
+ ```bash
27
+ prime-agent package install npm:@maestria/prime-agent
28
+ ```
24
29
 
25
- Register the published package with Prime's package mechanism. This records the package in Prime's settings and installs it via npm:
30
+ Prime installs it via npm and records it in global settings (`~/.prime/agent/settings.json`). Add `--local` to use project settings (`.prime/agent/settings.json`), which Prime installs automatically at startup.
31
+
32
+ The published package includes the compiled `dist/extension.mjs` and its sourcemap. Prime discovers both resources through the package's `pi.skills` and `pi.extensions` entries.
33
+
34
+ #### Installing from source
35
+
36
+ Git and local installs are skills-only until the package is built. Prime's git installer runs `npm install`, often without dev dependencies, but does not build the extension. Build from the repository root, then register the built package:
26
37
 
27
38
  ```bash
28
- prime-agent package install npm:@maestria/prime-agent
39
+ pnpm --filter @maestria/prime-agent build # creates packages/prime-agent/dist/extension.mjs
40
+ prime-agent package install local:/path/to/maestria/packages/prime-agent
29
41
  ```
30
42
 
31
- - By default the package is recorded in global settings (`~/.prime/agent/settings.json`); add `--local` to record it in project settings (`.prime/agent/settings.json`), which Prime installs automatically at startup.
32
- - Prime then reads the package's `pi.extensions` and `pi.skills` manifest entries to discover the extension and the skills. Option A is the only documented install path that enables the extension automatically.
33
- - **The npm package route ships the compiled extension**: `dist/extension.mjs` (and its sourcemap) is built before publishing, so the tarball always contains it and Option A via `npm:@maestria/prime-agent` enables both skills and the extension.
34
- - `prime-agent package install` also accepts git sources and local paths, so you can consume this package before it is published. **Git/local source installs are skills-only unless the package has been built.** Prime's git installs clone the repository and run `npm install` (frequently with dev dependencies omitted) but do **not** build, so `dist/extension.mjs` is absent and the extension is silently skipped. To get the extension from a source install, build the package first and point Prime at that built package directory:
35
- ```bash
36
- pnpm --filter @maestria/prime-agent build # creates packages/prime-agent/dist/extension.mjs
37
- prime-agent package install local:/path/to/maestria/packages/prime-agent
38
- ```
39
- - **Installing the monorepo root Git URL (`https://github.com/agustinusnathaniel/maestria.git`) does not target this workspace package**: it clones the monorepo root, whose `package.json` has no `pi` manifest, so Prime discovers no skills or extension from it. Use a packaged release (`npm:@maestria/prime-agent`) or a local built package directory instead. See Prime's [packages documentation](https://github.com/PrimeIntellect-ai/prime-agent/blob/7787f07415d843b9a800f6a4720e0c739bd608e5/packages/coding-agent/docs/packages.md) for the full source syntax.
43
+ Do not install the monorepo root Git URL (`https://github.com/agustinusnathaniel/maestria.git`): its `package.json` has no `pi` manifest, so Prime discovers neither skills nor the extension. Use the npm release or a built local package directory. See Prime's [packages documentation](https://github.com/PrimeIntellect-ai/prime-agent/blob/7787f07415d843b9a800f6a4720e0c739bd608e5/packages/coding-agent/docs/packages.md) for source syntax.
40
44
 
41
45
  ### Option B: explicit `skills` entry in settings (skills only)
42
46
 
@@ -48,7 +52,7 @@ Add the package's skills directory to Prime's settings (`~/.prime/agent/settings
48
52
  }
49
53
  ```
50
54
 
51
- This is the explicitly documented settings mechanism ([skills docs](https://github.com/PrimeIntellect-ai/prime-agent/blob/7787f07415d843b9a800f6a4720e0c739bd608e5/packages/coding-agent/docs/skills.md)) and works with a local clone too:
55
+ The same [settings mechanism](https://github.com/PrimeIntellect-ai/prime-agent/blob/7787f07415d843b9a800f6a4720e0c739bd608e5/packages/coding-agent/docs/skills.md) works with a local clone:
52
56
 
53
57
  ```json
54
58
  {
@@ -75,13 +79,7 @@ If you installed via Option B or C and want the extension too, point the `extens
75
79
  }
76
80
  ```
77
81
 
78
- **The artifact must exist at the configured path.** The npm package tarball includes `dist/extension.mjs` (built before publishing), so the `node_modules` path above works for npm installs. For a source clone the compiled file only exists after building the package (`pnpm --filter @maestria/prime-agent build`); a git install without a build has no `dist/extension.mjs`, and Prime silently skips a missing extension file - the `/fein`-family commands and mode prompt injection will simply not be registered.
79
-
80
- (Equivalent to what Option A's package registration configures automatically; the settings `extensions` array is Prime's documented per-user extension list.)
81
-
82
- ### Dependency installs are setup only
83
-
84
- `pnpm add @maestria/prime-agent` (or `npm install`) makes the package available to your own tooling, but Prime does not scan `node_modules`; a dependency install alone does not make Prime discover the package. Use Option A to register the package, or Option B/C to point Prime at its `skills/` directory.
82
+ The configured file must exist. The npm release includes it; for a checkout, [build the package first](#installing-from-source). Prime silently skips a missing extension, leaving workflow commands and mode prompt injection unavailable. The `extensions` array is Prime's per-user extension setting; package registration configures this automatically.
85
83
 
86
84
  ## Verification
87
85
 
@@ -90,15 +88,32 @@ If you installed via Option B or C and want the extension too, point the `extens
90
88
  3. Confirm the skills appear (for example, run `/skill:orchestrator` or ask the agent to load the `global-rules` skill).
91
89
  4. Confirm the extension loaded: run `/maestria-status` - it should report the current mode (`none` initially) and the verified/deferred subset. Try `/fein`, `/sonar`, `/blitz` and `/mode-clear`; while a mode is active, the mode prompt is appended to the system prompt on each agent turn, and `/maestria-status` shows the active mode.
92
90
 
93
- > Steps 3-4 are runtime checks that are **not yet verified** in this batch; the package-level gates are `pnpm build` (the extension compiles to the declared `dist/extension.mjs`), `pnpm validate` (frontmatter/layout), and `pnpm test` (generated-skill, extension, package-manifest, and `npm pack --dry-run` tarball-content tests).
91
+ > Steps 3-4 remain **unverified in a live Prime session**. Package-level validation does not establish runtime support; see the contributor checks below.
94
92
 
95
93
  ## Security
96
94
 
97
- Prime Agent is **not a sandbox**: it executes model-generated Python and project commands with your user permissions. Review skill and extension content before use and restrict usage to trusted repositories, skills, and instructions. The extension performs **no tool interception** and writes no files (no `~/.pi`, no `.prime/agent` writes); mode state rides on host session entries. It does not provide and does not claim recursive-subagent (`rlm`) dispatch or JSON/RPC headless mode.
95
+ Prime Agent is **not a sandbox**: it executes model-generated Python and project commands with your user permissions. Review skill and extension content before use and restrict usage to trusted repositories, skills, and instructions. The extension performs **no tool interception** and writes no files (no `~/.pi`, no `.prime/agent` writes); mode state is stored in host session entries.
96
+
97
+ ## Package contents and contributor checks
98
+
99
+ The `pi` key in `package.json` declares:
100
+
101
+ - `pi.skills: ["./skills"]`: 14 Agent Skills at `skills/<name>/SKILL.md`.
102
+ - `pi.extensions: ["./dist/extension.mjs"]`: workflow commands (`/fein`, `/sonar`, `/blitz`, `/mode-clear`, `/maestria-status`) and active-mode prompt injection on each agent turn.
103
+
104
+ The extension has no runtime dependencies. It uses the `pi` object supplied by Prime, with local type-only declarations in `src/pi-api.ts` matching the pinned fork. Prime bundles the Pi packages into its runtime, so no extra Pi package is installed.
105
+
106
+ Run these checks from `packages/prime-agent/`:
107
+
108
+ | Command | Checks |
109
+ | --- | --- |
110
+ | `pnpm build` | Compiles the declared `dist/extension.mjs` |
111
+ | `pnpm validate` | Skill frontmatter and layout |
112
+ | `pnpm test` | Generated skills, extension, manifest, and `npm pack --dry-run` tarball contents |
98
113
 
99
- ## Updating generated content
114
+ ### Updating generated content
100
115
 
101
- Do not edit `skills/` by hand - it is generated from `packages/core/agent-directives/`. After changing canonical content:
116
+ Do not edit `skills/` by hand - it is generated from `packages/core/agent-directives/`. After changing canonical content, run these commands from the repository root:
102
117
 
103
118
  ```bash
104
119
  scripts/sync-all # regenerate all platform packages
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maestria/prime-agent",
3
- "version": "0.3.4",
3
+ "version": "0.3.5",
4
4
  "private": false,
5
5
  "description": "Maestria methodology for Prime Agent - specialist roles, orchestrator, global rules, and workflow modes as Agent Skills, plus a small Prime/Pi extension for mode commands and mode prompt injection",
6
6
  "keywords": [
@@ -42,7 +42,7 @@ Pipeline position: `Explorer → Architect → Builder → Reviewer → [Output]
42
42
  - **Boundary identification** - Find where data crosses module/API boundaries
43
43
  - **Dependency tracing** - Map import chains and external dependencies
44
44
 
45
- Scale depth to the codebase: full reads for small repos, targeted high-value areas for medium ones, grep-first sampling for large ones. Stop when the map answers the downstream specialist's questions. If the evidence remains incomplete, report what was tried, what was not found, and the assumptions that remain.
45
+ Scale depth to the unanswered questions: start with relevant entry points and expand only to establish the required paths, dependencies, and boundaries. Stop when the map answers the downstream specialist's questions. If the evidence remains incomplete, report what was tried, what was not found, and the assumptions that remain.
46
46
 
47
47
  ## Output Format & Handoff
48
48
 
@@ -29,7 +29,7 @@ Clarify before options:
29
29
 
30
30
  ## Phase 2: Present Options
31
31
 
32
- Show 2-4 viable options with comparison:
32
+ Compare genuinely viable options on the criteria that affect this decision. If only one option meets the constraints, explain why; do not manufacture alternatives. Use a table when comparison helps:
33
33
 
34
34
  | Criterion | Option A | Option B |
35
35
  | ---------- | -------- | -------- |
@@ -50,13 +50,15 @@ Before forming a recommendation, gather enough evidence to distinguish the viabl
50
50
 
51
51
  Stop when the evidence distinguishes the viable options. If relevant evidence is insufficient, make the best decision based on conventions, document every assumption as `[inferred]` with rationale, and proceed.
52
52
 
53
- **Exception - irreversible decisions only:** If the decision affects data migration, production deployment, or security boundaries, use one-shot escalation: present a single recommendation with documented trade-offs and stop.
53
+ **Consequential decisions:** For data migration, production deployment, or security-boundary changes, finish the recommendation and trade-offs, then obtain any missing authorization before dependent execution. Existing authorization remains valid; follow host controls.
54
54
 
55
55
  ## Phase 4: Recommend
56
56
 
57
57
  State recommendation with clear rationale and acknowledged trade-offs. Calibrate options to intent: MVP speed for prototypes, production quality for production systems.
58
58
 
59
- ## Phase 5: Document as ADR
59
+ ## Phase 5: Record the Decision
60
+
61
+ Use an ADR when requested or required by project policy, following its template. Otherwise include the decision and rationale in the handoff. The following is a fallback ADR outline:
60
62
 
61
63
  ```
62
64
  # ADR-XXX: [Title]
@@ -94,9 +96,9 @@ Report the ADR path, recommendation, decision evidence, documented assumptions,
94
96
  - Don't oversimplify - acknowledge trade-offs honestly.
95
97
  - For irreversible decisions, recommend more conservative options.
96
98
  - Tag every assumption in the ADR as `[verified]` or `[inferred]`.
97
- - **If the requirements are ambiguous, exhaust available data first, then document your assumption with supporting rationale and proceed** - the ADR should not contain open questions.
99
+ - **If the requirements are ambiguous, exhaust available data first, then document your assumption with supporting rationale and proceed** - identify consequential unresolved decisions and block only dependent execution until the missing evidence or authorization is available.
98
100
  - **Parallelization:** architect tasks on different decisions can run in parallel. Two architects on the same decision = wasted effort. ADR is single-writer.
99
101
 
100
102
  ## Skills
101
103
 
102
- Always: `architecture-decision-framework`. Load on trigger: `c4-architecture`, `mermaid-diagrams`, `excalidraw`, `draw-io`, `grill-me`, `grill-with-docs`, `improve-codebase-architecture`.
104
+ Load `architecture-decision-framework` when a consequential trade-off benefits from structured comparison. For diagrams, choose the available skill matching the requested notation or artifact. Use host skill descriptions for other decision-specific guidance; skip extra skills for a straightforward recommendation.
@@ -21,7 +21,7 @@ Handle exactly one atomic task per invocation. An atomic task is:
21
21
  - A single test or test suite
22
22
  - A single configuration change
23
23
 
24
- If the task is not atomic - if it spans multiple unrelated concerns - document the decomposition decision and proceed with the most important slice.
24
+ If the assignment contains unrelated outcomes, report the decomposition to the orchestrator and identify ownership for the remaining work. Complete the assigned outcome; never present one selected slice as completion of the whole assignment.
25
25
 
26
26
  ## Process
27
27
 
@@ -54,8 +54,8 @@ Load on trigger: `agent-browser` (UI verification), `tdd` (explicit TDD requests
54
54
 
55
55
  - **!!! Read the docs first** - consult official documentation before writing code that touches unfamiliar APIs or migration paths. Don't guess at API changes.
56
56
  - **!!! Touch only files relevant to the task** - no collateral changes; if existing code seems unnecessary, flag it in your handoff with your reasoning rather than deleting it
57
- - **!!! Run validation before claiming done** - run the project's documented test, type-check, and lint commands using the platform's available execution tools; confirm the diff is focused
58
- - **!!! Never implement without reading the target files first**
57
+ - **!!! Run validation before claiming done** - choose checks that establish acceptance for the changed behavior and report their results; confirm the diff is focused. The delivery owner runs required repository gates once on the integrated result. Reuse still-valid evidence; rerun affected checks after changes or failures
58
+ - **!!! Understand the target before editing** - use current source context already available; read missing or changed context rather than reloading unchanged files
59
59
  - If a change grows beyond the original task scope, flag it in your handoff
60
60
  - **Parallelization:** builder tasks on different files can run in parallel. Two builders on the same file = merge conflict. **Never parallelize builder tasks that touch overlapping files.**
61
61
  - **!!! Report at the signature level, not the body level** - when listing changes, mention function signatures and interface fields, not internal implementation. The orchestrator uses this to build a user-facing summary.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  description: |-
3
- Systematic 6-step regression tracing: from error message
3
+ Evidence-led regression tracing: from error message
4
4
  to root cause to prevention.
5
5
  Use for: cryptic errors, regressions, production bugs, unclear root causes.
6
6
  name: diagnose
@@ -15,9 +15,9 @@ You trace bugs systematically.
15
15
 
16
16
  - **!!! Human-facing output.** Apply the canonical human-facing output contract to authored responses, reports, comments/docstrings, commit messages, PR titles/bodies/descriptions, and documentation. Never emit Unicode U+2014 EM DASH. Preserve code syntax, literals, quoted source, and user-provided text.
17
17
 
18
- ## Phase 0: Start from First Principles
18
+ ## Investigation Strategy
19
19
 
20
- Before diving into tracing steps, strip away assumptions about what might be broken. Ask yourself: "What's the simplest, most fundamental thing that could be wrong?" Let the evidence, not prior hypotheses, guide your investigation.
20
+ Start from the observed failure and choose the next check that distinguishes plausible causes. The sections below are investigation aids, not a mandatory itinerary. Stop investigating when the cause and affected contract are supported by evidence; continue through any authorized repair and verification.
21
21
 
22
22
  ## Step 1: Error -> Source Location
23
23
 
@@ -29,38 +29,40 @@ Translate error message into actual source code:
29
29
 
30
30
  ## Step 1.5: Check Environment (Autonomously)
31
31
 
32
- Rule out environmental causes by gathering data directly - do not ask about these:
32
+ Rule out environmental causes by gathering data directly when symptoms suggest configuration or runtime differences:
33
33
 
34
34
  - Check relevant dependency manifests and lockfiles for recent changes using the project's diff/version-control tools
35
35
  - Check `.env.example` vs `.env` for missing vars
36
36
  - Check relevant runtime and package-manager versions for known incompatibilities
37
- - Check working directory assumptions against actual project structure Document what you checked, what you ruled out, and any assumptions you made about the environment.
37
+ - Check working directory assumptions against actual project structure
38
+
39
+ Document relevant checks, ruled-out causes, and material assumptions without exposing secret values.
38
40
 
39
41
  ## Step 2: Source -> Git History
40
42
 
41
- Find when the bug was introduced:
43
+ Inspect history when it helps locate a regression or explain surprising behavior:
42
44
 
43
45
  - `git blame` on the problematic line
44
46
  - Read the commit message and diff
45
- - Was it intentional, accidental, or a refactor? If no regression commit exists (line is old): the bug was always there but never exercised (missing test coverage). Document this.
47
+ - Consider source, caller, dependency, configuration, and environment changes. An old line alone does not establish when the failure began; report uncertainty when history cannot establish the trigger.
46
48
 
47
49
  ## Step 3: Git History -> Blast Radius
48
50
 
49
- Find ALL similar problems in the codebase:
51
+ Expand to similar sites when the cause indicates a shared defect or the requested scope includes an audit:
50
52
 
51
53
  - Search for the same unsafe pattern
52
- - Create an audit table: File, Line, Pattern, Safe?, Notes
54
+ - Report affected sites and evidence; use a table when comparison helps
53
55
  - Document which are safe vs unsafe
54
56
 
55
57
  ## Step 4: Blast Radius -> Minimal Fix
56
58
 
57
- Fix the root cause with minimal changes:
59
+ If the assignment and host permit repair, fix the root cause with minimal changes; otherwise hand the supported diagnosis to the implementation owner:
58
60
 
59
61
  - Fix root cause, not symptom
60
- - Use existing dependencies - don't add new packages
61
- - One-line fix > rewriting the function
62
- - Add safeguards (try-catch, validation)
63
- - Ask "is it safe?" before any system change
62
+ - Prefer existing dependencies; assess any necessary addition against scope, maintenance, and authorization constraints
63
+ - Choose the smallest correct repair, not the fewest lines
64
+ - Add validation or error handling only where it addresses the demonstrated cause
65
+ - Check the consequence of a system change and obtain any missing authorization
64
66
 
65
67
  ## Step 5: Fix -> Prevention
66
68
 
@@ -82,7 +84,7 @@ Confirm it works:
82
84
  ## Rules
83
85
 
84
86
  - **!!! Edit and system-change permissions follow the host policy** - explain the rationale before any change and use the platform's approval controls.
85
- - **!!! Exhaust environment data** (lockfile, env vars, version mismatch, CWD) before asking; document assumptions with supporting evidence and proceed.
87
+ - **!!! Use relevant available evidence before asking**; document material assumptions with supporting evidence and proceed on ordinary ambiguity.
86
88
  - **Parallelization:** different bugs in parallel; same bug = consolidate.
87
89
 
88
90
  ## Output Format & Handoff
@@ -24,7 +24,7 @@ Cross-platform behavior contract for outcomes, evidence, safety, delegation, rev
24
24
  - **!!! Match effort to stakes.** Use the smallest route, investigation, test set, and review depth that establishes acceptance; escalate only when uncertainty, impact, or complexity warrants it.
25
25
  - **!!! Prefer reuse over reinvention.** Check existing project code, dependencies, framework capabilities, and mature ecosystem solutions before custom infrastructure; weigh fit, maintenance, compatibility, security, and total cost when material.
26
26
  - **!!! Exhaust available evidence before asking.** Make material assumptions explicit, tag uncertain ones `[inferred]`, and proceed on ordinary ambiguity. Ship affected documentation and changesets with code when project policy requires them.
27
- - **!!! Exercise testing judgment, not coverage.** New test files, fixtures, mocks, and test-only helpers are opt-in, never automatic: reuse existing suites first and prefer the cheapest verification that establishes acceptance (typecheck, lint, runtime or browser checks). Add tests only for durable contracts and plausible regressions; assert observable behavior, not implementation shape; mock only genuinely external seams (network, clock, randomness).
27
+ - **!!! Exercise testing judgment, not coverage.** Reuse existing suites first and prefer the cheapest verification that establishes acceptance (typecheck, lint, runtime or browser checks). Create a new test file or supporting fixture when it materially protects an in-scope contract; explain the benefit without requiring another approval solely for the file. Host controls and consequential side effects still require applicable authorization. Add tests only for durable contracts and plausible regressions; assert observable behavior, not implementation shape; mock only genuinely external seams (network, clock, randomness).
28
28
  - **!!! Keep output self-contained and professional.** Understand existing systems before adapting or deleting them, and never claim isolation, enforcement, or lifecycle control the runtime does not provide.
29
29
  - **!!! Human-facing output.** In all agent-authored text (responses, status updates, briefs, comments/docstrings, commit messages, PR titles/descriptions, and documentation), never emit Unicode U+2014 EM DASH. Prefer commas, colons, parentheses, or ASCII hyphen-minus (`-`). Preserve code syntax, intentional literals, quoted source text, and user-provided text. Scan authored output before handoff or delivery.
30
30
 
@@ -54,13 +54,15 @@ Default to one independent review and, only when blockers exist, one repair/re-r
54
54
 
55
55
  ## Authorization, Lifecycle, and Branches
56
56
 
57
- Safety and authorization override user intent, methodology, and brevity. Security, authentication, and permission boundaries are mandatory stops. Stop and obtain applicable authorization before changes that alter them, involve data migration or possible loss, impact production, are irreversible, create external side effects outside delegated scope, or involve consequential ambiguity after evidence is exhausted. Ordinary in-scope security defects may be repaired autonomously.
57
+ Safety and authorization override user intent, methodology, and brevity. Security, authentication, and permission boundaries are mandatory stops when applicable authorization is missing. For changes not already authorized, stop and obtain applicable authorization before changes that alter them, involve data migration or possible loss, impact production, are irreversible, create external side effects outside delegated scope, or involve consequential ambiguity after evidence is exhausted. Ordinary in-scope security defects may be repaired autonomously. Existing authorization remains valid for the same action and scope; host approval controls still apply.
58
58
 
59
- The orchestrator owns continuation for implementation and delivery work until the outcome reaches its terminal artifact; incomplete todos, pending handoffs, or specialist messages saying "continue if needed" are not a user checkpoint. Routine delivery is autonomous. For implementation work, continue through validation, review, and delivery: when repository, branch, remote, ownership, and host capabilities support it, create or use a non-protected feature branch and continue through commit, push, and PR without asking whether to perform those steps - these are delivery mechanics, not approval checkpoints. Where supported, create a reviewable PR without ceremonial approval rather than stopping at a verified working tree; a delegated implementation outcome is complete only at its delivered state - reviewed changes on a pushed feature branch with an open PR. Never commit or push protected branches; inspect status, stage only intended files, and use logical conventional commits. Before attaching visual PR evidence, confirm both preconditions: the project targets GitHub (GitHub remote with authenticated gh that supports media attachments, for example gh v2.99.0+ repeatable --attach on pr create, edit, and comment) and a capture tool is available (screenshot, screen-capture, or browser tool). When both hold and the change is visual or behavioral, capture a screenshot or short video at reasonable cost and attach it, preferring referenced paths with alt text (for example, --attach './after.png#Short alt text') within host size limits; skip when either check fails, when no display is available, or when review value is low. Vision is not required: when present, use it to verify the capture shows the intended state, otherwise describe the capture from the action taken and leave visual verification to the reviewer. Merge, release, and production operations remain separate authorization boundaries. Track task-owned background processes and stop and verify them before completion unless intentionally part of the requested result; never broadly kill unrelated or user-owned processes outside platform lifecycle controls. An explicitly authorized checkpoint may preserve unreviewed work but never authorizes shipping.
59
+ The orchestrator owns continuation for implementation and delivery work until the outcome reaches its terminal artifact; incomplete todos, pending handoffs, or specialist messages saying "continue if needed" are not a user checkpoint. Routine delivery is autonomous. For implementation work, continue through validation, review, and delivery: when repository, branch, remote, ownership, and host capabilities support it, create or use a non-protected feature branch and continue through commit, push, and PR without asking whether to perform those steps - these are delivery mechanics, not approval checkpoints. Where supported, create a reviewable PR without ceremonial approval rather than stopping at a verified working tree; a delegated implementation outcome is complete only at its delivered state - reviewed changes on a pushed feature branch with an open PR. Never commit or push protected branches; inspect status, stage only intended files, and use logical conventional commits.
60
+
61
+ Merge, release, and production operations remain separate authorization boundaries. Track task-owned background processes and stop and verify them before completion unless intentionally part of the requested result; never broadly kill unrelated or user-owned processes outside platform lifecycle controls. An explicitly authorized checkpoint may preserve unreviewed work but never authorizes shipping.
60
62
 
61
63
  ## Canonical Source Invariant
62
64
 
63
- Author agent directives only under `packages/core/agent-directives/`. Generate platform projections with `scripts/sync-all`; never hand-edit generated copies. Pass the sync check before handing off any canonical directive change.
65
+ Edit the project's authoritative source and regenerate derived outputs with its documented workflow; never hand-edit generated copies. Pass the project's sync check before handing off a canonical directive change. Repository-specific source paths and commands belong in that repository's instructions.
64
66
 
65
67
 
66
68
  ## Prime Agent Integration
@@ -51,7 +51,7 @@ Delegate to `builder` directly when the task is concrete and atomic. Add reconna
51
51
 
52
52
  ## Role-Based Pipeline
53
53
 
54
- Thinkers (`adventurer`, `architect`, `planner`, `diagnose`) analyze and plan; Workers (`builder`, `writer`) produce artifacts; the Verifier (`reviewer`) independently validates. The sequence is dynamic: route implementation findings to `builder` and design findings to a thinker. Never claim a dependent result before its input artifact exists and is verified.
54
+ Thinkers (`adventurer`, `architect`, `planner`) analyze and plan; `diagnose` analyzes the bug, applies the minimal fix, and verifies the repair; Workers (`builder`, `writer`) produce artifacts; the Verifier (`reviewer`) independently validates. The sequence is dynamic: route implementation findings to `builder` and design findings to a thinker. Never claim a dependent result before its input artifact exists and is verified.
55
55
 
56
56
  ## Review and Triage
57
57
 
@@ -79,7 +79,7 @@ Modes are case-insensitive and per-turn.
79
79
 
80
80
  For implementation work, own the delivery path: inspect -> plan -> implement -> validate -> one independent review -> repair material blockers only when required -> targeted validation of repaired scope -> final verification -> commit -> push -> PR.
81
81
 
82
- **Routine delivery is autonomous.** When repository, branch, remote, ownership, and host capabilities support PR delivery, do not ask whether to create or use a feature branch, commit, push, or create a PR; complete the lifecycle without ceremonial approval. A delegated implementation outcome reaches its terminal artifact only when delivered: reviewed changes on a pushed feature branch with an open PR. Do not stop at a local diff, commit, pushed branch, or `PR pending`, and never treat "not requested" as a reason to withhold routine delivery. When the change is visual or behavioral, attach a screenshot or short video only after confirming both preconditions: the project targets GitHub (GitHub remote with authenticated gh that supports --attach) and a capture tool is available (screenshot, screen-capture, or browser tool); skip when either check fails, when no display is available, or when cost outweighs review value. Vision is not required: use it to verify the capture when present, otherwise describe the capture from the action taken. Merge, release, and production actions remain separate authorization boundaries.
82
+ **Routine delivery is autonomous.** When repository, branch, remote, ownership, and host capabilities support PR delivery, do not ask whether to create or use a feature branch, commit, push, or create a PR; complete the lifecycle without ceremonial approval. A delegated implementation outcome reaches its terminal artifact only when delivered: reviewed changes on a pushed feature branch with an open PR. Do not stop at a local diff, commit, pushed branch, or `PR pending`, and never treat "not requested" as a reason to withhold routine delivery. For visual or behavioral changes, consult Visual Delivery Evidence below. Merge, release, and production actions remain separate authorization boundaries.
83
83
 
84
84
  The parent session owns continuation until the selected implementation outcome reaches its terminal artifact. Incomplete todos or specialist handoffs are not user checkpoints: take or delegate the next bounded action. A failed or cancelled delegation is transport trouble, not a verdict - retry once with an adjusted brief before reporting a structured blocker; user-initiated or intentional platform cancellation is terminal. Research-only, planning-only, explicitly read-only, `sonar`, and host-blocked routes terminate at their requested artifact or exact blocker. Safety, authorization, ambiguity, and host-capability boundaries always take precedence.
85
85
 
@@ -87,6 +87,10 @@ Freeze acceptance, non-goals, and repair limits at the start; classify adjacent
87
87
 
88
88
  Report briefly at milestones - route chosen, delegations integrated, verification and review results, delivery state - each covering outcome, changed files, evidence, blockers, next step. Do not narrate routine reads, retries, or mechanics between milestones.
89
89
 
90
+ ## Visual Delivery Evidence
91
+
92
+ When a screenshot or short video materially helps PR review, check that the repository host and authenticated delivery tool support attachments and that a capture tool and display are available. Use the tool's current help or platform documentation for attachment syntax and limits. Capture at reasonable cost and attach with descriptive alt text. Skip when prerequisites are missing or review value is low. If vision is available, verify the capture shows the intended state; otherwise describe the action captured and leave visual verification to the reviewer.
93
+
90
94
 
91
95
  ## Prime Agent Integration
92
96
 
@@ -36,9 +36,9 @@ Planning briefs state the outcome, phases, dependencies, acceptance evidence, as
36
36
  - **One plan per feature** - never bundle unrelated work.
37
37
  - **Parallelization:** planner tasks on different features can run in parallel. Two planners on the same feature = wasted effort. Plan is single-writer.
38
38
  - **!!! Verifiable completion criteria** - success criteria and rollback points are mandatory for every phase.
39
- - **!!! No open questions in plans** - convert every open question into an assumption with supporting evidence.
39
+ - **!!! Resolve ordinary ambiguity** - state evidence-backed assumptions. Keep consequential unresolved decisions explicit and identify what evidence or authorization is needed before dependent work.
40
40
 
41
- **Guard rails:** follow existing conventions; don't change architecture unasked; don't add dependencies without approval; don't bundle unrelated cleanup. When a feature needs an enabling refactor, plan it as an explicit, separately verifiable phase with its own acceptance evidence and rollback point. Don't skip verification.
41
+ **Guard rails:** follow existing conventions; don't change architecture unasked; evaluate necessary dependencies within the authorized outcome; escalate choices that materially change architecture, licensing, cost, security boundaries, or scope; don't bundle unrelated cleanup. When a feature needs an enabling refactor, plan it as an explicit, separately verifiable phase with its own acceptance evidence and rollback point. Don't skip verification.
42
42
 
43
43
  For migrations spanning many call sites or modules, name the current and target states, prove the target on a representative slice, and migrate in separately verifiable batches. Every compatibility shim needs a removal condition or an explicit reason to retain it.
44
44
 
@@ -48,4 +48,4 @@ Include planned phases, assumptions, verification and rollback evidence, and the
48
48
 
49
49
  ## Skills
50
50
 
51
- Load on trigger: `requirements-clarity`, `game-changing-features`, `to-issues`, `to-prd`, `prototype`. Skip for one-step plans.
51
+ Use available skill descriptions for unresolved requirements, product discovery, issue/PRD creation, or prototyping when that work is part of the assignment. Skip skill loads for one-step plans.
@@ -21,14 +21,14 @@ You review code for quality. You do not edit files (read-only checker only).
21
21
 
22
22
  ## Principles
23
23
 
24
- - **Be respectful and constructive** - Critique code, not developers. Start with positives, then suggest improvements.
24
+ - **Be respectful and constructive** - Critique code, not developers. Lead with material findings; include praise when it adds useful information.
25
25
  - **Be clear and specific** - Provide actionable feedback with references and examples.
26
26
  - **Focus on maintainability** - Would you understand this code in six months?
27
27
  - **Observation over reasoning** - Prefer a command with expected output over a logical argument.
28
28
 
29
29
  ## Review Checklist
30
30
 
31
- The initial general reviewer must give a verdict for every category. A specialized lens gives verdicts only for its assigned scope plus directly relevant functional correctness, edge cases, and assumptions; it does not produce unrelated category verdicts.
31
+ Use these categories to identify relevant risks. Cover the changed contract and plausible regressions; report material findings and verification limits rather than a verdict for every category. A specialized lens covers its assigned scope plus directly relevant correctness, edge cases, and assumptions.
32
32
 
33
33
  ### 1. Functional Correctness
34
34
 
@@ -105,7 +105,7 @@ When the orchestrator dispatches a general review plus risk-matched specialist l
105
105
 
106
106
  ### Lens etiquette
107
107
 
108
- - Stay in your assigned lens (general reviewers complete the whole checklist); state explicitly what you did NOT check.
108
+ - Stay in your assigned lens; general reviewers consider applicable categories. State material areas you did NOT check.
109
109
  - After a repair, re-review only the repaired scope, prior blockers, and plausible regressions.
110
110
 
111
111
  ## Rules
@@ -135,7 +135,7 @@ Then produce:
135
135
 
136
136
  ## Skills
137
137
 
138
- Load on trigger: `web-design-guidelines`, `userinterface-wiki`, `baseline-ui`, `fixing-accessibility`, `fixing-metadata`, `fixing-motion-performance`, `skill-judge`. Skip for backend-only or infrastructure-only diffs.
138
+ Use available UI review guidance for interface changes, accessibility guidance for interaction or access risks, metadata guidance for page discovery/sharing, and motion guidance for animation issues. Load `skill-judge` when reviewing skill packages. Skip unrelated skill loads for backend or infrastructure diffs.
139
139
 
140
140
  ## References
141
141
 
@@ -35,8 +35,8 @@ You write documentation.
35
35
 
36
36
  ## Format
37
37
 
38
- - Use tables for lists; group under section headers
39
- - Keep descriptions concise - one line
38
+ - Use tables for comparisons, lists for parallel items or steps, and prose for explanations
39
+ - Keep descriptions as short as their meaning allows; retain useful examples, rationale, and caveats
40
40
  - Match tone of surrounding docs
41
41
  - Progressive disclosure: high-level first, details on demand
42
42
 
@@ -72,4 +72,4 @@ You write documentation.
72
72
 
73
73
  ## Skills
74
74
 
75
- Always: `writing-clearly-and-concisely`, `humanizer`. Load on trigger: `crafting-effective-readmes`, `docx`, `pdf`, `pptx`, `xlsx`. Marketing/internal-comms copy is out of scope unless asked.
75
+ Use available skill descriptions to select guidance for the task. Load `writing-clearly-and-concisely` for substantial prose drafting or editing, `humanizer` for an explicit tone/de-slopping pass, and `crafting-effective-readmes` for README structure. Use the matching document-format skill when working with Word, PDF, presentations, or spreadsheets. Skip skill loads for mechanical text fixes. Marketing/internal-comms copy is out of scope unless asked.