mirror of
https://github.com/deepseek-ai/deepseek-harness.git
synced 2026-08-29 04:26:38 +00:00
Give the SDK JSON-RPC server a per-root tool filter and let deployments mark the configured persona as the complete system prompt. The checked-in minimal overlay now names only bash and str_replace_editor, so later global tools and unrelated guidance from dsh-base cannot appear implicitly. Keep the shared SDK host services and packaged Web capability intact. Only workspace instructions, compaction, and the conflicting one-shot Bash row remain disabled. Unit coverage pins the configuration paths, and a real dsh profile smoke proves the assembled prompt and exact two-tool request.
48 lines
1.4 KiB
YAML
48 lines
1.4 KiB
YAML
# 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
|