Skip to content

Use a real model

Generate a starter with one official provider. The CLI writes the correct optional dependency and provider constructor, but it never writes an API key.

OpenAI

muru init openai-agent --provider openai
$env:OPENAI_API_KEY = "your-key"
cd openai-agent
python -m pip install -r requirements.txt
muru run app:application

The starter uses OpenAIModel with gpt-5.6-terra. See the OpenAI guide for model overrides and request translation.

Anthropic

muru init anthropic-agent --provider anthropic
$env:ANTHROPIC_API_KEY = "your-key"
cd anthropic-agent
python -m pip install -r requirements.txt
muru run app:application

The starter uses AnthropicModel with claude-sonnet-5. See the Anthropic guide.

Google

muru init google-agent --provider google
$env:GOOGLE_API_KEY = "your-key"
cd google-agent
python -m pip install -r requirements.txt
muru run app:application

The starter uses GoogleGenAIModel with gemini-3.5-flash. See the Google Gen AI guide.

Keep credentials outside source

Provider SDKs read their standard environment variables when the first run starts. Do not put keys in app.py, generated files, session metadata, tool arguments, or committed .env files.

Keep the runtime portable

Only the provider import and model constructor differ among these starters. Agents, tools, permissions, approval handling, sessions, events, and Workspace behavior stay on the same AgentMuru contract.