When building your Charm Agents, you may rely on various external APIs and tools (e.g., search engines, web scrapers, data platforms). The Charm ecosystem securely provisions these credentials dynamically at runtime, ensuring your agent always has the access it needs—without hardcoding secrets into your bundles.Documentation Index
Fetch the complete documentation index at: https://docs.charmos.io/llms.txt
Use this file to discover all available pages before exploring further.
Declaring Required Keys
Starting from UAC schema version0.4.2, your agent’s required environment variables are split logically into models and tools within your charm.yaml manifest:
models: Used for your underlying LLM API keys (e.g.,OPENAI_API_KEY,GEMINI_API_KEY).tools: Used for your External Services and MCP Skills (e.g., Web REST API keys, Data providers).
[!IMPORTANT] Never hardcode API keys in your source code. The Charm Cloud Runner securely resolves and injects these variables directly into your agent’s execution container from the user’s secure vault at runtime.
Pre-Supported Tool Keys
The Charm Store automatically analyzes yourtools definition array upon deployment. Currently, the Global Platform natively supports the following Tool Keys right out of the box:
TAVILY_API_KEY(Tavily Search Engine)FIRECRAWL_API_KEY(Firecrawl Web Scraper)SERPER_API_KEY(Serper Google Search API)BROWSERLESS_API_KEY(Browserless Headless Chrome Integration)JIGSAW_STACK_API_KEY(JigsawStack)BRAVE_API_KEY(Brave Web Search)
Pushing Custom APIs or New Keys
We know developers build custom tools and push the boundaries of agent capabilities. If you are building a custom runtime skill or utilizing an API key not currently on the supported list, here is how you get it supported:- Declare the exact key: Define your unique, custom key (e.g.,
MY_CUSTOM_TOOL_KEY) in thetoolsarray of yourcharm.yaml. - Publish your Agent: Run
charm publishto push your bundle to the Charm Store. - Automated Pending State: The Charm pre-flight systems will intercept the deployment request upon detecting an unknown API requirement, and temporarily park your agent in a
Pending_Platform_Supportstatus. - ChatOps Approval: An automated alert is dispatched to the Charm Infrastructure Team via Discord. The team evaluates the compatibility requirements.
- Auto-Resume & Publication: Once our team reviews and approves the key, your agent gets instantaneously verified and published. Your unique tool key is subsequently seeded into the global repository, meaning all future deployments involving this key will be instantly validated!
[!TIP] Need an API key approved faster for a time-critical deployment? Don’t hesitate to directly reach out to the core team in our Community Discord server.
