aether-colony 3.1.17 → 5.1.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.
Files changed (378) hide show
  1. package/.aether/aether-utils.sh +5354 -0
  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 +438 -0
  30. package/.aether/commands/continue.yaml +1484 -0
  31. package/.aether/commands/council.yaml +304 -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 +469 -0
  44. package/.aether/commands/insert-phase.yaml +98 -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 +1313 -0
  57. package/.aether/commands/preferences.yaml +63 -0
  58. package/.aether/commands/redirect.yaml +123 -0
  59. package/.aether/commands/resume-colony.yaml +373 -0
  60. package/.aether/commands/resume.yaml +398 -0
  61. package/.aether/commands/run.yaml +193 -0
  62. package/.aether/commands/seal.yaml +1205 -0
  63. package/.aether/commands/skill-create.yaml +337 -0
  64. package/.aether/commands/status.yaml +364 -0
  65. package/.aether/commands/swarm.yaml +352 -0
  66. package/.aether/commands/tunnels.yaml +814 -0
  67. package/.aether/commands/update.yaml +131 -0
  68. package/.aether/commands/verify-castes.yaml +159 -0
  69. package/.aether/commands/watch.yaml +454 -0
  70. package/.aether/docs/INCIDENT_TEMPLATE.md +32 -0
  71. package/.aether/docs/QUEEN-SYSTEM.md +211 -0
  72. package/.aether/docs/README.md +98 -0
  73. package/.aether/docs/caste-system.md +48 -0
  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 +1682 -0
  78. package/.aether/docs/command-playbooks/build-prep.md +283 -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 +1724 -0
  84. package/.aether/docs/command-playbooks/continue-gates.md +686 -0
  85. package/.aether/docs/command-playbooks/continue-verify.md +406 -0
  86. package/.aether/docs/context-continuity.md +84 -0
  87. package/{runtime → .aether/docs/disciplines}/DISCIPLINES.md +13 -11
  88. package/.aether/docs/error-codes.md +268 -0
  89. package/.aether/docs/known-issues.md +94 -0
  90. package/{runtime → .aether}/docs/pheromones.md +86 -6
  91. package/.aether/docs/plans/pheromone-display-plan.md +257 -0
  92. package/.aether/docs/queen-commands.md +98 -0
  93. package/.aether/docs/source-of-truth-map.md +132 -0
  94. package/.aether/docs/xml-utilities.md +47 -0
  95. package/{runtime → .aether}/exchange/pheromone-xml.sh +2 -1
  96. package/{runtime → .aether}/exchange/registry-xml.sh +7 -3
  97. package/{runtime → .aether}/exchange/wisdom-xml.sh +11 -4
  98. package/.aether/rules/aether-colony.md +144 -0
  99. package/.aether/schemas/example-prompt-builder.xml +234 -0
  100. package/.aether/scripts/incident-test-add.sh +47 -0
  101. package/.aether/scripts/weekly-audit.sh +79 -0
  102. package/.aether/skills/.index.json +649 -0
  103. package/.aether/skills/colony/.manifest.json +16 -0
  104. package/.aether/skills/colony/build-discipline/SKILL.md +78 -0
  105. package/.aether/skills/colony/colony-interaction/SKILL.md +56 -0
  106. package/.aether/skills/colony/colony-lifecycle/SKILL.md +77 -0
  107. package/.aether/skills/colony/colony-visuals/SKILL.md +112 -0
  108. package/.aether/skills/colony/context-management/SKILL.md +80 -0
  109. package/.aether/skills/colony/error-presentation/SKILL.md +99 -0
  110. package/.aether/skills/colony/pheromone-protocol/SKILL.md +79 -0
  111. package/.aether/skills/colony/pheromone-visibility/SKILL.md +81 -0
  112. package/.aether/skills/colony/state-safety/SKILL.md +84 -0
  113. package/.aether/skills/colony/worker-priming/SKILL.md +82 -0
  114. package/.aether/skills/domain/.manifest.json +24 -0
  115. package/.aether/skills/domain/README.md +33 -0
  116. package/.aether/skills/domain/django/SKILL.md +49 -0
  117. package/.aether/skills/domain/docker/SKILL.md +52 -0
  118. package/.aether/skills/domain/golang/SKILL.md +52 -0
  119. package/.aether/skills/domain/graphql/SKILL.md +51 -0
  120. package/.aether/skills/domain/html-css/SKILL.md +48 -0
  121. package/.aether/skills/domain/nextjs/SKILL.md +45 -0
  122. package/.aether/skills/domain/nodejs/SKILL.md +53 -0
  123. package/.aether/skills/domain/postgresql/SKILL.md +53 -0
  124. package/.aether/skills/domain/prisma/SKILL.md +59 -0
  125. package/.aether/skills/domain/python/SKILL.md +50 -0
  126. package/.aether/skills/domain/rails/SKILL.md +52 -0
  127. package/.aether/skills/domain/react/SKILL.md +45 -0
  128. package/.aether/skills/domain/rest-api/SKILL.md +58 -0
  129. package/.aether/skills/domain/svelte/SKILL.md +47 -0
  130. package/.aether/skills/domain/tailwind/SKILL.md +45 -0
  131. package/.aether/skills/domain/testing/SKILL.md +53 -0
  132. package/.aether/skills/domain/typescript/SKILL.md +58 -0
  133. package/.aether/skills/domain/vue/SKILL.md +49 -0
  134. package/.aether/templates/QUEEN.md.template +61 -0
  135. package/.aether/templates/colony-state-reset.jq.template +23 -0
  136. package/.aether/templates/colony-state.template.json +39 -0
  137. package/.aether/templates/constraints.template.json +9 -0
  138. package/.aether/templates/crowned-anthill.template.md +36 -0
  139. package/.aether/templates/handoff-build-error.template.md +30 -0
  140. package/.aether/templates/handoff-build-success.template.md +39 -0
  141. package/.aether/templates/handoff.template.md +40 -0
  142. package/.aether/templates/learning-observations.template.json +6 -0
  143. package/.aether/templates/midden.template.json +13 -0
  144. package/.aether/templates/pheromones.template.json +6 -0
  145. package/.aether/templates/session.template.json +9 -0
  146. package/{runtime → .aether}/utils/atomic-write.sh +68 -22
  147. package/{runtime → .aether}/utils/chamber-compare.sh +23 -10
  148. package/.aether/utils/chamber-utils.sh +440 -0
  149. package/.aether/utils/emoji-audit.sh +166 -0
  150. package/{runtime → .aether}/utils/error-handler.sh +34 -8
  151. package/.aether/utils/file-lock.sh +313 -0
  152. package/.aether/utils/flag.sh +267 -0
  153. package/.aether/utils/hive.sh +572 -0
  154. package/.aether/utils/learning.sh +1928 -0
  155. package/.aether/utils/midden.sh +342 -0
  156. package/.aether/utils/oracle/oracle.md +168 -0
  157. package/.aether/utils/oracle/oracle.sh +1023 -0
  158. package/.aether/utils/pheromone.sh +2029 -0
  159. package/.aether/utils/queen.sh +1698 -0
  160. package/.aether/utils/scan.sh +860 -0
  161. package/.aether/utils/semantic-cli.sh +415 -0
  162. package/.aether/utils/session.sh +552 -0
  163. package/.aether/utils/skills.sh +509 -0
  164. package/.aether/utils/spawn-tree.sh +260 -0
  165. package/.aether/utils/spawn.sh +260 -0
  166. package/.aether/utils/state-api.sh +199 -0
  167. package/{runtime → .aether}/utils/state-loader.sh +8 -6
  168. package/.aether/utils/suggest.sh +611 -0
  169. package/{runtime → .aether}/utils/swarm-display.sh +10 -1
  170. package/.aether/utils/swarm.sh +1004 -0
  171. package/{runtime → .aether}/utils/watch-spawn-tree.sh +11 -2
  172. package/{runtime → .aether}/utils/xml-compose.sh +9 -3
  173. package/.aether/utils/xml-convert.sh +277 -0
  174. package/{runtime → .aether}/utils/xml-core.sh +5 -9
  175. package/.aether/utils/xml-query.sh +201 -0
  176. package/.aether/utils/xml-utils.sh +110 -0
  177. package/{runtime → .aether}/workers.md +97 -81
  178. package/.claude/agents/ant/aether-ambassador.md +265 -0
  179. package/.claude/agents/ant/aether-archaeologist.md +327 -0
  180. package/.claude/agents/ant/aether-architect.md +236 -0
  181. package/.claude/agents/ant/aether-auditor.md +271 -0
  182. package/.claude/agents/ant/aether-builder.md +224 -0
  183. package/.claude/agents/ant/aether-chaos.md +269 -0
  184. package/.claude/agents/ant/aether-chronicler.md +305 -0
  185. package/.claude/agents/ant/aether-gatekeeper.md +330 -0
  186. package/.claude/agents/ant/aether-includer.md +374 -0
  187. package/.claude/agents/ant/aether-keeper.md +272 -0
  188. package/.claude/agents/ant/aether-measurer.md +322 -0
  189. package/.claude/agents/ant/aether-oracle.md +237 -0
  190. package/.claude/agents/ant/aether-probe.md +211 -0
  191. package/.claude/agents/ant/aether-queen.md +330 -0
  192. package/.claude/agents/ant/aether-route-setter.md +178 -0
  193. package/.claude/agents/ant/aether-sage.md +418 -0
  194. package/.claude/agents/ant/aether-scout.md +179 -0
  195. package/.claude/agents/ant/aether-surveyor-disciplines.md +417 -0
  196. package/.claude/agents/ant/aether-surveyor-nest.md +355 -0
  197. package/.claude/agents/ant/aether-surveyor-pathogens.md +289 -0
  198. package/.claude/agents/ant/aether-surveyor-provisions.md +360 -0
  199. package/.claude/agents/ant/aether-tracker.md +270 -0
  200. package/.claude/agents/ant/aether-watcher.md +280 -0
  201. package/.claude/agents/ant/aether-weaver.md +248 -0
  202. package/.claude/commands/ant/archaeology.md +16 -14
  203. package/.claude/commands/ant/build.md +43 -1028
  204. package/.claude/commands/ant/chaos.md +19 -23
  205. package/.claude/commands/ant/colonize.md +52 -31
  206. package/.claude/commands/ant/continue.md +40 -1016
  207. package/.claude/commands/ant/council.md +21 -18
  208. package/.claude/commands/ant/data-clean.md +81 -0
  209. package/.claude/commands/ant/dream.md +27 -15
  210. package/.claude/commands/ant/entomb.md +317 -225
  211. package/.claude/commands/ant/export-signals.md +57 -0
  212. package/.claude/commands/ant/feedback.md +48 -26
  213. package/.claude/commands/ant/flag.md +30 -10
  214. package/.claude/commands/ant/flags.md +34 -12
  215. package/.claude/commands/ant/focus.md +45 -19
  216. package/.claude/commands/ant/help.md +50 -8
  217. package/.claude/commands/ant/history.md +13 -0
  218. package/.claude/commands/ant/import-signals.md +71 -0
  219. package/.claude/commands/ant/init.md +345 -194
  220. package/.claude/commands/ant/insert-phase.md +101 -0
  221. package/.claude/commands/ant/interpret.md +26 -4
  222. package/.claude/commands/ant/lay-eggs.md +184 -127
  223. package/.claude/commands/ant/maturity.md +32 -11
  224. package/.claude/commands/ant/memory-details.md +77 -0
  225. package/.claude/commands/ant/migrate-state.md +20 -2
  226. package/.claude/commands/ant/oracle.md +337 -74
  227. package/.claude/commands/ant/organize.md +39 -25
  228. package/.claude/commands/ant/patrol.md +620 -0
  229. package/.claude/commands/ant/pause-colony.md +23 -27
  230. package/.claude/commands/ant/phase.md +40 -42
  231. package/.claude/commands/ant/pheromones.md +156 -0
  232. package/.claude/commands/ant/plan.md +185 -51
  233. package/.claude/commands/ant/preferences.md +65 -0
  234. package/.claude/commands/ant/redirect.md +45 -30
  235. package/.claude/commands/ant/resume-colony.md +51 -27
  236. package/.claude/commands/ant/resume.md +314 -94
  237. package/.claude/commands/ant/run.md +195 -0
  238. package/.claude/commands/ant/seal.md +650 -221
  239. package/.claude/commands/ant/skill-create.md +286 -0
  240. package/.claude/commands/ant/status.md +196 -31
  241. package/.claude/commands/ant/swarm.md +16 -46
  242. package/.claude/commands/ant/tunnels.md +280 -105
  243. package/.claude/commands/ant/update.md +73 -89
  244. package/.claude/commands/ant/verify-castes.md +100 -42
  245. package/.claude/commands/ant/watch.md +14 -12
  246. package/.opencode/agents/aether-ambassador.md +63 -20
  247. package/.opencode/agents/aether-archaeologist.md +29 -12
  248. package/.opencode/agents/aether-architect.md +103 -36
  249. package/.opencode/agents/aether-auditor.md +51 -18
  250. package/.opencode/agents/aether-builder.md +70 -20
  251. package/.opencode/agents/aether-chaos.md +29 -12
  252. package/.opencode/agents/aether-chronicler.md +60 -18
  253. package/.opencode/agents/aether-gatekeeper.md +27 -18
  254. package/.opencode/agents/aether-includer.md +27 -18
  255. package/.opencode/agents/aether-keeper.md +89 -18
  256. package/.opencode/agents/aether-measurer.md +27 -18
  257. package/.opencode/agents/aether-oracle.md +137 -0
  258. package/.opencode/agents/aether-probe.md +60 -18
  259. package/.opencode/agents/aether-queen.md +172 -24
  260. package/.opencode/agents/aether-route-setter.md +57 -12
  261. package/.opencode/agents/aether-sage.md +26 -18
  262. package/.opencode/agents/aether-scout.md +28 -20
  263. package/.opencode/agents/aether-surveyor-disciplines.md +59 -2
  264. package/.opencode/agents/aether-surveyor-nest.md +59 -2
  265. package/.opencode/agents/aether-surveyor-pathogens.md +57 -2
  266. package/.opencode/agents/aether-surveyor-provisions.md +59 -2
  267. package/.opencode/agents/aether-tracker.md +64 -18
  268. package/.opencode/agents/aether-watcher.md +66 -19
  269. package/.opencode/agents/aether-weaver.md +61 -18
  270. package/.opencode/commands/ant/archaeology.md +7 -14
  271. package/.opencode/commands/ant/build.md +437 -257
  272. package/.opencode/commands/ant/chaos.md +7 -24
  273. package/.opencode/commands/ant/colonize.md +8 -17
  274. package/.opencode/commands/ant/continue.md +661 -142
  275. package/.opencode/commands/ant/council.md +11 -22
  276. package/.opencode/commands/ant/data-clean.md +77 -0
  277. package/.opencode/commands/ant/dream.md +15 -17
  278. package/.opencode/commands/ant/entomb.md +133 -62
  279. package/.opencode/commands/ant/export-signals.md +54 -0
  280. package/.opencode/commands/ant/feedback.md +24 -5
  281. package/.opencode/commands/ant/flag.md +16 -4
  282. package/.opencode/commands/ant/flags.md +24 -10
  283. package/.opencode/commands/ant/focus.md +22 -5
  284. package/.opencode/commands/ant/help.md +41 -8
  285. package/.opencode/commands/ant/history.md +9 -0
  286. package/.opencode/commands/ant/import-signals.md +68 -0
  287. package/.opencode/commands/ant/init.md +374 -167
  288. package/.opencode/commands/ant/insert-phase.md +107 -0
  289. package/.opencode/commands/ant/interpret.md +16 -0
  290. package/.opencode/commands/ant/lay-eggs.md +184 -112
  291. package/.opencode/commands/ant/maturity.md +18 -2
  292. package/.opencode/commands/ant/memory-details.md +83 -0
  293. package/.opencode/commands/ant/migrate-state.md +12 -0
  294. package/.opencode/commands/ant/oracle.md +322 -67
  295. package/.opencode/commands/ant/organize.md +18 -16
  296. package/.opencode/commands/ant/patrol.md +626 -0
  297. package/.opencode/commands/ant/pause-colony.md +12 -29
  298. package/.opencode/commands/ant/phase.md +30 -40
  299. package/.opencode/commands/ant/pheromones.md +162 -0
  300. package/.opencode/commands/ant/plan.md +184 -56
  301. package/.opencode/commands/ant/preferences.md +71 -0
  302. package/.opencode/commands/ant/redirect.md +22 -5
  303. package/.opencode/commands/ant/resume-colony.md +38 -27
  304. package/.opencode/commands/ant/resume.md +385 -0
  305. package/.opencode/commands/ant/run.md +201 -0
  306. package/.opencode/commands/ant/seal.md +259 -45
  307. package/.opencode/commands/ant/skill-create.md +63 -0
  308. package/.opencode/commands/ant/status.md +135 -31
  309. package/.opencode/commands/ant/swarm.md +3 -345
  310. package/.opencode/commands/ant/tunnels.md +152 -9
  311. package/.opencode/commands/ant/update.md +70 -91
  312. package/.opencode/commands/ant/verify-castes.md +96 -42
  313. package/.opencode/commands/ant/watch.md +7 -0
  314. package/CHANGELOG.md +356 -0
  315. package/README.md +203 -573
  316. package/bin/cli.js +455 -527
  317. package/bin/generate-commands.js +186 -0
  318. package/bin/generate-commands.sh +127 -88
  319. package/bin/lib/init.js +13 -3
  320. package/bin/lib/spawn-logger.js +0 -15
  321. package/bin/lib/update-transaction.js +392 -140
  322. package/bin/npx-install.js +178 -0
  323. package/bin/sync-to-runtime.sh +5 -137
  324. package/bin/validate-package.sh +166 -0
  325. package/package.json +14 -7
  326. package/.opencode/agents/aether-guardian.md +0 -107
  327. package/.opencode/agents/workers.md +0 -1034
  328. package/bin/lib/model-profiles.js +0 -445
  329. package/bin/lib/model-verify.js +0 -288
  330. package/bin/lib/proxy-health.js +0 -253
  331. package/bin/lib/telemetry.js +0 -441
  332. package/runtime/CONTEXT.md +0 -160
  333. package/runtime/QUEEN_ANT_ARCHITECTURE.md +0 -402
  334. package/runtime/aether-utils.sh +0 -3879
  335. package/runtime/data/signatures.json +0 -41
  336. package/runtime/docs/AETHER-2.0-IMPLEMENTATION-PLAN.md +0 -1343
  337. package/runtime/docs/AETHER-PHEROMONE-SYSTEM-MASTER-SPEC.md +0 -2642
  338. package/runtime/docs/PHEROMONE-INJECTION.md +0 -240
  339. package/runtime/docs/PHEROMONE-INTEGRATION.md +0 -192
  340. package/runtime/docs/PHEROMONE-SYSTEM-DESIGN.md +0 -426
  341. package/runtime/docs/README.md +0 -94
  342. package/runtime/docs/VISUAL-OUTPUT-SPEC.md +0 -219
  343. package/runtime/docs/biological-reference.md +0 -272
  344. package/runtime/docs/codebase-review.md +0 -399
  345. package/runtime/docs/command-sync.md +0 -164
  346. package/runtime/docs/constraints.md +0 -116
  347. package/runtime/docs/implementation-learnings.md +0 -89
  348. package/runtime/docs/known-issues.md +0 -217
  349. package/runtime/docs/namespace.md +0 -148
  350. package/runtime/docs/pathogen-schema-example.json +0 -36
  351. package/runtime/docs/pathogen-schema.md +0 -111
  352. package/runtime/docs/planning-discipline.md +0 -159
  353. package/runtime/docs/progressive-disclosure.md +0 -184
  354. package/runtime/lib/queen-utils.sh +0 -729
  355. package/runtime/model-profiles.yaml +0 -100
  356. package/runtime/planning.md +0 -159
  357. package/runtime/recover.sh +0 -136
  358. package/runtime/templates/QUEEN.md.template +0 -79
  359. package/runtime/utils/chamber-utils.sh +0 -285
  360. package/runtime/utils/file-lock.sh +0 -122
  361. package/runtime/utils/spawn-tree.sh +0 -428
  362. package/runtime/utils/spawn-with-model.sh +0 -56
  363. package/runtime/utils/xml-utils.sh +0 -2196
  364. package/runtime/workers-new-castes.md +0 -516
  365. /package/{runtime → .aether/docs/disciplines}/coding-standards.md +0 -0
  366. /package/{runtime → .aether/docs/disciplines}/debugging.md +0 -0
  367. /package/{runtime → .aether/docs/disciplines}/learning.md +0 -0
  368. /package/{runtime → .aether/docs/disciplines}/tdd.md +0 -0
  369. /package/{runtime → .aether/docs/disciplines}/verification-loop.md +0 -0
  370. /package/{runtime → .aether/docs/disciplines}/verification.md +0 -0
  371. /package/{runtime → .aether}/schemas/aether-types.xsd +0 -0
  372. /package/{runtime → .aether}/schemas/colony-registry.xsd +0 -0
  373. /package/{runtime → .aether}/schemas/pheromone.xsd +0 -0
  374. /package/{runtime → .aether}/schemas/prompt.xsd +0 -0
  375. /package/{runtime → .aether}/schemas/queen-wisdom.xsd +0 -0
  376. /package/{runtime → .aether}/schemas/worker-priming.xsd +0 -0
  377. /package/{runtime → .aether}/utils/colorize-log.sh +0 -0
  378. /package/{runtime → .aether}/utils/queen-to-md.xsl +0 -0
