dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
Minimal agent harness in one Bash file. One-line quick start. Bootloader agent for bare-metal servers.
English | 简体中文
一个面向 DeepSeek 兼容 API 的极简编码智能体,全部实现于一个 Bash 文件:d.sh。它只依赖 Bash 4.3+ 和 curl。在没有完整依赖栈的精简服务器上,它既可以作为 bootloader 智能体拉起更强的 harness(Codex、Claude Code、DeepSeek Harness),也能直接完成简单的环境配置。
DEEPSEEK_API_KEY='your-api-key' bash <(curl -fsSL https://raw.githubusercontent.com/SiriusNEO/d.sh/main/d.sh)
curl -fsSL https://raw.githubusercontent.com/SiriusNEO/d.sh/main/d.sh -o d.sh
bash d.sh
第一条命令把脚本下载为当前目录下的 d.sh;已存在的副本会被覆盖。第二条运行它并进入交互式配置(BASE_URL、MODEL_NAME、DEEPSEEK_API_KEY),随后进入交互提示符。所选值会写回 d.sh(权限 600),之后只需 bash d.sh。
curl -fsSL https://raw.githubusercontent.com/SiriusNEO/d.sh/main/d.sh -o ~/d.sh
cd ~ && bash d.sh # 完成交互式配置后输入 /exit
printf "alias d='DSH_SESSION_FILE= bash ~/d.sh'\n" >> ~/.bashrc
source ~/.bashrc
然后用命令 d,随时随地启动智能体。
三个连接设置:
| 变量 | 用途 |
|---|---|
DEEPSEEK_API_KEY | API key,必填 |
BASE_URL | DeepSeek 兼容 API 地址 |
MODEL_NAME | 每次请求使用的模型 |
BASE_URL 默认 https://api.deepseek.com,MODEL_NAME 默认 deepseek-v4-flash。DEEPSEEK_API_KEY 始终必填。交互式配置中,直接回车保留显示的默认值;API key 输入不回显。配置从已保存的副本运行时,所选值会写回 d.sh,文件权限改为 600。
其他 harness 设置(DSH_*)见 d.sh 顶部的配置块。环境变量会覆盖脚本中保存的值,并作为交互式配置中显示的默认值。
对话保存在工作目录下的 session.jsonl,下次运行自动恢复。每行包含角色、一个制表符和消息 JSON。/clear 会清空文件。把 DSH_SESSION_FILE 设为其他路径可更换文件位置,设为空值则关闭持久化。
只有完整的轮次会被写入,因此被中断的运行不会恢复到一个半截的工具调用交换。
| 工具 | 说明 |
|---|---|
bash | 持久 shell —— cwd、环境变量、函数与 virtualenv 跨调用、跨轮次保留 |
str_replace_editor | 对文本文件执行 view / create / str_replace / insert |
/compact —— 压缩较早的历史/clear —— 重置对话和持久 shell/exit —— 退出Ctrl+C —— 取消进行中的模型请求或正在运行的命令并回到提示符;取消正在运行的命令还会重置持久 shellCtrl+D —— 退出(等同于 /exit)行为跟踪 deepseek-harness dsh-v0.1.5-alpha.1(0.1.5-alpha.1) 的 sdk-minimal 配置——这是最后一个其 sdk-minimal bundle 提供双工具配置的版本。该 bundle 自 v0.1.3-alpha.2 起未再变化;dsh-v0.1.5-alpha.2 及之后移除了 str_replace_editor,只暴露一个持久 shell。
具体含义:
str_replace_editor;编辑器上游的 maxOutputChars: 16000 与本脚本的 DSH_OUTPUT_LIMIT 及工具描述一致。You are a helpful software engineer assistant.,不包含 Harness 身份或运行时上下文。session.jsonl)、1,000,000 token 的兜底上下文窗口,以及 danger-full-access(无沙箱)。[Deep diving ...] / [Compacting context ...] 状态文案改编自同系列完整 harness(compaction-basic、compaction-tool-result-pruner、ui-chat locale),因为 sdk-minimal 本身不包含压缩。通信协议是 OpenAI 兼容的 Chat Completions API:POST {BASE_URL}/chat/completions,Bearer 认证,携带 messages / tools / stream / max_tokens,以及 DeepSeek 的 thinking 和 reasoning_effort 扩展。这与上游 @deepseek-ai/dsh-llm-deepseek 是同一协议;既不是旧的文本 Completions API(/completions),也不是 OpenAI 的 Responses API(/responses、input / instructions)。
命令以你的权限运行,且没有沙箱。交互式配置会把 API key 存进本地的 d.sh;切勿提交或分享配置过的副本。session 文件包含完整对话,同样应排除在版本控制之外。
受 deepseek-ai/deepseek-harness(MIT)启发而做的独立实现;persona、工具 schema 及 minimal profile 行为改编自 dsh-v0.1.5-alpha.1 的双工具 sdk-minimal bundle,压缩与状态行为改编自同一版本的完整 harness 包。