dsh-oh-my-claude

modeltested: passnpmMIT

Runs your logged-in Claude Code CLI as a dsh model provider: live model list, session resume, approval relay, rewind, memory panel and remote SSH workspaces.

下载量 / Downloads
4,569
依赖体积 / node_modules
5.56 MB
测试时间 / Tested
2026-11-06
DSH 版本 / Version
0.2.2-rc.1

Install

dsh plugin --profile web add dsh-oh-my-claude

Sandbox test results

StageResult
1 install✓
2 list✓
3 mount✓
4 boot—

Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).

README

<h1 align="center"><img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/spark.svg" alt="" width="22" height="22"> Oh My Claude</h1>

<p align="center">

<a href="README.md">English</a> | 中文

</p>

<p align="center">

<strong>在 dsh 里原生使用 Claude Code</strong>

</p>

<p align="center">

<em>把你已登录的 Claude Code CLI 作为 dsh 的一等模型提供方:无需 API key,无需额外服务,没有运行时依赖。</em>

</p>

<p align="center">

<a href="https://www.npmjs.com/package/dsh-oh-my-claude"><img src="https://img.shields.io/npm/v/dsh-oh-my-claude?style=flat&color=cb3837&logo=npm" alt="npm 版本" /></a>

<img src="https://img.shields.io/badge/host-dsh-6c5ce7?style=flat" alt="dsh" />

<img src="https://img.shields.io/badge/drives-Claude%20Code%20CLI-d97757?style=flat" alt="Claude Code CLI" />

<img src="https://img.shields.io/badge/language-TypeScript-3178c6?style=flat&logo=typescript" alt="TypeScript" />

<img src="https://img.shields.io/badge/build-Bun-f472b6?style=flat&logo=bun" alt="Bun" />

<img src="https://img.shields.io/badge/runtime%20deps-zero-45cfa0?style=flat" alt="零运行时依赖" />

</p>

<p align="center">

<sub>借助 AI 构建,也欢迎更多 AI 参与。欢迎 AI 编程智能体提交贡献,请先阅读 <a href="https://github.com/lcestou/dsh-oh-my-claude/blob/main/CONTRIBUTING.md">CONTRIBUTING.md</a>。</sub>

</p>


把 Claude Code CLI 作为 dsh 的 LLM 提供方。每次请求都以 stream-json 输入输出驱动 claude -p,因此沿用 Claude Code 已有的登录、hooks、CLAUDE.md、MCP 服务器和速率限制。无需 API key。插件直接使用 CLI 自己的协议(Agent SDK 封装的就是它),所以没有运行时依赖。

插件界面跟随 dsh 的语言设置(设置 → 通用设置 → 语言)。详细文档目前只有英文版,下方链接均指向英文文档。

功能一览

<p><img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/shield-menu.png" width="640" alt="Claude 会话中的 dsh 访问权限菜单:计划、询问、接受编辑、自动、不再询问和绕过六项"></p>

这个盾牌是 dsh 自带的控件。在 Claude 会话里,它的各项变成 Claude 的六种权限模式,每项都标出它对应的 dsh 访问级别。

<p><img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/panel-tabs.gif" width="640" alt="Oh My Claude 面板在记忆、回溯、改动和旁问标签之间切换"></p>

输入框旁的一个 ✻ 按钮打开整个插件:记忆、说明、技能、回溯、改动、MCP、旁问、诊断、任务和调校;会话还是空白时另有一个恢复标签。

<p><img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/panel-changes.png" width="640" alt="改动标签列出工作区差异及每个文件的行数"> <img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/panel-asides.png" width="640" alt="旁问标签,一个问题在标签栏上方展开"> <img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/panel-mcp.png" width="640" alt="MCP 标签的添加服务器表单,已填好名称、命令和参数"></p>

<p><img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/cost-row.png" width="640" alt="dsh 底部统计行,末尾是 Claude 会话费用和缓存 token 数"></p>

费用和缓存 token 数是 dsh 自己算不出的两个数字,它们出现在 dsh 底部的统计行里。会话花费超过你设定的额度后,这个标签会变成橙色。金额按 API 价格计算;使用 Claude 订阅时不会向你收取这笔钱。

<p><img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/context-usage.png" width="300" alt="dsh 上下文圆环弹窗,显示 Claude 套餐用量窗口和 CLI 自己的上下文明细"> <img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/phone-panel.png" width="300" alt="手机上的面板,以底部弹层形式显示在输入框上方"></p>

套餐用量和 CLI 自己的上下文明细显示在 dsh 的上下文圆环弹窗里。在手机上,面板变成底部弹层。

<p><img src="https://raw.githubusercontent.com/lcestou/dsh-oh-my-claude/main/docs/media/add-workspace.png" width="640" alt="dsh 的选择工作区目录对话框,底部有主机下拉框,列出本机和一台 SSH 主机"></p>

保存一台 SSH 主机后,dsh 自带的添加工作区对话框会多出一个主机下拉框:那台主机上的文件夹可以成为这里的工作区,其中的会话在那台主机上运行 Claude Code。

