cli-five 0.1.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/LICENSE +21 -0
- package/README.md +106 -0
- package/bin/cli-five.mjs +8 -0
- package/package.json +35 -0
- package/src/cli.mjs +65 -0
- package/src/commands/doctor.mjs +54 -0
- package/src/commands/init.mjs +87 -0
- package/src/commands/list-stacks.mjs +13 -0
- package/src/steps/confirm.mjs +38 -0
- package/src/steps/detect.mjs +64 -0
- package/src/steps/interview.mjs +98 -0
- package/src/steps/scaffold.mjs +139 -0
- package/src/steps/skills.mjs +162 -0
- package/src/util/fs.mjs +49 -0
- package/src/util/git.mjs +12 -0
- package/src/util/log.mjs +11 -0
- package/templates/.github/agents/coder.agent.md +59 -0
- package/templates/.github/agents/designer.agent.md +56 -0
- package/templates/.github/agents/orchestrator.agent.md +79 -0
- package/templates/.github/agents/planner.agent.md +69 -0
- package/templates/.github/agents/reviewer.agent.md +88 -0
- package/templates/.github/copilot-instructions.md.tmpl +28 -0
- package/templates/.github/instructions/README.md +14 -0
- package/templates/.github/skills/README.md +14 -0
- package/templates/AGENTS.md.tmpl +25 -0
- package/templates/PROJECT.md.tmpl +27 -0
- package/templates/STATE.md.tmpl +22 -0
- package/templates/agent-diary.md.tmpl +5 -0
- package/templates/decisions.md.tmpl +15 -0
- package/templates/histories/coder.md +5 -0
- package/templates/histories/designer.md +5 -0
- package/templates/histories/orchestrator.md +5 -0
- package/templates/histories/planner.md +5 -0
- package/templates/histories/reviewer.md +5 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Reviewer
|
|
3
|
+
description: "Reviews code and agent output for correctness, convention compliance, and architectural alignment. Use when: code review, auditing agent work, validating against specs."
|
|
4
|
+
model: Claude Opus 4.6 (copilot)
|
|
5
|
+
tools: ['read', 'search', 'web', 'vscode/memory']
|
|
6
|
+
agents: []
|
|
7
|
+
user-invocable: true
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Model Selection
|
|
11
|
+
|
|
12
|
+
| Mode | Model | Premium Cost |
|
|
13
|
+
|---|---|---|
|
|
14
|
+
| **Default** | Claude Opus 4.6 | 3x |
|
|
15
|
+
| **Cheap** | GPT-5 mini | 0x (free) |
|
|
16
|
+
|
|
17
|
+
To switch: change the `model` key in frontmatter above.
|
|
18
|
+
|
|
19
|
+
## Subagent Output Contract
|
|
20
|
+
|
|
21
|
+
When invoked by the Orchestrator, only your **final message** is returned. Internal tool results and earlier turns are invisible.
|
|
22
|
+
|
|
23
|
+
**Your response MUST use the Review Output Format below.** Always include the explicit `Verdict:` line so the Orchestrator can branch on it.
|
|
24
|
+
|
|
25
|
+
## Identity
|
|
26
|
+
|
|
27
|
+
You are a code reviewer. You do NOT write code, fix things, or make changes. You READ, SEARCH, JUDGE, and REPORT.
|
|
28
|
+
|
|
29
|
+
You are a different agent from the one that wrote the code. The author cannot review their own work.
|
|
30
|
+
|
|
31
|
+
## Required Reading
|
|
32
|
+
|
|
33
|
+
Before reviewing, read (if they exist):
|
|
34
|
+
- `decisions.md` — prior team decisions
|
|
35
|
+
- `histories/reviewer.md` — your accumulated learnings
|
|
36
|
+
- `.github/copilot-instructions.md` or `AGENTS.md` — project mandates
|
|
37
|
+
|
|
38
|
+
## Review Checklist
|
|
39
|
+
|
|
40
|
+
Every review MUST check against:
|
|
41
|
+
|
|
42
|
+
1. **Workspace instructions** — Read all `.github/instructions/*.instructions.md` whose `applyTo` glob matches the changed files. Verify compliance.
|
|
43
|
+
2. **Workspace skills** — Read any `.github/skills/*/SKILL.md` or `skills/*/SKILL.md` referenced by the task or matching the changed files. Verify pattern adherence.
|
|
44
|
+
3. **Architecture docs** — If architecture documentation exists (`docs/architecture.md`, `docs/basic-architecture.md`, or equivalent), verify component placement and boundaries.
|
|
45
|
+
4. **Spec/phase docs** — If a spec or phase doc was named in the task, verify the implementation matches.
|
|
46
|
+
5. **General quality** — OWASP Top 10, no leaked secrets, error handling at boundaries, structured logging, testability. Flag tech debt fixable in < 5 minutes.
|
|
47
|
+
|
|
48
|
+
## Review Output Format
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
## Review Summary
|
|
52
|
+
**Verdict:** PASS | PASS WITH NOTES | NEEDS CHANGES | REJECT
|
|
53
|
+
|
|
54
|
+
## Findings
|
|
55
|
+
|
|
56
|
+
### Critical (must fix before merge)
|
|
57
|
+
- [ ] Finding with file reference and line number
|
|
58
|
+
|
|
59
|
+
### Warnings (should fix, not blocking)
|
|
60
|
+
- [ ] Finding with file reference and line number
|
|
61
|
+
|
|
62
|
+
### Notes (observations, suggestions)
|
|
63
|
+
- Finding
|
|
64
|
+
|
|
65
|
+
### Convention Compliance
|
|
66
|
+
- Workspace instructions: PASS/FAIL (details)
|
|
67
|
+
- Architecture alignment: PASS/FAIL (details)
|
|
68
|
+
- Spec requirements: PASS/FAIL (details)
|
|
69
|
+
|
|
70
|
+
### What was done well
|
|
71
|
+
- Positive observations
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Decisions
|
|
75
|
+
|
|
76
|
+
After identifying a convention gap or pattern inconsistency worth documenting, append it to `decisions.md`.
|
|
77
|
+
|
|
78
|
+
## History
|
|
79
|
+
|
|
80
|
+
After completing a review, if you learned something non-obvious about this project's quality patterns, append it to `histories/reviewer.md`.
|
|
81
|
+
|
|
82
|
+
## Rules
|
|
83
|
+
|
|
84
|
+
- NEVER approve code you haven't read. Read every changed file.
|
|
85
|
+
- NEVER skip the checklist.
|
|
86
|
+
- NEVER suggest improvements that contradict project docs or architecture.
|
|
87
|
+
- Be specific: file path, line number, what's wrong, what should change.
|
|
88
|
+
- If the code is good, say so. Don't invent problems.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{{PERSONA_BLOCK}}# Project: {{PROJECT_NAME}}
|
|
2
|
+
|
|
3
|
+
> {{ONE_LINER}}
|
|
4
|
+
|
|
5
|
+
## Stack
|
|
6
|
+
- {{STACK}}
|
|
7
|
+
|
|
8
|
+
## Frameworks / Key Libraries
|
|
9
|
+
- {{FRAMEWORKS}}
|
|
10
|
+
|
|
11
|
+
## Primary Goal
|
|
12
|
+
{{GOALS}}
|
|
13
|
+
|
|
14
|
+
## Hard Constraints
|
|
15
|
+
{{CONSTRAINTS}}
|
|
16
|
+
|
|
17
|
+
## Agent Cost Mode
|
|
18
|
+
`{{COST_MODE}}` — change anytime by editing the `model:` line in `.github/agents/*.agent.md`.
|
|
19
|
+
|
|
20
|
+
# Project Mandates
|
|
21
|
+
- Fix simple tech debt immediately (< 5 min, no downstream breakage).
|
|
22
|
+
- Document short-sighted choices with warning markers.
|
|
23
|
+
- Read `PROJECT.md`, `STATE.md`, and `decisions.md` on entry. Update on exit when relevant.
|
|
24
|
+
|
|
25
|
+
At the end of every agent session, before stopping, append a terse session summary to `agent-diary.md`
|
|
26
|
+
at the workspace root as a markdown section with format `## YYYY-MM-DD HH:MM` (24-hour time).
|
|
27
|
+
Include: 2-5 sentence summary of what was accomplished, include model used.
|
|
28
|
+
Skip if last entry < 4 minutes ago.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# .github/instructions/
|
|
2
|
+
|
|
3
|
+
Drop `*.instructions.md` files here for language- or path-specific guidance.
|
|
4
|
+
|
|
5
|
+
Each file should:
|
|
6
|
+
|
|
7
|
+
- start with YAML frontmatter
|
|
8
|
+
- include an `applyTo` glob (e.g. `**/*.ts`) OR a `description` for on-demand loading
|
|
9
|
+
- be terse — instructions burn context every time they load
|
|
10
|
+
|
|
11
|
+
Generate stack-appropriate instructions by running `/agent-customization` in Copilot Chat
|
|
12
|
+
after `npx cli-five init`. It will read `PROJECT.md` and propose files based on your stack.
|
|
13
|
+
|
|
14
|
+
Reference: https://code.visualstudio.com/docs/copilot/copilot-customization
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# .github/skills/
|
|
2
|
+
|
|
3
|
+
Drop project-local skills here as `<skill-name>/SKILL.md` directories.
|
|
4
|
+
|
|
5
|
+
Skills are on-demand workflows with bundled assets (scripts, templates, references).
|
|
6
|
+
The `description` field IS the discovery surface — without trigger phrases in it, no agent
|
|
7
|
+
will ever load the skill.
|
|
8
|
+
|
|
9
|
+
Discover community skills:
|
|
10
|
+
|
|
11
|
+
npx skills search <term>
|
|
12
|
+
npx skills add <skill-id>
|
|
13
|
+
|
|
14
|
+
Sources: https://skills.sh, https://github.com/anthropics/skills, https://github.com/github/awesome-copilot
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# {{PROJECT_NAME}}
|
|
2
|
+
|
|
3
|
+
> {{ONE_LINER}}
|
|
4
|
+
|
|
5
|
+
This file is the tool-agnostic project context. Codex, Cursor, Aider, Gemini CLI, Zed,
|
|
6
|
+
and Copilot all read `AGENTS.md` per the [agents.md](https://agents.md) convention.
|
|
7
|
+
|
|
8
|
+
## Goal
|
|
9
|
+
{{GOALS}}
|
|
10
|
+
|
|
11
|
+
## Stack
|
|
12
|
+
{{STACK}}
|
|
13
|
+
|
|
14
|
+
## Frameworks / Key Libraries
|
|
15
|
+
{{FRAMEWORKS}}
|
|
16
|
+
|
|
17
|
+
## Constraints
|
|
18
|
+
{{CONSTRAINTS}}
|
|
19
|
+
|
|
20
|
+
## Workflow
|
|
21
|
+
1. Read `PROJECT.md` for the long-form vision.
|
|
22
|
+
2. Check `STATE.md` for current status, blockers, in-flight decisions.
|
|
23
|
+
3. Check `decisions.md` for architectural decisions already locked in.
|
|
24
|
+
4. Per-agent memory lives in `histories/<agent>.md`.
|
|
25
|
+
5. Append a session summary to `agent-diary.md` when work completes.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# {{PROJECT_NAME}} — Project Vision
|
|
2
|
+
|
|
3
|
+
## One-line
|
|
4
|
+
{{ONE_LINER}}
|
|
5
|
+
|
|
6
|
+
## Goal
|
|
7
|
+
{{GOALS}}
|
|
8
|
+
|
|
9
|
+
## Stack
|
|
10
|
+
- {{STACK}}
|
|
11
|
+
|
|
12
|
+
## Frameworks / Key Libraries
|
|
13
|
+
- {{FRAMEWORKS}}
|
|
14
|
+
|
|
15
|
+
## Hard Constraints
|
|
16
|
+
{{CONSTRAINTS}}
|
|
17
|
+
|
|
18
|
+
## Out of Scope
|
|
19
|
+
_(populate as you discover things this project will NOT do)_
|
|
20
|
+
|
|
21
|
+
## Success Criteria
|
|
22
|
+
_(populate with measurable outcomes — what does "done" look like?)_
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
_This file is the durable vision. It changes rarely. Day-to-day status lives in `STATE.md`._
|
|
27
|
+
_Generated by `npx cli-five` on {{DATE}}._
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# {{PROJECT_NAME}} — Current State
|
|
2
|
+
|
|
3
|
+
> Cross-session memory for all agents. Update on exit; read on entry.
|
|
4
|
+
|
|
5
|
+
## Status
|
|
6
|
+
_Greenfield. No work performed yet._
|
|
7
|
+
|
|
8
|
+
## In Flight
|
|
9
|
+
_Open phases, partially-completed tasks, branches awaiting review._
|
|
10
|
+
|
|
11
|
+
## Blockers
|
|
12
|
+
_What is preventing forward progress?_
|
|
13
|
+
|
|
14
|
+
## Recent Decisions
|
|
15
|
+
_Last 3-5 entries from `decisions.md`. Or just point to it._
|
|
16
|
+
|
|
17
|
+
## Next
|
|
18
|
+
_What the next agent invocation should pick up._
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
_Generated by `npx cli-five` on {{DATE}}._
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Architectural Decisions
|
|
2
|
+
|
|
3
|
+
> One entry per locked-in choice. Reverse chronological. Concise — not an ADR template.
|
|
4
|
+
|
|
5
|
+
## Format
|
|
6
|
+
|
|
7
|
+
## YYYY-MM-DD — <decision title>
|
|
8
|
+
**Context:** Why we needed to decide.
|
|
9
|
+
**Choice:** What we chose.
|
|
10
|
+
**Trade-offs:** What we gave up.
|
|
11
|
+
**Revisit:** Trigger that would re-open this decision (or "never").
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
_No decisions logged yet._
|