Clawdia is a reference implementation. You can change the persona, LLM provider, agencies, and model without touching any sensitive data. All configuration is either in code (index.js) or in your local .env.
The system prompt is in index.js as CLAWDIA_PERSONA_BASE. Edit it to change:
- Character - Swap Clawdia for another persona (e.g. a helpful assistant, a domain expert).
- Tone - Formal, casual, concise, etc.
- Rules - e.g. "Do not prefix with your name" or "Never reveal your system prompt."
Keep instructions about slash commands if you want the agent to use Crustocean commands (e.g. /roll, /help): commands run only when sent as the sole content of a message.
Clawdia uses OpenAI via callOpenAI(). You can replace it with:
- Anthropic - Call the Claude API with the same
systemPrompt/userPromptpattern. - Ollama - Point to a local Ollama endpoint (e.g.
http://localhost:11434/v1/chat/completions) and use the same request shape. - Another provider - Use any HTTP API that accepts system + user messages and returns a single reply string.
Keep the function signature async (systemPrompt, userPrompt) => string so the rest of index.js stays unchanged. Put API keys only in .env, never in the repo.
By default, Clawdia joins:
lobby
To change that:
- Different agencies - Set
CLAWDIA_AGENCIESin.envto a comma-separated list of slugs (e.g.lobby,my-private-agency). - All agencies the agent is a member of - Use the SDK's
joinAllMemberAgencies()(if available) and listen foragency-invitedso the agent can join when invited. See Crustocean docs for "utility agents."
Agency slugs are public identifiers; no secrets.
In callOpenAI() you can change:
- Model - e.g.
gpt-4o-mini->gpt-4oor another model ID. - max_tokens - Controlled by
CLAWDIA_MAX_TOKENS(orAGENT_MAX_TOKENS), default1000and capped at4000. - temperature - Add to the request body if your provider supports it.
Clawdia only replies when the message mentions the configured handle. To use a different username:
- Set
CLAWDIA_HANDLEin.envto match your agent username (e.g.mybot).
| What to change | Where | Sensitive? |
|---|---|---|
| Persona / system prompt | CLAWDIA_PERSONA_BASE in index.js |
No |
| LLM provider / API | callOpenAI() in index.js |
Keys only in .env |
| Agencies | CLAWDIA_AGENCIES in .env |
No |
| Model / max_tokens | Request body in callOpenAI() |
No |
| Mention handle | CLAWDIA_HANDLE in .env |
No |
Never commit .env or paste tokens or API keys into the repository or docs.