@@ -1,33 +1,23 @@
1
+ <!-- Generated from .aether/commands/council.yaml - DO NOT EDIT DIRECTLY -->
1
2
  ---
2
3
  name: ant:council
3
4
  description: "📜🐜🏛️🐜📜 Convene council for intent clarification via multi-choice questions"
4
5
  ---
5
6
 
6
- You are the **Queen Ant Colony**. Convene the council to clarify user intent and inject guidance as pheromones.
7
-
8
- ## Instructions
9
-
10
7
  ### Step -1: Normalize Arguments
11
8
 
12
9
  Run: `normalized_args=$(bash .aether/aether-utils.sh normalize-args "$@")`
13
10
 
14
11
  This ensures arguments work correctly in both Claude Code and OpenCode. Use `$normalized_args` throughout this command.
15
12
 
13
+ You are the **Queen Ant Colony**. Convene the council to clarify user intent and inject guidance as pheromones.
14
+
15
+ ## Instructions
16
+
16
17
  Parse `$normalized_args`:
17
18
  - If contains `--no-visual`: set `visual_mode = false` (visual is ON by default)
18
19
  - Otherwise: set `visual_mode = true`
19
20
 
20
- ### Step 0: Initialize Visual Mode (if enabled)
21
-
22
- If `visual_mode` is true:
23
- ```bash
24
- # Generate session ID
25
- council_id="council-$(date +%s)"
26
-
27
- # Initialize swarm display
28
- bash .aether/aether-utils.sh swarm-display-init "$council_id"
29
- bash .aether/aether-utils.sh swarm-display-update "Queen" "prime" "excavating" "Convening council" "Colony" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "fungus_garden" 0
30
- ```
31
21
 
