vibe-forge 0.4.0 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/.claude/commands/clear-attention.md +63 -63
  2. package/.claude/commands/compact-context.md +52 -0
  3. package/.claude/commands/configure-vcs.md +5 -5
  4. package/.claude/commands/forge.md +50 -3
  5. package/.claude/commands/need-help.md +77 -77
  6. package/.claude/commands/update-status.md +64 -64
  7. package/.claude/commands/worker-loop.md +106 -106
  8. package/.claude/hooks/worker-loop.js +37 -4
  9. package/.claude/scripts/setup-worker-loop.sh +45 -45
  10. package/.claude/settings.json +89 -0
  11. package/LICENSE +21 -21
  12. package/README.md +211 -232
  13. package/agents/aegis/personality.md +35 -1
  14. package/agents/anvil/personality.md +39 -1
  15. package/agents/architect/personality.md +26 -0
  16. package/agents/crucible/personality.md +54 -1
  17. package/agents/crucible-x/personality.md +210 -0
  18. package/agents/ember/personality.md +29 -1
  19. package/agents/flux/personality.md +248 -0
  20. package/agents/furnace/personality.md +52 -1
  21. package/agents/herald/personality.md +3 -1
  22. package/agents/loki/personality.md +108 -0
  23. package/agents/oracle/personality.md +284 -0
  24. package/agents/pixel/personality.md +140 -0
  25. package/agents/planning-hub/personality.md +222 -0
  26. package/agents/scribe/personality.md +3 -1
  27. package/agents/slag/personality.md +268 -0
  28. package/agents/{sentinel → temper}/personality.md +85 -9
  29. package/bin/cli.js +77 -30
  30. package/bin/dashboard/api/agents.js +333 -0
  31. package/bin/dashboard/api/dispatch.js +507 -0
  32. package/bin/dashboard/api/tasks.js +416 -0
  33. package/bin/dashboard/public/assets/index-BpHfsx1r.js +2 -0
  34. package/bin/dashboard/public/assets/index-QODv4Zn9.css +1 -0
  35. package/bin/dashboard/public/index.html +14 -0
  36. package/bin/dashboard/server.js +645 -0
  37. package/bin/forge-daemon.sh +176 -550
  38. package/bin/forge-setup.sh +28 -11
  39. package/bin/forge-spawn.sh +5 -5
  40. package/bin/forge.cmd +83 -83
  41. package/bin/forge.sh +210 -31
  42. package/config/agent-manifest.yaml +237 -243
  43. package/config/agents.json +207 -132
  44. package/config/task-types.yaml +111 -106
  45. package/context/agent-overrides/README.md +41 -0
  46. package/context/architecture.md +42 -0
  47. package/context/modern-conventions.md +129 -129
  48. package/docs/agents.md +473 -409
  49. package/docs/architecture.md +194 -162
  50. package/docs/commands.md +451 -388
  51. package/docs/security.md +195 -144
  52. package/package.json +38 -11
  53. package/src/lib/check-aliases.js +50 -0
  54. package/{bin → src}/lib/colors.sh +2 -1
  55. package/src/lib/config.sh +347 -0
  56. package/{bin → src}/lib/constants.sh +48 -13
  57. package/src/lib/daemon/budgets.sh +107 -0
  58. package/src/lib/daemon/dependencies.sh +146 -0
  59. package/src/lib/daemon/display.sh +128 -0
  60. package/src/lib/daemon/notifications.sh +273 -0
  61. package/src/lib/daemon/routing.sh +93 -0
  62. package/src/lib/daemon/state.sh +163 -0
  63. package/src/lib/daemon/sync.sh +103 -0
  64. package/{bin → src}/lib/database.sh +52 -0
  65. package/src/lib/frontmatter.js +106 -0
  66. package/src/lib/heimdall-setup.js +113 -0
  67. package/src/lib/heimdall.js +265 -0
  68. package/src/lib/index.sh +25 -0
  69. package/{bin → src}/lib/json.sh +7 -1
  70. package/{bin → src}/lib/terminal.js +7 -1
  71. package/.claude/settings.local.json +0 -33
  72. package/agents/forge-master/capabilities.md +0 -144
  73. package/agents/forge-master/context-template.md +0 -128
  74. package/agents/forge-master/personality.md +0 -138
  75. package/bin/lib/config.sh +0 -313
  76. package/config/task-template.md +0 -87
  77. package/context/forge-state.yaml +0 -19
  78. package/docs/TODO.md +0 -150
  79. package/docs/getting-started.md +0 -243
  80. package/docs/npm-publishing.md +0 -95
  81. package/docs/workflows/README.md +0 -32
  82. package/docs/workflows/azure-devops.md +0 -108
  83. package/docs/workflows/bitbucket.md +0 -104
  84. package/docs/workflows/git-only.md +0 -130
  85. package/docs/workflows/gitea.md +0 -168
  86. package/docs/workflows/github.md +0 -103
  87. package/docs/workflows/gitlab.md +0 -105
  88. package/docs/workflows.md +0 -454
  89. package/tasks/completed/ARCH-001-duplicate-agent-config.md +0 -121
  90. package/tasks/completed/ARCH-002-mixed-bash-node-implementation.md +0 -88
  91. package/tasks/completed/ARCH-003-worker-loop-hook-duplication.md +0 -77
  92. package/tasks/completed/ARCH-009-test-organization.md +0 -78
  93. package/tasks/completed/ARCH-011-jq-vs-nodejs-json.md +0 -94
  94. package/tasks/completed/ARCH-012-tmp-files-in-root.md +0 -71
  95. package/tasks/completed/ARCH-013-exit-code-constants.md +0 -65
  96. package/tasks/completed/ARCH-014-sed-incompatibility.md +0 -96
  97. package/tasks/completed/ARCH-015-docs-todo-tracking.md +0 -83
  98. package/tasks/completed/CLEAN-001.md +0 -38
  99. package/tasks/completed/CLEAN-003.md +0 -47
  100. package/tasks/completed/CLEAN-004.md +0 -56
  101. package/tasks/completed/CLEAN-005.md +0 -75
  102. package/tasks/completed/CLEAN-006.md +0 -47
  103. package/tasks/completed/CLEAN-007.md +0 -34
  104. package/tasks/completed/CLEAN-008.md +0 -49
  105. package/tasks/completed/CLEAN-012.md +0 -58
  106. package/tasks/completed/CLEAN-013.md +0 -45
  107. package/tasks/completed/SEC-001-sql-injection-fix.md +0 -58
  108. package/tasks/completed/SEC-002-notification-injection-fix.md +0 -45
  109. package/tasks/completed/SEC-003-eval-injection-fix.md +0 -54
  110. package/tasks/completed/SEC-004-pid-race-condition-fix.md +0 -49
  111. package/tasks/completed/SEC-005-worker-loop-path-fix.md +0 -51
  112. package/tasks/completed/SEC-006-eval-agent-names.md +0 -55
  113. package/tasks/completed/SEC-007-spawn-escaping.md +0 -67
  114. package/tasks/pending/ARCH-004-git-bash-detection-duplication.md +0 -72
  115. package/tasks/pending/ARCH-005-missing-src-directory.md +0 -95
  116. package/tasks/pending/ARCH-006-task-template-location.md +0 -64
  117. package/tasks/pending/ARCH-007-daemon-monolith.md +0 -91
  118. package/tasks/pending/ARCH-008-forge-master-vs-hub.md +0 -81
  119. package/tasks/pending/ARCH-010-missing-index-files.md +0 -84
  120. package/tasks/pending/CLEAN-002.md +0 -29
  121. package/tasks/pending/CLEAN-009.md +0 -31
  122. package/tasks/pending/CLEAN-010.md +0 -30
  123. package/tasks/pending/CLEAN-011.md +0 -30
  124. package/tasks/pending/CLEAN-014.md +0 -32
  125. package/tasks/review/task-001.md +0 -78
  126. /package/{bin → src}/lib/agents.sh +0 -0
  127. /package/{bin → src}/lib/util.sh +0 -0
  128. /package/{bin → src}/lib/vcs.js +0 -0
  129. /package/{context → templates}/project-context-template.md +0 -0
