aether-colony 3.1.2 → 3.1.3
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/.claude/commands/ant/build.md +9 -4
- package/.opencode/commands/ant/build.md +9 -4
- package/CHANGELOG.md +5 -0
- package/package.json +1 -1
- package/runtime/workers.md +22 -81
|
@@ -425,9 +425,12 @@ DO NOT spawn for work you can complete in < 10 tool calls.
|
|
|
425
425
|
Before spawning:
|
|
426
426
|
1. Check: bash .aether/aether-utils.sh spawn-can-spawn {depth}
|
|
427
427
|
2. Generate name: bash .aether/aether-utils.sh generate-ant-name "{caste}"
|
|
428
|
-
3. Log: bash .aether/aether-utils.sh spawn-log "{your_name}" "{caste}" "{child_name}" "{task}"
|
|
429
|
-
4.
|
|
430
|
-
5.
|
|
428
|
+
3. Log spawn: bash .aether/aether-utils.sh spawn-log "{your_name}" "{caste}" "{child_name}" "{task}"
|
|
429
|
+
4. Update swarm display: bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{caste}" "excavating" "{task}" "{your_name}" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "fungus_garden" 10
|
|
430
|
+
5. Use Task tool with subagent_type="general"
|
|
431
|
+
6. After completion:
|
|
432
|
+
- Log completion: bash .aether/aether-utils.sh spawn-complete "{child_name}" "{status}" "{summary}"
|
|
433
|
+
- Update swarm display: bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{caste}" "completed" "{task}" "{your_name}" '{"read":5,"grep":3,"edit":2,"bash":1}' 100 "fungus_garden" 100
|
|
431
434
|
|
|
432
435
|
Full spawn format: .aether/workers.md section "Spawning Sub-Workers"
|
|
433
436
|
|
|
@@ -549,7 +552,9 @@ You are at depth {depth}. You MAY spawn sub-workers for:
|
|
|
549
552
|
Spawn limits: Depth 1→4, Depth 2→2, Depth 3→0
|
|
550
553
|
|
|
551
554
|
Before spawning:
|
|
552
|
-
bash .aether/aether-utils.sh spawn-log "{your_name}" "{caste}" "{child_name}" "{task}"
|
|
555
|
+
1. Log spawn: bash .aether/aether-utils.sh spawn-log "{your_name}" "{caste}" "{child_name}" "{task}"
|
|
556
|
+
2. Update swarm display: bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{caste}" "observing" "{task}" "{your_name}" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "nursery" 50
|
|
557
|
+
3. After completion: bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{caste}" "completed" "{task}" "{your_name}" '{"read":3,"grep":2,"edit":0,"bash":0}' 100 "nursery" 100
|
|
553
558
|
|
|
554
559
|
--- CRITICAL ---
|
|
555
560
|
- You did NOT build this code — verify it objectively
|
|
@@ -425,9 +425,12 @@ DO NOT spawn for work you can complete in < 10 tool calls.
|
|
|
425
425
|
Before spawning:
|
|
426
426
|
1. Check: bash .aether/aether-utils.sh spawn-can-spawn {depth}
|
|
427
427
|
2. Generate name: bash .aether/aether-utils.sh generate-ant-name "{caste}"
|
|
428
|
-
3. Log: bash .aether/aether-utils.sh spawn-log "{your_name}" "{caste}" "{child_name}" "{task}"
|
|
429
|
-
4.
|
|
430
|
-
5.
|
|
428
|
+
3. Log spawn: bash .aether/aether-utils.sh spawn-log "{your_name}" "{caste}" "{child_name}" "{task}"
|
|
429
|
+
4. Update swarm display: bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{caste}" "excavating" "{task}" "{your_name}" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "fungus_garden" 10
|
|
430
|
+
5. Use Task tool with subagent_type="general"
|
|
431
|
+
6. After completion:
|
|
432
|
+
- Log completion: bash .aether/aether-utils.sh spawn-complete "{child_name}" "{status}" "{summary}"
|
|
433
|
+
- Update swarm display: bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{caste}" "completed" "{task}" "{your_name}" '{"read":5,"grep":3,"edit":2,"bash":1}' 100 "fungus_garden" 100
|
|
431
434
|
|
|
432
435
|
Full spawn format: .aether/workers.md section "Spawning Sub-Workers"
|
|
433
436
|
|
|
@@ -538,7 +541,9 @@ You are at depth {depth}. You MAY spawn sub-workers for:
|
|
|
538
541
|
Spawn limits: Depth 1→4, Depth 2→2, Depth 3→0
|
|
539
542
|
|
|
540
543
|
Before spawning:
|
|
541
|
-
bash .aether/aether-utils.sh spawn-log "{your_name}" "{caste}" "{child_name}" "{task}"
|
|
544
|
+
1. Log spawn: bash .aether/aether-utils.sh spawn-log "{your_name}" "{caste}" "{child_name}" "{task}"
|
|
545
|
+
2. Update swarm display: bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{caste}" "observing" "{task}" "{your_name}" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "nursery" 50
|
|
546
|
+
3. After completion: bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{caste}" "completed" "{task}" "{your_name}" '{"read":3,"grep":2,"edit":0,"bash":0}' 100 "nursery" 100
|
|
542
547
|
|
|
543
548
|
--- CRITICAL ---
|
|
544
549
|
- You did NOT build this code — verify it objectively
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,11 @@ All notable changes to the Aether Colony project will be documented in this file
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [3.1.3] - 2026-02-15
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- **Nested Spawn Visualization** — When builders or watchers spawn sub-workers, the swarm display now updates to show those nested spawns with colors and emojis. Added `swarm-display-update` calls to workers.md spawn protocol (Step 3 and Step 5), builder prompts, and watcher prompts. (`.aether/workers.md`, `.claude/commands/ant/build.md`, `.opencode/commands/ant/build.md`)
|
|
12
|
+
|
|
8
13
|
## [3.1.2] - 2026-02-15
|
|
9
14
|
|
|
10
15
|
### Fixed
|
package/package.json
CHANGED
package/runtime/workers.md
CHANGED
|
@@ -50,103 +50,42 @@ bash .aether/aether-utils.sh spawn-complete "Hammer-42" "completed" "auth module
|
|
|
50
50
|
|
|
51
51
|
---
|
|
52
52
|
|
|
53
|
-
## Model-
|
|
53
|
+
## Model Selection (Session-Level)
|
|
54
54
|
|
|
55
|
-
Aether
|
|
55
|
+
Aether can work with different AI models through a LiteLLM proxy, but **model selection happens at the session level**, not per-worker.
|
|
56
56
|
|
|
57
57
|
### How It Works
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
2. **Prompt Context**: Queen includes model assignment in worker's prompt via `--- MODEL CONTEXT ---` section
|
|
61
|
-
3. **Worker Self-Reporting**: Workers echo their assigned model in JSON output for verification
|
|
62
|
-
4. **Proxy Routing** (Optional): With LiteLLM proxy running, set `ANTHROPIC_MODEL` in parent shell for true model routing
|
|
59
|
+
Claude Code's Task tool does not support passing environment variables to spawned workers. All workers inherit the parent session's model configuration.
|
|
63
60
|
|
|
64
|
-
###
|
|
65
|
-
|
|
66
|
-
| Caste | Model | Purpose |
|
|
67
|
-
|-------|-------|---------|
|
|
68
|
-
| prime | glm-5 | Long-horizon coordination, strategic planning (200K context) |
|
|
69
|
-
| archaeologist | glm-5 | Historical pattern analysis across long timeframes |
|
|
70
|
-
| architect | glm-5 | Pattern synthesis, documentation coordination (200K context) |
|
|
71
|
-
| oracle | minimax-2.5 | Research, foresight, browse/search (76.3% BrowseComp) |
|
|
72
|
-
| route_setter | kimi-k2.5 | Task decomposition, structured planning (256K context) |
|
|
73
|
-
| builder | kimi-k2.5 | Code generation, refactoring (76.8% SWE-Bench) |
|
|
74
|
-
| watcher | kimi-k2.5 | Validation, testing, verification |
|
|
75
|
-
| scout | minimax-2.5| Research exploration, parallel sub-agent spawning |
|
|
76
|
-
| chaos | kimi-k2.5 | Edge case probing, resilience testing |
|
|
77
|
-
| colonizer | minimax-2.5| Environment setup, visual coding from screenshots |
|
|
78
|
-
|
|
79
|
-
### Worker Model Self-Reporting
|
|
80
|
-
|
|
81
|
-
All workers must include model context in their JSON output:
|
|
82
|
-
|
|
83
|
-
```json
|
|
84
|
-
{
|
|
85
|
-
"status": "completed",
|
|
86
|
-
"summary": "...",
|
|
87
|
-
"model_context": {
|
|
88
|
-
"assigned": "kimi-k2.5",
|
|
89
|
-
"caste": "builder",
|
|
90
|
-
"source": "caste-default",
|
|
91
|
-
"reported_at": "2026-02-15T10:30:00Z"
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
This enables:
|
|
97
|
-
- **Visibility**: See which model each worker used
|
|
98
|
-
- **Verification**: Confirm routing is working correctly
|
|
99
|
-
- **Debugging**: Detect mismatches between expected and actual
|
|
100
|
-
|
|
101
|
-
### LiteLLM Proxy Integration (Optional)
|
|
102
|
-
|
|
103
|
-
For true model routing through LiteLLM:
|
|
61
|
+
### To Use a Specific Model
|
|
104
62
|
|
|
105
63
|
```bash
|
|
106
|
-
# 1. Start proxy
|
|
107
|
-
litellm
|
|
64
|
+
# 1. Start LiteLLM proxy (if using)
|
|
65
|
+
cd ~/repos/litellm-proxy && docker-compose up -d
|
|
108
66
|
|
|
109
|
-
# 2.
|
|
67
|
+
# 2. Set environment variables before starting Claude Code:
|
|
110
68
|
export ANTHROPIC_BASE_URL=http://localhost:4000
|
|
111
69
|
export ANTHROPIC_AUTH_TOKEN=sk-litellm-local
|
|
112
|
-
export ANTHROPIC_MODEL=kimi-k2.5 #
|
|
70
|
+
export ANTHROPIC_MODEL=kimi-k2.5 # or glm-5, minimax-2.5
|
|
113
71
|
|
|
114
|
-
# 3. Start Claude Code
|
|
72
|
+
# 3. Start Claude Code
|
|
115
73
|
claude
|
|
116
74
|
```
|
|
117
75
|
|
|
118
|
-
|
|
119
|
-
so proxy routing relies on parent shell inheritance. The self-reporting approach works
|
|
120
|
-
regardless of proxy status.
|
|
121
|
-
|
|
122
|
-
### Available Models
|
|
123
|
-
|
|
124
|
-
- **glm-5** (via Z_AI): Powerful reasoning for complex tasks, architecture, planning
|
|
125
|
-
- **kimi-k2.5** (via Kimi): Fast code generation, refactoring, implementation
|
|
126
|
-
- **minimax-2.5** (via MiniMax): Efficient validation, research, lightweight tasks
|
|
127
|
-
|
|
128
|
-
### Fallback Behavior
|
|
129
|
-
|
|
130
|
-
If the model profile is missing or a caste is not mapped:
|
|
131
|
-
- Default to `kimi-k2.5` (fastest, most cost-effective)
|
|
132
|
-
- Log a warning to the activity log
|
|
133
|
-
- Continue with worker spawn
|
|
134
|
-
|
|
135
|
-
### Sub-Worker Spawning
|
|
76
|
+
### Available Models (via LiteLLM)
|
|
136
77
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
78
|
+
| Model | Best For | Provider |
|
|
79
|
+
|-------|----------|----------|
|
|
80
|
+
| glm-5 | Complex reasoning, architecture, planning | Z_AI |
|
|
81
|
+
| kimi-k2.5 | Fast coding, implementation | Moonshot |
|
|
82
|
+
| minimax-2.5 | Validation, research, exploration | MiniMax |
|
|
141
83
|
|
|
142
|
-
###
|
|
84
|
+
### Historical Note
|
|
143
85
|
|
|
144
|
-
|
|
145
|
-
- Which model they are running on
|
|
146
|
-
- The model's strengths and optimal use cases
|
|
147
|
-
- Expected task complexity
|
|
86
|
+
A model-per-caste routing system was designed and implemented (archived in `.aether/archive/model-routing/`) but cannot function due to Claude Code Task tool limitations. The archive is preserved for future use if the platform adds environment variable support for subagents.
|
|
148
87
|
|
|
149
|
-
|
|
88
|
+
See: `git show model-routing-v1-archived` for the complete configuration.
|
|
150
89
|
|
|
151
90
|
---
|
|
152
91
|
|
|
@@ -371,9 +310,10 @@ child_name=$(bash .aether/aether-utils.sh generate-ant-name "{caste}" | jq -r '.
|
|
|
371
310
|
# Returns: "Hammer-42", "Vigil-17", etc.
|
|
372
311
|
```
|
|
373
312
|
|
|
374
|
-
**Step 3: Log the spawn**
|
|
313
|
+
**Step 3: Log the spawn and update swarm display**
|
|
375
314
|
```bash
|
|
376
315
|
bash .aether/aether-utils.sh spawn-log "{your_name}" "{child_caste}" "{child_name}" "{task_summary}"
|
|
316
|
+
bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{child_caste}" "excavating" "{task_summary}" "{your_name}" '{"read":0,"grep":0,"edit":0,"bash":0}' 0 "fungus_garden" 10
|
|
377
317
|
```
|
|
378
318
|
|
|
379
319
|
**Step 4: Use Task tool**
|
|
@@ -416,10 +356,11 @@ Return a compressed summary:
|
|
|
416
356
|
}
|
|
417
357
|
```
|
|
418
358
|
|
|
419
|
-
**Step 5: Log completion**
|
|
359
|
+
**Step 5: Log completion and update swarm display**
|
|
420
360
|
```bash
|
|
421
361
|
# After Task tool returns
|
|
422
362
|
bash .aether/aether-utils.sh spawn-complete "{child_name}" "{status}" "{summary}"
|
|
363
|
+
bash .aether/aether-utils.sh swarm-display-update "{child_name}" "{child_caste}" "completed" "{summary}" "{your_name}" '{"read":5,"grep":3,"edit":2,"bash":1}' 100 "fungus_garden" 100
|
|
423
364
|
```
|
|
424
365
|
|
|
425
366
|
---
|