32
22
  ### Step 1: Read Current State
33
23
 
@@ -48,11 +38,14 @@ Capture the current state for context:
48
38
 
49
39
  ### Step 2: Display Council Header
50
40
 
41
+
42
+
51
43
  ```
52
44
  📜🐜🏛️🐜📜 ═══════════════════════════════════════════════
53
- A N T C O U N C I L
45
+ A N T C O U N C I L
54
46
  ═══════════════════════════════════════════════ 📜🐜🏛️🐜📜
55
47
 
48
+
56
49
  👑 Queen convenes the council for guidance
57
50
 
58
51
  Colony Goal: "{goal}"
@@ -245,12 +238,6 @@ Keep max 100 events.
245
238
 
246
239
  ### Step 8: Display Summary
247
240
 
248
- **If visual_mode is true, render final swarm display:**
249
- ```bash
250
- bash .aether/aether-utils.sh swarm-display-update "Queen" "prime" "completed" "Council adjourned" "Colony" '{"read":3,"grep":0,"edit":2,"bash":1}' 100 "fungus_garden" 100
251
- bash .aether/aether-utils.sh swarm-display-render "$council_id"
252
- ```
253
-
254
241
  ```
255
242
  📜🐜🏛️🐜📜 COUNCIL ADJOURNED
