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.
- package/.aether/aether-utils.sh +5354 -0
- package/.aether/agents-claude/aether-ambassador.md +265 -0
- package/.aether/agents-claude/aether-archaeologist.md +327 -0
- package/.aether/agents-claude/aether-architect.md +236 -0
- package/.aether/agents-claude/aether-auditor.md +271 -0
- package/.aether/agents-claude/aether-builder.md +224 -0
- package/.aether/agents-claude/aether-chaos.md +269 -0
- package/.aether/agents-claude/aether-chronicler.md +305 -0
- package/.aether/agents-claude/aether-gatekeeper.md +330 -0
- package/.aether/agents-claude/aether-includer.md +374 -0
- package/.aether/agents-claude/aether-keeper.md +272 -0
- package/.aether/agents-claude/aether-measurer.md +322 -0
- package/.aether/agents-claude/aether-oracle.md +237 -0
- package/.aether/agents-claude/aether-probe.md +211 -0
- package/.aether/agents-claude/aether-queen.md +330 -0
- package/.aether/agents-claude/aether-route-setter.md +178 -0
- package/.aether/agents-claude/aether-sage.md +418 -0
- package/.aether/agents-claude/aether-scout.md +179 -0
- package/.aether/agents-claude/aether-surveyor-disciplines.md +417 -0
- package/.aether/agents-claude/aether-surveyor-nest.md +355 -0
- package/.aether/agents-claude/aether-surveyor-pathogens.md +289 -0
- package/.aether/agents-claude/aether-surveyor-provisions.md +360 -0
- package/.aether/agents-claude/aether-tracker.md +270 -0
- package/.aether/agents-claude/aether-watcher.md +280 -0
- package/.aether/agents-claude/aether-weaver.md +248 -0
- package/.aether/commands/archaeology.yaml +653 -0
- package/.aether/commands/build.yaml +1221 -0
- package/.aether/commands/chaos.yaml +653 -0
- package/.aether/commands/colonize.yaml +438 -0
- package/.aether/commands/continue.yaml +1484 -0
- package/.aether/commands/council.yaml +304 -0
- package/.aether/commands/data-clean.yaml +80 -0
- package/.aether/commands/dream.yaml +275 -0
- package/.aether/commands/entomb.yaml +863 -0
- package/.aether/commands/export-signals.yaml +64 -0
- package/.aether/commands/feedback.yaml +158 -0
- package/.aether/commands/flag.yaml +160 -0
- package/.aether/commands/flags.yaml +177 -0
- package/.aether/commands/focus.yaml +112 -0
- package/.aether/commands/help.yaml +167 -0
- package/.aether/commands/history.yaml +137 -0
- package/.aether/commands/import-signals.yaml +79 -0
- package/.aether/commands/init.yaml +469 -0
- package/.aether/commands/insert-phase.yaml +98 -0
- package/.aether/commands/interpret.yaml +285 -0
- package/.aether/commands/lay-eggs.yaml +224 -0
- package/.aether/commands/maturity.yaml +122 -0
- package/.aether/commands/memory-details.yaml +74 -0
- package/.aether/commands/migrate-state.yaml +174 -0
- package/.aether/commands/oracle.yaml +1224 -0
- package/.aether/commands/organize.yaml +446 -0
- package/.aether/commands/patrol.yaml +621 -0
- package/.aether/commands/pause-colony.yaml +424 -0
- package/.aether/commands/phase.yaml +124 -0
- package/.aether/commands/pheromones.yaml +153 -0
- package/.aether/commands/plan.yaml +1313 -0
- package/.aether/commands/preferences.yaml +63 -0
- package/.aether/commands/redirect.yaml +123 -0
- package/.aether/commands/resume-colony.yaml +373 -0
- package/.aether/commands/resume.yaml +398 -0
- package/.aether/commands/run.yaml +193 -0
- package/.aether/commands/seal.yaml +1205 -0
- package/.aether/commands/skill-create.yaml +337 -0
- package/.aether/commands/status.yaml +364 -0
- package/.aether/commands/swarm.yaml +352 -0
- package/.aether/commands/tunnels.yaml +814 -0
- package/.aether/commands/update.yaml +131 -0
- package/.aether/commands/verify-castes.yaml +159 -0
- package/.aether/commands/watch.yaml +454 -0
- package/.aether/docs/INCIDENT_TEMPLATE.md +32 -0
- package/.aether/docs/QUEEN-SYSTEM.md +211 -0
- package/.aether/docs/README.md +98 -0
- package/.aether/docs/caste-system.md +48 -0
- package/.aether/docs/command-playbooks/README.md +23 -0
- package/.aether/docs/command-playbooks/build-complete.md +349 -0
- package/.aether/docs/command-playbooks/build-context.md +282 -0
- package/.aether/docs/command-playbooks/build-full.md +1682 -0
- package/.aether/docs/command-playbooks/build-prep.md +283 -0
- package/.aether/docs/command-playbooks/build-verify.md +405 -0
- package/.aether/docs/command-playbooks/build-wave.md +749 -0
- package/.aether/docs/command-playbooks/continue-advance.md +524 -0
- package/.aether/docs/command-playbooks/continue-finalize.md +447 -0
- package/.aether/docs/command-playbooks/continue-full.md +1724 -0
- package/.aether/docs/command-playbooks/continue-gates.md +686 -0
- package/.aether/docs/command-playbooks/continue-verify.md +406 -0
- package/.aether/docs/context-continuity.md +84 -0
- package/{runtime → .aether/docs/disciplines}/DISCIPLINES.md +13 -11
- package/.aether/docs/error-codes.md +268 -0
- package/.aether/docs/known-issues.md +94 -0
- package/{runtime → .aether}/docs/pheromones.md +86 -6
- package/.aether/docs/plans/pheromone-display-plan.md +257 -0
- package/.aether/docs/queen-commands.md +98 -0
- package/.aether/docs/source-of-truth-map.md +132 -0
- package/.aether/docs/xml-utilities.md +47 -0
- package/{runtime → .aether}/exchange/pheromone-xml.sh +2 -1
- package/{runtime → .aether}/exchange/registry-xml.sh +7 -3
- package/{runtime → .aether}/exchange/wisdom-xml.sh +11 -4
- package/.aether/rules/aether-colony.md +144 -0
- package/.aether/schemas/example-prompt-builder.xml +234 -0
- package/.aether/scripts/incident-test-add.sh +47 -0
- package/.aether/scripts/weekly-audit.sh +79 -0
- package/.aether/skills/.index.json +649 -0
- package/.aether/skills/colony/.manifest.json +16 -0
- package/.aether/skills/colony/build-discipline/SKILL.md +78 -0
- package/.aether/skills/colony/colony-interaction/SKILL.md +56 -0
- package/.aether/skills/colony/colony-lifecycle/SKILL.md +77 -0
- package/.aether/skills/colony/colony-visuals/SKILL.md +112 -0
- package/.aether/skills/colony/context-management/SKILL.md +80 -0
- package/.aether/skills/colony/error-presentation/SKILL.md +99 -0
- package/.aether/skills/colony/pheromone-protocol/SKILL.md +79 -0
- package/.aether/skills/colony/pheromone-visibility/SKILL.md +81 -0
- package/.aether/skills/colony/state-safety/SKILL.md +84 -0
- package/.aether/skills/colony/worker-priming/SKILL.md +82 -0
- package/.aether/skills/domain/.manifest.json +24 -0
- package/.aether/skills/domain/README.md +33 -0
- package/.aether/skills/domain/django/SKILL.md +49 -0
- package/.aether/skills/domain/docker/SKILL.md +52 -0
- package/.aether/skills/domain/golang/SKILL.md +52 -0
- package/.aether/skills/domain/graphql/SKILL.md +51 -0
- package/.aether/skills/domain/html-css/SKILL.md +48 -0
- package/.aether/skills/domain/nextjs/SKILL.md +45 -0
- package/.aether/skills/domain/nodejs/SKILL.md +53 -0
- package/.aether/skills/domain/postgresql/SKILL.md +53 -0
- package/.aether/skills/domain/prisma/SKILL.md +59 -0
- package/.aether/skills/domain/python/SKILL.md +50 -0
- package/.aether/skills/domain/rails/SKILL.md +52 -0
- package/.aether/skills/domain/react/SKILL.md +45 -0
- package/.aether/skills/domain/rest-api/SKILL.md +58 -0
- package/.aether/skills/domain/svelte/SKILL.md +47 -0
- package/.aether/skills/domain/tailwind/SKILL.md +45 -0
- package/.aether/skills/domain/testing/SKILL.md +53 -0
- package/.aether/skills/domain/typescript/SKILL.md +58 -0
- package/.aether/skills/domain/vue/SKILL.md +49 -0
- package/.aether/templates/QUEEN.md.template +61 -0
- package/.aether/templates/colony-state-reset.jq.template +23 -0
- package/.aether/templates/colony-state.template.json +39 -0
- package/.aether/templates/constraints.template.json +9 -0
- package/.aether/templates/crowned-anthill.template.md +36 -0
- package/.aether/templates/handoff-build-error.template.md +30 -0
- package/.aether/templates/handoff-build-success.template.md +39 -0
- package/.aether/templates/handoff.template.md +40 -0
- package/.aether/templates/learning-observations.template.json +6 -0
- package/.aether/templates/midden.template.json +13 -0
- package/.aether/templates/pheromones.template.json +6 -0
- package/.aether/templates/session.template.json +9 -0
- package/{runtime → .aether}/utils/atomic-write.sh +68 -22
- package/{runtime → .aether}/utils/chamber-compare.sh +23 -10
- package/.aether/utils/chamber-utils.sh +440 -0
- package/.aether/utils/emoji-audit.sh +166 -0
- package/{runtime → .aether}/utils/error-handler.sh +34 -8
- package/.aether/utils/file-lock.sh +313 -0
- package/.aether/utils/flag.sh +267 -0
- package/.aether/utils/hive.sh +572 -0
- package/.aether/utils/learning.sh +1928 -0
- package/.aether/utils/midden.sh +342 -0
- package/.aether/utils/oracle/oracle.md +168 -0
- package/.aether/utils/oracle/oracle.sh +1023 -0
- package/.aether/utils/pheromone.sh +2029 -0
- package/.aether/utils/queen.sh +1698 -0
- package/.aether/utils/scan.sh +860 -0
- package/.aether/utils/semantic-cli.sh +415 -0
- package/.aether/utils/session.sh +552 -0
- package/.aether/utils/skills.sh +509 -0
- package/.aether/utils/spawn-tree.sh +260 -0
- package/.aether/utils/spawn.sh +260 -0
- package/.aether/utils/state-api.sh +199 -0
- package/{runtime → .aether}/utils/state-loader.sh +8 -6
- package/.aether/utils/suggest.sh +611 -0
- package/{runtime → .aether}/utils/swarm-display.sh +10 -1
- package/.aether/utils/swarm.sh +1004 -0
- package/{runtime → .aether}/utils/watch-spawn-tree.sh +11 -2
- package/{runtime → .aether}/utils/xml-compose.sh +9 -3
- package/.aether/utils/xml-convert.sh +277 -0
- package/{runtime → .aether}/utils/xml-core.sh +5 -9
- package/.aether/utils/xml-query.sh +201 -0
- package/.aether/utils/xml-utils.sh +110 -0
- package/{runtime → .aether}/workers.md +97 -81
- package/.claude/agents/ant/aether-ambassador.md +265 -0
- package/.claude/agents/ant/aether-archaeologist.md +327 -0
- package/.claude/agents/ant/aether-architect.md +236 -0
- package/.claude/agents/ant/aether-auditor.md +271 -0
- package/.claude/agents/ant/aether-builder.md +224 -0
- package/.claude/agents/ant/aether-chaos.md +269 -0
- package/.claude/agents/ant/aether-chronicler.md +305 -0
- package/.claude/agents/ant/aether-gatekeeper.md +330 -0
- package/.claude/agents/ant/aether-includer.md +374 -0
- package/.claude/agents/ant/aether-keeper.md +272 -0
- package/.claude/agents/ant/aether-measurer.md +322 -0
- package/.claude/agents/ant/aether-oracle.md +237 -0
- package/.claude/agents/ant/aether-probe.md +211 -0
- package/.claude/agents/ant/aether-queen.md +330 -0
- package/.claude/agents/ant/aether-route-setter.md +178 -0
- package/.claude/agents/ant/aether-sage.md +418 -0
- package/.claude/agents/ant/aether-scout.md +179 -0
- package/.claude/agents/ant/aether-surveyor-disciplines.md +417 -0
- package/.claude/agents/ant/aether-surveyor-nest.md +355 -0
- package/.claude/agents/ant/aether-surveyor-pathogens.md +289 -0
- package/.claude/agents/ant/aether-surveyor-provisions.md +360 -0
- package/.claude/agents/ant/aether-tracker.md +270 -0
- package/.claude/agents/ant/aether-watcher.md +280 -0
- package/.claude/agents/ant/aether-weaver.md +248 -0
- package/.claude/commands/ant/archaeology.md +16 -14
- package/.claude/commands/ant/build.md +43 -1028
- package/.claude/commands/ant/chaos.md +19 -23
- package/.claude/commands/ant/colonize.md +52 -31
- package/.claude/commands/ant/continue.md +40 -1016
- package/.claude/commands/ant/council.md +21 -18
- package/.claude/commands/ant/data-clean.md +81 -0
- package/.claude/commands/ant/dream.md +27 -15
- package/.claude/commands/ant/entomb.md +317 -225
- package/.claude/commands/ant/export-signals.md +57 -0
- package/.claude/commands/ant/feedback.md +48 -26
- package/.claude/commands/ant/flag.md +30 -10
- package/.claude/commands/ant/flags.md +34 -12
- package/.claude/commands/ant/focus.md +45 -19
- package/.claude/commands/ant/help.md +50 -8
- package/.claude/commands/ant/history.md +13 -0
- package/.claude/commands/ant/import-signals.md +71 -0
- package/.claude/commands/ant/init.md +345 -194
- package/.claude/commands/ant/insert-phase.md +101 -0
- package/.claude/commands/ant/interpret.md +26 -4
- package/.claude/commands/ant/lay-eggs.md +184 -127
- package/.claude/commands/ant/maturity.md +32 -11
- package/.claude/commands/ant/memory-details.md +77 -0
- package/.claude/commands/ant/migrate-state.md +20 -2
- package/.claude/commands/ant/oracle.md +337 -74
- package/.claude/commands/ant/organize.md +39 -25
- package/.claude/commands/ant/patrol.md +620 -0
- package/.claude/commands/ant/pause-colony.md +23 -27
- package/.claude/commands/ant/phase.md +40 -42
- package/.claude/commands/ant/pheromones.md +156 -0
- package/.claude/commands/ant/plan.md +185 -51
- package/.claude/commands/ant/preferences.md +65 -0
- package/.claude/commands/ant/redirect.md +45 -30
- package/.claude/commands/ant/resume-colony.md +51 -27
- package/.claude/commands/ant/resume.md +314 -94
- package/.claude/commands/ant/run.md +195 -0
- package/.claude/commands/ant/seal.md +650 -221
- package/.claude/commands/ant/skill-create.md +286 -0
- package/.claude/commands/ant/status.md +196 -31
- package/.claude/commands/ant/swarm.md +16 -46
- package/.claude/commands/ant/tunnels.md +280 -105
- package/.claude/commands/ant/update.md +73 -89
- package/.claude/commands/ant/verify-castes.md +100 -42
- package/.claude/commands/ant/watch.md +14 -12
- package/.opencode/agents/aether-ambassador.md +63 -20
- package/.opencode/agents/aether-archaeologist.md +29 -12
- package/.opencode/agents/aether-architect.md +103 -36
- package/.opencode/agents/aether-auditor.md +51 -18
- package/.opencode/agents/aether-builder.md +70 -20
- package/.opencode/agents/aether-chaos.md +29 -12
- package/.opencode/agents/aether-chronicler.md +60 -18
- package/.opencode/agents/aether-gatekeeper.md +27 -18
- package/.opencode/agents/aether-includer.md +27 -18
- package/.opencode/agents/aether-keeper.md +89 -18
- package/.opencode/agents/aether-measurer.md +27 -18
- package/.opencode/agents/aether-oracle.md +137 -0
- package/.opencode/agents/aether-probe.md +60 -18
- package/.opencode/agents/aether-queen.md +172 -24
- package/.opencode/agents/aether-route-setter.md +57 -12
- package/.opencode/agents/aether-sage.md +26 -18
- package/.opencode/agents/aether-scout.md +28 -20
- package/.opencode/agents/aether-surveyor-disciplines.md +59 -2
- package/.opencode/agents/aether-surveyor-nest.md +59 -2
- package/.opencode/agents/aether-surveyor-pathogens.md +57 -2
- package/.opencode/agents/aether-surveyor-provisions.md +59 -2
- package/.opencode/agents/aether-tracker.md +64 -18
- package/.opencode/agents/aether-watcher.md +66 -19
- package/.opencode/agents/aether-weaver.md +61 -18
- package/.opencode/commands/ant/archaeology.md +7 -14
- package/.opencode/commands/ant/build.md +437 -257
- package/.opencode/commands/ant/chaos.md +7 -24
- package/.opencode/commands/ant/colonize.md +8 -17
- package/.opencode/commands/ant/continue.md +661 -142
- package/.opencode/commands/ant/council.md +11 -22
- package/.opencode/commands/ant/data-clean.md +77 -0
- package/.opencode/commands/ant/dream.md +15 -17
- package/.opencode/commands/ant/entomb.md +133 -62
- package/.opencode/commands/ant/export-signals.md +54 -0
- package/.opencode/commands/ant/feedback.md +24 -5
- package/.opencode/commands/ant/flag.md +16 -4
- package/.opencode/commands/ant/flags.md +24 -10
- package/.opencode/commands/ant/focus.md +22 -5
- package/.opencode/commands/ant/help.md +41 -8
- package/.opencode/commands/ant/history.md +9 -0
- package/.opencode/commands/ant/import-signals.md +68 -0
- package/.opencode/commands/ant/init.md +374 -167
- package/.opencode/commands/ant/insert-phase.md +107 -0
- package/.opencode/commands/ant/interpret.md +16 -0
- package/.opencode/commands/ant/lay-eggs.md +184 -112
- package/.opencode/commands/ant/maturity.md +18 -2
- package/.opencode/commands/ant/memory-details.md +83 -0
- package/.opencode/commands/ant/migrate-state.md +12 -0
- package/.opencode/commands/ant/oracle.md +322 -67
- package/.opencode/commands/ant/organize.md +18 -16
- package/.opencode/commands/ant/patrol.md +626 -0
- package/.opencode/commands/ant/pause-colony.md +12 -29
- package/.opencode/commands/ant/phase.md +30 -40
- package/.opencode/commands/ant/pheromones.md +162 -0
- package/.opencode/commands/ant/plan.md +184 -56
- package/.opencode/commands/ant/preferences.md +71 -0
- package/.opencode/commands/ant/redirect.md +22 -5
- package/.opencode/commands/ant/resume-colony.md +38 -27
- package/.opencode/commands/ant/resume.md +385 -0
- package/.opencode/commands/ant/run.md +201 -0
- package/.opencode/commands/ant/seal.md +259 -45
- package/.opencode/commands/ant/skill-create.md +63 -0
- package/.opencode/commands/ant/status.md +135 -31
- package/.opencode/commands/ant/swarm.md +3 -345
- package/.opencode/commands/ant/tunnels.md +152 -9
- package/.opencode/commands/ant/update.md +70 -91
- package/.opencode/commands/ant/verify-castes.md +96 -42
- package/.opencode/commands/ant/watch.md +7 -0
- package/CHANGELOG.md +356 -0
- package/README.md +203 -573
- package/bin/cli.js +455 -527
- package/bin/generate-commands.js +186 -0
- package/bin/generate-commands.sh +127 -88
- package/bin/lib/init.js +13 -3
- package/bin/lib/spawn-logger.js +0 -15
- package/bin/lib/update-transaction.js +392 -140
- package/bin/npx-install.js +178 -0
- package/bin/sync-to-runtime.sh +5 -137
- package/bin/validate-package.sh +166 -0
- package/package.json +14 -7
- package/.opencode/agents/aether-guardian.md +0 -107
- package/.opencode/agents/workers.md +0 -1034
- package/bin/lib/model-profiles.js +0 -445
- package/bin/lib/model-verify.js +0 -288
- package/bin/lib/proxy-health.js +0 -253
- package/bin/lib/telemetry.js +0 -441
- package/runtime/CONTEXT.md +0 -160
- package/runtime/QUEEN_ANT_ARCHITECTURE.md +0 -402
- package/runtime/aether-utils.sh +0 -3879
- package/runtime/data/signatures.json +0 -41
- package/runtime/docs/AETHER-2.0-IMPLEMENTATION-PLAN.md +0 -1343
- package/runtime/docs/AETHER-PHEROMONE-SYSTEM-MASTER-SPEC.md +0 -2642
- package/runtime/docs/PHEROMONE-INJECTION.md +0 -240
- package/runtime/docs/PHEROMONE-INTEGRATION.md +0 -192
- package/runtime/docs/PHEROMONE-SYSTEM-DESIGN.md +0 -426
- package/runtime/docs/README.md +0 -94
- package/runtime/docs/VISUAL-OUTPUT-SPEC.md +0 -219
- package/runtime/docs/biological-reference.md +0 -272
- package/runtime/docs/codebase-review.md +0 -399
- package/runtime/docs/command-sync.md +0 -164
- package/runtime/docs/constraints.md +0 -116
- package/runtime/docs/implementation-learnings.md +0 -89
- package/runtime/docs/known-issues.md +0 -217
- package/runtime/docs/namespace.md +0 -148
- package/runtime/docs/pathogen-schema-example.json +0 -36
- package/runtime/docs/pathogen-schema.md +0 -111
- package/runtime/docs/planning-discipline.md +0 -159
- package/runtime/docs/progressive-disclosure.md +0 -184
- package/runtime/lib/queen-utils.sh +0 -729
- package/runtime/model-profiles.yaml +0 -100
- package/runtime/planning.md +0 -159
- package/runtime/recover.sh +0 -136
- package/runtime/templates/QUEEN.md.template +0 -79
- package/runtime/utils/chamber-utils.sh +0 -285
- package/runtime/utils/file-lock.sh +0 -122
- package/runtime/utils/spawn-tree.sh +0 -428
- package/runtime/utils/spawn-with-model.sh +0 -56
- package/runtime/utils/xml-utils.sh +0 -2196
- package/runtime/workers-new-castes.md +0 -516
- /package/{runtime → .aether/docs/disciplines}/coding-standards.md +0 -0
- /package/{runtime → .aether/docs/disciplines}/debugging.md +0 -0
- /package/{runtime → .aether/docs/disciplines}/learning.md +0 -0
- /package/{runtime → .aether/docs/disciplines}/tdd.md +0 -0
- /package/{runtime → .aether/docs/disciplines}/verification-loop.md +0 -0
- /package/{runtime → .aether/docs/disciplines}/verification.md +0 -0
- /package/{runtime → .aether}/schemas/aether-types.xsd +0 -0
- /package/{runtime → .aether}/schemas/colony-registry.xsd +0 -0
- /package/{runtime → .aether}/schemas/pheromone.xsd +0 -0
- /package/{runtime → .aether}/schemas/prompt.xsd +0 -0
- /package/{runtime → .aether}/schemas/queen-wisdom.xsd +0 -0
- /package/{runtime → .aether}/schemas/worker-priming.xsd +0 -0
- /package/{runtime → .aether}/utils/colorize-log.sh +0 -0
- /package/{runtime → .aether}/utils/queen-to-md.xsl +0 -0
|
@@ -1,15 +1,22 @@
|
|
|
1
|
+
<!-- Generated from .aether/commands/status.yaml - DO NOT EDIT DIRECTLY -->
|
|
1
2
|
---
|
|
2
3
|
name: ant:status
|
|
3
4
|
description: "📈🐜🏘️🐜📈 Show colony status at a glance"
|
|
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 **Queen**. Show colony status.
|
|
7
14
|
|
|
8
15
|
## Instructions
|
|
9
16
|
|
|
10
17
|
### Step 0: Version Check (Non-blocking)
|
|
11
18
|
|
|
12
|
-
Run
|
|
19
|
+
Run: `bash .aether/aether-utils.sh version-check-cached 2>/dev/null || true`
|
|
13
20
|
|
|
14
21
|
If the command succeeds and the JSON result contains a non-empty string, display it as a one-line notice. Proceed regardless of outcome.
|
|
15
22
|
|
|
@@ -51,7 +58,7 @@ If `version` field is missing, "1.0", or "2.0":
|
|
|
51
58
|
|
|
52
59
|
### Step 1.5: Load State and Show Resumption Context
|
|
53
60
|
|
|
54
|
-
Run
|
|
61
|
+
Run: `bash .aether/aether-utils.sh load-state`
|
|
55
62
|
|
|
56
63
|
If successful and goal is not null:
|
|
57
64
|
1. Extract current_phase from state
|
|
@@ -75,22 +82,44 @@ Run: `bash .aether/aether-utils.sh unload-state` to release lock.
|
|
|
75
82
|
|
|
76
83
|
From state, extract:
|
|
77
84
|
|
|
85
|
+
### Step 2.4: Survey Freshness (Advisory)
|
|
86
|
+
|
|
87
|
+
Run:
|
|
88
|
+
```bash
|
|
89
|
+
survey_docs=$(ls -1 .aether/data/survey/*.md 2>/dev/null | wc -l | tr -d ' ')
|
|
90
|
+
survey_latest=$(ls -t .aether/data/survey/*.md 2>/dev/null | head -1)
|
|
91
|
+
if [[ -n "$survey_latest" ]]; then
|
|
92
|
+
now_epoch=$(date +%s)
|
|
93
|
+
modified_epoch=$(stat -f %m "$survey_latest" 2>/dev/null || stat -c %Y "$survey_latest" 2>/dev/null || echo 0)
|
|
94
|
+
survey_age_days=$(( (now_epoch - modified_epoch) / 86400 ))
|
|
95
|
+
else
|
|
96
|
+
survey_age_days=-1
|
|
97
|
+
fi
|
|
98
|
+
echo "survey_docs=$survey_docs"
|
|
99
|
+
echo "survey_age_days=$survey_age_days"
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Interpretation:
|
|
103
|
+
- If `survey_docs == 0`: `survey_status = "missing"`
|
|
104
|
+
- If `survey_age_days > 14`: `survey_status = "stale"`
|
|
105
|
+
- Otherwise: `survey_status = "fresh"`
|
|
106
|
+
|
|
78
107
|
### Step 2.5: Gather Dream Information
|
|
79
108
|
|
|
80
|
-
Run
|
|
109
|
+
Run: `ls -1 .aether/dreams/*.md 2>/dev/null | wc -l`
|
|
81
110
|
|
|
82
111
|
Capture:
|
|
83
112
|
- Dream count: number of .md files in .aether/dreams/
|
|
84
113
|
- Latest dream: most recent file by name (files are timestamped: YYYY-MM-DD-HHMM.md)
|
|
85
114
|
|
|
86
|
-
To get latest dream timestamp:
|
|
115
|
+
To get latest dream timestamp, Run:
|
|
87
116
|
```bash
|
|
88
117
|
ls -1 .aether/dreams/*.md 2>/dev/null | sort | tail -1 | sed 's/.*\/\([0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}\)-\([0-9]\{4\}\).*/\1 \2/'
|
|
89
118
|
```
|
|
90
119
|
|
|
91
120
|
Format the timestamp as: YYYY-MM-DD HH:MM
|
|
92
121
|
|
|
93
|
-
|
|
122
|
+
|
|
94
123
|
|
|
95
124
|
**Phase info:**
|
|
96
125
|
- Current phase number: `current_phase`
|
|
@@ -114,6 +143,15 @@ Extract:
|
|
|
114
143
|
- Issues count (high, warnings)
|
|
115
144
|
- Notes count (low, informational)
|
|
116
145
|
|
|
146
|
+
**Escalation state:**
|
|
147
|
+
Count escalated flags by checking for blocker flags with source "escalation":
|
|
148
|
+
|
|
149
|
+
Run:
|
|
150
|
+
```bash
|
|
151
|
+
escalated_count=$(bash .aether/aether-utils.sh flag-list --type blocker 2>/dev/null | jq '[.result.flags[] | select(.source == "escalation")] | length' 2>/dev/null || echo "0")
|
|
152
|
+
echo "escalated_count=$escalated_count"
|
|
153
|
+
```
|
|
154
|
+
|
|
117
155
|
**Instincts:**
|
|
118
156
|
From `memory.instincts`:
|
|
119
157
|
- Total count: `instincts.length`
|
|
@@ -129,7 +167,7 @@ From `memory.instincts`:
|
|
|
129
167
|
|
|
130
168
|
### Step 2.6: Detect Milestone
|
|
131
169
|
|
|
132
|
-
Run
|
|
170
|
+
Run: `bash .aether/aether-utils.sh milestone-detect`
|
|
133
171
|
|
|
134
172
|
Extract from JSON result:
|
|
135
173
|
- `milestone`: Current milestone name
|
|
@@ -137,6 +175,54 @@ Extract from JSON result:
|
|
|
137
175
|
- `phases_completed`: Number of completed phases
|
|
138
176
|
- `total_phases`: Total phases in plan
|
|
139
177
|
|
|
178
|
+
### Step 2.8: Load Memory Health Metrics
|
|
179
|
+
|
|
180
|
+
Run:
|
|
181
|
+
```bash
|
|
182
|
+
bash .aether/aether-utils.sh memory-metrics
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Extract from JSON result:
|
|
186
|
+
- wisdom.total
|
|
187
|
+
- pending.total
|
|
188
|
+
- recent_failures.count
|
|
189
|
+
- last_activity.queen_md_updated
|
|
190
|
+
- last_activity.learning_captured
|
|
191
|
+
|
|
192
|
+
Format timestamps for display (YYYY-MM-DD HH:MM).
|
|
193
|
+
|
|
194
|
+
### Step 2.7: Generate Progress Bars
|
|
195
|
+
|
|
196
|
+
Calculate progress metrics and generate visual bars.
|
|
197
|
+
|
|
198
|
+
Run:
|
|
199
|
+
```bash
|
|
200
|
+
current_phase=$(jq -r '.current_phase // 0' .aether/data/COLONY_STATE.json)
|
|
201
|
+
total_phases=$(jq -r '.plan.phases | length' .aether/data/COLONY_STATE.json)
|
|
202
|
+
|
|
203
|
+
# Calculate task progress in current phase
|
|
204
|
+
if [[ "$current_phase" -gt 0 && "$current_phase" -le "$total_phases" ]]; then
|
|
205
|
+
phase_idx=$((current_phase - 1))
|
|
206
|
+
tasks_completed=$(jq -r ".plan.phases[$phase_idx].tasks // [] | map(select(.status == \"completed\")) | length" .aether/data/COLONY_STATE.json)
|
|
207
|
+
tasks_total=$(jq -r ".plan.phases[$phase_idx].tasks // [] | length" .aether/data/COLONY_STATE.json)
|
|
208
|
+
phase_name=$(jq -r ".plan.phases[$phase_idx].name // \"Unnamed\"" .aether/data/COLONY_STATE.json)
|
|
209
|
+
else
|
|
210
|
+
tasks_completed=0
|
|
211
|
+
tasks_total=0
|
|
212
|
+
phase_name="No plan created"
|
|
213
|
+
fi
|
|
214
|
+
|
|
215
|
+
# Generate progress bars
|
|
216
|
+
phase_bar=$(bash .aether/aether-utils.sh generate-progress-bar "$current_phase" "$total_phases" 20)
|
|
217
|
+
task_bar=$(bash .aether/aether-utils.sh generate-progress-bar "$tasks_completed" "$tasks_total" 20)
|
|
218
|
+
|
|
219
|
+
echo "phase_bar=$phase_bar"
|
|
220
|
+
echo "task_bar=$task_bar"
|
|
221
|
+
echo "phase_name=$phase_name"
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
Store `phase_bar`, `task_bar`, and `phase_name` values for display in Step 3.
|
|
225
|
+
|
|
140
226
|
### Step 3: Display
|
|
141
227
|
|
|
142
228
|
Output format:
|
|
@@ -146,30 +232,38 @@ Output format:
|
|
|
146
232
|
(o o) AETHER COLONY
|
|
147
233
|
| O | Status Report
|
|
148
234
|
`-`
|
|
149
|
-
|
|
235
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
150
236
|
|
|
151
237
|
👑 Goal: <goal (truncated to 60 chars)>
|
|
152
238
|
|
|
153
|
-
📍
|
|
154
|
-
|
|
239
|
+
📍 Progress
|
|
240
|
+
Phase: [████████░░░░░░░░░░░░] <N>/<M> phases
|
|
241
|
+
Tasks: [████████████████░░░░] <completed>/<total> tasks in Phase <N>
|
|
155
242
|
|
|
156
243
|
🎯 Focus: <focus_count> areas | 🚫 Avoid: <constraints_count> patterns
|
|
157
244
|
🧠 Instincts: <total> learned (<high_confidence> strong)
|
|
158
245
|
🚩 Flags: <blockers> blockers | <issues> issues | <notes> notes
|
|
246
|
+
{if escalated_count > 0:}
|
|
247
|
+
⚠️ Escalated: {escalated_count} task(s) awaiting your decision
|
|
248
|
+
{end if}
|
|
159
249
|
🏆 Milestone: <milestone> (<version>)
|
|
250
|
+
|
|
160
251
|
💭 Dreams: <dream_count> recorded (latest: <latest_dream>)
|
|
252
|
+
🗺️ Survey: <survey_docs> docs (<survey_age_days>d old, <fresh|stale|missing>)
|
|
253
|
+
|
|
254
|
+
📚 Memory Health
|
|
255
|
+
┌─────────────────┬────────┬─────────────────────────────┐
|
|
256
|
+
│ Metric │ Count │ Last Updated │
|
|
257
|
+
├─────────────────┼────────┼─────────────────────────────┤
|
|
258
|
+
│ Wisdom Entries │ {wisdom_total:>6} │ {queen_updated} │
|
|
259
|
+
│ Pending Promos │ {pending_total:>6} │ {learning_updated} │
|
|
260
|
+
│ Recent Failures │ {failures_count:>6} │ {last_failure} │
|
|
261
|
+
└─────────────────┴────────┴─────────────────────────────┘
|
|
161
262
|
|
|
162
263
|
State: <state>
|
|
163
|
-
Next: <suggested_command> <phase_context>
|
|
164
264
|
```
|
|
165
265
|
|
|
166
|
-
|
|
167
|
-
- READY → `Next: /ant:build 3 Phase 3: Add Authentication`
|
|
168
|
-
- EXECUTING → `Next: /ant:continue Phase 3: Add Authentication`
|
|
169
|
-
- PLANNING → `Next: /ant:plan`
|
|
170
|
-
- IDLE → `Next: /ant:init`
|
|
171
|
-
|
|
172
|
-
Look up the phase name from `plan.phases[current_phase].name` and append it.
|
|
266
|
+
Use the `phase_bar` and `task_bar` values computed in Step 2.7 for the actual bar characters and counts.
|
|
173
267
|
|
|
174
268
|
**If instincts exist, also show top 3:**
|
|
175
269
|
```
|
|
@@ -179,23 +273,33 @@ Look up the phase name from `plan.phases[current_phase].name` and append it.
|
|
|
179
273
|
[0.7] 🐜 debugging: Trace to root cause first
|
|
180
274
|
```
|
|
181
275
|
|
|
182
|
-
**Suggested command logic (use actual values, not templates):**
|
|
183
|
-
|
|
184
|
-
Calculate `next_phase = current_phase + 1` from state.
|
|
185
|
-
|
|
186
|
-
Generate the suggested command based on colony state:
|
|
187
|
-
- IDLE -> `/ant:init`
|
|
188
|
-
- READY -> `/ant:build {next_phase}` (e.g., if current_phase is 2, output `/ant:build 3`)
|
|
189
|
-
- EXECUTING -> `/ant:continue`
|
|
190
|
-
- PLANNING -> `/ant:plan`
|
|
191
|
-
|
|
192
|
-
The output must be a copy-pasteable command with real numbers, not placeholders.
|
|
193
|
-
|
|
194
276
|
**Dream display:**
|
|
195
277
|
- If no dreams exist: `💭 Dreams: None recorded`
|
|
196
278
|
- If dreams exist: `💭 Dreams: <count> recorded (latest: YYYY-MM-DD HH:MM)`
|
|
197
279
|
|
|
280
|
+
**Memory Health display:**
|
|
281
|
+
- If memory-metrics returns empty/null values, show:
|
|
282
|
+
```
|
|
283
|
+
📚 Memory Health
|
|
284
|
+
No memory data available. Colony wisdom will accumulate as you complete phases.
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
|
|
198
289
|
**Edge cases:**
|
|
199
|
-
- No phases yet:
|
|
200
|
-
- No tasks in phase:
|
|
290
|
+
- No phases yet: show `[░░░░░░░░░░░░░░░░░░░░] 0/0 phases`
|
|
291
|
+
- No tasks in phase: show `[░░░░░░░░░░░░░░░░░░░░] 0/0 tasks in Phase 0`
|
|
201
292
|
- No constraints file: "Constraints: 0 focus, 0 avoid"
|
|
293
|
+
|
|
294
|
+
**At the end of the output, generate the Next Up block:**
|
|
295
|
+
|
|
296
|
+
Run:
|
|
297
|
+
```bash
|
|
298
|
+
state=$(jq -r '.state // "IDLE"' .aether/data/COLONY_STATE.json)
|
|
299
|
+
current_phase=$(jq -r '.current_phase // 0' .aether/data/COLONY_STATE.json)
|
|
300
|
+
total_phases=$(jq -r '.plan.phases | length' .aether/data/COLONY_STATE.json)
|
|
301
|
+
|
|
302
|
+
bash .aether/aether-utils.sh print-next-up "$state" "$current_phase" "$total_phases"
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
This auto-generates state-based recommendations (IDLE → init, READY → build, EXECUTING → continue, PLANNING → plan).
|
|
@@ -1,357 +1,15 @@
|
|
|
1
|
+
<!-- Generated from .aether/commands/swarm.yaml - DO NOT EDIT DIRECTLY -->
|
|
1
2
|
---
|
|
2
3
|
name: ant:swarm
|
|
3
4
|
description: "🔥🐜🗡️🐜🔥 Real-time colony swarm display + stubborn bug destroyer"
|
|
4
5
|
---
|
|
5
6
|
|
|
6
|
-
You are the **Queen Ant Colony**. Deploy the swarm to destroy a stubborn bug or view real-time colony activity.
|
|
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
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
If `$normalized_args` is empty or equals "--watch":
|
|
19
|
-
|
|
20
|
-
Run the real-time swarm display:
|
|
21
|
-
```bash
|
|
22
|
-
bash .aether/utils/swarm-display.sh
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
This shows:
|
|
26
|
-
- Active ants with caste colors and emojis (🔨 Builder in blue, etc.)
|
|
27
|
-
- Tool usage stats per ant (📖5 🔍3 ✏️2 ⚡1)
|
|
28
|
-
- Trophallaxis metrics (🍯 token consumption)
|
|
29
|
-
- Timing information (elapsed time per ant)
|
|
30
|
-
- Chamber activity map (which nest zones have active ants)
|
|
31
|
-
- Animated status phrases ("excavating...", "foraging...")
|
|
32
|
-
|
|
33
|
-
Display updates automatically as ants start/complete work.
|
|
34
|
-
Press Ctrl+C to exit.
|
|
35
|
-
|
|
36
|
-
### Bug Destruction Mode (With Arguments)
|
|
37
|
-
|
|
38
|
-
The problem to investigate is: `$normalized_args`
|
|
39
|
-
|
|
40
|
-
#### Step 1: Validate Input
|
|
41
|
-
|
|
42
|
-
If `$normalized_args` is empty:
|
|
43
|
-
```
|
|
44
|
-
🔥🐜🗡️🐜🔥 SWARM
|
|
45
|
-
|
|
46
|
-
Deploy parallel scouts to investigate and fix stubborn bugs.
|
|
47
|
-
|
|
48
|
-
Usage: /ant:swarm "<describe the problem>"
|
|
49
|
-
|
|
50
|
-
Examples:
|
|
51
|
-
/ant:swarm "Tests keep failing in auth module"
|
|
52
|
-
/ant:swarm "TypeError: Cannot read property 'id' of undefined"
|
|
53
|
-
/ant:swarm "API returns 500 but I can't find the cause"
|
|
54
|
-
|
|
55
|
-
This is the nuclear option - use when repeated fix attempts fail.
|
|
56
|
-
```
|
|
57
|
-
Stop here.
|
|
58
|
-
|
|
59
|
-
#### Step 2: Read State & Initialize
|
|
60
|
-
|
|
61
|
-
Read `.aether/data/COLONY_STATE.json`.
|
|
62
|
-
If `goal` is null → "No colony initialized. Run /ant:init first.", stop.
|
|
63
|
-
|
|
64
|
-
Generate swarm ID: `swarm-<unix_timestamp>`
|
|
65
|
-
|
|
66
|
-
Initialize swarm findings:
|
|
67
|
-
```bash
|
|
68
|
-
bash .aether/aether-utils.sh swarm-findings-init "<swarm_id>"
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
Initialize swarm display for real-time tracking:
|
|
72
|
-
```bash
|
|
73
|
-
bash .aether/aether-utils.sh swarm-display-init "<swarm_id>"
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
Display header:
|
|
77
|
-
```
|
|
78
|
-
🔥🐜🗡️🐜🔥 ═══════════════════════════════════════════════
|
|
79
|
-
S W A R M D E P L O Y E D
|
|
80
|
-
═══════════════════════════════════════════════ 🔥🐜🗡️🐜🔥
|
|
81
|
-
|
|
82
|
-
🎯 Target: "{problem description}"
|
|
83
|
-
📍 Swarm ID: {swarm_id}
|
|
84
|
-
|
|
85
|
-
⚡ Deploying 4 parallel scouts...
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
#### Step 3: Create Git Checkpoint
|
|
89
|
-
|
|
90
|
-
Before any investigation that might lead to fixes:
|
|
91
|
-
```bash
|
|
92
|
-
bash .aether/aether-utils.sh autofix-checkpoint "pre-swarm-$SWARM_ID"
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
Store the result for potential rollback:
|
|
96
|
-
- `checkpoint_type` = result.type ("stash", "commit", or "none")
|
|
97
|
-
- `checkpoint_ref` = result.ref
|
|
98
|
-
|
|
99
|
-
```
|
|
100
|
-
💾 Checkpoint: {checkpoint_type} → {checkpoint_ref}
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
#### Step 4: Read Context
|
|
104
|
-
|
|
105
|
-
Read existing blockers for context:
|
|
106
|
-
```bash
|
|
107
|
-
bash .aether/aether-utils.sh flag-list --type blocker
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
Read recent activity:
|
|
111
|
-
```bash
|
|
112
|
-
tail -50 .aether/data/activity.log 2>/dev/null || echo "(no activity log)"
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
Scan recent git commits for context:
|
|
116
|
-
```bash
|
|
117
|
-
git log --oneline -20 2>/dev/null || echo "(no git history)"
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
#### Step 5: Deploy 4 Parallel Scouts
|
|
121
|
-
|
|
122
|
-
Use the **Task** tool to spawn 4 scouts **in a single message** (parallel execution):
|
|
123
|
-
|
|
124
|
-
Log each scout to swarm display before spawning:
|
|
125
|
-
```bash
|
|
126
|
-
bash .aether/aether-utils.sh swarm-display-update "{swarm_id}-Archaeologist" "scout" "excavating" "Git history investigation" "Queen" '{"read":0,"grep":0,"edit":0,"bash":3}' 0
|
|
127
|
-
bash .aether/aether-utils.sh swarm-display-update "{swarm_id}-PatternHunter" "scout" "excavating" "Pattern search for similar code" "Queen" '{"read":5,"grep":10,"edit":0,"bash":0}' 0
|
|
128
|
-
bash .aether/aether-utils.sh swarm-display-update "{swarm_id}-ErrorAnalyst" "scout" "excavating" "Error chain analysis" "Queen" '{"read":3,"grep":5,"edit":0,"bash":2}' 0
|
|
129
|
-
bash .aether/aether-utils.sh swarm-display-update "{swarm_id}-WebResearcher" "scout" "excavating" "External source research" "Queen" '{"read":0,"grep":0,"edit":0,"bash":0}' 0
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
**Scout 1: 🏛️ Git Archaeologist**
|
|
133
|
-
```
|
|
134
|
-
You are {swarm_id}-Archaeologist, a 🏛️ Scout Ant.
|
|
135
|
-
|
|
136
|
-
Investigate git history for: {problem description}
|
|
137
|
-
|
|
138
|
-
Steps:
|
|
139
|
-
1. Run `git log --oneline -30`
|
|
140
|
-
2. Run `git log -p --since="1 week ago" -- {relevant files}`
|
|
141
|
-
3. Run `git blame {suspected file}` if mentioned
|
|
142
|
-
4. Find commits that introduced the bug
|
|
143
|
-
|
|
144
|
-
Return ONLY this JSON:
|
|
145
|
-
{"scout": "git-archaeologist", "confidence": 0.0-1.0, "finding": {"likely_cause": "...", "relevant_commits": [], "when_it_broke": "...", "evidence": []}, "suggested_fix": "..."}
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
**Scout 2: 🔍 Pattern Hunter**
|
|
149
|
-
```
|
|
150
|
-
You are {swarm_id}-PatternHunter, a 🔍 Scout Ant.
|
|
151
|
-
|
|
152
|
-
Find working patterns for: {problem description}
|
|
153
|
-
|
|
154
|
-
Steps:
|
|
155
|
-
1. Grep/glob for related working code
|
|
156
|
-
2. Find how other parts handle this
|
|
157
|
-
3. Look for test files showing correct usage
|
|
158
|
-
4. Identify applicable patterns
|
|
159
|
-
|
|
160
|
-
Return ONLY this JSON:
|
|
161
|
-
{"scout": "pattern-hunter", "confidence": 0.0-1.0, "finding": {"working_examples": [], "applicable_patterns": [], "differences": "..."}, "suggested_fix": "..."}
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
**Scout 3: 💥 Error Analyst**
|
|
165
|
-
```
|
|
166
|
-
You are {swarm_id}-ErrorAnalyst, a 🔍 Scout Ant.
|
|
167
|
-
|
|
168
|
-
Analyze error: {problem description}
|
|
169
|
-
|
|
170
|
-
Steps:
|
|
171
|
-
1. Trace through stack trace frames
|
|
172
|
-
2. Identify actual failing line vs surface error
|
|
173
|
-
3. Check for null refs, async issues, type mismatches
|
|
174
|
-
4. Look for error handling masking the issue
|
|
175
|
-
|
|
176
|
-
Return ONLY this JSON:
|
|
177
|
-
{"scout": "error-analyst", "confidence": 0.0-1.0, "finding": {"root_cause": "...", "error_chain": [], "masked_by": "...", "category": "null-ref|async|type|logic|config|dependency"}, "suggested_fix": "..."}
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
**Scout 4: 🌐 Web Researcher**
|
|
181
|
-
```
|
|
182
|
-
You are {swarm_id}-WebResearcher, a 🔍 Scout Ant.
|
|
183
|
-
|
|
184
|
-
Research external solutions for: {problem description}
|
|
185
|
-
|
|
186
|
-
Steps:
|
|
187
|
-
1. Search for exact error message
|
|
188
|
-
2. Find library/framework docs
|
|
189
|
-
3. Check GitHub issues
|
|
190
|
-
4. Find Stack Overflow answers
|
|
191
|
-
|
|
192
|
-
Return ONLY this JSON:
|
|
193
|
-
{"scout": "web-researcher", "confidence": 0.0-1.0, "finding": {"known_issue": true/false, "documentation_link": "...", "similar_issues": [], "community_solutions": []}, "suggested_fix": "..."}
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
Wait for all 4 scouts to complete.
|
|
197
|
-
|
|
198
|
-
#### Step 6: Collect and Cross-Compare Findings
|
|
199
|
-
|
|
200
|
-
As each scout returns, add their findings:
|
|
201
|
-
```bash
|
|
202
|
-
bash .aether/aether-utils.sh swarm-findings-add "{swarm_id}" "{scout_type}" "{confidence}" '{finding_json}'
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
Update scout status in swarm display to "completed":
|
|
206
|
-
```bash
|
|
207
|
-
bash .aether/aether-utils.sh swarm-display-update "{swarm_id}-Archaeologist" "scout" "completed" "Git history investigation" "Queen" '{"read":3,"grep":0,"edit":0,"bash":5}' 150
|
|
208
|
-
```
|
|
209
|
-
|
|
210
|
-
Display each scout's report as they complete:
|
|
211
|
-
```
|
|
212
|
-
🏛️ Archaeologist [{confidence}]
|
|
213
|
-
{summary of finding}
|
|
214
|
-
|
|
215
|
-
🔍 PatternHunter [{confidence}]
|
|
216
|
-
{summary of finding}
|
|
217
|
-
|
|
218
|
-
💥 ErrorAnalyst [{confidence}]
|
|
219
|
-
{summary of finding}
|
|
220
|
-
|
|
221
|
-
🌐 WebResearcher [{confidence}]
|
|
222
|
-
{summary of finding}
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
#### Step 7: Synthesize Solution
|
|
226
|
-
|
|
227
|
-
Cross-compare all findings:
|
|
228
|
-
1. Identify where scouts agree (high confidence)
|
|
229
|
-
2. Note where scouts disagree (investigate further)
|
|
230
|
-
3. Weight by confidence scores
|
|
231
|
-
4. Prefer findings with concrete evidence
|
|
232
|
-
|
|
233
|
-
Rank fix options:
|
|
234
|
-
```
|
|
235
|
-
═══════════════════════════════════════════════
|
|
236
|
-
S O L U T I O N R A N K I N G
|
|
237
|
-
═══════════════════════════════════════════════
|
|
238
|
-
|
|
239
|
-
#1 [0.85 confidence] {best solution}
|
|
240
|
-
Evidence: {supporting scouts}
|
|
241
|
-
|
|
242
|
-
#2 [0.72 confidence] {alternative}
|
|
243
|
-
Evidence: {supporting scouts}
|
|
244
|
-
|
|
245
|
-
#3 [0.45 confidence] {fallback}
|
|
246
|
-
Evidence: {limited support}
|
|
247
|
-
```
|
|
248
|
-
|
|
249
|
-
#### Step 8: Apply Best Fix
|
|
250
|
-
|
|
251
|
-
Select the highest-confidence solution and apply it:
|
|
252
|
-
|
|
253
|
-
**Command Resolution:** Before running verification, resolve `{build_command}` and `{test_command}` using this priority chain (stop at first match per command):
|
|
254
|
-
1. **CLAUDE.md** — Check project CLAUDE.md (in your system context) for explicit build/test commands
|
|
255
|
-
2. **CODEBASE.md** — Read `.aether/data/codebase.md` `## Commands` section
|
|
256
|
-
3. **Fallback** — Use project manifest heuristics (e.g., `npm run build`/`npm test` for package.json)
|
|
257
|
-
|
|
258
|
-
```
|
|
259
|
-
🔧 Applying Fix #1...
|
|
260
|
-
```
|
|
261
|
-
|
|
262
|
-
Make the actual code changes using Edit/Write tools.
|
|
263
|
-
|
|
264
|
-
After applying:
|
|
265
|
-
```bash
|
|
266
|
-
# Run verification
|
|
267
|
-
{build_command} 2>&1 | tail -30
|
|
268
|
-
{test_command} 2>&1 | tail -50
|
|
269
|
-
```
|
|
270
|
-
|
|
271
|
-
#### Step 9: Verify and Report
|
|
272
|
-
|
|
273
|
-
**If verification passes:**
|
|
274
|
-
```
|
|
275
|
-
✅ FIX VERIFIED
|
|
276
|
-
|
|
277
|
-
Build: PASS
|
|
278
|
-
Tests: PASS
|
|
279
|
-
|
|
280
|
-
🔥🐜🗡️🐜🔥 Swarm successful!
|
|
281
|
-
|
|
282
|
-
The fix will be confirmed when you run:
|
|
283
|
-
/ant:continue
|
|
284
|
-
```
|
|
285
|
-
|
|
286
|
-
Inject learnings:
|
|
287
|
-
- Add FOCUS for the pattern that worked (to constraints.json)
|
|
288
|
-
- Add REDIRECT for the anti-pattern that caused the bug (to constraints.json)
|
|
289
|
-
|
|
290
|
-
Set solution in swarm findings:
|
|
291
|
-
```bash
|
|
292
|
-
bash .aether/aether-utils.sh swarm-solution-set "{swarm_id}" '{solution_json}'
|
|
293
|
-
```
|
|
294
|
-
|
|
295
|
-
Log success:
|
|
296
|
-
```bash
|
|
297
|
-
bash .aether/aether-utils.sh activity-log "SWARM_SUCCESS" "Queen" "Swarm {swarm_id} fixed: {brief description}"
|
|
298
|
-
```
|
|
299
|
-
|
|
300
|
-
**If verification fails:**
|
|
301
|
-
```
|
|
302
|
-
❌ FIX VERIFICATION FAILED
|
|
303
|
-
|
|
304
|
-
Build: {status}
|
|
305
|
-
Tests: {status}
|
|
306
|
-
|
|
307
|
-
Attempting rollback...
|
|
308
|
-
```
|
|
309
|
-
|
|
310
|
-
Rollback:
|
|
311
|
-
```bash
|
|
312
|
-
bash .aether/aether-utils.sh autofix-rollback "{checkpoint_type}" "{checkpoint_ref}"
|
|
313
|
-
```
|
|
314
|
-
|
|
315
|
-
Log failure:
|
|
316
|
-
```bash
|
|
317
|
-
bash .aether/aether-utils.sh activity-log "SWARM_FAILED" "Queen" "Swarm {swarm_id} fix failed verification"
|
|
318
|
-
```
|
|
319
|
-
|
|
320
|
-
Track attempt count. If this is the 3rd failure on the same issue:
|
|
321
|
-
```
|
|
322
|
-
⚠️ ARCHITECTURAL CONCERN
|
|
323
|
-
|
|
324
|
-
This problem has resisted 3 swarm attempts.
|
|
325
|
-
|
|
326
|
-
This suggests:
|
|
327
|
-
- Root cause may be architectural, not implementational
|
|
328
|
-
- Pattern may be fundamentally unsound
|
|
329
|
-
- Different approach needed
|
|
330
|
-
|
|
331
|
-
Recommended:
|
|
332
|
-
- Review the codebase architecture
|
|
333
|
-
- Consider refactoring vs. patching
|
|
334
|
-
- Create a new phase for structural fix
|
|
335
|
-
|
|
336
|
-
Swarm will not attempt further fixes on this issue.
|
|
337
|
-
```
|
|
338
|
-
|
|
339
|
-
#### Step 10: Cleanup
|
|
340
|
-
|
|
341
|
-
Clear swarm display:
|
|
342
|
-
```bash
|
|
343
|
-
bash .aether/aether-utils.sh swarm-display-init "complete-{swarm_id}"
|
|
344
|
-
```
|
|
345
|
-
|
|
346
|
-
Archive swarm findings:
|
|
347
|
-
```bash
|
|
348
|
-
bash .aether/aether-utils.sh swarm-cleanup "{swarm_id}" --archive
|
|
349
|
-
```
|
|
13
|
+
You are the **Queen Ant Colony**. Deploy the swarm to destroy a stubborn bug or view real-time colony activity.
|
|
350
14
|
|
|
351
|
-
|
|
352
|
-
```
|
|
353
|
-
🐜 Next steps:
|
|
354
|
-
/ant:continue ⏭️ Verify and advance phase
|
|
355
|
-
/ant:status 📊 View colony status
|
|
356
|
-
/ant:flags 🚩 Check remaining blockers
|
|
357
|
-
```
|
|
15
|
+
## Instructions
|