agent-context-store 0.2.8 → 0.2.10

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 CHANGED
@@ -85,60 +85,100 @@ A summary is shown before anything is written, and you can abort with `n`.
85
85
 
86
86
  ## Step 3: Run Your First Workflow
87
87
 
88
- Once the store is initialized, use `acs` to create artifacts, validate work, hand off between roles, and package context for the next agent. The examples below use task `DEMO-0001` — replace it with your own task ID.
88
+ After setup, each team member opens their AI agent (Cursor or Claude Code) and invokes the matching role skill by name. The skill tells the agent exactly which `acs` commands to run the human never types `acs` directly.
89
89
 
90
- ### Use Case 1 — BA captures requirements and hands off to SA
90
+ > **Skill invocation syntax**
91
+ > - Cursor / Claude Code: `@acs-ba`, `@acs-sa`, `@acs-dev`, `@acs-qa`
91
92
 
92
- The BA agent writes a requirements document, confirms all artifacts are valid, and creates a locked handoff record for the SA agent to pick up.
93
+ The examples below follow a single feature task `DEMO-0001: Login with OTP` through the full BA SA Dev QA lifecycle.
93
94
 
95
+ ---
96
+
97
+ ### Use Case 1 — BA captures requirements
98
+
99
+ **Human → Cursor / Claude Code:**
100
+ ```
101
+ /acs-ba We need to add OTP-based login. Task ID is DEMO-0001. Title: "Login with OTP".
102
+ ```
103
+
104
+ The `acs-ba` skill activates and the agent internally runs:
94
105
  ```bash
95
- acs roles # see available roles
96
- acs role explain ba --task DEMO-0001 # show what BA should produce
97
- acs ba new srs --task DEMO-0001 --title "Login with OTP" # create the SRS artifact
98
- acs validate --role ba --task DEMO-0001 # confirm artifacts are complete
99
- acs handoff create --from ba --to sa --task DEMO-0001 # lock the BA→SA contract
100
- acs handoff check HOFF-DEMO-0001-BA-SA # verify the handoff record
101
- acs package --task DEMO-0001 --role sa # bundle context for the SA agent
106
+ acs status && acs doctor
107
+ acs ba new srs --task DEMO-0001 --title "Login with OTP"
108
+ acs ba new user-story --task DEMO-0001 --title "Login with OTP User Story"
109
+ acs ba new acceptance-criteria --task DEMO-0001 --title "Login with OTP Acceptance Criteria"
110
+ acs validate --role ba --task DEMO-0001
111
+ acs handoff create --from ba --to sa --task DEMO-0001
112
+ acs package --task DEMO-0001 --role sa
113
+ acs index
102
114
  ```
103
115
 
104
- ### Use Case 2 SA produces design artifacts and hands off to Dev
116
+ The agent ends its response with a structured `[HANDOFF: BA → SA | DEMO-0001]` prompt for the SA agent to pick up.
105
117
 
106
- The SA agent reads the BA package, produces the system design and API spec, then hands off a verified package to the Dev agent.
118
+ ---
107
119
 
120
+ ### Use Case 2 — SA produces system design
121
+
122
+ **Human → Cursor / Claude Code:**
123
+ ```
124
+ /acs-sa Pick up DEMO-0001 from BA. Design the OTP login system.
125
+ ```
126
+
127
+ The `acs-sa` skill activates and the agent internally runs:
108
128
  ```bash
109
- acs next --role sa --task DEMO-0001 # see what SA needs to produce
129
+ acs next --role sa --task DEMO-0001
110
130
  acs sa new sdd --task DEMO-0001 --title "Login with OTP System Design"
111
131
  acs sa new adr --task DEMO-0001 --title "Use Redis for OTP State"
112
132
  acs sa new api-design --task DEMO-0001 --title "OTP Login API"
113
- acs validate --role sa --task DEMO-0001 # confirm design artifacts pass validation
133
+ acs validate --role sa --task DEMO-0001
114
134
  acs handoff create --from sa --to dev --task DEMO-0001
115
- acs package --task DEMO-0001 --role dev # bundle context for the Dev agent
135
+ acs package --task DEMO-0001 --role dev
136
+ acs index
116
137
  ```