256
243
 
@@ -303,3 +290,5 @@ If `prior_state` was PLANNING:
303
290
  ```
304
291
  Planning will continue with new guidance.
305
292
  ```
293
+
294
+
@@ -0,0 +1,77 @@
1
+ <!-- Generated from .aether/commands/data-clean.yaml - DO NOT EDIT DIRECTLY -->
2
+ ---
3
+ name: ant:data-clean
4
+ description: "Scan and remove test artifacts from colony data files"
5
+ ---
6
+
7
+ ### Step -1: Normalize Arguments
8
+
9
+ Run: `normalized_args=$(bash .aether/aether-utils.sh normalize-args "$@")`
10
+
11
+ This ensures arguments work correctly in both Claude Code and OpenCode. Use `$normalized_args` throughout this command.
12
+
13
+ You are the **Queen Ant Colony**. Run the data cleaner to scan for and remove test/synthetic artifacts from colony data files.
14
+
15
+
16
+
17
+ > **Note:** Arguments are unused. This command always scans all data files.
18
+
19
+
20
+ ## Instructions
21
+
22
+ ### Step 1: Scan
23
+
24
+ Run using the Bash tool with description "Scanning colony data for test artifacts...":
25
+ ```bash
26
+ bash .aether/aether-utils.sh data-clean --dry-run
27
+ ```
28
+
29
+ Display the output to the user. This shows artifact counts per data file without modifying anything.
30
+
31
+ ### Step 2: Decision Gate
32
+
33
+ Parse the scan output for "Total artifacts: N".
34
+
35
+ **If total is 0:**
36
+ Display:
37
+ ```
38
+ Colony data is clean. No artifacts found.
39
+ ```
40
+ Skip to Step 5.
41
+
42
+ **If total is greater than 0:**
43
+ Ask the user:
44
+ ```
45
+ Found {N} test artifacts across colony data files.
46
+ Remove these artifacts? (yes/no)
47
+ ```
48
+
49
+ If user says no, display "No changes made." and skip to Step 5.
50
+
51
+ ### Step 3: Clean
52
+
53
+ If user confirmed, run using the Bash tool with description "Removing test artifacts...":
54
+ ```bash
55
+ bash .aether/aether-utils.sh data-clean --confirm
56
+ ```
57
+
58
+ ### Step 4: Summary
59
+
60
+ Display the cleanup results showing what was removed from each file.
61
+
62
+ For example:
63
+ ```
64
+ Data Clean Complete
65
+ ===================
66
+ Removed {total} artifacts:
67
+ - pheromones.json: {N} test signals
68
+ - QUEEN.md: {N} test entries
69
+ - learning-observations.json: {N} test observations
70
+ - midden.json: {N} test entries
71
+ - spawn-tree.txt: {N} test worker lines
72
+ - constraints.json: {N} test focus entries
73
+
74
+ Run /ant:status to verify colony state.
75
+ ```
76
+
77
+
@@ -1,8 +1,15 @@
1
+ <!-- Generated from .aether/commands/dream.yaml - DO NOT EDIT DIRECTLY -->
1
2
  ---
