Slides out a Monaco editor plus a lazy-loaded file-tree panel in the DSH Web conversation, so you can edit the local workspace inline without switching to an external editor.
Install
# from npm (prebuilt)
dsh plugin --profile web add dsh-classic-coding
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:better-er/dsh-classic-coding
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
This plugin publishes its README in Chinese only.
引言
为了在 AI 编程的高度发展的今天,保护古法编程这一非物质文化遗产,dsh·古法编程插件被开发出来,让你可以在 DeepSeek Harness 中继续体验大脑的思考能力。
在 DSH 对话界面右侧滑出一个 Monaco 编辑器 + 文件树面板,直接在对话里改本地工作区代码,不用切到外部编辑器。
功能
- 面板开关:侧栏底部「⌨️ 古法编程」按钮,点击展开或收起编辑器面板。
- 文件树:左侧 250px,懒加载目录、支持折叠或展开,过滤
.git、node_modules等。 - 编辑器:Monaco 编辑器经 CDN 动态加载,多文件 Tab、语法高亮、
Ctrl+S保存。 - 状态栏:底部显示当前文件路径和保存结果。
- 关闭方式:点击遮罩、按
Esc或点 × 关闭面板,随 DSH 明暗主题自动适配。 - 窄栏适配:侧栏收起成窄 rail 时自动切换为单图标按钮,展开时恢复完整两行结构。
- 消息流尾巴:工具行路径、产物区文件按钮后追加「古法编程」尾巴,点击尾巴在插件内打开文件,点击按钮本身保持原有外部打开行为。
截图
侧边栏开关

侧栏底部的「⌨️ 古法编程」按钮,点击展开或收起编辑器面板。
消息流文件按钮的古法编程后缀

消息流中工具行路径与产物区文件按钮后追加的「古法编程」尾巴:点击尾巴在插件内打开,点击按钮本身保持外部打开。
编辑器面板

右侧滑入的完整编辑面板:左侧文件树、顶部多文件 Tab、中部 Monaco 编辑器、底部状态栏。
演示视频
| 古法编程插件演示 · 42 秒 |
|---|
安装
dsh plugin --profile web add github:better-er/dsh-classic-coding
一条命令装完即生效,自动挂载,重启 DSH web 后启用,无需手工编辑任何组合文件。
卸载
dsh plugin --profile web remove dsh-classic-coding
彻底移除,重启 DSH web 后不再加载。
要求与开发
- 标准形态:dsh 客户端插件,声明
dsh.client、导出./client。 - 自挂载 bundle:同时声明
dsh.bundle,用dsh plugin --profile web add从 GitHub 安装后自动识别为 profile layer 并挂载,无需手工写组合 entry。 - 独立 RPC 通道:Host 端经
ctx.connection.rpc.handle('/classic-coding', ...)注册describe/listDir/readFile/writeFile四个端点,提供文件树与编辑器读写,底层走 DSH 内置ctx.fs文件系统服务。/api共享通道的唯一拦截器槽位已被官方 gateway 占用,插件端点必须走 handle 独立通道。 - 无构建:
lib/index.js与lib/client.js均为源码即产物,package.json声明dsh.client.platform: "web"、exports["./client"] → ./lib/client.js,改完即用。 - UI 挂载点:
sidebar.footer.action触发按钮、shell.overlay编辑器面板两个插槽注入。 - 样式:DSH 主题 CSS 变量
--dsw-alias-*,明暗主题自适应,data-ds-dark-theme属性变化时实时跟随切换 Monaco 主题。 - 编辑器加载:Monaco Editor 经 CDN 动态加载,React 组件从 loader 的 module table 获取,不引入任何额外 npm 依赖。
License
Links
More in this category
zhu1090093659/dsh-web#packages/dsh-task-board★ 6815
Task board for the dsh web GUI: a sidebar multi-column kanban whose cards run in real DSH agent sessions and can also be scheduled with cron expressions, executed host-side even with the browser closed.
zhu1090093659/dsh-web#packages/dsh-web-all★ 6815
Plugin and skin collection for the DSH Web UI: task board, Git graph, right-side panel, remote mobile UI, pet, live token stats, and a skin center.
omdsh-dev/DSH-better-sidebar★ 3318
Full sidebar workbench with file rendering and editing, terminal, Git, and subagents; third-party plugins can register new tabs.
ccch1mneyyy/dsh-TUI★ 2823
Claude Code-style full-screen terminal UI: pixel-whale header, live status line, and streaming thought expansion.
MeteorNOX/DeepSeek-Balance-Whale-Widget★ 1695
A fixed-corner whale widget showing DeepSeek balance, today usage, per-turn cost and random talk lines, with sound effects and a menu.
Devin-AXIS/deepseek-design#deepseek-idesign★ 720
Visual design studio for websites, app prototypes, posters, cards, reports, and magazines, with templates, direct element editing, selection-aware AI draft handoff, and export.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.