117
138
 
118
- ### Use Case 3 Dev implements and hands off to QA
139
+ The agent ends its response with a `[HANDOFF: SA DEV | DEMO-0001]` prompt.
119
140
 
120
- The Dev agent reads the SA package, records implementation notes, and hands off to QA with a ready-to-test package.
141
+ ---
121
142
 
143
+ ### Use Case 3 — Dev implements the feature
144
+
145
+ **Human → Cursor / Claude Code:**
146
+ ```
147
+ /acs-dev Implement DEMO-0001 based on the SA design. Task ID is DEMO-0001.
148
+ ```
149
+
150
+ The `acs-dev` skill activates and the agent internally runs:
122
151
  ```bash
123
- acs next --role dev --task DEMO-0001 # confirm inputs are available
124
- acs dev new implementation-note --task DEMO-0001 # record implementation decisions
152
+ acs next --role dev --task DEMO-0001
153
+ acs dev new implementation-note --task DEMO-0001
125
154
  acs validate --role dev --task DEMO-0001
126
155
  acs handoff create --from dev --to qa --task DEMO-0001
127
- acs package --task DEMO-0001 --role qa # bundle context for the QA agent
156
+ acs package --task DEMO-0001 --role qa
157
+ acs index
128
158
  ```
129
159
 
130
- ### Use Case 4 QA writes a test plan and closes the loop
160
+ The agent ends its response with a `[HANDOFF: DEV QA | DEMO-0001]` prompt.
161
+
162
+ ---
131
163
 
132
- The QA agent reads the Dev package and writes a structured test plan to complete the task lifecycle.
164
+ ### Use Case 4 QA validates and closes the task
133
165
 
166
+ **Human → Cursor / Claude Code:**
167
+ ```
168
+ /acs-qa Write the test plan for DEMO-0001.
169
+ ```
170
+
171
+ The `acs-qa` skill activates and the agent internally runs:
134
172
  ```bash
135
- acs next --role qa --task DEMO-0001 # confirm handoff from Dev is present
173
+ acs next --role qa --task DEMO-0001
136
174
  acs qa new test-plan --task DEMO-0001 --title "OTP Login Test Plan"
137
175
  acs validate --role qa --task DEMO-0001
138
- acs handoff list --task DEMO-0001 # review all handoffs for the task
139
- acs index # rebuild index.json
176
+ acs handoff list --task DEMO-0001
177
+ acs index
140
178
  ```
141
179
 
180
+ All four role artifacts and handoff records are now persisted in the store.
181
+
142
182
  ## How Agents Should Use It
143
183
 
144
184
  Give each agent access to the same project (in-repo mode) or context store repository (dedicated mode) and instruct it to use `acs` for durable handoffs.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: acs-ba
3
- description: ACS Business Analyst role — capture requirements as SRS artifacts and hand off to the SA agent. Use when acting as BA, writing requirements, or starting a new task from scratch.
3
+ description: ACS Business Analyst role — capture requirements as SRS, user story, and acceptance criteria artifacts, then hand off to the SA agent. Use when acting as BA, writing requirements, or starting a new task from scratch.
4
4
  ---
5
5
 
6
6
  # ACS — Business Analyst (BA) Role
@@ -14,13 +14,15 @@ acs doctor
14
14
 
15
15
  Fix any errors before continuing.
16
16
 
17
- ## 2. Create the SRS Artifact
17
+ ## 2. Create BA Artifacts
18
18
 
19
19
  ```bash
20
20
  acs ba new srs --task TASK-123 --title "Feature requirements"
21
+ acs ba new user-story --task TASK-123 --title "Feature user story"
22
+ acs ba new acceptance-criteria --task TASK-123 --title "Feature acceptance criteria"
21
23
  ```
22
24
 
23
- **Fill every section immediately** — replace all placeholders with real content from the conversation and source files. List consulted files under `source_refs`. Complete the Validation Checklist at the end of the file.
25
+ **Fill every section immediately** — replace all placeholders with real content from the conversation and source files. List consulted files under `source_refs`. Complete the Validation Checklist at the end of each file.
24
26
 
25
27
  ## 3. Validate
26
28
 
@@ -30,7 +32,27 @@ acs validate --role ba --task TASK-123
30
32
 
