The identity and system prompt builder for Astrid OS.
In the OS model, this capsule is /etc/profile. It owns the agent's spark identity, persists it as capsule state, and assembles the identity plus environment context into a system prompt.
On a spark.v1.request.build event:
- Loads the persisted spark identity from capsule KV state.
- Auto-detects
home://.config/spark.tomlif KV state is empty. - Adds environment context (working directory, platform).
- Publishes the assembled prompt on
spark.v1.response.ready.
If no identity exists yet, the prompt includes onboarding instructions. After onboarding, the LLM calls save_identity, which saves the chosen callsign, class, aura, signal, and core directives to capsule state and writes home://.config/spark.toml as a recovery copy.
State is scoped by Astrid's capsule KV isolation for the calling principal. Session ID is echoed back for react loop correlation.
| Direction | Topic |
|---|---|
| Subscribe | spark.v1.request.build |
| Subscribe | tool.v1.execute.save_identity |
| Subscribe | tool.v1.request.describe |
| Subscribe | cli.v1.command.execute |
| Publish | spark.v1.response.ready |
| Publish | tool.v1.execute.*.result |
| Publish | tool.v1.response.describe.* |
| Publish | agent.v1.response |
cargo build
cargo testDual-licensed under MIT and Apache 2.0.
Copyright (c) 2025-2026 Joshua J. Bouw and Unicity Labs.