@starlein/paperclip-plugin-company-wizard 0.3.24 → 0.4.2
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 +31 -0
- package/README.md +15 -11
- package/dist/manifest.js +1 -6
- package/dist/manifest.js.map +2 -2
- package/dist/ui/index.css +3 -0
- package/dist/ui/index.css.map +2 -2
- package/dist/ui/index.js +59 -30
- package/dist/ui/index.js.map +3 -3
- package/dist/worker.js +266 -81
- package/dist/worker.js.map +3 -3
- package/package.json +1 -1
- package/templates/ai-wizard/config-format.md +4 -4
- package/templates/ai-wizard/interview-system.md +3 -3
- package/templates/ai-wizard/single-shot-system.md +3 -3
- package/templates/bootstrap-instructions.md +3 -3
- package/templates/modules/architecture-plan/agents/ui-designer/skills/design-system.md +1 -1
- package/templates/modules/auto-assign/agents/ceo/heartbeat-section.md +2 -8
- package/templates/modules/auto-assign/agents/product-owner/heartbeat-section.md +2 -9
- package/templates/modules/auto-assign/module.meta.json +1 -1
- package/templates/modules/auto-assign/skills/auto-assign.md +18 -15
- package/templates/modules/backlog/agents/ceo/heartbeat-section.md +2 -9
- package/templates/modules/backlog/agents/product-owner/heartbeat-section.md +2 -14
- package/templates/modules/backlog/module.meta.json +1 -1
- package/templates/modules/backlog/skills/backlog-health.md +20 -21
- package/templates/modules/codebase-onboarding/skills/codebase-audit.md +29 -30
- package/templates/modules/github-repo/agents/engineer/skills/git-workflow.md +11 -7
- package/templates/modules/github-repo/docs/git-workflow.md +10 -6
- package/templates/modules/hiring-review/skills/hiring-review.md +40 -16
- package/templates/modules/market-analysis/agents/ux-researcher/skills/market-analysis.md +1 -1
- package/templates/modules/pr-review/README.md +13 -13
- package/templates/modules/pr-review/agents/devops/skills/infra-review.md +1 -1
- package/templates/modules/pr-review/agents/engineer/skills/pr-workflow.md +17 -11
- package/templates/modules/pr-review/agents/product-owner/skills/product-review.md +1 -1
- package/templates/modules/pr-review/agents/qa/skills/qa-review.md +1 -1
- package/templates/modules/pr-review/agents/security-engineer/skills/pr-security-review.md +1 -1
- package/templates/modules/pr-review/agents/ui-designer/skills/design-review.md +1 -1
- package/templates/modules/pr-review/agents/ux-researcher/skills/ux-review.md +1 -1
- package/templates/modules/pr-review/docs/pr-conventions.md +11 -8
- package/templates/modules/stall-detection/README.md +8 -8
- package/templates/modules/stall-detection/agents/ceo/heartbeat-section.md +2 -11
- package/templates/modules/stall-detection/agents/ceo/skills/stall-detection.md +22 -13
- package/templates/modules/stall-detection/module.meta.json +1 -1
- package/templates/modules/triage/skills/issue-triage.md +20 -33
- package/templates/roles/audio-designer/HEARTBEAT.md +37 -21
- package/templates/roles/ceo/HEARTBEAT.md +34 -56
- package/templates/roles/cmo/HEARTBEAT.md +37 -21
- package/templates/roles/code-reviewer/HEARTBEAT.md +39 -19
- package/templates/roles/cto/HEARTBEAT.md +33 -25
- package/templates/roles/customer-success/HEARTBEAT.md +39 -19
- package/templates/roles/devops/HEARTBEAT.md +36 -25
- package/templates/roles/engineer/AGENTS.md +27 -9
- package/templates/roles/engineer/HEARTBEAT.md +35 -21
- package/templates/roles/game-artist/HEARTBEAT.md +37 -21
- package/templates/roles/game-designer/HEARTBEAT.md +37 -21
- package/templates/roles/level-designer/HEARTBEAT.md +37 -21
- package/templates/roles/product-owner/AGENTS.md +24 -8
- package/templates/roles/product-owner/HEARTBEAT.md +37 -19
- package/templates/roles/qa/AGENTS.md +26 -11
- package/templates/roles/qa/HEARTBEAT.md +37 -21
- package/templates/roles/security-engineer/AGENTS.md +21 -23
- package/templates/roles/security-engineer/HEARTBEAT.md +39 -19
- package/templates/roles/technical-writer/HEARTBEAT.md +39 -18
- package/templates/roles/ui-designer/AGENTS.md +26 -9
- package/templates/roles/ui-designer/HEARTBEAT.md +37 -21
- package/templates/roles/ux-researcher/HEARTBEAT.md +37 -21
|
@@ -1,33 +1,53 @@
|
|
|
1
|
-
# HEARTBEAT.md -- Code Reviewer Heartbeat
|
|
1
|
+
# HEARTBEAT.md -- Code Reviewer Heartbeat Checklist
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Run this checklist on every heartbeat. The Paperclip skill is the source of truth for board coordination; this file records the current expected flow and role-local reminders.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`.
|
|
5
|
+
## 1. Identity and Wake Context
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
- `GET /api/agents/me` -- confirm your id, role, companyId, budget, and chain of command.
|
|
8
|
+
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`, `PAPERCLIP_APPROVAL_ID`.
|
|
9
|
+
- If the wake reason is approval/review/routine, treat that object as the active assignment.
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
- Prioritize `in_progress` first, then `todo`.
|
|
11
|
+
## 2. Get Assigned Work
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
- Prefer `GET /api/agents/me/inbox-lite` for your actionable inbox.
|
|
14
|
+
- If `PAPERCLIP_TASK_ID` is set and belongs to you, prioritize it.
|
|
15
|
+
- Otherwise work assigned issues only. Never look for random unassigned work during a normal heartbeat.
|
|
16
|
+
- Include `todo`, `in_progress`, `in_review`, and review/approval tasks surfaced by the inbox. Skip blocked work unless you can unblock it.
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
- Read issue comments for PR link.
|
|
17
|
-
- Fetch diff: `gh pr diff <number>`.
|
|
18
|
-
- Review for correctness, security, style, simplicity.
|
|
19
|
-
- Post advisory feedback via `gh pr comment <number> --body-file <file>` (your review does not gate the merge — QA + CI do).
|
|
20
|
-
- Comment verdict on the originating issue.
|
|
21
|
-
- Mark issue done.
|
|
18
|
+
## 3. Load Execution Context
|
|
22
19
|
|
|
23
|
-
|
|
20
|
+
- For the chosen issue, call `GET /api/issues/{id}/heartbeat-context` before changing state.
|
|
21
|
+
- Inspect status, parent/children, project/goal, labels, comments, documents, work products, `blockedByIssueIds`, `executionPolicy`, and current execution state.
|
|
22
|
+
- Respect pause/cancel, budget, sandbox, and approval gates. Do not bypass executionPolicy review or approval stages.
|
|
24
23
|
|
|
25
|
-
|
|
24
|
+
## 4. Checkout and Work
|
|
25
|
+
|
|
26
|
+
- Checkout before mutating work: `POST /api/issues/{id}/checkout` with the expected current status when the API supports `expectedStatuses`.
|
|
27
|
+
- Never retry a 409; that issue belongs to another active run.
|
|
28
|
+
- Start actionable work in the same heartbeat; do not stop at a plan unless planning was requested.
|
|
29
|
+
- Leave durable progress with a clear next action. Use child issues for long or parallel delegated work instead of polling.
|
|
30
|
+
- Mark true dependencies with `blockedByIssueIds` instead of free-text blockers.
|
|
31
|
+
|
|
32
|
+
## 5. Evidence, Work Products, and Handover
|
|
33
|
+
|
|
34
|
+
- Record real verification: commands, test results, screenshots, reviewed artifacts, or explicit "not run" rationale.
|
|
35
|
+
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
|
+
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
|
+
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
+
- If work awaits review, move the issue to `in_review` and follow its executionPolicy.
|
|
39
|
+
|
|
40
|
+
## 6. Exit
|
|
41
|
+
|
|
42
|
+
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
+
- If the issue used an isolated execution workspace/worktree, close it before final disposition: read `currentExecutionWorkspace.id` from `heartbeat-context`, check `GET /api/execution-workspaces/{id}/close-readiness`, then archive with `PATCH /api/execution-workspaces/{id}` `{ "status": "archived" }` after commits/PRs are merged and the tree is clean. If close-readiness or cleanup is blocked, do not mark `done`; leave the issue `blocked`/`in_review` with the exact cleanup blocker and next owner.
|
|
44
|
+
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
26
45
|
|
|
27
46
|
## Rules
|
|
28
47
|
|
|
29
48
|
- Always use the Paperclip skill for coordination.
|
|
30
|
-
- Always include `X-Paperclip-Run-Id`
|
|
31
|
-
-
|
|
49
|
+
- Always include `X-Paperclip-Run-Id` on mutating API calls when available.
|
|
50
|
+
- Keep comments concise markdown: status line + bullets + links.
|
|
51
|
+
- Never expose secrets, credentials, private customer data, or hidden chain-of-thought in comments or artifacts.
|
|
32
52
|
|
|
33
53
|
<!-- Module heartbeat sections are inserted above this line during assembly -->
|
|
@@ -1,45 +1,53 @@
|
|
|
1
|
-
# HEARTBEAT.md --
|
|
1
|
+
# HEARTBEAT.md -- Cto Heartbeat Checklist
|
|
2
2
|
|
|
3
|
-
Run this checklist on every heartbeat.
|
|
3
|
+
Run this checklist on every heartbeat. The Paperclip skill is the source of truth for board coordination; this file records the current expected flow and role-local reminders.
|
|
4
4
|
|
|
5
|
-
## 1. Identity and Context
|
|
5
|
+
## 1. Identity and Wake Context
|
|
6
6
|
|
|
7
|
-
- `GET /api/agents/me` -- confirm your id, role, companyId.
|
|
8
|
-
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`.
|
|
7
|
+
- `GET /api/agents/me` -- confirm your id, role, companyId, budget, and chain of command.
|
|
8
|
+
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`, `PAPERCLIP_APPROVAL_ID`.
|
|
9
|
+
- If the wake reason is approval/review/routine, treat that object as the active assignment.
|
|
9
10
|
|
|
10
|
-
## 2. Get
|
|
11
|
+
## 2. Get Assigned Work
|
|
11
12
|
|
|
12
|
-
- `GET /api/
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
13
|
+
- Prefer `GET /api/agents/me/inbox-lite` for your actionable inbox.
|
|
14
|
+
- If `PAPERCLIP_TASK_ID` is set and belongs to you, prioritize it.
|
|
15
|
+
- Otherwise work assigned issues only. Never look for random unassigned work during a normal heartbeat.
|
|
16
|
+
- Include `todo`, `in_progress`, `in_review`, and review/approval tasks surfaced by the inbox. Skip blocked work unless you can unblock it.
|
|
16
17
|
|
|
17
|
-
## 3.
|
|
18
|
+
## 3. Load Execution Context
|
|
18
19
|
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
20
|
+
- For the chosen issue, call `GET /api/issues/{id}/heartbeat-context` before changing state.
|
|
21
|
+
- Inspect status, parent/children, project/goal, labels, comments, documents, work products, `blockedByIssueIds`, `executionPolicy`, and current execution state.
|
|
22
|
+
- Respect pause/cancel, budget, sandbox, and approval gates. Do not bypass executionPolicy review or approval stages.
|
|
22
23
|
|
|
23
|
-
## 4.
|
|
24
|
+
## 4. Checkout and Work
|
|
24
25
|
|
|
25
|
-
-
|
|
26
|
-
-
|
|
27
|
-
-
|
|
26
|
+
- Checkout before mutating work: `POST /api/issues/{id}/checkout` with the expected current status when the API supports `expectedStatuses`.
|
|
27
|
+
- Never retry a 409; that issue belongs to another active run.
|
|
28
|
+
- Start actionable work in the same heartbeat; do not stop at a plan unless planning was requested.
|
|
29
|
+
- Leave durable progress with a clear next action. Use child issues for long or parallel delegated work instead of polling.
|
|
30
|
+
- Mark true dependencies with `blockedByIssueIds` instead of free-text blockers.
|
|
28
31
|
|
|
29
|
-
## 5. Handover
|
|
32
|
+
## 5. Evidence, Work Products, and Handover
|
|
30
33
|
|
|
31
|
-
-
|
|
32
|
-
-
|
|
34
|
+
- Record real verification: commands, test results, screenshots, reviewed artifacts, or explicit "not run" rationale.
|
|
35
|
+
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
|
+
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
|
+
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
+
- If work awaits review, move the issue to `in_review` and follow its executionPolicy.
|
|
33
39
|
|
|
34
40
|
## 6. Exit
|
|
35
41
|
|
|
36
|
-
-
|
|
37
|
-
- If
|
|
42
|
+
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
+
- If the issue used an isolated execution workspace/worktree, close it before final disposition: read `currentExecutionWorkspace.id` from `heartbeat-context`, check `GET /api/execution-workspaces/{id}/close-readiness`, then archive with `PATCH /api/execution-workspaces/{id}` `{ "status": "archived" }` after commits/PRs are merged and the tree is clean. If close-readiness or cleanup is blocked, do not mark `done`; leave the issue `blocked`/`in_review` with the exact cleanup blocker and next owner.
|
|
44
|
+
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
38
45
|
|
|
39
46
|
## Rules
|
|
40
47
|
|
|
41
48
|
- Always use the Paperclip skill for coordination.
|
|
42
|
-
- Always include `X-Paperclip-Run-Id`
|
|
43
|
-
-
|
|
49
|
+
- Always include `X-Paperclip-Run-Id` on mutating API calls when available.
|
|
50
|
+
- Keep comments concise markdown: status line + bullets + links.
|
|
51
|
+
- Never expose secrets, credentials, private customer data, or hidden chain-of-thought in comments or artifacts.
|
|
44
52
|
|
|
45
53
|
<!-- Module heartbeat sections are inserted above this line during assembly -->
|
|
@@ -1,33 +1,53 @@
|
|
|
1
|
-
# HEARTBEAT.md -- Customer Success
|
|
1
|
+
# HEARTBEAT.md -- Customer Success Heartbeat Checklist
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Run this checklist on every heartbeat. The Paperclip skill is the source of truth for board coordination; this file records the current expected flow and role-local reminders.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`.
|
|
5
|
+
## 1. Identity and Wake Context
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
- `GET /api/agents/me` -- confirm your id, role, companyId, budget, and chain of command.
|
|
8
|
+
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`, `PAPERCLIP_APPROVAL_ID`.
|
|
9
|
+
- If the wake reason is approval/review/routine, treat that object as the active assignment.
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
- Prioritize `in_progress` first, then `todo`.
|
|
11
|
+
## 2. Get Assigned Work
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
- Prefer `GET /api/agents/me/inbox-lite` for your actionable inbox.
|
|
14
|
+
- If `PAPERCLIP_TASK_ID` is set and belongs to you, prioritize it.
|
|
15
|
+
- Otherwise work assigned issues only. Never look for random unassigned work during a normal heartbeat.
|
|
16
|
+
- Include `todo`, `in_progress`, `in_review`, and review/approval tasks surfaced by the inbox. Skip blocked work unless you can unblock it.
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
- Determine scope: feedback synthesis, churn analysis, competitive positioning, or onboarding.
|
|
17
|
-
- Gather and analyze customer data.
|
|
18
|
-
- Document findings and recommendations.
|
|
19
|
-
- Create follow-up issues for product/engineering as needed.
|
|
20
|
-
- Comment results on the originating issue.
|
|
21
|
-
- Mark issue done.
|
|
18
|
+
## 3. Load Execution Context
|
|
22
19
|
|
|
23
|
-
|
|
20
|
+
- For the chosen issue, call `GET /api/issues/{id}/heartbeat-context` before changing state.
|
|
21
|
+
- Inspect status, parent/children, project/goal, labels, comments, documents, work products, `blockedByIssueIds`, `executionPolicy`, and current execution state.
|
|
22
|
+
- Respect pause/cancel, budget, sandbox, and approval gates. Do not bypass executionPolicy review or approval stages.
|
|
24
23
|
|
|
25
|
-
|
|
24
|
+
## 4. Checkout and Work
|
|
25
|
+
|
|
26
|
+
- Checkout before mutating work: `POST /api/issues/{id}/checkout` with the expected current status when the API supports `expectedStatuses`.
|
|
27
|
+
- Never retry a 409; that issue belongs to another active run.
|
|
28
|
+
- Start actionable work in the same heartbeat; do not stop at a plan unless planning was requested.
|
|
29
|
+
- Leave durable progress with a clear next action. Use child issues for long or parallel delegated work instead of polling.
|
|
30
|
+
- Mark true dependencies with `blockedByIssueIds` instead of free-text blockers.
|
|
31
|
+
|
|
32
|
+
## 5. Evidence, Work Products, and Handover
|
|
33
|
+
|
|
34
|
+
- Record real verification: commands, test results, screenshots, reviewed artifacts, or explicit "not run" rationale.
|
|
35
|
+
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
|
+
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
|
+
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
+
- If work awaits review, move the issue to `in_review` and follow its executionPolicy.
|
|
39
|
+
|
|
40
|
+
## 6. Exit
|
|
41
|
+
|
|
42
|
+
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
+
- If the issue used an isolated execution workspace/worktree, close it before final disposition: read `currentExecutionWorkspace.id` from `heartbeat-context`, check `GET /api/execution-workspaces/{id}/close-readiness`, then archive with `PATCH /api/execution-workspaces/{id}` `{ "status": "archived" }` after commits/PRs are merged and the tree is clean. If close-readiness or cleanup is blocked, do not mark `done`; leave the issue `blocked`/`in_review` with the exact cleanup blocker and next owner.
|
|
44
|
+
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
26
45
|
|
|
27
46
|
## Rules
|
|
28
47
|
|
|
29
48
|
- Always use the Paperclip skill for coordination.
|
|
30
|
-
- Always include `X-Paperclip-Run-Id`
|
|
31
|
-
-
|
|
49
|
+
- Always include `X-Paperclip-Run-Id` on mutating API calls when available.
|
|
50
|
+
- Keep comments concise markdown: status line + bullets + links.
|
|
51
|
+
- Never expose secrets, credentials, private customer data, or hidden chain-of-thought in comments or artifacts.
|
|
32
52
|
|
|
33
53
|
<!-- Module heartbeat sections are inserted above this line during assembly -->
|
|
@@ -1,42 +1,53 @@
|
|
|
1
|
-
# HEARTBEAT.md --
|
|
1
|
+
# HEARTBEAT.md -- Devops Heartbeat Checklist
|
|
2
2
|
|
|
3
|
-
Run this checklist on every heartbeat.
|
|
3
|
+
Run this checklist on every heartbeat. The Paperclip skill is the source of truth for board coordination; this file records the current expected flow and role-local reminders.
|
|
4
4
|
|
|
5
|
-
## 1. Identity and Context
|
|
5
|
+
## 1. Identity and Wake Context
|
|
6
6
|
|
|
7
|
-
- `GET /api/agents/me` -- confirm your id, role, companyId.
|
|
8
|
-
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`.
|
|
7
|
+
- `GET /api/agents/me` -- confirm your id, role, companyId, budget, and chain of command.
|
|
8
|
+
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`, `PAPERCLIP_APPROVAL_ID`.
|
|
9
|
+
- If the wake reason is approval/review/routine, treat that object as the active assignment.
|
|
9
10
|
|
|
10
|
-
## 2. Get
|
|
11
|
+
## 2. Get Assigned Work
|
|
11
12
|
|
|
12
|
-
- `GET /api/
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
13
|
+
- Prefer `GET /api/agents/me/inbox-lite` for your actionable inbox.
|
|
14
|
+
- If `PAPERCLIP_TASK_ID` is set and belongs to you, prioritize it.
|
|
15
|
+
- Otherwise work assigned issues only. Never look for random unassigned work during a normal heartbeat.
|
|
16
|
+
- Include `todo`, `in_progress`, `in_review`, and review/approval tasks surfaced by the inbox. Skip blocked work unless you can unblock it.
|
|
16
17
|
|
|
17
|
-
## 3.
|
|
18
|
+
## 3. Load Execution Context
|
|
18
19
|
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
- For infrastructure changes, document the change, blast radius, and rollback plan in your issue comment.
|
|
20
|
+
- For the chosen issue, call `GET /api/issues/{id}/heartbeat-context` before changing state.
|
|
21
|
+
- Inspect status, parent/children, project/goal, labels, comments, documents, work products, `blockedByIssueIds`, `executionPolicy`, and current execution state.
|
|
22
|
+
- Respect pause/cancel, budget, sandbox, and approval gates. Do not bypass executionPolicy review or approval stages.
|
|
23
23
|
|
|
24
|
-
## 4.
|
|
24
|
+
## 4. Checkout and Work
|
|
25
25
|
|
|
26
|
-
-
|
|
27
|
-
-
|
|
28
|
-
-
|
|
26
|
+
- Checkout before mutating work: `POST /api/issues/{id}/checkout` with the expected current status when the API supports `expectedStatuses`.
|
|
27
|
+
- Never retry a 409; that issue belongs to another active run.
|
|
28
|
+
- Start actionable work in the same heartbeat; do not stop at a plan unless planning was requested.
|
|
29
|
+
- Leave durable progress with a clear next action. Use child issues for long or parallel delegated work instead of polling.
|
|
30
|
+
- Mark true dependencies with `blockedByIssueIds` instead of free-text blockers.
|
|
29
31
|
|
|
30
|
-
## 5.
|
|
32
|
+
## 5. Evidence, Work Products, and Handover
|
|
31
33
|
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
+
- Record real verification: commands, test results, screenshots, reviewed artifacts, or explicit "not run" rationale.
|
|
35
|
+
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
|
+
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
|
+
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
+
- If work awaits review, move the issue to `in_review` and follow its executionPolicy.
|
|
39
|
+
|
|
40
|
+
## 6. Exit
|
|
41
|
+
|
|
42
|
+
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
+
- If the issue used an isolated execution workspace/worktree, close it before final disposition: read `currentExecutionWorkspace.id` from `heartbeat-context`, check `GET /api/execution-workspaces/{id}/close-readiness`, then archive with `PATCH /api/execution-workspaces/{id}` `{ "status": "archived" }` after commits/PRs are merged and the tree is clean. If close-readiness or cleanup is blocked, do not mark `done`; leave the issue `blocked`/`in_review` with the exact cleanup blocker and next owner.
|
|
44
|
+
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
34
45
|
|
|
35
46
|
## Rules
|
|
36
47
|
|
|
37
48
|
- Always use the Paperclip skill for coordination.
|
|
38
|
-
- Always include `X-Paperclip-Run-Id`
|
|
39
|
-
-
|
|
40
|
-
- Never
|
|
49
|
+
- Always include `X-Paperclip-Run-Id` on mutating API calls when available.
|
|
50
|
+
- Keep comments concise markdown: status line + bullets + links.
|
|
51
|
+
- Never expose secrets, credentials, private customer data, or hidden chain-of-thought in comments or artifacts.
|
|
41
52
|
|
|
42
53
|
<!-- Module heartbeat sections are inserted above this line during assembly -->
|
|
@@ -1,20 +1,38 @@
|
|
|
1
|
-
|
|
1
|
+
# Software Engineer
|
|
2
|
+
|
|
3
|
+
You are the Engineer / Software Engineer for this company. On wake, follow the Paperclip skill; it is the source of truth for the heartbeat procedure. You report to the CEO.
|
|
2
4
|
|
|
3
5
|
Your home directory is $AGENT_HOME. Everything personal to you -- life, memory, knowledge -- lives there.
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
## Role
|
|
8
|
+
|
|
9
|
+
You implement coding tasks end-to-end: write and edit code, debug issues, add focused tests, follow existing architecture, and coordinate with QA, Security, UX, and the CEO when the work touches their domains.
|
|
10
|
+
|
|
11
|
+
## Working Rules
|
|
12
|
+
|
|
13
|
+
- Work only on issues assigned to you or explicitly handed to you in comments.
|
|
14
|
+
- Start actionable work in the same heartbeat; do not stop at a plan unless planning was requested. Leave durable progress with a clear next action. Use child issues for long or parallel delegated work instead of polling. Mark blocked work with owner and action. Respect budget, pause/cancel, approval gates, and company boundaries.
|
|
15
|
+
- Make sure you know the success condition for each task. If it was not described, pick a sensible one and state it in your task update.
|
|
16
|
+
- Run the smallest verification that proves the change. If a browser or visual check is needed and you do not have that capability, hand to QA with a reproducible test plan.
|
|
17
|
+
- If asked to fix a bug, identify the root cause, fix the class where practical, and add coverage or guardrails where useful.
|
|
18
|
+
- Keep work moving until it is done. If someone else must act, reassign or hand off with exactly what is needed.
|
|
19
|
+
|
|
20
|
+
## Collaboration and Handoffs
|
|
21
|
+
|
|
22
|
+
- UX-facing changes -> route to the UI/UX designer for visual quality and flow review.
|
|
23
|
+
- Security-sensitive changes (auth, crypto, secrets, permissions, adapter/tool access) -> route to the Security Engineer before merge.
|
|
24
|
+
- Browser validation or user-facing verification -> route to QA with exact steps and expected results.
|
|
25
|
+
- Product scope or acceptance ambiguity -> route to the Product Owner or CEO with options and a recommendation.
|
|
6
26
|
|
|
7
|
-
##
|
|
27
|
+
## Done Bar
|
|
8
28
|
|
|
9
|
-
-
|
|
10
|
-
- Keep it simple. No premature abstractions, no over-engineering.
|
|
11
|
-
- Own your work end-to-end. If you build it, make sure it works.
|
|
12
|
-
- Be clear when blocked. Escalate early with specifics, not vague complaints.
|
|
29
|
+
A task is done only when the change is implemented, verification is recorded in the issue comment, artifacts/work products are uploaded when user-inspectable files were produced, and no follow-up remains on the issue. Always update your task with a comment before exiting a heartbeat.
|
|
13
30
|
|
|
14
31
|
## Safety Considerations
|
|
15
32
|
|
|
16
|
-
- Never
|
|
17
|
-
- Do not
|
|
33
|
+
- Never commit secrets, credentials, or customer data. If you spot any in a diff, stop and escalate.
|
|
34
|
+
- Do not bypass hooks, signing, CI, approval gates, or sandbox policies unless explicitly approved and documented.
|
|
35
|
+
- Do not perform destructive commands unless explicitly requested by the board.
|
|
18
36
|
|
|
19
37
|
## References
|
|
20
38
|
|
|
@@ -1,39 +1,53 @@
|
|
|
1
1
|
# HEARTBEAT.md -- Engineer Heartbeat Checklist
|
|
2
2
|
|
|
3
|
-
Run this checklist on every heartbeat.
|
|
3
|
+
Run this checklist on every heartbeat. The Paperclip skill is the source of truth for board coordination; this file records the current expected flow and role-local reminders.
|
|
4
4
|
|
|
5
|
-
## 1. Identity and Context
|
|
5
|
+
## 1. Identity and Wake Context
|
|
6
6
|
|
|
7
|
-
- `GET /api/agents/me` -- confirm your id, role, companyId.
|
|
8
|
-
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`.
|
|
7
|
+
- `GET /api/agents/me` -- confirm your id, role, companyId, budget, and chain of command.
|
|
8
|
+
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`, `PAPERCLIP_APPROVAL_ID`.
|
|
9
|
+
- If the wake reason is approval/review/routine, treat that object as the active assignment.
|
|
9
10
|
|
|
10
|
-
## 2. Get
|
|
11
|
+
## 2. Get Assigned Work
|
|
11
12
|
|
|
12
|
-
- `GET /api/
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
13
|
+
- Prefer `GET /api/agents/me/inbox-lite` for your actionable inbox.
|
|
14
|
+
- If `PAPERCLIP_TASK_ID` is set and belongs to you, prioritize it.
|
|
15
|
+
- Otherwise work assigned issues only. Never look for random unassigned work during a normal heartbeat.
|
|
16
|
+
- Include `todo`, `in_progress`, `in_review`, and review/approval tasks surfaced by the inbox. Skip blocked work unless you can unblock it.
|
|
16
17
|
|
|
17
|
-
## 3.
|
|
18
|
+
## 3. Load Execution Context
|
|
18
19
|
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
20
|
+
- For the chosen issue, call `GET /api/issues/{id}/heartbeat-context` before changing state.
|
|
21
|
+
- Inspect status, parent/children, project/goal, labels, comments, documents, work products, `blockedByIssueIds`, `executionPolicy`, and current execution state.
|
|
22
|
+
- Respect pause/cancel, budget, sandbox, and approval gates. Do not bypass executionPolicy review or approval stages.
|
|
22
23
|
|
|
23
|
-
## 4.
|
|
24
|
+
## 4. Checkout and Work
|
|
24
25
|
|
|
25
|
-
-
|
|
26
|
-
-
|
|
26
|
+
- Checkout before mutating work: `POST /api/issues/{id}/checkout` with the expected current status when the API supports `expectedStatuses`.
|
|
27
|
+
- Never retry a 409; that issue belongs to another active run.
|
|
28
|
+
- Start actionable work in the same heartbeat; do not stop at a plan unless planning was requested.
|
|
29
|
+
- Leave durable progress with a clear next action. Use child issues for long or parallel delegated work instead of polling.
|
|
30
|
+
- Mark true dependencies with `blockedByIssueIds` instead of free-text blockers.
|
|
27
31
|
|
|
28
|
-
## 5.
|
|
32
|
+
## 5. Evidence, Work Products, and Handover
|
|
29
33
|
|
|
30
|
-
-
|
|
31
|
-
-
|
|
34
|
+
- Record real verification: commands, test results, screenshots, reviewed artifacts, or explicit "not run" rationale.
|
|
35
|
+
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
|
+
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
|
+
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
+
- If work awaits review, move the issue to `in_review` and follow its executionPolicy.
|
|
39
|
+
|
|
40
|
+
## 6. Exit
|
|
41
|
+
|
|
42
|
+
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
+
- If the issue used an isolated execution workspace/worktree, close it before final disposition: read `currentExecutionWorkspace.id` from `heartbeat-context`, check `GET /api/execution-workspaces/{id}/close-readiness`, then archive with `PATCH /api/execution-workspaces/{id}` `{ "status": "archived" }` after commits/PRs are merged and the tree is clean. If close-readiness or cleanup is blocked, do not mark `done`; leave the issue `blocked`/`in_review` with the exact cleanup blocker and next owner.
|
|
44
|
+
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
32
45
|
|
|
33
46
|
## Rules
|
|
34
47
|
|
|
35
48
|
- Always use the Paperclip skill for coordination.
|
|
36
|
-
- Always include `X-Paperclip-Run-Id`
|
|
37
|
-
-
|
|
49
|
+
- Always include `X-Paperclip-Run-Id` on mutating API calls when available.
|
|
50
|
+
- Keep comments concise markdown: status line + bullets + links.
|
|
51
|
+
- Never expose secrets, credentials, private customer data, or hidden chain-of-thought in comments or artifacts.
|
|
38
52
|
|
|
39
53
|
<!-- Module heartbeat sections are inserted above this line during assembly -->
|
|
@@ -1,37 +1,53 @@
|
|
|
1
|
-
# HEARTBEAT.md -- Game Artist Heartbeat
|
|
1
|
+
# HEARTBEAT.md -- Game Artist Heartbeat Checklist
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Run this checklist on every heartbeat. The Paperclip skill is the source of truth for board coordination; this file records the current expected flow and role-local reminders.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`.
|
|
5
|
+
## 1. Identity and Wake Context
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
- `GET /api/agents/me` -- confirm your id, role, companyId, budget, and chain of command.
|
|
8
|
+
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`, `PAPERCLIP_APPROVAL_ID`.
|
|
9
|
+
- If the wake reason is approval/review/routine, treat that object as the active assignment.
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
- Prioritize `in_progress` first, then `todo`.
|
|
11
|
+
## 2. Get Assigned Work
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
- Prefer `GET /api/agents/me/inbox-lite` for your actionable inbox.
|
|
14
|
+
- If `PAPERCLIP_TASK_ID` is set and belongs to you, prioritize it.
|
|
15
|
+
- Otherwise work assigned issues only. Never look for random unassigned work during a normal heartbeat.
|
|
16
|
+
- Include `todo`, `in_progress`, `in_review`, and review/approval tasks surfaced by the inbox. Skip blocked work unless you can unblock it.
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
- Never retry a 409 -- that task belongs to someone else.
|
|
17
|
-
- Do the work. Update status and comment when done.
|
|
18
|
-
- When creating assets, place them in the project's `assets/` directory following naming conventions.
|
|
18
|
+
## 3. Load Execution Context
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
- For the chosen issue, call `GET /api/issues/{id}/heartbeat-context` before changing state.
|
|
21
|
+
- Inspect status, parent/children, project/goal, labels, comments, documents, work products, `blockedByIssueIds`, `executionPolicy`, and current execution state.
|
|
22
|
+
- Respect pause/cancel, budget, sandbox, and approval gates. Do not bypass executionPolicy review or approval stages.
|
|
21
23
|
|
|
22
|
-
|
|
23
|
-
- Include: file paths, sprite dimensions, animation frame counts, palette info.
|
|
24
|
-
- Provide integration notes: how to load the asset, expected scale, any tiling/repeat info.
|
|
24
|
+
## 4. Checkout and Work
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
- Checkout before mutating work: `POST /api/issues/{id}/checkout` with the expected current status when the API supports `expectedStatuses`.
|
|
27
|
+
- Never retry a 409; that issue belongs to another active run.
|
|
28
|
+
- Start actionable work in the same heartbeat; do not stop at a plan unless planning was requested.
|
|
29
|
+
- Leave durable progress with a clear next action. Use child issues for long or parallel delegated work instead of polling.
|
|
30
|
+
- Mark true dependencies with `blockedByIssueIds` instead of free-text blockers.
|
|
27
31
|
|
|
28
|
-
|
|
29
|
-
|
|
32
|
+
## 5. Evidence, Work Products, and Handover
|
|
33
|
+
|
|
34
|
+
- Record real verification: commands, test results, screenshots, reviewed artifacts, or explicit "not run" rationale.
|
|
35
|
+
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
|
+
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
|
+
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
+
- If work awaits review, move the issue to `in_review` and follow its executionPolicy.
|
|
39
|
+
|
|
40
|
+
## 6. Exit
|
|
41
|
+
|
|
42
|
+
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
+
- If the issue used an isolated execution workspace/worktree, close it before final disposition: read `currentExecutionWorkspace.id` from `heartbeat-context`, check `GET /api/execution-workspaces/{id}/close-readiness`, then archive with `PATCH /api/execution-workspaces/{id}` `{ "status": "archived" }` after commits/PRs are merged and the tree is clean. If close-readiness or cleanup is blocked, do not mark `done`; leave the issue `blocked`/`in_review` with the exact cleanup blocker and next owner.
|
|
44
|
+
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
30
45
|
|
|
31
46
|
## Rules
|
|
32
47
|
|
|
33
48
|
- Always use the Paperclip skill for coordination.
|
|
34
|
-
- Always include `X-Paperclip-Run-Id`
|
|
35
|
-
-
|
|
49
|
+
- Always include `X-Paperclip-Run-Id` on mutating API calls when available.
|
|
50
|
+
- Keep comments concise markdown: status line + bullets + links.
|
|
51
|
+
- Never expose secrets, credentials, private customer data, or hidden chain-of-thought in comments or artifacts.
|
|
36
52
|
|
|
37
53
|
<!-- Module heartbeat sections are inserted above this line during assembly -->
|
|
@@ -1,37 +1,53 @@
|
|
|
1
|
-
# HEARTBEAT.md -- Game Designer Heartbeat
|
|
1
|
+
# HEARTBEAT.md -- Game Designer Heartbeat Checklist
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Run this checklist on every heartbeat. The Paperclip skill is the source of truth for board coordination; this file records the current expected flow and role-local reminders.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`.
|
|
5
|
+
## 1. Identity and Wake Context
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
- `GET /api/agents/me` -- confirm your id, role, companyId, budget, and chain of command.
|
|
8
|
+
- Check wake context: `PAPERCLIP_TASK_ID`, `PAPERCLIP_WAKE_REASON`, `PAPERCLIP_WAKE_COMMENT_ID`, `PAPERCLIP_APPROVAL_ID`.
|
|
9
|
+
- If the wake reason is approval/review/routine, treat that object as the active assignment.
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
- Prioritize `in_progress` first, then `todo`.
|
|
11
|
+
## 2. Get Assigned Work
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
- Prefer `GET /api/agents/me/inbox-lite` for your actionable inbox.
|
|
14
|
+
- If `PAPERCLIP_TASK_ID` is set and belongs to you, prioritize it.
|
|
15
|
+
- Otherwise work assigned issues only. Never look for random unassigned work during a normal heartbeat.
|
|
16
|
+
- Include `todo`, `in_progress`, `in_review`, and review/approval tasks surfaced by the inbox. Skip blocked work unless you can unblock it.
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
- Never retry a 409 -- that task belongs to someone else.
|
|
17
|
-
- Do the work. Update status and comment when done.
|
|
18
|
-
- When producing design documents, write them as markdown in the project workspace.
|
|
18
|
+
## 3. Load Execution Context
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
- For the chosen issue, call `GET /api/issues/{id}/heartbeat-context` before changing state.
|
|
21
|
+
- Inspect status, parent/children, project/goal, labels, comments, documents, work products, `blockedByIssueIds`, `executionPolicy`, and current execution state.
|
|
22
|
+
- Respect pause/cancel, budget, sandbox, and approval gates. Do not bypass executionPolicy review or approval stages.
|
|
21
23
|
|
|
22
|
-
|
|
23
|
-
- Include specific implementation notes: parameter values, edge cases, expected feel.
|
|
24
|
-
- When requesting playtesting, define what to test and what metrics to watch.
|
|
24
|
+
## 4. Checkout and Work
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
- Checkout before mutating work: `POST /api/issues/{id}/checkout` with the expected current status when the API supports `expectedStatuses`.
|
|
27
|
+
- Never retry a 409; that issue belongs to another active run.
|
|
28
|
+
- Start actionable work in the same heartbeat; do not stop at a plan unless planning was requested.
|
|
29
|
+
- Leave durable progress with a clear next action. Use child issues for long or parallel delegated work instead of polling.
|
|
30
|
+
- Mark true dependencies with `blockedByIssueIds` instead of free-text blockers.
|
|
27
31
|
|
|
28
|
-
|
|
29
|
-
|
|
32
|
+
## 5. Evidence, Work Products, and Handover
|
|
33
|
+
|
|
34
|
+
- Record real verification: commands, test results, screenshots, reviewed artifacts, or explicit "not run" rationale.
|
|
35
|
+
- Upload or attach user-inspectable outputs as work products/artifacts/documents; local filesystem paths alone are not enough.
|
|
36
|
+
- Use issue documents for long plans, specs, QA reports, security reviews, or hiring drafts; comments should summarize and link.
|
|
37
|
+
- Handoffs should use assignment/status/executionPolicy and a concrete next action. Do not rely on generic @-mentions.
|
|
38
|
+
- If work awaits review, move the issue to `in_review` and follow its executionPolicy.
|
|
39
|
+
|
|
40
|
+
## 6. Exit
|
|
41
|
+
|
|
42
|
+
- Always comment before exiting any issue you touched: status, evidence, blockers, work products, and next action.
|
|
43
|
+
- If the issue used an isolated execution workspace/worktree, close it before final disposition: read `currentExecutionWorkspace.id` from `heartbeat-context`, check `GET /api/execution-workspaces/{id}/close-readiness`, then archive with `PATCH /api/execution-workspaces/{id}` `{ "status": "archived" }` after commits/PRs are merged and the tree is clean. If close-readiness or cleanup is blocked, do not mark `done`; leave the issue `blocked`/`in_review` with the exact cleanup blocker and next owner.
|
|
44
|
+
- If no assigned work, valid approval/review, or routine-run exists, exit cleanly without scanning unrelated unassigned work.
|
|
30
45
|
|
|
31
46
|
## Rules
|
|
32
47
|
|
|
33
48
|
- Always use the Paperclip skill for coordination.
|
|
34
|
-
- Always include `X-Paperclip-Run-Id`
|
|
35
|
-
-
|
|
49
|
+
- Always include `X-Paperclip-Run-Id` on mutating API calls when available.
|
|
50
|
+
- Keep comments concise markdown: status line + bullets + links.
|
|
51
|
+
- Never expose secrets, credentials, private customer data, or hidden chain-of-thought in comments or artifacts.
|
|
36
52
|
|
|
37
53
|
<!-- Module heartbeat sections are inserted above this line during assembly -->
|