Claude
Tasks runs its tasks against a Claude model through the anthropic provider, which speaks to
Anthropic’s OpenAI-compatible endpoint. It is the one route to Claude the tools’ own docs give.
It does not use the Anthropic SDK, and nothing here installs it.
Prove needs no connection of its own. It reads no key and calls no model: under Prove, your agent calls Claude with the client and the key it already has (What Prove does with your code).
Install
Section titled “Install”pip install poisson-tasksCredentials
Section titled “Credentials”An Anthropic API key, in an environment variable in your shell. The provider’s variable is
ANTHROPIC_API_KEY. The settings file records the variable’s name and never the key. Whatever
you call the variable, its name must contain API_KEY, which keeps the key from the program
under test.
Config
Section titled “Config”init writes tasks.toml. With --yes it asks nothing and takes every answer from a flag.
The anthropic provider has no default model, so --model names one as Anthropic spells it.
This check named claude-haiku-5-5. --no-check-key makes no network call, so the command
runs before the key is set, and says so.
poisson-tasks init --yes --no-check-key --provider anthropic --model claude-haiku-5-5 --recipe first-look --tasks-per-level 10Output5 lines · exit 0
ok wrote tasks.toml: depth at 1, 3 and 8, 10 tasks each, against claude-haiku-5-5 tokenizer present key ANTHROPIC_API_KEY is not set; set it in this shell (export ANTHROPIC_API_KEY=…) and run again as one command poisson-tasks doctor --show-command prints itnext: poisson-tasks runThe [model] table it wrote. No price is set for a Claude model, so a run is capped in tokens
until you add the model’s price (The settings file).
[model]provider = "anthropic" # openai | anthropic | ollama | vllm | openai-compatiblename = "claude-haiku-5-5" # the model id the endpoint expectsbase_url = "https://api.anthropic.com/v1/"api_key_env = "ANTHROPIC_API_KEY" # the NAME of the variable that holds the key; "" for none. # Its name must contain API_KEY, which keeps the key from the program under test.doctor says whether this environment can run the settings file, line by line. Its key line
checks the key with one free request to the endpoint. It exits 0 when the environment is ready
and 4 when it is not, and each failing line ends with what to run. It is free: no task runs and
no tokens are spent.
poisson-tasks doctorok this environment is ready to run tasks.toml⋯ 4 lines key ok ANTHROPIC_API_KEY is set, and api.anthropic.com accepts it (a free request)⋯ 2 linesAll output8 lines
ok this environment is ready to run tasks.toml python ok /Users/Shared/gs-cap/venv-tasks/bin/python3 (3.11.7) package ok poisson-tasks 0.4.1 at /Users/Shared/gs-cap/venv-tasks/lib/python3.11/site-packages/poisson_tasks tokenizer ok present (o200k_base, sha256 446a9538cb6c) at /Users/Shared/gs-cap/venv-tasks/lib/python3.11/site-packages/poisson_tasks/data/o200k_base.tiktoken config ok tasks.toml: depth at 1, 3 and 8, 10 tasks each, against claude-haiku-5-5 key ok ANTHROPIC_API_KEY is set, and api.anthropic.com accepts it (a free request) harness ok each run's first episode sets up uv with astral.sh's installer unless uv 0.6.10 or later is already on your PATH, and fetches four packages and their dependencies from PyPI; uv is already at ~/.local/bin/uv platform ok macOS (darwin)With the key accepted, poisson-tasks run prints its plan and what it will cost before it
spends anything (Commands).