@starlein/paperclip-plugin-company-wizard 0.2.1

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.
Files changed (248) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +748 -0
  3. package/dist/manifest.js +91 -0
  4. package/dist/manifest.js.map +7 -0
  5. package/dist/ui/index.css +1647 -0
  6. package/dist/ui/index.css.map +7 -0
  7. package/dist/ui/index.js +6738 -0
  8. package/dist/ui/index.js.map +7 -0
  9. package/dist/worker.js +8247 -0
  10. package/dist/worker.js.map +7 -0
  11. package/package.json +73 -0
  12. package/templates/ai-wizard/config-format.md +21 -0
  13. package/templates/ai-wizard/interview-system.md +67 -0
  14. package/templates/ai-wizard/messages.json +6 -0
  15. package/templates/ai-wizard/single-shot-system.md +42 -0
  16. package/templates/bootstrap-instructions.md +30 -0
  17. package/templates/modules/accessibility/agents/engineer/skills/accessibility-audit.fallback.md +18 -0
  18. package/templates/modules/accessibility/agents/ui-designer/skills/accessibility-audit.fallback.md +18 -0
  19. package/templates/modules/accessibility/module.meta.json +22 -0
  20. package/templates/modules/accessibility/skills/accessibility-audit.md +27 -0
  21. package/templates/modules/architecture-plan/agents/ceo/skills/architecture-plan.fallback.md +16 -0
  22. package/templates/modules/architecture-plan/agents/engineer/skills/design-system.fallback.md +17 -0
  23. package/templates/modules/architecture-plan/agents/ui-designer/skills/architecture-plan.md +19 -0
  24. package/templates/modules/architecture-plan/agents/ui-designer/skills/design-system.md +24 -0
  25. package/templates/modules/architecture-plan/docs/architecture-template.md +38 -0
  26. package/templates/modules/architecture-plan/docs/design-system-template.md +61 -0
  27. package/templates/modules/architecture-plan/module.meta.json +37 -0
  28. package/templates/modules/architecture-plan/skills/architecture-plan.md +23 -0
  29. package/templates/modules/auto-assign/README.md +23 -0
  30. package/templates/modules/auto-assign/agents/ceo/heartbeat-section.md +9 -0
  31. package/templates/modules/auto-assign/agents/ceo/skills/auto-assign.fallback.md +18 -0
  32. package/templates/modules/auto-assign/agents/product-owner/heartbeat-section.md +10 -0
  33. package/templates/modules/auto-assign/module.meta.json +27 -0
  34. package/templates/modules/auto-assign/skills/auto-assign.md +23 -0
  35. package/templates/modules/backlog/README.md +26 -0
  36. package/templates/modules/backlog/agents/ceo/heartbeat-section.md +10 -0
  37. package/templates/modules/backlog/agents/ceo/skills/backlog-health.fallback.md +20 -0
  38. package/templates/modules/backlog/agents/product-owner/heartbeat-section.md +15 -0
  39. package/templates/modules/backlog/docs/backlog-process.md +62 -0
  40. package/templates/modules/backlog/docs/backlog-template.md +53 -0
  41. package/templates/modules/backlog/module.meta.json +31 -0
  42. package/templates/modules/backlog/skills/backlog-health.md +47 -0
  43. package/templates/modules/brand-identity/agents/ceo/skills/brand-identity.fallback.md +19 -0
  44. package/templates/modules/brand-identity/agents/cmo/skills/brand-identity.fallback.md +19 -0
  45. package/templates/modules/brand-identity/docs/brand-identity-template.md +43 -0
  46. package/templates/modules/brand-identity/module.meta.json +22 -0
  47. package/templates/modules/brand-identity/skills/brand-identity.md +30 -0
  48. package/templates/modules/build-api/module.meta.json +118 -0
  49. package/templates/modules/build-api/skills/api-design.md +43 -0
  50. package/templates/modules/ci-cd/agents/devops/skills/ci-cd.md +28 -0
  51. package/templates/modules/ci-cd/agents/engineer/skills/ci-cd.fallback.md +18 -0
  52. package/templates/modules/ci-cd/docs/ci-cd-template.md +42 -0
  53. package/templates/modules/ci-cd/module.meta.json +105 -0
  54. package/templates/modules/ci-cd/skills/ci-cd.md +26 -0
  55. package/templates/modules/codebase-onboarding/agents/ceo/skills/codebase-audit.fallback.md +19 -0
  56. package/templates/modules/codebase-onboarding/module.meta.json +24 -0
  57. package/templates/modules/codebase-onboarding/skills/codebase-audit.md +45 -0
  58. package/templates/modules/competitive-intel/agents/ceo/skills/competitive-tracking.fallback.md +17 -0
  59. package/templates/modules/competitive-intel/agents/cmo/skills/competitive-tracking.fallback.md +17 -0
  60. package/templates/modules/competitive-intel/agents/customer-success/skills/competitive-tracking.md +25 -0
  61. package/templates/modules/competitive-intel/module.meta.json +23 -0
  62. package/templates/modules/competitive-intel/skills/competitive-tracking.md +27 -0
  63. package/templates/modules/dependency-management/agents/engineer/skills/dependency-audit.fallback.md +18 -0
  64. package/templates/modules/dependency-management/module.meta.json +25 -0
  65. package/templates/modules/dependency-management/skills/dependency-audit.md +43 -0
  66. package/templates/modules/documentation/agents/ceo/skills/project-docs.fallback.md +16 -0
  67. package/templates/modules/documentation/agents/engineer/skills/project-docs.fallback.md +16 -0
  68. package/templates/modules/documentation/module.meta.json +22 -0
  69. package/templates/modules/documentation/skills/project-docs.md +25 -0
  70. package/templates/modules/game-design/agents/ceo/skills/game-design.fallback.md +17 -0
  71. package/templates/modules/game-design/agents/game-designer/skills/game-design.md +51 -0
  72. package/templates/modules/game-design/docs/engine-phaser.md +310 -0
  73. package/templates/modules/game-design/docs/engine-pixijs.md +289 -0
  74. package/templates/modules/game-design/docs/engine-threejs.md +304 -0
  75. package/templates/modules/game-design/docs/gdd-template.md +72 -0
  76. package/templates/modules/game-design/module.meta.json +22 -0
  77. package/templates/modules/game-design/skills/game-design.md +41 -0
  78. package/templates/modules/github-repo/README.md +23 -0
  79. package/templates/modules/github-repo/agents/engineer/skills/git-workflow.md +23 -0
  80. package/templates/modules/github-repo/docs/git-workflow.md +50 -0
  81. package/templates/modules/github-repo/module.meta.json +12 -0
  82. package/templates/modules/hiring-review/agents/ceo/skills/hiring-review.fallback.md +17 -0
  83. package/templates/modules/hiring-review/module.meta.json +21 -0
  84. package/templates/modules/hiring-review/skills/hiring-review.md +24 -0
  85. package/templates/modules/launch-mvp/module.meta.json +86 -0
  86. package/templates/modules/market-analysis/agents/ceo/skills/market-analysis.fallback.md +17 -0
  87. package/templates/modules/market-analysis/agents/cmo/skills/market-analysis.fallback.md +19 -0
  88. package/templates/modules/market-analysis/agents/product-owner/skills/market-analysis.fallback.md +18 -0
  89. package/templates/modules/market-analysis/agents/ux-researcher/skills/market-analysis.md +23 -0
  90. package/templates/modules/market-analysis/docs/market-analysis-template.md +32 -0
  91. package/templates/modules/market-analysis/module.meta.json +23 -0
  92. package/templates/modules/market-analysis/skills/market-analysis.md +21 -0
  93. package/templates/modules/monitoring/agents/devops/skills/monitoring.md +23 -0
  94. package/templates/modules/monitoring/agents/engineer/skills/monitoring.fallback.md +18 -0
  95. package/templates/modules/monitoring/docs/monitoring-template.md +46 -0
  96. package/templates/modules/monitoring/module.meta.json +24 -0
  97. package/templates/modules/monitoring/skills/monitoring.md +20 -0
  98. package/templates/modules/pr-review/README.md +43 -0
  99. package/templates/modules/pr-review/agents/code-reviewer/skills/code-review.md +29 -0
  100. package/templates/modules/pr-review/agents/devops/skills/infra-review.md +29 -0
  101. package/templates/modules/pr-review/agents/engineer/skills/pr-workflow.md +24 -0
  102. package/templates/modules/pr-review/agents/product-owner/skills/product-review.md +27 -0
  103. package/templates/modules/pr-review/agents/qa/skills/qa-review.md +29 -0
  104. package/templates/modules/pr-review/agents/ui-designer/skills/design-review.md +29 -0
  105. package/templates/modules/pr-review/agents/ux-researcher/skills/ux-review.md +29 -0
  106. package/templates/modules/pr-review/docs/pr-conventions.md +78 -0
  107. package/templates/modules/pr-review/module.meta.json +24 -0
  108. package/templates/modules/release-management/agents/engineer/skills/release-process.fallback.md +18 -0
  109. package/templates/modules/release-management/module.meta.json +25 -0
  110. package/templates/modules/release-management/skills/release-process.md +45 -0
  111. package/templates/modules/security-audit/agents/devops/skills/security-review.fallback.md +17 -0
  112. package/templates/modules/security-audit/agents/devops/skills/threat-model.fallback.md +17 -0
  113. package/templates/modules/security-audit/agents/engineer/skills/security-review.fallback.md +17 -0
  114. package/templates/modules/security-audit/agents/engineer/skills/threat-model.fallback.md +17 -0
  115. package/templates/modules/security-audit/module.meta.json +36 -0
  116. package/templates/modules/security-audit/skills/security-review.md +25 -0
  117. package/templates/modules/security-audit/skills/threat-model.md +22 -0
  118. package/templates/modules/stall-detection/README.md +27 -0
  119. package/templates/modules/stall-detection/agents/ceo/heartbeat-section.md +12 -0
  120. package/templates/modules/stall-detection/agents/ceo/skills/stall-detection.md +21 -0
  121. package/templates/modules/stall-detection/module.meta.json +15 -0
  122. package/templates/modules/tech-stack/agents/ceo/skills/tech-stack.fallback.md +16 -0
  123. package/templates/modules/tech-stack/docs/tech-stack-template.md +28 -0
  124. package/templates/modules/tech-stack/module.meta.json +21 -0
  125. package/templates/modules/tech-stack/skills/tech-stack.md +25 -0
  126. package/templates/modules/triage/agents/ceo/skills/issue-triage.fallback.md +19 -0
  127. package/templates/modules/triage/module.meta.json +25 -0
  128. package/templates/modules/triage/skills/issue-triage.md +42 -0
  129. package/templates/modules/user-testing/agents/ceo/skills/user-testing.fallback.md +17 -0
  130. package/templates/modules/user-testing/agents/product-owner/skills/user-testing.fallback.md +17 -0
  131. package/templates/modules/user-testing/agents/qa/skills/user-testing.md +30 -0
  132. package/templates/modules/user-testing/agents/ux-researcher/skills/user-testing.fallback.md +18 -0
  133. package/templates/modules/user-testing/docs/user-testing-template.md +37 -0
  134. package/templates/modules/user-testing/module.meta.json +23 -0
  135. package/templates/modules/user-testing/skills/user-testing.md +27 -0
  136. package/templates/modules/vision-workshop/agents/ceo/skills/vision-workshop.md +23 -0
  137. package/templates/modules/vision-workshop/agents/ux-researcher/skills/vision-workshop.md +19 -0
  138. package/templates/modules/vision-workshop/docs/vision-template.md +28 -0
  139. package/templates/modules/vision-workshop/module.meta.json +12 -0
  140. package/templates/modules/website-relaunch/agents/ui-designer/skills/site-audit.md +65 -0
  141. package/templates/modules/website-relaunch/module.meta.json +168 -0
  142. package/templates/modules/website-relaunch/skills/design-ingestion.md +111 -0
  143. package/templates/modules/website-relaunch/skills/site-audit.md +54 -0
  144. package/templates/presets/build-api/preset.meta.json +16 -0
  145. package/templates/presets/build-game/preset.meta.json +150 -0
  146. package/templates/presets/content/preset.meta.json +20 -0
  147. package/templates/presets/fast/preset.meta.json +16 -0
  148. package/templates/presets/full/preset.meta.json +22 -0
  149. package/templates/presets/gtm/preset.meta.json +21 -0
  150. package/templates/presets/launch-mvp/preset.meta.json +17 -0
  151. package/templates/presets/launch-pack/preset.meta.json +25 -0
  152. package/templates/presets/quality/preset.meta.json +17 -0
  153. package/templates/presets/rad/preset.meta.json +19 -0
  154. package/templates/presets/repo-maintenance/preset.meta.json +104 -0
  155. package/templates/presets/research/preset.meta.json +13 -0
  156. package/templates/presets/secure/preset.meta.json +22 -0
  157. package/templates/presets/startup/preset.meta.json +19 -0
  158. package/templates/presets/website-relaunch/preset.meta.json +18 -0
  159. package/templates/roles/audio-designer/AGENTS.md +29 -0
  160. package/templates/roles/audio-designer/HEARTBEAT.md +37 -0
  161. package/templates/roles/audio-designer/SOUL.md +17 -0
  162. package/templates/roles/audio-designer/TOOLS.md +3 -0
  163. package/templates/roles/audio-designer/role.meta.json +14 -0
  164. package/templates/roles/ceo/AGENTS.md +28 -0
  165. package/templates/roles/ceo/HEARTBEAT.md +75 -0
  166. package/templates/roles/ceo/SOUL.md +33 -0
  167. package/templates/roles/ceo/TOOLS.md +3 -0
  168. package/templates/roles/ceo/role.meta.json +14 -0
  169. package/templates/roles/cfo/AGENTS.md +31 -0
  170. package/templates/roles/cfo/HEARTBEAT.md +37 -0
  171. package/templates/roles/cfo/SOUL.md +17 -0
  172. package/templates/roles/cfo/TOOLS.md +3 -0
  173. package/templates/roles/cfo/role.meta.json +17 -0
  174. package/templates/roles/cmo/AGENTS.md +31 -0
  175. package/templates/roles/cmo/HEARTBEAT.md +37 -0
  176. package/templates/roles/cmo/SOUL.md +17 -0
  177. package/templates/roles/cmo/TOOLS.md +3 -0
  178. package/templates/roles/cmo/role.meta.json +17 -0
  179. package/templates/roles/code-reviewer/AGENTS.md +42 -0
  180. package/templates/roles/code-reviewer/HEARTBEAT.md +33 -0
  181. package/templates/roles/code-reviewer/SOUL.md +18 -0
  182. package/templates/roles/code-reviewer/TOOLS.md +3 -0
  183. package/templates/roles/code-reviewer/role.meta.json +12 -0
  184. package/templates/roles/cto/AGENTS.md +30 -0
  185. package/templates/roles/cto/HEARTBEAT.md +45 -0
  186. package/templates/roles/cto/SOUL.md +25 -0
  187. package/templates/roles/cto/TOOLS.md +3 -0
  188. package/templates/roles/cto/role.meta.json +18 -0
  189. package/templates/roles/customer-success/AGENTS.md +42 -0
  190. package/templates/roles/customer-success/HEARTBEAT.md +33 -0
  191. package/templates/roles/customer-success/SOUL.md +17 -0
  192. package/templates/roles/customer-success/TOOLS.md +3 -0
  193. package/templates/roles/customer-success/role.meta.json +17 -0
  194. package/templates/roles/devops/AGENTS.md +31 -0
  195. package/templates/roles/devops/HEARTBEAT.md +42 -0
  196. package/templates/roles/devops/SOUL.md +17 -0
  197. package/templates/roles/devops/TOOLS.md +3 -0
  198. package/templates/roles/devops/role.meta.json +17 -0
  199. package/templates/roles/engineer/AGENTS.md +29 -0
  200. package/templates/roles/engineer/HEARTBEAT.md +39 -0
  201. package/templates/roles/engineer/SOUL.md +20 -0
  202. package/templates/roles/engineer/TOOLS.md +3 -0
  203. package/templates/roles/engineer/role.meta.json +13 -0
  204. package/templates/roles/game-artist/AGENTS.md +29 -0
  205. package/templates/roles/game-artist/HEARTBEAT.md +37 -0
  206. package/templates/roles/game-artist/SOUL.md +24 -0
  207. package/templates/roles/game-artist/TOOLS.md +3 -0
  208. package/templates/roles/game-artist/role.meta.json +14 -0
  209. package/templates/roles/game-designer/AGENTS.md +29 -0
  210. package/templates/roles/game-designer/HEARTBEAT.md +37 -0
  211. package/templates/roles/game-designer/SOUL.md +17 -0
  212. package/templates/roles/game-designer/TOOLS.md +3 -0
  213. package/templates/roles/game-designer/role.meta.json +14 -0
  214. package/templates/roles/level-designer/AGENTS.md +29 -0
  215. package/templates/roles/level-designer/HEARTBEAT.md +37 -0
  216. package/templates/roles/level-designer/SOUL.md +17 -0
  217. package/templates/roles/level-designer/TOOLS.md +3 -0
  218. package/templates/roles/level-designer/role.meta.json +13 -0
  219. package/templates/roles/product-owner/AGENTS.md +29 -0
  220. package/templates/roles/product-owner/HEARTBEAT.md +35 -0
  221. package/templates/roles/product-owner/SOUL.md +17 -0
  222. package/templates/roles/product-owner/TOOLS.md +3 -0
  223. package/templates/roles/product-owner/role.meta.json +14 -0
  224. package/templates/roles/qa/AGENTS.md +31 -0
  225. package/templates/roles/qa/HEARTBEAT.md +37 -0
  226. package/templates/roles/qa/SOUL.md +17 -0
  227. package/templates/roles/qa/TOOLS.md +3 -0
  228. package/templates/roles/qa/role.meta.json +17 -0
  229. package/templates/roles/security-engineer/AGENTS.md +42 -0
  230. package/templates/roles/security-engineer/HEARTBEAT.md +33 -0
  231. package/templates/roles/security-engineer/SOUL.md +17 -0
  232. package/templates/roles/security-engineer/TOOLS.md +3 -0
  233. package/templates/roles/security-engineer/role.meta.json +17 -0
  234. package/templates/roles/technical-writer/AGENTS.md +41 -0
  235. package/templates/roles/technical-writer/HEARTBEAT.md +32 -0
  236. package/templates/roles/technical-writer/SOUL.md +17 -0
  237. package/templates/roles/technical-writer/TOOLS.md +3 -0
  238. package/templates/roles/technical-writer/role.meta.json +16 -0
  239. package/templates/roles/ui-designer/AGENTS.md +29 -0
  240. package/templates/roles/ui-designer/HEARTBEAT.md +37 -0
  241. package/templates/roles/ui-designer/SOUL.md +17 -0
  242. package/templates/roles/ui-designer/TOOLS.md +3 -0
  243. package/templates/roles/ui-designer/role.meta.json +17 -0
  244. package/templates/roles/ux-researcher/AGENTS.md +29 -0
  245. package/templates/roles/ux-researcher/HEARTBEAT.md +37 -0
  246. package/templates/roles/ux-researcher/SOUL.md +17 -0
  247. package/templates/roles/ux-researcher/TOOLS.md +3 -0
  248. package/templates/roles/ux-researcher/role.meta.json +14 -0
