@jaimevalasek/aioson 1.21.7 → 1.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +39 -2
- package/docs/en/1-understand/ecosystem-map.md +1 -1
- package/docs/en/2-start/initial-decisions.md +1 -1
- package/docs/en/4-agents/README.md +8 -7
- package/docs/en/4-agents/discovery-design-doc.md +150 -0
- package/docs/en/5-reference/cli-reference.md +42 -16
- package/docs/en/README.md +2 -2
- package/docs/pt/4-agentes/README.md +8 -6
- package/docs/pt/4-agentes/briefing-refiner.md +122 -0
- package/docs/pt/4-agentes/discovery-design-doc.md +133 -74
- package/docs/pt/4-agentes/scope-check.md +65 -0
- package/docs/pt/5-referencia/README.md +1 -0
- package/docs/pt/5-referencia/comandos-cli.md +5 -4
- package/docs/pt/5-referencia/feature-archive.md +1 -0
- package/docs/pt/5-referencia/feature-export.md +155 -0
- package/docs/pt/README.md +2 -2
- package/docs/pt/agentes.md +3 -1
- package/package.json +1 -1
- package/src/agent-manifests.js +14 -3
- package/src/agents.js +21 -20
- package/src/cli.js +72 -52
- package/src/commands/briefing.js +28 -150
- package/src/commands/commit-prepare.js +5 -2
- package/src/commands/feature-archive.js +48 -12
- package/src/commands/feature-close.js +40 -0
- package/src/commands/feature-export.js +242 -0
- package/src/commands/gate-check.js +8 -3
- package/src/commands/git-guard.js +58 -0
- package/src/commands/harness-gate.js +120 -0
- package/src/commands/harness-status.js +157 -0
- package/src/commands/harness.js +18 -1
- package/src/commands/live.js +120 -115
- package/src/commands/parallel-doctor.js +2 -1
- package/src/commands/pulse-update.js +2 -2
- package/src/commands/scan-project.js +12 -2
- package/src/commands/self-implement-loop.js +305 -5
- package/src/commands/workflow-next.js +477 -425
- package/src/constants.js +21 -11
- package/src/context-search.js +3 -0
- package/src/doctor.js +24 -8
- package/src/dossier/schema.js +4 -3
- package/src/harness/active-contract.js +41 -0
- package/src/harness/attempt-artifacts.js +95 -0
- package/src/harness/budget-guard.js +127 -0
- package/src/harness/circuit-breaker.js +7 -0
- package/src/harness/contract-schema.js +324 -0
- package/src/harness/criteria-runner.js +136 -0
- package/src/harness/git-baseline.js +204 -0
- package/src/harness/glob-match.js +126 -0
- package/src/harness/guard-events.js +71 -0
- package/src/harness/human-gate.js +182 -0
- package/src/harness/scope-guard.js +115 -0
- package/src/i18n/messages/en.js +24 -21
- package/src/i18n/messages/es.js +11 -9
- package/src/i18n/messages/fr.js +11 -9
- package/src/i18n/messages/pt-BR.js +24 -21
- package/src/lib/briefing-refiner/apply-feedback.js +134 -0
- package/src/lib/briefing-refiner/briefing-paths.js +41 -0
- package/src/lib/briefing-refiner/briefing-registry.js +204 -0
- package/src/lib/briefing-refiner/briefing-sections.js +110 -0
- package/src/lib/briefing-refiner/feedback-schema.js +122 -0
- package/src/lib/briefing-refiner/refinement-report.js +39 -0
- package/src/lib/briefing-refiner/review-html.js +230 -0
- package/src/lib/dev-resume.js +94 -45
- package/src/parser.js +8 -5
- package/src/preflight-engine.js +88 -84
- package/src/runtime-store.js +2 -0
- package/src/sandbox.js +17 -3
- package/template/.aioson/agents/analyst.md +27 -23
- package/template/.aioson/agents/architect.md +7 -3
- package/template/.aioson/agents/briefing-refiner.md +121 -0
- package/template/.aioson/agents/briefing.md +83 -74
- package/template/.aioson/agents/committer.md +8 -0
- package/template/.aioson/agents/copywriter.md +19 -7
- package/template/.aioson/agents/design-hybrid-forge.md +16 -5
- package/template/.aioson/agents/dev.md +68 -66
- package/template/.aioson/agents/deyvin.md +97 -90
- package/template/.aioson/agents/discover.md +2 -2
- package/template/.aioson/agents/discovery-design-doc.md +34 -30
- package/template/.aioson/agents/genome.md +82 -71
- package/template/.aioson/agents/neo.md +11 -3
- package/template/.aioson/agents/orache.md +10 -0
- package/template/.aioson/agents/orchestrator.md +68 -68
- package/template/.aioson/agents/pentester.md +15 -6
- package/template/.aioson/agents/pm.md +30 -25
- package/template/.aioson/agents/product.md +108 -108
- package/template/.aioson/agents/profiler-enricher.md +10 -0
- package/template/.aioson/agents/profiler-forge.md +10 -0
- package/template/.aioson/agents/profiler-researcher.md +11 -0
- package/template/.aioson/agents/qa.md +28 -20
- package/template/.aioson/agents/scope-check.md +176 -164
- package/template/.aioson/agents/setup.md +11 -1
- package/template/.aioson/agents/sheldon.md +38 -38
- package/template/.aioson/agents/site-forge.md +15 -6
- package/template/.aioson/agents/squad.md +12 -0
- package/template/.aioson/agents/tester.md +209 -209
- package/template/.aioson/agents/ux-ui.md +2 -2
- package/template/.aioson/agents/validator.md +10 -2
- package/template/.aioson/config.md +31 -28
- package/template/.aioson/docs/autopilot-handoff.md +46 -0
- package/template/.aioson/docs/dossier/agent-templates.md +191 -0
- package/template/.aioson/docs/dossier/schema.md +218 -0
- package/template/.claude/commands/aioson/agent/briefing-refiner.md +17 -0
- package/template/AGENTS.md +50 -47
- package/template/CLAUDE.md +29 -27
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,45 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
## [1.22.0] - 2026-06-10
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
- **Loop guardrails for self-implementation harnesses.** `self:loop` now runs from an active contract with schema validation, active-contract discovery, scope enforcement, budget ceilings, attempt artifacts, criteria verification, failure-signature escalation, and human approval gates.
|
|
9
|
+
- **Harness gate/status commands.** Added `harness:status` and human gate approval/rejection flows so paused loop work can be inspected, resumed, or explicitly blocked without losing context.
|
|
10
|
+
- **Contract-aware git guard integration.** `git:guard` now merges declared `forbidden_files` from the active harness contract while preserving safe human commit behavior for lockfiles unless the contract explicitly forbids them.
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
- **Dev/QA prompts now understand loop guardrails.** Workspace and template agent prompts were updated so implementation, QA, correction loops, and handoffs consume the new guarded harness model consistently.
|
|
14
|
+
- **Loop-guardrails feature artifacts are now durable.** PRD, requirements, readiness, design, scope-check, Sheldon enrichment, dossier, corrections plan, and progress artifacts were recorded under `.aioson/context/` and `.aioson/plans/`.
|
|
15
|
+
|
|
16
|
+
### Tests
|
|
17
|
+
- Added regression coverage for contract schema validation, glob matching, scope guard behavior, budget enforcement, criteria execution, human gates, active-contract discovery, git guard contract merging, and self-loop guardrails.
|
|
18
|
+
|
|
19
|
+
## [1.21.8] - 2026-06-08
|
|
20
|
+
|
|
21
|
+
### Added
|
|
22
|
+
- **`feature:export` — copy a feature's artefacts to a clean output directory.** Non-destructive sibling of `feature:archive`: instead of *moving* artefacts into `.aioson/context/done/{slug}/`, it *copies* the full surface (root `*-{slug}.{md,yaml,yml,json}` minus global files, the per-slug `dossier/`/`plans/`/`briefings/` directories, and `context/done/{slug}/` when archived) into an arbitrary `--out` (default `<target>/{slug}-export`), leaving the source tree untouched. Flags: `--flatten` (collapse to one level), `--no-index` (skip the generated `INDEX.md` manifest), `--dry-run`, `--json`. Reuses the archive's slug-collision guard via the new exported `collectFeatureArtifacts` helper, so a sibling slug (`checkout-v2`) never leaks into a `checkout` export. No `features.md` status guard — works on in-progress features too. Turns AIOSON's markdown output into a portable deliverable. Docs: `docs/pt/5-referencia/feature-export.md` + `docs/en/5-reference/cli-reference.md`.
|
|
4
23
|
|
|
5
|
-
|
|
24
|
+
### Fixed
|
|
25
|
+
- **`briefing:list` no longer re-surfaces PRD-generated briefings.** The "approved" filter ignored `prd_generated`, so a briefing already converted to a PRD could be picked up again and reverted to draft. It now filters `status === 'approved' && !prd_generated`.
|
|
26
|
+
- **`briefing-refiner` `returnedToDraft` is computed before mutation.** The return flag was read from the entry *after* the status was rewritten, reporting the post-mutation state instead of whether the refinement actually returned an approved/non-PRD briefing to draft.
|
|
27
|
+
- **`workflow:next` no longer false-flags substantiated stages as unsubstantiated.** `detectUnsubstantiatedCompletions` queried the wrong table/columns (`agent_events.agent` instead of `execution_events.agent_name`) and destructured `openRuntimeDb` incorrectly, so the completion-evidence check silently found nothing; it now reads `execution_events` and only reports `missing` stages when at least one stage *was* substantiated (no false positives on an empty event log). `discovery-design-doc` added to the inferable-stage set.
|
|
28
|
+
- **`pulse:update` is CRLF-safe.** The "## Recent Activity" parser matched LF-only (`\n`), so on Windows (CRLF) line endings it failed to capture history and clobbered the existing activity list. Regex and line-split now accept `\r?\n`.
|
|
29
|
+
- **`commit:prepare` reads unicode/spaced paths correctly.** `git status --short` ran without `core.quotePath=false`, so non-ASCII paths came back octal-escaped. Also removed a dead no-op ternary in the pattern builder.
|
|
30
|
+
- **`parallel:doctor --dry-run` is recognized.** The handler read only `options.dryRun`, missing the kebab `--dry-run` form; it now accepts both.
|
|
31
|
+
- **`scan:project` guards malformed LLM responses.** Direct `data.choices[0].message.content` / `data.content[0].text` dereferences could throw an opaque `TypeError` on an unexpected provider payload; both now validate the shape and throw a descriptive `Unexpected … response shape` error.
|
|
32
|
+
- **`agent:manifest` validation now whitelists `check_modes`.** `sanitizeManifest` filters `check_modes` against `ALLOWED_CHECK_MODES` (`pre-dev`, `post-dev`, `post-fix`, `final`), mirroring the existing autonomy-mode guard.
|
|
33
|
+
- **`runtime:emit` standalone-event line is localized.** The standalone path logged a hard-coded English string; it now uses the `live.standalone_event_recorded` i18n key (added in all locales).
|
|
34
|
+
|
|
35
|
+
### Changed
|
|
36
|
+
- **Agent structural-contract enforcement swept across all agent prompts.** Added the mandatory `## Required input` section to 18 agents that lacked it, a `## Observability` section with the `aioson agent:done … 2>/dev/null || true` call to 9 agents, the §5 best-effort suffix to `agent:done` calls that were missing it (pentester/discover/site-forge), per-slug `dossier:*` flags where required (discovery-design-doc/validator), and the `/clear` handoff cue to `product`. The previously-missing dossier templates (`agent-templates.md`, `schema.md` — referenced by 10 agents) are now shipped under `template/.aioson/docs/dossier/`, closing a packaging gap.
|
|
37
|
+
- **Transient SQLite locks now wait instead of failing.** Added `busy_timeout = 5000` to the runtime store (`runtime-store.js`) and context-search index (`context-search.js`), so a WAL checkpoint or AV file-lock retries for up to 5s rather than throwing `SQLITE_BUSY` immediately — a production-robustness improvement that also stabilizes the suite under parallel load.
|
|
38
|
+
|
|
39
|
+
### Tests
|
|
40
|
+
- New `tests/agent-structural-contract.test.js` pins the §1–§6 structural contract (LANGUAGE BOUNDARY, mandatory sections, `Required input`, `agent:done`, §5 best-effort suffix, dossier flag integrity).
|
|
41
|
+
- New `tests/feature-export.test.js` (8 cases: mirrored/flatten/no-index/done-inclusion/dry-run/noop/validation/default-out).
|
|
42
|
+
- Windows file-lock hardening: recursive `fs.rm` cleanups in 14 SQLite-touching test files now pass `maxRetries: 5, retryDelay: 50`; over-tight latency ceilings in `telemetry-foundation` and `qa-feature-close-distillation` loosened to hang-guards (full suite: 2993 pass, 0 fail, 1 skip).
|
|
6
43
|
|
|
7
44
|
## [1.21.3] - 2026-05-28
|
|
8
45
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> **Who this is for:** anyone who wants to see the full team at once.
|
|
4
4
|
> **Reading time:** 8 min
|
|
5
|
-
> **What you'll know after:** who the
|
|
5
|
+
> **What you'll know after:** who the 29 agents are, when each one enters, and how they communicate.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -99,7 +99,7 @@ You can mark **more than one** in the wizard — they coexist in the same projec
|
|
|
99
99
|
|
|
100
100
|
### Development (default)
|
|
101
101
|
|
|
102
|
-
Includes the
|
|
102
|
+
Includes the 29 official agents (product, analyst, dev, qa, etc.; `@pair` is alias of `@deyvin`). Sufficient for 95% of projects.
|
|
103
103
|
|
|
104
104
|
### Development + Squads
|
|
105
105
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# Agent cards — AIOSON (EN)
|
|
2
2
|
|
|
3
|
-
This layer will hold one card per AIOSON agent (
|
|
3
|
+
This layer will hold one card per AIOSON agent (29 total), translated from [`docs/pt/4-agentes/`](../../pt/4-agentes/README.md).
|
|
4
4
|
|
|
5
5
|
Cards are being translated progressively. Until a card is available here, the PT version is the canonical reference — it follows the same format and covers the same agents.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
## The
|
|
9
|
+
## The 29 agents (plus @pair alias)
|
|
10
10
|
|
|
11
11
|
### Workflow core (pipeline order)
|
|
12
12
|
|
|
@@ -14,10 +14,11 @@ Cards are being translated progressively. Until a card is available here, the PT
|
|
|
14
14
|
|---|---|
|
|
15
15
|
| `@setup` | Project onboarding — detect stack, classify MICRO/SMALL/MEDIUM, write `project.context.md` |
|
|
16
16
|
| `@briefing` | Pre-PRD framing — turn `plans/` sketches into structured briefings with gap analysis |
|
|
17
|
-
| `@product` | PRD — vision, problem, users, scope, acceptance criteria |
|
|
18
|
-
| `@sheldon` | PRD quality guardian — gap detection, web research, sizing, in-place enrichment or phased plan |
|
|
19
|
-
| `@analyst` | Domain discovery — entities, flows, brownfield mapping |
|
|
20
|
-
| `@
|
|
17
|
+
| `@product` | PRD — vision, problem, users, scope, acceptance criteria |
|
|
18
|
+
| `@sheldon` | PRD quality guardian — gap detection, web research, sizing, in-place enrichment or phased plan |
|
|
19
|
+
| `@analyst` | Domain discovery — entities, flows, brownfield mapping |
|
|
20
|
+
| `@scope-check` | Alignment gate before implementation — validates intent vs plan and catches scope drift |
|
|
21
|
+
| `@architect` | Technical decisions — structure, libraries, integration boundaries |
|
|
21
22
|
| `@ux-ui` | Design system and UI component specs (MEDIUM) |
|
|
22
23
|
| `@pm` | Backlog and user stories (MEDIUM) |
|
|
23
24
|
| `@orchestrator` | Parallel lane coordination (MEDIUM) |
|
|
@@ -49,7 +50,7 @@ Cards are being translated progressively. Until a card is available here, the PT
|
|
|
49
50
|
| `@design-hybrid-forge` | Combine two design skills into a hybrid |
|
|
50
51
|
| `@orache` | Domain investigation and strategic research |
|
|
51
52
|
| `@copywriter` | Conversion copy — landing pages, VSL scripts |
|
|
52
|
-
| `@discovery-design-doc` |
|
|
53
|
+
| [`@discovery-design-doc`](./discovery-design-doc.md) | Discovery, readiness, and design doc package |
|
|
53
54
|
|
|
54
55
|
---
|
|
55
56
|
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
# @discovery-design-doc - Discovery, readiness, and design doc
|
|
2
|
+
|
|
3
|
+
> **For whom:** people who need to turn a vague idea into initial clarity, or consolidate PRD, requirements, and architecture into a technical contract before `@dev`.
|
|
4
|
+
> **Reading time:** 3 min.
|
|
5
|
+
> **What you will learn:**
|
|
6
|
+
> - The two correct usage modes: exploratory and pre-dev
|
|
7
|
+
> - Why this agent can appear after `@analyst` and `@architect` in the workflow
|
|
8
|
+
> - What the design doc and readiness note provide to downstream agents
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## What it is for
|
|
13
|
+
|
|
14
|
+
`@discovery-design-doc` has two valid uses:
|
|
15
|
+
|
|
16
|
+
- **Exploratory mode:** when a request is still vague, such as a ticket, feature idea, or meeting note. It normalizes the problem, identifies ambiguities, and recommends the next agent.
|
|
17
|
+
- **Pre-dev workflow mode:** when a SMALL/MEDIUM project has already passed through `@analyst` and `@architect`. In this case, it consolidates PRD, requirements, spec, and architecture into a living `design-doc` and a `readiness` note with a concrete technical plan for `@dev`.
|
|
18
|
+
|
|
19
|
+
So it can be either a shortcut before the full cycle **or** a safety stage between architecture and implementation. In the current workflow, the second use is expected for SMALL/MEDIUM.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## When to invoke
|
|
24
|
+
|
|
25
|
+
- You have a ticket, briefing, or idea and want to turn it into a structured document quickly
|
|
26
|
+
- You want to know what is defined vs ambiguous before invoking `@product` or `@dev`
|
|
27
|
+
- You are in exploratory mode and want a clarity checkpoint without committing to the full workflow
|
|
28
|
+
- You are in the SMALL/MEDIUM workflow after `@architect` and need the pre-dev technical contract
|
|
29
|
+
- `@dev` needs exact paths, modules, reuse decisions, and file-size risks before editing code
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## When not to invoke
|
|
34
|
+
|
|
35
|
+
- To redo broad discovery when PRD, requirements, spec, and architecture are already clear
|
|
36
|
+
- You need deep domain discovery and entity mapping - use `@analyst` inside the SMALL/MEDIUM workflow
|
|
37
|
+
- You want pre-PRD framing with framing frameworks - use `@briefing`
|
|
38
|
+
- The task is MICRO and already has a simple plan that is enough for `@dev`
|
|
39
|
+
|
|
40
|
+
> Having PRD/spec defined does **not** block this agent. In the SMALL/MEDIUM workflow, those artifacts are inputs for the pre-dev `design-doc` and `readiness` package.
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Where it fits in the workflow
|
|
45
|
+
|
|
46
|
+
Manual exploratory flow:
|
|
47
|
+
|
|
48
|
+
```text
|
|
49
|
+
@setup -> @discovery-design-doc -> recommended next agent
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Current SMALL flow:
|
|
53
|
+
|
|
54
|
+
```text
|
|
55
|
+
@product -> @analyst -> @scope-check(pre-dev) -> @architect -> @discovery-design-doc -> @dev -> @qa
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Current MEDIUM flow:
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
@product -> @analyst -> @architect -> @discovery-design-doc -> @ux-ui -> @pm -> @orchestrator -> @scope-check(pre-dev) -> @dev -> @qa
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Its role in the middle of a feature is not to replace `@analyst` or `@architect`. It turns those artifacts into an executable implementation package.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## Typical dialogue - exploratory mode
|
|
69
|
+
|
|
70
|
+
```text
|
|
71
|
+
You > @discovery-design-doc
|
|
72
|
+
I want to add offline mode to the mobile app so users can read
|
|
73
|
+
content without internet access.
|
|
74
|
+
|
|
75
|
+
@discovery-design-doc > Normalizing request...
|
|
76
|
+
Problem: users lose content access without connection
|
|
77
|
+
Scope: offline reading mode, not offline creation
|
|
78
|
+
|
|
79
|
+
Ambiguities:
|
|
80
|
+
- How much content can be stored offline?
|
|
81
|
+
- Automatic or manual sync?
|
|
82
|
+
- What happens when offline and online versions diverge?
|
|
83
|
+
|
|
84
|
+
Already defined:
|
|
85
|
+
- Stack: React Native + local SQLite available
|
|
86
|
+
- Auth: token can survive offline usage
|
|
87
|
+
|
|
88
|
+
@discovery-design-doc > Design doc created at: .aioson/context/design-doc.md
|
|
89
|
+
Readiness: MEDIUM - 3 ambiguities need decisions.
|
|
90
|
+
Recommendation: @product to close scope before @dev.
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Typical dialogue - pre-dev mode
|
|
96
|
+
|
|
97
|
+
```text
|
|
98
|
+
You > @discovery-design-doc
|
|
99
|
+
Consolidate the checkout feature after architecture.
|
|
100
|
+
|
|
101
|
+
@discovery-design-doc > Reading PRD, requirements, spec, and architecture...
|
|
102
|
+
Scope: checkout with one-time payment
|
|
103
|
+
Readiness: ready_with_warnings
|
|
104
|
+
|
|
105
|
+
Technical plan:
|
|
106
|
+
- Reuse the existing orders module
|
|
107
|
+
- Create payment service under src/lib/payments/
|
|
108
|
+
- Avoid changing cart flow outside checkout
|
|
109
|
+
- Risk: controller may exceed 500 lines; split into service + validator
|
|
110
|
+
|
|
111
|
+
@discovery-design-doc > Design doc created at: .aioson/context/design-doc-checkout.md
|
|
112
|
+
Readiness created at: .aioson/context/readiness-checkout.md
|
|
113
|
+
Recommendation: proceed to @dev when Gate B is approved.
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## Disk outputs
|
|
119
|
+
|
|
120
|
+
```text
|
|
121
|
+
.aioson/context/design-doc.md <- project design doc
|
|
122
|
+
.aioson/context/readiness.md <- project readiness
|
|
123
|
+
.aioson/context/design-doc-{slug}.md <- feature design doc
|
|
124
|
+
.aioson/context/readiness-{slug}.md <- feature readiness
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## How it reads your project
|
|
130
|
+
|
|
131
|
+
- `.aioson/context/project.context.md`
|
|
132
|
+
- Existing artifacts: `prd.md`, `prd-{slug}.md`, `requirements-{slug}.md`, `spec.md`, `spec-{slug}.md`, `discovery.md`, `architecture.md` when relevant
|
|
133
|
+
- Existing design docs: `design-doc.md`, `design-doc-{slug}.md`, `readiness.md`, `readiness-{slug}.md`
|
|
134
|
+
- `.aioson/context/project-map.md` when present, to resolve canonical paths
|
|
135
|
+
- Direct input: briefing, ticket, screenshots, files you provide
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## Typical handoff
|
|
140
|
+
|
|
141
|
+
- **Comes from:** direct request with a vague idea or ticket
|
|
142
|
+
- **Also comes from:** `@architect` in the SMALL/MEDIUM workflow, as pre-dev consolidation
|
|
143
|
+
- **Goes to:** the agent recommended in `readiness.md` - usually `@product` when scope is still open, or `@dev` when readiness is high
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## Next step
|
|
148
|
+
|
|
149
|
+
- For pre-PRD framing with discovery frameworks: use `@briefing`
|
|
150
|
+
- For the full cycle: see [First project from scratch](../2-start/first-project.md)
|
|
@@ -17,7 +17,7 @@ aioson init my-app --no-interactive
|
|
|
17
17
|
|
|
18
18
|
**Options:**
|
|
19
19
|
- `--lang=en|pt-BR|es|fr` — sets `conversation_language` in the generated context and applies the matching agent locale pack. Default: `en`.
|
|
20
|
-
- `--tool=codex|claude|opencode` — configures the primary AI client. Affects which gateway file is used. Default: `codex`.
|
|
20
|
+
- `--tool=codex|claude|opencode` — configures the primary AI client. Affects which gateway file is used. Default: `codex`.
|
|
21
21
|
- `--no-interactive` — skip the wizard and install all files (CI / automation).
|
|
22
22
|
- `--json` — prints structured JSON result instead of human-readable output.
|
|
23
23
|
|
|
@@ -44,8 +44,8 @@ aioson install --no-interactive
|
|
|
44
44
|
|
|
45
45
|
**Options:**
|
|
46
46
|
- `--lang=en|pt-BR|es|fr` — sets locale pack.
|
|
47
|
-
- `--tool=codex|claude|opencode` — configures AI client.
|
|
48
|
-
- `--reconfigure` — re-run the wizard even if a profile already exists (e.g. to add another supported tool later).
|
|
47
|
+
- `--tool=codex|claude|opencode` — configures AI client.
|
|
48
|
+
- `--reconfigure` — re-run the wizard even if a profile already exists (e.g. to add another supported tool later).
|
|
49
49
|
- `--no-interactive` — skip the wizard and install all files.
|
|
50
50
|
- `--force` — overwrite existing files.
|
|
51
51
|
- `--dry-run` — preview without writing.
|
|
@@ -248,25 +248,25 @@ The locale shown reflects the active agent locale pack (from `project.context.md
|
|
|
248
248
|
Print the activation prompt for a specific agent, ready to paste into any AI CLI that does not support slash commands.
|
|
249
249
|
|
|
250
250
|
```bash
|
|
251
|
-
aioson agent:prompt setup
|
|
252
|
-
aioson agent:prompt setup --tool=codex
|
|
253
|
-
aioson agent:prompt ux-ui --tool=claude
|
|
254
|
-
aioson agent:prompt dev --tool=opencode --json
|
|
251
|
+
aioson agent:prompt setup
|
|
252
|
+
aioson agent:prompt setup --tool=codex
|
|
253
|
+
aioson agent:prompt ux-ui --tool=claude
|
|
254
|
+
aioson agent:prompt dev --tool=opencode --json
|
|
255
255
|
```
|
|
256
256
|
|
|
257
257
|
**Arguments:**
|
|
258
|
-
- `<agent>` — agent id: `setup`, `product`, `analyst`, `scope-check`, `architect`, `ux-ui`, `pm`, `dev`, `qa`, `orchestrator`.
|
|
258
|
+
- `<agent>` — agent id: `setup`, `product`, `analyst`, `scope-check`, `architect`, `ux-ui`, `pm`, `dev`, `qa`, `orchestrator`.
|
|
259
259
|
|
|
260
260
|
**Options:**
|
|
261
|
-
- `--tool=codex|claude|opencode` — formats the prompt for the target CLI. Default: `codex`.
|
|
261
|
+
- `--tool=codex|claude|opencode` — formats the prompt for the target CLI. Default: `codex`.
|
|
262
262
|
- `--json` — returns structured JSON with the prompt string.
|
|
263
263
|
|
|
264
264
|
**When to use:** if you're using an AI CLI that doesn't support `/aioson:agent:setup` slash commands, run this to get the exact text to paste into the chat.
|
|
265
265
|
|
|
266
266
|
```bash
|
|
267
|
-
# Copy the prompt for @analyst in OpenCode
|
|
268
|
-
aioson agent:prompt analyst --tool=opencode
|
|
269
|
-
# → paste the output into OpenCode
|
|
267
|
+
# Copy the prompt for @analyst in OpenCode
|
|
268
|
+
aioson agent:prompt analyst --tool=opencode
|
|
269
|
+
# → paste the output into OpenCode
|
|
270
270
|
```
|
|
271
271
|
|
|
272
272
|
---
|
|
@@ -302,18 +302,18 @@ Notes:
|
|
|
302
302
|
|
|
303
303
|
**Sequences by classification:**
|
|
304
304
|
- `MICRO`: `@setup → @product (optional) → @dev`
|
|
305
|
-
- `SMALL`: `@setup → @product → @analyst → @scope-check → @architect → @dev → @qa`
|
|
306
|
-
- `MEDIUM`: `@setup → @product → @analyst → @architect → @ux-ui → @pm → @orchestrator → @scope-check → @dev → @qa`
|
|
305
|
+
- `SMALL`: `@setup → @product → @analyst → @scope-check → @architect → @dev → @qa`
|
|
306
|
+
- `MEDIUM`: `@setup → @product → @analyst → @architect → @ux-ui → @pm → @orchestrator → @scope-check → @dev → @qa`
|
|
307
307
|
|
|
308
308
|
**Feature development workflow (after initial setup):**
|
|
309
309
|
|
|
310
310
|
Once the project is set up, each new feature follows a shorter sequence — no `@setup` required:
|
|
311
311
|
|
|
312
312
|
```
|
|
313
|
-
/aioson:agent:product → @analyst → @scope-check → @dev → @qa
|
|
313
|
+
/aioson:agent:product → @analyst → @scope-check → @dev → @qa
|
|
314
314
|
```
|
|
315
315
|
|
|
316
|
-
`@product` creates a feature-scoped `prd-{slug}.md` and registers the feature in `features.md`. `@analyst` produces `requirements-{slug}.md` and `spec-{slug}.md`. `@scope-check` compares intent against the planned implementation before coding. `@dev` reads the feature spec. `@qa` closes the feature by running `feature:close --verdict=PASS`, which updates `spec-{slug}.md` with a QA sign-off, marks it `done` in `features.md`, and automatically archives all feature artefacts to `.aioson/context/done/{slug}/`.
|
|
316
|
+
`@product` creates a feature-scoped `prd-{slug}.md` and registers the feature in `features.md`. `@analyst` produces `requirements-{slug}.md` and `spec-{slug}.md`. `@scope-check` compares intent against the planned implementation before coding. `@dev` reads the feature spec. `@qa` closes the feature by running `feature:close --verdict=PASS`, which updates `spec-{slug}.md` with a QA sign-off, marks it `done` in `features.md`, and automatically archives all feature artefacts to `.aioson/context/done/{slug}/`.
|
|
317
317
|
|
|
318
318
|
The `SMALL` and MEDIUM outputs include a note reminding you of this sequence.
|
|
319
319
|
|
|
@@ -400,6 +400,32 @@ aioson feature:archive . --feature=checkout --force
|
|
|
400
400
|
|
|
401
401
|
---
|
|
402
402
|
|
|
403
|
+
## feature:export
|
|
404
|
+
|
|
405
|
+
**Copy** all artefacts of a feature into a clean output directory, leaving the source tree untouched. Sibling of `feature:archive`, but a non-destructive copy to an arbitrary `--out` — turns AIOSON's markdown output into a portable deliverable. Use it to analyse a feature's specs outside the project, hand them to a client, or use AIOSON purely as a spec generator.
|
|
406
|
+
|
|
407
|
+
```bash
|
|
408
|
+
aioson feature:export . --feature=checkout
|
|
409
|
+
aioson feature:export . --feature=checkout --out=../checkout-specs
|
|
410
|
+
aioson feature:export . --feature=checkout --flatten
|
|
411
|
+
aioson feature:export . --feature=checkout --no-index
|
|
412
|
+
aioson feature:export . --feature=checkout --dry-run --json
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
**Options:**
|
|
416
|
+
- `--feature=<slug>` — feature identifier (required).
|
|
417
|
+
- `--out=<dir>` — destination directory. Default: `<target>/{slug}-export`.
|
|
418
|
+
- `--flatten` — collapse the mirrored structure into a single level; nested files become `label-...-file.ext` (collision-free). Default: mirrored (`dossier/`, `plans/`, `briefings/`, `done/`).
|
|
419
|
+
- `--no-index` — skip the generated `INDEX.md`. Default: an `INDEX.md` manifest is written listing every exported file and its source.
|
|
420
|
+
- `--dry-run` — preview what would be copied without writing anything.
|
|
421
|
+
- `--json` — structured JSON output with `outDir`, `count`, `copied`, and `index`.
|
|
422
|
+
|
|
423
|
+
**What it copies:** the same surface `feature:archive` enumerates — root `*-{slug}.{md,yaml,yml,json}` files (minus global files), the per-slug `dossier/`, `plans/`, and `briefings/` directories, plus `context/done/{slug}/` when the feature is already archived. The slug-collision guard is honoured, so a sibling slug (`checkout-v2`) never leaks into a `checkout` export.
|
|
424
|
+
|
|
425
|
+
**Non-destructive:** the source artefacts are never moved or deleted. Re-running overwrites files in the out dir but does not remove stale ones. Unlike `feature:archive`, there is no `features.md` status guard — you can export an in-progress feature.
|
|
426
|
+
|
|
427
|
+
---
|
|
428
|
+
|
|
403
429
|
## test:smoke
|
|
404
430
|
|
|
405
431
|
End-to-end integration test that installs AIOSON in a temporary directory, runs all major commands, and verifies the output. Used for CI and release validation.
|
package/docs/en/README.md
CHANGED
|
@@ -40,7 +40,7 @@ This is the entry door to the English documentation. It is not an alphabetical i
|
|
|
40
40
|
See [3-recipes/README.md](./3-recipes/README.md) for the full list.
|
|
41
41
|
|
|
42
42
|
### I want the technical reference for an agent or command
|
|
43
|
-
- **[Agent cards (in progress)](./4-agents/README.md)** — stub today; full set is in [docs/pt/4-agentes/](../pt/4-agentes/README.md) (
|
|
43
|
+
- **[Agent cards (in progress)](./4-agents/README.md)** — stub today; full set is in [docs/pt/4-agentes/](../pt/4-agentes/README.md) (29 cards)
|
|
44
44
|
- **[Technical reference](./5-reference/README.md)** — 11 docs migrated from the previous flat structure (CLI, MCP, parallel, QA browser, squad dashboard, web3, i18n, JSON schemas, release flow)
|
|
45
45
|
|
|
46
46
|
### Highlights of `5-reference/`
|
|
@@ -109,7 +109,7 @@ This English portal is being **incrementally translated** from `docs/pt/`. The p
|
|
|
109
109
|
- 4-agents (stub README; full agent cards pending)
|
|
110
110
|
|
|
111
111
|
**Phase 2 (next)** — remaining 8 scenario recipes in 3-recipes/.
|
|
112
|
-
**Phase 3 (next)** —
|
|
112
|
+
**Phase 3 (next)** — 29 agent cards in 4-agents/.
|
|
113
113
|
**Phase 4 (next)** — remaining ~18 reference docs in 5-reference/ (feature-dossier, agent-chain-continuity, sdd-framework, live-sessions, secure-by-default, aioson-com-store, etc.).
|
|
114
114
|
|
|
115
115
|
For anything not yet in English, the PT version is current and authoritative — the AIOSON behaviors, agent prompts, and CLI commands are language-agnostic.
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
# Guia de Agentes AIOSON
|
|
2
2
|
|
|
3
|
-
> Índice
|
|
3
|
+
> Índice com 29 agentes e 1 alias, com situação de uso e saída esperada.
|
|
4
4
|
> Cada agente tem sua ficha — clique no nome para detalhes.
|
|
5
|
+
> `@pair` é alias de `@deyvin` e não possui ficha separada.
|
|
5
6
|
|
|
6
7
|
---
|
|
7
8
|
|
|
@@ -9,10 +10,10 @@
|
|
|
9
10
|
|
|
10
11
|
| Agente | Para que serve | Quando invocar | Saída principal |
|
|
11
12
|
|---|---|---|---|
|
|
12
|
-
| [@product](./product.md) | Define visão, PRD e escopo da feature | Início de projeto ou nova feature | `prd.md`, `spec.md` |
|
|
13
|
-
| [@analyst](./analyst.md) | Descobre domínio, entidades, fluxos | Após `@product`, antes de `@architect` | `architecture.md` (domínio) |
|
|
14
|
-
| [@scope-check](./scope-check.md) | Confronta intenção, plano e artefatos antes do código | Antes de `@dev` e após fixes relevantes | `scope-check.md` |
|
|
15
|
-
| [@architect](./architect.md) | Decide stack, estrutura, integração técnica | Após `@analyst` | `architecture.md` (técnico) |
|
|
13
|
+
| [@product](./product.md) | Define visão, PRD e escopo da feature | Início de projeto ou nova feature | `prd.md`, `spec.md` |
|
|
14
|
+
| [@analyst](./analyst.md) | Descobre domínio, entidades, fluxos | Após `@product`, antes de `@architect` | `architecture.md` (domínio) |
|
|
15
|
+
| [@scope-check](./scope-check.md) | Confronta intenção, plano e artefatos antes do código | Antes de `@dev` e após fixes relevantes | `scope-check.md` |
|
|
16
|
+
| [@architect](./architect.md) | Decide stack, estrutura, integração técnica | Após `@analyst` | `architecture.md` (técnico) |
|
|
16
17
|
| [@ux-ui](./ux-ui.md) | Design system e specs de componentes | MEDIUM, após `@architect` | `design-doc.md`, `discovery.md` |
|
|
17
18
|
| [@pm](./pm.md) | Backlog, user stories, ACs detalhados | MEDIUM, após `@ux-ui` | `tasks.md` |
|
|
18
19
|
| [@orchestrator](./orchestrator.md) | Coordena lanes paralelas de implementação | MEDIUM, após `@pm` | `.aioson/context/parallel/` |
|
|
@@ -31,6 +32,7 @@
|
|
|
31
32
|
| [@setup](./setup.md) | Onboarding: detecta stack, classifica projeto | Sempre primeiro num projeto novo | `project.context.md` |
|
|
32
33
|
| [@neo](./neo.md) | Roteador: diz qual agente é o próximo | Quando você está perdido | Orientação verbal |
|
|
33
34
|
| [@briefing](./briefing.md) | Transforma anotações soltas em briefing pré-PRD | Antes de `@product`, quando ideia ainda vaga | `briefing.md` |
|
|
35
|
+
| [@briefing-refiner](./briefing-refiner.md) | Revisa e refina um briefing existente via superfície HTML local | Após `@briefing`, antes de `@product` | `review.html`, `refinement-report.md` |
|
|
34
36
|
| [@deyvin](./deyvin.md) | Pair-programming e continuidade de sessão | Retomar feature interrompida | continuação do trabalho |
|
|
35
37
|
| [@pair](./deyvin.md) | Alias de `@deyvin` | — | — |
|
|
36
38
|
| [@sheldon](./sheldon.md) | Análise técnica profunda, revisão de arquitetura | Decisões grandes, código legado | relatório de revisão |
|
|
@@ -52,7 +54,7 @@
|
|
|
52
54
|
| [@design-hybrid-forge](./design-hybrid-forge.md) | Combina dois design skills num híbrido | Quer visual que não existe nos padrões | novo design skill |
|
|
53
55
|
| [@orache](./orache.md) | Investigação de domínio e pesquisa estratégica | Antes de entrar num mercado novo | relatório de domínio |
|
|
54
56
|
| [@copywriter](./copywriter.md) | Copy de conversão: landing pages, emails | Quando precisa de texto que converte | copy entregável |
|
|
55
|
-
| [@discovery-design-doc](./discovery-design-doc.md) |
|
|
57
|
+
| [@discovery-design-doc](./discovery-design-doc.md) | Consolida discovery, readiness e design doc | Escopo vago ou etapa pré-dev SMALL/MEDIUM | `design-doc*.md` + `readiness*.md` |
|
|
56
58
|
|
|
57
59
|
---
|
|
58
60
|
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# @briefing-refiner — Revisa e refina um briefing antes do PRD
|
|
2
|
+
|
|
3
|
+
> **Para quem é:** quem já tem um briefing gerado pelo `@briefing` e quer revisá-lo, anotar e refinar antes de comprometer um PRD.
|
|
4
|
+
> **Tempo de leitura:** 4 min.
|
|
5
|
+
> **O que você vai sair sabendo:**
|
|
6
|
+
> - O que o `@briefing-refiner` faz e onde ele entra no fluxo.
|
|
7
|
+
> - Como funciona a superfície de revisão local em HTML e por que o feedback é estruturado (JSON), não o DOM.
|
|
8
|
+
|
|
9
|
+
## Para que serve
|
|
10
|
+
|
|
11
|
+
Entre o briefing gerado e o PRD há uma etapa que costuma ser pulada: **revisar o briefing com olhar crítico**. Ambiguidades, redundâncias, decisões faltando, riscos vagos e gaps de impacto de implementação passam direto para o `@product` e viram dívida no PRD.
|
|
12
|
+
|
|
13
|
+
O `@briefing-refiner` preenche essa etapa. Ele audita um briefing existente, gera uma **superfície de revisão local** (`review.html`) onde você edita cada seção, marca status e deixa notas, e depois aplica de volta ao briefing **apenas o feedback estruturado que você confirmar** — preservando o contrato do briefing (todas as seções obrigatórias).
|
|
14
|
+
|
|
15
|
+
É o complemento do [`@briefing`](./briefing.md): um gera, o outro refina.
|
|
16
|
+
|
|
17
|
+
## Quando invocar
|
|
18
|
+
|
|
19
|
+
- Você já tem um briefing em `.aioson/briefings/{slug}/briefings.md` e quer revisá-lo antes do PRD.
|
|
20
|
+
- O briefing está `draft`, ou `approved` mas ainda **sem PRD gerado** (`prd_generated: null`).
|
|
21
|
+
- Quer registrar comentários, pedir mudanças por seção ou marcar bloqueios antes de seguir para `@product`.
|
|
22
|
+
|
|
23
|
+
## Quando NÃO invocar
|
|
24
|
+
|
|
25
|
+
- Ainda não existe briefing — vá primeiro para [`@briefing`](./briefing.md).
|
|
26
|
+
- O briefing já gerou PRD (`prd_generated` preenchido) — refinar exigiria uma rota nova de PRD/enrichment, fora deste agente.
|
|
27
|
+
- A ideia mudou tanto que vale regerar do zero — volte ao `@briefing`.
|
|
28
|
+
|
|
29
|
+
## Dois modos de operação
|
|
30
|
+
|
|
31
|
+
### 1. Gerar revisão
|
|
32
|
+
|
|
33
|
+
Quando ainda não há feedback pendente. O agente audita o briefing e escreve a superfície de revisão:
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
Você > @briefing-refiner
|
|
37
|
+
|
|
38
|
+
@briefing-refiner > Briefing refinável encontrado: marketplace-v1 (draft).
|
|
39
|
+
|
|
40
|
+
Auditando seções... ambiguidades: 3, redundâncias: 1,
|
|
41
|
+
gaps de implementação: 2, riscos vagos: 1.
|
|
42
|
+
|
|
43
|
+
Gerei a revisão:
|
|
44
|
+
- .aioson/briefings/marketplace-v1/review.html
|
|
45
|
+
- .aioson/briefings/marketplace-v1/refinement-feedback.json
|
|
46
|
+
- .aioson/briefings/marketplace-v1/refinement-report.md
|
|
47
|
+
|
|
48
|
+
Abra o review.html, edite as seções, marque status/notas,
|
|
49
|
+
salve/exporte o refinement-feedback.json e me reative.
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### 2. Aplicar feedback pendente
|
|
53
|
+
|
|
54
|
+
Quando existe um `refinement-feedback.json` com mudanças não aplicadas. O agente valida, resume o que vai mudar e **pede confirmação explícita** antes de tocar o briefing:
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
Você > @briefing-refiner
|
|
58
|
+
|
|
59
|
+
@briefing-refiner > Feedback pendente em marketplace-v1:
|
|
60
|
+
- 4 seções com mudança aceita
|
|
61
|
+
- 2 comentários não resolvidos
|
|
62
|
+
- 1 item bloqueante (modelo de comissão)
|
|
63
|
+
|
|
64
|
+
Aplico as 4 mudanças confirmadas? (o item bloqueante
|
|
65
|
+
impede o handoff para @product até ser resolvido)
|
|
66
|
+
Você > Sim.
|
|
67
|
+
|
|
68
|
+
@briefing-refiner > Aplicado. Como o briefing estava `approved` sem PRD,
|
|
69
|
+
voltei para `draft`. Relatório: refinement-report.md.
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Se você recusar, o `briefings.md` fica intacto e as mudanças puladas são registradas no relatório.
|
|
73
|
+
|
|
74
|
+
## A superfície de revisão (review.html)
|
|
75
|
+
|
|
76
|
+
O diferencial deste agente. O `review.html` é **estático, local e self-contained**:
|
|
77
|
+
|
|
78
|
+
- sem servidor, sem scripts ou serviços externos;
|
|
79
|
+
- seções editáveis em texto puro, com layout denso de revisão;
|
|
80
|
+
- controles de status por seção: `unchanged`, `accepted`, `change_requested`, `remove_requested`, `blocked`;
|
|
81
|
+
- notas/comentários por seção e um resumo do que será feito, do que é incerto e do que bloqueia o PRD;
|
|
82
|
+
- filtros por ambiguidade, redundância, gap, risco, decisão pendente e sugestão de escopo;
|
|
83
|
+
- **exportar/baixar/copiar o JSON sempre disponível** (a File System Access API é só um plus opcional, após ação explícita).
|
|
84
|
+
|
|
85
|
+
> **Por que JSON e não o HTML editado?** O agente nunca trata o DOM/HTML editado como feedback canônico — só o `refinement-feedback.json` estruturado. Isso evita aplicar mudanças inferidas e mantém o processo auditável.
|
|
86
|
+
|
|
87
|
+
## Saídas em disco
|
|
88
|
+
|
|
89
|
+
| Arquivo | O que contém |
|
|
90
|
+
|---|---|
|
|
91
|
+
| `.aioson/briefings/{slug}/review.html` | Superfície de revisão local e editável |
|
|
92
|
+
| `.aioson/briefings/{slug}/refinement-feedback.json` | Feedback estruturado (a única fonte que o agente aplica) |
|
|
93
|
+
| `.aioson/briefings/{slug}/refinement-report.md` | Relatório do que foi aplicado, pulado ou bloqueado |
|
|
94
|
+
| `.aioson/briefings/{slug}/briefings.md` | Atualizado **apenas** após confirmação |
|
|
95
|
+
| `.aioson/briefings/config.md` | Índice/registro de briefings atualizado |
|
|
96
|
+
|
|
97
|
+
## Como ele lê seu projeto
|
|
98
|
+
|
|
99
|
+
1. `.aioson/config.md`
|
|
100
|
+
2. `.aioson/context/project.context.md`
|
|
101
|
+
3. `.aioson/briefings/config.md` — resolve o slug refinável (se ausente, roteia para `@briefing`).
|
|
102
|
+
4. `.aioson/briefings/{slug}/briefings.md` — lido antes de escrever qualquer artefato de revisão.
|
|
103
|
+
|
|
104
|
+
## Limites importantes (hard constraints)
|
|
105
|
+
|
|
106
|
+
- Nunca cria ou edita `prd*.md`.
|
|
107
|
+
- Nunca aprova um briefing automaticamente.
|
|
108
|
+
- Nunca roteia para `@product` enquanto houver itens bloqueantes.
|
|
109
|
+
- Nunca trata HTML/DOM editado como feedback canônico — só o JSON estruturado.
|
|
110
|
+
- Nunca descarta seções obrigatórias do briefing.
|
|
111
|
+
- Em V1, não há comando CLI dedicado de refinement — tudo passa pelo agente.
|
|
112
|
+
|
|
113
|
+
## Handoff típico
|
|
114
|
+
|
|
115
|
+
- **Vem de:** [`@briefing`](./briefing.md) (briefing gerado) ou de você, retomando uma revisão.
|
|
116
|
+
- **Vai para:** depois de aplicar as mudanças e sem bloqueios → `aioson briefing:approve . --slug={slug}` → [`@product`](./product.md). Se sobrar bloqueio, você resolve no review e reativa o `@briefing-refiner`.
|
|
117
|
+
|
|
118
|
+
## Próximo passo
|
|
119
|
+
|
|
120
|
+
- Gerar o briefing antes de refinar → [@briefing](./briefing.md)
|
|
121
|
+
- Fluxo completo até o PRD → [Da ideia ao PRD via briefing](../3-receitas/da-ideia-ao-prd-via-briefing.md)
|
|
122
|
+
- Termos como "gap" e "PRD" → [Glossário](../1-entender/glossario.md)
|