aether-colony 5.0.0 → 5.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/.aether/aether-utils.sh +3226 -3345
  2. package/.aether/agents-claude/aether-ambassador.md +265 -0
  3. package/.aether/agents-claude/aether-archaeologist.md +327 -0
  4. package/.aether/agents-claude/aether-architect.md +236 -0
  5. package/.aether/agents-claude/aether-auditor.md +271 -0
  6. package/.aether/agents-claude/aether-builder.md +224 -0
  7. package/.aether/agents-claude/aether-chaos.md +269 -0
  8. package/.aether/agents-claude/aether-chronicler.md +305 -0
  9. package/.aether/agents-claude/aether-gatekeeper.md +330 -0
  10. package/.aether/agents-claude/aether-includer.md +374 -0
  11. package/.aether/agents-claude/aether-keeper.md +272 -0
  12. package/.aether/agents-claude/aether-measurer.md +322 -0
  13. package/.aether/agents-claude/aether-oracle.md +237 -0
  14. package/.aether/agents-claude/aether-probe.md +211 -0
  15. package/.aether/agents-claude/aether-queen.md +330 -0
  16. package/.aether/agents-claude/aether-route-setter.md +178 -0
  17. package/.aether/agents-claude/aether-sage.md +418 -0
  18. package/.aether/agents-claude/aether-scout.md +179 -0
  19. package/.aether/agents-claude/aether-surveyor-disciplines.md +417 -0
  20. package/.aether/agents-claude/aether-surveyor-nest.md +355 -0
  21. package/.aether/agents-claude/aether-surveyor-pathogens.md +289 -0
  22. package/.aether/agents-claude/aether-surveyor-provisions.md +360 -0
  23. package/.aether/agents-claude/aether-tracker.md +270 -0
  24. package/.aether/agents-claude/aether-watcher.md +280 -0
  25. package/.aether/agents-claude/aether-weaver.md +248 -0
  26. package/.aether/commands/archaeology.yaml +653 -0
  27. package/.aether/commands/build.yaml +1221 -0
  28. package/.aether/commands/chaos.yaml +653 -0
  29. package/.aether/commands/colonize.yaml +442 -0
  30. package/.aether/commands/continue.yaml +1484 -0
  31. package/.aether/commands/council.yaml +509 -0
  32. package/.aether/commands/data-clean.yaml +80 -0
  33. package/.aether/commands/dream.yaml +275 -0
  34. package/.aether/commands/entomb.yaml +863 -0
  35. package/.aether/commands/export-signals.yaml +64 -0
  36. package/.aether/commands/feedback.yaml +158 -0
  37. package/.aether/commands/flag.yaml +160 -0
  38. package/.aether/commands/flags.yaml +177 -0
  39. package/.aether/commands/focus.yaml +112 -0
  40. package/.aether/commands/help.yaml +167 -0
  41. package/.aether/commands/history.yaml +137 -0
  42. package/.aether/commands/import-signals.yaml +79 -0
  43. package/.aether/commands/init.yaml +502 -0
  44. package/.aether/commands/insert-phase.yaml +102 -0
  45. package/.aether/commands/interpret.yaml +285 -0
  46. package/.aether/commands/lay-eggs.yaml +224 -0
  47. package/.aether/commands/maturity.yaml +122 -0
  48. package/.aether/commands/memory-details.yaml +74 -0
  49. package/.aether/commands/migrate-state.yaml +174 -0
  50. package/.aether/commands/oracle.yaml +1224 -0
  51. package/.aether/commands/organize.yaml +446 -0
  52. package/.aether/commands/patrol.yaml +621 -0
  53. package/.aether/commands/pause-colony.yaml +424 -0
  54. package/.aether/commands/phase.yaml +124 -0
  55. package/.aether/commands/pheromones.yaml +153 -0
  56. package/.aether/commands/plan.yaml +1364 -0
  57. package/.aether/commands/preferences.yaml +63 -0
  58. package/.aether/commands/quick.yaml +104 -0
  59. package/.aether/commands/redirect.yaml +123 -0
  60. package/.aether/commands/resume-colony.yaml +375 -0
  61. package/.aether/commands/resume.yaml +407 -0
  62. package/.aether/commands/run.yaml +229 -0
  63. package/.aether/commands/seal.yaml +1214 -0
  64. package/.aether/commands/skill-create.yaml +337 -0
  65. package/.aether/commands/status.yaml +408 -0
  66. package/.aether/commands/swarm.yaml +352 -0
  67. package/.aether/commands/tunnels.yaml +814 -0
  68. package/.aether/commands/update.yaml +131 -0
  69. package/.aether/commands/verify-castes.yaml +159 -0
  70. package/.aether/commands/watch.yaml +454 -0
  71. package/.aether/docs/INCIDENT_TEMPLATE.md +32 -0
  72. package/.aether/docs/QUEEN-SYSTEM.md +11 -11
  73. package/.aether/docs/README.md +32 -2
  74. package/.aether/docs/command-playbooks/README.md +23 -0
  75. package/.aether/docs/command-playbooks/build-complete.md +349 -0
  76. package/.aether/docs/command-playbooks/build-context.md +282 -0
  77. package/.aether/docs/command-playbooks/build-full.md +1683 -0
  78. package/.aether/docs/command-playbooks/build-prep.md +284 -0
  79. package/.aether/docs/command-playbooks/build-verify.md +405 -0
  80. package/.aether/docs/command-playbooks/build-wave.md +749 -0
  81. package/.aether/docs/command-playbooks/continue-advance.md +524 -0
  82. package/.aether/docs/command-playbooks/continue-finalize.md +447 -0
  83. package/.aether/docs/command-playbooks/continue-full.md +1725 -0
  84. package/.aether/docs/command-playbooks/continue-gates.md +686 -0
  85. package/.aether/docs/command-playbooks/continue-verify.md +407 -0
  86. package/.aether/docs/context-continuity.md +84 -0
  87. package/.aether/docs/disciplines/DISCIPLINES.md +9 -7
  88. package/.aether/docs/error-codes.md +1 -1
  89. package/.aether/docs/known-issues.md +34 -173
  90. package/.aether/docs/pheromones.md +86 -6
  91. package/.aether/docs/plans/pheromone-display-plan.md +257 -0
  92. package/.aether/docs/queen-commands.md +10 -9
  93. package/.aether/docs/source-of-truth-map.md +132 -0
  94. package/.aether/docs/xml-utilities.md +47 -0
  95. package/.aether/rules/aether-colony.md +23 -13
  96. package/.aether/scripts/incident-test-add.sh +47 -0
  97. package/.aether/scripts/weekly-audit.sh +79 -0
  98. package/.aether/skills/.index.json +649 -0
  99. package/.aether/skills/colony/.manifest.json +16 -0
  100. package/.aether/skills/colony/build-discipline/SKILL.md +78 -0
  101. package/.aether/skills/colony/colony-interaction/SKILL.md +56 -0
  102. package/.aether/skills/colony/colony-lifecycle/SKILL.md +77 -0
  103. package/.aether/skills/colony/colony-visuals/SKILL.md +112 -0
  104. package/.aether/skills/colony/context-management/SKILL.md +80 -0
  105. package/.aether/skills/colony/error-presentation/SKILL.md +99 -0
  106. package/.aether/skills/colony/pheromone-protocol/SKILL.md +79 -0
  107. package/.aether/skills/colony/pheromone-visibility/SKILL.md +81 -0
  108. package/.aether/skills/colony/state-safety/SKILL.md +84 -0
  109. package/.aether/skills/colony/worker-priming/SKILL.md +82 -0
  110. package/.aether/skills/domain/.manifest.json +24 -0
  111. package/.aether/skills/domain/README.md +33 -0
  112. package/.aether/skills/domain/django/SKILL.md +49 -0
  113. package/.aether/skills/domain/docker/SKILL.md +52 -0
  114. package/.aether/skills/domain/golang/SKILL.md +52 -0
  115. package/.aether/skills/domain/graphql/SKILL.md +51 -0
  116. package/.aether/skills/domain/html-css/SKILL.md +48 -0
  117. package/.aether/skills/domain/nextjs/SKILL.md +45 -0
  118. package/.aether/skills/domain/nodejs/SKILL.md +53 -0
  119. package/.aether/skills/domain/postgresql/SKILL.md +53 -0
  120. package/.aether/skills/domain/prisma/SKILL.md +59 -0
  121. package/.aether/skills/domain/python/SKILL.md +50 -0
  122. package/.aether/skills/domain/rails/SKILL.md +52 -0
  123. package/.aether/skills/domain/react/SKILL.md +45 -0
  124. package/.aether/skills/domain/rest-api/SKILL.md +58 -0
  125. package/.aether/skills/domain/svelte/SKILL.md +47 -0
  126. package/.aether/skills/domain/tailwind/SKILL.md +45 -0
  127. package/.aether/skills/domain/testing/SKILL.md +53 -0
  128. package/.aether/skills/domain/typescript/SKILL.md +58 -0
  129. package/.aether/skills/domain/vue/SKILL.md +49 -0
  130. package/.aether/templates/QUEEN.md.template +23 -41
  131. package/.aether/templates/colony-state-reset.jq.template +1 -0
  132. package/.aether/templates/colony-state.template.json +4 -0
  133. package/.aether/templates/learning-observations.template.json +6 -0
  134. package/.aether/templates/midden.template.json +13 -0
  135. package/.aether/templates/pheromones.template.json +6 -0
  136. package/.aether/templates/session.template.json +9 -0
  137. package/.aether/utils/atomic-write.sh +63 -17
  138. package/.aether/utils/chamber-utils.sh +145 -2
  139. package/.aether/utils/council.sh +425 -0
  140. package/.aether/utils/emoji-audit.sh +166 -0
  141. package/.aether/utils/error-handler.sh +21 -7
  142. package/.aether/utils/file-lock.sh +182 -27
  143. package/.aether/utils/flag.sh +278 -0
  144. package/.aether/utils/hive.sh +572 -0
  145. package/.aether/utils/immune.sh +508 -0
  146. package/.aether/utils/learning.sh +1928 -0
  147. package/.aether/utils/midden.sh +520 -0
  148. package/.aether/utils/oracle/oracle.md +168 -0
  149. package/.aether/utils/oracle/oracle.sh +1023 -0
  150. package/.aether/utils/pheromone.sh +2029 -0
  151. package/.aether/utils/queen.sh +1710 -0
  152. package/.aether/utils/scan.sh +860 -0
  153. package/.aether/utils/semantic-cli.sh +10 -8
  154. package/.aether/utils/session.sh +816 -0
  155. package/.aether/utils/skills.sh +509 -0
  156. package/.aether/utils/spawn-tree.sh +103 -271
  157. package/.aether/utils/spawn.sh +260 -0
  158. package/.aether/utils/state-api.sh +389 -0
  159. package/.aether/utils/state-loader.sh +8 -6
  160. package/.aether/utils/suggest.sh +611 -0
  161. package/.aether/utils/swarm-display.sh +10 -1
  162. package/.aether/utils/swarm.sh +1004 -0
  163. package/.aether/utils/watch-spawn-tree.sh +11 -2
  164. package/.aether/utils/xml-compose.sh +2 -2
  165. package/.aether/utils/xml-convert.sh +9 -5
  166. package/.aether/utils/xml-core.sh +5 -9
  167. package/.aether/utils/xml-query.sh +4 -4
  168. package/.aether/workers.md +86 -67
  169. package/.claude/agents/ant/aether-ambassador.md +2 -1
  170. package/.claude/agents/ant/aether-archaeologist.md +6 -1
  171. package/.claude/agents/ant/aether-architect.md +236 -0
  172. package/.claude/agents/ant/aether-auditor.md +6 -1
  173. package/.claude/agents/ant/aether-builder.md +38 -1
  174. package/.claude/agents/ant/aether-chaos.md +2 -1
  175. package/.claude/agents/ant/aether-chronicler.md +1 -0
  176. package/.claude/agents/ant/aether-gatekeeper.md +6 -1
  177. package/.claude/agents/ant/aether-includer.md +1 -0
  178. package/.claude/agents/ant/aether-keeper.md +1 -0
  179. package/.claude/agents/ant/aether-measurer.md +6 -1
  180. package/.claude/agents/ant/aether-oracle.md +237 -0
  181. package/.claude/agents/ant/aether-probe.md +2 -1
  182. package/.claude/agents/ant/aether-queen.md +6 -1
  183. package/.claude/agents/ant/aether-route-setter.md +6 -1
  184. package/.claude/agents/ant/aether-sage.md +68 -3
  185. package/.claude/agents/ant/aether-scout.md +38 -1
  186. package/.claude/agents/ant/aether-surveyor-disciplines.md +2 -1
  187. package/.claude/agents/ant/aether-surveyor-nest.md +2 -1
  188. package/.claude/agents/ant/aether-surveyor-pathogens.md +2 -1
  189. package/.claude/agents/ant/aether-surveyor-provisions.md +2 -1
  190. package/.claude/agents/ant/aether-tracker.md +6 -1
  191. package/.claude/agents/ant/aether-watcher.md +37 -1
  192. package/.claude/agents/ant/aether-weaver.md +2 -1
  193. package/.claude/commands/ant/archaeology.md +1 -8
  194. package/.claude/commands/ant/build.md +43 -1159
  195. package/.claude/commands/ant/chaos.md +1 -14
  196. package/.claude/commands/ant/colonize.md +3 -14
  197. package/.claude/commands/ant/continue.md +40 -1026
  198. package/.claude/commands/ant/council.md +213 -15
  199. package/.claude/commands/ant/data-clean.md +81 -0
  200. package/.claude/commands/ant/dream.md +12 -9
  201. package/.claude/commands/ant/entomb.md +62 -87
  202. package/.claude/commands/ant/export-signals.md +57 -0
  203. package/.claude/commands/ant/feedback.md +18 -0
  204. package/.claude/commands/ant/flag.md +12 -0
  205. package/.claude/commands/ant/flags.md +22 -8
  206. package/.claude/commands/ant/focus.md +18 -0
  207. package/.claude/commands/ant/help.md +40 -8
  208. package/.claude/commands/ant/history.md +3 -0
  209. package/.claude/commands/ant/import-signals.md +71 -0
  210. package/.claude/commands/ant/init.md +349 -191
  211. package/.claude/commands/ant/insert-phase.md +105 -0
  212. package/.claude/commands/ant/interpret.md +11 -0
  213. package/.claude/commands/ant/lay-eggs.md +167 -158
  214. package/.claude/commands/ant/maturity.md +22 -11
  215. package/.claude/commands/ant/memory-details.md +77 -0
  216. package/.claude/commands/ant/migrate-state.md +6 -0
  217. package/.claude/commands/ant/oracle.md +317 -62
  218. package/.claude/commands/ant/organize.md +10 -5
  219. package/.claude/commands/ant/patrol.md +620 -0
  220. package/.claude/commands/ant/pause-colony.md +8 -22
  221. package/.claude/commands/ant/phase.md +26 -37
  222. package/.claude/commands/ant/pheromones.md +156 -0
  223. package/.claude/commands/ant/plan.md +199 -50
  224. package/.claude/commands/ant/preferences.md +65 -0
  225. package/.claude/commands/ant/quick.md +100 -0
  226. package/.claude/commands/ant/redirect.md +18 -0
  227. package/.claude/commands/ant/resume-colony.md +37 -22
  228. package/.claude/commands/ant/resume.md +60 -7
  229. package/.claude/commands/ant/run.md +231 -0
  230. package/.claude/commands/ant/seal.md +506 -78
  231. package/.claude/commands/ant/skill-create.md +286 -0
  232. package/.claude/commands/ant/status.md +171 -1
  233. package/.claude/commands/ant/swarm.md +11 -23
  234. package/.claude/commands/ant/tunnels.md +1 -0
  235. package/.claude/commands/ant/update.md +58 -135
  236. package/.claude/commands/ant/verify-castes.md +90 -42
  237. package/.claude/commands/ant/watch.md +1 -0
  238. package/.opencode/agents/aether-ambassador.md +1 -1
  239. package/.opencode/agents/aether-architect.md +133 -0
  240. package/.opencode/agents/aether-builder.md +3 -3
  241. package/.opencode/agents/aether-oracle.md +137 -0
  242. package/.opencode/agents/aether-queen.md +1 -1
  243. package/.opencode/agents/aether-route-setter.md +1 -1
  244. package/.opencode/agents/aether-scout.md +1 -1
  245. package/.opencode/agents/aether-surveyor-disciplines.md +6 -1
  246. package/.opencode/agents/aether-surveyor-nest.md +6 -1
  247. package/.opencode/agents/aether-surveyor-pathogens.md +6 -1
  248. package/.opencode/agents/aether-surveyor-provisions.md +6 -1
  249. package/.opencode/agents/aether-tracker.md +1 -1
  250. package/.opencode/agents/aether-watcher.md +1 -1
  251. package/.opencode/agents/aether-weaver.md +1 -1
  252. package/.opencode/commands/ant/archaeology.md +7 -14
  253. package/.opencode/commands/ant/build.md +54 -88
  254. package/.opencode/commands/ant/chaos.md +7 -24
  255. package/.opencode/commands/ant/colonize.md +10 -17
  256. package/.opencode/commands/ant/continue.md +595 -66
  257. package/.opencode/commands/ant/council.md +150 -18
  258. package/.opencode/commands/ant/data-clean.md +77 -0
  259. package/.opencode/commands/ant/dream.md +15 -17
  260. package/.opencode/commands/ant/entomb.md +28 -18
  261. package/.opencode/commands/ant/export-signals.md +54 -0
  262. package/.opencode/commands/ant/feedback.md +24 -5
  263. package/.opencode/commands/ant/flag.md +16 -4
  264. package/.opencode/commands/ant/flags.md +24 -10
  265. package/.opencode/commands/ant/focus.md +22 -5
  266. package/.opencode/commands/ant/help.md +41 -8
  267. package/.opencode/commands/ant/history.md +9 -0
  268. package/.opencode/commands/ant/import-signals.md +68 -0
  269. package/.opencode/commands/ant/init.md +396 -154
  270. package/.opencode/commands/ant/insert-phase.md +111 -0
  271. package/.opencode/commands/ant/interpret.md +16 -0
  272. package/.opencode/commands/ant/lay-eggs.md +184 -112
  273. package/.opencode/commands/ant/maturity.md +18 -2
  274. package/.opencode/commands/ant/memory-details.md +83 -0
  275. package/.opencode/commands/ant/migrate-state.md +12 -0
  276. package/.opencode/commands/ant/oracle.md +322 -67
  277. package/.opencode/commands/ant/organize.md +14 -12
  278. package/.opencode/commands/ant/patrol.md +626 -0
  279. package/.opencode/commands/ant/pause-colony.md +12 -29
  280. package/.opencode/commands/ant/phase.md +30 -40
  281. package/.opencode/commands/ant/pheromones.md +162 -0
  282. package/.opencode/commands/ant/plan.md +210 -57
  283. package/.opencode/commands/ant/preferences.md +71 -0
  284. package/.opencode/commands/ant/quick.md +91 -0
  285. package/.opencode/commands/ant/redirect.md +22 -5
  286. package/.opencode/commands/ant/resume-colony.md +41 -29
  287. package/.opencode/commands/ant/resume.md +80 -20
  288. package/.opencode/commands/ant/run.md +237 -0
  289. package/.opencode/commands/ant/seal.md +230 -25
  290. package/.opencode/commands/ant/skill-create.md +63 -0
  291. package/.opencode/commands/ant/status.md +125 -30
  292. package/.opencode/commands/ant/swarm.md +3 -345
  293. package/.opencode/commands/ant/tunnels.md +3 -9
  294. package/.opencode/commands/ant/update.md +63 -127
  295. package/.opencode/commands/ant/verify-castes.md +96 -42
  296. package/.opencode/commands/ant/watch.md +7 -0
  297. package/CHANGELOG.md +368 -1
  298. package/README.md +195 -324
  299. package/bin/cli.js +236 -429
  300. package/bin/generate-commands.js +186 -0
  301. package/bin/generate-commands.sh +128 -89
  302. package/bin/lib/spawn-logger.js +0 -15
  303. package/bin/lib/update-transaction.js +285 -35
  304. package/bin/npx-install.js +178 -0
  305. package/bin/validate-package.sh +85 -3
  306. package/package.json +16 -4
  307. package/.aether/CONTEXT.md +0 -160
  308. package/.aether/docs/QUEEN.md +0 -84
  309. package/.aether/exchange/colony-registry.xml +0 -11
  310. package/.aether/exchange/pheromones.xml +0 -87
  311. package/.aether/exchange/queen-wisdom.xml +0 -14
  312. package/.aether/model-profiles.yaml +0 -100
  313. package/.aether/utils/spawn-with-model.sh +0 -56
  314. package/bin/lib/model-profiles.js +0 -445
  315. package/bin/lib/model-verify.js +0 -288
  316. package/bin/lib/proxy-health.js +0 -253
  317. package/bin/lib/telemetry.js +0 -441
