93 lines
3.7 KiB
TOML
93 lines
3.7 KiB
TOML
# Pigo global configuration (example template)
|
|
# Copy this file to ~/.config/pigo/config.toml and fill in your own values.
|
|
# https://github.com/smallnest/pigo
|
|
|
|
# Provider base URL (overrides the provider's default endpoint).
|
|
# Leave unset to use the selected provider's built-in default.
|
|
# base_url = "https://api.anthropic.com/v1"
|
|
|
|
# Default model to use.
|
|
model = "claude-opus-4-8"
|
|
|
|
# API key for authentication.
|
|
# Prefer supplying this via the <PROVIDER>_API_KEY environment variable
|
|
# (e.g. ANTHROPIC_API_KEY) instead of committing it to a config file.
|
|
# api_key = "your-api-key-here"
|
|
|
|
# Output format: text | stream-json
|
|
output_format = "text"
|
|
|
|
# Trust the working directory for this run: skip the first-launch trust prompt.
|
|
approve = false
|
|
|
|
# Disable the built-in file/shell tools.
|
|
no_tools = false
|
|
|
|
# Tool-level admission control (the middle ground between "all tools" and
|
|
# no_tools). Names match case-insensitively, so "Read" hits the built-in "read".
|
|
# disallowed_tools wins when a name appears in both lists (fail-closed).
|
|
#
|
|
# A boundary declared here is a HARD boundary: filtering happens at the tool-
|
|
# registration layer, so `approve = true` waives per-call confirmation but can
|
|
# never let the model reach a tool outside the boundary. Task sub-agents inherit
|
|
# it too. An unknown tool name aborts startup with exit code 2 rather than being
|
|
# silently ignored.
|
|
#
|
|
# Each CLI flag REPLACES its own file value wholesale (it does not merge):
|
|
# --allowed-tools overrides allowed_tools, --disallowed-tools overrides
|
|
# disallowed_tools, independently. So a CLI --allowed-tools can widen what
|
|
# allowed_tools narrowed. Note the two lists stay independent and deny still
|
|
# wins: a file-level disallowed_tools is NOT lifted by a CLI --allowed-tools —
|
|
# to re-admit a tool the file denied, override --disallowed-tools on the CLI.
|
|
# Parameter-level forms such as Bash(git log:*) are not supported yet.
|
|
# allowed_tools = ["read", "grep"]
|
|
# disallowed_tools = ["bash", "bash_output", "kill_bash"]
|
|
|
|
# Disable skill discovery (do not load skills under ~/.agents/skills as /skill-name commands).
|
|
no_skills = false
|
|
|
|
# Force wire protocol for a custom endpoint: openai | anthropic
|
|
# protocol = "anthropic"
|
|
|
|
# Run in headless print mode with the given prompt.
|
|
# print = ""
|
|
|
|
# Resume the most recent interactive session.
|
|
# continue = false
|
|
|
|
# List stored interactive sessions and exit.
|
|
# list_sessions = false
|
|
|
|
# Resume the interactive session with this id.
|
|
# resume = ""
|
|
|
|
# Internal: run as a process-isolated sub-agent JSON-RPC server over stdio (US-019).
|
|
# subagent_rpc = false
|
|
|
|
# --- Persistent memory + infinite context (nested tables) ---
|
|
|
|
# [memory] controls the persistent memory system. All keys are optional and
|
|
# default to the values shown; set memory.enabled = false to fully disable it.
|
|
# [memory]
|
|
# enabled = true # master switch for the memory system
|
|
# reconcile_on_search = true # lazily re-index memory files before each search
|
|
# search_score_floor = 0.15 # drop search hits below this relevance score (0..1)
|
|
# cc_index = false # also index the Claude Code memory directory (read-only)
|
|
|
|
# [checkpoint] controls infinite-context checkpointing.
|
|
# [checkpoint]
|
|
# thresholds = ["40%", "60%", "80%"] # context-window fill levels that trigger compaction
|
|
# reserved = 4096 # optional: tokens to reserve (int) or a percentage ("10%")
|
|
|
|
# [checkpoint.push_caps] caps per-section injection token budgets.
|
|
# [checkpoint.push_caps]
|
|
# memory = 800
|
|
# recall = 1200
|
|
|
|
# [compaction] tunes auto-compaction.
|
|
# [compaction]
|
|
# max_context accepts a token count (300000), a K/M suffix ("300K", "1M"), or a
|
|
# percentage of the provider window ("50%"). It only lowers the trigger point and
|
|
# is always clamped by the provider limit.
|
|
# max_context = "300K"
|