What problem does it solve? Agents in this project are assembled per run from a capability registry, so there is no @agent.tool decorator or assistant module to extend. This Skill guides you through the only supported path for giving an agent a new tool, capability, guardrail, or approval gate without hitting the silent failure modes the registry makes possible. ## Core Features & Use Cases - Shape selection: Decide whether the ask needs a new tool in an existing capability, a new capability package, a behavior-only capability with no tools, an MCP connection with no code, or a per-agent tool_overrides rename. - Registry contract guidance: Covers every @register argument including tools, config_schema, side_effecting, scopes, conditional secrets, and provider_executed, plus the build function's ctx fields and returning None. - Failure-mode prevention: Explains the three silent failures (a tool missing from tools=, a module missing from load_builtins(), a changed id) and the house rules for tool docstrings and steer() instead of bare ModelRetry. - Use Case: You want the agent to call a new weather API. The Skill walks you through creating backend/app/agents/capabilities/weather/ with init.py, _capability.py, _toolset.py, and README.md, registering it in load_builtins(), and declaring a conditional SecretRequirement. ## Quick Start Ask the agent to add a new capability that gives agents a tool for looking up current weather by city name.