Start with the defaults
New brains use none@v0 for extraction, embeddings, and composition. Model-dependent tasks are disabled until configured. Importing sources does not automatically extract claims.
Configure extraction and composition
The default provider for these tasks is OpenRouter. Set OPENROUTER_API_KEY in the process environment using your normal secret-management workflow. Choose model identifiers supported by your provider, then use versioned pins:
serenity config set-model extraction '<model-id>@<version>'
serenity config set-model composer '<model-id>@<version>'
serenity extract
serenity ask "What are my current project priorities?"Replace the placeholders with actual model pins. Credentials come from environment variables, not serenity.yml. Model calls may incur provider charges.
Embeddings are separate
Embedding configuration uses an OpenAI-compatible endpoint and separate credentials. It does not follow the extraction/composer provider setting. See the provider reference before configuring an embedding model.
The search CLI currently uses full-text search even when an embedding model is pinned. Answer composition can use query embeddings when configured.
Using a local provider
Local OpenAI-compatible endpoints can be configured for supported provider paths. Endpoint choice, model naming, and the extraction/composer adapter selection matter. Follow the exact provider reference rather than assuming every pin routes identically.
Read answers with the evidence
A citation gives you a way to inspect support; it does not make every generated claim correct. Open the cited source, check that the context matches, and use direct search when you need the original wording.