2
3
  name: ant:dream
3
4
  description: "💭🐜🌙🐜💭 The Dreamer - a philosophical wanderer that observes, imagines, and writes wisdom about the codebase"
4
5
  ---
5
6
 
7
+ ### Step -1: Normalize Arguments
8
+
9
+ Run: `normalized_args=$(bash .aether/aether-utils.sh normalize-args "$@")`
10
+
11
+ This ensures arguments work correctly in both Claude Code and OpenCode. Use `$normalized_args` throughout this command.
12
+
6
13
  You are the **Dreamer Ant**. You are not a builder, not a reviewer, not a linter. You are the colony's philosopher, its creative conscience, its quiet observer who sees what others miss because they are too busy building.
7
14
 
8
15
  You wander the codebase like a monk walks a garden — not to fix, not to judge, but to *understand*. You notice the shapes of things. The rhymes between distant modules. The tensions that haven't surfaced yet. The beauty in an elegant abstraction. The quiet rot in a neglected corner. The unspoken assumptions that hold everything together — or that will, one day, tear it apart.
@@ -29,29 +36,12 @@ You wander the codebase like a monk walks a garden — not to fix, not to judge,
29
36
 
30
37
  ## Instructions
31
38
 
32
- ### Step -1: Normalize Arguments
33
-
34
- Run: `normalized_args=$(bash .aether/aether-utils.sh normalize-args "$@")`
35
-
36
- This ensures arguments work correctly in both Claude Code and OpenCode. Use `$normalized_args` throughout this command.
37
-
38
39
  ### Step 0: Parse Arguments
39
40
 
40
41
  Parse `$normalized_args`:
41
42
  - If contains `--no-visual`: set `visual_mode = false` (visual is ON by default)
42
43
  - Otherwise: set `visual_mode = true`
43
44
 
44
- ### Step 0.5: Initialize Visual Mode (if enabled)
45
-
46
- If `visual_mode` is true:
47
- ```bash
48
- # Generate session ID
49
- dream_id="dream-$(date +%s)"
50
-
51
- # Initialize swarm display
52
- bash .aether/aether-utils.sh swarm-display-init "$dream_id"
53
- bash .aether/aether-utils.sh swarm-display-update "Dreamer" "dreamer" "observing" "Wandering the codebase" "Colony" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "nursery" 0
54
- ```
55
45
 
56
46
  ### Step 1: Awaken — Load Context
57
47
 
@@ -72,11 +62,14 @@ Read these files in parallel to understand the world you're dreaming about:
72
62
  - Read the most recent dream file if one exists (to avoid repeating yourself)
73
63
 
