Repository navigation
Expand file tree
/
Copy pathconfig.example.toml
More file actions
88 lines (81 loc) · 4.03 KB
/
Copy pathconfig.example.toml
File metadata and controls
88 lines (81 loc) · 4.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# Copy to your chosen user config path, then replace the URL and model IDs.
# Keys are read from environment variables; do not paste credentials here.
default_connection = "proxy"
default_model = "REPLACE_WITH_MODEL_ID"
[connections.proxy]
# api = "responses" # Or "chat_completions" (stateless history, no reasoning-item replay)
# or "anthropic_messages" (native Anthropic API; see max_tokens).
# max_tokens = 32768 # anthropic_messages only.
base_url = "https://proxy.example/v1"
api_key_env = "SHELLBOY_API_KEY"
# Optional: send the raw environment value in this header instead of Bearer auth.
# api_key_header = "x-api-key" # Or Azure's "api-key"; valid for every api dialect.
# Set false only to disable certificate verification for this connection.
# ssl_verify = true
# Conversation/summary Responses headers identify each Thread automatically.
# session_header = true
# Optional Responses body key; enable only when supported by your provider.
# prompt_cache_key = false
# Opt-in Responses comparison with the Thread's last adopted response ID.
# prompt_cache_diagnostics = false
# Role for Shellboy-inserted context; use "user" behind gateways that reject a
# conversation not ending with a user message (e.g. LiteLLM in front of Claude).
# context_role = "developer"
# Provider-specific options Shellboy sends without interpreting them.
# extra_body = { temperature = 0.2 }
# extra_headers = { "X-Beta-Feature" = "alpha" }
# Positive Responses header wait, including request upload.
# response_header_timeout_ms = 120000
# Maximum receive inactivity after headers; 0 disables only this body limit.
# Active streams have no total-duration limit.
# stream_idle_timeout_ms = 600000
# Total timeout for non-streaming requests (models, embeddings); minimum 1000.
# request_timeout_ms = 60000
# Consecutive transient retries; successful adopted responses reset this budget.
# response_max_retries = 8
# Exponential backoff cap; Retry-After uses a separate fixed 10-minute cap.
# response_retry_max_delay_ms = 60000
# Retry interrupted partial streams; false keeps partial failures for manual recovery.
# response_retry_partial = true
# From the second eligible consecutive failure, maximally reduce safe context.
# auto_trim_on_disconnect = true
# No input-size threshold or pre-POST reduction; all resends share the retry budget.
# default_effort = "YOUR_PROVIDER_SUPPORTED_VALUE"
# Embeddings are optional. Enabling them indexes newly finalized conversation
# text; old conversation backfill still requires an explicit selection.
# [embedding]
# connection = "proxy"
# model = "REPLACE_WITH_EMBEDDING_MODEL_ID"
# Optional synchronous request aggregation; select caps supported by your proxy.
# batch_max_inputs = 1 # 1..128; default keeps singleton requests
# batch_max_chars = 64000 # 1..1048576 Unicode characters; covers split_chars if batching
[retention]
tool_raw_days = 7
tool_raw_bytes = 1073741824
clipboard_days = 7
clipboard_bytes = 268435456
[ui]
# UI language: "en" (default) or "ja"; restart the TUI after changing it.
language = "en"
# Maximum owned-work rows above the composer, from 1 to 10 (default 3).
live_work_rows = 3
# program_status = "on" # OSC7501 terminal status; "off" emits nothing.
# motion = "on" # "off" keeps the spinner, heading blink and status shimmer static.
# Header/user surfaces: dark or light; NO_COLOR uses plain markers instead.
palette = "dark"
# Notify once when a new recovery wait needs attention (terminal bell).
bell = true
# Stop automatic conversation embeddings without disabling standalone RAG.
# Explicit index backfill/rebuild/probe can still incur API cost.
[indexing]
auto_history = true
# Explicit compact --summary limits; either key may be used alone in this section.
# The smaller limit wins, with an effective floor of 2000 Unicode characters.
# [compaction]
# summary_max_chars = 20000
# summary_max_percent = 5
# summary_map_max_requests = 128 # 1..4096; cached parts do not consume requests
# summary_reduce_max_requests = 16 # 1..4096
[shell]
# Model-authored tool-row labels; false removes the parameter from generation tools.
describe_calls = true