31
33
  Do not proceed until validation passes.
32
34
 
33
- ## 4. Hand Off to SA
35
+ ## 4. Request Approval
36
+
37
+ Ask the user or responsible stakeholder to review and approve the BA artifacts before handoff.
38
+
39
+ Do not create the SA handoff until all required BA artifacts are approved:
40
+
41
+ - SRS
42
+ - User story
43
+ - Acceptance criteria
44
+
45
+ If approval is granted, update each BA artifact frontmatter so `status: approved` and `approval_status: approved`.
46
+
47
+ Then re-run validation:
48
+
49
+ ```bash
50
+ acs validate --role ba --task TASK-123
51
+ ```
52
+
53
+ If approval is not granted, capture the requested changes in the artifacts and repeat validation before asking again.
54
+
55
+ ## 5. Hand Off to SA
34
56
 
35
57
  ```bash
36
58
  acs handoff create --from ba --to sa --task TASK-123
@@ -38,17 +60,19 @@ acs package --task TASK-123 --role sa
38
60
  acs index
39
61
  ```
40
62
 
41
- ## 5. Output Handoff Prompt
63
+ ## 6. Output Handoff Prompt
42
64
 
43
- End your response with this prompt for the SA agent:
65
+ Only after approval and handoff creation succeed, end your response with this prompt for the SA agent:
44
66
 
45
67
  ```
46
68
  [HANDOFF: BA → SA | TASK-123]
47
69
 
48
- The BA role has completed requirements for TASK-123.
70
+ The BA role has completed and received approval for requirements for TASK-123.
49
71
 
50
72
  Artifacts ready for you:
51
73
  - <path to SRS artifact>
74
+ - <path to user story artifact>
75
+ - <path to acceptance criteria artifact>
52
76
 
53
77
  Context package: <path printed by acs package>
54
78
 
@@ -60,5 +84,5 @@ Your next steps (SA role):
60
84
  5. When done, hand off to DEV: acs handoff create --from sa --to dev --task TASK-123
61
85
 
62
86
  Open questions from BA (resolve before or during design):
63
- - <list any open questions from the SRS>
87
+ - <list any open questions from the BA artifacts>
64
88
  ```
@@ -19,13 +19,14 @@ acs handoff check --from sa --to dev --task TASK-123
19
19
  acs package --task TASK-123 --role dev
20
20
  ```
21
21
 
22
- ## 2. Create Implementation Note
22
+ ## 2. Create DEV Artifacts
23
23
 
24
24
  ```bash
25
25
  acs dev new implementation-note --task TASK-123
26
+ acs dev new unit-test-note --task TASK-123
26
27
  ```
27
28
 
28
- **Fill every section immediately** — document implementation decisions, deviations from the design, and any constraints discovered during development. List consulted files under `source_refs`. Complete the Validation Checklist at the end of the file.
29
+ **Fill every section immediately** — document implementation decisions, deviations from the design, unit test coverage, and any constraints discovered during development. List consulted files under `source_refs`. Complete the Validation Checklist at the end of each file.
29
30
 
30
31
  ## 3. Validate
31
32
 
@@ -35,7 +36,24 @@ acs validate --role dev --task TASK-123
35
36
 
36
37
  Do not proceed until validation passes.
37
38
 
38
- ## 4. Hand Off to QA
39
+ ## 4. Mark Ready for Review
40
+
41
+ Do not create the QA handoff until all required DEV artifacts are ready for review:
42
+
43
+ - Implementation note
44
+ - Unit test note
45
+
46
+ Update each DEV artifact frontmatter so `status: ready_for_review`. Keep `approval_status: pending` unless a reviewer explicitly changes it.
47
+
48
+ Then re-run validation:
49
+
50
+ ```bash
51
+ acs validate --role dev --task TASK-123
52
+ ```
53
+
54
+ If the work is not ready for review, capture the remaining tasks or blockers in the artifacts and repeat validation before handoff.
55
+
56
+ ## 5. Hand Off to QA
39
57
 
40
58
  ```bash
41
59
  acs handoff create --from dev --to qa --task TASK-123
@@ -43,9 +61,9 @@ acs package --task TASK-123 --role qa
43
61
  acs index
