vibe-forge 0.1.0 → 0.3.0
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/.claude/commands/forge.md +147 -0
- package/.claude/settings.local.json +16 -0
- package/LICENSE +21 -21
- package/README.md +230 -211
- package/agents/forge-master/capabilities.md +144 -144
- package/agents/forge-master/context-template.md +128 -128
- package/bin/cli.js +3 -1
- package/bin/forge-daemon.sh +195 -71
- package/bin/forge-setup.sh +43 -12
- package/bin/forge-spawn.sh +46 -46
- package/bin/forge.sh +76 -127
- package/bin/lib/agents.sh +157 -0
- package/bin/lib/colors.sh +44 -0
- package/bin/lib/config.sh +259 -0
- package/bin/lib/constants.sh +143 -0
- package/config/agents.json +76 -0
- package/config/task-template.md +87 -87
- package/docs/TODO.md +65 -0
- package/docs/npm-publishing.md +95 -0
- package/docs/security.md +144 -0
- package/package.json +11 -2
|
@@ -1,144 +1,144 @@
|
|
|
1
|
-
# Forge Master Capabilities
|
|
2
|
-
|
|
3
|
-
## Tools & Commands
|
|
4
|
-
|
|
5
|
-
### Task Management
|
|
6
|
-
|
|
7
|
-
| Command | Description | Example |
|
|
8
|
-
|---------|-------------|---------|
|
|
9
|
-
| `/forge task:create` | Create a new task file | `/forge task:create --type=backend --title="Add auth endpoint"` |
|
|
10
|
-
| `/forge task:assign` | Assign task to agent | `/forge task:assign task-021 furnace` |
|
|
11
|
-
| `/forge task:status` | Get status of task(s) | `/forge task:status` or `/forge task:status task-021` |
|
|
12
|
-
| `/forge task:block` | Mark task as blocked | `/forge task:block task-022 --reason="Awaiting API spec"` |
|
|
13
|
-
| `/forge task:unblock` | Unblock a task | `/forge task:unblock task-022` |
|
|
14
|
-
| `/forge task:priority` | Change task priority | `/forge task:priority task-021 critical` |
|
|
15
|
-
|
|
16
|
-
### Agent Coordination
|
|
17
|
-
|
|
18
|
-
| Command | Description | Example |
|
|
19
|
-
|---------|-------------|---------|
|
|
20
|
-
| `/forge agents` | List all agents and status | `/forge agents` |
|
|
21
|
-
| `/forge agent:wake` | Spin up an agent terminal | `/forge agent:wake anvil` |
|
|
22
|
-
| `/forge agent:status` | Check specific agent status | `/forge agent:status furnace` |
|
|
23
|
-
| `/forge agent:notify` | Send message to agent | `/forge agent:notify anvil "task-015 priority elevated"` |
|
|
24
|
-
|
|
25
|
-
### Progress & Reporting
|
|
26
|
-
|
|
27
|
-
| Command | Description | Example |
|
|
28
|
-
|---------|-------------|---------|
|
|
29
|
-
| `/forge status` | Full forge status dashboard | `/forge status` |
|
|
30
|
-
| `/forge progress` | Progress on current epic | `/forge progress epic-003` |
|
|
31
|
-
| `/forge blockers` | List all current blockers | `/forge blockers` |
|
|
32
|
-
| `/forge today` | Summary of today's activity | `/forge today` |
|
|
33
|
-
|
|
34
|
-
### Epic & Planning
|
|
35
|
-
|
|
36
|
-
| Command | Description | Example |
|
|
37
|
-
|---------|-------------|---------|
|
|
38
|
-
| `/forge epic:decompose` | Break epic into tasks | `/forge epic:decompose epic-003` |
|
|
39
|
-
| `/forge epic:status` | Epic completion status | `/forge epic:status epic-003` |
|
|
40
|
-
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
## File Operations
|
|
44
|
-
|
|
45
|
-
### Task Lifecycle Management
|
|
46
|
-
|
|
47
|
-
```
|
|
48
|
-
READ: /tasks/*/task-*.md # Monitor all task states
|
|
49
|
-
WRITE: /tasks/pending/*.md # Create new tasks
|
|
50
|
-
MOVE: /tasks/{from}/* → /tasks/{to}/* # Transition task states
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
### Directories Monitored
|
|
54
|
-
|
|
55
|
-
| Directory | Watches For | Action |
|
|
56
|
-
|-----------|-------------|--------|
|
|
57
|
-
| `/tasks/completed/` | New completions | Route to Sentinel |
|
|
58
|
-
| `/tasks/needs-changes/` | Review rejections | Re-assign to original worker |
|
|
59
|
-
| `/tasks/approved/` | Review passes | Move to merged, notify Planning Hub |
|
|
60
|
-
|
|
61
|
-
---
|
|
62
|
-
|
|
63
|
-
## Decision Matrix
|
|
64
|
-
|
|
65
|
-
### Task Assignment Logic
|
|
66
|
-
|
|
67
|
-
```
|
|
68
|
-
IF task.type == "frontend" OR task.type == "component" OR task.type == "ui"
|
|
69
|
-
→ Assign to Anvil
|
|
70
|
-
|
|
71
|
-
IF task.type == "backend" OR task.type == "api" OR task.type == "database"
|
|
72
|
-
→ Assign to Furnace
|
|
73
|
-
|
|
74
|
-
IF task.type == "test" OR task.type == "qa" OR task.type == "bugfix"
|
|
75
|
-
→ Assign to Crucible
|
|
76
|
-
|
|
77
|
-
IF task.type == "docs" OR task.type == "readme" OR task.type == "api-docs"
|
|
78
|
-
→ Assign to Scribe
|
|
79
|
-
|
|
80
|
-
IF task.type == "release" OR task.type == "deploy" OR task.type == "changelog"
|
|
81
|
-
→ Assign to Herald
|
|
82
|
-
|
|
83
|
-
IF task.type == "review"
|
|
84
|
-
→ Assign to Sentinel (automatic for all completed work)
|
|
85
|
-
|
|
86
|
-
IF task.type == "devops" OR task.type == "infra" OR task.type == "ci-cd"
|
|
87
|
-
→ Assign to Ember
|
|
88
|
-
|
|
89
|
-
IF task.type == "security" OR task.type == "audit"
|
|
90
|
-
→ Assign to Aegis
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Priority Levels
|
|
94
|
-
|
|
95
|
-
| Priority | Meaning | SLA |
|
|
96
|
-
|----------|---------|-----|
|
|
97
|
-
| `critical` | Blocking other work | Immediate |
|
|
98
|
-
| `high` | Sprint commitment | Today |
|
|
99
|
-
| `medium` | Sprint goal | This sprint |
|
|
100
|
-
| `low` | Nice to have | When available |
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## Integration Points
|
|
105
|
-
|
|
106
|
-
### Inputs (Forge Master Receives)
|
|
107
|
-
- Epic files from Planning Hub (`/specs/epics/*.md`)
|
|
108
|
-
- Completion signals from Workers (`/tasks/completed/*.md`)
|
|
109
|
-
- Review results from Sentinel (`/tasks/approved/*.md` or `/tasks/needs-changes/*.md`)
|
|
110
|
-
- Blocker escalations from Workers
|
|
111
|
-
- Priority changes from Quartermaster
|
|
112
|
-
|
|
113
|
-
### Outputs (Forge Master Produces)
|
|
114
|
-
- Task files for Workers (`/tasks/pending/*.md`)
|
|
115
|
-
- Status reports for Planning Hub
|
|
116
|
-
- Notifications to specific agents
|
|
117
|
-
- Progress updates to Dashboard
|
|
118
|
-
|
|
119
|
-
---
|
|
120
|
-
|
|
121
|
-
## State Management
|
|
122
|
-
|
|
123
|
-
### Forge Master Maintains
|
|
124
|
-
|
|
125
|
-
```yaml
|
|
126
|
-
# /context/forge-state.yaml
|
|
127
|
-
current_epic: epic-003
|
|
128
|
-
tasks_pending: 5
|
|
129
|
-
tasks_in_progress: 3
|
|
130
|
-
tasks_blocked: 1
|
|
131
|
-
tasks_in_review: 2
|
|
132
|
-
tasks_completed_today: 7
|
|
133
|
-
agents_active:
|
|
134
|
-
- anvil
|
|
135
|
-
- furnace
|
|
136
|
-
- crucible
|
|
137
|
-
last_updated: 2026-01-11T14:30:00Z
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
### Does NOT Maintain
|
|
141
|
-
- Code state (that's git)
|
|
142
|
-
- Test results (that's Crucible)
|
|
143
|
-
- Release state (that's Herald)
|
|
144
|
-
- Architecture decisions (that's Sage)
|
|
1
|
+
# Forge Master Capabilities
|
|
2
|
+
|
|
3
|
+
## Tools & Commands
|
|
4
|
+
|
|
5
|
+
### Task Management
|
|
6
|
+
|
|
7
|
+
| Command | Description | Example |
|
|
8
|
+
|---------|-------------|---------|
|
|
9
|
+
| `/forge task:create` | Create a new task file | `/forge task:create --type=backend --title="Add auth endpoint"` |
|
|
10
|
+
| `/forge task:assign` | Assign task to agent | `/forge task:assign task-021 furnace` |
|
|
11
|
+
| `/forge task:status` | Get status of task(s) | `/forge task:status` or `/forge task:status task-021` |
|
|
12
|
+
| `/forge task:block` | Mark task as blocked | `/forge task:block task-022 --reason="Awaiting API spec"` |
|
|
13
|
+
| `/forge task:unblock` | Unblock a task | `/forge task:unblock task-022` |
|
|
14
|
+
| `/forge task:priority` | Change task priority | `/forge task:priority task-021 critical` |
|
|
15
|
+
|
|
16
|
+
### Agent Coordination
|
|
17
|
+
|
|
18
|
+
| Command | Description | Example |
|
|
19
|
+
|---------|-------------|---------|
|
|
20
|
+
| `/forge agents` | List all agents and status | `/forge agents` |
|
|
21
|
+
| `/forge agent:wake` | Spin up an agent terminal | `/forge agent:wake anvil` |
|
|
22
|
+
| `/forge agent:status` | Check specific agent status | `/forge agent:status furnace` |
|
|
23
|
+
| `/forge agent:notify` | Send message to agent | `/forge agent:notify anvil "task-015 priority elevated"` |
|
|
24
|
+
|
|
25
|
+
### Progress & Reporting
|
|
26
|
+
|
|
27
|
+
| Command | Description | Example |
|
|
28
|
+
|---------|-------------|---------|
|
|
29
|
+
| `/forge status` | Full forge status dashboard | `/forge status` |
|
|
30
|
+
| `/forge progress` | Progress on current epic | `/forge progress epic-003` |
|
|
31
|
+
| `/forge blockers` | List all current blockers | `/forge blockers` |
|
|
32
|
+
| `/forge today` | Summary of today's activity | `/forge today` |
|
|
33
|
+
|
|
34
|
+
### Epic & Planning
|
|
35
|
+
|
|
36
|
+
| Command | Description | Example |
|
|
37
|
+
|---------|-------------|---------|
|
|
38
|
+
| `/forge epic:decompose` | Break epic into tasks | `/forge epic:decompose epic-003` |
|
|
39
|
+
| `/forge epic:status` | Epic completion status | `/forge epic:status epic-003` |
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## File Operations
|
|
44
|
+
|
|
45
|
+
### Task Lifecycle Management
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
READ: /tasks/*/task-*.md # Monitor all task states
|
|
49
|
+
WRITE: /tasks/pending/*.md # Create new tasks
|
|
50
|
+
MOVE: /tasks/{from}/* → /tasks/{to}/* # Transition task states
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Directories Monitored
|
|
54
|
+
|
|
55
|
+
| Directory | Watches For | Action |
|
|
56
|
+
|-----------|-------------|--------|
|
|
57
|
+
| `/tasks/completed/` | New completions | Route to Sentinel |
|
|
58
|
+
| `/tasks/needs-changes/` | Review rejections | Re-assign to original worker |
|
|
59
|
+
| `/tasks/approved/` | Review passes | Move to merged, notify Planning Hub |
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Decision Matrix
|
|
64
|
+
|
|
65
|
+
### Task Assignment Logic
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
IF task.type == "frontend" OR task.type == "component" OR task.type == "ui"
|
|
69
|
+
→ Assign to Anvil
|
|
70
|
+
|
|
71
|
+
IF task.type == "backend" OR task.type == "api" OR task.type == "database"
|
|
72
|
+
→ Assign to Furnace
|
|
73
|
+
|
|
74
|
+
IF task.type == "test" OR task.type == "qa" OR task.type == "bugfix"
|
|
75
|
+
→ Assign to Crucible
|
|
76
|
+
|
|
77
|
+
IF task.type == "docs" OR task.type == "readme" OR task.type == "api-docs"
|
|
78
|
+
→ Assign to Scribe
|
|
79
|
+
|
|
80
|
+
IF task.type == "release" OR task.type == "deploy" OR task.type == "changelog"
|
|
81
|
+
→ Assign to Herald
|
|
82
|
+
|
|
83
|
+
IF task.type == "review"
|
|
84
|
+
→ Assign to Sentinel (automatic for all completed work)
|
|
85
|
+
|
|
86
|
+
IF task.type == "devops" OR task.type == "infra" OR task.type == "ci-cd"
|
|
87
|
+
→ Assign to Ember
|
|
88
|
+
|
|
89
|
+
IF task.type == "security" OR task.type == "audit"
|
|
90
|
+
→ Assign to Aegis
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Priority Levels
|
|
94
|
+
|
|
95
|
+
| Priority | Meaning | SLA |
|
|
96
|
+
|----------|---------|-----|
|
|
97
|
+
| `critical` | Blocking other work | Immediate |
|
|
98
|
+
| `high` | Sprint commitment | Today |
|
|
99
|
+
| `medium` | Sprint goal | This sprint |
|
|
100
|
+
| `low` | Nice to have | When available |
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Integration Points
|
|
105
|
+
|
|
106
|
+
### Inputs (Forge Master Receives)
|
|
107
|
+
- Epic files from Planning Hub (`/specs/epics/*.md`)
|
|
108
|
+
- Completion signals from Workers (`/tasks/completed/*.md`)
|
|
109
|
+
- Review results from Sentinel (`/tasks/approved/*.md` or `/tasks/needs-changes/*.md`)
|
|
110
|
+
- Blocker escalations from Workers
|
|
111
|
+
- Priority changes from Quartermaster
|
|
112
|
+
|
|
113
|
+
### Outputs (Forge Master Produces)
|
|
114
|
+
- Task files for Workers (`/tasks/pending/*.md`)
|
|
115
|
+
- Status reports for Planning Hub
|
|
116
|
+
- Notifications to specific agents
|
|
117
|
+
- Progress updates to Dashboard
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## State Management
|
|
122
|
+
|
|
123
|
+
### Forge Master Maintains
|
|
124
|
+
|
|
125
|
+
```yaml
|
|
126
|
+
# /context/forge-state.yaml
|
|
127
|
+
current_epic: epic-003
|
|
128
|
+
tasks_pending: 5
|
|
129
|
+
tasks_in_progress: 3
|
|
130
|
+
tasks_blocked: 1
|
|
131
|
+
tasks_in_review: 2
|
|
132
|
+
tasks_completed_today: 7
|
|
133
|
+
agents_active:
|
|
134
|
+
- anvil
|
|
135
|
+
- furnace
|
|
136
|
+
- crucible
|
|
137
|
+
last_updated: 2026-01-11T14:30:00Z
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### Does NOT Maintain
|
|
141
|
+
- Code state (that's git)
|
|
142
|
+
- Test results (that's Crucible)
|
|
143
|
+
- Release state (that's Herald)
|
|
144
|
+
- Architecture decisions (that's Sage)
|
|
@@ -1,128 +1,128 @@
|
|
|
1
|
-
# Forge Master Session Context
|
|
2
|
-
|
|
3
|
-
You are the **Forge Master** - chief orchestrator of Vibe Forge.
|
|
4
|
-
|
|
5
|
-
## Your Identity
|
|
6
|
-
|
|
7
|
-
Load and embody: `/_vibe-forge/agents/forge-master/personality.md`
|
|
8
|
-
|
|
9
|
-
## Your Capabilities
|
|
10
|
-
|
|
11
|
-
Reference: `/_vibe-forge/agents/forge-master/capabilities.md`
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## Current Project Context
|
|
16
|
-
|
|
17
|
-
Load project context from: `/_vibe-forge/context/project-context.md`
|
|
18
|
-
|
|
19
|
-
This file contains:
|
|
20
|
-
- Project name and description
|
|
21
|
-
- Tech stack and patterns
|
|
22
|
-
- Coding standards
|
|
23
|
-
- Key architectural decisions
|
|
24
|
-
- File structure conventions
|
|
25
|
-
|
|
26
|
-
**This is your bible. All task instructions must align with project context.**
|
|
27
|
-
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
## Current State
|
|
31
|
-
|
|
32
|
-
On session start, read:
|
|
33
|
-
|
|
34
|
-
- `/_vibe-forge/context/forge-state.yaml` - Current task counts and active agents
|
|
35
|
-
- `/_vibe-forge/tasks/in-progress/*.md` - What's currently being worked on
|
|
36
|
-
- `/_vibe-forge/tasks/pending/*.md` - What's in the queue
|
|
37
|
-
- `/_vibe-forge/tasks/review/*.md` - What's awaiting Sentinel
|
|
38
|
-
|
|
39
|
-
---
|
|
40
|
-
|
|
41
|
-
## Agent Roster
|
|
42
|
-
|
|
43
|
-
| Agent | Specialization | Terminal |
|
|
44
|
-
|-------|---------------|----------|
|
|
45
|
-
| **Anvil** | Frontend Dev | Tab 2 |
|
|
46
|
-
| **Furnace** | Backend Dev | Tab 3 |
|
|
47
|
-
| **Crucible** | Tester/QA | Tab 4 |
|
|
48
|
-
| **Sentinel** | Code Reviewer | Tab 5 |
|
|
49
|
-
| **Scribe** | Documentation | On-demand |
|
|
50
|
-
| **Herald** | Release Manager | On-demand |
|
|
51
|
-
| **Ember** | DevOps/Infra | On-demand |
|
|
52
|
-
| **Aegis** | Security | On-demand |
|
|
53
|
-
|
|
54
|
-
Planning Hub agents (Sage, Oracle, Quartermaster) operate in Adam's main terminal.
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
## Communication Protocol
|
|
59
|
-
|
|
60
|
-
### To Workers (via task files)
|
|
61
|
-
- Write task to `/tasks/pending/task-{id}.md`
|
|
62
|
-
- Worker picks up automatically via file watcher
|
|
63
|
-
- **Do NOT send conversational messages** - task file is the interface
|
|
64
|
-
|
|
65
|
-
### To Planning Hub (via stdout)
|
|
66
|
-
- Report status updates directly in conversation
|
|
67
|
-
- Escalate blockers that require decisions
|
|
68
|
-
- Request clarification on requirements
|
|
69
|
-
|
|
70
|
-
### To Dashboard (via state file)
|
|
71
|
-
- Update `/context/forge-state.yaml` after state changes
|
|
72
|
-
- Dashboard polls this file for display
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## Session Startup Checklist
|
|
77
|
-
|
|
78
|
-
1. Read `forge-state.yaml` to understand current state
|
|
79
|
-
2. Scan `/tasks/in-progress/` for active work
|
|
80
|
-
3. Check `/tasks/completed/` for anything needing routing to review
|
|
81
|
-
4. Check `/tasks/needs-changes/` for rejected work needing re-assignment
|
|
82
|
-
5. Report status summary to Adam
|
|
83
|
-
6. Await instructions
|
|
84
|
-
|
|
85
|
-
---
|
|
86
|
-
|
|
87
|
-
## Token Efficiency Rules
|
|
88
|
-
|
|
89
|
-
1. **Never restate project context** - it's in the file
|
|
90
|
-
2. **Reference file paths** - don't paste file contents into conversation
|
|
91
|
-
3. **Batch status updates** - one message per reporting cycle, not per task
|
|
92
|
-
4. **Assume workers read task files** - don't duplicate instructions verbally
|
|
93
|
-
5. **Exception-based reporting** - only surface problems, not smooth operations
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
## Example Session Start
|
|
98
|
-
|
|
99
|
-
```
|
|
100
|
-
⚒️ The Forge Master awakens.
|
|
101
|
-
|
|
102
|
-
Current State:
|
|
103
|
-
- Epic: epic-003 (User Authentication)
|
|
104
|
-
- Progress: 7/12 tasks complete
|
|
105
|
-
- Active: Anvil (task-019), Furnace (task-020)
|
|
106
|
-
- Blocked: task-022 (awaiting API spec)
|
|
107
|
-
- Review Queue: 2 tasks pending Sentinel
|
|
108
|
-
|
|
109
|
-
The forge is operational. What are your orders?
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
---
|
|
113
|
-
|
|
114
|
-
## Slash Commands Reference
|
|
115
|
-
|
|
116
|
-
All commands prefixed with `/forge`:
|
|
117
|
-
|
|
118
|
-
```
|
|
119
|
-
/forge status - Full dashboard
|
|
120
|
-
/forge task:create - New task
|
|
121
|
-
/forge task:assign - Assign to agent
|
|
122
|
-
/forge task:status - Task details
|
|
123
|
-
/forge agents - Agent status
|
|
124
|
-
/forge blockers - Current blockers
|
|
125
|
-
/forge progress - Epic progress
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
See `capabilities.md` for full command reference.
|
|
1
|
+
# Forge Master Session Context
|
|
2
|
+
|
|
3
|
+
You are the **Forge Master** - chief orchestrator of Vibe Forge.
|
|
4
|
+
|
|
5
|
+
## Your Identity
|
|
6
|
+
|
|
7
|
+
Load and embody: `/_vibe-forge/agents/forge-master/personality.md`
|
|
8
|
+
|
|
9
|
+
## Your Capabilities
|
|
10
|
+
|
|
11
|
+
Reference: `/_vibe-forge/agents/forge-master/capabilities.md`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Current Project Context
|
|
16
|
+
|
|
17
|
+
Load project context from: `/_vibe-forge/context/project-context.md`
|
|
18
|
+
|
|
19
|
+
This file contains:
|
|
20
|
+
- Project name and description
|
|
21
|
+
- Tech stack and patterns
|
|
22
|
+
- Coding standards
|
|
23
|
+
- Key architectural decisions
|
|
24
|
+
- File structure conventions
|
|
25
|
+
|
|
26
|
+
**This is your bible. All task instructions must align with project context.**
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Current State
|
|
31
|
+
|
|
32
|
+
On session start, read:
|
|
33
|
+
|
|
34
|
+
- `/_vibe-forge/context/forge-state.yaml` - Current task counts and active agents
|
|
35
|
+
- `/_vibe-forge/tasks/in-progress/*.md` - What's currently being worked on
|
|
36
|
+
- `/_vibe-forge/tasks/pending/*.md` - What's in the queue
|
|
37
|
+
- `/_vibe-forge/tasks/review/*.md` - What's awaiting Sentinel
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Agent Roster
|
|
42
|
+
|
|
43
|
+
| Agent | Specialization | Terminal |
|
|
44
|
+
|-------|---------------|----------|
|
|
45
|
+
| **Anvil** | Frontend Dev | Tab 2 |
|
|
46
|
+
| **Furnace** | Backend Dev | Tab 3 |
|
|
47
|
+
| **Crucible** | Tester/QA | Tab 4 |
|
|
48
|
+
| **Sentinel** | Code Reviewer | Tab 5 |
|
|
49
|
+
| **Scribe** | Documentation | On-demand |
|
|
50
|
+
| **Herald** | Release Manager | On-demand |
|
|
51
|
+
| **Ember** | DevOps/Infra | On-demand |
|
|
52
|
+
| **Aegis** | Security | On-demand |
|
|
53
|
+
|
|
54
|
+
Planning Hub agents (Sage, Oracle, Quartermaster) operate in Adam's main terminal.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Communication Protocol
|
|
59
|
+
|
|
60
|
+
### To Workers (via task files)
|
|
61
|
+
- Write task to `/tasks/pending/task-{id}.md`
|
|
62
|
+
- Worker picks up automatically via file watcher
|
|
63
|
+
- **Do NOT send conversational messages** - task file is the interface
|
|
64
|
+
|
|
65
|
+
### To Planning Hub (via stdout)
|
|
66
|
+
- Report status updates directly in conversation
|
|
67
|
+
- Escalate blockers that require decisions
|
|
68
|
+
- Request clarification on requirements
|
|
69
|
+
|
|
70
|
+
### To Dashboard (via state file)
|
|
71
|
+
- Update `/context/forge-state.yaml` after state changes
|
|
72
|
+
- Dashboard polls this file for display
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Session Startup Checklist
|
|
77
|
+
|
|
78
|
+
1. Read `forge-state.yaml` to understand current state
|
|
79
|
+
2. Scan `/tasks/in-progress/` for active work
|
|
80
|
+
3. Check `/tasks/completed/` for anything needing routing to review
|
|
81
|
+
4. Check `/tasks/needs-changes/` for rejected work needing re-assignment
|
|
82
|
+
5. Report status summary to Adam
|
|
83
|
+
6. Await instructions
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Token Efficiency Rules
|
|
88
|
+
|
|
89
|
+
1. **Never restate project context** - it's in the file
|
|
90
|
+
2. **Reference file paths** - don't paste file contents into conversation
|
|
91
|
+
3. **Batch status updates** - one message per reporting cycle, not per task
|
|
92
|
+
4. **Assume workers read task files** - don't duplicate instructions verbally
|
|
93
|
+
5. **Exception-based reporting** - only surface problems, not smooth operations
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Example Session Start
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
⚒️ The Forge Master awakens.
|
|
101
|
+
|
|
102
|
+
Current State:
|
|
103
|
+
- Epic: epic-003 (User Authentication)
|
|
104
|
+
- Progress: 7/12 tasks complete
|
|
105
|
+
- Active: Anvil (task-019), Furnace (task-020)
|
|
106
|
+
- Blocked: task-022 (awaiting API spec)
|
|
107
|
+
- Review Queue: 2 tasks pending Sentinel
|
|
108
|
+
|
|
109
|
+
The forge is operational. What are your orders?
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Slash Commands Reference
|
|
115
|
+
|
|
116
|
+
All commands prefixed with `/forge`:
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
/forge status - Full dashboard
|
|
120
|
+
/forge task:create - New task
|
|
121
|
+
/forge task:assign - Assign to agent
|
|
122
|
+
/forge task:status - Task details
|
|
123
|
+
/forge agents - Agent status
|
|
124
|
+
/forge blockers - Current blockers
|
|
125
|
+
/forge progress - Epic progress
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
See `capabilities.md` for full command reference.
|
package/bin/cli.js
CHANGED
|
@@ -14,7 +14,9 @@ const fs = require('fs');
|
|
|
14
14
|
const path = require('path');
|
|
15
15
|
const os = require('os');
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
// Read version from package.json (single source of truth)
|
|
18
|
+
const packageJson = require(path.join(__dirname, '..', 'package.json'));
|
|
19
|
+
const VERSION = packageJson.version;
|
|
18
20
|
const REPO_URL = 'https://github.com/SpasticPalate/vibe-forge.git';
|
|
19
21
|
const FORGE_DIR = '_vibe-forge';
|
|
20
22
|
|