@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.
- package/LICENSE +21 -0
- package/README.md +748 -0
- package/dist/manifest.js +91 -0
- package/dist/manifest.js.map +7 -0
- package/dist/ui/index.css +1647 -0
- package/dist/ui/index.css.map +7 -0
- package/dist/ui/index.js +6738 -0
- package/dist/ui/index.js.map +7 -0
- package/dist/worker.js +8247 -0
- package/dist/worker.js.map +7 -0
- package/package.json +73 -0
- package/templates/ai-wizard/config-format.md +21 -0
- package/templates/ai-wizard/interview-system.md +67 -0
- package/templates/ai-wizard/messages.json +6 -0
- package/templates/ai-wizard/single-shot-system.md +42 -0
- package/templates/bootstrap-instructions.md +30 -0
- package/templates/modules/accessibility/agents/engineer/skills/accessibility-audit.fallback.md +18 -0
- package/templates/modules/accessibility/agents/ui-designer/skills/accessibility-audit.fallback.md +18 -0
- package/templates/modules/accessibility/module.meta.json +22 -0
- package/templates/modules/accessibility/skills/accessibility-audit.md +27 -0
- package/templates/modules/architecture-plan/agents/ceo/skills/architecture-plan.fallback.md +16 -0
- package/templates/modules/architecture-plan/agents/engineer/skills/design-system.fallback.md +17 -0
- package/templates/modules/architecture-plan/agents/ui-designer/skills/architecture-plan.md +19 -0
- package/templates/modules/architecture-plan/agents/ui-designer/skills/design-system.md +24 -0
- package/templates/modules/architecture-plan/docs/architecture-template.md +38 -0
- package/templates/modules/architecture-plan/docs/design-system-template.md +61 -0
- package/templates/modules/architecture-plan/module.meta.json +37 -0
- package/templates/modules/architecture-plan/skills/architecture-plan.md +23 -0
- package/templates/modules/auto-assign/README.md +23 -0
- package/templates/modules/auto-assign/agents/ceo/heartbeat-section.md +9 -0
- package/templates/modules/auto-assign/agents/ceo/skills/auto-assign.fallback.md +18 -0
- package/templates/modules/auto-assign/agents/product-owner/heartbeat-section.md +10 -0
- package/templates/modules/auto-assign/module.meta.json +27 -0
- package/templates/modules/auto-assign/skills/auto-assign.md +23 -0
- package/templates/modules/backlog/README.md +26 -0
- package/templates/modules/backlog/agents/ceo/heartbeat-section.md +10 -0
- package/templates/modules/backlog/agents/ceo/skills/backlog-health.fallback.md +20 -0
- package/templates/modules/backlog/agents/product-owner/heartbeat-section.md +15 -0
- package/templates/modules/backlog/docs/backlog-process.md +62 -0
- package/templates/modules/backlog/docs/backlog-template.md +53 -0
- package/templates/modules/backlog/module.meta.json +31 -0
- package/templates/modules/backlog/skills/backlog-health.md +47 -0
- package/templates/modules/brand-identity/agents/ceo/skills/brand-identity.fallback.md +19 -0
- package/templates/modules/brand-identity/agents/cmo/skills/brand-identity.fallback.md +19 -0
- package/templates/modules/brand-identity/docs/brand-identity-template.md +43 -0
- package/templates/modules/brand-identity/module.meta.json +22 -0
- package/templates/modules/brand-identity/skills/brand-identity.md +30 -0
- package/templates/modules/build-api/module.meta.json +118 -0
- package/templates/modules/build-api/skills/api-design.md +43 -0
- package/templates/modules/ci-cd/agents/devops/skills/ci-cd.md +28 -0
- package/templates/modules/ci-cd/agents/engineer/skills/ci-cd.fallback.md +18 -0
- package/templates/modules/ci-cd/docs/ci-cd-template.md +42 -0
- package/templates/modules/ci-cd/module.meta.json +105 -0
- package/templates/modules/ci-cd/skills/ci-cd.md +26 -0
- package/templates/modules/codebase-onboarding/agents/ceo/skills/codebase-audit.fallback.md +19 -0
- package/templates/modules/codebase-onboarding/module.meta.json +24 -0
- package/templates/modules/codebase-onboarding/skills/codebase-audit.md +45 -0
- package/templates/modules/competitive-intel/agents/ceo/skills/competitive-tracking.fallback.md +17 -0
- package/templates/modules/competitive-intel/agents/cmo/skills/competitive-tracking.fallback.md +17 -0
- package/templates/modules/competitive-intel/agents/customer-success/skills/competitive-tracking.md +25 -0
- package/templates/modules/competitive-intel/module.meta.json +23 -0
- package/templates/modules/competitive-intel/skills/competitive-tracking.md +27 -0
- package/templates/modules/dependency-management/agents/engineer/skills/dependency-audit.fallback.md +18 -0
- package/templates/modules/dependency-management/module.meta.json +25 -0
- package/templates/modules/dependency-management/skills/dependency-audit.md +43 -0
- package/templates/modules/documentation/agents/ceo/skills/project-docs.fallback.md +16 -0
- package/templates/modules/documentation/agents/engineer/skills/project-docs.fallback.md +16 -0
- package/templates/modules/documentation/module.meta.json +22 -0
- package/templates/modules/documentation/skills/project-docs.md +25 -0
- package/templates/modules/game-design/agents/ceo/skills/game-design.fallback.md +17 -0
- package/templates/modules/game-design/agents/game-designer/skills/game-design.md +51 -0
- package/templates/modules/game-design/docs/engine-phaser.md +310 -0
- package/templates/modules/game-design/docs/engine-pixijs.md +289 -0
- package/templates/modules/game-design/docs/engine-threejs.md +304 -0
- package/templates/modules/game-design/docs/gdd-template.md +72 -0
- package/templates/modules/game-design/module.meta.json +22 -0
- package/templates/modules/game-design/skills/game-design.md +41 -0
- package/templates/modules/github-repo/README.md +23 -0
- package/templates/modules/github-repo/agents/engineer/skills/git-workflow.md +23 -0
- package/templates/modules/github-repo/docs/git-workflow.md +50 -0
- package/templates/modules/github-repo/module.meta.json +12 -0
- package/templates/modules/hiring-review/agents/ceo/skills/hiring-review.fallback.md +17 -0
- package/templates/modules/hiring-review/module.meta.json +21 -0
- package/templates/modules/hiring-review/skills/hiring-review.md +24 -0
- package/templates/modules/launch-mvp/module.meta.json +86 -0
- package/templates/modules/market-analysis/agents/ceo/skills/market-analysis.fallback.md +17 -0
- package/templates/modules/market-analysis/agents/cmo/skills/market-analysis.fallback.md +19 -0
- package/templates/modules/market-analysis/agents/product-owner/skills/market-analysis.fallback.md +18 -0
- package/templates/modules/market-analysis/agents/ux-researcher/skills/market-analysis.md +23 -0
- package/templates/modules/market-analysis/docs/market-analysis-template.md +32 -0
- package/templates/modules/market-analysis/module.meta.json +23 -0
- package/templates/modules/market-analysis/skills/market-analysis.md +21 -0
- package/templates/modules/monitoring/agents/devops/skills/monitoring.md +23 -0
- package/templates/modules/monitoring/agents/engineer/skills/monitoring.fallback.md +18 -0
- package/templates/modules/monitoring/docs/monitoring-template.md +46 -0
- package/templates/modules/monitoring/module.meta.json +24 -0
- package/templates/modules/monitoring/skills/monitoring.md +20 -0
- package/templates/modules/pr-review/README.md +43 -0
- package/templates/modules/pr-review/agents/code-reviewer/skills/code-review.md +29 -0
- package/templates/modules/pr-review/agents/devops/skills/infra-review.md +29 -0
- package/templates/modules/pr-review/agents/engineer/skills/pr-workflow.md +24 -0
- package/templates/modules/pr-review/agents/product-owner/skills/product-review.md +27 -0
- package/templates/modules/pr-review/agents/qa/skills/qa-review.md +29 -0
- package/templates/modules/pr-review/agents/ui-designer/skills/design-review.md +29 -0
- package/templates/modules/pr-review/agents/ux-researcher/skills/ux-review.md +29 -0
- package/templates/modules/pr-review/docs/pr-conventions.md +78 -0
- package/templates/modules/pr-review/module.meta.json +24 -0
- package/templates/modules/release-management/agents/engineer/skills/release-process.fallback.md +18 -0
- package/templates/modules/release-management/module.meta.json +25 -0
- package/templates/modules/release-management/skills/release-process.md +45 -0
- package/templates/modules/security-audit/agents/devops/skills/security-review.fallback.md +17 -0
- package/templates/modules/security-audit/agents/devops/skills/threat-model.fallback.md +17 -0
- package/templates/modules/security-audit/agents/engineer/skills/security-review.fallback.md +17 -0
- package/templates/modules/security-audit/agents/engineer/skills/threat-model.fallback.md +17 -0
- package/templates/modules/security-audit/module.meta.json +36 -0
- package/templates/modules/security-audit/skills/security-review.md +25 -0
- package/templates/modules/security-audit/skills/threat-model.md +22 -0
- package/templates/modules/stall-detection/README.md +27 -0
- package/templates/modules/stall-detection/agents/ceo/heartbeat-section.md +12 -0
- package/templates/modules/stall-detection/agents/ceo/skills/stall-detection.md +21 -0
- package/templates/modules/stall-detection/module.meta.json +15 -0
- package/templates/modules/tech-stack/agents/ceo/skills/tech-stack.fallback.md +16 -0
- package/templates/modules/tech-stack/docs/tech-stack-template.md +28 -0
- package/templates/modules/tech-stack/module.meta.json +21 -0
- package/templates/modules/tech-stack/skills/tech-stack.md +25 -0
- package/templates/modules/triage/agents/ceo/skills/issue-triage.fallback.md +19 -0
- package/templates/modules/triage/module.meta.json +25 -0
- package/templates/modules/triage/skills/issue-triage.md +42 -0
- package/templates/modules/user-testing/agents/ceo/skills/user-testing.fallback.md +17 -0
- package/templates/modules/user-testing/agents/product-owner/skills/user-testing.fallback.md +17 -0
- package/templates/modules/user-testing/agents/qa/skills/user-testing.md +30 -0
- package/templates/modules/user-testing/agents/ux-researcher/skills/user-testing.fallback.md +18 -0
- package/templates/modules/user-testing/docs/user-testing-template.md +37 -0
- package/templates/modules/user-testing/module.meta.json +23 -0
- package/templates/modules/user-testing/skills/user-testing.md +27 -0
- package/templates/modules/vision-workshop/agents/ceo/skills/vision-workshop.md +23 -0
- package/templates/modules/vision-workshop/agents/ux-researcher/skills/vision-workshop.md +19 -0
- package/templates/modules/vision-workshop/docs/vision-template.md +28 -0
- package/templates/modules/vision-workshop/module.meta.json +12 -0
- package/templates/modules/website-relaunch/agents/ui-designer/skills/site-audit.md +65 -0
- package/templates/modules/website-relaunch/module.meta.json +168 -0
- package/templates/modules/website-relaunch/skills/design-ingestion.md +111 -0
- package/templates/modules/website-relaunch/skills/site-audit.md +54 -0
- package/templates/presets/build-api/preset.meta.json +16 -0
- package/templates/presets/build-game/preset.meta.json +150 -0
- package/templates/presets/content/preset.meta.json +20 -0
- package/templates/presets/fast/preset.meta.json +16 -0
- package/templates/presets/full/preset.meta.json +22 -0
- package/templates/presets/gtm/preset.meta.json +21 -0
- package/templates/presets/launch-mvp/preset.meta.json +17 -0
- package/templates/presets/launch-pack/preset.meta.json +25 -0
- package/templates/presets/quality/preset.meta.json +17 -0
- package/templates/presets/rad/preset.meta.json +19 -0
- package/templates/presets/repo-maintenance/preset.meta.json +104 -0
- package/templates/presets/research/preset.meta.json +13 -0
- package/templates/presets/secure/preset.meta.json +22 -0
- package/templates/presets/startup/preset.meta.json +19 -0
- package/templates/presets/website-relaunch/preset.meta.json +18 -0
- package/templates/roles/audio-designer/AGENTS.md +29 -0
- package/templates/roles/audio-designer/HEARTBEAT.md +37 -0
- package/templates/roles/audio-designer/SOUL.md +17 -0
- package/templates/roles/audio-designer/TOOLS.md +3 -0
- package/templates/roles/audio-designer/role.meta.json +14 -0
- package/templates/roles/ceo/AGENTS.md +28 -0
- package/templates/roles/ceo/HEARTBEAT.md +75 -0
- package/templates/roles/ceo/SOUL.md +33 -0
- package/templates/roles/ceo/TOOLS.md +3 -0
- package/templates/roles/ceo/role.meta.json +14 -0
- package/templates/roles/cfo/AGENTS.md +31 -0
- package/templates/roles/cfo/HEARTBEAT.md +37 -0
- package/templates/roles/cfo/SOUL.md +17 -0
- package/templates/roles/cfo/TOOLS.md +3 -0
- package/templates/roles/cfo/role.meta.json +17 -0
- package/templates/roles/cmo/AGENTS.md +31 -0
- package/templates/roles/cmo/HEARTBEAT.md +37 -0
- package/templates/roles/cmo/SOUL.md +17 -0
- package/templates/roles/cmo/TOOLS.md +3 -0
- package/templates/roles/cmo/role.meta.json +17 -0
- package/templates/roles/code-reviewer/AGENTS.md +42 -0
- package/templates/roles/code-reviewer/HEARTBEAT.md +33 -0
- package/templates/roles/code-reviewer/SOUL.md +18 -0
- package/templates/roles/code-reviewer/TOOLS.md +3 -0
- package/templates/roles/code-reviewer/role.meta.json +12 -0
- package/templates/roles/cto/AGENTS.md +30 -0
- package/templates/roles/cto/HEARTBEAT.md +45 -0
- package/templates/roles/cto/SOUL.md +25 -0
- package/templates/roles/cto/TOOLS.md +3 -0
- package/templates/roles/cto/role.meta.json +18 -0
- package/templates/roles/customer-success/AGENTS.md +42 -0
- package/templates/roles/customer-success/HEARTBEAT.md +33 -0
- package/templates/roles/customer-success/SOUL.md +17 -0
- package/templates/roles/customer-success/TOOLS.md +3 -0
- package/templates/roles/customer-success/role.meta.json +17 -0
- package/templates/roles/devops/AGENTS.md +31 -0
- package/templates/roles/devops/HEARTBEAT.md +42 -0
- package/templates/roles/devops/SOUL.md +17 -0
- package/templates/roles/devops/TOOLS.md +3 -0
- package/templates/roles/devops/role.meta.json +17 -0
- package/templates/roles/engineer/AGENTS.md +29 -0
- package/templates/roles/engineer/HEARTBEAT.md +39 -0
- package/templates/roles/engineer/SOUL.md +20 -0
- package/templates/roles/engineer/TOOLS.md +3 -0
- package/templates/roles/engineer/role.meta.json +13 -0
- package/templates/roles/game-artist/AGENTS.md +29 -0
- package/templates/roles/game-artist/HEARTBEAT.md +37 -0
- package/templates/roles/game-artist/SOUL.md +24 -0
- package/templates/roles/game-artist/TOOLS.md +3 -0
- package/templates/roles/game-artist/role.meta.json +14 -0
- package/templates/roles/game-designer/AGENTS.md +29 -0
- package/templates/roles/game-designer/HEARTBEAT.md +37 -0
- package/templates/roles/game-designer/SOUL.md +17 -0
- package/templates/roles/game-designer/TOOLS.md +3 -0
- package/templates/roles/game-designer/role.meta.json +14 -0
- package/templates/roles/level-designer/AGENTS.md +29 -0
- package/templates/roles/level-designer/HEARTBEAT.md +37 -0
- package/templates/roles/level-designer/SOUL.md +17 -0
- package/templates/roles/level-designer/TOOLS.md +3 -0
- package/templates/roles/level-designer/role.meta.json +13 -0
- package/templates/roles/product-owner/AGENTS.md +29 -0
- package/templates/roles/product-owner/HEARTBEAT.md +35 -0
- package/templates/roles/product-owner/SOUL.md +17 -0
- package/templates/roles/product-owner/TOOLS.md +3 -0
- package/templates/roles/product-owner/role.meta.json +14 -0
- package/templates/roles/qa/AGENTS.md +31 -0
- package/templates/roles/qa/HEARTBEAT.md +37 -0
- package/templates/roles/qa/SOUL.md +17 -0
- package/templates/roles/qa/TOOLS.md +3 -0
- package/templates/roles/qa/role.meta.json +17 -0
- package/templates/roles/security-engineer/AGENTS.md +42 -0
- package/templates/roles/security-engineer/HEARTBEAT.md +33 -0
- package/templates/roles/security-engineer/SOUL.md +17 -0
- package/templates/roles/security-engineer/TOOLS.md +3 -0
- package/templates/roles/security-engineer/role.meta.json +17 -0
- package/templates/roles/technical-writer/AGENTS.md +41 -0
- package/templates/roles/technical-writer/HEARTBEAT.md +32 -0
- package/templates/roles/technical-writer/SOUL.md +17 -0
- package/templates/roles/technical-writer/TOOLS.md +3 -0
- package/templates/roles/technical-writer/role.meta.json +16 -0
- package/templates/roles/ui-designer/AGENTS.md +29 -0
- package/templates/roles/ui-designer/HEARTBEAT.md +37 -0
- package/templates/roles/ui-designer/SOUL.md +17 -0
- package/templates/roles/ui-designer/TOOLS.md +3 -0
- package/templates/roles/ui-designer/role.meta.json +17 -0
- package/templates/roles/ux-researcher/AGENTS.md +29 -0
- package/templates/roles/ux-researcher/HEARTBEAT.md +37 -0
- package/templates/roles/ux-researcher/SOUL.md +17 -0
- package/templates/roles/ux-researcher/TOOLS.md +3 -0
- 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`.
|
package/templates/modules/accessibility/agents/engineer/skills/accessibility-audit.fallback.md
ADDED
|
@@ -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.
|
package/templates/modules/accessibility/agents/ui-designer/skills/accessibility-audit.fallback.md
ADDED
|
@@ -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.
|