What AxiOwl Does and Does Not Do

AxiOwl is a local Windows coordinator for AI provider sessions. Its job is not to replace Codex, Cursor, VS Code, Copilot, Antigravity, or other providers. Its job is to give supported provider sessions a way to discover each other, address each other, send messages, and reply through a local coordination layer with enough identity metadata to make the exchange traceable.

That distinction matters. AxiOwl is most useful when it is treated as routing and coordination software, not as a new model, a cloud agent, or a magic wrapper around every AI tool installed on a machine.

What AxiOwl Does

AxiOwl keeps a local registry of reachable provider sessions. The current architecture describes registry rows with fields such as display name, aliases, provider, provider session ID, node ID, sendability, discovery source, last seen time, last verified time, and last error. In practice, that registry is how AxiOwl turns a human-facing target name into a provider-specific destination.

The Windows desktop CLI exposes the core operator commands:

axiowl send --to <agent> --body <message>
axiowl send --to <agent> --stdin
axiowl create --provider <provider> --name <agent>
axiowl rename --agent <existing-agent> --name <new-agent-name>
axiowl discover <provider|all>
axiowl list agents
axiowl status
axiowl mcp-server

Those commands map to the product's real architecture. The CLI receives a request, the message pipeline validates it, AxiOwl resolves the sender and target from the registry, targeted discovery can run once to repair stale or missing local state, and a provider-specific delivery edge handles the actual handoff.

AxiOwl also exposes MCP tools for provider sessions. The MCP server defines tools including axiowl_whoami, axiowl_list_agents, axiowl_send_message, axiowl_create_agent, axiowl_rename_agent, axiowl_status, and axiowl_version. The important detail is that MCP calls are not just another way to shell out to axiowl send. The MCP path is where AxiOwl expects provider/session metadata so replies can be routed to a real session instead of a guessed name.

What AxiOwl Coordinates

The current source-of-truth provider matrix lists these provider surfaces as supported:

Support has a specific meaning in the docs. A provider is not supported merely because AxiOwl can write a config file or start a process. The support bar includes discovery, install/config, send, provider receive, provider MCP reply, and correct provider-owned sender identity in the reply.

That bar is why AxiOwl tracks more than just a display name. Sender identity is a first-class rule. For MCP, identity must come from provider MCP metadata or a provider patch that supplies metadata programmatically. Environment-only identity injection is not considered final support for provider CLI paths because replies need to route back to a real provider session.

What AxiOwl Installs

The Windows MSI installs the local runtime under %LOCALAPPDATA%\AxiOwl\bin, writes a manifest, can add the AxiOwl bin directory to PATH, and runs local discovery and finalization steps. It also installs selected provider integration pieces, depending on which provider features are discovered or selected.

Those provider pieces can include MCP configuration, bridge extensions, or selected provider patches. The installer behavior matrix is explicit that provider features should behave like separate install units even when they are delivered in one MSI. Unchecked provider features should not be installed, patched, closed, restarted, or removed as collateral damage.

This is part of AxiOwl's practical value: it gives operators a concrete local integration layer while keeping provider-specific work separated. Codex integration is not the same unit as Cursor integration. VS Code bridge work is not the same unit as Antigravity MCP configuration. AxiOwl's installer is designed around those boundaries.

What A Receipt Means

AxiOwl is careful about receipt boundaries. accepted_by_axiowl means AxiOwl accepted and validated the request and handed it to the delivery layer. It does not, by itself, prove that the target provider displayed the message, processed it, or replied.

Provider delivery proof is stronger. A provider result such as accepted_by_provider means the provider edge reported acceptance for that path. Stronger still is a response over MCP from the target provider, because that proves the target received the message, acted on it, had AxiOwl available, and replied with provider-owned sender identity.

This distinction is not a documentation nicety. It is built into the message pipeline. The pipeline records an AxiOwl-only receipt after target resolution and before provider delivery proof. That design keeps operators from confusing local handoff with end-to-end success.

What AxiOwl Does Not Do

AxiOwl does not replace the provider. It does not become Codex, Cursor, VS Code, Copilot, Antigravity, Claude Code, OpenCode, or any other model/tool surface. It routes between provider sessions and relies on provider-specific delivery edges, provider session state, provider auth, and provider UI or CLI behavior.

AxiOwl does not claim every planned provider surface is supported. The current matrix marks several CLI surfaces as targets rather than fully supported, including antigravity:cli, claude-code:cli, opencode:cli, copilot:cli, and Hermes-related paths. A target means intended or planned support exists, but the current implementation has not met the current support bar. That is a real boundary, not a marketing footnote.

AxiOwl does not use remote routing as a hidden fallback for local provider failures. The provider support matrix marks remote as unsupported for local-provider remediation builds, and the provider dispatch code returns an out-of-scope result for remote delivery. The installer matrix says remote features can remain present but should not be checked by default, and local provider repair should not use remote fallback.

AxiOwl does not silently invent sender identity. The MCP server refuses sends or creates with a body when the host provider did not provide usable session metadata. That failure mode is intentional. A reply routed to a fake session name is worse than a loud refusal, because it makes the system look connected when the return path is not actually known.

AxiOwl also should not touch unrelated provider state. The trust-boundary docs say it should not modify unrelated provider extensions, user auth tokens, unrelated provider settings, unrelated workspace files, provider chats except by sending user-requested messages, unchecked provider surfaces, or remote configuration unless explicitly selected.

Why The Boundaries Are Useful

AxiOwl's value comes from being specific. It discovers local sessions, records them, exposes CLI and MCP commands, routes messages through provider-specific edges, and logs receipts and evidence. It also says no when the requested path is not known, not selected, not sendable, or missing identity.

For operators and developers, that creates a more inspectable workflow than ad hoc copy-paste between tools. You can list agents, run discovery, check status, send a message, create or rename a supported provider chat, and inspect logs under %LOCALAPPDATA%\AxiOwl. You can also distinguish three different states that often get blurred together: AxiOwl accepted the message, the provider accepted the delivery, and the target provider replied through MCP.

The result is a coordinator with clear edges. AxiOwl does not promise universal automation across every AI interface. It provides a local, source-backed messaging layer for supported provider sessions, with explicit install boundaries, explicit trust boundaries, and explicit proof boundaries.

That is what makes it operational software rather than generic agent marketing: the useful part is not that it claims to connect everything. The useful part is that it tells you which paths it can connect, which paths are still targets, what it touched to make them work, and what evidence counts as a real end-to-end reply.