44
62
  ```
45
63
 
46
- ## 5. Output Handoff Prompt
64
+ ## 6. Output Handoff Prompt
47
65
 
48
- End your response with this prompt for the QA agent:
66
+ Only after the artifacts are marked ready for review and handoff creation succeeds, end your response with this prompt for the QA agent:
49
67
 
50
68
  ```
51
69
  [HANDOFF: DEV → QA | TASK-123]
@@ -54,14 +72,16 @@ The DEV role has completed implementation for TASK-123.
54
72
 
55
73
  Artifacts ready for you:
56
74
  - <path to implementation note>
75
+ - <path to unit test note>
57
76
 
58
77
  Context package: <path printed by acs package>
59
78
 
60
79
  Your next steps (QA role):
61
80
  1. Read the context package above.
62
81
  2. Run: acs role explain qa --task TASK-123
63
- 3. Create your test plan: acs qa new test-plan --task TASK-123 --title "<title>"
82
+ 3. Create QA artifacts: acs qa new test-plan --task TASK-123 --title "<title>" and acs qa new qa-signoff --task TASK-123 --title "<title>"
64
83
  4. Fill all sections, then validate: acs validate --role qa --task TASK-123
84
+ 5. After approval, mark QA artifacts approved and hand off to SA: acs handoff create --from qa --to sa --task TASK-123
65
85
 
66
86
  Open questions from DEV (resolve before or during testing):
67
87
  - <list any open questions from the implementation note>
@@ -19,34 +19,70 @@ acs handoff check --from dev --to qa --task TASK-123
19
19
  acs package --task TASK-123 --role qa
20
20
  ```
21
21
 
22
- ## 2. Create Test Plan
22
+ ## 2. Create QA Artifacts
23
23
 
24
24
  ```bash
25
25
  acs qa new test-plan --task TASK-123 --title "Feature test plan"
26
+ acs qa new qa-signoff --task TASK-123 --title "Feature QA signoff"
26
27
  ```
27
28
 
28
- **Fill every section immediately** — document test scope, test cases, acceptance criteria, and any risks. List consulted files under `source_refs`. Complete the Validation Checklist at the end of the file.
29
+ **Fill every section immediately** — document test scope, test cases, acceptance criteria, signoff decision, and any risks. List consulted files under `source_refs`. Complete the Validation Checklist at the end of each file.
29
30
 
30
31
  ## 3. Validate
31
32
 
32
33
  ```bash
33
34
  acs validate --role qa --task TASK-123
35
+ ```
36
+
37
+ Do not proceed until validation passes.
38
+
39
+ ## 4. Request Approval
40
+
41
+ Ask the user or responsible stakeholder to review and approve the QA artifacts before handoff.
42
+
43
+ Do not create the SA handoff until all required QA artifacts are approved:
44
+
45
+ - Test plan
46
+ - QA signoff
47
+
48
+ If approval is granted, update each QA artifact frontmatter so `status: approved` and `approval_status: approved`.
49
+
50
+ Then re-run validation:
51
+
52
+ ```bash
53
+ acs validate --role qa --task TASK-123
54
+ ```
55
+
56
+ If approval is not granted, capture the requested changes in the artifacts and repeat validation before asking again.
57
+
58
+ ## 5. Hand Off to SA
59
+
60
+ ```bash
61
+ acs handoff create --from qa --to sa --task TASK-123
62
+ acs package --task TASK-123 --role sa
34
63
  acs index
35
64
  ```
36
65
 
37
- ## 4. Output Completion Report
66
+ ## 6. Output Handoff Prompt
38
67
 
39
- QA is the final role in the workflow. End your response with a completion summary:
68
+ Only after approval and handoff creation succeed, end your response with this prompt for the SA agent:
40
69
 
41
70
  ```
42
- [COMPLETE: QA | TASK-123]
71
+ [HANDOFF: QA → SA | TASK-123]
43
72
 
44
- QA has completed the test plan for TASK-123.
73
+ The QA role has completed and received approval for QA validation for TASK-123.
45
74
 
46
- Artifacts produced:
75
+ Artifacts ready for you:
47
76
  - <path to test plan>
