@williambeto/ai-workflow 1.18.9 → 1.18.13
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 +24 -0
- package/README.md +3 -1
- package/checklists/change-spec-readiness-checklist.md +34 -0
- package/docs/full-documentation.md +13 -2
- package/opencode/agents/README.md +8 -1
- package/opencode/agents/spec-engineer.md +85 -0
- package/opencode/commands/README.md +2 -0
- package/opencode/commands/specs/create-spec-from-request.md +27 -0
- package/opencode/commands/specs/review-spec.md +4 -2
- package/opencode/commands/specs/spec-to-tasks.md +26 -0
- package/opencode.jsonc +20 -0
- package/package.json +1 -1
- package/packages/ai-workflow/README.md +1 -1
- package/runbooks/apply-starter-to-real-project.md +4 -4
- package/runbooks/publication-readiness-checklist.md +29 -0
- package/runbooks/publish-package-checklist.md +9 -0
- package/runbooks/spec-driven-development.md +49 -8
- package/schemas/functional-spec.schema.json +1 -1
- package/schemas/handoff.schema.json +1 -1
- package/schemas/pr-breakdown.schema.json +1 -1
- package/schemas/requirement.schema.json +1 -1
- package/schemas/technical-plan.schema.json +1 -1
- package/schemas/validation-report.schema.json +1 -1
- package/templates/change-proposal.template.md +97 -0
- package/runbooks/from-zero-to-first-pr.md +0 -18
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,27 @@
|
|
|
1
|
+
## [1.18.13](https://github.com/williambeto/ai-workflow/compare/v1.18.12...v1.18.13) (2026-05-22)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* remove --provenance flag for private repo publish ([#57](https://github.com/williambeto/ai-workflow/issues/57)) ([557a41e](https://github.com/williambeto/ai-workflow/commit/557a41ed5f56071d932f494ebac0ebd1740d98ec))
|
|
7
|
+
|
|
8
|
+
## [1.18.12](https://github.com/williambeto/ai-workflow/compare/v1.18.11...v1.18.12) (2026-05-22)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* skip auto-generated CHANGELOG.md from markdownlint and link validation ([#56](https://github.com/williambeto/ai-workflow/issues/56)) ([aefc44d](https://github.com/williambeto/ai-workflow/commit/aefc44d3b137b99e6089763952a8973de74f2ce6))
|
|
14
|
+
|
|
15
|
+
## [1.18.11](https://github.com/williambeto/ai-workflow/compare/v1.18.10...v1.18.11) (2026-05-22)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Bug Fixes
|
|
19
|
+
|
|
20
|
+
* apply readiness audit fixes (security, package, branding, docs) ([9721661](https://github.com/williambeto/ai-workflow/commit/972166100908681f27889e9ddd10de71f20a9627))
|
|
21
|
+
* apply readiness audit fixes (security, package, branding, docs) ([ee60c7c](https://github.com/williambeto/ai-workflow/commit/ee60c7cabab77dc45684d8e1b91533566660e794))
|
|
22
|
+
* update semantic-release CI to Node.js 22 ([8bbaabb](https://github.com/williambeto/ai-workflow/commit/8bbaabbefa3ffe1a27b19264bc8c98779ba4bddd))
|
|
23
|
+
* update semantic-release CI to Node.js 22 ([89a198a](https://github.com/williambeto/ai-workflow/commit/89a198aadd21f10c8b3d65e21a58747e50c23703))
|
|
24
|
+
|
|
1
25
|
# Changelog
|
|
2
26
|
|
|
3
27
|
All notable changes to AI Workflow Kit (`ai-workflow`) are documented in this file.
|
package/README.md
CHANGED
|
@@ -166,7 +166,7 @@ See [`docs/setup-codex-opencode.md`](docs/setup-codex-opencode.md) for installat
|
|
|
166
166
|
| `@williambeto/ai-workflow` CLI | Preview |
|
|
167
167
|
| Stack variants and examples | Reference — adapt to the target project |
|
|
168
168
|
|
|
169
|
-
Suitable for
|
|
169
|
+
Suitable for developers and teams who want validation-first AI workflow assets and accept that the CLI, OpenCode integration, and stack variants are still evolving. Use GitHub issues for questions, bugs, and improvement proposals.
|
|
170
170
|
|
|
171
171
|
## Current limitations
|
|
172
172
|
|
|
@@ -176,6 +176,8 @@ Suitable for **private preview** with developers who accept validation-first wor
|
|
|
176
176
|
|
|
177
177
|
See [`ROADMAP.md`](ROADMAP.md) for planned improvements.
|
|
178
178
|
|
|
179
|
+
Before changing repository visibility or making a major public-facing release, use [`runbooks/publication-readiness-checklist.md`](runbooks/publication-readiness-checklist.md).
|
|
180
|
+
|
|
179
181
|
## Start now
|
|
180
182
|
|
|
181
183
|
1. Pick one small feature.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Change Spec Readiness Checklist
|
|
2
|
+
|
|
3
|
+
Use this checklist before implementation starts.
|
|
4
|
+
|
|
5
|
+
## Clarity and scope
|
|
6
|
+
|
|
7
|
+
- [ ] Objective is clear and measurable.
|
|
8
|
+
- [ ] Problem is explicit.
|
|
9
|
+
- [ ] Scope and out-of-scope are explicit.
|
|
10
|
+
- [ ] Assumptions are explicit and labeled.
|
|
11
|
+
- [ ] Open questions are resolved or marked as blockers.
|
|
12
|
+
|
|
13
|
+
## Behavior and design
|
|
14
|
+
|
|
15
|
+
- [ ] Requirements are testable.
|
|
16
|
+
- [ ] Scenarios cover main flow and key edge cases.
|
|
17
|
+
- [ ] Technical design is lightweight and sufficient for implementation.
|
|
18
|
+
- [ ] Constraints and integration points are explicit.
|
|
19
|
+
|
|
20
|
+
## Delivery readiness
|
|
21
|
+
|
|
22
|
+
- [ ] Task breakdown is small, ordered, and reviewable.
|
|
23
|
+
- [ ] Validation plan includes real commands/checks.
|
|
24
|
+
- [ ] Expected evidence is explicit.
|
|
25
|
+
- [ ] Risks include mitigation notes.
|
|
26
|
+
|
|
27
|
+
## Decision
|
|
28
|
+
|
|
29
|
+
Mark one:
|
|
30
|
+
|
|
31
|
+
- [ ] Ready for implementation handoff
|
|
32
|
+
- [ ] Needs clarification
|
|
33
|
+
- [ ] Too broad (split into smaller changes)
|
|
34
|
+
- [ ] Blocked by missing context/decision
|
|
@@ -99,7 +99,7 @@ ai-workflow/
|
|
|
99
99
|
|
|
100
100
|
| Path | Purpose |
|
|
101
101
|
| --- | --- |
|
|
102
|
-
|
|
|
102
|
+
| `AGENTS.md` | Main operational contract for AI agents in this repository. |
|
|
103
103
|
| [`.agents/skills/`](.agents/skills/) | Reusable specialist skill definitions. |
|
|
104
104
|
| [`.agents/napkin.md`](.agents/napkin.md) | Durable project memory index. |
|
|
105
105
|
| [`.codex/prompts/`](.codex/prompts/) | Compact Codex prompt entrypoints. |
|
|
@@ -203,10 +203,18 @@ Spec-Driven commands:
|
|
|
203
203
|
|
|
204
204
|
| Command | Purpose |
|
|
205
205
|
| --- | --- |
|
|
206
|
+
| [`opencode/commands/specs/create-spec-from-request.md`](opencode/commands/specs/create-spec-from-request.md) | Turn a vague request into a lightweight change artifact before coding. |
|
|
206
207
|
| [`opencode/commands/specs/create-spec-from-requirement.md`](opencode/commands/specs/create-spec-from-requirement.md) | Draft a testable spec from an approved requirement. |
|
|
207
208
|
| [`opencode/commands/specs/review-spec.md`](opencode/commands/specs/review-spec.md) | Review spec readiness before technical planning. |
|
|
208
209
|
| [`opencode/commands/specs/spec-to-technical-plan.md`](opencode/commands/specs/spec-to-technical-plan.md) | Convert an approved spec into technical planning output. |
|
|
209
210
|
| [`opencode/commands/specs/spec-to-pr-breakdown.md`](opencode/commands/specs/spec-to-pr-breakdown.md) | Split an approved spec into small, reviewable PRs. |
|
|
211
|
+
| [`opencode/commands/specs/spec-to-tasks.md`](opencode/commands/specs/spec-to-tasks.md) | Convert approved spec into small implementation tasks with validation and evidence. |
|
|
212
|
+
|
|
213
|
+
Consumer-project artifact path convention for lightweight specs:
|
|
214
|
+
|
|
215
|
+
```txt
|
|
216
|
+
docs/specs/[spec-type]/[yyyy-mm-dd]-[change-slug]/
|
|
217
|
+
```
|
|
210
218
|
|
|
211
219
|
## OpenCode agent model
|
|
212
220
|
|
|
@@ -215,6 +223,7 @@ OpenCode agents are operational roles. Skills are reusable capabilities. Command
|
|
|
215
223
|
| Agent | Role |
|
|
216
224
|
| --- | --- |
|
|
217
225
|
| [`discovery`](opencode/agents/discovery.md) | Explore project context before planning. |
|
|
226
|
+
| [`spec-engineer`](opencode/agents/spec-engineer.md) | Convert vague requests into lightweight spec-driven change artifacts before coding. |
|
|
218
227
|
| [`planner`](opencode/agents/planner.md) | Convert objectives into requirements, specs, plans, and PR breakdowns. |
|
|
219
228
|
| [`orchestrator`](opencode/agents/orchestrator.md) | Route multi-step work across gates and specialists. |
|
|
220
229
|
| [`implementer`](opencode/agents/implementer.md) | Implement scoped changes. |
|
|
@@ -314,6 +323,7 @@ Templates are reusable starting points, not completed project documents.
|
|
|
314
323
|
| [`templates/README.template.md`](templates/README.template.md) | Base project README. |
|
|
315
324
|
| [`templates/REQUIREMENT.template.md`](templates/REQUIREMENT.template.md) | Product requirement. |
|
|
316
325
|
| [`templates/SPEC.template.md`](templates/SPEC.template.md) | Functional specification. |
|
|
326
|
+
| [`templates/change-proposal.template.md`](templates/change-proposal.template.md) | Lightweight change proposal/spec artifact. |
|
|
317
327
|
| [`templates/TECH-PLAN.template.md`](templates/TECH-PLAN.template.md) | Technical plan. |
|
|
318
328
|
| [`templates/PR-PLAN.template.md`](templates/PR-PLAN.template.md) | PR plan. |
|
|
319
329
|
|
|
@@ -324,11 +334,12 @@ Runbooks are operational guides for applying the workflow.
|
|
|
324
334
|
| Runbook | Purpose |
|
|
325
335
|
| --- | --- |
|
|
326
336
|
| [`runbooks/quick-start-guide.md`](runbooks/quick-start-guide.md) | Fastest path to first value. |
|
|
327
|
-
|
|
|
337
|
+
| <!-- consolidated into quick-start-guide.md --> | |
|
|
328
338
|
| [`runbooks/apply-starter-to-real-project.md`](runbooks/apply-starter-to-real-project.md) | Apply this workflow to a target project. |
|
|
329
339
|
| [`runbooks/validate-starter-in-real-project.md`](runbooks/validate-starter-in-real-project.md) | Prove adoption in a real project. |
|
|
330
340
|
| [`runbooks/how-to-use-skills.md`](runbooks/how-to-use-skills.md) | Choose specialist skills. |
|
|
331
341
|
| [`runbooks/commands-cheatsheet.md`](runbooks/commands-cheatsheet.md) | Choose Codex/OpenCode commands. |
|
|
342
|
+
| [`runbooks/spec-driven-development.md`](runbooks/spec-driven-development.md) | Run lightweight spec-first flow and artifact conventions before implementation. |
|
|
332
343
|
| [`runbooks/agent-delegation-workflow.md`](runbooks/agent-delegation-workflow.md) | Use orchestrator and handoff routing. |
|
|
333
344
|
| [`runbooks/use-linear-for-operational-planning.md`](runbooks/use-linear-for-operational-planning.md) | Use Linear as the operational backlog when the roadmap is too large for daily planning. |
|
|
334
345
|
| [`runbooks/validation-checklist.md`](runbooks/validation-checklist.md) | Validate docs, code, PRs, builds, security, accessibility, and deploy readiness. |
|
|
@@ -17,7 +17,13 @@ Do not treat generic skills as OpenCode agents. A skill explains how to perform
|
|
|
17
17
|
Client/request discovery:
|
|
18
18
|
|
|
19
19
|
```txt
|
|
20
|
-
discovery → planner
|
|
20
|
+
discovery → spec-engineer → planner
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Lightweight spec-first delivery:
|
|
24
|
+
|
|
25
|
+
```txt
|
|
26
|
+
request → spec-engineer → implementer
|
|
21
27
|
```
|
|
22
28
|
|
|
23
29
|
Feature delivery:
|
|
@@ -94,6 +100,7 @@ Do not use Napkin as a temporary task log, and never store secrets.
|
|
|
94
100
|
| Agent | Purpose | Use when | Should not do |
|
|
95
101
|
| ----- | ------- | -------- | ------------- |
|
|
96
102
|
| `discovery` | Turn vague requests into a discovery brief. | Scope, risks, dependencies, and unknowns are unclear. | Estimate price, implement, edit files, perform execution/delegation routing directly (must return `Blocked` and route to `orchestrator`). |
|
|
103
|
+
| `spec-engineer` | Turn vague/risky requests into lightweight change artifacts for implementation handoff. | Request ambiguity is high and team needs explicit agreement before coding. | Implement production code or create heavyweight process for tiny tasks. |
|
|
97
104
|
| `planner` | Turn approved scope into requirements, specs, technical plans, and PR breakdowns. | Scope is approved and implementation needs a handoff. | Implement. |
|
|
98
105
|
| `implementer` | Implement one selected PR. | A PR plan or handoff exists. | Expand scope or do opportunistic refactors. |
|
|
99
106
|
| `fixer` | Diagnose and fix bugs, regressions, failures, and warnings. | There is broken behavior or failed validation. | Rewrite large areas without evidence. |
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# Spec-Engineer Agent
|
|
2
|
+
|
|
3
|
+
## Role
|
|
4
|
+
|
|
5
|
+
Turn vague, risky, or high-impact requests into lightweight change artifacts that are ready for implementation handoff.
|
|
6
|
+
|
|
7
|
+
## Use when
|
|
8
|
+
|
|
9
|
+
- A request is unclear, broad, or ambiguous.
|
|
10
|
+
- The change can affect behavior, architecture, integration, or validation strategy.
|
|
11
|
+
- The team needs explicit agreement on what to build before coding.
|
|
12
|
+
|
|
13
|
+
## Do not use when
|
|
14
|
+
|
|
15
|
+
- The task is a tiny docs-only or wording fix.
|
|
16
|
+
- The scope is already fully specified and reviewed.
|
|
17
|
+
|
|
18
|
+
## Required context
|
|
19
|
+
|
|
20
|
+
- User request or discovery brief.
|
|
21
|
+
- Repository rules from `AGENTS.md`.
|
|
22
|
+
- Existing spec assets in `templates/`, `checklists/`, and `opencode/commands/specs/`.
|
|
23
|
+
|
|
24
|
+
## Input discipline
|
|
25
|
+
|
|
26
|
+
- Use `minimal-context` behavior: read only files needed for the active request.
|
|
27
|
+
- Use `grep`/`glob` before reading large files.
|
|
28
|
+
- Keep outputs compact and implementation-handoff ready.
|
|
29
|
+
|
|
30
|
+
## Responsibilities
|
|
31
|
+
|
|
32
|
+
- Receive vague requests and classify whether a spec is needed.
|
|
33
|
+
- Define spec depth level (`tiny` | `standard` | `deep`) based on risk/impact.
|
|
34
|
+
- Generate specification/change artifact before implementation.
|
|
35
|
+
- Set spec status explicitly.
|
|
36
|
+
- Expose assumptions and blocking questions.
|
|
37
|
+
- Define scope and out-of-scope explicitly.
|
|
38
|
+
- Produce requirements, scenarios, and acceptance criteria.
|
|
39
|
+
- Identify edge cases, constraints, and risks.
|
|
40
|
+
- Propose lightweight technical design.
|
|
41
|
+
- Break work into small implementation tasks.
|
|
42
|
+
- Define validation criteria and expected evidence.
|
|
43
|
+
- Request review when uncertainty or risk is non-trivial.
|
|
44
|
+
- Hand off to `implementer` (or `planner` when PR planning is still needed).
|
|
45
|
+
|
|
46
|
+
## Constraints
|
|
47
|
+
|
|
48
|
+
- Do not implement production code.
|
|
49
|
+
- Do not refactor unrelated files.
|
|
50
|
+
- Do not approve unresolved assumptions as facts.
|
|
51
|
+
- Do not skip validation criteria or expected evidence.
|
|
52
|
+
- Do not create heavyweight process for trivial work.
|
|
53
|
+
|
|
54
|
+
## Required workflow
|
|
55
|
+
|
|
56
|
+
```txt
|
|
57
|
+
1) Receive vague request
|
|
58
|
+
2) Classify if spec is needed
|
|
59
|
+
3) Define spec depth level
|
|
60
|
+
4) Generate specification artifact
|
|
61
|
+
5) Define spec status
|
|
62
|
+
6) Expose assumptions and blocking questions
|
|
63
|
+
7) Define scope and out-of-scope
|
|
64
|
+
8) Define requirements and scenarios
|
|
65
|
+
9) Define acceptance criteria
|
|
66
|
+
10) Define technical constraints and risks
|
|
67
|
+
11) Create small implementation tasks
|
|
68
|
+
12) Define validation and expected evidence
|
|
69
|
+
13) Request review when needed
|
|
70
|
+
14) Generate implementation handoff
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Expected output
|
|
74
|
+
|
|
75
|
+
- Change artifact using `templates/change-proposal.template.md`
|
|
76
|
+
- Default artifact location in consumer project: `docs/specs/<spec-type>/<yyyy-mm-dd>-<change-slug>/`
|
|
77
|
+
- Spec depth level: `tiny` | `standard` | `deep`
|
|
78
|
+
- Spec status: `Draft` | `In review` | `Ready for implementation handoff` | `Needs clarification` | `Too broad` | `Blocked`
|
|
79
|
+
- Assumptions and blocking questions (if any)
|
|
80
|
+
- Recommended next owner: `implementer` or `planner`
|
|
81
|
+
|
|
82
|
+
## Stop conditions
|
|
83
|
+
|
|
84
|
+
- Stop when the change artifact is explicit, testable, and handoff-ready.
|
|
85
|
+
- Stop and mark `Blocked` if missing decisions make implementation unsafe.
|
|
@@ -25,10 +25,12 @@ Adapt file names, command registration, or invocation style to your OpenCode set
|
|
|
25
25
|
|
|
26
26
|
| File | Use when |
|
|
27
27
|
| ---- | -------- |
|
|
28
|
+
| `create-spec-from-request.md` | Turn a vague request into a lightweight change artifact before coding. |
|
|
28
29
|
| `create-spec-from-requirement.md` | Draft a testable spec from an approved requirement. |
|
|
29
30
|
| `review-spec.md` | Review spec readiness before technical planning. |
|
|
30
31
|
| `spec-to-technical-plan.md` | Convert approved spec into technical planning output. |
|
|
31
32
|
| `spec-to-pr-breakdown.md` | Split approved spec into small PRs. |
|
|
33
|
+
| `spec-to-tasks.md` | Convert approved spec into small implementation tasks with validation and evidence expectations. |
|
|
32
34
|
|
|
33
35
|
## Usage Notes
|
|
34
36
|
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# OpenCode Command - Create Spec From Request
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
Turn a vague request into a lightweight, implementation-ready change artifact.
|
|
6
|
+
|
|
7
|
+
## Constraints
|
|
8
|
+
|
|
9
|
+
1. Do not implement.
|
|
10
|
+
2. Ask only necessary blocking questions (max 2 by default).
|
|
11
|
+
3. Keep scope and out-of-scope explicit.
|
|
12
|
+
4. Preserve existing behavior unless change is explicitly requested.
|
|
13
|
+
|
|
14
|
+
## Context To Read
|
|
15
|
+
|
|
16
|
+
- `templates/change-proposal.template.md`
|
|
17
|
+
- `checklists/change-spec-readiness-checklist.md`
|
|
18
|
+
- `AGENTS.md`
|
|
19
|
+
|
|
20
|
+
## Expected Output
|
|
21
|
+
|
|
22
|
+
- Draft change artifact using `templates/change-proposal.template.md`
|
|
23
|
+
- Suggested output path in consumer project: `docs/specs/<spec-type>/<yyyy-mm-dd>-<change-slug>/00-proposal.md`
|
|
24
|
+
- Assumptions
|
|
25
|
+
- Open questions
|
|
26
|
+
- Readiness: `Ready for implementation handoff` | `Needs clarification` | `Too broad` | `Blocked`
|
|
27
|
+
- Recommended next owner: `implementer` | `planner`
|
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
## Purpose
|
|
4
4
|
|
|
5
|
-
Assess whether a spec is ready for
|
|
5
|
+
Assess and improve whether a spec/change artifact is ready for implementation handoff.
|
|
6
6
|
|
|
7
7
|
## Context To Read
|
|
8
8
|
|
|
9
9
|
- `templates/SPEC.template.md`
|
|
10
|
+
- `templates/change-proposal.template.md`
|
|
10
11
|
- `checklists/spec-readiness-checklist.md`
|
|
12
|
+
- `checklists/change-spec-readiness-checklist.md`
|
|
11
13
|
- `AGENTS.md`
|
|
12
14
|
|
|
13
15
|
## Constraints
|
|
@@ -18,7 +20,7 @@ Assess whether a spec is ready for technical planning.
|
|
|
18
20
|
|
|
19
21
|
## Expected Output
|
|
20
22
|
|
|
21
|
-
- Decision: `Ready` | `Needs clarification` | `Too broad` | `Blocked`
|
|
23
|
+
- Decision: `Ready for implementation handoff` | `Needs clarification` | `Too broad` | `Blocked`
|
|
22
24
|
- Findings by severity (`High`/`Medium`/`Low`)
|
|
23
25
|
- Smallest safe fixes
|
|
24
26
|
- Evidence references
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# OpenCode Command - Spec To Tasks
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
Convert an approved spec/change artifact into small, reviewable implementation tasks with validation and evidence expectations.
|
|
6
|
+
|
|
7
|
+
## Constraints
|
|
8
|
+
|
|
9
|
+
1. Do not implement.
|
|
10
|
+
2. Keep tasks ordered and dependency-aware.
|
|
11
|
+
3. Keep each task objective small and testable.
|
|
12
|
+
4. Include validation criteria and expected evidence.
|
|
13
|
+
|
|
14
|
+
## Context To Read
|
|
15
|
+
|
|
16
|
+
- `templates/change-proposal.template.md`
|
|
17
|
+
- `checklists/change-spec-readiness-checklist.md`
|
|
18
|
+
- `AGENTS.md`
|
|
19
|
+
|
|
20
|
+
## Expected Output
|
|
21
|
+
|
|
22
|
+
- Ordered task list
|
|
23
|
+
- Per task: objective, scope, out-of-scope, risk note
|
|
24
|
+
- Validation criteria per task
|
|
25
|
+
- Expected evidence per task
|
|
26
|
+
- Recommended first task for implementation
|
package/opencode.jsonc
CHANGED
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
"description": "Plan requirements, specs, technical plans, and PR breakdowns",
|
|
12
12
|
"prompt": "{file:./opencode/agents/planner.md}"
|
|
13
13
|
},
|
|
14
|
+
"spec-engineer": {
|
|
15
|
+
"mode": "primary",
|
|
16
|
+
"description": "Turn vague requests into lightweight spec-driven change artifacts",
|
|
17
|
+
"prompt": "{file:./opencode/agents/spec-engineer.md}"
|
|
18
|
+
},
|
|
14
19
|
"implementer": {
|
|
15
20
|
"mode": "primary",
|
|
16
21
|
"description": "Implement features, fixes, and code changes",
|
|
@@ -204,6 +209,21 @@
|
|
|
204
209
|
"description": "Prepare deployment readiness and rollback plan",
|
|
205
210
|
"agent": "deploy-engineer",
|
|
206
211
|
"template": "{file:./opencode/commands/deploy.md}"
|
|
212
|
+
},
|
|
213
|
+
"spec-create": {
|
|
214
|
+
"description": "Create a lightweight spec/change artifact from a vague request",
|
|
215
|
+
"agent": "spec-engineer",
|
|
216
|
+
"template": "{file:./opencode/commands/specs/create-spec-from-request.md}"
|
|
217
|
+
},
|
|
218
|
+
"spec-review": {
|
|
219
|
+
"description": "Review or improve spec readiness for implementation handoff",
|
|
220
|
+
"agent": "spec-engineer",
|
|
221
|
+
"template": "{file:./opencode/commands/specs/review-spec.md}"
|
|
222
|
+
},
|
|
223
|
+
"spec-tasks": {
|
|
224
|
+
"description": "Convert approved spec into small implementation tasks",
|
|
225
|
+
"agent": "spec-engineer",
|
|
226
|
+
"template": "{file:./opencode/commands/specs/spec-to-tasks.md}"
|
|
207
227
|
}
|
|
208
228
|
}
|
|
209
229
|
}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
`@williambeto/ai-workflow` is the npm CLI for installing AI Workflow Kit assets into a project.
|
|
4
4
|
|
|
5
|
-
It prepares a repository for Codex and OpenCode workflows with local prompts, workflow
|
|
5
|
+
It prepares a repository for Codex and OpenCode workflows with local prompts, generated workflow assets, managed `opencode.jsonc` sections, and doctor checks.
|
|
6
6
|
|
|
7
7
|
## Commands
|
|
8
8
|
|
|
@@ -25,7 +25,7 @@ Use this runbook when:
|
|
|
25
25
|
- starting a new project;
|
|
26
26
|
- auditing an existing project;
|
|
27
27
|
- setting up Codex/OpenCode workflows;
|
|
28
|
-
- preparing a
|
|
28
|
+
- preparing a target project;
|
|
29
29
|
- creating a PR-driven implementation plan;
|
|
30
30
|
- reducing repeated prompt/context setup.
|
|
31
31
|
|
|
@@ -100,8 +100,8 @@ Choose one adoption level for the project. Start lower, then expand only when th
|
|
|
100
100
|
|
|
101
101
|
| Level | When to use | What to copy/adapt | Risk |
|
|
102
102
|
| ----- | ----------- | ------------------ | ---- |
|
|
103
|
-
| Level 1 — Minimal | Small bug fixes, short documentation updates, or early trials in an existing project. | `AGENTS.md`, `README.md`, `.codex/prompts/`, and `npm run validate` only if the validation scripts are copied. | May not provide enough structure for multi-PR work,
|
|
104
|
-
| Level 2 — Operational | Serious feature work,
|
|
103
|
+
| Level 1 — Minimal | Small bug fixes, short documentation updates, or early trials in an existing project. | `AGENTS.md`, `README.md`, `.codex/prompts/`, and `npm run validate` only if the validation scripts are copied. | May not provide enough structure for multi-PR work, team handoff, or repeatable review. |
|
|
104
|
+
| Level 2 — Operational | Serious feature work, production projects, repo audits, or teams that need recurring Codex/OpenCode workflows. | `AGENTS.md`, `harness/`, `opencode/commands/`, `opencode/agents/`, selected skills, and validation scripts. | Requires project-specific adaptation; copied rules can drift if nobody owns them. |
|
|
105
105
|
| Level 3 — Full workflow | Long-lived products, team workflow design, training repositories, or projects that need examples and structured contracts. | `prompts/`, `templates/`, `harness/`, `schemas/`, `examples/`, agents, skills, runbooks, and validation scripts. | Highest setup cost; can become process-heavy if copied without pruning. |
|
|
106
106
|
|
|
107
107
|
Do not use Level 3 just because the starter contains more files. Use it when the target project needs a durable workflow system.
|
|
@@ -372,7 +372,7 @@ Skills:
|
|
|
372
372
|
|
|
373
373
|
Use Level 2 when the project already has its own examples, conventions, and validation commands. Use Level 3 when the team needs repeatable planning documents, schemas, and long-lived workflow examples.
|
|
374
374
|
|
|
375
|
-
### B. WordPress
|
|
375
|
+
### B. WordPress project
|
|
376
376
|
|
|
377
377
|
Recommended adoption:
|
|
378
378
|
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Publication Readiness Checklist
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
Use this checklist before making the GitHub repository public or before a major public-facing release.
|
|
6
|
+
|
|
7
|
+
## Checklist
|
|
8
|
+
|
|
9
|
+
- [ ] `README.md` describes the project as public-ready enough for its current maturity.
|
|
10
|
+
- [ ] `README.md` does not contain private-preview or not-ready-for-public language.
|
|
11
|
+
- [ ] `SECURITY.md` exists and explains how to report vulnerabilities.
|
|
12
|
+
- [ ] `package.json` metadata points to the public repository, license, and npm package.
|
|
13
|
+
- [ ] Public docs do not contain local absolute paths.
|
|
14
|
+
- [ ] Public docs do not contain private client, customer, or target-project names.
|
|
15
|
+
- [ ] Historical repository names are removed, redacted, or clearly marked as historical.
|
|
16
|
+
- [ ] GitHub-only folders (`evidence/`, `examples/`, `variants/`, `scripts/`, `tests/`) are appropriate for public readers.
|
|
17
|
+
- [ ] CI and publish workflows reference secrets through GitHub Actions secrets only.
|
|
18
|
+
- [ ] `npm run validate` passes.
|
|
19
|
+
|
|
20
|
+
## Suggested verification commands
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm run validate
|
|
24
|
+
grep -R --exclude=publication-readiness-checklist.md "/home/" README.md docs runbooks evidence packages examples variants || true
|
|
25
|
+
grep -R --exclude=publication-readiness-checklist.md "private preview\|private-preview\|not ready for broad public" README.md docs runbooks packages evidence || true
|
|
26
|
+
grep -R --exclude=publication-readiness-checklist.md "arco-ptp" README.md docs runbooks packages evidence || true
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Review any matches before publication. Some historical references may be acceptable only when they are explicitly anonymized or explained.
|
|
@@ -10,6 +10,15 @@ Use this runbook to publish `@williambeto/ai-workflow` to npm with explicit safe
|
|
|
10
10
|
- Registry: npm
|
|
11
11
|
- Workflow: `.github/workflows/publish-npm.yml`
|
|
12
12
|
|
|
13
|
+
## Publish path architecture
|
|
14
|
+
|
|
15
|
+
This project uses a dual-path publish architecture:
|
|
16
|
+
|
|
17
|
+
- **Semantic release** (`.releaserc.json`): handles version bumps, changelog generation, and GitHub release creation. npm publish is explicitly disabled (`"npmPublish": false`) because actual publishing is handled by the manual CI workflow.
|
|
18
|
+
- **Manual CI workflow** (`.github/workflows/publish-npm.yml`): the only path that actually publishes to npm. Requires explicit `workflow_dispatch` with dry-run gate.
|
|
19
|
+
|
|
20
|
+
This split prevents accidental automated npm publishes while keeping semantic-release benefits for changelog and versioning.
|
|
21
|
+
|
|
13
22
|
## Safety gates
|
|
14
23
|
|
|
15
24
|
1. Run only from `main`.
|
|
@@ -8,10 +8,9 @@ Standard flow:
|
|
|
8
8
|
|
|
9
9
|
```txt
|
|
10
10
|
Request
|
|
11
|
-
→
|
|
11
|
+
→ Change proposal / lightweight spec
|
|
12
12
|
→ Spec review
|
|
13
|
-
→
|
|
14
|
-
→ PR breakdown
|
|
13
|
+
→ Task breakdown
|
|
15
14
|
→ Implementation
|
|
16
15
|
→ Validation
|
|
17
16
|
→ Evidence report
|
|
@@ -32,6 +31,11 @@ For tiny docs-only edits, use proportional workflow.
|
|
|
32
31
|
|
|
33
32
|
## Assets to use
|
|
34
33
|
|
|
34
|
+
- Lightweight change template: `templates/change-proposal.template.md`
|
|
35
|
+
- Lightweight readiness checklist: `checklists/change-spec-readiness-checklist.md`
|
|
36
|
+
- Request-to-spec command: `opencode/commands/specs/create-spec-from-request.md`
|
|
37
|
+
- Spec-to-tasks command: `opencode/commands/specs/spec-to-tasks.md`
|
|
38
|
+
- Spec-first owner: `opencode/agents/spec-engineer.md`
|
|
35
39
|
- Spec template: `templates/SPEC.template.md`
|
|
36
40
|
- Readiness checklist: `checklists/spec-readiness-checklist.md`
|
|
37
41
|
- Draft prompt: `.codex/prompts/specs/create-spec-from-requirement.md`
|
|
@@ -39,15 +43,52 @@ For tiny docs-only edits, use proportional workflow.
|
|
|
39
43
|
- Plan prompt: `.codex/prompts/specs/spec-to-technical-plan.md`
|
|
40
44
|
- PR prompt: `.codex/prompts/specs/spec-to-pr-breakdown.md`
|
|
41
45
|
|
|
46
|
+
## Artifact location convention (consumer project)
|
|
47
|
+
|
|
48
|
+
Store generated spec artifacts in the consumer repository using this default path:
|
|
49
|
+
|
|
50
|
+
```txt
|
|
51
|
+
docs/specs/[spec-type]/[yyyy-mm-dd]-[change-slug]/
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Allowed `<spec-type>` values:
|
|
55
|
+
|
|
56
|
+
- `feature`
|
|
57
|
+
- `bugfix`
|
|
58
|
+
- `refactor`
|
|
59
|
+
- `ui-change`
|
|
60
|
+
- `architecture`
|
|
61
|
+
- `workflow`
|
|
62
|
+
- `integration`
|
|
63
|
+
- `test-strategy`
|
|
64
|
+
|
|
65
|
+
Recommended files inside each folder:
|
|
66
|
+
|
|
67
|
+
```txt
|
|
68
|
+
00-proposal.md
|
|
69
|
+
01-spec.md
|
|
70
|
+
02-design.md
|
|
71
|
+
03-tasks.md
|
|
72
|
+
04-validation.md
|
|
73
|
+
05-handoff.md
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
For `tiny` specs, allow a minimal set:
|
|
77
|
+
|
|
78
|
+
```txt
|
|
79
|
+
00-proposal.md
|
|
80
|
+
03-tasks.md
|
|
81
|
+
04-validation.md
|
|
82
|
+
```
|
|
83
|
+
|
|
42
84
|
## Connection to PR execution
|
|
43
85
|
|
|
44
86
|
After spec review passes:
|
|
45
87
|
|
|
46
|
-
1.
|
|
47
|
-
2.
|
|
48
|
-
3.
|
|
49
|
-
4.
|
|
50
|
-
5. return evidence for commands, changed files, and acceptance-criteria coverage.
|
|
88
|
+
1. split into small implementation tasks (or PRs when needed);
|
|
89
|
+
2. implement one scoped task/PR only;
|
|
90
|
+
3. run validation before claiming success;
|
|
91
|
+
4. return evidence for commands, changed files, and acceptance-criteria coverage.
|
|
51
92
|
|
|
52
93
|
## Required evidence after validation
|
|
53
94
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$id": "https://
|
|
2
|
+
"$id": "https://github.com/williambeto/ai-workflow/schemas/functional-spec.schema.json",
|
|
3
3
|
"title": "Functional Specification",
|
|
4
4
|
"type": "object",
|
|
5
5
|
"additionalProperties": false,
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Change Proposal (Lightweight Spec)
|
|
2
|
+
|
|
3
|
+
Suggested save path (consumer project):
|
|
4
|
+
|
|
5
|
+
`docs/specs/<spec-type>/<yyyy-mm-dd>-<change-slug>/00-proposal.md`
|
|
6
|
+
|
|
7
|
+
## Spec level
|
|
8
|
+
|
|
9
|
+
`tiny` | `standard` | `deep`
|
|
10
|
+
|
|
11
|
+
## Spec status
|
|
12
|
+
|
|
13
|
+
`Draft` | `In review` | `Ready for implementation handoff` | `Needs clarification` | `Too broad` | `Blocked`
|
|
14
|
+
|
|
15
|
+
## Title
|
|
16
|
+
|
|
17
|
+
[Short change title]
|
|
18
|
+
|
|
19
|
+
## Objective
|
|
20
|
+
|
|
21
|
+
[Outcome this change must achieve]
|
|
22
|
+
|
|
23
|
+
## Background
|
|
24
|
+
|
|
25
|
+
[Context needed to understand this request]
|
|
26
|
+
|
|
27
|
+
## Problem
|
|
28
|
+
|
|
29
|
+
[Current pain, failure mode, or gap]
|
|
30
|
+
|
|
31
|
+
## Proposed change
|
|
32
|
+
|
|
33
|
+
[What will change and why this is the smallest safe approach]
|
|
34
|
+
|
|
35
|
+
## Scope
|
|
36
|
+
|
|
37
|
+
### Included
|
|
38
|
+
|
|
39
|
+
- [In-scope item]
|
|
40
|
+
|
|
41
|
+
### Out of scope
|
|
42
|
+
|
|
43
|
+
- [Explicitly excluded item]
|
|
44
|
+
|
|
45
|
+
## Requirements
|
|
46
|
+
|
|
47
|
+
- [Clear, testable requirement]
|
|
48
|
+
|
|
49
|
+
## Scenarios
|
|
50
|
+
|
|
51
|
+
### Scenario 1 — [Name]
|
|
52
|
+
|
|
53
|
+
- Given [state]
|
|
54
|
+
- When [action]
|
|
55
|
+
- Then [expected result]
|
|
56
|
+
|
|
57
|
+
### Scenario 2 — [Name or `Not applicable`]
|
|
58
|
+
|
|
59
|
+
- Given [state]
|
|
60
|
+
- When [action]
|
|
61
|
+
- Then [expected result]
|
|
62
|
+
|
|
63
|
+
## Technical design
|
|
64
|
+
|
|
65
|
+
- [High-level design choice]
|
|
66
|
+
- [Constraints, integration points, and trade-offs]
|
|
67
|
+
|
|
68
|
+
## Task breakdown
|
|
69
|
+
|
|
70
|
+
1. [Small implementation task]
|
|
71
|
+
2. [Small implementation task]
|
|
72
|
+
3. [Small validation or hardening task]
|
|
73
|
+
|
|
74
|
+
## Validation plan
|
|
75
|
+
|
|
76
|
+
- [Command or check]
|
|
77
|
+
- [Acceptance criteria coverage method]
|
|
78
|
+
|
|
79
|
+
## Risks
|
|
80
|
+
|
|
81
|
+
- [Risk + mitigation]
|
|
82
|
+
|
|
83
|
+
## Open questions
|
|
84
|
+
|
|
85
|
+
- [Question that blocks or may affect scope]
|
|
86
|
+
|
|
87
|
+
## Expected evidence
|
|
88
|
+
|
|
89
|
+
- Commands executed and results
|
|
90
|
+
- Files changed
|
|
91
|
+
- Acceptance criteria/scenario coverage
|
|
92
|
+
- Untested areas and residual risks
|
|
93
|
+
|
|
94
|
+
## Handoff
|
|
95
|
+
|
|
96
|
+
- Recommended next owner: `implementer` | `planner`
|
|
97
|
+
- Readiness: `Ready for implementation handoff` | `Needs clarification` | `Too broad` | `Blocked`
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# From Zero to First PR
|
|
2
|
-
|
|
3
|
-
> **This guide has been consolidated into [`runbooks/quick-start-guide.md`](runbooks/quick-start-guide.md).**
|
|
4
|
-
>
|
|
5
|
-
> All content is now available there: install instructions, profile selection, step-by-step workflow with prompts and skills per step, validation checklists, common mistakes, recommended PR types, and first PR quality gate.
|
|
6
|
-
>
|
|
7
|
-
> Redirect to [`runbooks/quick-start-guide.md`](runbooks/quick-start-guide.md).
|
|
8
|
-
|
|
9
|
-
## Quick reference
|
|
10
|
-
|
|
11
|
-
| Topic | Link |
|
|
12
|
-
| --- | --- |
|
|
13
|
-
| Full walkthrough | [`runbooks/quick-start-guide.md`](runbooks/quick-start-guide.md) |
|
|
14
|
-
| Workflow steps with prompts and skills | Quick-Start Guide → Workflow steps reference |
|
|
15
|
-
| Validation checklists per step | Quick-Start Guide → Validation checklist per step |
|
|
16
|
-
| Common mistakes to avoid | Quick-Start Guide → Common mistakes |
|
|
17
|
-
| First PR quality gate | Quick-Start Guide → First PR quality gate |
|
|
18
|
-
| Complete reference documentation | [`docs/full-documentation.md`](docs/full-documentation.md) |
|