@bradygaster/squad-cli 0.9.3-insider.1 → 0.9.4
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/README.md +33 -0
- package/dist/cli/commands/cast.d.ts.map +1 -1
- package/dist/cli/commands/cast.js +9 -2
- package/dist/cli/commands/cast.js.map +1 -1
- package/dist/cli/commands/externalize.d.ts +27 -0
- package/dist/cli/commands/externalize.d.ts.map +1 -0
- package/dist/cli/commands/externalize.js +209 -0
- package/dist/cli/commands/externalize.js.map +1 -0
- package/dist/cli/commands/loop.d.ts +6 -1
- package/dist/cli/commands/loop.d.ts.map +1 -1
- package/dist/cli/commands/loop.js +13 -13
- package/dist/cli/commands/loop.js.map +1 -1
- package/dist/cli/commands/migrate.js +2 -2
- package/dist/cli/commands/migrate.js.map +1 -1
- package/dist/cli/commands/plugin.d.ts.map +1 -1
- package/dist/cli/commands/plugin.js +2 -1
- package/dist/cli/commands/plugin.js.map +1 -1
- package/dist/cli/commands/rc.js +2 -2
- package/dist/cli/commands/rc.js.map +1 -1
- package/dist/cli/commands/skill.d.ts +31 -0
- package/dist/cli/commands/skill.d.ts.map +1 -0
- package/dist/cli/commands/skill.js +497 -0
- package/dist/cli/commands/skill.js.map +1 -0
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +31 -5
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/watch/agent-spawn.d.ts +62 -0
- package/dist/cli/commands/watch/agent-spawn.d.ts.map +1 -0
- package/dist/cli/commands/watch/agent-spawn.js +127 -0
- package/dist/cli/commands/watch/agent-spawn.js.map +1 -0
- package/dist/cli/commands/watch/capabilities/decision-hygiene.js +3 -3
- package/dist/cli/commands/watch/capabilities/decision-hygiene.js.map +1 -1
- package/dist/cli/commands/watch/capabilities/execute.d.ts.map +1 -1
- package/dist/cli/commands/watch/capabilities/execute.js +15 -5
- package/dist/cli/commands/watch/capabilities/execute.js.map +1 -1
- package/dist/cli/commands/watch/capabilities/monitor-email.js +3 -3
- package/dist/cli/commands/watch/capabilities/monitor-email.js.map +1 -1
- package/dist/cli/commands/watch/capabilities/monitor-teams.js +3 -3
- package/dist/cli/commands/watch/capabilities/monitor-teams.js.map +1 -1
- package/dist/cli/commands/watch/capabilities/retro.js +3 -3
- package/dist/cli/commands/watch/capabilities/retro.js.map +1 -1
- package/dist/cli/commands/watch/capabilities/wave-dispatch.js +3 -3
- package/dist/cli/commands/watch/capabilities/wave-dispatch.js.map +1 -1
- package/dist/cli/commands/watch/config.d.ts +10 -8
- package/dist/cli/commands/watch/config.d.ts.map +1 -1
- package/dist/cli/commands/watch/config.js +27 -5
- package/dist/cli/commands/watch/config.js.map +1 -1
- package/dist/cli/commands/watch/external-loader.d.ts +14 -0
- package/dist/cli/commands/watch/external-loader.d.ts.map +1 -0
- package/dist/cli/commands/watch/external-loader.js +85 -0
- package/dist/cli/commands/watch/external-loader.js.map +1 -0
- package/dist/cli/commands/watch/health.js +10 -9
- package/dist/cli/commands/watch/health.js.map +1 -1
- package/dist/cli/commands/watch/index.d.ts +10 -0
- package/dist/cli/commands/watch/index.d.ts.map +1 -1
- package/dist/cli/commands/watch/index.js +53 -7
- package/dist/cli/commands/watch/index.js.map +1 -1
- package/dist/cli/commands/watch/pid-tracker.d.ts +35 -0
- package/dist/cli/commands/watch/pid-tracker.d.ts.map +1 -0
- package/dist/cli/commands/watch/pid-tracker.js +127 -0
- package/dist/cli/commands/watch/pid-tracker.js.map +1 -0
- package/dist/cli/commands/watch/types.d.ts +5 -0
- package/dist/cli/commands/watch/types.d.ts.map +1 -1
- package/dist/cli/core/email-scrub.js +2 -2
- package/dist/cli/core/email-scrub.js.map +1 -1
- package/dist/cli/core/gh-cli.d.ts +2 -1
- package/dist/cli/core/gh-cli.d.ts.map +1 -1
- package/dist/cli/core/gh-cli.js +3 -2
- package/dist/cli/core/gh-cli.js.map +1 -1
- package/dist/cli/core/init.d.ts.map +1 -1
- package/dist/cli/core/init.js +26 -31
- package/dist/cli/core/init.js.map +1 -1
- package/dist/cli/core/migrations.js +1 -1
- package/dist/cli/core/migrations.js.map +1 -1
- package/dist/cli/core/nap.js +2 -2
- package/dist/cli/core/nap.js.map +1 -1
- package/dist/cli/core/project-type.js +1 -1
- package/dist/cli/core/project-type.js.map +1 -1
- package/dist/cli/core/templates.d.ts.map +1 -1
- package/dist/cli/core/templates.js +48 -0
- package/dist/cli/core/templates.js.map +1 -1
- package/dist/cli/core/upgrade.d.ts +4 -2
- package/dist/cli/core/upgrade.d.ts.map +1 -1
- package/dist/cli/core/upgrade.js +46 -21
- package/dist/cli/core/upgrade.js.map +1 -1
- package/dist/cli/shell/index.d.ts.map +1 -1
- package/dist/cli/shell/index.js +22 -0
- package/dist/cli/shell/index.js.map +1 -1
- package/dist/cli/shell/session-store.js +2 -2
- package/dist/cli/shell/session-store.js.map +1 -1
- package/dist/cli-entry.js +101 -83
- package/dist/cli-entry.js.map +1 -1
- package/package.json +6 -2
- package/templates/casting-reference.md +104 -104
- package/templates/ceremonies.md +28 -28
- package/templates/fact-checker-charter.md +83 -0
- package/templates/mcp-config.md +0 -2
- package/templates/scribe-charter.md +1 -1
- package/templates/skills/external-comms/SKILL.md +329 -329
- package/templates/skills/gh-auth-isolation/SKILL.md +183 -183
- package/templates/skills/humanizer/SKILL.md +105 -105
- package/templates/skills/pr-review-response/SKILL.md +268 -0
- package/templates/skills/pr-screenshots/SKILL.md +149 -149
- package/templates/skills/versioning-policy/SKILL.md +119 -0
- package/templates/squad.agent.md.template +13 -6
- package/dist/cli/commands/watch/capabilities/budget-check.d.ts +0 -29
- package/dist/cli/commands/watch/capabilities/budget-check.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/budget-check.js +0 -38
- package/dist/cli/commands/watch/capabilities/budget-check.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/circuit-breaker.d.ts +0 -52
- package/dist/cli/commands/watch/capabilities/circuit-breaker.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/circuit-breaker.js +0 -152
- package/dist/cli/commands/watch/capabilities/circuit-breaker.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/health-check.d.ts +0 -29
- package/dist/cli/commands/watch/capabilities/health-check.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/health-check.js +0 -139
- package/dist/cli/commands/watch/capabilities/health-check.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/heartbeat.d.ts +0 -48
- package/dist/cli/commands/watch/capabilities/heartbeat.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/heartbeat.js +0 -115
- package/dist/cli/commands/watch/capabilities/heartbeat.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/lockfile.d.ts +0 -30
- package/dist/cli/commands/watch/capabilities/lockfile.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/lockfile.js +0 -100
- package/dist/cli/commands/watch/capabilities/lockfile.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/machine-capabilities.d.ts +0 -30
- package/dist/cli/commands/watch/capabilities/machine-capabilities.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/machine-capabilities.js +0 -103
- package/dist/cli/commands/watch/capabilities/machine-capabilities.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/post-failure.d.ts +0 -19
- package/dist/cli/commands/watch/capabilities/post-failure.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/post-failure.js +0 -58
- package/dist/cli/commands/watch/capabilities/post-failure.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/priority.d.ts +0 -59
- package/dist/cli/commands/watch/capabilities/priority.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/priority.js +0 -101
- package/dist/cli/commands/watch/capabilities/priority.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/rate-pool.d.ts +0 -67
- package/dist/cli/commands/watch/capabilities/rate-pool.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/rate-pool.js +0 -187
- package/dist/cli/commands/watch/capabilities/rate-pool.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/stale-reclaim.d.ts +0 -23
- package/dist/cli/commands/watch/capabilities/stale-reclaim.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/stale-reclaim.js +0 -87
- package/dist/cli/commands/watch/capabilities/stale-reclaim.js.map +0 -1
- package/dist/cli/commands/watch/capabilities/webhook-alerts.d.ts +0 -29
- package/dist/cli/commands/watch/capabilities/webhook-alerts.d.ts.map +0 -1
- package/dist/cli/commands/watch/capabilities/webhook-alerts.js +0 -114
- package/dist/cli/commands/watch/capabilities/webhook-alerts.js.map +0 -1
|
@@ -1,104 +1,104 @@
|
|
|
1
|
-
# Casting Reference
|
|
2
|
-
|
|
3
|
-
On-demand reference for Squad's casting system. Loaded during Init Mode or when adding team members.
|
|
4
|
-
|
|
5
|
-
## Universe Table
|
|
6
|
-
|
|
7
|
-
| Universe | Capacity | Shape Tags | Resonance Signals |
|
|
8
|
-
|---|---|---|---|
|
|
9
|
-
| The Usual Suspects | 6 | small, noir, ensemble | crime, heist, mystery, deception |
|
|
10
|
-
| Reservoir Dogs | 8 | small, noir, ensemble | crime, heist, tension, loyalty |
|
|
11
|
-
| Alien | 8 | small, sci-fi, survival | space, isolation, threat, engineering |
|
|
12
|
-
| Ocean's Eleven | 14 | medium, heist, ensemble | planning, coordination, roles, charm |
|
|
13
|
-
| Arrested Development | 15 | medium, comedy, ensemble | dysfunction, business, family, satire |
|
|
14
|
-
| Star Wars | 12 | medium, sci-fi, epic | conflict, mentorship, legacy, rebellion |
|
|
15
|
-
| The Matrix | 10 | medium, sci-fi, cyberpunk | systems, reality, hacking, philosophy |
|
|
16
|
-
| Firefly | 10 | medium, sci-fi, western | frontier, crew, independence, smuggling |
|
|
17
|
-
| The Goonies | 8 | small, adventure, ensemble | exploration, treasure, kids, teamwork |
|
|
18
|
-
| The Simpsons | 20 | large, comedy, ensemble | satire, community, family, absurdity |
|
|
19
|
-
| Breaking Bad | 12 | medium, drama, tension | chemistry, transformation, consequence, power |
|
|
20
|
-
| Lost | 18 | large, mystery, ensemble | survival, mystery, groups, leadership |
|
|
21
|
-
| Marvel Cinematic Universe | 25 | large, action, ensemble | heroism, teamwork, powers, scale |
|
|
22
|
-
| DC Universe | 18 | large, action, ensemble | justice, duality, powers, mythology |
|
|
23
|
-
| Futurama | 12 | medium, sci-fi, comedy | future, robots, space, absurdity |
|
|
24
|
-
|
|
25
|
-
**Total: 15 universes** — capacity range 6–25.
|
|
26
|
-
|
|
27
|
-
## Selection Algorithm
|
|
28
|
-
|
|
29
|
-
Universe selection is deterministic. Score each universe and pick the highest:
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
score = size_fit + shape_fit + resonance_fit + LRU
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
| Factor | Description |
|
|
36
|
-
|---|---|
|
|
37
|
-
| `size_fit` | How well the universe capacity matches the team size. Prefer universes where capacity ≥ agent_count with minimal waste. |
|
|
38
|
-
| `shape_fit` | Match universe shape tags against the assignment shape derived from the project description. |
|
|
39
|
-
| `resonance_fit` | Match universe resonance signals against session and repo context signals. |
|
|
40
|
-
| `LRU` | Least-recently-used bonus — prefer universes not used in recent assignments (from `history.json`). |
|
|
41
|
-
|
|
42
|
-
Same inputs → same choice (unless LRU changes between assignments).
|
|
43
|
-
|
|
44
|
-
## Casting State File Schemas
|
|
45
|
-
|
|
46
|
-
### policy.json
|
|
47
|
-
|
|
48
|
-
Source template: `.squad/templates/casting-policy.json`
|
|
49
|
-
Runtime location: `.squad/casting/policy.json`
|
|
50
|
-
|
|
51
|
-
```json
|
|
52
|
-
{
|
|
53
|
-
"casting_policy_version": "1.1",
|
|
54
|
-
"allowlist_universes": ["Universe Name", "..."],
|
|
55
|
-
"universe_capacity": {
|
|
56
|
-
"Universe Name": 10
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
### registry.json
|
|
62
|
-
|
|
63
|
-
Source template: `.squad/templates/casting-registry.json`
|
|
64
|
-
Runtime location: `.squad/casting/registry.json`
|
|
65
|
-
|
|
66
|
-
```json
|
|
67
|
-
{
|
|
68
|
-
"agents": {
|
|
69
|
-
"agent-role-id": {
|
|
70
|
-
"persistent_name": "CharacterName",
|
|
71
|
-
"universe": "Universe Name",
|
|
72
|
-
"created_at": "ISO-8601",
|
|
73
|
-
"legacy_named": false,
|
|
74
|
-
"status": "active"
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
### history.json
|
|
81
|
-
|
|
82
|
-
Source template: `.squad/templates/casting-history.json`
|
|
83
|
-
Runtime location: `.squad/casting/history.json`
|
|
84
|
-
|
|
85
|
-
```json
|
|
86
|
-
{
|
|
87
|
-
"universe_usage_history": [
|
|
88
|
-
{
|
|
89
|
-
"universe": "Universe Name",
|
|
90
|
-
"assignment_id": "unique-id",
|
|
91
|
-
"used_at": "ISO-8601"
|
|
92
|
-
}
|
|
93
|
-
],
|
|
94
|
-
"assignment_cast_snapshots": {
|
|
95
|
-
"assignment-id": {
|
|
96
|
-
"universe": "Universe Name",
|
|
97
|
-
"agents": {
|
|
98
|
-
"role-id": "CharacterName"
|
|
99
|
-
},
|
|
100
|
-
"created_at": "ISO-8601"
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
```
|
|
1
|
+
# Casting Reference
|
|
2
|
+
|
|
3
|
+
On-demand reference for Squad's casting system. Loaded during Init Mode or when adding team members.
|
|
4
|
+
|
|
5
|
+
## Universe Table
|
|
6
|
+
|
|
7
|
+
| Universe | Capacity | Shape Tags | Resonance Signals |
|
|
8
|
+
|---|---|---|---|
|
|
9
|
+
| The Usual Suspects | 6 | small, noir, ensemble | crime, heist, mystery, deception |
|
|
10
|
+
| Reservoir Dogs | 8 | small, noir, ensemble | crime, heist, tension, loyalty |
|
|
11
|
+
| Alien | 8 | small, sci-fi, survival | space, isolation, threat, engineering |
|
|
12
|
+
| Ocean's Eleven | 14 | medium, heist, ensemble | planning, coordination, roles, charm |
|
|
13
|
+
| Arrested Development | 15 | medium, comedy, ensemble | dysfunction, business, family, satire |
|
|
14
|
+
| Star Wars | 12 | medium, sci-fi, epic | conflict, mentorship, legacy, rebellion |
|
|
15
|
+
| The Matrix | 10 | medium, sci-fi, cyberpunk | systems, reality, hacking, philosophy |
|
|
16
|
+
| Firefly | 10 | medium, sci-fi, western | frontier, crew, independence, smuggling |
|
|
17
|
+
| The Goonies | 8 | small, adventure, ensemble | exploration, treasure, kids, teamwork |
|
|
18
|
+
| The Simpsons | 20 | large, comedy, ensemble | satire, community, family, absurdity |
|
|
19
|
+
| Breaking Bad | 12 | medium, drama, tension | chemistry, transformation, consequence, power |
|
|
20
|
+
| Lost | 18 | large, mystery, ensemble | survival, mystery, groups, leadership |
|
|
21
|
+
| Marvel Cinematic Universe | 25 | large, action, ensemble | heroism, teamwork, powers, scale |
|
|
22
|
+
| DC Universe | 18 | large, action, ensemble | justice, duality, powers, mythology |
|
|
23
|
+
| Futurama | 12 | medium, sci-fi, comedy | future, robots, space, absurdity |
|
|
24
|
+
|
|
25
|
+
**Total: 15 universes** — capacity range 6–25.
|
|
26
|
+
|
|
27
|
+
## Selection Algorithm
|
|
28
|
+
|
|
29
|
+
Universe selection is deterministic. Score each universe and pick the highest:
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
score = size_fit + shape_fit + resonance_fit + LRU
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
| Factor | Description |
|
|
36
|
+
|---|---|
|
|
37
|
+
| `size_fit` | How well the universe capacity matches the team size. Prefer universes where capacity ≥ agent_count with minimal waste. |
|
|
38
|
+
| `shape_fit` | Match universe shape tags against the assignment shape derived from the project description. |
|
|
39
|
+
| `resonance_fit` | Match universe resonance signals against session and repo context signals. |
|
|
40
|
+
| `LRU` | Least-recently-used bonus — prefer universes not used in recent assignments (from `history.json`). |
|
|
41
|
+
|
|
42
|
+
Same inputs → same choice (unless LRU changes between assignments).
|
|
43
|
+
|
|
44
|
+
## Casting State File Schemas
|
|
45
|
+
|
|
46
|
+
### policy.json
|
|
47
|
+
|
|
48
|
+
Source template: `.squad/templates/casting-policy.json`
|
|
49
|
+
Runtime location: `.squad/casting/policy.json`
|
|
50
|
+
|
|
51
|
+
```json
|
|
52
|
+
{
|
|
53
|
+
"casting_policy_version": "1.1",
|
|
54
|
+
"allowlist_universes": ["Universe Name", "..."],
|
|
55
|
+
"universe_capacity": {
|
|
56
|
+
"Universe Name": 10
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### registry.json
|
|
62
|
+
|
|
63
|
+
Source template: `.squad/templates/casting-registry.json`
|
|
64
|
+
Runtime location: `.squad/casting/registry.json`
|
|
65
|
+
|
|
66
|
+
```json
|
|
67
|
+
{
|
|
68
|
+
"agents": {
|
|
69
|
+
"agent-role-id": {
|
|
70
|
+
"persistent_name": "CharacterName",
|
|
71
|
+
"universe": "Universe Name",
|
|
72
|
+
"created_at": "ISO-8601",
|
|
73
|
+
"legacy_named": false,
|
|
74
|
+
"status": "active"
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### history.json
|
|
81
|
+
|
|
82
|
+
Source template: `.squad/templates/casting-history.json`
|
|
83
|
+
Runtime location: `.squad/casting/history.json`
|
|
84
|
+
|
|
85
|
+
```json
|
|
86
|
+
{
|
|
87
|
+
"universe_usage_history": [
|
|
88
|
+
{
|
|
89
|
+
"universe": "Universe Name",
|
|
90
|
+
"assignment_id": "unique-id",
|
|
91
|
+
"used_at": "ISO-8601"
|
|
92
|
+
}
|
|
93
|
+
],
|
|
94
|
+
"assignment_cast_snapshots": {
|
|
95
|
+
"assignment-id": {
|
|
96
|
+
"universe": "Universe Name",
|
|
97
|
+
"agents": {
|
|
98
|
+
"role-id": "CharacterName"
|
|
99
|
+
},
|
|
100
|
+
"created_at": "ISO-8601"
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
```
|
package/templates/ceremonies.md
CHANGED
|
@@ -39,31 +39,31 @@
|
|
|
39
39
|
2. Root cause analysis
|
|
40
40
|
3. What should change?
|
|
41
41
|
4. Action items for next iteration
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## Retrospective with Enforcement
|
|
47
|
-
|
|
48
|
-
| Field | Value |
|
|
49
|
-
|-------|-------|
|
|
50
|
-
| **Trigger** | auto |
|
|
51
|
-
| **When** | weekly |
|
|
52
|
-
| **Condition** | No *retrospective* log in .squad/log/ within the last 7 days |
|
|
53
|
-
| **Facilitator** | lead |
|
|
54
|
-
| **Participants** | all |
|
|
55
|
-
| **Time budget** | focused |
|
|
56
|
-
| **Enabled** | yes |
|
|
57
|
-
| **Enforcement skill** | retro-enforcement |
|
|
58
|
-
|
|
59
|
-
**Agenda:**
|
|
60
|
-
1. What shipped this week? (closed issues, merged PRs)
|
|
61
|
-
2. What did not ship? (open issues, blockers)
|
|
62
|
-
3. Root cause on any failures
|
|
63
|
-
4. Action items -- each MUST become a GitHub Issue labeled retro-action
|
|
64
|
-
|
|
65
|
-
**Coordinator integration:**
|
|
66
|
-
At round start, call Test-RetroOverdue (see skill retro-enforcement). If overdue, run this ceremony before the work queue.
|
|
67
|
-
|
|
68
|
-
**Why GitHub Issues, not markdown:**
|
|
69
|
-
Production data: 0% completion across 6 retros using markdown checklists, 100% after switching to GitHub Issues.
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Retrospective with Enforcement
|
|
47
|
+
|
|
48
|
+
| Field | Value |
|
|
49
|
+
|-------|-------|
|
|
50
|
+
| **Trigger** | auto |
|
|
51
|
+
| **When** | weekly |
|
|
52
|
+
| **Condition** | No *retrospective* log in .squad/log/ within the last 7 days |
|
|
53
|
+
| **Facilitator** | lead |
|
|
54
|
+
| **Participants** | all |
|
|
55
|
+
| **Time budget** | focused |
|
|
56
|
+
| **Enabled** | yes |
|
|
57
|
+
| **Enforcement skill** | retro-enforcement |
|
|
58
|
+
|
|
59
|
+
**Agenda:**
|
|
60
|
+
1. What shipped this week? (closed issues, merged PRs)
|
|
61
|
+
2. What did not ship? (open issues, blockers)
|
|
62
|
+
3. Root cause on any failures
|
|
63
|
+
4. Action items -- each MUST become a GitHub Issue labeled retro-action
|
|
64
|
+
|
|
65
|
+
**Coordinator integration:**
|
|
66
|
+
At round start, call Test-RetroOverdue (see skill retro-enforcement). If overdue, run this ceremony before the work queue.
|
|
67
|
+
|
|
68
|
+
**Why GitHub Issues, not markdown:**
|
|
69
|
+
Production data: 0% completion across 6 retros using markdown checklists, 100% after switching to GitHub Issues.
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# Fact Checker
|
|
2
|
+
|
|
3
|
+
> Trust, but verify. Every claim gets a source check.
|
|
4
|
+
|
|
5
|
+
## Identity
|
|
6
|
+
|
|
7
|
+
- **Name:** Fact Checker
|
|
8
|
+
- **Role:** Devil's Advocate & Verification Agent
|
|
9
|
+
- **Style:** Rigorous but constructive. Flags issues clearly without being abrasive.
|
|
10
|
+
- **Casting:** Gets a universe name like any other agent (not exempt like Scribe/Ralph).
|
|
11
|
+
|
|
12
|
+
## What I Do
|
|
13
|
+
|
|
14
|
+
Validate claims, detect hallucinations, and run counter-hypotheses on team output before it ships.
|
|
15
|
+
|
|
16
|
+
## Verification Methodology
|
|
17
|
+
|
|
18
|
+
For every claim or assertion I review:
|
|
19
|
+
|
|
20
|
+
1. **Source Check:** What evidence supports this? Can I verify it?
|
|
21
|
+
2. **Counter-Hypothesis:** What would disprove this? Is there an alternative explanation?
|
|
22
|
+
3. **Existence Check:** Do the URLs, package names, API endpoints, file paths, and version numbers actually exist?
|
|
23
|
+
4. **Consistency Check:** Does this contradict anything in `.squad/decisions.md` or prior team output?
|
|
24
|
+
|
|
25
|
+
## Confidence Ratings
|
|
26
|
+
|
|
27
|
+
Every verified item gets one of:
|
|
28
|
+
|
|
29
|
+
| Rating | Meaning |
|
|
30
|
+
|--------|---------|
|
|
31
|
+
| ✅ Verified | Confirmed via source, test, or direct observation |
|
|
32
|
+
| ⚠️ Unverified | Plausible but could not confirm — needs human review |
|
|
33
|
+
| ❌ Contradicted | Found evidence that contradicts the claim |
|
|
34
|
+
| 🔍 Needs Investigation | Requires deeper analysis beyond current scope |
|
|
35
|
+
|
|
36
|
+
## When I'm Triggered
|
|
37
|
+
|
|
38
|
+
- **Auto-trigger (via routing):** Tasks tagged with `review`, `verify`, `fact-check`, `audit`
|
|
39
|
+
- **Pre-publish gate:** Before any artifact is delivered to the user, if configured
|
|
40
|
+
- **Manual:** User says "fact-check this", "verify these claims", "double-check"
|
|
41
|
+
- **Post-research:** After any agent produces research output or external references
|
|
42
|
+
|
|
43
|
+
## How I Work
|
|
44
|
+
|
|
45
|
+
1. **Read the artifact** — understand what's being claimed
|
|
46
|
+
2. **Extract claims** — list every factual assertion (package versions, API behavior, file existence, etc.)
|
|
47
|
+
3. **Verify each claim** — use available tools (grep, glob, web search, gh CLI) to check
|
|
48
|
+
4. **Run counter-hypotheses** — for key assumptions, ask "what if this is wrong?"
|
|
49
|
+
5. **Produce a verification report:**
|
|
50
|
+
|
|
51
|
+
```markdown
|
|
52
|
+
## Verification Report — {artifact name}
|
|
53
|
+
|
|
54
|
+
### Claims Verified
|
|
55
|
+
- ✅ {claim} — confirmed via {source}
|
|
56
|
+
- ⚠️ {claim} — could not verify, {reason}
|
|
57
|
+
- ❌ {claim} — contradicted by {evidence}
|
|
58
|
+
|
|
59
|
+
### Counter-Hypotheses
|
|
60
|
+
- {assumption} → Alternative: {counter}
|
|
61
|
+
|
|
62
|
+
### Recommendation
|
|
63
|
+
{proceed / revise / block with reasons}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
6. **Write decision** if I found issues: `.squad/decisions/inbox/fact-checker-{slug}.md`
|
|
67
|
+
|
|
68
|
+
## Boundaries
|
|
69
|
+
|
|
70
|
+
**I handle:** Verification, fact-checking, counter-hypotheses, hallucination detection.
|
|
71
|
+
|
|
72
|
+
**I don't handle:** Implementation, design, testing, or docs. I review, not create.
|
|
73
|
+
|
|
74
|
+
**I am not a blocker by default.** My verification report is advisory unless the coordinator or a reviewer escalates it to a gate.
|
|
75
|
+
|
|
76
|
+
## Project Context
|
|
77
|
+
|
|
78
|
+
**Project:** {project_name}
|
|
79
|
+
{project_description}
|
|
80
|
+
|
|
81
|
+
## Learnings
|
|
82
|
+
|
|
83
|
+
Initial setup complete. Ready for verification work.
|
package/templates/mcp-config.md
CHANGED
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
MCP (Model Context Protocol) servers extend Squad with tools for external services — Trello, Aspire dashboards, Azure, Notion, and more. The user configures MCP servers in their environment; Squad discovers and uses them.
|
|
4
4
|
|
|
5
|
-
> **Full patterns:** Read `.squad/skills/mcp-tool-discovery/SKILL.md` for discovery patterns, domain-specific usage, and graceful degradation.
|
|
6
|
-
|
|
7
5
|
## Config File Locations
|
|
8
6
|
|
|
9
7
|
Users configure MCP servers at these locations (checked in priority order):
|
|
@@ -43,7 +43,7 @@ After every substantial work session:
|
|
|
43
43
|
- **Exact duplicates:** If two blocks share the same heading, keep the first and remove the rest.
|
|
44
44
|
- **Overlapping decisions:** Compare block content across all remaining blocks. If two or more blocks cover the same area (same topic, same architectural concern, same component) but were written independently (different dates, different authors), consolidate them:
|
|
45
45
|
a. Synthesize a single merged block that combines the intent and rationale from all overlapping blocks.
|
|
46
|
-
b. Use
|
|
46
|
+
b. Use the CURRENT_DATETIME value from your spawn prompt and a new heading: `### {CURRENT_DATETIME}: {consolidated topic} (consolidated)`
|
|
47
47
|
c. Credit all original authors: `**By:** {Name1}, {Name2}`
|
|
48
48
|
d. Under **What:**, combine the decisions. Note any differences or evolution.
|
|
49
49
|
e. Under **Why:**, merge the rationale, preserving unique reasoning from each.
|