Module: RubynCode::Config::Defaults
- Defined in:
- lib/rubyn_code/config/defaults.rb
Constant Summary collapse
- HOME_DIR =
File.('~/.rubyn-code')
- CONFIG_FILE =
File.join(HOME_DIR, 'config.yml')
- DB_FILE =
File.join(HOME_DIR, 'rubyn_code.db')
- TOKENS_FILE =
File.join(HOME_DIR, 'tokens.yml')
- SESSIONS_DIR =
File.join(HOME_DIR, 'sessions')
- MEMORIES_DIR =
File.join(HOME_DIR, 'memories')
- DEFAULT_PROVIDER =
'anthropic'- DEFAULT_MODEL =
'claude-opus-4-6'- MODEL_MODE =
‘auto’ or ‘manual’
'auto'- MAX_ITERATIONS =
200- MAX_SUB_AGENT_ITERATIONS =
200- MAX_EXPLORE_AGENT_ITERATIONS =
200- CAPPED_MAX_OUTPUT_TOKENS =
Output token management (3-tier recovery, matches Claude Code)
8_000- ESCALATED_MAX_OUTPUT_TOKENS =
Default cap — keeps prompt cache efficient
32_000- MAX_OUTPUT_TOKENS_RECOVERY_LIMIT =
Silent escalation on first max_tokens hit
3- MAX_OUTPUT_CHARS =
Multi-turn recovery attempts after escalation
10_000- MAX_TOOL_RESULT_CHARS =
Per-tool result cap
10_000- MAX_MESSAGE_TOOL_RESULTS_CHARS =
Aggregate cap for all tool results in one message
50_000- CONTEXT_THRESHOLD_TOKENS =
80_000- MICRO_COMPACT_KEEP_RECENT =
2- POLL_INTERVAL =
5- IDLE_TIMEOUT =
60- SESSION_BUDGET_USD =
5.00- DAILY_BUDGET_USD =
10.00- OAUTH_CLIENT_ID =
'rubyn-code'- OAUTH_REDIRECT_URI =
'http://localhost:19275/callback'- OAUTH_AUTHORIZE_URL =
'https://claude.ai/oauth/authorize'- OAUTH_TOKEN_URL =
'https://claude.ai/oauth/token'- OAUTH_SCOPES =
'user:read model:read model:write'- PROVIDER_ENV_KEYS =
Known provider configurations: provider name → { env_key:, base_url: (if not default) }
{ 'anthropic' => 'ANTHROPIC_API_KEY', 'openai' => 'OPENAI_API_KEY', 'groq' => 'GROQ_API_KEY', 'together' => 'TOGETHER_API_KEY', 'ollama' => 'OLLAMA_API_KEY' }.freeze
- DANGEROUS_PATTERNS =
[ 'rm -rf /', 'sudo rm', 'shutdown', 'reboot', '> /dev/', 'mkfs', 'dd if=', ':(){:|:&};:' ].freeze
- SCRUB_ENV_VARS =
%w[ API_KEY SECRET TOKEN PASSWORD CREDENTIAL PRIVATE_KEY ACCESS_KEY SESSION_KEY ].freeze