aether-colony 3.1.1 → 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 +66 -10
- package/.claude/commands/ant/continue.md +43 -1
- package/.opencode/commands/ant/build.md +116 -15
- package/.opencode/commands/ant/continue.md +43 -1
- package/.opencode/commands/ant/maturity.md +92 -0
- package/.opencode/commands/ant/verify-castes.md +85 -0
- package/CHANGELOG.md +14 -0
- package/package.json +2 -2
- package/runtime/aether-utils.sh +16 -0
- package/runtime/workers.md +22 -81
- package/.opencode/commands/ant/ant:build.md +0 -982
- package/.opencode/commands/ant/ant:verify-castes.md +0 -157
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ant:verify-castes
|
|
3
|
+
description: "Verify colony caste assignments and system status"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
You are the **Queen**. Display the caste assignments and system status.
|
|
7
|
+
|
|
8
|
+
## Step 1: Show Caste Assignments
|
|
9
|
+
|
|
10
|
+
Display the colony caste structure:
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
Aether Colony Caste System
|
|
14
|
+
═══════════════════════════════════════════
|
|
15
|
+
|
|
16
|
+
CASTE ASSIGNMENTS
|
|
17
|
+
─────────────────
|
|
18
|
+
👑 Prime - Colony coordination and strategic planning
|
|
19
|
+
🏺 Archaeologist - Git history analysis and pattern excavation
|
|
20
|
+
🏛️ Architect - System design and documentation
|
|
21
|
+
🔮 Oracle - Deep research and foresight
|
|
22
|
+
🗺️ Route Setter - Task decomposition and planning
|
|
23
|
+
🔨 Builder - Implementation and coding
|
|
24
|
+
👁️ Watcher - Verification and testing
|
|
25
|
+
🔍 Scout - Research and exploration
|
|
26
|
+
🎲 Chaos - Edge case testing and resilience probing
|
|
27
|
+
🧭 Colonizer - Environment setup and exploration
|
|
28
|
+
|
|
29
|
+
───────────────────────────────────────────
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Step 2: Check System Status
|
|
33
|
+
|
|
34
|
+
Run using Bash tool: `bash .aether/aether-utils.sh version-check 2>/dev/null || echo "Utils available"`
|
|
35
|
+
|
|
36
|
+
Check LiteLLM proxy status:
|
|
37
|
+
```bash
|
|
38
|
+
curl -s http://localhost:4000/health 2>/dev/null | grep -q "healthy" && echo "✓ Proxy healthy" || echo "⚠ Proxy not running"
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Step 3: Show Current Session Info
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
SESSION INFORMATION
|
|
45
|
+
───────────────────
|
|
46
|
+
All workers in this session use the same model configuration.
|
|
47
|
+
To change models, restart Claude Code with different settings:
|
|
48
|
+
|
|
49
|
+
export ANTHROPIC_BASE_URL=http://localhost:4000
|
|
50
|
+
export ANTHROPIC_AUTH_TOKEN=sk-litellm-local
|
|
51
|
+
export ANTHROPIC_MODEL=<model-name>
|
|
52
|
+
claude
|
|
53
|
+
|
|
54
|
+
Available models (via LiteLLM proxy):
|
|
55
|
+
• glm-5 - Complex reasoning, architecture, planning
|
|
56
|
+
• kimi-k2.5 - Fast coding, implementation
|
|
57
|
+
• minimax-2.5 - Validation, research, exploration
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Step 4: Summary
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
═══════════════════════════════════════════
|
|
64
|
+
System Status
|
|
65
|
+
═══════════════════════════════════════════
|
|
66
|
+
Utils: ✓ Operational
|
|
67
|
+
Proxy: {status from Step 2}
|
|
68
|
+
Castes: 10 defined
|
|
69
|
+
|
|
70
|
+
Note: Model-per-caste routing was attempted but is not
|
|
71
|
+
possible with Claude Code's Task tool (no env var support).
|
|
72
|
+
See archived config: .aether/archive/model-routing/
|
|
73
|
+
Tag: model-routing-v1-archived
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Historical Note
|
|
77
|
+
|
|
78
|
+
A model-per-caste system was designed and implemented but cannot
|
|
79
|
+
function due to Claude Code Task tool limitations. The complete
|
|
80
|
+
configuration is archived in `.aether/archive/model-routing/`.
|
|
81
|
+
|
|
82
|
+
To view the archived configuration:
|
|
83
|
+
```bash
|
|
84
|
+
git show model-routing-v1-archived
|
|
85
|
+
```
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,20 @@ 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
|
+
|
|
13
|
+
## [3.1.2] - 2026-02-15
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
- **Swarm Display Integration in Build Command** — The visualization system was fully implemented but never integrated into `/ant:build`. Added `swarm-display-init` at build start, `swarm-display-update` calls when spawning builders/watchers/chaos ants, progress updates when workers complete (updating to 100% completion), and final `swarm-display-render` at build completion. The build now shows real-time ant-themed visualization with caste emojis, colors, tool usage stats, and chamber activity maps. (`.claude/commands/ant/build.md`, `.opencode/commands/ant/build.md`)
|
|
17
|
+
- **Missing swarm-display-render Command** — Added new `swarm-display-render` command to `aether-utils.sh` that executes the visualization script to render the current swarm state to terminal. (`.aether/aether-utils.sh`)
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
- **OpenCode Build Command Parity** — Synchronized OpenCode build.md with Claude version: added `--model` flag support, proxy health check (Step 0.6), colony state loading (Step 0.5), and full swarm display integration. (`.opencode/commands/ant/build.md`)
|
|
21
|
+
|
|
8
22
|
## [3.1.1] - 2026-02-15
|
|
9
23
|
|
|
10
24
|
### Fixed
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aether-colony",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.3",
|
|
4
4
|
"description": "Multi-agent system using ant colony intelligence for Claude Code and OpenCode — workers self-organize via pheromone signals",
|
|
5
5
|
"bin": {
|
|
6
|
-
"aether": "
|
|
6
|
+
"aether": "bin/cli.js"
|
|
7
7
|
},
|
|
8
8
|
"files": [
|
|
9
9
|
"bin/",
|
package/runtime/aether-utils.sh
CHANGED
|
@@ -1953,6 +1953,22 @@ NODESCRIPT
|
|
|
1953
1953
|
fi
|
|
1954
1954
|
;;
|
|
1955
1955
|
|
|
1956
|
+
swarm-display-render)
|
|
1957
|
+
# Render the swarm display to terminal
|
|
1958
|
+
# Usage: swarm-display-render [swarm_id]
|
|
1959
|
+
swarm_id="${1:-default-swarm}"
|
|
1960
|
+
|
|
1961
|
+
display_script="$SCRIPT_DIR/utils/swarm-display.sh"
|
|
1962
|
+
|
|
1963
|
+
if [[ -f "$display_script" ]]; then
|
|
1964
|
+
# Execute the display script
|
|
1965
|
+
bash "$display_script" "$swarm_id" 2>/dev/null || true
|
|
1966
|
+
json_ok '{"rendered":true}'
|
|
1967
|
+
else
|
|
1968
|
+
json_err "$E_FILE_NOT_FOUND" "Display script not found: $display_script"
|
|
1969
|
+
fi
|
|
1970
|
+
;;
|
|
1971
|
+
|
|
1956
1972
|
swarm-timing-start)
|
|
1957
1973
|
# Record start time for an ant
|
|
1958
1974
|
# Usage: swarm-timing-start <ant_name>
|
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
|
---
|