aether-colony 1.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/CONTEXT.md +160 -0
- package/.aether/QUEEN.md +84 -0
- package/.aether/aether-utils.sh +7749 -0
- package/.aether/docs/QUEEN-SYSTEM.md +211 -0
- package/.aether/docs/README.md +68 -0
- package/.aether/docs/caste-system.md +48 -0
- package/.aether/docs/disciplines/DISCIPLINES.md +93 -0
- package/.aether/docs/disciplines/coding-standards.md +197 -0
- package/.aether/docs/disciplines/debugging.md +207 -0
- package/.aether/docs/disciplines/learning.md +254 -0
- package/.aether/docs/disciplines/tdd.md +257 -0
- package/.aether/docs/disciplines/verification-loop.md +167 -0
- package/.aether/docs/disciplines/verification.md +116 -0
- package/.aether/docs/error-codes.md +268 -0
- package/.aether/docs/known-issues.md +233 -0
- package/.aether/docs/pheromones.md +205 -0
- package/.aether/docs/queen-commands.md +97 -0
- package/.aether/exchange/colony-registry.xml +11 -0
- package/.aether/exchange/pheromone-xml.sh +575 -0
- package/.aether/exchange/pheromones.xml +87 -0
- package/.aether/exchange/queen-wisdom.xml +14 -0
- package/.aether/exchange/registry-xml.sh +273 -0
- package/.aether/exchange/wisdom-xml.sh +319 -0
- package/.aether/midden/approach-changes.md +5 -0
- package/.aether/midden/build-failures.md +5 -0
- package/.aether/midden/test-failures.md +5 -0
- package/.aether/model-profiles.yaml +100 -0
- package/.aether/rules/aether-colony.md +134 -0
- package/.aether/schemas/aether-types.xsd +255 -0
- package/.aether/schemas/colony-registry.xsd +309 -0
- package/.aether/schemas/example-prompt-builder.xml +234 -0
- package/.aether/schemas/pheromone.xsd +163 -0
- package/.aether/schemas/prompt.xsd +416 -0
- package/.aether/schemas/queen-wisdom.xsd +325 -0
- package/.aether/schemas/worker-priming.xsd +276 -0
- package/.aether/templates/QUEEN.md.template +79 -0
- package/.aether/templates/colony-state-reset.jq.template +22 -0
- package/.aether/templates/colony-state.template.json +35 -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 +7 -0
- package/.aether/templates/pheromones.template.json +6 -0
- package/.aether/templates/session.template.json +9 -0
- package/.aether/utils/atomic-write.sh +219 -0
- package/.aether/utils/chamber-compare.sh +193 -0
- package/.aether/utils/chamber-utils.sh +297 -0
- package/.aether/utils/colorize-log.sh +132 -0
- package/.aether/utils/error-handler.sh +212 -0
- package/.aether/utils/file-lock.sh +158 -0
- package/.aether/utils/queen-to-md.xsl +395 -0
- package/.aether/utils/semantic-cli.sh +413 -0
- package/.aether/utils/spawn-tree.sh +428 -0
- package/.aether/utils/spawn-with-model.sh +56 -0
- package/.aether/utils/state-loader.sh +215 -0
- package/.aether/utils/swarm-display.sh +268 -0
- package/.aether/utils/watch-spawn-tree.sh +253 -0
- package/.aether/utils/xml-compose.sh +253 -0
- package/.aether/utils/xml-convert.sh +273 -0
- package/.aether/utils/xml-core.sh +186 -0
- package/.aether/utils/xml-query.sh +201 -0
- package/.aether/utils/xml-utils.sh +110 -0
- package/.aether/workers.md +765 -0
- package/.claude/agents/ant/aether-ambassador.md +264 -0
- package/.claude/agents/ant/aether-archaeologist.md +322 -0
- package/.claude/agents/ant/aether-auditor.md +266 -0
- package/.claude/agents/ant/aether-builder.md +187 -0
- package/.claude/agents/ant/aether-chaos.md +268 -0
- package/.claude/agents/ant/aether-chronicler.md +304 -0
- package/.claude/agents/ant/aether-gatekeeper.md +325 -0
- package/.claude/agents/ant/aether-includer.md +373 -0
- package/.claude/agents/ant/aether-keeper.md +271 -0
- package/.claude/agents/ant/aether-measurer.md +317 -0
- package/.claude/agents/ant/aether-probe.md +210 -0
- package/.claude/agents/ant/aether-queen.md +325 -0
- package/.claude/agents/ant/aether-route-setter.md +173 -0
- package/.claude/agents/ant/aether-sage.md +353 -0
- package/.claude/agents/ant/aether-scout.md +142 -0
- package/.claude/agents/ant/aether-surveyor-disciplines.md +416 -0
- package/.claude/agents/ant/aether-surveyor-nest.md +354 -0
- package/.claude/agents/ant/aether-surveyor-pathogens.md +288 -0
- package/.claude/agents/ant/aether-surveyor-provisions.md +359 -0
- package/.claude/agents/ant/aether-tracker.md +265 -0
- package/.claude/agents/ant/aether-watcher.md +244 -0
- package/.claude/agents/ant/aether-weaver.md +247 -0
- package/.claude/commands/ant/archaeology.md +341 -0
- package/.claude/commands/ant/build.md +1160 -0
- package/.claude/commands/ant/chaos.md +349 -0
- package/.claude/commands/ant/colonize.md +270 -0
- package/.claude/commands/ant/continue.md +1070 -0
- package/.claude/commands/ant/council.md +309 -0
- package/.claude/commands/ant/dream.md +265 -0
- package/.claude/commands/ant/entomb.md +487 -0
- package/.claude/commands/ant/feedback.md +78 -0
- package/.claude/commands/ant/flag.md +139 -0
- package/.claude/commands/ant/flags.md +155 -0
- package/.claude/commands/ant/focus.md +58 -0
- package/.claude/commands/ant/help.md +122 -0
- package/.claude/commands/ant/history.md +137 -0
- package/.claude/commands/ant/init.md +409 -0
- package/.claude/commands/ant/interpret.md +267 -0
- package/.claude/commands/ant/lay-eggs.md +201 -0
- package/.claude/commands/ant/maturity.md +102 -0
- package/.claude/commands/ant/memory-details.md +77 -0
- package/.claude/commands/ant/migrate-state.md +165 -0
- package/.claude/commands/ant/oracle.md +387 -0
- package/.claude/commands/ant/organize.md +227 -0
- package/.claude/commands/ant/pause-colony.md +247 -0
- package/.claude/commands/ant/phase.md +126 -0
- package/.claude/commands/ant/plan.md +544 -0
- package/.claude/commands/ant/redirect.md +58 -0
- package/.claude/commands/ant/resume-colony.md +182 -0
- package/.claude/commands/ant/resume.md +363 -0
- package/.claude/commands/ant/seal.md +306 -0
- package/.claude/commands/ant/status.md +272 -0
- package/.claude/commands/ant/swarm.md +361 -0
- package/.claude/commands/ant/tunnels.md +425 -0
- package/.claude/commands/ant/update.md +209 -0
- package/.claude/commands/ant/verify-castes.md +95 -0
- package/.claude/commands/ant/watch.md +238 -0
- package/.opencode/agents/aether-ambassador.md +140 -0
- package/.opencode/agents/aether-archaeologist.md +108 -0
- package/.opencode/agents/aether-auditor.md +144 -0
- package/.opencode/agents/aether-builder.md +184 -0
- package/.opencode/agents/aether-chaos.md +115 -0
- package/.opencode/agents/aether-chronicler.md +122 -0
- package/.opencode/agents/aether-gatekeeper.md +116 -0
- package/.opencode/agents/aether-includer.md +117 -0
- package/.opencode/agents/aether-keeper.md +177 -0
- package/.opencode/agents/aether-measurer.md +128 -0
- package/.opencode/agents/aether-probe.md +133 -0
- package/.opencode/agents/aether-queen.md +286 -0
- package/.opencode/agents/aether-route-setter.md +130 -0
- package/.opencode/agents/aether-sage.md +106 -0
- package/.opencode/agents/aether-scout.md +101 -0
- package/.opencode/agents/aether-surveyor-disciplines.md +386 -0
- package/.opencode/agents/aether-surveyor-nest.md +324 -0
- package/.opencode/agents/aether-surveyor-pathogens.md +259 -0
- package/.opencode/agents/aether-surveyor-provisions.md +329 -0
- package/.opencode/agents/aether-tracker.md +137 -0
- package/.opencode/agents/aether-watcher.md +174 -0
- package/.opencode/agents/aether-weaver.md +130 -0
- package/.opencode/commands/ant/archaeology.md +338 -0
- package/.opencode/commands/ant/build.md +1200 -0
- package/.opencode/commands/ant/chaos.md +346 -0
- package/.opencode/commands/ant/colonize.md +202 -0
- package/.opencode/commands/ant/continue.md +938 -0
- package/.opencode/commands/ant/council.md +305 -0
- package/.opencode/commands/ant/dream.md +262 -0
- package/.opencode/commands/ant/entomb.md +367 -0
- package/.opencode/commands/ant/feedback.md +80 -0
- package/.opencode/commands/ant/flag.md +137 -0
- package/.opencode/commands/ant/flags.md +153 -0
- package/.opencode/commands/ant/focus.md +56 -0
- package/.opencode/commands/ant/help.md +124 -0
- package/.opencode/commands/ant/history.md +127 -0
- package/.opencode/commands/ant/init.md +337 -0
- package/.opencode/commands/ant/interpret.md +256 -0
- package/.opencode/commands/ant/lay-eggs.md +141 -0
- package/.opencode/commands/ant/maturity.md +92 -0
- package/.opencode/commands/ant/memory-details.md +77 -0
- package/.opencode/commands/ant/migrate-state.md +153 -0
- package/.opencode/commands/ant/oracle.md +338 -0
- package/.opencode/commands/ant/organize.md +224 -0
- package/.opencode/commands/ant/pause-colony.md +220 -0
- package/.opencode/commands/ant/phase.md +123 -0
- package/.opencode/commands/ant/plan.md +531 -0
- package/.opencode/commands/ant/redirect.md +67 -0
- package/.opencode/commands/ant/resume-colony.md +178 -0
- package/.opencode/commands/ant/resume.md +363 -0
- package/.opencode/commands/ant/seal.md +247 -0
- package/.opencode/commands/ant/status.md +272 -0
- package/.opencode/commands/ant/swarm.md +357 -0
- package/.opencode/commands/ant/tunnels.md +406 -0
- package/.opencode/commands/ant/update.md +191 -0
- package/.opencode/commands/ant/verify-castes.md +85 -0
- package/.opencode/commands/ant/watch.md +220 -0
- package/.opencode/opencode.json +3 -0
- package/CHANGELOG.md +325 -0
- package/DISCLAIMER.md +74 -0
- package/LICENSE +21 -0
- package/README.md +258 -0
- package/bin/cli.js +2436 -0
- package/bin/generate-commands.sh +291 -0
- package/bin/lib/caste-colors.js +57 -0
- package/bin/lib/colors.js +76 -0
- package/bin/lib/errors.js +255 -0
- package/bin/lib/event-types.js +190 -0
- package/bin/lib/file-lock.js +695 -0
- package/bin/lib/init.js +454 -0
- package/bin/lib/logger.js +242 -0
- package/bin/lib/model-profiles.js +445 -0
- package/bin/lib/model-verify.js +288 -0
- package/bin/lib/nestmate-loader.js +130 -0
- package/bin/lib/proxy-health.js +253 -0
- package/bin/lib/spawn-logger.js +266 -0
- package/bin/lib/state-guard.js +602 -0
- package/bin/lib/state-sync.js +516 -0
- package/bin/lib/telemetry.js +441 -0
- package/bin/lib/update-transaction.js +1454 -0
- package/bin/npx-install.js +178 -0
- package/bin/sync-to-runtime.sh +6 -0
- package/bin/validate-package.sh +88 -0
- package/package.json +70 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
version: '1.0'
|
|
2
|
+
description: Default model assignments for Aether colony workers
|
|
3
|
+
profile: default
|
|
4
|
+
worker_models:
|
|
5
|
+
prime: glm-5
|
|
6
|
+
archaeologist: glm-5
|
|
7
|
+
architect: glm-5
|
|
8
|
+
oracle: minimax-2.5
|
|
9
|
+
route_setter: kimi-k2.5
|
|
10
|
+
builder: kimi-k2.5
|
|
11
|
+
watcher: kimi-k2.5
|
|
12
|
+
scout: kimi-k2.5
|
|
13
|
+
chaos: kimi-k2.5
|
|
14
|
+
colonizer: kimi-k2.5
|
|
15
|
+
model_metadata:
|
|
16
|
+
glm-5:
|
|
17
|
+
description: '744B MoE model (40B active), long-horizon agentic engineering'
|
|
18
|
+
provider: z_ai
|
|
19
|
+
capabilities:
|
|
20
|
+
- planning
|
|
21
|
+
- coordination
|
|
22
|
+
- long_context
|
|
23
|
+
- complex_reasoning
|
|
24
|
+
- agentic_workflows
|
|
25
|
+
context_window: 200000
|
|
26
|
+
speed: medium
|
|
27
|
+
cost_tier: high
|
|
28
|
+
best_for:
|
|
29
|
+
- 'Long-horizon task execution (tested: 1 year business simulation)'
|
|
30
|
+
- Strategic coordination and planning
|
|
31
|
+
- Historical pattern analysis across large contexts
|
|
32
|
+
- Multi-step autonomous workflows
|
|
33
|
+
minimax-2.5:
|
|
34
|
+
description: Frontier model for architectural planning and agentic tool use
|
|
35
|
+
provider: minimax
|
|
36
|
+
capabilities:
|
|
37
|
+
- system_design
|
|
38
|
+
- architecture
|
|
39
|
+
- browse
|
|
40
|
+
- search
|
|
41
|
+
- task_decomposition
|
|
42
|
+
context_window: 200000
|
|
43
|
+
speed: fast
|
|
44
|
+
cost_tier: medium
|
|
45
|
+
best_for:
|
|
46
|
+
- Architectural-level planning and system design
|
|
47
|
+
- Research with browse/search (76.3% BrowseComp)
|
|
48
|
+
- Efficient task decomposition (20% fewer search rounds)
|
|
49
|
+
- Full-stack development (80.2% SWE-Bench Verified)
|
|
50
|
+
kimi-k2.5:
|
|
51
|
+
description: '1T MoE model (32B active), multimodal agent with swarm capabilities'
|
|
52
|
+
provider: kimi
|
|
53
|
+
capabilities:
|
|
54
|
+
- coding
|
|
55
|
+
- multimodal
|
|
56
|
+
- agent_swarm
|
|
57
|
+
- visual_coding
|
|
58
|
+
- validation
|
|
59
|
+
context_window: 256000
|
|
60
|
+
speed: fast
|
|
61
|
+
cost_tier: low
|
|
62
|
+
best_for:
|
|
63
|
+
- Code generation and refactoring (76.8% SWE-Bench)
|
|
64
|
+
- Visual coding (screenshots to code)
|
|
65
|
+
- Parallel exploration (up to 100 sub-agents)
|
|
66
|
+
- Validation and testing workflows
|
|
67
|
+
task_routing:
|
|
68
|
+
default_model: kimi-k2.5
|
|
69
|
+
complexity_indicators:
|
|
70
|
+
complex:
|
|
71
|
+
keywords:
|
|
72
|
+
- design
|
|
73
|
+
- architecture
|
|
74
|
+
- plan
|
|
75
|
+
- coordinate
|
|
76
|
+
- synthesize
|
|
77
|
+
- strategize
|
|
78
|
+
- optimize
|
|
79
|
+
model: glm-5
|
|
80
|
+
simple:
|
|
81
|
+
keywords:
|
|
82
|
+
- implement
|
|
83
|
+
- code
|
|
84
|
+
- refactor
|
|
85
|
+
- write
|
|
86
|
+
- create
|
|
87
|
+
model: kimi-k2.5
|
|
88
|
+
validate:
|
|
89
|
+
keywords:
|
|
90
|
+
- test
|
|
91
|
+
- validate
|
|
92
|
+
- verify
|
|
93
|
+
- check
|
|
94
|
+
- review
|
|
95
|
+
- audit
|
|
96
|
+
model: minimax-2.5
|
|
97
|
+
proxy:
|
|
98
|
+
endpoint: 'http://localhost:4000'
|
|
99
|
+
auth_token: ${LITELLM_AUTH_TOKEN:-sk-litellm-local}
|
|
100
|
+
health_check: 'http://localhost:4000/health'
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# Aether Colony System
|
|
2
|
+
|
|
3
|
+
> This repo uses the Aether colony system for multi-agent development.
|
|
4
|
+
> These rules are auto-distributed by `aether update` — do not edit directly.
|
|
5
|
+
|
|
6
|
+
## Session Recovery
|
|
7
|
+
|
|
8
|
+
On the first message of a new conversation, check if `.aether/data/session.json` exists. If it does:
|
|
9
|
+
|
|
10
|
+
1. Read the file briefly to check for `colony_goal`
|
|
11
|
+
2. If a goal exists, display:
|
|
12
|
+
```
|
|
13
|
+
Previous colony session detected: "{goal}"
|
|
14
|
+
Run /ant:resume to restore context, or continue with a new topic.
|
|
15
|
+
```
|
|
16
|
+
3. Do NOT auto-restore — wait for the user to explicitly run /ant:resume
|
|
17
|
+
|
|
18
|
+
This only applies to genuinely new conversations, not after /clear.
|
|
19
|
+
|
|
20
|
+
## Available Commands
|
|
21
|
+
|
|
22
|
+
### Getting Started
|
|
23
|
+
| Command | Purpose |
|
|
24
|
+
|---------|---------|
|
|
25
|
+
| `/ant:init "<goal>"` | Set colony intention and initialize |
|
|
26
|
+
| `/ant:colonize` | Analyze existing codebase |
|
|
27
|
+
| `/ant:plan` | Generate project phases |
|
|
28
|
+
| `/ant:build <phase>` | Execute a phase with parallel workers |
|
|
29
|
+
| `/ant:continue` | Verify work, extract learnings, advance |
|
|
30
|
+
|
|
31
|
+
### Pheromone Signals
|
|
32
|
+
| Command | Priority | Purpose |
|
|
33
|
+
|---------|----------|---------|
|
|
34
|
+
| `/ant:focus "<area>"` | normal | Guide colony attention |
|
|
35
|
+
| `/ant:redirect "<pattern>"` | high | Hard constraint — avoid this |
|
|
36
|
+
| `/ant:feedback "<note>"` | low | Gentle adjustment |
|
|
37
|
+
|
|
38
|
+
### Status & Monitoring
|
|
39
|
+
| Command | Purpose |
|
|
40
|
+
|---------|---------|
|
|
41
|
+
| `/ant:status` | Colony dashboard |
|
|
42
|
+
| `/ant:phase [N]` | View phase details |
|
|
43
|
+
| `/ant:flags` | List active flags |
|
|
44
|
+
| `/ant:flag "<title>"` | Create a flag |
|
|
45
|
+
| `/ant:history` | Browse colony events |
|
|
46
|
+
| `/ant:watch` | Live tmux monitoring |
|
|
47
|
+
|
|
48
|
+
### Session Management
|
|
49
|
+
| Command | Purpose |
|
|
50
|
+
|---------|---------|
|
|
51
|
+
| `/ant:pause-colony` | Save state and create handoff |
|
|
52
|
+
| `/ant:resume-colony` | Restore from pause |
|
|
53
|
+
| `/ant:resume` | Quick session restore |
|
|
54
|
+
|
|
55
|
+
### Lifecycle
|
|
56
|
+
| Command | Purpose |
|
|
57
|
+
|---------|---------|
|
|
58
|
+
| `/ant:seal` | Seal colony (Crowned Anthill) |
|
|
59
|
+
| `/ant:entomb` | Archive completed colony |
|
|
60
|
+
| `/ant:maturity` | View colony maturity journey |
|
|
61
|
+
| `/ant:update` | Update system files from hub |
|
|
62
|
+
|
|
63
|
+
### Advanced
|
|
64
|
+
| Command | Purpose |
|
|
65
|
+
|---------|---------|
|
|
66
|
+
| `/ant:swarm "<bug>"` | Parallel bug investigation |
|
|
67
|
+
| `/ant:oracle` | Deep research (RALF loop) |
|
|
68
|
+
| `/ant:dream` | Philosophical observation |
|
|
69
|
+
| `/ant:interpret` | Review dreams, discuss actions |
|
|
70
|
+
| `/ant:chaos` | Resilience testing |
|
|
71
|
+
| `/ant:archaeology` | Git history analysis |
|
|
72
|
+
| `/ant:organize` | Codebase hygiene report |
|
|
73
|
+
| `/ant:council` | Intent clarification |
|
|
74
|
+
|
|
75
|
+
## Typical Workflow
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
/ant:init "Build feature X" → Set colony goal
|
|
79
|
+
/ant:colonize → Understand existing code (optional)
|
|
80
|
+
/ant:plan → Generate phases
|
|
81
|
+
/ant:focus "security" → Steer attention (optional)
|
|
82
|
+
/ant:build 1 → Execute phase 1
|
|
83
|
+
/ant:continue → Verify, learn, advance
|
|
84
|
+
/ant:build 2 → Execute phase 2
|
|
85
|
+
...repeat until complete...
|
|
86
|
+
/ant:seal → Seal completed colony
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
After `/clear` or session break: `/ant:resume-colony` to restore context.
|
|
90
|
+
|
|
91
|
+
## Worker Castes
|
|
92
|
+
|
|
93
|
+
Workers are assigned to castes based on task type:
|
|
94
|
+
|
|
95
|
+
| Caste | Role |
|
|
96
|
+
|-------|------|
|
|
97
|
+
| builder | Implementation work |
|
|
98
|
+
| watcher | Monitoring, quality checks |
|
|
99
|
+
| scout | Research, discovery |
|
|
100
|
+
| chaos | Edge case testing |
|
|
101
|
+
| oracle | Deep research (RALF loop) |
|
|
102
|
+
| architect | Planning, design |
|
|
103
|
+
| colonizer | Codebase exploration |
|
|
104
|
+
| route_setter | Phase planning |
|
|
105
|
+
| archaeologist | Git history analysis |
|
|
106
|
+
|
|
107
|
+
## Protected Paths
|
|
108
|
+
|
|
109
|
+
**Never modify these programmatically:**
|
|
110
|
+
|
|
111
|
+
| Path | Reason |
|
|
112
|
+
|------|--------|
|
|
113
|
+
| `.aether/data/` | Colony state (COLONY_STATE.json, session files) |
|
|
114
|
+
| `.aether/dreams/` | Dream journal entries |
|
|
115
|
+
| `.aether/checkpoints/` | Session checkpoints |
|
|
116
|
+
| `.aether/locks/` | File locks |
|
|
117
|
+
|
|
118
|
+
## Colony State
|
|
119
|
+
|
|
120
|
+
State is stored in `.aether/data/COLONY_STATE.json` and includes:
|
|
121
|
+
- Colony goal and current phase
|
|
122
|
+
- Task breakdown and completion status
|
|
123
|
+
- Instincts (learned patterns with confidence scores)
|
|
124
|
+
- Pheromone signals (FOCUS/REDIRECT/FEEDBACK)
|
|
125
|
+
- Event history
|
|
126
|
+
|
|
127
|
+
## Pheromone System
|
|
128
|
+
|
|
129
|
+
Signals guide colony behavior without hard-coding instructions:
|
|
130
|
+
- **FOCUS** — attracts attention to an area (expires at phase end)
|
|
131
|
+
- **REDIRECT** — repels workers from a pattern (high priority, hard constraint)
|
|
132
|
+
- **FEEDBACK** — calibrates behavior based on observation (low priority)
|
|
133
|
+
|
|
134
|
+
Use FOCUS + REDIRECT before builds to steer. Use FEEDBACK after builds to adjust.
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!--
|
|
3
|
+
Aether Shared Types Schema
|
|
4
|
+
|
|
5
|
+
Purpose: Define common types used across all Aether Colony schemas.
|
|
6
|
+
Eliminates duplication of caste enumerations, version patterns,
|
|
7
|
+
and other shared type definitions.
|
|
8
|
+
|
|
9
|
+
Usage: Import into other schemas:
|
|
10
|
+
<xs:import namespace="http://aether.colony/schemas/types/1.0"
|
|
11
|
+
schemaLocation="aether-types.xsd"/>
|
|
12
|
+
|
|
13
|
+
Version: 1.0.0
|
|
14
|
+
Namespace: http://aether.colony/schemas/types/1.0
|
|
15
|
+
-->
|
|
16
|
+
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
|
17
|
+
targetNamespace="http://aether.colony/schemas/types/1.0"
|
|
18
|
+
xmlns:types="http://aether.colony/schemas/types/1.0"
|
|
19
|
+
elementFormDefault="qualified">
|
|
20
|
+
|
|
21
|
+
<xs:annotation>
|
|
22
|
+
<xs:documentation>
|
|
23
|
+
Shared type definitions for the Aether Colony XML schema ecosystem.
|
|
24
|
+
Import this schema to use standardized types for castes, versions,
|
|
25
|
+
timestamps, priorities, and pheromone signal types.
|
|
26
|
+
</xs:documentation>
|
|
27
|
+
</xs:annotation>
|
|
28
|
+
|
|
29
|
+
<!-- ============================================================ -->
|
|
30
|
+
<!-- Caste Enumeration (Source of Truth) -->
|
|
31
|
+
<!-- ============================================================ -->
|
|
32
|
+
|
|
33
|
+
<xs:simpleType name="CasteEnum">
|
|
34
|
+
<xs:annotation>
|
|
35
|
+
<xs:documentation>
|
|
36
|
+
Complete enumeration of all worker castes in the Aether Colony system.
|
|
37
|
+
This is the single source of truth for caste definitions across all schemas.
|
|
38
|
+
</xs:documentation>
|
|
39
|
+
</xs:annotation>
|
|
40
|
+
<xs:restriction base="xs:string">
|
|
41
|
+
<xs:enumeration value="builder"/>
|
|
42
|
+
<xs:enumeration value="watcher"/>
|
|
43
|
+
<xs:enumeration value="scout"/>
|
|
44
|
+
<xs:enumeration value="chaos"/>
|
|
45
|
+
<xs:enumeration value="oracle"/>
|
|
46
|
+
<xs:enumeration value="architect"/>
|
|
47
|
+
<xs:enumeration value="prime"/>
|
|
48
|
+
<xs:enumeration value="colonizer"/>
|
|
49
|
+
<xs:enumeration value="route_setter"/>
|
|
50
|
+
<xs:enumeration value="archaeologist"/>
|
|
51
|
+
<xs:enumeration value="ambassador"/>
|
|
52
|
+
<xs:enumeration value="auditor"/>
|
|
53
|
+
<xs:enumeration value="chronicler"/>
|
|
54
|
+
<xs:enumeration value="gatekeeper"/>
|
|
55
|
+
<xs:enumeration value="guardian"/>
|
|
56
|
+
<xs:enumeration value="includer"/>
|
|
57
|
+
<xs:enumeration value="keeper"/>
|
|
58
|
+
<xs:enumeration value="measurer"/>
|
|
59
|
+
<xs:enumeration value="probe"/>
|
|
60
|
+
<xs:enumeration value="sage"/>
|
|
61
|
+
<xs:enumeration value="tracker"/>
|
|
62
|
+
<xs:enumeration value="weaver"/>
|
|
63
|
+
</xs:restriction>
|
|
64
|
+
</xs:simpleType>
|
|
65
|
+
|
|
66
|
+
<!-- ============================================================ -->
|
|
67
|
+
<!-- Version and Timestamp Types -->
|
|
68
|
+
<!-- ============================================================ -->
|
|
69
|
+
|
|
70
|
+
<xs:simpleType name="VersionType">
|
|
71
|
+
<xs:annotation>
|
|
72
|
+
<xs:documentation>
|
|
73
|
+
Semantic version string format (e.g., 1.0.0, 2.1.3-alpha)
|
|
74
|
+
</xs:documentation>
|
|
75
|
+
</xs:annotation>
|
|
76
|
+
<xs:restriction base="xs:string">
|
|
77
|
+
<xs:pattern value="[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z0-9]+)?"/>
|
|
78
|
+
</xs:restriction>
|
|
79
|
+
</xs:simpleType>
|
|
80
|
+
|
|
81
|
+
<xs:simpleType name="TimestampType">
|
|
82
|
+
<xs:annotation>
|
|
83
|
+
<xs:documentation>
|
|
84
|
+
ISO 8601 timestamp format with optional milliseconds and timezone
|
|
85
|
+
Examples: 2026-02-16T14:30:00Z, 2026-02-16T14:30:00.123+01:00
|
|
86
|
+
</xs:documentation>
|
|
87
|
+
</xs:annotation>
|
|
88
|
+
<xs:restriction base="xs:string">
|
|
89
|
+
<xs:pattern value="\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})?"/>
|
|
90
|
+
</xs:restriction>
|
|
91
|
+
</xs:simpleType>
|
|
92
|
+
|
|
93
|
+
<!-- ============================================================ -->
|
|
94
|
+
<!-- Priority and Signal Types -->
|
|
95
|
+
<!-- ============================================================ -->
|
|
96
|
+
|
|
97
|
+
<xs:simpleType name="PriorityType">
|
|
98
|
+
<xs:annotation>
|
|
99
|
+
<xs:documentation>
|
|
100
|
+
Priority levels for signals, tasks, and various colony operations.
|
|
101
|
+
Ordered from highest to lowest urgency.
|
|
102
|
+
</xs:documentation>
|
|
103
|
+
</xs:annotation>
|
|
104
|
+
<xs:restriction base="xs:string">
|
|
105
|
+
<xs:enumeration value="critical"/>
|
|
106
|
+
<xs:enumeration value="high"/>
|
|
107
|
+
<xs:enumeration value="normal"/>
|
|
108
|
+
<xs:enumeration value="low"/>
|
|
109
|
+
</xs:restriction>
|
|
110
|
+
</xs:simpleType>
|
|
111
|
+
|
|
112
|
+
<xs:simpleType name="PheromoneTypeEnum">
|
|
113
|
+
<xs:annotation>
|
|
114
|
+
<xs:documentation>
|
|
115
|
+
Types of pheromone signals used in colony communication.
|
|
116
|
+
These directional signals guide worker behavior without direct commands.
|
|
117
|
+
</xs:documentation>
|
|
118
|
+
</xs:annotation>
|
|
119
|
+
<xs:restriction base="xs:string">
|
|
120
|
+
<xs:enumeration value="FOCUS"/>
|
|
121
|
+
<xs:enumeration value="REDIRECT"/>
|
|
122
|
+
<xs:enumeration value="FEEDBACK"/>
|
|
123
|
+
<xs:enumeration value="PHILOSOPHY"/>
|
|
124
|
+
<xs:enumeration value="STACK"/>
|
|
125
|
+
<xs:enumeration value="PATTERN"/>
|
|
126
|
+
<xs:enumeration value="DECREE"/>
|
|
127
|
+
</xs:restriction>
|
|
128
|
+
</xs:simpleType>
|
|
129
|
+
|
|
130
|
+
<!-- ============================================================ -->
|
|
131
|
+
<!-- Identifier Types -->
|
|
132
|
+
<!-- ============================================================ -->
|
|
133
|
+
|
|
134
|
+
<xs:simpleType name="IdentifierType">
|
|
135
|
+
<xs:annotation>
|
|
136
|
+
<xs:documentation>
|
|
137
|
+
Standard identifier format: alphanumeric with hyphens and underscores.
|
|
138
|
+
Must start with a letter. Used for IDs, keys, and references.
|
|
139
|
+
</xs:documentation>
|
|
140
|
+
</xs:annotation>
|
|
141
|
+
<xs:restriction base="xs:string">
|
|
142
|
+
<xs:pattern value="[a-zA-Z][a-zA-Z0-9_-]*"/>
|
|
143
|
+
<xs:minLength value="1"/>
|
|
144
|
+
<xs:maxLength value="64"/>
|
|
145
|
+
</xs:restriction>
|
|
146
|
+
</xs:simpleType>
|
|
147
|
+
|
|
148
|
+
<xs:simpleType name="WorkerIdType">
|
|
149
|
+
<xs:annotation>
|
|
150
|
+
<xs:documentation>
|
|
151
|
+
Worker-specific identifier in kebab-case format.
|
|
152
|
+
Must be at least 3 characters for readability.
|
|
153
|
+
</xs:documentation>
|
|
154
|
+
</xs:annotation>
|
|
155
|
+
<xs:restriction base="xs:string">
|
|
156
|
+
<xs:pattern value="[a-z][a-z0-9-]*"/>
|
|
157
|
+
<xs:minLength value="3"/>
|
|
158
|
+
<xs:maxLength value="64"/>
|
|
159
|
+
</xs:restriction>
|
|
160
|
+
</xs:simpleType>
|
|
161
|
+
|
|
162
|
+
<xs:simpleType name="WisdomIdType">
|
|
163
|
+
<xs:annotation>
|
|
164
|
+
<xs:documentation>
|
|
165
|
+
Wisdom entry identifier in kebab-case format.
|
|
166
|
+
Used for queen-wisdom entries and patterns.
|
|
167
|
+
</xs:documentation>
|
|
168
|
+
</xs:annotation>
|
|
169
|
+
<xs:restriction base="xs:string">
|
|
170
|
+
<xs:pattern value="[a-z][a-z0-9-]*"/>
|
|
171
|
+
<xs:minLength value="3"/>
|
|
172
|
+
<xs:maxLength value="64"/>
|
|
173
|
+
</xs:restriction>
|
|
174
|
+
</xs:simpleType>
|
|
175
|
+
|
|
176
|
+
<!-- ============================================================ -->
|
|
177
|
+
<!-- Weight and Confidence Types -->
|
|
178
|
+
<!-- ============================================================ -->
|
|
179
|
+
|
|
180
|
+
<xs:simpleType name="WeightType">
|
|
181
|
+
<xs:annotation>
|
|
182
|
+
<xs:documentation>
|
|
183
|
+
Weight value for tags and priorities, range 0.0 to 1.0.
|
|
184
|
+
Stored with 2 decimal places of precision.
|
|
185
|
+
</xs:documentation>
|
|
186
|
+
</xs:annotation>
|
|
187
|
+
<xs:restriction base="xs:decimal">
|
|
188
|
+
<xs:minInclusive value="0.0"/>
|
|
189
|
+
<xs:maxInclusive value="1.0"/>
|
|
190
|
+
<xs:fractionDigits value="2"/>
|
|
191
|
+
</xs:restriction>
|
|
192
|
+
</xs:simpleType>
|
|
193
|
+
|
|
194
|
+
<xs:simpleType name="ConfidenceType">
|
|
195
|
+
<xs:annotation>
|
|
196
|
+
<xs:documentation>
|
|
197
|
+
Confidence score for wisdom entries and patterns, range 0.0 to 1.0.
|
|
198
|
+
Stored with 2 decimal places of precision.
|
|
199
|
+
</xs:documentation>
|
|
200
|
+
</xs:annotation>
|
|
201
|
+
<xs:restriction base="xs:decimal">
|
|
202
|
+
<xs:minInclusive value="0.0"/>
|
|
203
|
+
<xs:maxInclusive value="1.0"/>
|
|
204
|
+
<xs:fractionDigits value="2"/>
|
|
205
|
+
</xs:restriction>
|
|
206
|
+
</xs:simpleType>
|
|
207
|
+
|
|
208
|
+
<!-- ============================================================ -->
|
|
209
|
+
<!-- Match and Source Types -->
|
|
210
|
+
<!-- ============================================================ -->
|
|
211
|
+
|
|
212
|
+
<xs:simpleType name="MatchEnum">
|
|
213
|
+
<xs:annotation>
|
|
214
|
+
<xs:documentation>
|
|
215
|
+
Match mode for scope filtering: any (at least one), all (all required),
|
|
216
|
+
or none (exclude matching).
|
|
217
|
+
</xs:documentation>
|
|
218
|
+
</xs:annotation>
|
|
219
|
+
<xs:restriction base="xs:string">
|
|
220
|
+
<xs:enumeration value="any"/>
|
|
221
|
+
<xs:enumeration value="all"/>
|
|
222
|
+
<xs:enumeration value="none"/>
|
|
223
|
+
</xs:restriction>
|
|
224
|
+
</xs:simpleType>
|
|
225
|
+
|
|
226
|
+
<xs:simpleType name="SourceTypeEnum">
|
|
227
|
+
<xs:annotation>
|
|
228
|
+
<xs:documentation>
|
|
229
|
+
Source of a signal or entry: user-created, worker-generated,
|
|
230
|
+
system-originated, or from external integration.
|
|
231
|
+
</xs:documentation>
|
|
232
|
+
</xs:annotation>
|
|
233
|
+
<xs:restriction base="xs:string">
|
|
234
|
+
<xs:enumeration value="user"/>
|
|
235
|
+
<xs:enumeration value="worker"/>
|
|
236
|
+
<xs:enumeration value="system"/>
|
|
237
|
+
<xs:enumeration value="external"/>
|
|
238
|
+
</xs:restriction>
|
|
239
|
+
</xs:simpleType>
|
|
240
|
+
|
|
241
|
+
<xs:simpleType name="DataFormatEnum">
|
|
242
|
+
<xs:annotation>
|
|
243
|
+
<xs:documentation>
|
|
244
|
+
Format of structured data attachments.
|
|
245
|
+
</xs:documentation>
|
|
246
|
+
</xs:annotation>
|
|
247
|
+
<xs:restriction base="xs:string">
|
|
248
|
+
<xs:enumeration value="json"/>
|
|
249
|
+
<xs:enumeration value="xml"/>
|
|
250
|
+
<xs:enumeration value="yaml"/>
|
|
251
|
+
<xs:enumeration value="plain"/>
|
|
252
|
+
</xs:restriction>
|
|
253
|
+
</xs:simpleType>
|
|
254
|
+
|
|
255
|
+
</xs:schema>
|