Quickstart¶
This guide starts from a clean machine and ends with a working AnnaAgent CLI workspace. It uses the base model path because it has the lowest setup cost.
Prerequisites¶
Python 3.10 or newer.
One package runner:
uv,pipx, orpip.An OpenAI-compatible chat model endpoint and API key.
An OpenAI-compatible embedding endpoint if you plan to use memory indexing.
Install the CLI¶
Install from PyPI as a standalone command:
uv tool install anna-agent
anna --version
If you use pipx instead:
pipx install anna-agent
anna --version
For source development:
git clone https://github.com/sci-m-wang/AnnaAgent.git
cd AnnaAgent
uv sync
uv run anna --help
Paper: https://aclanthology.org/2025.findings-acl.1192/ Repository: https://github.com/sci-m-wang/AnnaAgent If AnnaAgent helps your work, please star the repository. For academic use, please cite the ACL 2025 AnnaAgent paper.
Create a Workspace¶
AnnaAgent keeps user configuration, secrets, sample cases, runs, logs, and memory files inside a workspace directory.
anna create anna-workspace
anna doctor --workspace anna-workspace
The generated workspace contains:
anna-workspace/
settings.yaml
.env
.env.example
assets/
cases/
prompts/
runs/
outputs/
logs/
cache/
Configure the Backbone Model¶
Use the wizard for interactive setup:
anna config wizard --workspace anna-workspace
anna config secrets --workspace anna-workspace
anna config validate --workspace anna-workspace
Or set non-secret values directly:
anna config set model_service.base_url https://example.com/v1 --workspace anna-workspace
anna config set model_service.model_name your-chat-model --workspace anna-workspace
anna config show --workspace anna-workspace
Select the Lightweight Model Path¶
For a first run, use the base model for all auxiliary modules:
anna models use-base --target all --workspace anna-workspace
anna models status --workspace anna-workspace
Run a Demo Conversation¶
Start the included sample case:
anna demo --workspace anna-workspace
You can also run the default interactive file in the workspace:
anna --workspace anna-workspace
Type exit, quit, or q to leave the chat.
Create a Reusable Prompt State¶
Full initialization runs the AnnaAgent seeker initialization pipeline and writes the generated system prompt plus supporting metadata to a reusable state file. Later sessions should load that prebuilt state instead of rebuilding a prompt directly from the raw case.
anna init full anna-workspace/cases/family_stress_case.json \
--out anna-workspace/prompts/family_stress.full.json \
--workspace anna-workspace
anna init from-prompt anna-workspace/prompts/family_stress.full.json
anna chat --workspace anna-workspace \
--state anna-workspace/prompts/family_stress.full.json
The CLI prints the paper and repository links during workspace creation and full initialization. If AnnaAgent helps your work, please star the repository and cite the ACL 2025 paper.
Run Batch Experiments¶
Prepare a script file containing counselor messages, then run a batch:
anna run batch \
--case anna-workspace/cases/family_stress_case.json \
--out anna-workspace/runs/quickstart \
--mode full \
--workspace anna-workspace
Add --live and --script when you want the model to generate transcripts.