arey-pi 0.3.0 → 0.4.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/README.md +8 -1
- package/agents/README.md +35 -6
- package/agents/tech-lead.md +15 -7
- package/assets/arey-pi-logo.png +0 -0
- package/docs/adoption.md +218 -0
- package/docs/pi-subagents.md +292 -0
- package/docs/templates.md +146 -0
- package/docs/workflow-diagram.md +92 -0
- package/docs/workflows.md +213 -0
- package/extensions/arey-pi/core.ts +4 -4
- package/package.json +4 -2
- package/templates/AGENTS.md +127 -1
- package/templates/adr.md +82 -13
- package/templates/database.dbml +46 -3
- package/templates/feature.feature +35 -14
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
# Arey Pi Templates
|
|
2
|
+
|
|
3
|
+
Arey Pi ships starter templates used by `/arey-bootstrap`.
|
|
4
|
+
|
|
5
|
+
Templates are intentionally useful but generic.
|
|
6
|
+
They should be edited after bootstrap to reflect the real project.
|
|
7
|
+
|
|
8
|
+
## Template List
|
|
9
|
+
|
|
10
|
+
```txt
|
|
11
|
+
templates/AGENTS.md
|
|
12
|
+
templates/adr.md
|
|
13
|
+
templates/feature.feature
|
|
14
|
+
templates/database.dbml
|
|
15
|
+
templates/glossary.md
|
|
16
|
+
templates/project-readiness-report.md
|
|
17
|
+
templates/specs-readme.md
|
|
18
|
+
templates/features-readme.md
|
|
19
|
+
templates/database-readme.md
|
|
20
|
+
templates/architecture-readme.md
|
|
21
|
+
templates/decisions-readme.md
|
|
22
|
+
templates/docs-readme.md
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Bootstrap Targets
|
|
26
|
+
|
|
27
|
+
`/arey-bootstrap` maps templates to project files:
|
|
28
|
+
|
|
29
|
+
```txt
|
|
30
|
+
templates/AGENTS.md → AGENTS.md
|
|
31
|
+
templates/specs-readme.md → specs/README.md
|
|
32
|
+
templates/features-readme.md → specs/features/README.md
|
|
33
|
+
templates/feature.feature → specs/features/example.feature
|
|
34
|
+
templates/database-readme.md → specs/database/README.md
|
|
35
|
+
templates/database.dbml → specs/database/schema.dbml
|
|
36
|
+
templates/architecture-readme.md → specs/architecture/README.md
|
|
37
|
+
templates/decisions-readme.md → specs/decisions/README.md
|
|
38
|
+
templates/adr.md → specs/decisions/0001-record-architecture-decision.md
|
|
39
|
+
templates/glossary.md → specs/glossary.md
|
|
40
|
+
templates/docs-readme.md → docs/README.md
|
|
41
|
+
templates/project-readiness-report.md → docs/project-readiness-report.md
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Existing files are not overwritten unless `--force` is used.
|
|
45
|
+
|
|
46
|
+
## `AGENTS.md`
|
|
47
|
+
|
|
48
|
+
The `AGENTS.md` template provides project-level AI harness instructions.
|
|
49
|
+
|
|
50
|
+
After bootstrap,
|
|
51
|
+
replace placeholders with real project commands:
|
|
52
|
+
|
|
53
|
+
- dependency installation;
|
|
54
|
+
- formatting;
|
|
55
|
+
- lint/static analysis;
|
|
56
|
+
- typecheck;
|
|
57
|
+
- tests;
|
|
58
|
+
- full validation;
|
|
59
|
+
- database validation when applicable.
|
|
60
|
+
|
|
61
|
+
Add local architecture,
|
|
62
|
+
safety,
|
|
63
|
+
and operational constraints.
|
|
64
|
+
|
|
65
|
+
Use nested `AGENTS.md` files for subtrees that need local instructions.
|
|
66
|
+
|
|
67
|
+
## `feature.feature`
|
|
68
|
+
|
|
69
|
+
The Gherkin template includes:
|
|
70
|
+
|
|
71
|
+
- tags;
|
|
72
|
+
- a feature description;
|
|
73
|
+
- actor/outcome framing;
|
|
74
|
+
- a rule section;
|
|
75
|
+
- background context;
|
|
76
|
+
- happy path;
|
|
77
|
+
- scenario outline for validation or boundary cases;
|
|
78
|
+
- regression scenario.
|
|
79
|
+
|
|
80
|
+
Delete sections that are not useful for the real behaviour.
|
|
81
|
+
Do not keep placeholder scenarios as fake coverage.
|
|
82
|
+
|
|
83
|
+
## `database.dbml`
|
|
84
|
+
|
|
85
|
+
The DBML template demonstrates:
|
|
86
|
+
|
|
87
|
+
- project metadata;
|
|
88
|
+
- enum modelling;
|
|
89
|
+
- primary keys;
|
|
90
|
+
- unique constraints;
|
|
91
|
+
- indexes;
|
|
92
|
+
- foreign-key relationships;
|
|
93
|
+
- JSON payload notes;
|
|
94
|
+
- table notes.
|
|
95
|
+
|
|
96
|
+
Replace the example schema with the canonical project schema.
|
|
97
|
+
Do not leave example tables in a real project unless they are clearly marked as placeholders and not used as canonical truth.
|
|
98
|
+
|
|
99
|
+
## `adr.md`
|
|
100
|
+
|
|
101
|
+
The ADR template is decision-focused.
|
|
102
|
+
|
|
103
|
+
Use it for significant technical decisions,
|
|
104
|
+
not routine implementation details.
|
|
105
|
+
|
|
106
|
+
A good ADR should include:
|
|
107
|
+
|
|
108
|
+
- status;
|
|
109
|
+
- date;
|
|
110
|
+
- context;
|
|
111
|
+
- decision drivers;
|
|
112
|
+
- options considered;
|
|
113
|
+
- the chosen decision;
|
|
114
|
+
- consequences;
|
|
115
|
+
- validation;
|
|
116
|
+
- supersession and relationship metadata;
|
|
117
|
+
- revisit conditions.
|
|
118
|
+
|
|
119
|
+
## `glossary.md`
|
|
120
|
+
|
|
121
|
+
The glossary template is for durable domain language.
|
|
122
|
+
|
|
123
|
+
Add terms when names or meanings matter to behaviour,
|
|
124
|
+
specs,
|
|
125
|
+
architecture,
|
|
126
|
+
or user-facing concepts.
|
|
127
|
+
|
|
128
|
+
Do not use it as a dumping ground for obvious technical vocabulary.
|
|
129
|
+
|
|
130
|
+
## `project-readiness-report.md`
|
|
131
|
+
|
|
132
|
+
The readiness report template captures Arey Pi assessment output.
|
|
133
|
+
|
|
134
|
+
Use it when you want a persistent audit snapshot under `docs/`.
|
|
135
|
+
For routine checks,
|
|
136
|
+
`/arey-assess` can report directly in the session.
|
|
137
|
+
|
|
138
|
+
## Template Maintenance
|
|
139
|
+
|
|
140
|
+
When templates change,
|
|
141
|
+
update:
|
|
142
|
+
|
|
143
|
+
- `docs/templates.md`;
|
|
144
|
+
- `docs/commands.md` if bootstrap behaviour changes;
|
|
145
|
+
- `README.md` if user-facing package behaviour changes;
|
|
146
|
+
- extension tests if scaffold targets change.
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# Arey Pi Workflow Diagram
|
|
2
|
+
|
|
3
|
+
This diagram shows the intended Arey Pi delivery workflow.
|
|
4
|
+
|
|
5
|
+
The parent Pi session owns orchestration.
|
|
6
|
+
Specialist subagents contribute bounded evidence,
|
|
7
|
+
but the parent decides when to continue,
|
|
8
|
+
ask the user,
|
|
9
|
+
repair,
|
|
10
|
+
or finalise.
|
|
11
|
+
|
|
12
|
+
```mermaid
|
|
13
|
+
graph TD
|
|
14
|
+
A["User request"] --> B["Parent acts as Arey Pi tech lead"]
|
|
15
|
+
B --> C{"Classify change mode"}
|
|
16
|
+
|
|
17
|
+
C -->|"Assessment"| EVAL["Project evaluator"]
|
|
18
|
+
EVAL --> EVALREPORT["Readiness report and improvement plan"]
|
|
19
|
+
|
|
20
|
+
C -->|"Bootstrap"| BOOT["arey-bootstrap"]
|
|
21
|
+
BOOT --> HARNESS["AGENTS.md, specs, docs, templates, project agents"]
|
|
22
|
+
HARNESS --> DOCTOR["arey-doctor and subagents-doctor"]
|
|
23
|
+
|
|
24
|
+
C -->|"Direct change"| DIRECT{"Specs, tests, docs unaffected?"}
|
|
25
|
+
DIRECT -->|"No or unclear"| SPEC
|
|
26
|
+
DIRECT -->|"Yes, justified"| IMPL
|
|
27
|
+
|
|
28
|
+
C -->|"Feature, bugfix, rebuild, risky change"| CONTEXT{"Enough context?"}
|
|
29
|
+
CONTEXT -->|"No"| RECON["Scout, context-builder, or planner"]
|
|
30
|
+
RECON --> SPEC["Spec author"]
|
|
31
|
+
CONTEXT -->|"Yes"| SPEC
|
|
32
|
+
|
|
33
|
+
SPEC --> SPECCHECK{"Canonical intent clear?"}
|
|
34
|
+
SPECCHECK -->|"No"| ASK["Ask user or resolve conflict"]
|
|
35
|
+
ASK --> SPEC
|
|
36
|
+
SPECCHECK -->|"Yes"| IMPL["TDD implementer"]
|
|
37
|
+
|
|
38
|
+
IMPL --> RED["Red: failing behaviour or regression test"]
|
|
39
|
+
RED --> GREEN["Green: minimal high-quality implementation"]
|
|
40
|
+
GREEN --> REFACTOR["Refactor while tests stay green"]
|
|
41
|
+
REFACTOR --> VALIDATE["Run validation and quality tooling"]
|
|
42
|
+
|
|
43
|
+
VALIDATE --> SYNC["Spec syncer"]
|
|
44
|
+
SYNC --> SYNCCHECK{"Specs and docs aligned?"}
|
|
45
|
+
SYNCCHECK -->|"No"| REPAIR["Repair sync gaps"]
|
|
46
|
+
REPAIR --> VALIDATE
|
|
47
|
+
SYNCCHECK -->|"Yes"| REVIEWGATE{"Risk warrants review?"}
|
|
48
|
+
|
|
49
|
+
REVIEWGATE -->|"Yes"| REVIEW["Fresh reviewers or engineering reviewer"]
|
|
50
|
+
REVIEW --> FINDINGS{"Blocking findings?"}
|
|
51
|
+
FINDINGS -->|"Yes"| FIX["Single writer applies accepted fixes"]
|
|
52
|
+
FIX --> VALIDATE
|
|
53
|
+
FINDINGS -->|"No"| DONE
|
|
54
|
+
|
|
55
|
+
REVIEWGATE -->|"No"| DONE["Parent finalises"]
|
|
56
|
+
|
|
57
|
+
DONE --> REPORT["Done summary with specs, TDD, validation, sync, quality, commits, and risks"]
|
|
58
|
+
|
|
59
|
+
ORACLE["Oracle second opinion"] -.-> B
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Safety Rules
|
|
63
|
+
|
|
64
|
+
- The parent session owns orchestration.
|
|
65
|
+
- Use fresh reviewers for independent adversarial review.
|
|
66
|
+
- Use `oracle` when the decision itself is risky.
|
|
67
|
+
- Use `scout`,
|
|
68
|
+
`context-builder`,
|
|
69
|
+
or `planner` before large changes when context is weak.
|
|
70
|
+
- Keep one writer in the active worktree at a time.
|
|
71
|
+
- Parallel subagents are best for read-only review,
|
|
72
|
+
planning,
|
|
73
|
+
scouting,
|
|
74
|
+
and audits.
|
|
75
|
+
- Chains are best for repeatable sequential workflows where one step's output feeds the next.
|
|
76
|
+
|
|
77
|
+
## Required Completion Evidence
|
|
78
|
+
|
|
79
|
+
```txt
|
|
80
|
+
Done summary:
|
|
81
|
+
- Behaviour/spec impact:
|
|
82
|
+
- Tests/TDD, including test location:
|
|
83
|
+
- Validation:
|
|
84
|
+
- Quality tooling:
|
|
85
|
+
- Spec sync:
|
|
86
|
+
- Documentation sync:
|
|
87
|
+
- Architecture/code quality:
|
|
88
|
+
- Architecture/ADR/glossary:
|
|
89
|
+
- Database/DBML:
|
|
90
|
+
- Commits:
|
|
91
|
+
- Residual risks:
|
|
92
|
+
```
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
# Arey Pi Workflows
|
|
2
|
+
|
|
3
|
+
See `docs/workflow-diagram.md` for a visual overview of the framework workflow.
|
|
4
|
+
|
|
5
|
+
Arey Pi workflows can be started with slash commands or natural language.
|
|
6
|
+
|
|
7
|
+
The slash commands make the intended process explicit.
|
|
8
|
+
Natural language should still follow the same rules when the user asks to work following Arey Pi.
|
|
9
|
+
|
|
10
|
+
## Feature Workflow
|
|
11
|
+
|
|
12
|
+
Command:
|
|
13
|
+
|
|
14
|
+
```txt
|
|
15
|
+
/arey-feature <feature request>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Expected flow:
|
|
19
|
+
|
|
20
|
+
```txt
|
|
21
|
+
parent tech lead → arey-pi.spec-author → arey-pi.tdd-implementer → arey-pi.spec-syncer → fresh reviewers → parent finalisation
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
For broad or risky changes,
|
|
25
|
+
use builtin `scout`,
|
|
26
|
+
`context-builder`,
|
|
27
|
+
or `planner` before the Arey Pi delivery flow.
|
|
28
|
+
|
|
29
|
+
Use this for new behaviour or meaningful behaviour changes.
|
|
30
|
+
|
|
31
|
+
The workflow should:
|
|
32
|
+
|
|
33
|
+
1. clarify scope and change mode;
|
|
34
|
+
2. confirm or author canonical Gherkin specs;
|
|
35
|
+
3. add a failing test in a dedicated test directory;
|
|
36
|
+
4. implement the smallest high-quality production change;
|
|
37
|
+
5. refactor while tests remain green;
|
|
38
|
+
6. synchronise specs and documentation;
|
|
39
|
+
7. review engineering quality when risk warrants it;
|
|
40
|
+
8. report evidence and residual risks.
|
|
41
|
+
|
|
42
|
+
## Bugfix Workflow
|
|
43
|
+
|
|
44
|
+
Command:
|
|
45
|
+
|
|
46
|
+
```txt
|
|
47
|
+
/arey-bugfix <bug description>
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Use this when behaviour is wrong.
|
|
51
|
+
|
|
52
|
+
Expected flow:
|
|
53
|
+
|
|
54
|
+
```txt
|
|
55
|
+
reproduce with failing regression test → fix → validate → sync → review
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Bug fixes require a regression test.
|
|
59
|
+
The regression test should fail for the bug before the fix,
|
|
60
|
+
and it should live outside production source directories by default.
|
|
61
|
+
|
|
62
|
+
## Sync Workflow
|
|
63
|
+
|
|
64
|
+
Command:
|
|
65
|
+
|
|
66
|
+
```txt
|
|
67
|
+
/arey-sync [scope]
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Use this before completing non-trivial work or when drift is suspected.
|
|
71
|
+
|
|
72
|
+
The sync check covers:
|
|
73
|
+
|
|
74
|
+
- Gherkin specs;
|
|
75
|
+
- tests;
|
|
76
|
+
- code;
|
|
77
|
+
- DBML;
|
|
78
|
+
- ADRs;
|
|
79
|
+
- glossary;
|
|
80
|
+
- architecture docs;
|
|
81
|
+
- README files;
|
|
82
|
+
- `docs/`;
|
|
83
|
+
- `AGENTS.md`;
|
|
84
|
+
- skills,
|
|
85
|
+
prompts,
|
|
86
|
+
rules,
|
|
87
|
+
agents,
|
|
88
|
+
commands,
|
|
89
|
+
tooling instructions,
|
|
90
|
+
examples,
|
|
91
|
+
and templates.
|
|
92
|
+
|
|
93
|
+
The final result should include both spec and documentation status:
|
|
94
|
+
|
|
95
|
+
```txt
|
|
96
|
+
Specs updated
|
|
97
|
+
Docs updated
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
or justified unaffected statuses.
|
|
101
|
+
|
|
102
|
+
## Review Workflow
|
|
103
|
+
|
|
104
|
+
Command:
|
|
105
|
+
|
|
106
|
+
```txt
|
|
107
|
+
/arey-review [scope]
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
Use this for adversarial engineering review.
|
|
111
|
+
|
|
112
|
+
Review should cover:
|
|
113
|
+
|
|
114
|
+
- architecture and code quality;
|
|
115
|
+
- test quality and test location;
|
|
116
|
+
- tooling and validation evidence;
|
|
117
|
+
- security and privacy;
|
|
118
|
+
- reliability and operability;
|
|
119
|
+
- maintainability;
|
|
120
|
+
- generated-code quality;
|
|
121
|
+
- spec,
|
|
122
|
+
ADR,
|
|
123
|
+
DBML,
|
|
124
|
+
glossary,
|
|
125
|
+
and documentation sync concerns.
|
|
126
|
+
|
|
127
|
+
Findings should be classified by severity.
|
|
128
|
+
|
|
129
|
+
## Assessment Workflow
|
|
130
|
+
|
|
131
|
+
Command:
|
|
132
|
+
|
|
133
|
+
```txt
|
|
134
|
+
/arey-assess [scope]
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
Use this to assess project readiness.
|
|
138
|
+
|
|
139
|
+
The assessment is read-only by default.
|
|
140
|
+
It should produce scores,
|
|
141
|
+
evidence,
|
|
142
|
+
blockers,
|
|
143
|
+
quick wins,
|
|
144
|
+
and a prioritised improvement plan.
|
|
145
|
+
|
|
146
|
+
## Bootstrap Workflow
|
|
147
|
+
|
|
148
|
+
Command:
|
|
149
|
+
|
|
150
|
+
```txt
|
|
151
|
+
/arey-bootstrap
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
With no flags,
|
|
155
|
+
bootstrap installs project-local Arey Pi agents and creates starter harness files where missing.
|
|
156
|
+
|
|
157
|
+
Use selective flags only when needed:
|
|
158
|
+
|
|
159
|
+
```txt
|
|
160
|
+
/arey-bootstrap --agentsmd
|
|
161
|
+
/arey-bootstrap --specs
|
|
162
|
+
/arey-bootstrap --docs
|
|
163
|
+
/arey-bootstrap --force
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
## Subagent Orchestration Pattern
|
|
167
|
+
|
|
168
|
+
Keep orchestration in the parent Pi session.
|
|
169
|
+
Child agents should receive bounded tasks and should not launch their own subagent workflows unless explicitly assigned a bounded fanout job.
|
|
170
|
+
|
|
171
|
+
Use fresh-context reviewers for independent review.
|
|
172
|
+
Use `oracle` when a decision needs a second opinion before implementation.
|
|
173
|
+
Use one writer in the active worktree at a time.
|
|
174
|
+
|
|
175
|
+
For long-running work,
|
|
176
|
+
background subagents are appropriate.
|
|
177
|
+
If the parent has no useful independent work,
|
|
178
|
+
end the turn and wait for completion rather than polling repeatedly.
|
|
179
|
+
|
|
180
|
+
See `docs/pi-subagents.md` for detailed guidance.
|
|
181
|
+
|
|
182
|
+
## Natural Language Workflow
|
|
183
|
+
|
|
184
|
+
Users do not need to memorise commands.
|
|
185
|
+
|
|
186
|
+
This should work:
|
|
187
|
+
|
|
188
|
+
```txt
|
|
189
|
+
Implement password reset following Arey Pi.
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
The parent agent should act as tech lead,
|
|
193
|
+
select the appropriate workflow,
|
|
194
|
+
and use specialist subagents when available.
|
|
195
|
+
|
|
196
|
+
## Evidence Standard
|
|
197
|
+
|
|
198
|
+
Every non-trivial workflow should finish with:
|
|
199
|
+
|
|
200
|
+
```txt
|
|
201
|
+
Done summary:
|
|
202
|
+
- Behaviour/spec impact:
|
|
203
|
+
- Tests/TDD, including test location:
|
|
204
|
+
- Validation:
|
|
205
|
+
- Quality tooling:
|
|
206
|
+
- Spec sync:
|
|
207
|
+
- Documentation sync:
|
|
208
|
+
- Architecture/code quality:
|
|
209
|
+
- Architecture/ADR/glossary:
|
|
210
|
+
- Database/DBML:
|
|
211
|
+
- Commits:
|
|
212
|
+
- Residual risks:
|
|
213
|
+
```
|
|
@@ -60,17 +60,17 @@ export type WorkflowKind = "feature" | "bugfix" | "sync" | "review" | "assess" |
|
|
|
60
60
|
|
|
61
61
|
export function workflowMessage(kind: WorkflowKind, args: string): string {
|
|
62
62
|
const target = args.trim() || "the current repository/task";
|
|
63
|
-
const common = `Act as the Arey Pi tech lead. Use pi-subagents when available and appropriate. Keep orchestration authority in the parent session. Follow Arey Pi rules, preserve TDD, and report evidence clearly.`;
|
|
63
|
+
const common = `Act as the Arey Pi tech lead. Use pi-subagents when available and appropriate. Keep orchestration authority in the parent session, give child agents bounded tasks, and keep one writer in the active worktree at a time. Follow Arey Pi rules, preserve TDD, and report evidence clearly.`;
|
|
64
64
|
|
|
65
65
|
switch (kind) {
|
|
66
66
|
case "feature":
|
|
67
|
-
return `${common}\n\nRun the Arey Pi feature workflow for: ${target}\n\nExpected flow: spec-author for canonical specs, tdd-implementer for Red-Green-Refactor, spec-syncer for final alignment, and engineering-reviewer for adversarial quality review when risk warrants it.`;
|
|
67
|
+
return `${common}\n\nRun the Arey Pi feature workflow for: ${target}\n\nExpected flow: arey-pi.spec-author for canonical specs, arey-pi.tdd-implementer for Red-Green-Refactor, arey-pi.spec-syncer for final alignment, and fresh reviewers or arey-pi.engineering-reviewer for adversarial quality review when risk warrants it. Use scout/context-builder/planner first if the codebase context is not clear.`;
|
|
68
68
|
case "bugfix":
|
|
69
|
-
return `${common}\n\nRun the Arey Pi bugfix workflow for: ${target}\n\nStart with a regression test that fails for the bug,
|
|
69
|
+
return `${common}\n\nRun the Arey Pi bugfix workflow for: ${target}\n\nStart with a regression test that fails for the bug, keep tests outside production source directories by default, implement the minimal high-quality fix, synchronise specs and docs, and review engineering quality.`;
|
|
70
70
|
case "sync":
|
|
71
71
|
return `${common}\n\nRun Arey Pi spec and documentation sync for: ${target}\n\nVerify Gherkin, tests, code, DBML, ADRs, glossary, architecture docs, README files, docs, AGENTS.md, skills, prompts, rules, agents, commands, and tooling instructions. End with both a spec status and a documentation status.`;
|
|
72
72
|
case "review":
|
|
73
|
-
return `${common}\n\nRun an Arey Pi engineering review for: ${target}\n\
|
|
73
|
+
return `${common}\n\nRun an Arey Pi engineering review for: ${target}\n\nPrefer fresh-context review. Review architecture, code quality, test quality and location, quality tooling, security, privacy, operability, maintainability, and spec/ADR/DBML/documentation concerns. Classify findings by severity.`;
|
|
74
74
|
case "assess":
|
|
75
75
|
return `${common}\n\nAssess this repository against Arey Pi Project Readiness. Audit only by default. Produce scores, evidence, blockers, quick wins, and a prioritised improvement plan.`;
|
|
76
76
|
default:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "arey-pi",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "A Pi package for canonical Gherkin specs, non-negotiable TDD, spec synchronisation, AI harness readiness, and senior-quality software delivery.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Alejandro Rey Leyva",
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
],
|
|
25
25
|
"files": [
|
|
26
26
|
"agents/",
|
|
27
|
+
"assets/",
|
|
27
28
|
"extensions/",
|
|
28
29
|
"docs/",
|
|
29
30
|
"skills/",
|
|
@@ -42,7 +43,8 @@
|
|
|
42
43
|
],
|
|
43
44
|
"prompts": [
|
|
44
45
|
"./prompts"
|
|
45
|
-
]
|
|
46
|
+
],
|
|
47
|
+
"image": "https://cdn.jsdelivr.net/gh/alereyleyva/arey-pi@main/assets/arey-pi-logo.png"
|
|
46
48
|
},
|
|
47
49
|
"scripts": {
|
|
48
50
|
"format": "biome format --write .",
|
package/templates/AGENTS.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
This project uses Arey Pi.
|
|
4
4
|
|
|
5
|
-
## Delivery
|
|
5
|
+
## Delivery Rules
|
|
6
6
|
|
|
7
7
|
- Treat canonical specs as the source of truth.
|
|
8
8
|
- Use Gherkin for behaviour specs.
|
|
@@ -14,8 +14,101 @@ This project uses Arey Pi.
|
|
|
14
14
|
- Run formatter, lint/static analysis, typecheck, tests, and relevant dynamic analysis where available.
|
|
15
15
|
- Use incremental Conventional Commits for meaningful steps.
|
|
16
16
|
|
|
17
|
+
## Project Commands
|
|
18
|
+
|
|
19
|
+
Document the project-specific commands here.
|
|
20
|
+
Agents should run the narrowest relevant validation first,
|
|
21
|
+
then the composed project check before completion.
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Install dependencies
|
|
25
|
+
<package-manager> install
|
|
26
|
+
|
|
27
|
+
# Format
|
|
28
|
+
<package-manager> run format
|
|
29
|
+
|
|
30
|
+
# Lint/static analysis
|
|
31
|
+
<package-manager> run lint
|
|
32
|
+
|
|
33
|
+
# Typecheck
|
|
34
|
+
<package-manager> run typecheck
|
|
35
|
+
|
|
36
|
+
# Test
|
|
37
|
+
<package-manager> run test
|
|
38
|
+
|
|
39
|
+
# Full validation
|
|
40
|
+
<package-manager> run check
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Specs and Documentation
|
|
44
|
+
|
|
45
|
+
Canonical specs should live under:
|
|
46
|
+
|
|
47
|
+
```txt
|
|
48
|
+
specs/features/
|
|
49
|
+
specs/database/
|
|
50
|
+
specs/architecture/
|
|
51
|
+
specs/decisions/
|
|
52
|
+
specs/glossary.md
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Project-facing documentation should live under:
|
|
56
|
+
|
|
57
|
+
```txt
|
|
58
|
+
docs/
|
|
59
|
+
README.md
|
|
60
|
+
AGENTS.md
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Every completed change should report:
|
|
64
|
+
|
|
65
|
+
```txt
|
|
66
|
+
Specs updated
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
or:
|
|
70
|
+
|
|
71
|
+
```txt
|
|
72
|
+
Specs unaffected: <reason>
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
and:
|
|
76
|
+
|
|
77
|
+
```txt
|
|
78
|
+
Docs updated
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
or:
|
|
82
|
+
|
|
83
|
+
```txt
|
|
84
|
+
Docs unaffected: <reason>
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Test Layout
|
|
88
|
+
|
|
89
|
+
Keep tests outside production source directories by default.
|
|
90
|
+
|
|
91
|
+
Preferred examples:
|
|
92
|
+
|
|
93
|
+
```txt
|
|
94
|
+
src/domain/accounts/password-reset.ts
|
|
95
|
+
tests/domain/accounts/password-reset.test.ts
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Avoid creating colocated tests such as:
|
|
99
|
+
|
|
100
|
+
```txt
|
|
101
|
+
src/domain/accounts/password-reset.test.ts
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
unless this repository documents that convention explicitly.
|
|
105
|
+
|
|
17
106
|
## Subagents
|
|
18
107
|
|
|
108
|
+
Keep orchestration in the parent Pi session.
|
|
109
|
+
Child agents should receive concrete,
|
|
110
|
+
bounded tasks and should not launch their own subagent workflows unless explicitly assigned a bounded fanout job.
|
|
111
|
+
|
|
19
112
|
Project-local Arey Pi subagents live in:
|
|
20
113
|
|
|
21
114
|
```txt
|
|
@@ -23,3 +116,36 @@ Project-local Arey Pi subagents live in:
|
|
|
23
116
|
```
|
|
24
117
|
|
|
25
118
|
Use them through pi-subagents when available.
|
|
119
|
+
Run `/subagents-doctor` if subagent discovery or async coordination looks wrong.
|
|
120
|
+
|
|
121
|
+
Suggested Arey Pi roles:
|
|
122
|
+
|
|
123
|
+
- `arey-pi.tech-lead` for orchestration;
|
|
124
|
+
- `arey-pi.spec-author` for canonical specs;
|
|
125
|
+
- `arey-pi.tdd-implementer` for Red-Green-Refactor;
|
|
126
|
+
- `arey-pi.spec-syncer` for spec and documentation alignment;
|
|
127
|
+
- `arey-pi.engineering-reviewer` for adversarial quality review;
|
|
128
|
+
- `arey-pi.project-evaluator` for readiness assessment.
|
|
129
|
+
|
|
130
|
+
Useful builtin `pi-subagents` roles:
|
|
131
|
+
|
|
132
|
+
- `scout` for fast codebase reconnaissance;
|
|
133
|
+
- `context-builder` for stronger planning handoff context;
|
|
134
|
+
- `planner` for implementation plans;
|
|
135
|
+
- `worker` for approved generic implementation;
|
|
136
|
+
- `reviewer` for fresh-context reviews;
|
|
137
|
+
- `oracle` for risky decisions and second opinions;
|
|
138
|
+
- `researcher` for external evidence when web access is available.
|
|
139
|
+
|
|
140
|
+
Prefer fresh reviewers for independent review.
|
|
141
|
+
Use `oracle` when prior conversation context and decision drift matter.
|
|
142
|
+
Keep one writer in the active worktree at a time.
|
|
143
|
+
|
|
144
|
+
## Local Overrides
|
|
145
|
+
|
|
146
|
+
Add repository-specific technology,
|
|
147
|
+
architecture,
|
|
148
|
+
safety,
|
|
149
|
+
and validation instructions below.
|
|
150
|
+
|
|
151
|
+
Nested `AGENTS.md` files may override or extend these instructions for specific subtrees.
|