# ╔══════════════════════════════════════════════════════════════════════════════╗ # ║ DeepSeek TUI Configuration ║ # ║ ║ # ║ Unofficial CLI for DeepSeek Platform - Not affiliated with DeepSeek Inc. ║ # ╚══════════════════════════════════════════════════════════════════════════════╝ # See `docs/CONFIGURATION.md` for how config is loaded (profiles, env overrides, etc.). # ───────────────────────────────────────────────────────────────────────────────── # API Keys # ───────────────────────────────────────────────────────────────────────────────── provider = "deepseek" # deepseek | nvidia-nim api_key = "YOUR_DEEPSEEK_API_KEY" # must be non-empty # ───────────────────────────────────────────────────────────────────────────────── # Base URLs # ───────────────────────────────────────────────────────────────────────────────── base_url = "https://api.deepseek.com" # base_url = "https://api.deepseeki.com" # China users # base_url = "https://api.deepseek.com/beta" # DeepSeek beta features such as strict tool mode # For NVIDIA NIM-hosted DeepSeek: # provider = "nvidia-nim" # api_key = "YOUR_NVIDIA_API_KEY" # base_url = "https://integrate.api.nvidia.com/v1" # ───────────────────────────────────────────────────────────────────────────────── # Default Models # ───────────────────────────────────────────────────────────────────────────────── # DeepSeek V4 family: # deepseek-v4-pro — flagship reasoning model on DeepSeek Platform # deepseek-v4-flash — fast, cost-efficient (legacy aliases: deepseek-chat, deepseek-reasoner) # deepseek-ai/deepseek-v4-pro — NVIDIA NIM-hosted Pro model ID # deepseek-ai/deepseek-v4-flash — NVIDIA NIM-hosted Flash model ID default_text_model = "deepseek-v4-pro" # ───────────────────────────────────────────────────────────────────────────────── # Thinking Mode (DeepSeek V4 reasoning effort) # ───────────────────────────────────────────────────────────────────────────────── # "off" — disables chain-of-thought (thinking.type = disabled) # "low" — compat-maps to "high" server-side # "medium" — compat-maps to "high" server-side # "high" — reasoning_effort = high (DeepSeek default) # "max" — reasoning_effort = max (deepest reasoning) # # Shift+Tab in the TUI cycles between off / high / max. The header shows the # current tier as a ⚡ chip. reasoning_effort = "max" # ───────────────────────────────────────────────────────────────────────────────── # Paths # ───────────────────────────────────────────────────────────────────────────────── skills_dir = "~/.deepseek/skills" mcp_config_path = "~/.deepseek/mcp.json" notes_path = "~/.deepseek/notes.txt" memory_path = "~/.deepseek/memory.md" # Parsed but currently unused (reserved for future versions): # tools_file = "./tools.json" # ───────────────────────────────────────────────────────────────────────────────── # Security # ───────────────────────────────────────────────────────────────────────────────── allow_shell = true approval_policy = "on-request" # on-request | untrusted | never sandbox_mode = "workspace-write" # read-only | workspace-write | danger-full-access | external-sandbox max_subagents = 5 # optional (1-20) # Optional managed policy paths (defaults to /etc/deepseek/*.toml on unix): # managed_config_path = "/etc/deepseek/managed_config.toml" # requirements_path = "/etc/deepseek/requirements.toml" # ───────────────────────────────────────────────────────────────────────────────── # TUI # ───────────────────────────────────────────────────────────────────────────────── [tui] alternate_screen = "auto" # auto | always | never mouse_capture = true # true keeps wheel scrolling inside the TUI; false allows terminal-native drag selection/copy # ───────────────────────────────────────────────────────────────────────────────── # Feature Flags # ───────────────────────────────────────────────────────────────────────────────── [features] shell_tool = true subagents = true web_search = true # enables canonical web.run plus the compatibility web_search alias apply_patch = true mcp = true exec_policy = true # ───────────────────────────────────────────────────────────────────────────────── # Retry Configuration # ───────────────────────────────────────────────────────────────────────────────── [retry] enabled = true max_retries = 3 initial_delay = 1.0 max_delay = 60.0 exponential_base = 2.0 # ───────────────────────────────────────────────────────────────────────────────── # Context Compaction # ───────────────────────────────────────────────────────────────────────────────── # Auto-compaction is a saved UI setting edited with `/config` (`auto_compact`). # There is no config-file `[compaction]` table yet; detailed thresholds are # chosen by the TUI from the active model/context budget. # ───────────────────────────────────────────────────────────────────────────────── # Capacity Controller (runtime pressure guardrails) # ───────────────────────────────────────────────────────────────────────────────── [capacity] enabled = true low_risk_max = 0.34 medium_risk_max = 0.62 severe_min_slack = -0.25 severe_violation_ratio = 0.40 refresh_cooldown_turns = 2 replan_cooldown_turns = 5 max_replay_per_turn = 1 min_turns_before_guardrail = 2 profile_window = 8 deepseek_v3_2_chat_prior = 3.9 deepseek_v3_2_reasoner_prior = 4.1 fallback_default_prior = 3.8 # ───────────────────────────────────────────────────────────────────────────────── # Profile Example (for multiple environments) # ───────────────────────────────────────────────────────────────────────────────── # Select a profile with `deepseek --profile ` or `DEEPSEEK_PROFILE=`. [profiles.work] api_key = "WORK_DEEPSEEK_API_KEY" base_url = "https://api.deepseek.com" [profiles.dev] api_key = "DEV_DEEPSEEK_API_KEY" allow_shell = true [profiles.nvidia-nim] provider = "nvidia-nim" api_key = "YOUR_NVIDIA_API_KEY" base_url = "https://integrate.api.nvidia.com/v1" default_text_model = "deepseek-ai/deepseek-v4-pro" # ───────────────────────────────────────────────────────────────────────────────── # Hooks (optional) # ───────────────────────────────────────────────────────────────────────────────── # Hooks run shell commands on lifecycle events (session start/end, tool calls, etc.). # Configure as `[[hooks.hooks]]` under a `[hooks]` table. # # [hooks] # enabled = true # default_timeout_secs = 30 # # [[hooks.hooks]] # event = "session_start" # command = "echo 'DeepSeek TUI session started'" # ───────────────────────────────────────────────────────────────────────────────── # Requirements (admin constraints) example file # ───────────────────────────────────────────────────────────────────────────────── # allowed_approval_policies = ["on-request", "untrusted", "never"] # allowed_sandbox_modes = ["read-only", "workspace-write"]