Skill v1.0.0
currentAutomated scan100/100version: "1.0.0" name: patient-simulator description: Use this skill whenever the user wants an agentic LLM to install, configure, initialize, run, batch, troubleshoot, or document AnnaAgent seeker/virtual-patient simulation from the CLI. This skill is especially relevant for tasks mentioning AnnaAgent, seeker simulation, virtual patient initialization, anna init full, reusable prompt states, anna chat --state, SFT model services, vLLM deployment, or publishing AnnaAgent agent skills to registries such as ClawHub.
Patient Simulator CLI Skill
Use this skill to operate AnnaAgent as a realistic psychological-counseling seeker simulator. AnnaAgent is a seeker agent: it simulates the client/visitor in a counseling dialogue, while the human or external system provides counselor turns.
Core Mental Model
AnnaAgent has two supported initialization paths:
- Run the full initialization pipeline and save the generated reusable prompt
state with anna init full ... --out <state.json>.
- Load that saved state later with
anna chat --state <state.json>or validate
it with anna init from-prompt <state.json>.
Do not invent or use a shortcut that builds a prompt directly from a raw case. The old prompt-only path bypassed AnnaAgent's seeker simulation modules and produced the wrong prompt format.
Research Attribution
When presenting AnnaAgent to a user, include these links:
- Paper: https://aclanthology.org/2025.findings-acl.1192/
- Repository: https://github.com/sci-m-wang/AnnaAgent
If AnnaAgent helps the user's work, ask them to star the repository. For academic use, ask them to cite the ACL 2025 AnnaAgent paper.
Safe Operating Rules
- Treat
.envand API keys as secrets. Never print or commit real keys. - Keep generated runs, logs, caches, local memories, and virtual environments out
of commits.
- Prefer
uv tool install anna-agentorpip install -U anna-agentfor users. - Use
anna test model,anna test embedding, andanna doctorbefore a costly
full initialization.
- Remember that
servers.counseloris historical/legacy naming. AnnaAgent's
internal seeker modules should normally use the configured model_service.
Standard CLI Workflow
pip install -U anna-agentanna --versionanna create anna-workspaceanna config secrets --workspace anna-workspaceanna config set model_service.base_url https://your-openai-compatible-endpoint/v1 \--workspace anna-workspaceanna config set model_service.model_name your-chat-model \--workspace anna-workspaceanna test model --workspace anna-workspaceanna test embedding --workspace anna-workspaceanna init full anna-workspace/cases/family_stress_case.json \--out anna-workspace/prompts/family.full.json \--workspace anna-workspaceanna chat --workspace anna-workspace \--state anna-workspace/prompts/family.full.json
For the full command map, read references/cli-workflow.md.
SFT and vLLM Workflow
Start with the base model unless the user has GPU resources and wants the paper SFT modules.
anna models use-base --target all --workspace anna-workspace
For SFT/vLLM deployment, read references/cli-workflow.md before running commands. Check GPU, CUDA, and vLLM availability first; use anna models deploy --dry-run when uncertain.
Troubleshooting Pattern
- Run
anna doctor --workspace <workspace>for local/config checks. - Run
anna test model --workspace <workspace>for live backbone connectivity. - If full initialization fails at model calls, inspect whether the active
model_service key/base URL/model are correct.
- If SFT services fail, run
anna models status --workspace <workspace>and
inspect logs/services/*.log.
- If a state file has
mode: prompt_only, reject it and regenerate with
anna init full.
Public Skill Publishing
To publish this skill to a public skill registry, keep the folder intact:
patient-simulator/SKILL.mdreferences/
Read references/publishing.md for a ClawHub-style release checklist.
Expected Output Style
When helping a user, provide direct runnable commands and short explanations. Avoid broad conceptual detours unless the user asks. If you change repository files, run focused checks and tell the user exactly what passed.