@@ -0,0 +1,509 @@
1
+ name: "ant:council"
2
+ description: "📜🐜🏛️🐜📜 Convene council for intent clarification via multi-choice questions"
3
+ body: |
4
+ You are the **Queen Ant Colony**. Convene the council to clarify user intent and inject guidance as pheromones.
5
+
6
+ ## Instructions
7
+
8
+ Parse `{{ARGUMENTS}}`:
9
+ - If starts with `--deliberate`: set `deliberate_mode = true`, extract proposal text after `--deliberate`
10
+ - If contains `--no-visual`: set `visual_mode = false` (visual is ON by default)
11
+ - Otherwise: set `visual_mode = true`
12
+
13
+ **If `deliberate_mode` is true:** Skip to [Deliberation Mode](#deliberation-mode) and stop after it.
14
+
15
+ ---
16
+
17
+ ## Deliberation Mode
18
+
19
+ When `--deliberate "<proposal>"` is passed, run a structured Advocate/Challenger/Sage deliberation.
20
+
21
+ ### Step D1: Check Budget
22
+
23
+ Run using the Bash tool with description "Checking deliberation budget...":
24
+ ```bash
25
+ bash .aether/aether-utils.sh council-budget-check
26
+ ```
27
+
28
+ Parse result. If `allowed` is `false`:
29
+ ```
30
+ 📜🐜🏛️🐜📜 COUNCIL — BUDGET EXHAUSTED
31
+
32
+ Spawn budget is fully allocated. Complete or close existing deliberations before starting new ones.
33
+ Run /ant:council to review existing deliberations.
34
+ ```
35
+ Stop here.
36
+
37
+ ### Step D2: Open Deliberation
38
+
39
+ Run using the Bash tool with description "Opening deliberation...":
40
+ ```bash
41
+ bash .aether/aether-utils.sh council-deliberate --proposal "<proposal>"
42
+ ```
43
+
44
+ Capture `deliberation_id` from `result.id`.
45
+
46
+ Display:
47
+ ```
48
+ 📜🐜🏛️🐜📜 COUNCIL DELIBERATION OPENED
49
+
50
+ Proposal: "<proposal>"
51
+ ID: {deliberation_id}
52
+ Budget: {budget} spawns available
53
+
54
+ Convening Advocate, Challenger, and Sage...
55
+ ```
56
+
57
+ ### Step D3: Spawn Advocate Scout
58
+
59
+ Spawn an Advocate scout to argue **in favor** of the proposal.
60
+
61
+ {{#claude}}
62
+ Use the Task tool to spawn a scout with the following system prompt:
63
+ ```
64
+ You are the Advocate on the Ant Colony council.
65
+ Your role is to argue STRONGLY IN FAVOR of the proposal.
66
+ Present the strongest possible case for why this proposal should be adopted.
67
+ Be specific. Focus on concrete benefits and outcomes.
68
+ Keep your argument under 200 words.
69
+ Reply with ONLY your argument text — no preamble or meta-commentary.
70
+ ```
71
+
72
+ And user message:
73
+ ```
74
+ Proposal: "<proposal>"
75
+
76
+ Present your strongest argument in favor of this proposal.
77
+ ```
78
+
79
+ Capture the advocate's argument as `advocate_argument`.
80
+ {{/claude}}
81
+
82
+ Record the argument:
83
+ ```bash
84
+ bash .aether/aether-utils.sh council-advocate \
85
+ --deliberation-id "<deliberation_id>" \
86
+ --argument "<advocate_argument>"
87
+ ```
88
+
89
+ Display:
90
+ ```
91
+ ⚖️ ADVOCATE:
92
+ {advocate_argument}
93
+ ```
94
+
95
+ ### Step D4: Spawn Challenger Scout
96
+
97
+ Spawn a Challenger scout to argue **against** the proposal.
98
+
99
+ {{#claude}}
100
+ Use the Task tool to spawn a scout with the following system prompt:
101
+ ```
102
+ You are the Challenger on the Ant Colony council.
103
+ Your role is to argue STRONGLY AGAINST the proposal.
104
+ Present the strongest possible case for why this proposal should be rejected or deferred.
105
+ Be specific. Focus on concrete risks, costs, and downsides.
106
+ Keep your argument under 200 words.
107
+ Reply with ONLY your argument text — no preamble or meta-commentary.
108
+ ```
109
+
110
+ And user message:
111
+ ```
112
+ Proposal: "<proposal>"
113
+
114
+ Present your strongest argument against this proposal.
115
+ ```
116
+
117
+ Capture the challenger's argument as `challenger_argument`.
118
+ {{/claude}}
119
+
120
+ Record the argument:
121
+ ```bash
122
+ bash .aether/aether-utils.sh council-challenger \
123
+ --deliberation-id "<deliberation_id>" \
124
+ --argument "<challenger_argument>"
125
+ ```
126
+
127
+ Display:
128
+ ```
129
+ ⚔️ CHALLENGER:
130
+ {challenger_argument}
131
+ ```
132
+
133
+ ### Step D5: Spawn Sage Scout
134
+
135
+ Spawn a Sage scout to synthesize both positions and provide a recommendation.
136
+
137
+ {{#claude}}
138
+ Use the Task tool to spawn a scout with the following system prompt:
139
+ ```
140
+ You are the Sage on the Ant Colony council.
141
+ You have heard both the Advocate and Challenger arguments.
142
+ Your role is to synthesize both positions into balanced wisdom and provide a clear recommendation.
143
+ Your recommendation must be one of: adopt, reject, defer, or adopt-with-conditions.
144
+ Keep your synthesis under 150 words.
145
+ Reply with JSON only:
146
+ {"synthesis": "<your balanced synthesis>", "recommendation": "adopt|reject|defer|adopt-with-conditions"}
147
+ ```
148
+
149
+ And user message:
150
+ ```
151
+ Proposal: "<proposal>"
152
+
153
+ Advocate argued: "<advocate_argument>"
154
+
155
+ Challenger argued: "<challenger_argument>"
156
+
157
+ Synthesize both positions and provide your recommendation.
158
+ ```
159
+
160
+ Parse the JSON response. Capture `synthesis` and `recommendation`.
161
+ {{/claude}}
162
+
163
+ Record the sage synthesis:
164
+ ```bash
165
+ bash .aether/aether-utils.sh council-sage \
166
+ --deliberation-id "<deliberation_id>" \
167
+ --synthesis "<synthesis>" \
168
+ --recommendation "<recommendation>"
169
+ ```
170
+
171
+ ### Step D6: Display Result
172
+
173
+ ```
174
+ 📜🐜🏛️🐜📜 COUNCIL DELIBERATION COMPLETE
175
+
176
+ Proposal: "<proposal>"
177
+
178
+ ⚖️ Advocate:
179
+ {advocate_argument}
180
+
181
+ ⚔️ Challenger:
182
+ {challenger_argument}
183
+
184
+ 🧙 Sage Synthesis:
185
+ {synthesis}
186
+
187
+ Recommendation: {recommendation}
188
+ ```
189
+
190
+ If recommendation is `adopt` or `adopt-with-conditions`:
191
+ ```
192
+ ✅ Council recommends proceeding.
193
+ Run /ant:focus "<proposal summary>" to inject guidance for the colony.
194
+ ```
195
+
196
+ If recommendation is `reject`:
197
+ ```
198
+ ❌ Council recommends against this proposal.
199
+ Run /ant:redirect "<proposal summary>" if you want to make this a hard constraint.
200
+ ```
201
+
202
+ If recommendation is `defer`:
203
+ ```
204
+ ⏸️ Council recommends deferring this decision.
205
+ Return when more context is available.
206
+ ```
207
+
208
+ ---
209
+
210
+
211
+ {{#claude}}
212
+ ### Step 0: Initialize Visual Mode (if enabled)
213
+
214
+ If `visual_mode` is true, run using the Bash tool with description "Initializing council display...":
215
+ {{/claude}}
216
+ ### Step 1: Read Current State
217
+
218
+ Read `.aether/data/COLONY_STATE.json`.
219
+
220
+ If file doesn't exist or `goal` is null:
221
+ ```
222
+ 📜🐜🏛️🐜📜 COUNCIL
223
+
224
+ No colony initialized. Run /ant:init first.
225
+ ```
226
+ Stop here.
227
+
228
+ If `milestone` == `"Crowned Anthill"`:
229
+ ```
230
+ This colony has been sealed. Start a new colony with /ant:init "new goal".
231
+ ```
232
+ Stop here.
233
+
234
+ Capture the current state for context:
235
+ - `prior_state` = state field value (READY, EXECUTING, PLANNING, etc.)
236
+ - `current_phase` = current_phase field value
237
+ - `goal` = goal field value
238
+
239
+ ### Step 2: Display Council Header
240
+
241
+ {{#claude}}
242
+ ```
243
+ 📜🐜🏛️🐜📜 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
244
+ A N T C O U N C I L
245
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 📜🐜🏛️🐜📜
246
+ {{/claude}}
247
+ {{#opencode}}
248
+ ```
249
+ 📜🐜🏛️🐜📜 ═══════════════════════════════════════════════
250
+ A N T C O U N C I L
251
+ ═══════════════════════════════════════════════ 📜🐜🏛️🐜📜
252
+ {{/opencode}}
253
+
254
+ 👑 Queen convenes the council for guidance
255
+
256
+ Colony Goal: "{goal}"
257
+ Current State: {prior_state}
258
+ Phase: {current_phase}
259
+ ```
260
+
261
+ If `prior_state` is `EXECUTING`:
262
+ ```
263
+ ⚡ Note: Build in progress. New guidance will apply to future work.
264
+ Current workers continue with existing constraints.
265
+ ```
266
+
267
+ ### Step 3: Present Category Menu
268
+
269
+ Use the **AskUserQuestion** tool to ask:
270
+
271
+ ```
272
+ question: "What would you like to clarify with the council?"
273
+ header: "Topic"
274
+ options:
275
+ - label: "Project Direction"
276
+ description: "Clarify project type, architecture, or tech stack choices"
277
+ - label: "Quality Priorities"
278
+ description: "Define tradeoffs: speed vs robustness vs simplicity"
279
+ - label: "Constraints & Boundaries"
280
+ description: "Set rules about what to avoid or require"
281
+ - label: "Custom Topic"
282
+ description: "Describe something specific you want to discuss"
283
+ multiSelect: false
284
+ ```
285
+
286
+ Wait for user response.
287
+
288
+ ### Step 4: Drill Down Based on Selection
289
+
290
+ Based on the user's selection, ask follow-up questions:
291
+
292
+ **If "Project Direction":**
293
+ ```
294
+ question: "What aspect of project direction needs clarification?"
295
+ header: "Direction"
296
+ options:
297
+ - label: "Architecture Pattern"
298
+ description: "Monolith vs microservices, MVC vs functional, etc."
299
+ - label: "Tech Stack"
300
+ description: "Framework, database, or library choices"
301
+ - label: "Code Style"
302
+ description: "Naming conventions, file organization, patterns"
303
+ - label: "Testing Approach"
304
+ description: "TDD, integration-first, coverage requirements"
305
+ multiSelect: true
306
+ ```
307
+
308
+ **If "Quality Priorities":**
309
+ ```
310
+ question: "What's most important for this project?"
311
+ header: "Priority"
312
+ options:
313
+ - label: "Speed of Development"
314
+ description: "Get it working fast, iterate later"
315
+ - label: "Robustness"
316
+ description: "Handle edge cases, thorough error handling"
317
+ - label: "Simplicity"
318
+ description: "Minimal code, easy to understand and maintain"
319
+ - label: "Performance"
320
+ description: "Optimize for speed and efficiency"
321
+ multiSelect: true
322
+ ```
323
+
324
+ **If "Constraints & Boundaries":**
325
+ ```
326
+ question: "What constraints should the colony follow?"
327
+ header: "Constraints"
328
+ options:
329
+ - label: "Security Requirements"
330
+ description: "Auth patterns, data handling, secrets management"
331
+ - label: "Compatibility"
332
+ description: "Browser support, Node version, API compatibility"
333
+ - label: "Dependencies"
334
+ description: "Prefer/avoid certain libraries or frameworks"
335
+ - label: "Patterns to Avoid"
336
+ description: "Anti-patterns, deprecated approaches"
337
+ multiSelect: true
338
+ ```
339
+
340
+ **If "Custom Topic":**
341
+ ```
342
+ question: "Describe what you want to clarify:"
343
+ header: "Custom"
344
+ options:
345
+ - label: "Type your topic below"
346
+ description: "Use the 'Other' option to enter your specific topic"
347
+ multiSelect: false
348
+ ```
349
+
350
+ Wait for user response. Based on answers, ask 1-2 more specific follow-up questions to get actionable guidance.
351
+
352
+ ### Step 5: Translate Answers to Pheromones
353
+
354
+ Based on all gathered answers, determine which pheromones to inject:
355
+
356
+ **FOCUS signals** (areas to emphasize):
357
+ - Architecture choices → FOCUS on that pattern
358
+ - Quality priorities → FOCUS on that approach
359
+ - Specific requirements → FOCUS on those areas
360
+
361
+ **REDIRECT signals** (patterns to avoid):
362
+ - Patterns to avoid → REDIRECT away
363
+ - Incompatible approaches → REDIRECT away
364
+ - Security concerns → REDIRECT away from risky patterns
365
+
366
+ **FEEDBACK signals** (guidance to remember):
367
+ - Style preferences → FEEDBACK as instinct
368
+ - General guidance → FEEDBACK for colony memory
369
+
370
+ ### Step 6: Inject Pheromones
371
+
372
+ Read `.aether/data/constraints.json`. Create if doesn't exist:
373
+ ```json
374
+ {"version": "1.0", "focus": [], "constraints": []}
375
+ ```
376
+
377
+ **For each FOCUS area identified:**
378
+ - Check for duplicates (case-insensitive match in existing focus array)
379
+ - If not duplicate, append to `focus` array
380
+ - Keep max 5 entries (remove oldest if exceeded)
381
+
382
+ **For each REDIRECT pattern identified:**
383
+ - Generate ID: `c_<unix_timestamp_ms>`
384
+ - Append to `constraints` array:
385
+ ```json
386
+ {
387
+ "id": "<generated_id>",
388
+ "type": "AVOID",
389
+ "content": "<pattern to avoid>",
390
+ "source": "council:redirect",
391
+ "created_at": "<ISO-8601 timestamp>"
392
+ }
393
+ ```
394
+ - Keep max 10 constraints (remove oldest if exceeded)
395
+
396
+ Write constraints.json.
397
+
398
+ **For each FEEDBACK identified:**
399
+ Read `.aether/data/COLONY_STATE.json`.
400
+
401
+ Append to `signals` array:
402
+ ```json
403
+ {
404
+ "id": "feedback_<timestamp_ms>",
405
+ "type": "FEEDBACK",
406
+ "content": "<feedback message>",
407
+ "priority": "low",
408
+ "source": "council:feedback",
409
+ "created_at": "<ISO-8601>",
410
+ "expires_at": "phase_end"
411
+ }
412
+ ```
413
+
414
+ Create instinct in `memory.instincts`:
415
+ ```json
416
+ {
417
+ "id": "instinct_<timestamp>",
418
+ "trigger": "<inferred from context>",
419
+ "action": "<the guidance>",
420
+ "confidence": 0.7,
421
+ "domain": "<inferred: testing|architecture|code-style|debugging|workflow>",
422
+ "source": "council:feedback",
423
+ "evidence": ["Council session guidance"],
424
+ "created_at": "<ISO-8601>",
425
+ "last_applied": null,
426
+ "applications": 0,
427
+ "successes": 0
428
+ }
429
+ ```
430
+
431
+ Keep max 30 instincts (remove lowest confidence if exceeded).
432
+
433
+ Write COLONY_STATE.json.
434
+
435
+ ### Step 7: Log Council Event
436
+
437
+ Append to COLONY_STATE.json `events` array:
438
+ ```
439
+ <ISO-8601>|council_session|council|Council convened: <brief summary of topics discussed>
440
+ ```
441
+
442
+ Keep max 100 events.
443
+
444
+ ### Step 8: Display Summary
445
+
446
+ ```
447
+ 📜🐜🏛️🐜📜 COUNCIL ADJOURNED
448
+
449
+ Pheromones Injected:
450
+ ```
451
+
452
+ For each FOCUS added:
453
+ ```
454
+ 🎯 FOCUS: "{content}"
455
+ ```
456
+
457
+ For each REDIRECT added:
458
+ ```
459
+ 🚫 REDIRECT: "{content}"
460
+ ```
461
+
462
+ For each FEEDBACK added:
463
+ ```
464
+ 💬 FEEDBACK: "{content}"
465
+ 🧠 Instinct: [{confidence}] {domain}: {action summary}
466
+ ```
467
+
468
+ If no pheromones were injected:
469
+ ```
470
+ (No new constraints needed based on discussion)
471
+ ```
472
+
473
+ Then:
474
+ ```
475
+ 🐜 Colony guidance updated. Resuming {prior_state} state.
476
+ ```
477
+
478
+ If `prior_state` was EXECUTING:
479
+ ```
480
+ ⚡ Active workers will complete with prior constraints.
481
+ New spawns will use updated guidance.
482
+
483
+ /ant:status 📊 View current progress
484
+ /ant:continue ⏭️ Check for phase completion
485
+ ```
486
+
487
+ If `prior_state` was READY:
488
+ ```
489
+ /ant:plan 📋 Generate or refine plan
490
+ /ant:build 🔨 Start building a phase
491
+ /ant:status 📊 View colony status
492
+ ```
493
+
494
+ If `prior_state` was PLANNING:
495
+ ```
496
+ Planning will continue with new guidance.
497
+ ```
498
+
499
+ {{#claude}}
500
+ ### Step 9: Next Up
501
+
502
+ Generate the state-based Next Up block by running using the Bash tool with description "Generating Next Up suggestions...":
503
+ ```bash
504
+ state=$(jq -r '.state // "IDLE"' .aether/data/COLONY_STATE.json)
505
+ current_phase=$(jq -r '.current_phase // 0' .aether/data/COLONY_STATE.json)
506
+ total_phases=$(jq -r '.plan.phases | length' .aether/data/COLONY_STATE.json)
507
+ bash .aether/aether-utils.sh print-next-up "$state" "$current_phase" "$total_phases"
508
+ ```
509
+ {{/claude}}
@@ -0,0 +1,80 @@
1
+ name: "ant:data-clean"
2
+ description: "Scan and remove test artifacts from colony data files"
3
+ body: |
4
+ You are the **Queen Ant Colony**. Run the data cleaner to scan for and remove test/synthetic artifacts from colony data files.
5
+
6
+ {{#claude}}
7
+ > **Note:** `{{ARGUMENTS}}` is unused. This command always scans all data files.
8
+ {{/claude}}
9
+ {{#opencode}}
10
+ > **Note:** Arguments are unused. This command always scans all data files.
11
+ {{/opencode}}
12
+
13
+ ## Instructions
14
+
15
+ ### Step 1: Scan
16
+
17
+ Run using the Bash tool with description "Scanning colony data for test artifacts...":
18
+ ```bash
19
+ bash .aether/aether-utils.sh data-clean --dry-run
20
+ ```
21
+
22
+ Display the output to the user. This shows artifact counts per data file without modifying anything.
23
+
24
+ ### Step 2: Decision Gate
25
+
26
+ Parse the scan output for "Total artifacts: N".
27
+
28
+ **If total is 0:**
29
+ Display:
30
+ ```
31
+ Colony data is clean. No artifacts found.
32
+ ```
33
+ Skip to Step 5.
34
+
35
+ **If total is greater than 0:**
36
+ Ask the user:
37
+ ```
38
+ Found {N} test artifacts across colony data files.
39
+ Remove these artifacts? (yes/no)
40
+ ```
41
+
42
+ If user says no, display "No changes made." and skip to Step 5.
43
+
44
+ ### Step 3: Clean
45
+
46
+ If user confirmed, run using the Bash tool with description "Removing test artifacts...":
47
+ ```bash
48
+ bash .aether/aether-utils.sh data-clean --confirm
49
+ ```
50
+
51
+ ### Step 4: Summary
52
+
53
+ Display the cleanup results showing what was removed from each file.
54
+
55
+ For example:
56
+ ```
57
+ Data Clean Complete
58
+ ===================
59
+ Removed {total} artifacts:
60
+ - pheromones.json: {N} test signals
61
+ - QUEEN.md: {N} test entries
62
+ - learning-observations.json: {N} test observations
63
+ - midden.json: {N} test entries
64
+ - spawn-tree.txt: {N} test worker lines
65
+ - constraints.json: {N} test focus entries
66
+
67
+ Run /ant:status to verify colony state.
68
+ ```
69
+
70
+ {{#claude}}
71
+ ### Step 5: Next Up
72
+
73
+ Generate the state-based Next Up block by running using the Bash tool with description "Generating Next Up suggestions...":
74
+ ```bash
75
+ state=$(jq -r '.state // "IDLE"' .aether/data/COLONY_STATE.json)
76
+ current_phase=$(jq -r '.current_phase // 0' .aether/data/COLONY_STATE.json)
77
+ total_phases=$(jq -r '.plan.phases | length' .aether/data/COLONY_STATE.json)
78
+ bash .aether/aether-utils.sh print-next-up "$state" "$current_phase" "$total_phases"
79
+ ```
80
+ {{/claude}}