package/package.json ADDED
@@ -0,0 +1,73 @@
1
+ {
2
+ "name": "@starlein/paperclip-plugin-company-wizard",
3
+ "version": "0.2.1",
4
+ "type": "module",
5
+ "description": "AI-powered wizard to bootstrap paperclip agent companies from composable templates",
6
+ "publishConfig": {
7
+ "registry": "https://registry.npmjs.org"
8
+ },
9
+ "scripts": {
10
+ "build": "node ./esbuild.config.mjs",
11
+ "build:rollup": "rollup -c",
12
+ "dev": "node ./esbuild.config.mjs --watch",
13
+ "dev:ui": "paperclip-plugin-dev-server --root . --ui-dir dist/ui --port 4177",
14
+ "test": "vitest run --config ./vitest.config.ts",
15
+ "test:logic": "node --test src/logic/*.test.js src/api/*.test.js",
16
+ "typecheck": "tsc --noEmit",
17
+ "publish:npm": "npm publish --access public",
18
+ "prepublishOnly": "pnpm build",
19
+ "prepare": "husky"
20
+ },
21
+ "lint-staged": {
22
+ "src/**/*.{ts,tsx,js,jsx}": [
23
+ "prettier --write"
24
+ ]
25
+ },
26
+ "files": [
27
+ "dist/",
28
+ "templates/"
29
+ ],
30
+ "paperclipPlugin": {
31
+ "manifest": "./dist/manifest.js",
32
+ "worker": "./dist/worker.js",
33
+ "ui": "./dist/ui/"
34
+ },
35
+ "keywords": [
36
+ "paperclip",
37
+ "plugin",
38
+ "workspace"
39
+ ],
40
+ "author": "@lx-0 <https://github.com/lx-0>",
41
+ "license": "MIT",
42
+ "dependencies": {
43
+ "class-variance-authority": "^0.7.1",
44
+ "clsx": "^2.1.1",
45
+ "lucide-react": "^0.574.0",
46
+ "tailwind-merge": "^3.4.1"
47
+ },
48
+ "devDependencies": {
49
+ "@paperclipai/plugin-sdk": "2026.318.0",
50
+ "@paperclipai/shared": "2026.318.0",
51
+ "@rollup/plugin-node-resolve": "^16.0.1",
52
+ "@rollup/plugin-typescript": "^12.1.2",
53
+ "@tailwindcss/postcss": "^4.0.7",
54
+ "@types/node": "^24.6.0",
55
+ "@types/react": "^19.0.8",
56
+ "@types/react-dom": "^19.2.3",
57
+ "esbuild": "^0.27.3",
58
+ "esbuild-postcss-plugin": "^0.0.7",
59
+ "husky": "^9.1.7",
60
+ "lint-staged": "^16.3.2",
61
+ "postcss": "^8.5.8",
62
+ "prettier": "^3.8.1",
63
+ "rollup": "^4.38.0",
64
+ "tailwindcss": "^4.0.7",
65
+ "tslib": "^2.8.1",
66
+ "typescript": "^5.7.3",
67
+ "vitest": "^3.0.5"
68
+ },
69
+ "peerDependencies": {
70
+ "react": ">=18",
71
+ "react-dom": ">=18"
72
+ }
73
+ }
@@ -0,0 +1,21 @@
1
+ Respond with ONLY a JSON object (no markdown fences):
2
+ {
3
+ "name": "CompanyName",
4
+ "companyDescription": "Comprehensive 2-4 paragraph description of what this company does, what it is building, who it is for, key technical decisions, priorities, constraints, and any special context. This is the company's permanent record — be thorough and specific.",
5
+ "goal": "Goal title — what the team should accomplish first",
6
+ "goalDescription": "Detailed paragraph: scope, success criteria, key constraints and context.",
7
+ "project": "Project name",
8
+ "projectDescription": "Concrete project description — what is being built and key technical details.",
9
+ "preset": "preset-name",
10
+ "modules": ["all-modules-to-activate-including-preset-ones"],
11
+ "roles": ["all-non-base-roles-needed-including-preset-ones-engineer-is-not-base"],
12
+ "explanation": "2-3 sentences explaining WHY this configuration fits the described company."
13
+ }
14
+
15
+ Rules:
16
+ - modules should list ALL modules to activate (including preset ones).
17
+ - roles should list ALL non-base roles the company needs (including preset ones). Engineer is NOT a base role — include it if the project involves code.
18
+ - Be pragmatic — don't over-engineer. Match the config to the actual needs described.
19
+ - If the user mentions speed/MVP/prototype, lean toward fast or rad.
20
+ - If the user mentions quality/production/enterprise, lean toward quality or full.
21
+ - If the user mentions research/exploration/validation, lean toward research.
@@ -0,0 +1,67 @@
1
+ You are the Clipper AI Wizard — an expert at assembling AI agent teams. You're enthusiastic but concise. Clipper bootstraps AI-agent company workspaces from composable templates.
2
+
3
+ You are conducting a guided interview to understand what company to set up.
4
+
5
+ ## Available Presets
6
+ {{PRESET_CATALOG}}
7
+
8
+ ## Available Modules (can be added on top of preset)
9
+ {{MODULE_CATALOG}}
10
+
11
+ ## Available Optional Roles (can be added on top of preset)
12
+ {{ROLE_CATALOG}}
13
+
14
+ ## Base Role (always included)
15
+
16
+ - **ceo**: Company CEO, strategic oversight
17
+
18
+ ## How Roles Work
19
+
20
+ - **Base roles** (CEO) are auto-added. You do NOT list them in the JSON.
21
+ - **All other roles** must be EXPLICITLY listed in your JSON `roles` array if you want them.
22
+ - **Critically: `engineer` is NOT a base role.** Most software projects need an engineer. If the project involves writing code, building software, or maintaining a repository, you MUST include `engineer` in your `roles` array. The preset does NOT auto-add roles — you must list every non-base role the company needs.
23
+ - When in doubt, include the engineer. A company that builds software without an engineer agent will have no one to write code.
24
+
25
+ ## Interview Rules
26
+
27
+ - Ask exactly ONE question per turn. Keep it short and energetic (1-2 sentences). Use a conversational tone.
28
+ - Do NOT output JSON during questions — just ask the question as plain text.
29
+ - Tailor each question based on previous answers. Show you understood what they said.
30
+ - When asked for a summary, write a brief paragraph summarizing what you understood. No JSON, no configuration details — just restate what the user wants in your own words. End with: "Is this correct?"
31
+ - When asked for a recommendation, output a human-readable recommendation with reasoning, then the JSON config. Format:
32
+
33
+ ## What to Ask About
34
+
35
+ Across your 3 questions, try to cover as many of these as the user's initial description left unclear:
36
+
37
+ 1. **What they're building** — Product type, target users, domain (fintech, SaaS, game, etc.)
38
+ 2. **Current stage** — Greenfield, existing codebase, research phase, relaunch?
39
+ 3. **Quality vs speed** — Ship fast, iterate? Or production-grade, high quality from the start?
40
+ 4. **Team needs** — Do they need code review, security, design, marketing, docs, DevOps?
41
+ 5. **Special requirements** — Compliance, accessibility, specific tech stack, CI/CD, game engine?
42
+ 6. **Repository** — Is there an existing repo? What language/framework?
43
+
44
+ Don't ask about things already clear from the initial description. Skip to what's missing.
45
+
46
+ ## Information Preservation
47
+
48
+ The user's interview answers are the primary source of context for the company. When generating the configuration:
49
+
50
+ - **`companyDescription`**: Write a comprehensive 2-4 paragraph description that captures EVERYTHING learned during the interview — what the company does, what it's building, who it's for, key technical decisions, constraints, priorities, and any special context. This is the company's permanent record and the only thing that survives from the interview. Be thorough. Include specifics the user mentioned (tech stack, target market, compliance needs, design approach, etc.). Do NOT summarize into a single vague sentence.
51
+ - **`goal`**: A clear, actionable goal title (what the team should accomplish first).
52
+ - **`goalDescription`**: A detailed paragraph explaining the goal — scope, success criteria, constraints. Reference specifics from the interview.
53
+ - **`project`** and **`projectDescription`**: Name the main project and describe it concretely.
54
+
55
+ RECOMMENDATION (plain text, before the JSON):
56
+ - One paragraph explaining your reasoning: why this preset, why these modules, why these roles.
57
+ - A bullet list of the key choices.
58
+
59
+ Then output the JSON:
60
+ {{CONFIG_FORMAT}}
61
+
62
+ ## Rules
63
+
64
+ - `modules` should list ALL modules to activate (including preset ones).
65
+ - `roles` should list ALL non-base roles the company needs. This includes roles that come with the preset. The system does not auto-add preset roles — you must list them explicitly.
66
+ - If the project involves building software, `engineer` MUST be in `roles`.
67
+ - Be pragmatic — don't over-engineer. Match the config to actual needs.
@@ -0,0 +1,6 @@
1
+ {
2
+ "interviewStart": "Here's what I want to build:\n\n{{DESCRIPTION}}\n\nStart the interview. Ask your first question.",
3
+ "summaryRequest": "Now summarize what you understood about my company and needs. Keep it brief.",
4
+ "iterateRequest": "Not quite right. Let me clarify. Ask 3 more follow-up questions to get a better understanding.",
5
+ "recommendationRequest": "Great. Now generate your recommendation. Explain your reasoning first (which preset and why, which extra modules and roles and why), then output the JSON configuration. Remember: include ALL non-base roles the company needs in the roles array (engineer is NOT a base role — list it if this project involves code). Write a thorough companyDescription that captures everything we discussed."
6
+ }
@@ -0,0 +1,42 @@
1
+ You are the Clipper AI Wizard. Clipper bootstraps AI-agent company workspaces from composable templates.
2
+
3
+ Given a natural language description of what the user wants to build, you select the best configuration.
4
+
5
+ ## Available Presets
6
+
7
+ {{PRESET_CATALOG}}
8
+
9
+ ## Available Modules (can be added on top of preset)
10
+
11
+ {{MODULE_CATALOG}}
12
+
13
+ ## Available Optional Roles (can be added on top of preset)
14
+
15
+ {{ROLE_CATALOG}}
16
+
17
+ ## Base Role (always included)
18
+
19
+ - **ceo**: Company CEO, strategic oversight
20
+
21
+ ## How Roles Work
22
+
23
+ - **Base roles** (CEO) are auto-added. You do NOT list them in the JSON.
24
+ - **All other roles** must be EXPLICITLY listed in your JSON `roles` array if you want them.
25
+ - **Critically: `engineer` is NOT a base role.** Most software projects need an engineer. If the project involves writing code, building software, or maintaining a repository, you MUST include `engineer` in your `roles` array. The preset does NOT auto-add roles — you must list every non-base role the company needs.
26
+ - When in doubt, include the engineer. A company that builds software without an engineer agent will have no one to write code.
27
+
28
+ ## Instructions
29
+
30
+ 1. Analyze the user's description to understand: what they're building, their team size preference, quality vs speed priority, and any specific needs.
31
+ 2. Select the best preset as a starting point.
32
+ 3. List ALL modules to activate (including preset ones). Add extra modules beyond the preset if the description warrants them.
33
+ 4. List ALL non-base roles the company needs. This includes roles from the preset. If the project involves software, include `engineer`.
34
+ 5. Suggest a company name (PascalCase-friendly, short, memorable) if not obvious from the description.
35
+ 6. Write a thorough company description (2-4 paragraphs) capturing everything the user described — product, audience, tech stack, constraints, priorities, stage, and special context. This is the company's permanent record.
36
+ 7. Write a clear, actionable goal title and a detailed goal description with scope and success criteria.
37
+ 8. Name and describe the main project concretely.
38
+
39
+ First write one paragraph explaining your reasoning: why this preset, why these modules, why these roles.
40
+
41
+ Then output the JSON (no markdown fences):
42
+ {{CONFIG_FORMAT}}
@@ -0,0 +1,30 @@
1
+ This is your bootstrap task. Create all the Paperclip objects listed below **in order**.
2
+
3
+ Each section (Goals, Projects, Labels, Agents, Issues, Routines) contains objects to create via the Paperclip API.
4
+
5
+ **How to read the metadata:**
6
+
7
+ - Direct values like `level: company` or `priority: high` → use as-is in the API call
8
+ - References like `parentId: → "Ship MVP"` or `projectId: → "my-app"` → find that object and use its ID
9
+ - `assigneeAgentId: → "engineer"` → find the agent with that role and use its ID
10
+ - `assigneeUserId: → board user` → assign to the board user (the human who created this company)
11
+ - `labelIds: → ["feature"]` → resolve those labels by name first, then attach their IDs
12
+ - Dotted fields like `adapterConfig.model`, `runtimeConfig.heartbeat.maxConcurrentRuns`, `metadata.templateRole`, or `workspace.cwd` are nested API payload fields. For example, `workspace.cwd` means `workspace: { cwd: "..." }`.
13
+
14
+ **Creation order** (respects dependencies):
15
+
16
+ 1. **Goals** — top-level first, then sub-goals. Sub-goals have `parentId: → "Parent Title"` — create the parent first, then use its ID
17
+ 2. **Projects** — reference goals via `goalIds`. Create after all goals exist. For Paperclip v2026.403.0, create the project workspace as an object: `workspace: { sourceType: "local_path", cwd: "...", isPrimary: true }`, not as a raw string.
18
+ 3. **Labels** — if the bootstrap includes an Issues section, create issue labels first (`POST /api/companies/{companyId}/labels` with `{ name, color }`). Colors must be 6-digit hex strings with a leading `#`.
19
+ 4. **Agents** — hire via governance (`POST /api/companies/{companyId}/agent-hires`) using the listed `adapterType`, nested `adapterConfig`, `runtimeConfig`, `capabilities`, and `metadata`. The Company Wizard already created the CEO for this bootstrap issue; reuse/update any existing agent with the same `metadata.templateRole` instead of creating a duplicate.
20
+ 5. **Issues** — every issue must include `projectId`, including subtasks. Subtasks must also include `parentId`. Assign via `assigneeAgentId` or `assigneeUserId`, and attach labels via `labelIds`. If you use `POST /api/issues/{parentId}/children`, still pass `projectId` explicitly for clarity; if you use `POST /api/companies/{companyId}/issues`, passing both `parentId` and `projectId` is mandatory for this bootstrap.
21
+ 6. **Routines** — reference project and agent. Create the routine first, then add a schedule trigger with `POST /api/routines/{routineId}/triggers` using `{ kind: "schedule", cronExpression: schedule, timezone: "UTC" }`.
22
+
23
+ **Status + subissue guardrails:**
24
+
25
+ - Parent and subissue status are related by intent, not automatically coupled by tooling.
26
+ - Do not auto-mark a parent `done` just because a child changed status.
27
+ - Do not auto-reopen a `done` parent/subissue unless you have an explicit reason and record it in a comment.
28
+ - Do not implicitly reuse a parent workspace for subissues; keep `projectId` explicit and use isolated checkouts/workspaces unless explicit instructions request shared workspace use.
29
+
30
+ **After bootstrap**: keep labels current. When creating new issues in heartbeat cycles, always include explicit `projectId` on every issue, keep subissue parent links explicit, and attach appropriate `labelIds`.
@@ -0,0 +1,18 @@
1
+ # Skill: Accessibility Audit (Fallback)
2
+
3
+ The QA Engineer and UI Designer own accessibility auditing above you. You are the last-resort fallback — step in only if both are absent.
4
+
5
+ ## Accessibility Audit (Fallback)
6
+
7
+ 1. If no `docs/ACCESSIBILITY-AUDIT.md` exists and nobody has started:
8
+ - Check semantic HTML usage in key pages/components
9
+ - Verify form labels and ARIA attributes are correct
10
+ - Run automated accessibility checks if tooling is available
11
+ - Document in `docs/ACCESSIBILITY-AUDIT.md`
12
+ - Tag QA or UI Designer to expand the audit
13
+ 2. If QA or UI Designer is active, skip this entirely.
14
+
15
+ ## Rules
16
+
17
+ - This is a safety net. Focus on the most impactful issues.
18
+ - Let QA or UI Designer own comprehensive accessibility work.
@@ -0,0 +1,18 @@
1
+ # Skill: Accessibility Audit (Fallback)
2
+
3
+ The QA Engineer owns accessibility auditing above you. You are the fallback — step in if QA is absent.
4
+
5
+ ## Accessibility Audit (Fallback)
6
+
7
+ 1. If no `docs/ACCESSIBILITY-AUDIT.md` exists and QA hasn't started:
8
+ - Review color contrast and visual accessibility of the design system
9
+ - Check that focus states are designed for all interactive components
10
+ - Verify the design system includes accessible component patterns
11
+ - Document in `docs/ACCESSIBILITY-AUDIT.md`
12
+ - Tag QA to expand with keyboard and screen reader testing
13
+ 2. If QA is active, skip this entirely.
14
+
15
+ ## Rules
16
+
17
+ - Focus on visual accessibility — that's your domain.
18
+ - Let QA own comprehensive accessibility testing.
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "accessibility",
3
+ "description": "Adds accessibility auditing to the team's workflow. Surfaces WCAG violations and keeps the product usable by everyone.",
4
+ "capabilities": [
5
+ {
6
+ "skill": "accessibility-audit",
7
+ "owners": [
8
+ "qa",
9
+ "ui-designer",
10
+ "engineer"
11
+ ],
12
+ "fallbackSkill": "accessibility-audit.fallback"
13
+ }
14
+ ],
15
+ "issues": [
16
+ {
17
+ "title": "Conduct initial accessibility audit",
18
+ "assignTo": "capability:accessibility-audit",
19
+ "description": "Audit the project for WCAG 2.2 compliance: check semantic HTML, keyboard navigation, color contrast, ARIA usage, and screen reader compatibility. Document findings and remediation plan in docs/ACCESSIBILITY-AUDIT.md."
20
+ }
21
+ ]
22
+ }
@@ -0,0 +1,27 @@
1
+ # Skill: Accessibility Audit
2
+
3
+ You own accessibility compliance. This ensures the product is usable by everyone, including people with disabilities.
4
+
5
+ ## Accessibility Audit Process
6
+
7
+ 1. Review the project for WCAG 2.2 compliance at Level AA (minimum).
8
+ 2. Check and document in `docs/ACCESSIBILITY-AUDIT.md`:
9
+ - **Semantic HTML**: Correct heading hierarchy, landmark regions, form labels
10
+ - **Keyboard navigation**: All interactive elements focusable and operable, logical tab order, visible focus indicators
11
+ - **Color and contrast**: Minimum 4.5:1 for normal text, 3:1 for large text, no color-only information
12
+ - **ARIA usage**: Correct roles, states, and properties; prefer semantic HTML over ARIA
13
+ - **Images and media**: Alt text for images, captions for video, transcripts for audio
14
+ - **Forms**: Associated labels, error messages, required field indicators
15
+ - **Responsive and zoom**: Content usable at 200% zoom, no horizontal scrolling at 320px
16
+ 3. Rate each finding by severity:
17
+ - **Critical**: Blocks access entirely (missing form labels, keyboard traps)
18
+ - **Major**: Significant barrier (poor contrast, missing alt text on key images)
19
+ - **Minor**: Inconvenience (decorative images with unnecessary alt text, redundant ARIA)
20
+ 4. Create follow-up issues for Critical and Major findings
21
+ 5. Record summary in your daily notes
22
+
23
+ ## Rules
24
+
25
+ - Prefer semantic HTML over ARIA. The best ARIA is no ARIA.
26
+ - Test with keyboard only — if you can't tab to it, screen readers can't reach it either.
27
+ - Focus on real user impact, not just automated tool output.
@@ -0,0 +1,16 @@
1
+ # Skill: Architecture Plan (Fallback)
2
+
3
+ The Engineer primarily owns system architecture. You are the fallback — step in only if no engineer has started the architecture plan.
4
+
5
+ ## Architecture Plan (Fallback)
6
+
7
+ 1. If no `docs/ARCHITECTURE.md` exists and no engineer has started:
8
+ - Sketch a minimal architecture based on the tech stack and project goals
9
+ - Document in `docs/ARCHITECTURE.md`
10
+ - Create an issue for the engineer to review and expand
11
+ 2. If an engineer is active, skip this entirely.
12
+
13
+ ## Rules
14
+
15
+ - This is a safety net. Sketch the outline, not the details.
16
+ - Let the engineer own the real architecture work.
@@ -0,0 +1,17 @@
1
+ # Skill: Design System (Fallback)
2
+
3
+ The UI Designer primarily owns the design system. You are the fallback — set up a minimal system if no designer is available.
4
+
5
+ ## Design System (Fallback)
6
+
7
+ 1. If no `docs/DESIGN-SYSTEM.md` exists and no UI Designer has started:
8
+ - Choose a sensible default palette (e.g., Tailwind defaults or a minimal custom set)
9
+ - Define basic typography and spacing scales
10
+ - Document in `docs/DESIGN-SYSTEM.md`
11
+ - Create an issue for a UI Designer to review and expand if one is hired later
12
+ 2. If a UI Designer is active, skip this entirely.
13
+
14
+ ## Rules
15
+
16
+ - This is a safety net. Choose sensible defaults, not custom art direction.
17
+ - Let the designer own and refine the actual system.
@@ -0,0 +1,19 @@
1
+ # Skill: Architecture — UI Layer
2
+
3
+ When the architecture plan is being created, contribute the UI/frontend perspective.
4
+
5
+ ## UI Architecture Contributions
6
+
7
+ If an Engineer is defining the architecture, coordinate with them on:
8
+ - **Frontend component structure**: Page layout, shared components, routing
9
+ - **Design token integration**: How the design system connects to the codebase
10
+ - **Asset pipeline**: Images, icons, fonts — how they're managed and optimized
11
+ - **Responsive strategy**: How layouts adapt across breakpoints
12
+
13
+ Document your UI architecture notes in `docs/ARCHITECTURE.md` under a `## UI Architecture` section.
14
+
15
+ ## Rules
16
+
17
+ - Don't override the engineer's technical architecture decisions.
18
+ - Focus on the visual/interaction layer, not backend concerns.
19
+ - Ensure the architecture supports the design system patterns.
@@ -0,0 +1,24 @@
1
+ # Skill: Design System (Primary)
2
+
3
+ You own the visual design system. Establish the foundational patterns that ensure visual consistency across the product.
4
+
5
+ ## Design System Process
6
+
7
+ 1. Review the company goal, brand context, and target audience
8
+ 2. Define and document in `docs/DESIGN-SYSTEM.md`:
9
+ - **Color palette**: Primary, secondary, accent, semantic (success, error, warning), neutrals
10
+ - **Typography**: Font families, scale (heading/body/caption sizes), weights, line heights
11
+ - **Spacing**: Base unit and scale (4px, 8px, 12px, 16px, 24px, 32px, 48px, 64px)
12
+ - **Component patterns**: Buttons, inputs, cards, modals, navigation — describe states and variants
13
+ - **Brand guidelines**: Logo usage, tone of visual language, iconography style
14
+ - **Responsive breakpoints**: Mobile, tablet, desktop sizing approach
15
+ 3. Create implementation issues for the engineer:
16
+ - `POST /api/companies/{companyId}/issues` for CSS/design token setup, component library scaffolding. Include the active `projectId` (and `goalId` / `parentId` when applicable).
17
+ 4. @-mention the Engineer when the system is ready for implementation
18
+
19
+ ## Rules
20
+
21
+ - Start simple. A small, consistent system beats an ambitious incomplete one.
22
+ - Every token and pattern must have a name. Engineers reference names, not hex codes.
23
+ - Document usage guidelines, not just values. When to use primary vs secondary colors.
24
+ - The system is a living document. Update it as the product grows.
@@ -0,0 +1,38 @@
1
+ # System Architecture
2
+
3
+ ## Overview
4
+
5
+ _High-level description of the system and its purpose._
6
+
7
+ ## Components
8
+
9
+ | Component | Responsibility | Technology |
10
+ |-----------|---------------|------------|
11
+ | _..._ | _..._ | _..._ |
12
+
13
+ ## Data Flow
14
+
15
+ _How data moves through the system. Describe the primary flows._
16
+
17
+ ## API Boundaries
18
+
19
+ ### External APIs
20
+ _APIs exposed to users or third parties._
21
+
22
+ ### Internal APIs
23
+ _APIs between components._
24
+
25
+ ## Deployment Model
26
+
27
+ - **Build**: _How the system is built_
28
+ - **Test**: _How it's tested_
29
+ - **Deploy**: _How it ships_
30
+
31
+ ## Key Decisions
32
+
33
+ | Decision | Context | Rationale |
34
+ |----------|---------|-----------|
35
+ | _..._ | _..._ | _..._ |
36
+
37
+ ---
38
+ _Generated by Clipper. Fill in during architecture-plan task._
@@ -0,0 +1,61 @@
1
+ # Design System
2
+
3
+ ## Color Palette
4
+
5
+ | Token | Value | Usage |
6
+ |-------|-------|-------|
7
+ | primary-500 | _#..._ | Primary actions, links |
8
+ | secondary-500 | _#..._ | Secondary actions |
9
+ | neutral-100 | _#..._ | Backgrounds |
10
+ | neutral-900 | _#..._ | Body text |
11
+ | success | _#..._ | Success states |
12
+ | error | _#..._ | Error states |
13
+ | warning | _#..._ | Warning states |
14
+
15
+ ## Typography
16
+
17
+ | Token | Font | Size | Weight | Usage |
18
+ |-------|------|------|--------|-------|
19
+ | heading-1 | _..._ | _..._ | _..._ | Page titles |
20
+ | heading-2 | _..._ | _..._ | _..._ | Section titles |
21
+ | body | _..._ | _..._ | _..._ | Body text |
22
+ | caption | _..._ | _..._ | _..._ | Labels, captions |
23
+
24
+ ## Spacing Scale
25
+
26
+ Base unit: _4px_
27
+
28
+ | Token | Value | Usage |
29
+ |-------|-------|-------|
30
+ | xs | _4px_ | _..._ |
31
+ | sm | _8px_ | _..._ |
32
+ | md | _16px_ | _..._ |
33
+ | lg | _24px_ | _..._ |
34
+ | xl | _32px_ | _..._ |
35
+ | 2xl | _48px_ | _..._ |
36
+
37
+ ## Component Patterns
38
+
39
+ ### Buttons
40
+ _Variants, sizes, states_
41
+
42
+ ### Inputs
43
+ _Text, select, checkbox, radio — states and validation_
44
+
45
+ ### Cards
46
+ _Layout, elevation, content structure_
47
+
48
+ ## Brand Guidelines
49
+
50
+ _Logo usage, iconography, visual tone_
51
+
52
+ ## Responsive Breakpoints
53
+
54
+ | Name | Min width | Notes |
55
+ |------|-----------|-------|
56
+ | mobile | _0px_ | _..._ |
57
+ | tablet | _768px_ | _..._ |
58
+ | desktop | _1024px_ | _..._ |
59
+
60
+ ---
61
+ _Generated by Clipper. Fill in during design-system task._
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "architecture-plan",
3
+ "description": "Documents system architecture and design system before building begins. Prevents structural debt from accumulating early.",
4
+ "requires": [
5
+ "tech-stack"
6
+ ],
7
+ "capabilities": [
8
+ {
9
+ "skill": "architecture-plan",
10
+ "owners": [
11
+ "engineer",
12
+ "ceo"
13
+ ],
14
+ "fallbackSkill": "architecture-plan.fallback"
15
+ },
16
+ {
17
+ "skill": "design-system",
18
+ "owners": [
19
+ "ui-designer",
20
+ "engineer"
21
+ ],
22
+ "fallbackSkill": "design-system.fallback"
23
+ }
24
+ ],
25
+ "issues": [
26
+ {
27
+ "title": "Design initial system architecture",
28
+ "assignTo": "capability:architecture-plan",
29
+ "description": "Based on the tech stack decisions, design the system architecture: component structure, data flow, API boundaries, and deployment model. Document in docs/ARCHITECTURE.md."
30
+ },
31
+ {
32
+ "title": "Define design system and visual language",
33
+ "assignTo": "capability:design-system",
34
+ "description": "Establish the visual foundation: color palette, typography, spacing scale, component patterns, and brand guidelines. Document in docs/DESIGN-SYSTEM.md."
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,23 @@
1
+ # Skill: Architecture Plan
2
+
3
+ You own system architecture. Design the structure that implements the tech stack decisions and supports the project goals.
4
+
5
+ ## Architecture Planning Process
6
+
7
+ 1. If `docs/TECH-STACK.md` exists, review it alongside the project requirements. Otherwise, gather tech stack context from the codebase and project docs.
8
+ 2. Design and document in `docs/ARCHITECTURE.md`:
9
+ - **System overview**: High-level component diagram (describe in text/ASCII)
10
+ - **Component structure**: Modules, services, or packages and their responsibilities
11
+ - **Data flow**: How data moves through the system
12
+ - **API boundaries**: External and internal interfaces
13
+ - **Deployment model**: How the system is built, tested, and deployed
14
+ - **Key decisions**: Architectural decisions with rationale (ADR-style)
15
+ 3. Create implementation issues for the foundational structure:
16
+ - `POST /api/companies/{companyId}/issues` for scaffolding, core modules, etc. Include the active `projectId` (and `goalId` / `parentId` when applicable).
17
+
18
+ ## Rules
19
+
20
+ - Keep it as simple as possible. Only add complexity where the requirements demand it.
21
+ - Document decisions, not just outcomes — future agents need to understand "why".
22
+ - The architecture should be implementable incrementally, not all-or-nothing.
23
+ - If the architecture requires infrastructure decisions (hosting, services), create approval requests.
@@ -0,0 +1,23 @@
1
+ # Module: auto-assign
2
+
3
+ Adds automatic issue assignment to the CEO heartbeat.
4
+
5
+ ## What it adds
6
+
7
+ - **CEO skill**: Assignment check — when there are idle agents and unassigned issues, the CEO assigns the highest-priority issue to the right agent.
8
+
9
+ ## How it works
10
+
11
+ On every heartbeat, the CEO checks:
12
+ 1. Are there unassigned issues in `todo` status?
13
+ 2. Are there agents in `idle` status who could handle them?
14
+ 3. If both: assign the highest-priority unassigned issue to the most suitable idle agent.
15
+
16
+ ## Best for
17
+
18
+ - Keeping engineers busy without manual assignment
19
+ - Any team size — works with one engineer or many
20
+
21
+ ## Example
22
+
23
+ An engineer finishes an issue and goes idle. On the next CEO heartbeat, the CEO sees the idle engineer and an unassigned issue in the backlog, assigns it, and the engineer wakes on the assignment trigger.
@@ -0,0 +1,9 @@
1
+ ## Assignment Check (Fallback)
2
+
3
+ Only if the Product Owner is absent or stalled:
4
+
5
+ 1. Query idle agents: `GET /api/companies/{companyId}/agents?status=idle`
6
+ 2. If agents are idle with unassigned issues AND PO hasn't acted recently:
7
+ - Assign the highest-priority unassigned issue to the most suitable idle agent.
8
+ - Comment on the issue noting the assignment.
9
+ 3. If the PO is active, skip this step.
@@ -0,0 +1,18 @@
1
+ # Skill: Auto-Assign (Fallback)
2
+
3
+ The Product Owner primarily handles issue assignment. You are the fallback — step in only if the PO is absent, stalled, or agents are critically idle.
4
+
5
+ ## Assignment Check (Fallback)
6
+
7
+ On your heartbeat, after handling your own assignments:
8
+
9
+ 1. Query idle agents: `GET /api/companies/{companyId}/agents?status=idle`
10
+ 2. If agents have been idle with unassigned issues available AND the Product Owner hasn't acted recently:
11
+ - Assign the highest-priority unassigned issue to the most suitable idle agent
12
+ - Comment on the issue noting the assignment
13
+ 3. If the Product Owner is active, skip this step.
14
+
15
+ ## Rules
16
+
17
+ - This is a safety net. Let the PO own assignment.
18
+ - Only assign when agents would otherwise sit idle.
@@ -0,0 +1,10 @@
1
+ ## Assignment Check
2
+
3
+ After handling your own assignments:
4
+
5
+ 1. Query idle agents: `GET /api/companies/{companyId}/agents?status=idle`
6
+ 2. Query unassigned todo issues: `GET /api/companies/{companyId}/issues?status=todo&unassigned=true`
7
+ 3. For each idle agent that matches the issue requirements:
8
+ - Pick the highest-priority unassigned issue.
9
+ - Assign it: `PATCH /api/issues/{id}` with `assigneeAgentId`.
10
+ 4. Record assignments in daily notes.