Documentation Index
Fetch the complete documentation index at: https://docs.pome.sh/llms.txt
Use this file to discover all available pages before exploring further.
The pome CLI reads several environment variables for authentication, LLM configuration, and runtime overrides. Environment variables take precedence over .pome.json values but are themselves overridden by explicit CLI flags.
Authentication
These variables let you authenticate without running pome login — essential for CI pipelines and automated environments.
| Variable | Purpose |
|---|
POME_API_KEY | Long-lived API key for hosted Pome. Format: pme_.... Set this in CI instead of running pome login. The CLI reads this automatically; no credentials file is written. |
POME_API_URL | Override the cloud API base URL. Equivalent to the --api-url global flag. Useful for self-hosted deployments or staging environments. |
# CI usage
export POME_API_KEY=pme_yourteamkey
pome run scenarios/
LLM configuration (for [P] evaluation)
Pome evaluates [P] (prompt-based) success criteria using a judge LLM that you configure and pay for directly — Pome never proxies your LLM traffic or holds your keys. Set these variables to point the CLI at any OpenAI-compatible endpoint.
| Variable | Purpose |
|---|
POME_LLM_BASE_URL | OpenAI-compatible endpoint for the judge. Examples: https://openrouter.ai/api/v1, https://api.openai.com/v1, http://localhost:11434/v1 (Ollama). |
POME_LLM_API_KEY | API key for the configured LLM endpoint. |
POME_LLM_MODEL | Model identifier passed to the endpoint as-is. Examples: claude-haiku-4-5, gpt-4o-mini, anthropic/claude-haiku-4-5 (for OpenRouter). |
OPENAI_API_KEY | Auto-detected fallback. If POME_LLM_* variables are unset and this variable is set, the CLI uses https://api.openai.com/v1 with this key. |
ANTHROPIC_API_KEY | Auto-detected fallback. If POME_LLM_* and OPENAI_API_KEY are all unset and this variable is set, the CLI uses Anthropic’s native endpoint with this key. |
# OpenRouter (recommended default)
export POME_LLM_BASE_URL=https://openrouter.ai/api/v1
export POME_LLM_API_KEY=sk-or-...
export POME_LLM_MODEL=anthropic/claude-haiku-4-5
# Ollama (fully offline / air-gapped)
export POME_LLM_BASE_URL=http://localhost:11434/v1
export POME_LLM_MODEL=llama3
OpenRouter is the zero-friction default for bring-your-own-key evaluation — one API key gives you access to all major model providers. It’s ideal if you want to switch models without managing multiple keys or endpoints.
Agent-side variables (set by pome run)
pome run injects the following environment variables into your agent process before it starts. Read these variables in your agent to know what task to perform and how to reach the twin.
| Variable | Purpose |
|---|
POME_TASK | The agent’s task text, taken from the ## Prompt section of the scenario file. |
POME_GITHUB_REST_URL | Base URL for the GitHub-shaped REST surface on the active twin session (e.g., http://localhost:3333 in OSS mode). |
POME_AUTH_TOKEN | Bearer token for authenticating twin requests in hosted mode. Include this as Authorization: Bearer $POME_AUTH_TOKEN on every request to the twin. |
POME_TWIN_NAMES | Comma-separated list of twin names active in this session (e.g., github). |
POME_RUN_ID | Unique identifier for the current run. Use this if your agent writes its own artifacts and wants to correlate them with Pome’s trace. |
POME_ARTIFACTS_DIR | Directory path where your agent can write additional artifacts. Pome includes this directory in the run bundle. |
POME_PREFLIGHT | Set to "1" during the preflight check that runs before each scenario. Your agent should exit 0 immediately when this is set. |
Minimum agent pattern that handles preflight correctly:
if (process.env.POME_PREFLIGHT === "1") {
console.log("preflight ok");
process.exit(0);
}
const task = process.env.POME_TASK;
const githubUrl = process.env.POME_GITHUB_REST_URL;
if (!task || !githubUrl) {
throw new Error("POME_TASK and POME_GITHUB_REST_URL are required");
}
// Your agent logic here
Debug
| Variable | Purpose |
|---|
POME_DEBUG | Set to any non-empty value to enable debug logging to stderr. Equivalent to the --verbose / -v global flag. |
POME_DEBUG=1 pome run scenarios/01-bug-happy-path.md