77
+ - <path to QA signoff>
78
+
79
+ Context package: <path printed by acs package>
48
80
 
49
- Full artifact index: run `acs index` to view all artifacts and handoffs for this task.
81
+ Your next steps (SA role):
82
+ 1. Read the context package above.
83
+ 2. Run: acs role explain sa --task TASK-123
84
+ 3. Create the release readiness report: acs sa new release-readiness-report --task TASK-123 --title "<title>"
85
+ 4. Fill all sections, then validate: acs validate --role sa --task TASK-123
50
86
 
51
87
  Outstanding issues or risks:
52
88
  - <list any issues found during QA, or "None">
@@ -21,7 +21,7 @@ acs package --task TASK-123 --role sa
21
21
 
22
22
  ## 2. Create SA Artifacts
23
23
 
24
- Create one or more of the following based on the task scope:
24
+ Create the required SA artifacts before handing off to DEV:
25
25
 
26
26
  ```bash
27
27
  acs sa new sdd --task TASK-123 --title "Feature system design"
@@ -39,7 +39,27 @@ acs validate --role sa --task TASK-123
39
39
 
40
40
  Do not proceed until validation passes.
41
41
 
42
- ## 4. Hand Off to DEV
42
+ ## 4. Request Approval
43
+
44
+ Ask the user or responsible stakeholder to review and approve the SA design artifacts before handoff.
45
+
46
+ Do not create the DEV handoff until all required design artifacts are approved:
47
+
48
+ - SDD
49
+ - ADR
50
+ - API design
51
+
52
+ If approval is granted, update each SA artifact frontmatter so `status: approved` and `approval_status: approved`.
53
+
54
+ Then re-run validation:
55
+
56
+ ```bash
57
+ acs validate --role sa --task TASK-123
58
+ ```
59
+
60
+ If approval is not granted, capture the requested changes in the artifacts and repeat validation before asking again.
61
+
62
+ ## 5. Hand Off to DEV
43
63
 
44
64
  ```bash
45
65
  acs handoff create --from sa --to dev --task TASK-123
@@ -47,14 +67,14 @@ acs package --task TASK-123 --role dev
47
67
  acs index
48
68
  ```
49
69
 
50
- ## 5. Output Handoff Prompt
70
+ ## 6. Output Handoff Prompt
51
71
 
52
- End your response with this prompt for the DEV agent:
72
+ Only after approval and handoff creation succeed, end your response with this prompt for the DEV agent:
53
73
 
54
74
  ```
55
75
  [HANDOFF: SA → DEV | TASK-123]
56
76
 
57
- The SA role has completed the system design for TASK-123.
77
+ The SA role has completed and received approval for the system design for TASK-123.
58
78
 
59
79
  Artifacts ready for you:
60
80
  - <paths to SDD / ADR / API design artifacts>
@@ -64,9 +84,9 @@ Context package: <path printed by acs package>
64
84
  Your next steps (DEV role):
65
85
  1. Read the context package above.
66
86
  2. Run: acs role explain dev --task TASK-123
67
- 3. Create your implementation note: acs dev new implementation-note --task TASK-123
87
+ 3. Create implementation artifacts: acs dev new implementation-note --task TASK-123 and acs dev new unit-test-note --task TASK-123
68
88
  4. Fill all sections, then validate: acs validate --role dev --task TASK-123
69
- 5. When done, hand off to QA: acs handoff create --from dev --to qa --task TASK-123
89
+ 5. Mark DEV artifacts `status: ready_for_review`, re-validate, then hand off to QA: acs handoff create --from dev --to qa --task TASK-123
70
90
 
71
91
  Open questions from SA (resolve before or during implementation):
72
92
  - <list any open questions from the design artifacts>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-context-store",
3
- "version": "0.2.8",
3
+ "version": "0.2.10",
4
4
  "description": "acs CLI for Agent Context Store Toolkit.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -23,7 +23,7 @@
23
23
  },
24
24
  "dependencies": {
25
25
  "@inquirer/prompts": "^8.4.2",
26
- "agent-context-store-core": "0.2.8"
26
+ "agent-context-store-core": "0.2.10"
27
27
  },
28
28
  "scripts": {
29
29
  "build": "tsc -p tsconfig.json"