Tahyi

Configuration

Reference for Tahyi environment variables and policy settings. Copy .env.example from the repo and fill in values locally — never commit secrets.

For first-run setup, see Quickstart.

Environment file

cp .env.example .env

All credentials are injected via environment variables. Agents read config at wake time — never from hardcoded prompts or repo files.

Core settings

VariableRequiredDefaultDescription
PORTNo4321Control plane HTTP port
TAHYI_ENVNodevelopmentRuntime mode: development, staging, production
TAHYI_DRY_RUNNotrueGlobal dry-run default (pre-0.1 builds)
TAHYI_LOG_LEVELNoinfoLog verbosity: debug, info, warn, error
TAHYI_AUDIT_RETENTION_DAYSNo90Audit log retention period

LLM provider credentials

Tahyi is model-agnostic. Configure at least one provider:

VariableProviderDescription
ANTHROPIC_API_KEYClaude (Anthropic)API key for Claude models
OPENAI_API_KEYOpenAIAPI key for GPT models
GOOGLE_API_KEYGemini (Google)API key for Gemini models
TAHYI_LLM_BASE_URLOpen-source / localBase URL for compatible local endpoints (e.g. Ollama, vLLM)
TAHYI_LLM_MODELAllDefault model identifier per provider

Provider selection is per-specialist in agent config. The global default applies when no per-agent override is set.

Security: Never commit API keys. Use .env locally, secrets manager in production. Tahyi does not log credential values.

Environment registration

Target environments are registered via CLI, not .env:

npx tahyi env register \
  --name staging \
  --type kubernetes \
  --kubeconfig ~/.kube/config
FlagDescription
--nameUnique environment identifier
--typeEnvironment kind (kubernetes in 0.1)
--kubeconfigPath to kubeconfig file
--namespaceOptional default namespace

Environment credentials are stored in the control plane’s local data store — scoped per environment, never shared across environments.

Agent settings

Per-agent overrides via CLI or config file:

npx tahyi agent enable deployment-maintainer \
  --environment staging \
  --dry-run \
  --model claude-sonnet-4-20250514
FlagDescription
--environmentTarget environment name
--dry-runPlan only — no infrastructure side effects
--modelLLM model override for this agent
--heartbeat-intervalWake interval (e.g. 15m, 1h)

Policy settings

Safety policy is configured at the environment level:

SettingDefault (pre-0.1)Description
dry_run_defaulttrueAll agents plan without executing
require_approval_one_waytrueOne-way doors always require human approval
max_blast_radiusunsetOptional cap on affected resources per plan
allowed_environmentsregistered onlyAgents cannot operate on unregistered targets

Production environments should set dry_run_default: false only after policy review and with require_approval_one_way: true.

Audit log

SettingDefaultDescription
TAHYI_AUDIT_RETENTION_DAYS90Days to retain audit entries
TAHYI_AUDIT_EXPORT_PATHunsetOptional path for periodic audit export

Audit entries are append-only. Retention applies to storage cleanup — not to mutating existing entries.

API and CLI reference

Detailed API endpoint and CLI command reference ships with 0.1 when the public scaffold stabilizes. Track on TAH-74.