How-to

Point Kno at a real provider

Switch Kno from the free local agent to an OpenAI-compatible endpoint, the Anthropic API, or your own agent behind a shell command.

The default agent is fake:, free, local, deterministic. The quickstart proves the loop on it. For numbers that mean something, point Kno at the agent you actually use.

Keys come from the environment

Never from a flag, never from kno.yaml:

export OPENAI_API_KEY=sk-...
kno baseline --evals cases.jsonl --agent openai:gpt-4.1 --max-cost-usd 2.00 --yes

OpenAI-compatible endpoints

Any OpenAI-compatible endpoint works via --base-url:

kno baseline --evals cases.jsonl --agent openai:<model> \
  --base-url https://your-endpoint.example/v1

Local runtimes, vLLM, Ollama, llama.cpp, need no key:

kno baseline --evals cases.jsonl --agent openai:llama-3.1-8b \
  --base-url http://localhost:11434/v1

Anthropic

export ANTHROPIC_API_KEY=sk-ant-...
kno baseline --evals cases.jsonl --agent anthropic:claude-sonnet-5 \
  --max-output-tokens 1024 --max-cost-usd 2.00 --yes

--max-output-tokens is required for the Anthropic adapter.

Your own agent behind a shell command

The exec: adapter runs any shell command as the agent, your harness, your model router, anything:

kno baseline --evals cases.jsonl --agent exec:./my-agent.sh

Budget every real run

Pointing at a provider that bills you is exactly when the budget guard matters: --max-cost-usd with --yes makes a run unattended-safe. Kno prices each case from its own table, so the cap binds before the call , not at settlement. See Set a budget.

What ships

openai:, anthropic:, bedrock:, vertex:, exec:, and fake: ship today. Bedrock (Converse, SigV4) and Vertex (:rawPredict) use environment-only credentials, no key flags, ever. The Tuner adapter, with a proxy fine-tuning bridge, arrives in v0.2.

← All docs