Table of Contents
Capabilities Reference
Current capability inventory for VOX v0.5.4. Each capability lives in its own
directory under src/vox/capabilities/<ns>/<name>/ with capability.py,
capability.yml, and any supporting modules (models.py, client.py, …).
Capabilities are mounted per agent as VOXBoundCapability proxies. The
agent stores them in self.agent.capabilities[cap_id] (e.g.
self.agent.capabilities["ai.llm"]), not as cap_* attributes.
Inventory
| ID | Module | Provides |
|---|---|---|
ai.llm |
vox/capabilities/ai/llm/ |
Unified local/cloud LLM inference: text generation, chat completion, vision inference; semantic cache, prompt sanitization, RAG context injection, complexity-based routing (LLMCapability) |
comm.email |
vox/capabilities/comm/email/ |
Async SMTP email dispatch; exposes send_email command; SMTP_USER/SMTP_PASS are SENSITIVE_PARAMS |
comm.gateway |
vox/capabilities/comm/gateway/ |
Multi-channel messaging: inbound webhook ingestion + outbound delivery via adapters (Telegram, WhatsApp, generic webhook). See Comm Gateway |
comm.voicetotext |
vox/capabilities/comm/voicetotext/ |
Local offline speech-to-text (faster-whisper) with language detection |
net.browser |
vox/capabilities/net/browser/ |
Headless browser automation (page capture, analysis) |
Note:
comm.telegram(pre-v0.5.2) andsys.processesno longer exist as capabilities. Telegram messaging is provided by thecomm.gatewayTelegram adapter.
Configuration sentinels
In bound capability params:
None— required; the agent is flaggedDEGRADEDif missing.""(empty string) — unconfigured / feature inactive; the channel or feature is not mounted.
Optional credentials MUST default to "", never None. A None default on a
system capability mounted on every agent (e.g. comm.gateway) degrades every
agent that does not use the feature. WhatsApp credentials in particular default
to "" so Telegram-only agents stay healthy.
How a capability is mounted
- Roles declare required capability IDs via
REQUIRES(discovered by static AST analysis of the role files). - The orchestrator registry provides the capability singleton.
CapabilityBindermounts it:cap.mount(agent, config)→ bound proxy stored inagent.capabilities[cap_id].- Vault secrets are injected for
SENSITIVE_PARAMS. - Required params are validated; missing ones degrade the agent.
EXPOSED_COMMANDSare registered on the agent as invocable commands.
Overview
- Home
- Versioning
- Architecture Overview
- Building Blocks
Agent Model
- VOXAgent
- Agent Lifecycle
- VOXRole
- Creating an Agent
Capabilities
- VOXCapability
- Capabilities Reference
- Capability Contract
- Comm Gateway
- WhatsApp Setup
Messaging
- VOXMessage
- Messaging Contract
- Hierarchical Messaging Contract
- The War Room
Orchestrator & Control Plane
- VOXOrchestrator
- Orchestrator & Control Plane
- VOXApiServer
Persistence & Forensics
- Segmented Persistence & Forensic Traceability
Security & Governance
- Security Architecture
- Core Ontology (legacy)
- Capability Specification (legacy)
Status: v0.5.4