@@ -1,132 +1,207 @@
1
- {
2
- "_comment": "SINGLE SOURCE OF TRUTH for agent configuration. Used by bash scripts via load_agents_from_json() and Node.js directly. See config/agent-manifest.yaml for rich documentation (non-normative).",
3
- "version": "1.1.0",
4
- "agents": {
5
- "hub": {
6
- "name": "Planning Hub",
7
- "icon": "⚒️",
8
- "role": "Chief Orchestrator",
9
- "aliases": ["planning", "master", "forge-master"],
10
- "type": "core",
11
- "persistent": true,
12
- "terminal_tab": 1,
13
- "personality_file": "agents/planning-hub/personality.md",
14
- "tab_color": "#FF6B35",
15
- "description": "Task distribution, progress tracking, agent coordination",
16
- "task_types": ["planning", "coordination", "orchestration"]
17
- },
18
- "sentinel": {
19
- "name": "Sentinel",
20
- "icon": "🛡️",
21
- "role": "Code Reviewer",
22
- "aliases": ["review", "reviewer", "cr"],
23
- "type": "core",
24
- "persistent": true,
25
- "terminal_tab": 5,
26
- "personality_file": "agents/sentinel/personality.md",
27
- "tab_color": "#8B5CF6",
28
- "description": "Quality gates, code review, PR approval",
29
- "task_types": ["review", "pr", "quality"]
30
- },
31
- "anvil": {
32
- "name": "Anvil",
33
- "icon": "🔨",
34
- "role": "Frontend Developer",
35
- "aliases": ["frontend", "ui", "fe"],
36
- "type": "worker",
37
- "persistent": true,
38
- "terminal_tab": 2,
39
- "personality_file": "agents/anvil/personality.md",
40
- "tab_color": "#3B82F6",
41
- "description": "UI components, React/Vue/Blazor, CSS, client-side logic",
42
- "task_types": ["frontend", "component", "ui", "styling", "blazor"]
43
- },
44
- "furnace": {
45
- "name": "Furnace",
46
- "icon": "🔥",
47
- "role": "Backend Developer",
48
- "aliases": ["backend", "api", "be"],
49
- "type": "worker",
50
- "persistent": true,
51
- "terminal_tab": 3,
52
- "personality_file": "agents/furnace/personality.md",
53
- "tab_color": "#EF4444",
54
- "description": "API endpoints, database, server logic, .NET/Node.js services",
55
- "task_types": ["backend", "api", "database", "service", "dotnet"]
56
- },
57
- "crucible": {
58
- "name": "Crucible",
59
- "icon": "🧪",
60
- "role": "Tester / QA",
61
- "aliases": ["test", "testing", "qa", "tester"],
62
- "type": "worker",
63
- "persistent": true,
64
- "terminal_tab": 4,
65
- "personality_file": "agents/crucible/personality.md",
66
- "tab_color": "#10B981",
67
- "description": "Test writing, bug hunting, quality validation, xUnit/NUnit/Jest",
68
- "task_types": ["test", "qa", "bugfix", "e2e", "xunit"]
69
- },
70
- "scribe": {
71
- "name": "Scribe",
72
- "icon": "📜",
73
- "role": "Documentation Specialist",
74
- "aliases": ["docs", "documentation", "doc"],
75
- "type": "worker",
76
- "persistent": false,
77
- "personality_file": "agents/scribe/personality.md",
78
- "tab_color": "#F59E0B",
79
- "description": "Docs, README, API documentation, inline comments",
80
- "task_types": ["docs", "readme", "api-docs", "comments"]
81
- },
82
- "herald": {
83
- "name": "Herald",
84
- "icon": "📯",
85
- "role": "Release Manager",
86
- "aliases": ["release", "deploy", "deployment"],
87
- "type": "worker",
88
- "persistent": false,
89
- "personality_file": "agents/herald/personality.md",
90
- "tab_color": "#EC4899",
91
- "description": "Versioning, changelog, deployment, release notes",
92
- "task_types": ["release", "deploy", "changelog", "version"]
93
- },
94
- "ember": {
95
- "name": "Ember",
96
- "icon": "⚙️",
97
- "role": "DevOps Engineer",
98
- "aliases": ["devops", "ops", "infra", "infrastructure"],
99
- "type": "specialist",
100
- "persistent": false,
101
- "personality_file": "agents/ember/personality.md",
102
- "tab_color": "#F97316",
103
- "description": "Infrastructure, CI/CD, Docker, Azure, .NET deployment",
104
- "task_types": ["devops", "infra", "ci-cd", "docker", "azure"]
105
- },
106
- "aegis": {
107
- "name": "Aegis",
108
- "icon": "🔒",
109
- "role": "Security Specialist",
110
- "aliases": ["security", "sec", "appsec"],
111
- "type": "specialist",
112
- "persistent": false,
113
- "personality_file": "agents/aegis/personality.md",
114
- "tab_color": "#06B6D4",
115
- "description": "Security audit, vulnerability assessment, hardening",
116
- "task_types": ["security", "audit", "vulnerability"],
117
- "requires_approval": true
118
- },
119
- "architect": {
120
- "name": "Architect",
121
- "icon": "🏛️",
122
- "role": "System Architect",
123
- "aliases": ["arch", "design", "sage"],
124
- "type": "advisor",
125
- "persistent": false,
126
- "personality_file": "agents/architect/personality.md",
127
- "tab_color": "#6366F1",
128
- "description": "System design, technical decisions, architecture review",
129
- "task_types": ["architecture", "design", "tech-debt"]
130
- }
131
- }
132
- }
1
+ {
2
+ "_comment": "SINGLE SOURCE OF TRUTH for agent configuration. Used by bash scripts via load_agents_from_json() and Node.js directly. See config/agent-manifest.yaml for rich documentation (non-normative).",
3
+ "version": "1.1.0",
4
+ "agents": {
5
+ "hub": {
6
+ "name": "Planning Hub",
7
+ "icon": "⚒️",
8
+ "role": "Chief Orchestrator",
9
+ "aliases": ["planning", "master", "forge-master"],
10
+ "type": "core",
11
+ "persistent": true,
12
+ "terminal_tab": 1,
13
+ "personality_file": "agents/planning-hub/personality.md",
14
+ "tab_color": "#FF6B35",
15
+ "description": "Task distribution, progress tracking, agent coordination",
16
+ "task_types": ["planning", "coordination", "orchestration"]
17
+ },
18
+ "temper": {
19
+ "name": "Temper",
20
+ "icon": "⚖️",
21
+ "role": "Code Reviewer",
22
+ "aliases": ["review", "reviewer", "cr"],
23
+ "type": "core",
24
+ "persistent": true,
25
+ "terminal_tab": 5,
26
+ "personality_file": "agents/temper/personality.md",
27
+ "tab_color": "#8B5CF6",
28
+ "description": "Quality gates, code review, PR approval",
29
+ "task_types": ["review", "pr", "quality"]
30
+ },
31
+ "anvil": {
32
+ "name": "Anvil",
33
+ "icon": "🔨",
34
+ "role": "Frontend Developer",
35
+ "aliases": ["frontend", "ui", "fe"],
36
+ "type": "worker",
37
+ "persistent": true,
38
+ "terminal_tab": 2,
39
+ "personality_file": "agents/anvil/personality.md",
40
+ "tab_color": "#3B82F6",
41
+ "description": "UI components, React/Vue/Blazor, CSS, client-side logic",
42
+ "task_types": ["frontend", "component", "ui", "styling", "blazor"]
43
+ },
44
+ "furnace": {
45
+ "name": "Furnace",
46
+ "icon": "🔥",
47
+ "role": "Backend Developer",
48
+ "aliases": ["backend", "api", "be"],
49
+ "type": "worker",
50
+ "persistent": true,
51
+ "terminal_tab": 3,
52
+ "personality_file": "agents/furnace/personality.md",
53
+ "tab_color": "#EF4444",
54
+ "description": "API endpoints, database, server logic, .NET/Node.js services",
55
+ "task_types": ["backend", "api", "database", "service", "dotnet"]
56
+ },
57
+ "crucible": {
58
+ "name": "Crucible",
59
+ "icon": "🧪",
60
+ "role": "Tester / QA",
61
+ "aliases": ["test", "testing", "qa", "tester"],
62
+ "type": "worker",
63
+ "persistent": true,
64
+ "terminal_tab": 4,
65
+ "personality_file": "agents/crucible/personality.md",
66
+ "tab_color": "#10B981",
67
+ "description": "Test writing, bug hunting, quality validation, xUnit/NUnit/Jest",
68
+ "task_types": ["test", "qa", "bugfix", "e2e", "xunit"]
69
+ },
70
+ "scribe": {
71
+ "name": "Scribe",
72
+ "icon": "📜",
73
+ "role": "Documentation Specialist",
74
+ "aliases": ["docs", "documentation", "doc"],
75
+ "type": "worker",
76
+ "persistent": false,
77
+ "personality_file": "agents/scribe/personality.md",
78
+ "tab_color": "#F59E0B",
79
+ "description": "Docs, README, API documentation, inline comments",
80
+ "task_types": ["docs", "readme", "api-docs", "comments"]
81
+ },
82
+ "herald": {
83
+ "name": "Herald",
84
+ "icon": "📯",
85
+ "role": "Release Manager",
86
+ "aliases": ["release", "deploy", "deployment"],
87
+ "type": "worker",
88
+ "persistent": false,
89
+ "personality_file": "agents/herald/personality.md",
90
+ "tab_color": "#EC4899",
91
+ "description": "Versioning, changelog, deployment, release notes",
92
+ "task_types": ["release", "deploy", "changelog", "version"]
93
+ },
94
+ "ember": {
95
+ "name": "Ember",
96
+ "icon": "⚙️",
97
+ "role": "DevOps Engineer",
98
+ "aliases": ["devops", "ops", "infra", "infrastructure"],
99
+ "type": "specialist",
100
+ "persistent": false,
101
+ "personality_file": "agents/ember/personality.md",
102
+ "tab_color": "#F97316",
103
+ "description": "Infrastructure, CI/CD, Docker, Azure, .NET deployment",
104
+ "task_types": ["devops", "infra", "ci-cd", "docker", "azure"]
105
+ },
106
+ "aegis": {
107
+ "name": "Aegis",
108
+ "icon": "🔒",
109
+ "role": "Security Specialist",
110
+ "aliases": ["security", "sec", "appsec"],
111
+ "type": "specialist",
112
+ "persistent": false,
113
+ "personality_file": "agents/aegis/personality.md",
114
+ "tab_color": "#06B6D4",
115
+ "description": "Security audit, vulnerability assessment, hardening",
116
+ "task_types": ["security", "audit", "vulnerability"],
117
+ "requires_approval": true
118
+ },
119
+ "slag": {
120
+ "name": "Slag",
121
+ "icon": "💀",
122
+ "role": "Red Team Lead",
123
+ "aliases": ["redteam", "red-team", "pentest", "offensive"],
124
+ "type": "specialist",
125
+ "persistent": false,
126
+ "personality_file": "agents/slag/personality.md",
127
+ "tab_color": "#DC2626",
128
+ "description": "Offensive security, OWASP testing, engagement lead, attack simulation",
129
+ "task_types": ["redteam", "pentest", "offensive-security"],
130
+ "requires_approval": true
131
+ },
132
+ "flux": {
133
+ "name": "Flux",
134
+ "icon": "⚡",
135
+ "role": "Red Team Operator",
136
+ "aliases": ["infra-sec", "supply-chain", "chaos"],
137
+ "type": "specialist",
138
+ "persistent": false,
139
+ "personality_file": "agents/flux/personality.md",
140
+ "tab_color": "#B91C1C",
141
+ "description": "Infrastructure security, dependency CVEs, CI/CD attacks, chaos testing",
142
+ "task_types": ["redteam", "infra-security", "supply-chain", "chaos"],
143
+ "requires_approval": true
144
+ },
145
+ "architect": {
146
+ "name": "Architect",
147
+ "icon": "🏛️",
148
+ "role": "System Architect",
149
+ "aliases": ["arch", "sage"],
150
+ "type": "advisor",
151
+ "persistent": false,
152
+ "personality_file": "agents/architect/personality.md",
153
+ "tab_color": "#6366F1",
154
+ "description": "System design, technical decisions, architecture review",
155
+ "task_types": ["architecture", "design", "tech-debt"]
156
+ },
157
+ "pixel": {
158
+ "name": "Pixel",
159
+ "icon": "🎨",
160
+ "role": "UX Designer",
161
+ "aliases": ["ux", "ui-design", "user-experience"],
162
+ "type": "specialist",
163
+ "persistent": false,
164
+ "personality_file": "agents/pixel/personality.md",
165
+ "tab_color": "#D946EF",
166
+ "description": "User experience, interaction design, wireframes, accessibility",
167
+ "task_types": ["ux", "wireframe", "design", "accessibility", "user-research"]
168
+ },
169
+ "oracle": {
170
+ "name": "Oracle",
171
+ "icon": "🔮",
172
+ "role": "Product Owner / Requirements Analyst",
173
+ "aliases": ["product", "po", "requirements", "req", "analyst"],
174
+ "type": "advisor",
175
+ "persistent": false,
176
+ "personality_file": "agents/oracle/personality.md",
177
+ "tab_color": "#FBBF24",
178
+ "description": "Product requirements, epics, user stories, acceptance criteria, research",
179
+ "task_types": ["product", "requirements", "epics", "stories", "research", "planning"]
180
+ },
181
+ "loki": {
182
+ "name": "Loki",
183
+ "icon": "🎭",
184
+ "role": "Lateral Thinker, Assumption Challenger",
185
+ "aliases": ["trickster", "contrarian", "challenge", "brainstorm"],
186
+ "type": "advisor",
187
+ "persistent": false,
188
+ "personality_file": "agents/loki/personality.md",
189
+ "tab_color": "#7C3AED",
190
+ "description": "Challenges assumptions, lateral thinking, brainstorm provocations",
191
+ "task_types": ["brainstorm", "design-review", "planning", "postmortem"]
192
+ },
193
+ "crucible-x": {
194
+ "name": "Crucible-X",
195
+ "icon": "🔥🧪",
196
+ "role": "Adversarial Reviewer",
197
+ "aliases": ["adversarial", "break-it", "breaker", "cx"],
198
+ "type": "specialist",
199
+ "persistent": false,
200
+ "personality_file": "agents/crucible-x/personality.md",
201
+ "tab_color": "#DC2626",
202
+ "description": "Adversarial testing, edge case discovery, failing test generation",
203
+ "task_types": ["adversarial-review", "security-test", "edge-case"],
204
+ "requires_approval": false
205
+ }
206
+ }
207
+ }
@@ -1,106 +1,111 @@
1
- # Vibe Forge Task Types
2
- # Used by Forge Master for routing decisions
3
-
4
- task_types:
5
- frontend:
6
- agent: anvil
7
- description: "UI components, React/Vue/Svelte, CSS, client-side logic"
8
- file_patterns:
9
- - "src/components/**"
10
- - "src/pages/**"
11
- - "src/styles/**"
12
- - "*.css"
13
- - "*.scss"
14
-
15
- backend:
16
- agent: furnace
17
- description: "API endpoints, server logic, database operations"
18
- file_patterns:
19
- - "src/api/**"
20
- - "src/services/**"
21
- - "src/models/**"
22
- - "src/middleware/**"
23
- - "prisma/**"
24
-
25
- test:
26
- agent: crucible
27
- description: "Unit tests, integration tests, E2E tests, bug fixes"
28
- file_patterns:
29
- - "**/*.test.ts"
30
- - "**/*.spec.ts"
31
- - "tests/**"
32
- - "e2e/**"
33
-
34
- docs:
35
- agent: scribe
36
- description: "Documentation, README, API docs, inline comments"
37
- file_patterns:
38
- - "docs/**"
39
- - "*.md"
40
- - "openapi.yaml"
41
-
42
- review:
43
- agent: sentinel
44
- description: "Code review, quality checks, PR review"
45
- auto_assign: true # All completed tasks auto-route here
46
-
47
- release:
48
- agent: herald
49
- description: "Version bumps, changelog, deployment, release notes"
50
- file_patterns:
51
- - "CHANGELOG.md"
52
- - "package.json (version)"
53
- - ".github/workflows/**"
54
-
55
- devops:
56
- agent: ember
57
- description: "Infrastructure, CI/CD, Docker, server management"
58
- file_patterns:
59
- - "Dockerfile"
60
- - "docker-compose.yaml"
61
- - ".github/workflows/**"
62
- - "terraform/**"
63
- - "k8s/**"
64
-
65
- security:
66
- agent: aegis
67
- description: "Security audit, vulnerability fixes, auth hardening"
68
- requires_approval: true # Needs Planning Hub sign-off
69
-
70
- priorities:
71
- critical:
72
- sla_hours: 0
73
- description: "Blocking other work, production issue"
74
-
75
- high:
76
- sla_hours: 8
77
- description: "Sprint commitment, needed today"
78
-
79
- medium:
80
- sla_hours: 40
81
- description: "Sprint goal, this sprint"
82
-
83
- low:
84
- sla_hours: null
85
- description: "Nice to have, when available"
86
-
87
- complexity:
88
- trivial:
89
- estimated_minutes: 15
90
- description: "Config change, typo fix"
91
-
92
- low:
93
- estimated_minutes: 30
94
- description: "Simple function, minor feature"
95
-
96
- medium:
97
- estimated_minutes: 60
98
- description: "New component, API endpoint"
99
-
100
- high:
101
- estimated_minutes: 180
102
- description: "Complex feature, refactoring"
103
-
104
- unknown:
105
- estimated_minutes: null
106
- description: "Needs investigation"
1
+ # Vibe Forge Task Types
2
+ # Used by Planning Hub for routing decisions
3
+
4
+ task_types:
5
+ frontend:
6
+ agent: anvil
7
+ description: "UI components, React/Vue/Svelte, CSS, client-side logic"
8
+ file_patterns:
9
+ - "src/components/**"
10
+ - "src/pages/**"
11
+ - "src/styles/**"
12
+ - "*.css"
13
+ - "*.scss"
14
+
15
+ backend:
16
+ agent: furnace
17
+ description: "API endpoints, server logic, database operations"
18
+ file_patterns:
19
+ - "src/api/**"
20
+ - "src/services/**"
21
+ - "src/models/**"
22
+ - "src/middleware/**"
23
+ - "prisma/**"
24
+
25
+ test:
26
+ agent: crucible
27
+ description: "Unit tests, integration tests, E2E tests, bug fixes"
28
+ file_patterns:
29
+ - "**/*.test.ts"
30
+ - "**/*.spec.ts"
31
+ - "tests/**"
32
+ - "e2e/**"
33
+
34
+ docs:
35
+ agent: scribe
36
+ description: "Documentation, README, API docs, inline comments"
37
+ file_patterns:
38
+ - "docs/**"
39
+ - "*.md"
40
+ - "openapi.yaml"
41
+
42
+ review:
43
+ agent: sentinel
44
+ description: "Code review, quality checks, PR review"
45
+ auto_assign: true # All completed tasks auto-route here
46
+
47
+ release:
48
+ agent: herald
49
+ description: "Version bumps, changelog, deployment, release notes"
50
+ file_patterns:
51
+ - "CHANGELOG.md"
52
+ - "package.json (version)"
53
+ - ".github/workflows/**"
54
+
55
+ devops:
56
+ agent: ember
57
+ description: "Infrastructure, CI/CD, Docker, server management"
58
+ file_patterns:
59
+ - "Dockerfile"
60
+ - "docker-compose.yaml"
61
+ - ".github/workflows/**"
62
+ - "terraform/**"
63
+ - "k8s/**"
64
+
65
+ security:
66
+ agent: aegis
67
+ description: "Security audit, vulnerability fixes, auth hardening"
68
+ requires_approval: true # Needs Planning Hub sign-off
69
+
70
+ redteam:
71
+ agent: slag
72
+ description: "Offensive security testing, penetration testing, red team engagements"
73
+ requires_approval: true # All red team actions need sign-off
74
+
75
+ priorities:
76
+ critical:
77
+ sla_hours: 0
78
+ description: "Blocking other work, production issue"
79
+
80
+ high:
81
+ sla_hours: 8
82
+ description: "Sprint commitment, needed today"
83
+
84
+ medium:
85
+ sla_hours: 40
86
+ description: "Sprint goal, this sprint"
87
+
88
+ low:
89
+ sla_hours: null
90
+ description: "Nice to have, when available"
91
+
92
+ complexity:
93
+ trivial:
94
+ estimated_minutes: 15
95
+ description: "Config change, typo fix"
96
+
97
+ low:
98
+ estimated_minutes: 30
99
+ description: "Simple function, minor feature"
100
+
101
+ medium:
102
+ estimated_minutes: 60
103
+ description: "New component, API endpoint"
104
+
105
+ high:
106
+ estimated_minutes: 180
107
+ description: "Complex feature, refactoring"
108
+
109
+ unknown:
110
+ estimated_minutes: null
111
+ description: "Needs investigation"
@@ -0,0 +1,41 @@
1
+ # Agent Overrides
2
+
3
+ Place per-agent override files here to customize agent behavior for this project.
4
+
5
+ ## How It Works
6
+
7
+ When Planning Hub spawns a worker, it appends the contents of
8
+ `context/agent-overrides/<agent-name>.md` to the agent's system prompt.
9
+ This lets you add project-specific rules without modifying the global
10
+ personality files.
11
+
12
+ ## File Naming
13
+
14
+ Use the canonical agent name (matching `config/agents.json`):
15
+
16
+ ```
17
+ context/agent-overrides/
18
+ anvil.md # Frontend-specific project rules
19
+ furnace.md # Backend-specific project rules
20
+ crucible.md # Testing conventions for this project
21
+ ...
22
+ ```
23
+
24
+ ## What to Put Here
25
+
26
+ - Tech stack constraints ("Use React Query, not SWR")
27
+ - Naming conventions specific to this project
28
+ - Files or directories the agent should never touch
29
+ - Patterns the agent should follow or avoid
30
+ - Project-specific testing requirements
31
+
32
+ ## Example
33
+
34
+ ```markdown
35
+ # Anvil Overrides
36
+
37
+ - Use Tailwind CSS utility classes, no custom CSS files
38
+ - All components must be in `src/components/` with PascalCase naming
39
+ - Use `shadcn/ui` for base components, don't reinvent
40
+ - Never import from `@/lib/legacy/` (deprecated)
41
+ ```
@@ -0,0 +1,42 @@
1
+ # Project Architecture
2
+
3
+ This file contains project-specific architectural decisions and guardrails.
4
+ Agents read this during planning and task execution to stay aligned.
5
+
6
+ For Vibe Forge's own architecture, see [docs/architecture.md](../docs/architecture.md).
7
+
8
+ ---
9
+
10
+ ## Key Decisions
11
+
12
+ <!-- Add project-specific architectural decisions here -->
13
+ <!-- Example:
14
+ - **Auth:** JWT with httpOnly cookies, refresh token rotation
15
+ - **Database:** PostgreSQL via Prisma ORM, no raw SQL outside migrations
16
+ - **API:** REST for CRUD, WebSocket for real-time updates
17
+ -->
18
+
19
+ ## Patterns
20
+
21
+ <!-- Document patterns agents should follow -->
22
+ <!-- Example:
23
+ - Repository pattern for data access (no direct DB queries in handlers)
24
+ - Error boundaries at route level, not in services
25
+ - All new endpoints require OpenAPI spec before implementation
26
+ -->
27
+
28
+ ## Guardrails
29
+
30
+ <!-- Things agents must NOT do -->
31
+ <!-- Example:
32
+ - Never modify schema files without running `prisma migrate dev`
33
+ - No new dependencies without architect approval
34
+ - No `any` types in TypeScript
35
+ -->
36
+
37
+ ## ADR Index
38
+
39
+ <!-- Link to Architecture Decision Records as they're created -->
40
+ <!-- Example:
41
+ - [ADR-001](../docs/adr/ADR-001-daemon-module-extraction.md) - Daemon module extraction
42
+ -->