74
64
  Display awakening:
65
+
66
+
75
67
  ```
76
68
  💭🐜🌙🐜💭 ═══════════════════════════════════════════════
77
69
  T H E D R E A M E R A W A K E N S
78
70
  ═══════════════════════════════════════════════ 💭🐜🌙🐜💭
79
71
 
72
+
80
73
  Colony: {goal}
81
74
  Phase: {current_phase}/{total_phases} — {phase_name}
82
75
  State: {state}
@@ -203,11 +196,14 @@ Concerns raised: {count}
203
196
 
204
197
  Output to the terminal:
205
198
 
199
+
200
+
206
201
  ```
207
202
  💭🐜🌙🐜💭 ═══════════════════════════════════════════════
208
203
  D R E A M C O M P L E T E
209
204
  ═══════════════════════════════════════════════ 💭🐜🌙🐜💭
210
205
 
206
+
211
207
  📓 {N} dreams recorded → .aether/dreams/{filename}.md
212
208
 
213
209
  {For each dream, one line:}
@@ -230,10 +226,12 @@ Colony status: /ant:status
230
226
 
231
227
  ### Step 6: Log Activity
232
228
 
229
+
233
230
  ```bash
234
231
  bash .aether/aether-utils.sh activity-log "DREAM" "Dreamer" "Dream session: {N} observations, {concerns} concerns, {pheromones} pheromone suggestions"
235
232
  ```
236
233
 
234
+
237
235
  ## Dream Categories
238
236
 
239
237
  Use these categories and their emoji consistently:
@@ -1,34 +1,23 @@
1
+ <!-- Generated from .aether/commands/entomb.yaml - DO NOT EDIT DIRECTLY -->
1
2
  ---
2
3
  name: ant:entomb
3
4
  description: "⚰️🐜⚰️ Entomb completed colony in chambers"
4
5
  ---
5
6
 
6
- You are the **Queen**. Archive the completed colony to chambers.
7
-
8
- ## Instructions
9
-
10
7
  ### Step -1: Normalize Arguments
11
8
 
12
9
  Run: `normalized_args=$(bash .aether/aether-utils.sh normalize-args "$@")`
13
10
 
14
11
  This ensures arguments work correctly in both Claude Code and OpenCode. Use `$normalized_args` throughout this command.
15
12
 
13
+ You are the **Queen**. Archive the completed colony to chambers.
14
+
15
+ ## Instructions
16
+
16
17
  Parse `$normalized_args`:
17
18
  - If contains `--no-visual`: set `visual_mode = false` (visual is ON by default)
18
19
  - Otherwise: set `visual_mode = true`
19
20
 
20
- ### Step 0: Initialize Visual Mode (if enabled)
21
-
22
- If `visual_mode` is true:
23
- ```bash
24
- # Generate session ID
25
- entomb_id="entomb-$(date +%s)"
26
-
27
- # Initialize swarm display
28
- bash .aether/aether-utils.sh swarm-display-init "$entomb_id"
29
- bash .aether/aether-utils.sh swarm-display-update "Queen" "prime" "excavating" "Entombing colony" "Colony" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "fungus_garden" 0
30
- ```
31
-
32
21
  ### Step 1: Read State
33
22
 
34
23
  Read `.aether/data/COLONY_STATE.json`.
@@ -43,6 +32,12 @@ Stop here.
43
32
 
44
33
  Extract: `goal`, `state`, `current_phase`, `plan.phases`, `memory.decisions`, `memory.phase_learnings`.
45
34
 
35
+ Read `colony_version` for display (default to 1 for backward compat with older colonies):
36
+ ```bash
37
+ colony_version=$(jq -r '.colony_version // 1' .aether/data/COLONY_STATE.json 2>/dev/null || echo 1)
38
+ [[ "$colony_version" =~ ^[0-9]+$ ]] || colony_version=1
39
+ ```
40
+
46
41
  **Precondition 1: All phases must be completed**
47
42
 
48
43
  Check if all phases in `plan.phases` have `status: "completed"`:
@@ -103,6 +98,7 @@ Display:
103
98
  ══════════════════════════════════════════════════ 🏺
104
99
 
105
100
  Goal: {goal}
101
+ Version: v{colony_version}
106
102
  Phases: {completed}/{total} completed
107
103
  Milestone: {milestone}
108
104
 
@@ -121,6 +117,51 @@ Entombment cancelled. Colony remains active.
121
117
  ```
122
118
  Stop here.
123
119
 
120
+ ### Step 4.5: Check XML Tools
121
+
122
+ XML archiving is required for entombment. Check tool availability before proceeding.
123
+ Uses `command -v xmllint` directly — consistent with seal.md's tool check.
124
+
125
+ ```bash
126
+ if command -v xmllint >/dev/null 2>&1; then
127
+ xmllint_available=true
128
+ else
129
+ xmllint_available=false
130
+ fi
131
+ ```
132
+
133
+ **If xmllint is NOT available:**
134
+
135
+ Ask the user:
136
+ ```
137
+ xmllint is not installed — XML archiving requires it.
138
+
139
+ Install now?
140
+ - macOS: xcode-select --install (or brew install libxml2)
141
+ - Linux: apt-get install libxml2-utils
142
+
143
+ Install xmllint? (yes/no)
144
+ ```
145
+
146
+ Use AskUserQuestion with yes/no options.
147
+
148
+ If yes:
149
+ - On macOS: Run `xcode-select --install` or `brew install libxml2`
150
+ - On Linux: Run `sudo apt-get install -y libxml2-utils`
151
+ - After install attempt, re-check: `command -v xmllint >/dev/null 2>&1`
152
+ - If still not available after install:
153
+ ```
154
+ xmllint installation failed. Cannot entomb without XML archiving.
155
+ Install xmllint manually and try again.
156
+ ```
157
+ Stop here.
158
+
159
+ If no:
160
+ ```
161
+ Entombment requires XML archiving. Install xmllint and try again.
162
+ ```
163
+ Stop here.
164
+
124
165
  ### Step 5: Create Chamber
125
166
 
126
167
  Generate chamber name:
@@ -165,6 +206,44 @@ bash .aether/aether-utils.sh chamber-create \
165
206
  '{learnings_json}'
166
207
  ```