<sub>截图由 <code>tools/playwright/tour.ts</code> 生成。</sub>

安装

需要 Claude Code CLI 在 PATH 上并已登录(claude --version 能运行,打开 claude 不会要求登录),以及 dsh 0.2(0.2.0-rc.1 或更新版本)。dsh 0.1.x 请按下方兼容性表格安装对应的 npm 标签。别的都不需要:没有 API key,没有 Node 构建步骤。

通过 dsh 的插件页面,在 Web 应用或 DSH Desktop 中:

1. 在侧边栏打开 插件,点击 添加插件。

2. 输入 dsh-oh-my-claude,点击 安装。

3. 点击 立即启用,或稍后在 已安装插件 里打开它的开关。

无需重启就会加载。刷新页面后,模型选择器里会出现 "Oh My Claude",列出你的登录可用的模型。选一个就能开始对话。

通过终端,然后用你自己的方式重启 dsh:

dsh plugin --profile web add dsh-oh-my-claude
systemctl --user restart dsh-web.service

想直接从仓库而不是 npm 安装,在两种方式里都把包名换成 github:lcestou/dsh-oh-my-claude。

如果选择器里显示 Oh My Claude (未登录),请在运行 dsh 的机器上打开终端运行 claude auth login,或在 设置 → Oh My Claude → 主机 中点击登录。

DSH Desktop(macOS 和 Windows)按上面插件页面的步骤安装。从 Dock 启动的应用看不到你 shell 的 PATH,所以插件会在常见的安装目录里查找 claude。在 Windows 上,插件把 Claude 作为 dsh 的普通子进程运行,因此重启应用会中断正在进行的回合,需要 Unix shell 的功能(在设置里登录、SSH 主机)也不可用。服务端已按 Desktop 的方式在 Linux 上用 Electron 运行过,也在 Windows 11 上配合 npm 安装的 Claude Code 运行过。

npm 上有新版本时,设置和面板的运行环境行会出现一个带版本号的橙色标签,点击即可复制在终端里用的更新命令。在插件页面上,dsh 更新第三方插件的方式是先移除再重新添加。详情以及插件在 dsh 升级后自行完成的修复,见 Plugin updates。

可选,在 ~/.dsh/settings.yaml 中:

agent-default-model:            # 让新会话默认使用 Claude Code
  provider: claude-code
  model: claude-fable-5-1       # 模型选择器中列出的任一模型 id
subagent-model-selection:       # 让 dsh 子智能体也能使用 Claude Code
  enabled: true
  allowedModels:
    - provider: claude-code
      model: claude-haiku-5-5   # 模型选择器中列出的任一模型 id

想参与开发插件本身?从 docs/developing.md 开始。

兼容性

dsh 只发布预发行版,客户端 API 也会在版本之间变动,所以插件的每个版本都记录它面向的 dsh 范围和实际运行验证过的 dsh。"可运行于"是代码带有兼容分支的范围;"测试于"是发版时机器上安装的那个 dsh。更新提示会从 npm 读取最低 dsh 版本,低于它的机器不会收到该版本。

插件 · 可运行于 dsh · 测试于 dsh · npm 标签

1.5.14 · 0.2.0-rc.1 至 0.2.2-rc.1 · 0.2.2-rc.1 · latest、dsh-0.2

1.5.13 · 0.2.0-rc.1 至 0.2.2-rc.1 · 0.2.2-rc.1 · 无,已由 1.5.14 取代

1.5.12 · 0.2.0-rc.1 至 0.2.2-alpha.2 · 0.2.2-alpha.2 · 无,已由 1.5.13 取代

1.5.11 · 0.2.0-rc.1 至 0.2.2-alpha.2 · 0.2.2-alpha.2 · 无,已由 1.5.12 取代

1.5.10 · 0.2.0-rc.1 至 0.2.2-alpha.2 · 0.2.2-alpha.2 · 无,已由 1.5.11 取代

1.5.9 · 0.2.0-rc.1 至 0.2.1-rc.4 · 0.2.1-rc.4 · 无,已由 1.5.10 取代

1.5.8 · 0.2.0-rc.1 至 0.2.1-rc.4 · 0.2.1-rc.4 · 无,已由 1.5.9 取代

1.5.7 · 0.2.0-rc.1 至 0.2.1-rc.3 · 0.2.1-rc.3 · 无,已由 1.5.8 取代

1.5.6 · 0.2.0-rc.1 至 0.2.1-rc.3 · 0.2.1-rc.3 · 无,已由 1.5.7 取代

1.5.5 · 0.2.0-rc.1 至 0.2.1-rc.2 · 0.2.1-rc.2 · 无,已由 1.5.6 取代

1.5.4 · 0.

…(truncated)

Rendered from the README published on npm. Formatted only, not edited.

Versions

Published on npm::26,最后更新 2026-11-05

Links

GitHub · Homepage · npm

Same category