@agentteams/cli 0.1.22
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/.agentteams/config.json +8 -0
- package/.agentteams/convention.md +100 -0
- package/.agentteams/platform/co-action-guide.md +144 -0
- package/.agentteams/platform/completion-report-guide.md +146 -0
- package/.agentteams/platform/convention-authoring-guide.md +112 -0
- package/.agentteams/platform/convention-ud-guide.md +59 -0
- package/.agentteams/platform/plan-guide.md +180 -0
- package/.agentteams/platform/plan-template.md +201 -0
- package/.agentteams/platform/post-mortem-guide.md +92 -0
- package/CODE_OF_CONDUCT.md +36 -0
- package/CONTRIBUTING.md +39 -0
- package/LICENSE +201 -0
- package/README.md +405 -0
- package/SECURITY.md +27 -0
- package/dist/api/coaction.d.ts +17 -0
- package/dist/api/coaction.d.ts.map +1 -0
- package/dist/api/coaction.js +102 -0
- package/dist/api/coaction.js.map +1 -0
- package/dist/api/comment.d.ts +13 -0
- package/dist/api/comment.d.ts.map +1 -0
- package/dist/api/comment.js +33 -0
- package/dist/api/comment.js.map +1 -0
- package/dist/api/feedback.d.ts +7 -0
- package/dist/api/feedback.d.ts.map +1 -0
- package/dist/api/feedback.js +6 -0
- package/dist/api/feedback.js.map +1 -0
- package/dist/api/linear.d.ts +5 -0
- package/dist/api/linear.d.ts.map +1 -0
- package/dist/api/linear.js +27 -0
- package/dist/api/linear.js.map +1 -0
- package/dist/api/member.d.ts +16 -0
- package/dist/api/member.d.ts.map +1 -0
- package/dist/api/member.js +6 -0
- package/dist/api/member.js.map +1 -0
- package/dist/api/plan.d.ts +51 -0
- package/dist/api/plan.d.ts.map +1 -0
- package/dist/api/plan.js +80 -0
- package/dist/api/plan.js.map +1 -0
- package/dist/api/postmortem.d.ts +6 -0
- package/dist/api/postmortem.d.ts.map +1 -0
- package/dist/api/postmortem.js +33 -0
- package/dist/api/postmortem.js.map +1 -0
- package/dist/api/report.d.ts +6 -0
- package/dist/api/report.d.ts.map +1 -0
- package/dist/api/report.js +33 -0
- package/dist/api/report.js.map +1 -0
- package/dist/api/search.d.ts +2 -0
- package/dist/api/search.d.ts.map +1 -0
- package/dist/api/search.js +20 -0
- package/dist/api/search.js.map +1 -0
- package/dist/api/status.d.ts +12 -0
- package/dist/api/status.d.ts.map +1 -0
- package/dist/api/status.js +33 -0
- package/dist/api/status.js.map +1 -0
- package/dist/commands/agentConfig.d.ts +4 -0
- package/dist/commands/agentConfig.d.ts.map +1 -0
- package/dist/commands/agentConfig.js +41 -0
- package/dist/commands/agentConfig.js.map +1 -0
- package/dist/commands/agentConfigCommand.d.ts +2 -0
- package/dist/commands/agentConfigCommand.d.ts.map +1 -0
- package/dist/commands/agentConfigCommand.js +20 -0
- package/dist/commands/agentConfigCommand.js.map +1 -0
- package/dist/commands/coaction.d.ts +2 -0
- package/dist/commands/coaction.d.ts.map +1 -0
- package/dist/commands/coaction.js +405 -0
- package/dist/commands/coaction.js.map +1 -0
- package/dist/commands/comment.d.ts +2 -0
- package/dist/commands/comment.d.ts.map +1 -0
- package/dist/commands/comment.js +63 -0
- package/dist/commands/comment.js.map +1 -0
- package/dist/commands/config.d.ts +2 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +30 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/convention.d.ts +35 -0
- package/dist/commands/convention.d.ts.map +1 -0
- package/dist/commands/convention.js +680 -0
- package/dist/commands/convention.js.map +1 -0
- package/dist/commands/conventionRouter.d.ts +3 -0
- package/dist/commands/conventionRouter.d.ts.map +1 -0
- package/dist/commands/conventionRouter.js +46 -0
- package/dist/commands/conventionRouter.js.map +1 -0
- package/dist/commands/dependency.d.ts +4 -0
- package/dist/commands/dependency.d.ts.map +1 -0
- package/dist/commands/dependency.js +41 -0
- package/dist/commands/dependency.js.map +1 -0
- package/dist/commands/dependencyCommand.d.ts +2 -0
- package/dist/commands/dependencyCommand.d.ts.map +1 -0
- package/dist/commands/dependencyCommand.js +27 -0
- package/dist/commands/dependencyCommand.js.map +1 -0
- package/dist/commands/feedback.d.ts +2 -0
- package/dist/commands/feedback.d.ts.map +1 -0
- package/dist/commands/feedback.js +38 -0
- package/dist/commands/feedback.js.map +1 -0
- package/dist/commands/index.d.ts +2 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +128 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/init.d.ts +22 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +293 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/linear.d.ts +2 -0
- package/dist/commands/linear.d.ts.map +1 -0
- package/dist/commands/linear.js +41 -0
- package/dist/commands/linear.js.map +1 -0
- package/dist/commands/plan.d.ts +12 -0
- package/dist/commands/plan.d.ts.map +1 -0
- package/dist/commands/plan.js +626 -0
- package/dist/commands/plan.js.map +1 -0
- package/dist/commands/postmortem.d.ts +2 -0
- package/dist/commands/postmortem.d.ts.map +1 -0
- package/dist/commands/postmortem.js +157 -0
- package/dist/commands/postmortem.js.map +1 -0
- package/dist/commands/report.d.ts +2 -0
- package/dist/commands/report.d.ts.map +1 -0
- package/dist/commands/report.js +213 -0
- package/dist/commands/report.js.map +1 -0
- package/dist/commands/search.d.ts +2 -0
- package/dist/commands/search.d.ts.map +1 -0
- package/dist/commands/search.js +29 -0
- package/dist/commands/search.js.map +1 -0
- package/dist/commands/status.d.ts +2 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +60 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +750 -0
- package/dist/index.js.map +1 -0
- package/dist/types/index.d.ts +237 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +6 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/atomicWrite.d.ts +2 -0
- package/dist/utils/atomicWrite.d.ts.map +1 -0
- package/dist/utils/atomicWrite.js +7 -0
- package/dist/utils/atomicWrite.js.map +1 -0
- package/dist/utils/authServer.d.ts +18 -0
- package/dist/utils/authServer.d.ts.map +1 -0
- package/dist/utils/authServer.js +215 -0
- package/dist/utils/authServer.js.map +1 -0
- package/dist/utils/config.d.ts +31 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +113 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/env.d.ts +7 -0
- package/dist/utils/env.d.ts.map +1 -0
- package/dist/utils/env.js +19 -0
- package/dist/utils/env.js.map +1 -0
- package/dist/utils/errors.d.ts +6 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +112 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/formatter.d.ts +2 -0
- package/dist/utils/formatter.d.ts.map +1 -0
- package/dist/utils/formatter.js +55 -0
- package/dist/utils/formatter.js.map +1 -0
- package/dist/utils/git.d.ts +21 -0
- package/dist/utils/git.d.ts.map +1 -0
- package/dist/utils/git.js +44 -0
- package/dist/utils/git.js.map +1 -0
- package/dist/utils/httpClient.d.ts +3 -0
- package/dist/utils/httpClient.d.ts.map +1 -0
- package/dist/utils/httpClient.js +45 -0
- package/dist/utils/httpClient.js.map +1 -0
- package/dist/utils/httpHeaders.d.ts +3 -0
- package/dist/utils/httpHeaders.d.ts.map +1 -0
- package/dist/utils/httpHeaders.js +11 -0
- package/dist/utils/httpHeaders.js.map +1 -0
- package/dist/utils/initOutput.d.ts +3 -0
- package/dist/utils/initOutput.d.ts.map +1 -0
- package/dist/utils/initOutput.js +45 -0
- package/dist/utils/initOutput.js.map +1 -0
- package/dist/utils/legacyCompat.d.ts +3 -0
- package/dist/utils/legacyCompat.d.ts.map +1 -0
- package/dist/utils/legacyCompat.js +20 -0
- package/dist/utils/legacyCompat.js.map +1 -0
- package/dist/utils/outputPolicy.d.ts +12 -0
- package/dist/utils/outputPolicy.d.ts.map +1 -0
- package/dist/utils/outputPolicy.js +171 -0
- package/dist/utils/outputPolicy.js.map +1 -0
- package/dist/utils/parsers.d.ts +14 -0
- package/dist/utils/parsers.d.ts.map +1 -0
- package/dist/utils/parsers.js +78 -0
- package/dist/utils/parsers.js.map +1 -0
- package/dist/utils/planFormat.d.ts +17 -0
- package/dist/utils/planFormat.d.ts.map +1 -0
- package/dist/utils/planFormat.js +81 -0
- package/dist/utils/planFormat.js.map +1 -0
- package/dist/utils/spinner.d.ts +6 -0
- package/dist/utils/spinner.d.ts.map +1 -0
- package/dist/utils/spinner.js +34 -0
- package/dist/utils/spinner.js.map +1 -0
- package/dist/utils/updateCheck.d.ts +19 -0
- package/dist/utils/updateCheck.d.ts.map +1 -0
- package/dist/utils/updateCheck.js +103 -0
- package/dist/utils/updateCheck.js.map +1 -0
- package/package.json +55 -0
- package/rlarua-agentteams-cli-0.1.8.tgz +0 -0
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
---
|
|
2
|
+
trigger: model_decision
|
|
3
|
+
description: Reference when creating, executing, or completing a plan.
|
|
4
|
+
---
|
|
5
|
+
# Plan Guide (AgentTeams)
|
|
6
|
+
|
|
7
|
+
> ⚠️ This file is automatically deployed from the server. Do not edit it directly.
|
|
8
|
+
|
|
9
|
+
This guide defines how to **write** a high-quality plan. For execution details (status transitions, CLI commands, comments), follow your project's workflow conventions and CLI help.
|
|
10
|
+
|
|
11
|
+
## What a Plan Is
|
|
12
|
+
|
|
13
|
+
- A plan is a tracked unit of work with a type, status, and priority.
|
|
14
|
+
- Use plans when the work spans multiple steps or requires review and verification.
|
|
15
|
+
- Plans support comments, assignment, and status transitions.
|
|
16
|
+
- Plans have a **type** that classifies the nature of the work:
|
|
17
|
+
- `FEATURE` — New functionality or capability
|
|
18
|
+
- `BUG_FIX` — Fix for a defect or unexpected behavior
|
|
19
|
+
- `ISSUE` — Investigation or issue resolution
|
|
20
|
+
- `REFACTOR` — Code restructuring without behavior change
|
|
21
|
+
- `CHORE` — Maintenance, config, docs, or other housekeeping
|
|
22
|
+
|
|
23
|
+
## Plan Writing Workflow
|
|
24
|
+
|
|
25
|
+
1. **Clarify requirements** — explore the codebase, interview the requester if needed
|
|
26
|
+
2. **Write plan body** — follow Plan Tiers below to pick the right structure
|
|
27
|
+
3. **Gap analysis** — SHOULD run Metis review; use the self-check below if unavailable
|
|
28
|
+
4. **Register** — `agentteams plan create --file {path} --type {type} --priority {level}`
|
|
29
|
+
|
|
30
|
+
Repository linkage note:
|
|
31
|
+
|
|
32
|
+
- If .agentteams/config.json contains `repositoryId`, `plan create` links the new plan to that repository automatically.
|
|
33
|
+
|
|
34
|
+
## Execution Shortcuts
|
|
35
|
+
|
|
36
|
+
For standard execution flows, use lifecycle shortcuts instead of manual multi-step status updates.
|
|
37
|
+
|
|
38
|
+
~~~bash
|
|
39
|
+
# Start plan lifecycle
|
|
40
|
+
agentteams plan start --id {planId}
|
|
41
|
+
|
|
42
|
+
# Finish plan lifecycle
|
|
43
|
+
agentteams plan finish --id {planId}
|
|
44
|
+
|
|
45
|
+
# Finish and include completion report with metrics
|
|
46
|
+
agentteams plan finish --id {planId} \
|
|
47
|
+
--report-title "<what you did and why, in one sentence>" \
|
|
48
|
+
--report-file .agentteams/cli/temp/{planId-first-8-chars}-report.md \
|
|
49
|
+
--quality-score <0-100, see Quality Score dimensions> \
|
|
50
|
+
--report-status <COMPLETED | PARTIAL | FAILED>
|
|
51
|
+
|
|
52
|
+
~~~
|
|
53
|
+
|
|
54
|
+
## Plan Start → Execution Flow
|
|
55
|
+
|
|
56
|
+
When a user explicitly says to start a plan (e.g. "start plan {id}", "let's start {id}"), treat it as an explicit execution approval. Follow this flow:
|
|
57
|
+
|
|
58
|
+
~~~bash
|
|
59
|
+
# 1. Download runbook
|
|
60
|
+
agentteams plan download --id {planId}
|
|
61
|
+
|
|
62
|
+
# 2. Check for blocking comments
|
|
63
|
+
agentteams comment list --plan-id {planId}
|
|
64
|
+
|
|
65
|
+
# 3. Start lifecycle
|
|
66
|
+
agentteams plan start --id {planId}
|
|
67
|
+
~~~
|
|
68
|
+
|
|
69
|
+
**Decision after comment check:**
|
|
70
|
+
|
|
71
|
+
| Comments found | Action |
|
|
72
|
+
|---|---|
|
|
73
|
+
| `RISK` or `MODIFICATION` present | Report to user and wait for confirmation before implementing |
|
|
74
|
+
| None (or `GENERAL` only) | Proceed with implementation immediately |
|
|
75
|
+
|
|
76
|
+
The phrase "start the plan" is an explicit approval signal — do not stop after the CLI status change. Implement unless a blocking comment requires human confirmation.
|
|
77
|
+
|
|
78
|
+
## Entity Reference Resolution
|
|
79
|
+
|
|
80
|
+
Plans may contain entity references in `[label](type:id)` or `[label](type:id:path)` format. Resolve them as follows:
|
|
81
|
+
|
|
82
|
+
1. **ID prefix stripping (IMPORTANT)**: The `id` part may include a type prefix such as `plan_`, `cr_`, `ca_`, `conv_`, or `pm_`. Always strip this prefix before passing the id to any CLI flag (`--id`, `--plan-id`, etc.).
|
|
83
|
+
- Example: `[My Plan](plan:plan_f62762fc-730a-4201-8586-e2541505ed1b)` → use `f62762fc-730a-4201-8586-e2541505ed1b`
|
|
84
|
+
- Full prefix list: `plan_` · `cr_` · `ca_` · `conv_` · `pm_`
|
|
85
|
+
2. Resolution by type:
|
|
86
|
+
- `convention:id:.agentteams/path` → Read the local file at the given path (e.g., `.agentteams/rules/context.md`)
|
|
87
|
+
- `completionReport:id` → Download with `agentteams report download --id {id}` and read the local file
|
|
88
|
+
- `postMortem:id` → Download with `agentteams postmortem download --id {id}` and read the local file
|
|
89
|
+
- `coAction:id` → Download with `agentteams coaction download --id {id}` and read the local file
|
|
90
|
+
|
|
91
|
+
## During Plan Execution
|
|
92
|
+
|
|
93
|
+
Post comments to track progress:
|
|
94
|
+
|
|
95
|
+
- **Risk found**: `agentteams comment create --plan-id {planId} --type RISK --content "<risk description>" --affected-files "<paths>"`
|
|
96
|
+
- **Scope changed**: `agentteams comment create --plan-id {planId} --type MODIFICATION --content "<what changed and why>" --affected-files "<paths>"`
|
|
97
|
+
- **Status update**: `agentteams comment create --plan-id {planId} --type GENERAL --content "<current progress>"`
|
|
98
|
+
|
|
99
|
+
## After Completing or Cancelling a Plan
|
|
100
|
+
|
|
101
|
+
Clean up the local runbook:
|
|
102
|
+
|
|
103
|
+
~~~bash
|
|
104
|
+
agentteams plan cleanup --id {planId}
|
|
105
|
+
~~~
|
|
106
|
+
|
|
107
|
+
## Plan Tiers — Pick the Right Level
|
|
108
|
+
|
|
109
|
+
Not every plan needs the same structure. Pick the tier that matches your task size.
|
|
110
|
+
|
|
111
|
+
### Minimal (1 task, 1–2 files, <30 min)
|
|
112
|
+
|
|
113
|
+
- `## TL;DR` — 1–2 sentence summary, deliverables
|
|
114
|
+
- `## TODOs` — What to do + Acceptance Criteria per task
|
|
115
|
+
|
|
116
|
+
### Standard (2–3 tasks, known scope)
|
|
117
|
+
|
|
118
|
+
Everything in Minimal, plus:
|
|
119
|
+
|
|
120
|
+
- `## Context` — Original Request / Research Findings
|
|
121
|
+
- `## Work Objectives` — Deliverables / Definition of Done / Must Have / Must NOT Have
|
|
122
|
+
- `## Verification Strategy` — QA tool mapping (API→typecheck+test, CLI→test, Web→build)
|
|
123
|
+
- TODOs add: Must NOT do / References
|
|
124
|
+
|
|
125
|
+
### Full (4+ tasks, multi-wave, unfamiliar domain)
|
|
126
|
+
|
|
127
|
+
Everything in Standard, plus:
|
|
128
|
+
|
|
129
|
+
- Context adds: Interview Summary / Metis Review
|
|
130
|
+
- `## Execution Strategy` — Parallel Waves / Dependency Matrix / Agent Dispatch
|
|
131
|
+
- TODOs add: Agent Profile / Parallelization / QA Scenarios / Commit plan
|
|
132
|
+
|
|
133
|
+
> When unsure, start with Standard. Upgrade to Full when tasks reach 4+.
|
|
134
|
+
> `plan-template.md` provides a copyable Full-tier template. For Minimal/Standard, extract only the sections you need.
|
|
135
|
+
|
|
136
|
+
## Task Required Elements
|
|
137
|
+
|
|
138
|
+
Full tier requires all items. Standard tier requires ★ items only.
|
|
139
|
+
|
|
140
|
+
- ★ What to do / Must NOT do
|
|
141
|
+
- Recommended Agent Profile (category + skills + reason)
|
|
142
|
+
- Parallelization (Wave / Blocks / Blocked By)
|
|
143
|
+
- ★ References (Pattern / API / External)
|
|
144
|
+
- ★ Acceptance Criteria
|
|
145
|
+
- QA Scenarios (Tool / Steps / Expected Result / Evidence)
|
|
146
|
+
- Commit (message + files + pre-commit)
|
|
147
|
+
|
|
148
|
+
## Gap Analysis
|
|
149
|
+
|
|
150
|
+
SHOULD: Ask the Metis agent to review the plan draft before registering.
|
|
151
|
+
|
|
152
|
+
If Metis is unavailable, self-check:
|
|
153
|
+
|
|
154
|
+
- [ ] All required sections for the chosen tier present?
|
|
155
|
+
- [ ] Must NOT Have guardrails defined?
|
|
156
|
+
- [ ] Each TODO has acceptance criteria?
|
|
157
|
+
- [ ] Dependency graph correct (no circular blocks)?
|
|
158
|
+
- [ ] File references verified to exist?
|
|
159
|
+
|
|
160
|
+
## Verification Expectations
|
|
161
|
+
|
|
162
|
+
- If you touched API code: run API typecheck + tests.
|
|
163
|
+
- If you touched CLI code: run CLI tests.
|
|
164
|
+
- If you introduced a new endpoint: add at least one request-level test.
|
|
165
|
+
- If you changed a template: update its tests to match.
|
|
166
|
+
|
|
167
|
+
## Common Pitfalls
|
|
168
|
+
|
|
169
|
+
- Skipping tests because changes "look small"
|
|
170
|
+
- Changing API contracts without updating schemas/tests
|
|
171
|
+
- Writing files to project-specific directories when they should be platform-wide
|
|
172
|
+
- Mixing platform content with project conventions (keep them separate)
|
|
173
|
+
- Excessive comments that restate the code
|
|
174
|
+
- Scope creep beyond task spec
|
|
175
|
+
- Over-abstraction or premature generalization
|
|
176
|
+
- Generic names (data, result, item) that obscure intent
|
|
177
|
+
|
|
178
|
+
## References
|
|
179
|
+
|
|
180
|
+
- `plan-template.md` — copyable Full-tier plan template
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
---
|
|
2
|
+
trigger: -
|
|
3
|
+
description: Copyable full plan template. Use as starting point when writing a new plan.
|
|
4
|
+
---
|
|
5
|
+
# Plan Template (Full Tier)
|
|
6
|
+
|
|
7
|
+
> ⚠️ This file is automatically deployed from the server. Do not edit it directly.
|
|
8
|
+
|
|
9
|
+
> This template is for **Full tier** plans (4+ tasks, multi-wave, unfamiliar domain).
|
|
10
|
+
> For Minimal or Standard plans, refer to the Plan Tiers section in `plan-guide.md` and extract only the sections you need.
|
|
11
|
+
|
|
12
|
+
## TL;DR
|
|
13
|
+
|
|
14
|
+
> **Quick Summary**: <!-- 1-2 sentence summary of what this plan achieves -->
|
|
15
|
+
>
|
|
16
|
+
> **Deliverables**:
|
|
17
|
+
>
|
|
18
|
+
> - <!-- file/module 1 — what changes -->
|
|
19
|
+
> - <!-- file/module 2 — what changes -->
|
|
20
|
+
>
|
|
21
|
+
> **Estimated Effort**: <!-- Short / Medium / Long -->
|
|
22
|
+
> **Type**: <!-- FEATURE / BUG_FIX / ISSUE / REFACTOR / CHORE -->
|
|
23
|
+
> **Parallel Execution**: <!-- YES / NO -->
|
|
24
|
+
> **Critical Path**: <!-- Task X → Task Y → ... -->
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Context
|
|
29
|
+
|
|
30
|
+
### Original Request
|
|
31
|
+
|
|
32
|
+
<!-- What the user/requester asked for and why -->
|
|
33
|
+
|
|
34
|
+
### Interview Summary
|
|
35
|
+
|
|
36
|
+
<!-- Key decisions from Q&A with the requester (if applicable) -->
|
|
37
|
+
|
|
38
|
+
### Research Findings
|
|
39
|
+
|
|
40
|
+
<!-- What you discovered from exploring the codebase, docs, or external sources -->
|
|
41
|
+
|
|
42
|
+
### Metis Review
|
|
43
|
+
|
|
44
|
+
<!-- Gaps identified by Metis review (or self-check results) -->
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## Work Objectives
|
|
49
|
+
|
|
50
|
+
### Core Objective
|
|
51
|
+
|
|
52
|
+
<!-- One sentence: what success looks like -->
|
|
53
|
+
|
|
54
|
+
### Concrete Deliverables
|
|
55
|
+
|
|
56
|
+
- <!-- file/module — description -->
|
|
57
|
+
|
|
58
|
+
### Definition of Done
|
|
59
|
+
|
|
60
|
+
- <!-- Criterion 1 -->
|
|
61
|
+
- <!-- Criterion 2 -->
|
|
62
|
+
|
|
63
|
+
### Must Have
|
|
64
|
+
|
|
65
|
+
- <!-- Non-negotiable requirement -->
|
|
66
|
+
|
|
67
|
+
### Must NOT Have (Guardrails)
|
|
68
|
+
|
|
69
|
+
- <!-- Explicitly forbidden action -->
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Verification Strategy
|
|
74
|
+
|
|
75
|
+
> **ZERO HUMAN INTERVENTION** — ALL verification is agent-executed.
|
|
76
|
+
|
|
77
|
+
### QA Policy
|
|
78
|
+
|
|
79
|
+
- <!-- Tool/command mapping: API→typecheck+test, CLI→test, Web→build+playwright -->
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Execution Strategy
|
|
84
|
+
|
|
85
|
+
### Parallel Execution Waves
|
|
86
|
+
|
|
87
|
+
~~~
|
|
88
|
+
Wave 1:
|
|
89
|
+
├── Task 1: description [category]
|
|
90
|
+
└── Task 2: description [category]
|
|
91
|
+
|
|
92
|
+
Wave 2 (Wave 1 complete):
|
|
93
|
+
└── Task 3: description [category]
|
|
94
|
+
~~~
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## TODOs
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
- 1. Task title
|
|
103
|
+
|
|
104
|
+
**What to do**:
|
|
105
|
+
|
|
106
|
+
<!-- Detailed steps -->
|
|
107
|
+
|
|
108
|
+
**Must NOT do**:
|
|
109
|
+
|
|
110
|
+
- <!-- Forbidden action -->
|
|
111
|
+
|
|
112
|
+
**Recommended Agent Profile**:
|
|
113
|
+
|
|
114
|
+
- **Category**: `<!-- category -->`
|
|
115
|
+
- Reason: <!-- why this category -->
|
|
116
|
+
- **Skills**: <!-- skill list or none -->
|
|
117
|
+
|
|
118
|
+
**Parallelization**:
|
|
119
|
+
|
|
120
|
+
- **Can Run In Parallel**: <!-- YES / NO -->
|
|
121
|
+
- **Parallel Group**: <!-- Wave N -->
|
|
122
|
+
- **Blocks**: <!-- Task N or none -->
|
|
123
|
+
- **Blocked By**: <!-- Task N or none -->
|
|
124
|
+
|
|
125
|
+
**References**:
|
|
126
|
+
|
|
127
|
+
- <!-- file:lines — description -->
|
|
128
|
+
|
|
129
|
+
**Acceptance Criteria**:
|
|
130
|
+
|
|
131
|
+
- <!-- Verifiable criterion -->
|
|
132
|
+
|
|
133
|
+
**QA Scenarios**:
|
|
134
|
+
|
|
135
|
+
~~~
|
|
136
|
+
Scenario: description
|
|
137
|
+
Tool: Bash
|
|
138
|
+
Steps:
|
|
139
|
+
1. command
|
|
140
|
+
Expected Result: what success looks like
|
|
141
|
+
Failure Indicators: what failure looks like
|
|
142
|
+
Evidence: .sisyphus/evidence/task-N-name.txt
|
|
143
|
+
~~~
|
|
144
|
+
|
|
145
|
+
**Commit**: <!-- YES / NO -->
|
|
146
|
+
|
|
147
|
+
- Message: `<!-- type(scope): description -->`
|
|
148
|
+
- Files: <!-- file list -->
|
|
149
|
+
- Pre-commit: `<!-- verification command -->`
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## Final Verification Wave
|
|
154
|
+
|
|
155
|
+
- F1. **Final check** — `quick`
|
|
156
|
+
|
|
157
|
+
1. <!-- verification command 1 -->
|
|
158
|
+
2. <!-- verification command 2 -->
|
|
159
|
+
|
|
160
|
+
Output: `<!-- result format -->`
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
## Commit Strategy
|
|
165
|
+
|
|
166
|
+
- **Task 1**: `<!-- commit message -->`
|
|
167
|
+
- **Task 2**: `<!-- commit message -->`
|
|
168
|
+
|
|
169
|
+
## Success Criteria
|
|
170
|
+
|
|
171
|
+
~~~bash
|
|
172
|
+
# <!-- description -->
|
|
173
|
+
<!-- command -->
|
|
174
|
+
# Expected: <!-- result -->
|
|
175
|
+
~~~
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## QA Scenario Examples
|
|
180
|
+
|
|
181
|
+
### Good (specific, verifiable)
|
|
182
|
+
|
|
183
|
+
~~~
|
|
184
|
+
Scenario: API returns 404 for non-existent plan
|
|
185
|
+
Tool: Bash
|
|
186
|
+
Steps:
|
|
187
|
+
1. curl -s -o /dev/null -w "%{http_code}" http://localhost:3001/api/plans/nonexistent-id
|
|
188
|
+
Expected Result: 404
|
|
189
|
+
Failure Indicators: 200 or 500
|
|
190
|
+
Evidence: .sisyphus/evidence/plan-404.txt
|
|
191
|
+
~~~
|
|
192
|
+
|
|
193
|
+
### Bad (vague, unverifiable)
|
|
194
|
+
|
|
195
|
+
~~~
|
|
196
|
+
Scenario: API works correctly
|
|
197
|
+
Tool: Manual
|
|
198
|
+
Steps:
|
|
199
|
+
1. Test the API
|
|
200
|
+
Expected Result: It works
|
|
201
|
+
~~~
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
---
|
|
2
|
+
trigger: model_decision
|
|
3
|
+
description: Reference when writing a post mortem.
|
|
4
|
+
---
|
|
5
|
+
# Post Mortem Guide (AgentTeams)
|
|
6
|
+
|
|
7
|
+
> ⚠️ This file is automatically deployed from the server. Do not edit it directly.
|
|
8
|
+
|
|
9
|
+
A post mortem is a written analysis of an incident, focusing on root cause and prevention.
|
|
10
|
+
|
|
11
|
+
## Goals
|
|
12
|
+
|
|
13
|
+
- Capture what happened and when
|
|
14
|
+
- Identify the root cause (not symptoms)
|
|
15
|
+
- Document the impact (users, revenue, SLA, operations)
|
|
16
|
+
- Define concrete action items to prevent recurrence
|
|
17
|
+
|
|
18
|
+
## Before You Start
|
|
19
|
+
|
|
20
|
+
- Collect logs, alerts, and key timestamps.
|
|
21
|
+
- Identify the affected systems and user segments.
|
|
22
|
+
- Confirm whether this was a one-off or part of a recurring pattern.
|
|
23
|
+
|
|
24
|
+
## Structure
|
|
25
|
+
|
|
26
|
+
- Title: short incident identifier
|
|
27
|
+
- Content: narrative of what happened and what was learned
|
|
28
|
+
- Action items: specific tasks with owners and deadlines
|
|
29
|
+
- Status: OPEN, IN_PROGRESS, or RESOLVED
|
|
30
|
+
|
|
31
|
+
## Root Cause Notes
|
|
32
|
+
|
|
33
|
+
- Prefer a clear causal chain over vague labels.
|
|
34
|
+
- Distinguish: trigger vs contributing factors vs detection failure.
|
|
35
|
+
- Include "why it was not caught earlier".
|
|
36
|
+
|
|
37
|
+
## Tips
|
|
38
|
+
|
|
39
|
+
- Use a clear timeline (timestamps if available)
|
|
40
|
+
- Avoid blame; focus on systems and process
|
|
41
|
+
- Include what detection/monitoring failed and how to improve it
|
|
42
|
+
|
|
43
|
+
## Action Items
|
|
44
|
+
|
|
45
|
+
- Make action items concrete and testable.
|
|
46
|
+
- Prefer small items with clear ownership.
|
|
47
|
+
- Track them like normal plans if they require engineering work.
|
|
48
|
+
|
|
49
|
+
## Post Mortem Content Template
|
|
50
|
+
|
|
51
|
+
Use this structure for the `--content` field or the `--file` content:
|
|
52
|
+
|
|
53
|
+
~~~markdown
|
|
54
|
+
## Summary
|
|
55
|
+
<what happened — 1-2 sentences, be specific>
|
|
56
|
+
|
|
57
|
+
## Timeline
|
|
58
|
+
- HH:MM - <event 1>
|
|
59
|
+
- HH:MM - <event 2>
|
|
60
|
+
|
|
61
|
+
## Root Cause
|
|
62
|
+
<specific cause, not symptoms — describe the causal chain>
|
|
63
|
+
|
|
64
|
+
## Impact
|
|
65
|
+
<who/what was affected and for how long>
|
|
66
|
+
|
|
67
|
+
## What Went Wrong
|
|
68
|
+
- <contributing factor 1>
|
|
69
|
+
- <contributing factor 2>
|
|
70
|
+
|
|
71
|
+
## What Went Well
|
|
72
|
+
- <what helped limit the damage or speed up recovery>
|
|
73
|
+
~~~
|
|
74
|
+
|
|
75
|
+
## Post Mortem File Naming
|
|
76
|
+
|
|
77
|
+
Use `{first 8 characters of planId}-postmortem.md`. Example: if planId is `57a51ec2-cf70-...`, the file name is `57a51ec2-postmortem.md`.
|
|
78
|
+
|
|
79
|
+
## Useful Commands
|
|
80
|
+
|
|
81
|
+
~~~bash
|
|
82
|
+
agentteams postmortem create \
|
|
83
|
+
--plan-id {planId} \
|
|
84
|
+
--title "<what broke — e.g., 'API 500 on plan finish after schema migration'>" \
|
|
85
|
+
--file .agentteams/cli/temp/{planId-first-8-chars}-postmortem.md \
|
|
86
|
+
--action-items "<specific preventive action 1>,<specific preventive action 2>" \
|
|
87
|
+
--status OPEN
|
|
88
|
+
~~~
|
|
89
|
+
|
|
90
|
+
Repository linkage note:
|
|
91
|
+
|
|
92
|
+
- If .agentteams/config.json contains `repositoryId`, `postmortem create` links the postmortem to that repository automatically.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Code of Conduct
|
|
2
|
+
|
|
3
|
+
## Our Pledge
|
|
4
|
+
|
|
5
|
+
We pledge to make participation in this project a harassment-free experience for everyone.
|
|
6
|
+
|
|
7
|
+
## Our Standards
|
|
8
|
+
|
|
9
|
+
Examples of behavior that contributes to a positive environment:
|
|
10
|
+
|
|
11
|
+
- Being respectful and considerate
|
|
12
|
+
- Giving and accepting constructive feedback
|
|
13
|
+
- Focusing on what is best for the community
|
|
14
|
+
|
|
15
|
+
Examples of unacceptable behavior include:
|
|
16
|
+
|
|
17
|
+
- Harassment, trolling, or insulting comments
|
|
18
|
+
- Public or private abuse of any community member
|
|
19
|
+
- Publishing private information without explicit permission
|
|
20
|
+
|
|
21
|
+
## Enforcement
|
|
22
|
+
|
|
23
|
+
Project maintainers are responsible for clarifying and enforcing standards of acceptable behavior.
|
|
24
|
+
|
|
25
|
+
## Scope
|
|
26
|
+
|
|
27
|
+
This Code of Conduct applies within all project spaces and public interactions representing the project.
|
|
28
|
+
|
|
29
|
+
## Reporting
|
|
30
|
+
|
|
31
|
+
To report unacceptable behavior, contact maintainers through a private GitHub channel.
|
|
32
|
+
|
|
33
|
+
## Attribution
|
|
34
|
+
|
|
35
|
+
This Code of Conduct is adapted from the Contributor Covenant, version 2.1:
|
|
36
|
+
https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
|
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Contributing to AgentTeams CLI
|
|
2
|
+
|
|
3
|
+
Thanks for your interest in contributing.
|
|
4
|
+
|
|
5
|
+
This repository is managed as a public mirror of the CLI source-of-truth in the main monorepo.
|
|
6
|
+
|
|
7
|
+
## Scope
|
|
8
|
+
|
|
9
|
+
- Issues are welcome for bugs, feature requests, and questions.
|
|
10
|
+
- Pull requests are welcome for docs fixes, typo fixes, and small bug fixes.
|
|
11
|
+
- For major behavior/API changes, open an issue first and align on scope before sending a PR.
|
|
12
|
+
|
|
13
|
+
## Mirror Policy
|
|
14
|
+
|
|
15
|
+
- This repository may be updated by automated sync from the source monorepo.
|
|
16
|
+
- Maintainers can close or re-home PRs that conflict with the source-of-truth workflow.
|
|
17
|
+
- If needed, maintainers may re-implement accepted changes in the source monorepo before syncing back.
|
|
18
|
+
|
|
19
|
+
## Development
|
|
20
|
+
|
|
21
|
+
- Runtime: Node.js 24+
|
|
22
|
+
- Package manager: npm 10+
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npm ci
|
|
26
|
+
npm run build
|
|
27
|
+
npm test
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Pull Request Checklist
|
|
31
|
+
|
|
32
|
+
1. Keep scope focused and minimal.
|
|
33
|
+
2. Add or update tests for behavior changes.
|
|
34
|
+
3. Ensure `npm run build` and `npm test` pass.
|
|
35
|
+
4. Describe why the change is needed.
|
|
36
|
+
|
|
37
|
+
## Code of Conduct
|
|
38
|
+
|
|
39
|
+
By participating in this project, you agree to follow `CODE_OF_CONDUCT.md`.
|