167
208
 
209
+ ### Step 6.5: Export XML Archive (hard-stop)
210
+
211
+ Export combined XML archive to the chamber. This is a HARD REQUIREMENT — entomb fails if XML export fails.
212
+
213
+ ```bash
214
+ chamber_dir=".aether/chambers/$chamber_name"
215
+ xml_result=$(bash .aether/aether-utils.sh colony-archive-xml "$chamber_dir/colony-archive.xml" 2>&1)
216
+ xml_ok=$(echo "$xml_result" | jq -r '.ok // false' 2>/dev/null)
217
+
218
+ if [[ "$xml_ok" != "true" ]]; then
219
+ # HARD STOP — remove the chamber and abort
220
+ rm -rf "$chamber_dir"
221
+ echo "XML archive export failed. Colony NOT entombed."
222
+ echo ""
223
+ echo "Error: $(echo "$xml_result" | jq -r '.error // "Unknown error"' 2>/dev/null)"
224
+ echo ""
225
+ echo "The chamber has been cleaned up. Fix the XML issue and try again."
226
+ # Do NOT proceed to state reset or any further steps
227
+ fi
228
+ ```
229
+
230
+ If xml_ok is true, store for display:
231
+ ```bash
232
+ xml_pheromone_count=$(echo "$xml_result" | jq -r '.result.pheromone_count // 0' 2>/dev/null)
233
+ xml_exchange_count=$(find .aether/exchange -maxdepth 1 -name "*.xml" 2>/dev/null | wc -l | tr -d ' ')
234
+ xml_archive_line="XML Archive: colony-archive.xml (${xml_pheromone_count} signals) + ${xml_exchange_count} exchange file(s)"
235
+ ```
236
+
237
+ **Critical behavior:** If XML export fails, entomb STOPS. The chamber directory is removed (cleanup). The colony state is NOT reset. The user sees a clear error and can retry after fixing the issue.
238
+
239
+ **Copy exchange XML files to chamber (per D-04, D-05):**
240
+ ```bash
241
+ xml_archived=0
242
+ for xml_file in .aether/exchange/*.xml; do
243
+ [[ -f "$xml_file" ]] && cp "$xml_file" ".aether/chambers/$chamber_name/" && xml_archived=$((xml_archived + 1))
244
+ done
245
+ ```
246
+
168
247
  ### Step 7: Verify Chamber Integrity
169
248
 
170
249
  Run verification:
@@ -190,24 +269,25 @@ Backup current state:
190
269
  cp .aether/data/COLONY_STATE.json .aether/data/COLONY_STATE.json.bak
191
270
  ```
192
271
 
193
- Reset state while preserving memory (pheromones):
272
+ Reset state (including memory fields, already promoted to QUEEN.md):
194
273
  ```bash
195
- jq '
196
- .goal = null |
197
- .state = "IDLE" |
198
- .current_phase = 0 |
199
- .plan.phases = [] |
200
- .plan.generated_at = null |
201
- .plan.confidence = null |
202
- .build_started_at = null |
203
- .session_id = null |
204
- .initialized_at = null |
205
- .events = [] |
206
- .errors.records = [] |
207
- .errors.flagged_patterns = [] |
208
- .signals = [] |
209
- .graveyards = []
210
- ' .aether/data/COLONY_STATE.json.bak > .aether/data/COLONY_STATE.json
274
+ # Resolve jq template path (hub-first)
275
+ jq_template=""
276
+ for path in \
277
+ "$HOME/.aether/system/templates/colony-state-reset.jq.template" \
278
+ ".aether/templates/colony-state-reset.jq.template"; do
279
+ if [[ -f "$path" ]]; then
280
+ jq_template="$path"
281
+ break
282
+ fi
283
+ done
284
+
285
+ if [[ -z "$jq_template" ]]; then
286
+ echo "Template missing: colony-state-reset.jq.template. Run aether update to fix."
287
+ exit 1
288
+ fi
289
+
290
+ jq -f "$jq_template" .aether/data/COLONY_STATE.json.bak > .aether/data/COLONY_STATE.json
211
291
  ```
212
292
 
213
293
  Verify reset succeeded:
@@ -226,41 +306,31 @@ Remove backup after successful reset:
226
306
  rm -f .aether/data/COLONY_STATE.json.bak
227
307
  ```
228
308
 
229
- ### Step 8.5: Write Final Handoff
230
-
231
- After entombing the colony, write the final handoff documenting the archived colony:
232
-
309
+ Clean up exchange XML files (now archived in chamber per D-06):
233
310
  ```bash
234
- cat > .aether/HANDOFF.md << 'HANDOFF_EOF'
235
- # Colony Session — ENTOMBED
311
+ rm -f .aether/exchange/*.xml 2>/dev/null || true
312
+ ```
236
313
 
237
- ## ⚰️ Colony Archived
238
- **Status:** Entombed in Chambers — Colony work preserved
314
+ ### Step 8.5: Write Final Handoff
239
315
 
240
- ## Chamber Location
241
- .aether/chambers/{chamber_name}/
316
+ After entombing the colony, write the final handoff documenting the archived colony:
242
317
 
243
- ## Colony Summary
244
- - Goal: "{goal}"
245
- - Phases: {completed} completed of {total}
246
- - Milestone: {milestone}
247
- - Entombed At: {timestamp}
318
+ Resolve the handoff template path:
319
+ Check ~/.aether/system/templates/handoff.template.md first,
320
+ then .aether/templates/handoff.template.md.
248
321
 
249
- ## Chamber Contents
250
- - colony-state.json — Full colony state
251
- - manifest.json — Archive metadata
252
- - activity.log — Colony activity history
253
- - spawn-tree.txt — Worker spawn records
254
- - flags.json — Project flags (if existed)
322
+ If no template found: output "Template missing: handoff.template.md. Run aether update to fix." and stop.
255
323
 
