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.
- package/.aether/aether-utils.sh +3226 -3345
- 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 +442 -0
- package/.aether/commands/continue.yaml +1484 -0
- package/.aether/commands/council.yaml +509 -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 +502 -0
- package/.aether/commands/insert-phase.yaml +102 -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 +1364 -0
- package/.aether/commands/preferences.yaml +63 -0
- package/.aether/commands/quick.yaml +104 -0
- package/.aether/commands/redirect.yaml +123 -0
- package/.aether/commands/resume-colony.yaml +375 -0
- package/.aether/commands/resume.yaml +407 -0
- package/.aether/commands/run.yaml +229 -0
- package/.aether/commands/seal.yaml +1214 -0
- package/.aether/commands/skill-create.yaml +337 -0
- package/.aether/commands/status.yaml +408 -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 +11 -11
- package/.aether/docs/README.md +32 -2
- 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 +1683 -0
- package/.aether/docs/command-playbooks/build-prep.md +284 -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 +1725 -0
- package/.aether/docs/command-playbooks/continue-gates.md +686 -0
- package/.aether/docs/command-playbooks/continue-verify.md +407 -0
- package/.aether/docs/context-continuity.md +84 -0
- package/.aether/docs/disciplines/DISCIPLINES.md +9 -7
- package/.aether/docs/error-codes.md +1 -1
- package/.aether/docs/known-issues.md +34 -173
- package/.aether/docs/pheromones.md +86 -6
- package/.aether/docs/plans/pheromone-display-plan.md +257 -0
- package/.aether/docs/queen-commands.md +10 -9
- package/.aether/docs/source-of-truth-map.md +132 -0
- package/.aether/docs/xml-utilities.md +47 -0
- package/.aether/rules/aether-colony.md +23 -13
- 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 +23 -41
- package/.aether/templates/colony-state-reset.jq.template +1 -0
- package/.aether/templates/colony-state.template.json +4 -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/.aether/utils/atomic-write.sh +63 -17
- package/.aether/utils/chamber-utils.sh +145 -2
- package/.aether/utils/council.sh +425 -0
- package/.aether/utils/emoji-audit.sh +166 -0
- package/.aether/utils/error-handler.sh +21 -7
- package/.aether/utils/file-lock.sh +182 -27
- package/.aether/utils/flag.sh +278 -0
- package/.aether/utils/hive.sh +572 -0
- package/.aether/utils/immune.sh +508 -0
- package/.aether/utils/learning.sh +1928 -0
- package/.aether/utils/midden.sh +520 -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 +1710 -0
- package/.aether/utils/scan.sh +860 -0
- package/.aether/utils/semantic-cli.sh +10 -8
- package/.aether/utils/session.sh +816 -0
- package/.aether/utils/skills.sh +509 -0
- package/.aether/utils/spawn-tree.sh +103 -271
- package/.aether/utils/spawn.sh +260 -0
- package/.aether/utils/state-api.sh +389 -0
- package/.aether/utils/state-loader.sh +8 -6
- package/.aether/utils/suggest.sh +611 -0
- package/.aether/utils/swarm-display.sh +10 -1
- package/.aether/utils/swarm.sh +1004 -0
- package/.aether/utils/watch-spawn-tree.sh +11 -2
- package/.aether/utils/xml-compose.sh +2 -2
- package/.aether/utils/xml-convert.sh +9 -5
- package/.aether/utils/xml-core.sh +5 -9
- package/.aether/utils/xml-query.sh +4 -4
- package/.aether/workers.md +86 -67
- package/.claude/agents/ant/aether-ambassador.md +2 -1
- package/.claude/agents/ant/aether-archaeologist.md +6 -1
- package/.claude/agents/ant/aether-architect.md +236 -0
- package/.claude/agents/ant/aether-auditor.md +6 -1
- package/.claude/agents/ant/aether-builder.md +38 -1
- package/.claude/agents/ant/aether-chaos.md +2 -1
- package/.claude/agents/ant/aether-chronicler.md +1 -0
- package/.claude/agents/ant/aether-gatekeeper.md +6 -1
- package/.claude/agents/ant/aether-includer.md +1 -0
- package/.claude/agents/ant/aether-keeper.md +1 -0
- package/.claude/agents/ant/aether-measurer.md +6 -1
- package/.claude/agents/ant/aether-oracle.md +237 -0
- package/.claude/agents/ant/aether-probe.md +2 -1
- package/.claude/agents/ant/aether-queen.md +6 -1
- package/.claude/agents/ant/aether-route-setter.md +6 -1
- package/.claude/agents/ant/aether-sage.md +68 -3
- package/.claude/agents/ant/aether-scout.md +38 -1
- package/.claude/agents/ant/aether-surveyor-disciplines.md +2 -1
- package/.claude/agents/ant/aether-surveyor-nest.md +2 -1
- package/.claude/agents/ant/aether-surveyor-pathogens.md +2 -1
- package/.claude/agents/ant/aether-surveyor-provisions.md +2 -1
- package/.claude/agents/ant/aether-tracker.md +6 -1
- package/.claude/agents/ant/aether-watcher.md +37 -1
- package/.claude/agents/ant/aether-weaver.md +2 -1
- package/.claude/commands/ant/archaeology.md +1 -8
- package/.claude/commands/ant/build.md +43 -1159
- package/.claude/commands/ant/chaos.md +1 -14
- package/.claude/commands/ant/colonize.md +3 -14
- package/.claude/commands/ant/continue.md +40 -1026
- package/.claude/commands/ant/council.md +213 -15
- package/.claude/commands/ant/data-clean.md +81 -0
- package/.claude/commands/ant/dream.md +12 -9
- package/.claude/commands/ant/entomb.md +62 -87
- package/.claude/commands/ant/export-signals.md +57 -0
- package/.claude/commands/ant/feedback.md +18 -0
- package/.claude/commands/ant/flag.md +12 -0
- package/.claude/commands/ant/flags.md +22 -8
- package/.claude/commands/ant/focus.md +18 -0
- package/.claude/commands/ant/help.md +40 -8
- package/.claude/commands/ant/history.md +3 -0
- package/.claude/commands/ant/import-signals.md +71 -0
- package/.claude/commands/ant/init.md +349 -191
- package/.claude/commands/ant/insert-phase.md +105 -0
- package/.claude/commands/ant/interpret.md +11 -0
- package/.claude/commands/ant/lay-eggs.md +167 -158
- package/.claude/commands/ant/maturity.md +22 -11
- package/.claude/commands/ant/memory-details.md +77 -0
- package/.claude/commands/ant/migrate-state.md +6 -0
- package/.claude/commands/ant/oracle.md +317 -62
- package/.claude/commands/ant/organize.md +10 -5
- package/.claude/commands/ant/patrol.md +620 -0
- package/.claude/commands/ant/pause-colony.md +8 -22
- package/.claude/commands/ant/phase.md +26 -37
- package/.claude/commands/ant/pheromones.md +156 -0
- package/.claude/commands/ant/plan.md +199 -50
- package/.claude/commands/ant/preferences.md +65 -0
- package/.claude/commands/ant/quick.md +100 -0
- package/.claude/commands/ant/redirect.md +18 -0
- package/.claude/commands/ant/resume-colony.md +37 -22
- package/.claude/commands/ant/resume.md +60 -7
- package/.claude/commands/ant/run.md +231 -0
- package/.claude/commands/ant/seal.md +506 -78
- package/.claude/commands/ant/skill-create.md +286 -0
- package/.claude/commands/ant/status.md +171 -1
- package/.claude/commands/ant/swarm.md +11 -23
- package/.claude/commands/ant/tunnels.md +1 -0
- package/.claude/commands/ant/update.md +58 -135
- package/.claude/commands/ant/verify-castes.md +90 -42
- package/.claude/commands/ant/watch.md +1 -0
- package/.opencode/agents/aether-ambassador.md +1 -1
- package/.opencode/agents/aether-architect.md +133 -0
- package/.opencode/agents/aether-builder.md +3 -3
- package/.opencode/agents/aether-oracle.md +137 -0
- package/.opencode/agents/aether-queen.md +1 -1
- package/.opencode/agents/aether-route-setter.md +1 -1
- package/.opencode/agents/aether-scout.md +1 -1
- package/.opencode/agents/aether-surveyor-disciplines.md +6 -1
- package/.opencode/agents/aether-surveyor-nest.md +6 -1
- package/.opencode/agents/aether-surveyor-pathogens.md +6 -1
- package/.opencode/agents/aether-surveyor-provisions.md +6 -1
- package/.opencode/agents/aether-tracker.md +1 -1
- package/.opencode/agents/aether-watcher.md +1 -1
- package/.opencode/agents/aether-weaver.md +1 -1
- package/.opencode/commands/ant/archaeology.md +7 -14
- package/.opencode/commands/ant/build.md +54 -88
- package/.opencode/commands/ant/chaos.md +7 -24
- package/.opencode/commands/ant/colonize.md +10 -17
- package/.opencode/commands/ant/continue.md +595 -66
- package/.opencode/commands/ant/council.md +150 -18
- package/.opencode/commands/ant/data-clean.md +77 -0
- package/.opencode/commands/ant/dream.md +15 -17
- package/.opencode/commands/ant/entomb.md +28 -18
- 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 +396 -154
- package/.opencode/commands/ant/insert-phase.md +111 -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 +14 -12
- 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 +210 -57
- package/.opencode/commands/ant/preferences.md +71 -0
- package/.opencode/commands/ant/quick.md +91 -0
- package/.opencode/commands/ant/redirect.md +22 -5
- package/.opencode/commands/ant/resume-colony.md +41 -29
- package/.opencode/commands/ant/resume.md +80 -20
- package/.opencode/commands/ant/run.md +237 -0
- package/.opencode/commands/ant/seal.md +230 -25
- package/.opencode/commands/ant/skill-create.md +63 -0
- package/.opencode/commands/ant/status.md +125 -30
- package/.opencode/commands/ant/swarm.md +3 -345
- package/.opencode/commands/ant/tunnels.md +3 -9
- package/.opencode/commands/ant/update.md +63 -127
- package/.opencode/commands/ant/verify-castes.md +96 -42
- package/.opencode/commands/ant/watch.md +7 -0
- package/CHANGELOG.md +368 -1
- package/README.md +195 -324
- package/bin/cli.js +236 -429
- package/bin/generate-commands.js +186 -0
- package/bin/generate-commands.sh +128 -89
- package/bin/lib/spawn-logger.js +0 -15
- package/bin/lib/update-transaction.js +285 -35
- package/bin/npx-install.js +178 -0
- package/bin/validate-package.sh +85 -3
- package/package.json +16 -4
- package/.aether/CONTEXT.md +0 -160
- package/.aether/docs/QUEEN.md +0 -84
- package/.aether/exchange/colony-registry.xml +0 -11
- package/.aether/exchange/pheromones.xml +0 -87
- package/.aether/exchange/queen-wisdom.xml +0 -14
- package/.aether/model-profiles.yaml +0 -100
- package/.aether/utils/spawn-with-model.sh +0 -56
- 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
|
@@ -1,41 +1,25 @@
|
|
|
1
|
+
<!-- Generated from .aether/commands/plan.yaml - DO NOT EDIT DIRECTLY -->
|
|
1
2
|
---
|
|
2
3
|
name: ant:plan
|
|
3
4
|
description: "📊🐜🗺️🐜📊 Show project plan or generate project-specific phases"
|
|
4
5
|
---
|
|
5
6
|
|
|
6
|
-
You are the **Queen**. Orchestrate research and planning until 80% confidence (maximum 4 iterations).
|
|
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
|
-
Parse `$normalized_args`:
|
|
17
|
-
- If contains `--no-visual`: set `visual_mode = false` (visual is ON by default)
|
|
18
|
-
- Otherwise: set `visual_mode = true`
|
|
19
|
-
|
|
20
|
-
### Step 0: Initialize Visual Mode (if enabled)
|
|
21
13
|
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
# Generate session ID
|
|
25
|
-
plan_id="plan-$(date +%s)"
|
|
26
|
-
|
|
27
|
-
# Initialize swarm display
|
|
28
|
-
bash .aether/aether-utils.sh swarm-display-init "$plan_id"
|
|
29
|
-
bash .aether/aether-utils.sh swarm-display-update "Queen" "prime" "excavating" "Generating colony plan" "Colony" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "fungus_garden" 0
|
|
30
|
-
```
|
|
14
|
+
You are the **Queen**. Orchestrate research and planning until the selected confidence target is reached within the selected iteration budget.
|
|
31
15
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
Run using the Bash tool: `bash .aether/aether-utils.sh version-check 2>/dev/null || true`
|
|
16
|
+
## Instructions
|
|
35
17
|
|
|
36
|
-
|
|
18
|
+
Parse `$normalized_args`:
|
|
19
|
+
- If contains `--no-visual`: set `visual_mode = false` (visual is ON by default)
|
|
20
|
+
- Otherwise: set `visual_mode = true`
|
|
37
21
|
|
|
38
|
-
### Step 1: Read State
|
|
22
|
+
### Step 1: Read State
|
|
39
23
|
|
|
40
24
|
Read `.aether/data/COLONY_STATE.json`.
|
|
41
25
|
|
|
@@ -46,7 +30,7 @@ If `version` field is missing, "1.0", or "2.0":
|
|
|
46
30
|
3. Output: `State auto-upgraded to v3.0`
|
|
47
31
|
4. Continue with command.
|
|
48
32
|
|
|
49
|
-
Extract: `goal`, `plan.phases`
|
|
33
|
+
Extract: `goal`, `milestone`, `plan.phases`
|
|
50
34
|
|
|
51
35
|
**Validate:** If `goal: null`:
|
|
52
36
|
```
|
|
@@ -54,6 +38,12 @@ No colony initialized. Run /ant:init "<goal>" first.
|
|
|
54
38
|
```
|
|
55
39
|
Stop here.
|
|
56
40
|
|
|
41
|
+
If `milestone` == `"Crowned Anthill"`:
|
|
42
|
+
```
|
|
43
|
+
This colony has been sealed. Start a new colony with /ant:init "new goal".
|
|
44
|
+
```
|
|
45
|
+
Stop here.
|
|
46
|
+
|
|
57
47
|
### Step 1.5: Load State and Show Resumption Context
|
|
58
48
|
|
|
59
49
|
Run using Bash tool: `bash .aether/aether-utils.sh load-state`
|
|
@@ -86,6 +76,33 @@ Parse `$normalized_args`:
|
|
|
86
76
|
- If contains `--accept`: Set `force_accept = true` (accept current plan regardless of confidence)
|
|
87
77
|
- Otherwise: `force_accept = false`
|
|
88
78
|
|
|
79
|
+
Select planning depth (prompt user if not explicitly provided):
|
|
80
|
+
- Presets:
|
|
81
|
+
- `fast`: `target_confidence = 80`, `max_iterations = 4`
|
|
82
|
+
- `balanced`: `target_confidence = 90`, `max_iterations = 6`
|
|
83
|
+
- `deep`: `target_confidence = 95`, `max_iterations = 8`
|
|
84
|
+
- `exhaustive`: `target_confidence = 99`, `max_iterations = 12`
|
|
85
|
+
- Preset selectors:
|
|
86
|
+
- `--fast`, `--balanced`, `--deep`, `--exhaustive`
|
|
87
|
+
- `--quality fast|balanced|deep|exhaustive`
|
|
88
|
+
- CLI overrides:
|
|
89
|
+
- `--target <70-99>` to set `target_confidence`
|
|
90
|
+
- `--max-iterations <2-12>` to set `max_iterations`
|
|
91
|
+
- If no preset/overrides are provided, ask:
|
|
92
|
+
`Planning depth? 1) Fast 2) Balanced 3) Deep (recommended) 4) Exhaustive`
|
|
93
|
+
- Map user choice to a preset, default to `deep` on unclear input.
|
|
94
|
+
- If overrides are out of range, clamp to valid ranges and continue.
|
|
95
|
+
|
|
96
|
+
### Step 2.5: Load Compact Context Capsule
|
|
97
|
+
|
|
98
|
+
Run using the Bash tool with description "Loading compact planning context...":
|
|
99
|
+
```bash
|
|
100
|
+
bash .aether/aether-utils.sh context-capsule --compact --json 2>/dev/null
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
If JSON is valid and `.ok == true`, extract `.result.prompt_section` into `context_capsule_prompt`.
|
|
104
|
+
If command fails or returns invalid JSON, set `context_capsule_prompt = ""` and continue.
|
|
105
|
+
|
|
89
106
|
### Step 3: Initialize Planning State
|
|
90
107
|
|
|
91
108
|
Update watch files for tmux visibility:
|
|
@@ -98,7 +115,7 @@ AETHER COLONY :: PLANNING
|
|
|
98
115
|
State: PLANNING
|
|
99
116
|
Phase: 0/0 (generating plan)
|
|
100
117
|
Confidence: 0%
|
|
101
|
-
Iteration: 0/
|
|
118
|
+
Iteration: 0/{max_iterations}
|
|
102
119
|
|
|
103
120
|
Active Workers:
|
|
104
121
|
[Research] Starting...
|
|
@@ -115,17 +132,12 @@ Progress
|
|
|
115
132
|
|
|
116
133
|
[ ] 0%
|
|
117
134
|
|
|
118
|
-
Target:
|
|
135
|
+
Target: {target_confidence}% confidence
|
|
119
136
|
|
|
120
|
-
Iteration: 0/
|
|
137
|
+
Iteration: 0/{max_iterations}
|
|
121
138
|
Gaps: (analyzing...)
|
|
122
139
|
```
|
|
123
140
|
|
|
124
|
-
Log start:
|
|
125
|
-
```bash
|
|
126
|
-
bash .aether/aether-utils.sh activity-log "PLAN_START" "queen" "Iterative planning loop initiated for goal"
|
|
127
|
-
```
|
|
128
|
-
|
|
129
141
|
### Step 3.5: Load Territory Survey
|
|
130
142
|
|
|
131
143
|
Check if territory survey exists before research:
|
|
@@ -160,6 +172,129 @@ ls .aether/data/survey/*.md 2>/dev/null
|
|
|
160
172
|
|
|
161
173
|
**If no survey:** Continue without survey context (scouts will do fresh exploration)
|
|
162
174
|
|
|
175
|
+
### Step 3.6: Phase Domain Research
|
|
176
|
+
|
|
177
|
+
Investigate domain knowledge for each phase before the planning loop begins. This runs every time `/ant:plan` generates a new plan -- no skip flag.
|
|
178
|
+
|
|
179
|
+
**1. Retrieve hive wisdom for research priming:**
|
|
180
|
+
|
|
181
|
+
```bash
|
|
182
|
+
hive_context=$(bash .aether/aether-utils.sh hive-read --limit 5 --format text 2>/dev/null)
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Parse the JSON result to extract `.result.text` as `hive_text`. If command fails or returns empty, set `hive_text = ""`.
|
|
186
|
+
|
|
187
|
+
**2. Clean any previous research for this phase:**
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
research_dir=".aether/data/phase-research"
|
|
191
|
+
mkdir -p "$research_dir"
|
|
192
|
+
rm -f "$research_dir/phase-{phase_number}-research.md"
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
Re-running /ant:plan always re-researches from scratch.
|
|
196
|
+
|
|
197
|
+
**3. Spawn Research Scout** via Task tool with `subagent_type="aether-scout"`:
|
|
198
|
+
|
|
199
|
+
FALLBACK: If "Agent type not found", use general-purpose and inject role: "You are a Scout Ant performing Phase Domain Research."
|
|
200
|
+
|
|
201
|
+
```
|
|
202
|
+
You are a Scout Ant performing Phase Domain Research.
|
|
203
|
+
|
|
204
|
+
--- MISSION ---
|
|
205
|
+
Investigate the domain knowledge needed for Phase {phase_number}: {phase_name}
|
|
206
|
+
Goal: "{goal}"
|
|
207
|
+
Phase description: "{phase_description}"
|
|
208
|
+
|
|
209
|
+
{context_capsule_prompt}
|
|
210
|
+
|
|
211
|
+
--- PRE-EXISTING COLONY WISDOM ---
|
|
212
|
+
{hive_text}
|
|
213
|
+
|
|
214
|
+
--- RESEARCH AREAS ---
|
|
215
|
+
1. Key patterns in the existing codebase relevant to this phase
|
|
216
|
+
2. External library/API documentation if the phase involves external tools
|
|
217
|
+
3. Common gotchas and pitfalls in this domain
|
|
218
|
+
4. Recommended implementation approach based on findings
|
|
219
|
+
|
|
220
|
+
--- SCOPE CONSTRAINTS ---
|
|
221
|
+
- Maximum 5 key patterns
|
|
222
|
+
- Maximum 3 gotchas
|
|
223
|
+
- Maximum 1 recommended approach paragraph
|
|
224
|
+
- Total output under 3000 words
|
|
225
|
+
- Prioritize actionable guidance over exhaustive documentation
|
|
226
|
+
- Check hive wisdom above first -- do not re-discover known patterns
|
|
227
|
+
|
|
228
|
+
--- TOOLS ---
|
|
229
|
+
Use: Glob, Grep, Read, WebSearch, WebFetch
|
|
230
|
+
Do NOT use: Task, Write, Edit
|
|
231
|
+
|
|
232
|
+
--- OUTPUT FORMAT ---
|
|
233
|
+
Return JSON:
|
|
234
|
+
{
|
|
235
|
+
"hive_wisdom_used": ["list of hive entries that were relevant"],
|
|
236
|
+
"key_patterns": [
|
|
237
|
+
{"pattern": "description", "source": "file path or URL", "relevance": "why it matters for this phase"}
|
|
238
|
+
],
|
|
239
|
+
"external_context": [
|
|
240
|
+
{"topic": "what", "finding": "description", "source": "URL or doc reference"}
|
|
241
|
+
],
|
|
242
|
+
"gotchas": [
|
|
243
|
+
{"issue": "what can go wrong", "prevention": "how to avoid it", "source": "evidence"}
|
|
244
|
+
],
|
|
245
|
+
"recommended_approach": "synthesis paragraph",
|
|
246
|
+
"files_to_study": ["path1", "path2"]
|
|
247
|
+
}
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
**4. Wait for scout to complete** (blocking -- direct Task return).
|
|
251
|
+
|
|
252
|
+
**5. Parse scout JSON output and write RESEARCH.md to disk.** The Queen (plan.md orchestrator) writes the file -- scout is read-only. Write to: `.aether/data/phase-research/phase-{phase_number}-research.md`
|
|
253
|
+
|
|
254
|
+
RESEARCH.md format (6 fixed sections):
|
|
255
|
+
|
|
256
|
+
```markdown
|
|
257
|
+
# Phase {N} Research: {Phase Name}
|
|
258
|
+
|
|
259
|
+
**Generated:** {ISO-8601 timestamp}
|
|
260
|
+
**Phase:** {N} - {Phase Name}
|
|
261
|
+
**Research scope:** {brief summary of what was investigated}
|
|
262
|
+
|
|
263
|
+
## Hive Wisdom (Pre-existing Knowledge)
|
|
264
|
+
{Format hive_wisdom_used entries, or "No relevant hive wisdom found" if empty}
|
|
265
|
+
|
|
266
|
+
## Key Patterns
|
|
267
|
+
{Format each key_patterns entry as: **{pattern}:** {relevance} (Source: {source})}
|
|
268
|
+
|
|
269
|
+
## External Context
|
|
270
|
+
{Format each external_context entry as: **{topic}:** {finding} (Source: {source})}
|
|
271
|
+
{If empty: "No external research needed for this phase"}
|
|
272
|
+
|
|
273
|
+
## Gotchas
|
|
274
|
+
{Format each gotchas entry as: **{issue}:** {prevention} (Source: {source})}
|
|
275
|
+
|
|
276
|
+
## Recommended Approach
|
|
277
|
+
{recommended_approach text}
|
|
278
|
+
|
|
279
|
+
## Files to Study
|
|
280
|
+
{Format as bullet list of file paths}
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
**6. Store research findings** in a variable `research_findings_summary` for injection into the Route-Setter prompt in Step 4. This is a compact summary (not the full RESEARCH.md):
|
|
284
|
+
|
|
285
|
+
```
|
|
286
|
+
Key Patterns: {bullet list of pattern names}
|
|
287
|
+
Gotchas: {bullet list of gotcha titles}
|
|
288
|
+
Recommended: {recommended_approach, first sentence only}
|
|
289
|
+
Files: {comma-separated file paths}
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
**7. Display completion:**
|
|
293
|
+
|
|
294
|
+
```
|
|
295
|
+
Research complete: phase-{phase_number}-research.md ({word_count} words)
|
|
296
|
+
```
|
|
297
|
+
|
|
163
298
|
### Step 4: Research and Planning Loop
|
|
164
299
|
|
|
165
300
|
Initialize tracking:
|
|
@@ -170,15 +305,15 @@ Initialize tracking:
|
|
|
170
305
|
- `last_confidence = 0`
|
|
171
306
|
- `stall_count = 0` (consecutive iterations with < 5% improvement)
|
|
172
307
|
|
|
173
|
-
**Loop (max
|
|
308
|
+
**Loop (max {max_iterations} iterations, 2 agents per iteration: 1 scout + 1 planner):**
|
|
174
309
|
|
|
175
310
|
```
|
|
176
|
-
while iteration <
|
|
311
|
+
while iteration < max_iterations AND confidence < target_confidence:
|
|
177
312
|
iteration += 1
|
|
178
313
|
|
|
179
314
|
# === AUTO-BREAK CHECKS (no user prompt needed) ===
|
|
180
315
|
if iteration > 1:
|
|
181
|
-
if confidence >=
|
|
316
|
+
if confidence >= target_confidence:
|
|
182
317
|
Log: "Confidence threshold reached ({confidence}%), finalizing plan"
|
|
183
318
|
break
|
|
184
319
|
if stall_count >= 2:
|
|
@@ -190,7 +325,7 @@ while iteration < 4 AND confidence < 80:
|
|
|
190
325
|
if iteration == 1:
|
|
191
326
|
|
|
192
327
|
# Broad exploration on first pass
|
|
193
|
-
Spawn Research Scout via Task tool with subagent_type="
|
|
328
|
+
Spawn Research Scout via Task tool with subagent_type="aether-scout":
|
|
194
329
|
|
|
195
330
|
"""
|
|
196
331
|
You are a Scout Ant in the Aether Colony.
|
|
@@ -199,7 +334,9 @@ while iteration < 4 AND confidence < 80:
|
|
|
199
334
|
Research the codebase to understand what exists and how it works.
|
|
200
335
|
|
|
201
336
|
Goal: "{goal}"
|
|
202
|
-
Iteration: {iteration}/
|
|
337
|
+
Iteration: {iteration}/{max_iterations}
|
|
338
|
+
|
|
339
|
+
{context_capsule_prompt}
|
|
203
340
|
|
|
204
341
|
--- EXPLORATION AREAS ---
|
|
205
342
|
Cover ALL of these in a single pass:
|
|
@@ -234,7 +371,7 @@ while iteration < 4 AND confidence < 80:
|
|
|
234
371
|
else:
|
|
235
372
|
|
|
236
373
|
# Gap-focused research on subsequent passes
|
|
237
|
-
Spawn Gap-Focused Scout via Task tool with subagent_type="
|
|
374
|
+
Spawn Gap-Focused Scout via Task tool with subagent_type="aether-scout":
|
|
238
375
|
|
|
239
376
|
"""
|
|
240
377
|
You are a Scout Ant in the Aether Colony (gap-focused research).
|
|
@@ -243,7 +380,9 @@ while iteration < 4 AND confidence < 80:
|
|
|
243
380
|
Investigate ONLY these specific knowledge gaps. Do not explore broadly.
|
|
244
381
|
|
|
245
382
|
Goal: "{goal}"
|
|
246
|
-
Iteration: {iteration}/
|
|
383
|
+
Iteration: {iteration}/{max_iterations}
|
|
384
|
+
|
|
385
|
+
{context_capsule_prompt}
|
|
247
386
|
|
|
248
387
|
--- GAPS TO INVESTIGATE ---
|
|
249
388
|
{for each gap in gaps:}
|
|
@@ -276,12 +415,10 @@ while iteration < 4 AND confidence < 80:
|
|
|
276
415
|
# Wait for scout to complete.
|
|
277
416
|
# Update gaps list from scout results.
|
|
278
417
|
|
|
279
|
-
Log: `bash .aether/aether-utils.sh activity-log "RESEARCH" "scout" "Iteration {iteration}: {scout.findings.length} findings, {scout.gaps_remaining.length} gaps"`
|
|
280
|
-
|
|
281
418
|
# === PLANNING PHASE (always runs — 1 planner per iteration) ===
|
|
282
419
|
|
|
283
|
-
Spawn Planning Ant (Route-Setter) via Task tool with subagent_type="
|
|
284
|
-
# NOTE: Claude Code uses aether-route-setter; OpenCode uses
|
|
420
|
+
Spawn Planning Ant (Route-Setter) via Task tool with subagent_type="aether-route-setter":
|
|
421
|
+
# NOTE: Claude Code uses aether-route-setter; OpenCode now uses same specialist agent
|
|
285
422
|
|
|
286
423
|
"""
|
|
287
424
|
You are a Route-Setter Ant in the Aether Colony.
|
|
@@ -290,7 +427,9 @@ while iteration < 4 AND confidence < 80:
|
|
|
290
427
|
Create or refine a project plan based on research findings.
|
|
291
428
|
|
|
292
429
|
Goal: "{goal}"
|
|
293
|
-
Iteration: {iteration}/
|
|
430
|
+
Iteration: {iteration}/{max_iterations}
|
|
431
|
+
|
|
432
|
+
{context_capsule_prompt}
|
|
294
433
|
|
|
295
434
|
--- PLANNING DISCIPLINE ---
|
|
296
435
|
Read .aether/planning.md for full reference.
|
|
@@ -329,6 +468,9 @@ while iteration < 4 AND confidence < 80:
|
|
|
329
468
|
--- RESEARCH FINDINGS ---
|
|
330
469
|
{scout.findings formatted — compact, max 5 items}
|
|
331
470
|
|
|
471
|
+
--- PHASE DOMAIN RESEARCH (from Step 3.6) ---
|
|
472
|
+
{research_findings_summary if available, otherwise omit this section}
|
|
473
|
+
|
|
332
474
|
Remaining Gaps:
|
|
333
475
|
{gaps formatted — compact, max 3 items}
|
|
334
476
|
|
|
@@ -390,8 +532,6 @@ while iteration < 4 AND confidence < 80:
|
|
|
390
532
|
|
|
391
533
|
Parse planning results. Update plan_draft and confidence.
|
|
392
534
|
|
|
393
|
-
Log: `bash .aether/aether-utils.sh activity-log "PLANNING" "route-setter" "Confidence: {confidence}% (+{delta}%)"`
|
|
394
|
-
|
|
395
535
|
# === UPDATE WATCH FILES ===
|
|
396
536
|
|
|
397
537
|
Update `.aether/data/watch-status.txt` with current state.
|
|
@@ -423,7 +563,7 @@ Proceed directly to Step 5. No user confirmation needed — the plan auto-finali
|
|
|
423
563
|
|
|
424
564
|
### Step 5: Finalize Plan
|
|
425
565
|
|
|
426
|
-
Once loop exits (confidence >=
|
|
566
|
+
Once loop exits (confidence >= {target_confidence}, max iterations reached, or stall detected):
|
|
427
567
|
|
|
428
568
|
Read current COLONY_STATE.json, then update:
|
|
429
569
|
- Set `plan.phases` to the final phases array
|
|
@@ -433,7 +573,26 @@ Read current COLONY_STATE.json, then update:
|
|
|
433
573
|
|
|
434
574
|
Write COLONY_STATE.json.
|
|
435
575
|
|
|
436
|
-
|
|
576
|
+
**Verify the write** — read back and confirm the plan persisted:
|
|
577
|
+
```bash
|
|
578
|
+
verify_phases=$(jq '.plan.phases | length' .aether/data/COLONY_STATE.json)
|
|
579
|
+
verify_timestamp=$(jq -r '.plan.generated_at' .aether/data/COLONY_STATE.json)
|
|
580
|
+
verify_state=$(jq -r '.state' .aether/data/COLONY_STATE.json)
|
|
581
|
+
if [[ "$verify_phases" -lt 1 || "$verify_timestamp" == "null" || "$verify_state" != "READY" ]]; then
|
|
582
|
+
echo "ERROR: Plan write verification failed (phases=$verify_phases, generated_at=$verify_timestamp, state=$verify_state)"
|
|
583
|
+
echo "Attempting retry write..."
|
|
584
|
+
bash .aether/aether-utils.sh state-write "$(jq --argjson phases "$(echo '$PLAN_JSON' | jq '.plan.phases')" --arg ts "$(date -u +%Y-%m-%dT%H:%M:%SZ)" '.plan.phases = $phases | .plan.generated_at = $ts | .state = "READY"' .aether/data/COLONY_STATE.json)"
|
|
585
|
+
verify_phases=$(jq '.plan.phases | length' .aether/data/COLONY_STATE.json)
|
|
586
|
+
if [[ "$verify_phases" -lt 1 ]]; then
|
|
587
|
+
echo "FATAL: Retry write also failed. Plan was not persisted."
|
|
588
|
+
echo "Re-run /ant:plan to regenerate."
|
|
589
|
+
stop
|
|
590
|
+
fi
|
|
591
|
+
fi
|
|
592
|
+
echo "Plan verified: $verify_phases phases, generated_at=$verify_timestamp, state=$verify_state"
|
|
593
|
+
```
|
|
594
|
+
|
|
595
|
+
Log plan completion: `bash .aether/aether-utils.sh activity-log "PLAN_COMPLETE" "queen" "Plan finalized with {confidence}% confidence"`
|
|
437
596
|
|
|
438
597
|
Update watch-status.txt:
|
|
439
598
|
```
|
|
@@ -449,12 +608,6 @@ Ready to build.
|
|
|
449
608
|
|
|
450
609
|
### Step 6: Display Plan
|
|
451
610
|
|
|
452
|
-
**If visual_mode is true, render final swarm display:**
|
|
453
|
-
```bash
|
|
454
|
-
bash .aether/aether-utils.sh swarm-display-update "Queen" "prime" "completed" "Plan generated" "Colony" '{"read":8,"grep":4,"edit":2,"bash":1}' 100 "fungus_garden" 100
|
|
455
|
-
bash .aether/aether-utils.sh swarm-display-render "$plan_id"
|
|
456
|
-
```
|
|
457
|
-
|
|
458
611
|
Read `plan.phases` from COLONY_STATE.json and display:
|
|
459
612
|
|
|
460
613
|
```
|
|
@@ -510,7 +663,7 @@ Each dimension rated 0-100%:
|
|
|
510
663
|
|
|
511
664
|
**Overall** = weighted average (knowledge 25%, requirements 25%, risks 20%, dependencies 15%, effort 15%)
|
|
512
665
|
|
|
513
|
-
**Target
|
|
666
|
+
**Target:** Use the selected planning depth target. Higher targets trade latency for stronger up-front plan quality.
|
|
514
667
|
|
|
515
668
|
---
|
|
516
669
|
|
|
@@ -518,9 +671,9 @@ Each dimension rated 0-100%:
|
|
|
518
671
|
|
|
519
672
|
The planning loop terminates automatically without requiring user input:
|
|
520
673
|
|
|
521
|
-
1. **Confidence Threshold**: Loop exits when overall confidence reaches
|
|
674
|
+
1. **Confidence Threshold**: Loop exits when overall confidence reaches `{target_confidence}%`
|
|
522
675
|
|
|
523
|
-
2. **Hard Iteration Cap**: Maximum
|
|
676
|
+
2. **Hard Iteration Cap**: Maximum `{max_iterations}` iterations (2 subagents per iteration: 1 scout + 1 planner)
|
|
524
677
|
|
|
525
678
|
3. **Stall Detection**: If confidence improves < 5% for 2 consecutive iterations, auto-finalize current plan
|
|
526
679
|
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
<!-- Generated from .aether/commands/preferences.yaml - DO NOT EDIT DIRECTLY -->
|
|
2
|
+
---
|
|
3
|
+
name: ant:preferences
|
|
4
|
+
description: "📝🐜👑🐜📝 Add or list user preferences in hub QUEEN.md"
|
|
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**. Manage user preferences in the hub `~/.aether/QUEEN.md`.
|
|
14
|
+
|
|
15
|
+
## Instructions
|
|
16
|
+
|
|
17
|
+
The input is: `$normalized_args`
|
|
18
|
+
|
|
19
|
+
### Step 1: Validate
|
|
20
|
+
|
|
21
|
+
If `$normalized_args` empty -> show usage: `/ant:preferences "preference text"` or `/ant:preferences --list`, stop.
|
|
22
|
+
|
|
23
|
+
### Step 2: Route
|
|
24
|
+
|
|
25
|
+
- `$normalized_args` is `--list` -> **List mode**
|
|
26
|
+
- Otherwise -> **Add mode**
|
|
27
|
+
|
|
28
|
+
### List Mode
|
|
29
|
+
|
|
30
|
+
Read `~/.aether/QUEEN.md`. If missing -> "No hub QUEEN.md found. Run /ant:init to create one.", stop.
|
|
31
|
+
|
|
32
|
+
Find the `## User Preferences` section (with or without emoji). Extract bullet lines (`- ...`) between that heading and the next `---`.
|
|
33
|
+
|
|
34
|
+
If user-added bullets exist, output each. Otherwise:
|
|
35
|
+
```
|
|
36
|
+
No user preferences set yet.
|
|
37
|
+
Add one with: /ant:preferences "your preference"
|
|
38
|
+
```
|
|
39
|
+
Stop.
|
|
40
|
+
|
|
41
|
+
### Add Mode
|
|
42
|
+
|
|
43
|
+
Set `PREF` to `$normalized_args` (strip surrounding quotes).
|
|
44
|
+
If length > 500 chars -> "Preference too long (max 500 chars)", stop.
|
|
45
|
+
|
|
46
|
+
Read `~/.aether/QUEEN.md`. If missing -> "No hub QUEEN.md found. Run /ant:init to create one.", stop.
|
|
47
|
+
|
|
48
|
+
**If `## User Preferences` section exists** (with or without emoji):
|
|
49
|
+
1. Remove `*No user preferences recorded yet.*` placeholder if present
|
|
50
|
+
2. Append `- $PREF` at end of section (before next `---`)
|
|
51
|
+
|
|
52
|
+
**If section missing** (migration case):
|
|
53
|
+
1. Insert before `## Evolution Log` (with or without emoji):
|
|
54
|
+
```
|
|
55
|
+
## User Preferences
|
|
56
|
+
|
|
57
|
+
- $PREF
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Update METADATA comment: increment `stats.total_user_prefs` by 1.
|
|
64
|
+
|
|
65
|
+
### Confirm
|
|
66
|
+
|
|
67
|
+
Output (2 lines, no banners):
|
|
68
|
+
```
|
|
69
|
+
Preference saved to hub QUEEN.md
|
|
70
|
+
"$PREF"
|
|
71
|
+
```
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
<!-- Generated from .aether/commands/quick.yaml - DO NOT EDIT DIRECTLY -->
|
|
2
|
+
---
|
|
3
|
+
name: ant:quick
|
|
4
|
+
description: "🔍🐜⚡🐜🔍 Quick scout query — fast answers without build ceremony"
|
|
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**. Execute `/ant:quick` — a lightweight scout mission.
|
|
14
|
+
|
|
15
|
+
The query is: `$normalized_args`
|
|
16
|
+
|
|
17
|
+
## Purpose
|
|
18
|
+
|
|
19
|
+
Quick, focused answers to questions about the codebase, patterns, or implementation
|
|
20
|
+
details. No build ceremony, no state changes, no verification waves.
|
|
21
|
+
|
|
22
|
+
## Instructions
|
|
23
|
+
|
|
24
|
+
### Step 1: Validate Arguments
|
|
25
|
+
|
|
26
|
+
If `$normalized_args` is empty:
|
|
27
|
+
```
|
|
28
|
+
Usage: /ant:quick "<question>"
|
|
29
|
+
|
|
30
|
+
Examples:
|
|
31
|
+
/ant:quick "how does the pheromone system work?"
|
|
32
|
+
/ant:quick "find all uses of acquire_lock"
|
|
33
|
+
/ant:quick "what tests cover midden-write?"
|
|
34
|
+
/ant:quick "show me the colony-prime token budget logic"
|
|
35
|
+
```
|
|
36
|
+
Stop here.
|
|
37
|
+
|
|
38
|
+
### Step 2: Generate Scout Name
|
|
39
|
+
|
|
40
|
+
Run:
|
|
41
|
+
```bash
|
|
42
|
+
bash .aether/aether-utils.sh generate-ant-name "scout"
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Capture the output as `scout_name`.
|
|
46
|
+
|
|
47
|
+
### Step 3: Spawn Scout
|
|
48
|
+
|
|
49
|
+
Display:
|
|
50
|
+
```
|
|
51
|
+
━━━ Quick Scout ━━━
|
|
52
|
+
Spawning {scout_name} — {query truncated to 50 chars}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Run:
|
|
56
|
+
```bash
|
|
57
|
+
bash .aether/aether-utils.sh spawn-log "Queen" "scout" "{scout_name}" "Quick query: {query}"
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
Investigate the query directly using available tools (Grep, Glob, Read).
|
|
63
|
+
Search the codebase and provide a clear, focused answer with file paths and line numbers for key findings.
|
|
64
|
+
Keep your answer concise and actionable.
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
### Step 4: Display Results
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
Display your findings directly to the user.
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
Run:
|
|
75
|
+
```bash
|
|
76
|
+
bash .aether/aether-utils.sh spawn-complete "{scout_name}" "completed" "Quick query answered"
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Step 5: Update Session (lightweight)
|
|
80
|
+
|
|
81
|
+
Run:
|
|
82
|
+
```bash
|
|
83
|
+
bash .aether/aether-utils.sh session-update "/ant:quick" "" "Quick query: {query truncated to 60 chars}" 2>/dev/null || true
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**NOTE:** This command does NOT:
|
|
87
|
+
- Modify COLONY_STATE.json
|
|
88
|
+
- Advance phases
|
|
89
|
+
- Create checkpoints
|
|
90
|
+
- Spawn watchers or chaos ants
|
|
91
|
+
- Run verification
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
+
<!-- Generated from .aether/commands/redirect.yaml - DO NOT EDIT DIRECTLY -->
|
|
1
2
|
---
|
|
2
3
|
name: ant:redirect
|
|
3
4
|
description: "⚠️🐜🚧🐜⚠️ Emit REDIRECT signal to warn colony away from patterns"
|
|
4
5
|
---
|
|
5
6
|
|
|
6
|
-
You are the **Queen**. Add an AVOID constraint.
|
|
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**. Add an AVOID constraint.
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## Instructions
|
|
19
|
+
|
|
16
20
|
The pattern to avoid is: `$normalized_args`
|
|
17
21
|
|
|
18
22
|
### Step 1: Validate
|
|
@@ -20,11 +24,15 @@ The pattern to avoid is: `$normalized_args`
|
|
|
20
24
|
If `$normalized_args` empty -> show usage: `/ant:redirect <pattern to avoid>`, stop.
|
|
21
25
|
If content > 500 chars -> "Redirect content too long (max 500 chars)", stop.
|
|
22
26
|
|
|
23
|
-
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
### Step 2: Write Signal
|
|
24
30
|
|
|
25
31
|
Read `.aether/data/COLONY_STATE.json`.
|
|
26
32
|
If `goal: null` -> "No colony initialized.", stop.
|
|
27
33
|
|
|
34
|
+
|
|
35
|
+
|
|
28
36
|
Read `.aether/data/constraints.json`. If file doesn't exist, create it with:
|
|
29
37
|
```json
|
|
30
38
|
{"version": "1.0", "focus": [], "constraints": []}
|
|
@@ -47,6 +55,12 @@ If `constraints` array exceeds 10 entries, remove the oldest entries to keep onl
|
|
|
47
55
|
|
|
48
56
|
Write constraints.json.
|
|
49
57
|
|
|
58
|
+
**Write pheromone signal and update context:**
|
|
59
|
+
```bash
|
|
60
|
+
bash .aether/aether-utils.sh pheromone-write REDIRECT "$normalized_args" --strength 0.9 --reason "User warned colony away from pattern" 2>/dev/null || true
|
|
61
|
+
bash .aether/aether-utils.sh context-update constraint redirect "$normalized_args" "user" 2>/dev/null || true
|
|
62
|
+
```
|
|
63
|
+
|
|
50
64
|
### Step 3: Confirm
|
|
51
65
|
|
|
52
66
|
Output header:
|
|
@@ -65,3 +79,6 @@ Then output:
|
|
|
65
79
|
|
|
66
80
|
🐜 Colony warned away from this pattern.
|
|
67
81
|
```
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|