# Minimal Python SDK overlay for `dsh --profile sdk`. The SDK server applies # the model-facing allowlist to every root session, so later base-bundle tools # cannot appear implicitly. The profile still owns JSON-RPC and persistence. - id: system-prompt config: includeHarnessIdentity: false includeRuntimeContext: false persona: !!js process.env.DSH_SYSTEM_PROMPT ?? 'You are a helpful software engineer assistant.' personaComplete: true - id: sdk-jsonrpc-server config: maxTokensAsSuccess: !!js "process.env.DSH_MAX_TOKENS_AS_SUCCESS === undefined ? true : JSON.parse(process.env.DSH_MAX_TOKENS_AS_SUCCESS)" toolFilter: allow: - bash - str_replace_editor # Remove non-tool model inputs and turn rewriting, plus the one-shot Bash row # that would conflict with the persistent Bash tool inserted below. - id: agent-instructions disabled: true - id: tool-bash disabled: true - id: compaction-basic disabled: true - id: command-compact disabled: true - id: tool-result-pruner disabled: true - id: tool-str-replace-editor config: maxOutputChars: 16000 - insert: - id: pty name: '@deepseek-ai/dsh-terminal' - id: terminal-bash name: '@deepseek-ai/dsh-terminal-bash' config: timeoutMs: 300000 - id: persistent-bash name: '@deepseek-ai/dsh-tool-bash-persistent' config: timeoutMs: 300000