256
- ## Session Note
257
- This colony has been entombed and the active state reset.
258
- The colony rests. Its learnings are preserved in the chamber.
324
+ Read the template file. Fill all {{PLACEHOLDER}} values:
325
+ - {{CHAMBER_NAME}} chamber_name
326
+ - {{GOAL}} goal
327
+ - {{PHASES_COMPLETED}} → phases completed count
328
+ - {{TOTAL_PHASES}} → total phases count
329
+ - {{MILESTONE}} → milestone
330
+ - {{ENTOMB_TIMESTAMP}} → current ISO-8601 UTC timestamp
259
331
 
260
- To start anew: /ant:lay-eggs "<new goal>"
261
- To explore chambers: /ant:tunnels
262
- HANDOFF_EOF
263
- ```
332
+ Remove the HTML comment lines at the top of the template.
333
+ Write the result to .aether/HANDOFF.md using the Write tool.
264
334
 
265
335
  This handoff serves as the record of the entombed colony.
266
336
 
@@ -271,13 +341,14 @@ This handoff serves as the record of the entombed colony.
271
341
  C O L O N Y E N T O M B E D
272
342
  ══════════════════════════════════════════════════ 🏺
273
343
 
274
- Colony archived successfully
344
+ Entombed v{colony_version}
275
345
 
276
346
  👑 Goal: {goal}
277
347
  📍 Phases: {completed} completed
278
348
  🏆 Milestone: {milestone}
279
349
 
280
350
  📦 Chamber: .aether/chambers/{chamber_name}/
351
+ {xml_archive_line}
281
352
 
282
353
  🐜 The colony rests. Its learnings are preserved.
283
354
 
@@ -0,0 +1,54 @@
1
+ <!-- Generated from .aether/commands/export-signals.yaml - DO NOT EDIT DIRECTLY -->
2
+ ---
3
+ name: ant:export-signals
4
+ description: "Export colony pheromone signals to portable XML format"
5
+ ---
6
+
7
+ ### Step -1: Normalize Arguments
8
+
9
+ Run: `normalized_args=$(bash .aether/aether-utils.sh normalize-args "$@")`
10
+
11
+ This ensures arguments work correctly in both Claude Code and OpenCode. Use `$normalized_args` throughout this command.
12
+
13
+ You are the **Queen**. Export colony pheromone signals to portable XML format.
14
+
15
+ ## Instructions
16
+
17
+ The optional output path is: `$normalized_args`
18
+
19
+ ### Step 1: Validate
20
+
21
+ Read `.aether/data/COLONY_STATE.json`.
22
+ If file missing or `goal: null` -> "No colony initialized. Run /ant:init first.", stop.
23
+
24
+ Parse `$normalized_args`:
25
+ - If a path is provided, use it as the output path.
26
+ - If empty, default to `.aether/exchange/pheromones.xml`.
27
+
28
+ ### Step 2: Export
29
+
30
+ Run using the Bash tool with description "Exporting pheromone signals to XML...":
31
+ ```bash
32
+ bash .aether/aether-utils.sh pheromone-export-xml "<output_path>"
33
+ ```
34
+
35
+ Parse the returned JSON:
36
+ - If `.ok` is `true`: extract `.result.path` and `.result.validated` (if present).
37
+ - If `.ok` is `false`: check `.error` for details. If error mentions `xmllint` or `E_FEATURE_UNAVAILABLE`, display: "XML export requires xmllint. Install with: xcode-select --install (macOS) or apt-get install libxml2-utils (Linux)." Otherwise display the error message and stop.
38
+
39
+ ### Step 3: Confirm
40
+
41
+
42
+
43
+ Output:
44
+ ```
45
+ Export colony pheromone signals to portable XML format
46
+
47
+ Path: <output_path>
48
+ Validated: <yes/no based on .result.validated>
49
+
50
+ Share this file with another colony using /ant:import-signals.
51
+ ```
52
+
53
+
54
+
@@ -1,28 +1,38 @@
1
+ <!-- Generated from .aether/commands/feedback.yaml - DO NOT EDIT DIRECTLY -->
1
2
  ---
2
3
  name: ant:feedback
3
4
  description: "💬🐜🧠🐜💬 Emit FEEDBACK signal to provide guidance to colony"
4
5
  ---
5
6
 
6
- You are the **Queen**. Emit a FEEDBACK signal.
7
-
8
- ## Instructions
9
-
10
7
  ### Step -1: Normalize Arguments
11
8
 
12
9
  Run: `normalized_args=$(bash .aether/aether-utils.sh normalize-args "$@")`
13
10
 
14
11
  This ensures arguments work correctly in both Claude Code and OpenCode. Use `$normalized_args` throughout this command.
15
12
 
13
+
14
+
15
+ You are the **Queen**. Emit a FEEDBACK signal.
16
+
17
+
18
+ ## Instructions
19
+
16
20
  The feedback message is: `$normalized_args`
17
21
 
18
22
  ### Step 1: Validate
23
+
19
24
  If `$normalized_args` empty -> show usage: `/ant:feedback <message>`, stop.
20
25
  If content > 500 chars -> "Signal content too long (max 500 chars)", stop.
21
26
 
22
- ### Step 2: Read + Update State
27
+
28
+
29
+ ### Step 2: Write Signal and Create Instinct
30
+
23
31
  Read `.aether/data/COLONY_STATE.json`.
24
32
  If `goal: null` -> "No colony initialized.", stop.
25
33
 
34
+
35
+
26
36
  Generate ISO-8601 timestamp.
27
37
 
28
38
  **Add signal:**
@@ -58,6 +68,12 @@ User feedback is high-value learning. Append to `memory.instincts`:
58
68
 
59
69
  Write COLONY_STATE.json.
60
70
 
71
+ **Write pheromone signal and update context:**
72
+ ```bash
73
+ bash .aether/aether-utils.sh pheromone-write FEEDBACK "$normalized_args" --strength 0.7 --reason "User feedback guidance" 2>/dev/null || true
74
+ bash .aether/aether-utils.sh context-update constraint feedback "$normalized_args" "user" 2>/dev/null || true
75
+ ```
76
+
61
77
  ### Step 3: Confirm
62
78
 
63
79
  Output header:
@@ -78,3 +94,6 @@ Then output:
78
94
 
79
95
  🐜 The colony will remember this guidance.
80
96
  ```
97
+
98
+
99
+