@bradygaster/squad-sdk 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.
Files changed (53) hide show
  1. package/dist/config/init.d.ts +5 -0
  2. package/dist/config/init.d.ts.map +1 -1
  3. package/dist/config/init.js +59 -26
  4. package/dist/config/init.js.map +1 -1
  5. package/dist/index.d.ts +2 -2
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +2 -2
  8. package/dist/index.js.map +1 -1
  9. package/dist/platform/azure-devops.d.ts.map +1 -1
  10. package/dist/platform/azure-devops.js +7 -5
  11. package/dist/platform/azure-devops.js.map +1 -1
  12. package/dist/platform/comms-teams.d.ts +80 -1
  13. package/dist/platform/comms-teams.d.ts.map +1 -1
  14. package/dist/platform/comms-teams.js +306 -84
  15. package/dist/platform/comms-teams.js.map +1 -1
  16. package/dist/platform/comms.d.ts +1 -1
  17. package/dist/platform/comms.d.ts.map +1 -1
  18. package/dist/platform/comms.js +13 -5
  19. package/dist/platform/comms.js.map +1 -1
  20. package/dist/platform/types.d.ts +9 -10
  21. package/dist/platform/types.d.ts.map +1 -1
  22. package/dist/resolution.d.ts +44 -0
  23. package/dist/resolution.d.ts.map +1 -1
  24. package/dist/resolution.js +69 -18
  25. package/dist/resolution.js.map +1 -1
  26. package/dist/roles/catalog-engineering.d.ts +17 -0
  27. package/dist/roles/catalog-engineering.d.ts.map +1 -1
  28. package/dist/roles/catalog-engineering.js +45 -0
  29. package/dist/roles/catalog-engineering.js.map +1 -1
  30. package/dist/roles/catalog.d.ts +1 -1
  31. package/dist/roles/catalog.d.ts.map +1 -1
  32. package/dist/runtime/scheduler.d.ts +6 -0
  33. package/dist/runtime/scheduler.d.ts.map +1 -1
  34. package/dist/runtime/scheduler.js +25 -2
  35. package/dist/runtime/scheduler.js.map +1 -1
  36. package/dist/state-backend.d.ts +5 -0
  37. package/dist/state-backend.d.ts.map +1 -1
  38. package/dist/state-backend.js +66 -39
  39. package/dist/state-backend.js.map +1 -1
  40. package/package.json +1 -1
  41. package/templates/casting-reference.md +104 -104
  42. package/templates/ceremonies.md +28 -28
  43. package/templates/mcp-config.md +0 -2
  44. package/templates/orchestration-log.md +27 -27
  45. package/templates/scribe-charter.md +1 -1
  46. package/templates/skills/external-comms/SKILL.md +329 -329
  47. package/templates/skills/gh-auth-isolation/SKILL.md +183 -183
  48. package/templates/skills/humanizer/SKILL.md +105 -105
  49. package/templates/skills/pr-review-response/SKILL.md +268 -0
  50. package/templates/skills/pr-screenshots/SKILL.md +149 -149
  51. package/templates/skills/versioning-policy/SKILL.md +119 -0
  52. package/templates/squad.agent.md.template +13 -6
  53. package/templates/workflows/squad-heartbeat.yml +167 -167
@@ -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
+ ```
@@ -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.
@@ -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):
@@ -1,27 +1,27 @@
1
- # Orchestration Log Entry
2
-
3
- > One file per agent spawn. Saved to `.squad/orchestration-log/{timestamp}-{agent-name}.md`
4
-
5
- ---
6
-
7
- ### {timestamp} — {task summary}
8
-
9
- | Field | Value |
10
- |-------|-------|
11
- | **Agent routed** | {Name} ({Role}) |
12
- | **Why chosen** | {Routing rationale — what in the request matched this agent} |
13
- | **Mode** | {`background` / `sync`} |
14
- | **Why this mode** | {Brief reason — e.g., "No hard data dependencies" or "User needs to approve architecture"} |
15
- | **Files authorized to read** | {Exact file paths the agent was told to read} |
16
- | **File(s) agent must produce** | {Exact file paths the agent is expected to create or modify} |
17
- | **Outcome** | {Completed / Rejected by {Reviewer} / Escalated} |
18
-
19
- ---
20
-
21
- ## Rules
22
-
23
- 1. **One file per agent spawn.** Named `{timestamp}-{agent-name}.md`.
24
- 2. **Log BEFORE spawning.** The entry must exist before the agent runs.
25
- 3. **Update outcome AFTER the agent completes.** Fill in the Outcome field.
26
- 4. **Never delete or edit past entries.** Append-only.
27
- 5. **If a reviewer rejects work,** log the rejection as a new entry with the revision agent.
1
+ # Orchestration Log Entry
2
+
3
+ > One file per agent spawn. Saved to `.squad/orchestration-log/{timestamp}-{agent-name}.md`
4
+
5
+ ---
6
+
7
+ ### {timestamp} — {task summary}
8
+
9
+ | Field | Value |
10
+ |-------|-------|
11
+ | **Agent routed** | {Name} ({Role}) |
12
+ | **Why chosen** | {Routing rationale — what in the request matched this agent} |
13
+ | **Mode** | {`background` / `sync`} |
14
+ | **Why this mode** | {Brief reason — e.g., "No hard data dependencies" or "User needs to approve architecture"} |
15
+ | **Files authorized to read** | {Exact file paths the agent was told to read} |
16
+ | **File(s) agent must produce** | {Exact file paths the agent is expected to create or modify} |
17
+ | **Outcome** | {Completed / Rejected by {Reviewer} / Escalated} |
18
+
19
+ ---
20
+
21
+ ## Rules
22
+
23
+ 1. **One file per agent spawn.** Named `{timestamp}-{agent-name}.md`.
24
+ 2. **Log BEFORE spawning.** The entry must exist before the agent runs.
25
+ 3. **Update outcome AFTER the agent completes.** Fill in the Outcome field.
26
+ 4. **Never delete or edit past entries.** Append-only.
27
+ 5. **If a reviewer rejects work,** log the rejection as a new entry with the revision agent.
@@ -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 today's date and a new heading: `### {today}: {consolidated topic} (consolidated)`
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.