跟着 23 章可运行代码,看懂编码智能体底层机制
34.8/100
综合分
6
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/17 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:仓库根目录及浅层子目录均无 dsh 插件清单,无法用 dsh 插件安装命令安装。以下命令仍可尝试,但可能失败。
无法用 dsh 插件命令安装(仓库内无 dsh 插件清单)
git clone https://github.com/flysheep-ai/learn_deepseek_harness.git按该仓库 README 的原生方式安装;若作者另行发布了 DSH 插件包,请以其文档为准
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · dev
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 81 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/10/25) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装仓库根目录及浅层子目录均无 dsh 插件清单,无法用 dsh 插件安装命令安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包learn_deepseek_harness(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/3 23:24:10
安全扫描自动 · 静态分析源码v2.7.0⚪ 扫描:无法判定尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。
- · 包内无可扫 JS
- · TS 源码(可能为非 JS 实现或未发布源码),无法判定
扫描于 2026/11/3(0 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 23章可运行代码
- 渐进式智能体课程
- 离线运行无需APIkey
展开完整介绍(132 字)↓
一门能跑起来的渐进式 deepseek harness 内幕课程——18 章,从 60 行智能体循环讲到完整可插拔 harness(事件日志、工具流水线、权限、子代理、插件系统、能力接缝、目标循环)。每章都能离线运行,不需要 API key。中文课程,英文主文档。
README
由 DeepSeek 最新模型翻译生成learn-agent-harness
一门关于 Agent Harness 内部机制的可运行课程。
从一个 60 行的脚本开始,一章一章地观察,一个现代编码 agent 的 harness 是如何被真实问题逼出来的。
CI Python 3.11+ 23 chapters 22 tests passing offline demo deps License
English · 中文版 README.cn.md
一门可运行、循序渐进的agent harness 内部机制课程——讲述一个现代编码 agent(Claude Code / DeepSeek Harness 风格)在底层是如何工作的,从一个 60 行的 agent 循环到一个完整的可插拔 harness。23 章,每章一个概念,每一章都是一个完整、自包含、可离线运行的 Python 文件(python code.py --demo,无需 API key)。
展开完整文档(README 剩余 1 节)
learn-agent-harness 一门关于 Agent Harness 内部机制的可运行课程。 从一个 60 行的脚本开始,一章一章地观察,一个现代编码 agent 的 harness 是如何被真实问题逼出来的。 CI Python 3.11+ 23 chapters 22 tests passing offline demo deps License English · 中文版 README.cn.md 一门可运行、循序渐进的agent harness 内部机制课程——讲述一个现代编码 agent(Claude Code / DeepSeek Harness 风格)在底层是如何工作的,从一个 60 行的 agent 循环到一个完整的可插拔 harness。23 章,每章一个概念,每一章都是一个完整、自包含、可离线运行的 Python 文件(python code.py --demo,无需 API key)。 agent-harness · llm-agents · tool-calling · ai-coding-agent · plugin-system · educational 这是什么 User ──▶ Agent Loop ──▶ LLM ──▶ Tool Calls ──▶ Filesystem / Shell / Sandbox │ ▲ ▼ │ Session (event log) 像 LangChain、LangGraph、Claude Code 和 DeepSeek Harness 这样的框架有数万行代码——难以阅读,更难以修改。本课程讲授它们底层真正发生了什么: agent 循环 / 工具注册表 / 会话事件日志 / 权限 / 上下文压缩 / 子 agent / 插件系统 / 能力接缝 / 目标循环——以及那些让 deepseek-harness 真正新颖的部分:可回退的副作用、响应式依赖、惯性生命周期,以及自我扩展。 适合:懂 Python、调用过 LLM API、用过工具调用,但想理解 harness 实际如何工作的开发者。学完本课程后,DeepSeek Harness 的 architecture.md 的每一页都能对应到这里的某一章。 deepseek-harness 有何不同 一个通用的 harness 教程会讲授本课程开篇的那个 60 行循环—— while True: call the model, run its tools, append messages。它很少讲授的是为什么一个工业级 harness 看起来完全不像那个循环。其中大部分距离并非“更多功能”,而是一些被命名的结构性决策——这才是本课程真正的主题: | 独特决策 | 为什么它并不显而易见 | 章节 | 此处的最小形式 | | 事件日志才是真相 | messages 看起来像是记忆,但它只是一个投影;实际存储的是一个仅追加的日志 | s05 | Session + derive_messages() | | 轮次 / 步骤 / 回合 | “一次输入” ≠ “一次模型调用”;没有这些词,你就无法对预算、重放或被拒绝的轮次进行推理 | s06 → s17 | run_turn() + 内部步骤循环 | | 权限是监听器,不是 if | 工具执行是一条瀑布流(pre → execute → post);策略挂在其上,可在不触碰循环的情况下添加/移除 | s04 → s13 | 一个 6 行的 EventBus.waterfall | | 能力接缝 | 定义 / 提供者 / 消费者——替换一个提供者,整个产品随之改变,无需分叉提供者 | s15 | FileSystem / Shell 协议 + Local / Memory / DryRun | | 一切皆插件 | 不存在需要打补丁的特权核心;一个功能就是一个单元,整体挂载、整体卸载 | s14 | PluginContext + 逆序清理器 | | 可逆效果 | 注册会返回其自身的逆操作,因此复合清理是自动的——这正是插件能够热卸载的原因 | s14 → s19 | on()/use()/register() 返回一个清理器 | | 响应式辅助效果 | 依赖会在每一次上下文变化时重新求值;卸载会级联触发停止提供 → 守卫 → 撤回 | s20 | DependencyRuntime._reevaluate | | 惯性生命周期 | 状态转换会运行至完成,然后才响应新的目标;失败先恢复,后记录 | s21 | 目标视图 vs 已提交视图 | | 作用域 | 子代理的价值在于上下文隔离 + 受限的动作空间,而不是“多一次 LLM 调用” | s09 | registry.restricted() | | 目标即持久状态 | 目标在终端之后依然存在,并由模型来评判,而不是由 while not done 来评判 | s17 → s22 | 事件日志之上的 GoalStore | | 自我扩展 | 模型在会话中途检查并修改其自身的运行时 | s23 | harness_inspect/mount/unmount | 这些想法并非民间传说——它们扎根于一篇正式论文,Cordis (可逆效果 + 响应式辅助效果)。本课程用一个 30 行的 EventBus + PluginContext 重新表达了该论文的核心;论文阅读笔记将每一个 Cordis 概念映射回某一章,包括哪些内容被有意没有移植。阅读路径:docs/。 学习路径 第 1 部分——代理如何运行 | s01 agent_loop | 一个对话循环——以及为什么它还不是代理 | | s02 tool_use | 第一个工具;内部步骤循环由此诞生 | | s03 tool_registry | if/elif → Tool / Schema / Registry / Executor | | s04 permission | pre → execute → post 流水线;权限位于 pre 中 | | s05 session_event_log | 消息不再是真相;事件日志接管一切 | | s06 turn_and_step | 一次用户输入 ≠ 一次模型调用 | 第 2 部分 — 智能体如何管理上下文、状态和任务 | s07 prompt_assembly | 系统提示词是运行时产物,而非常量 | | s08 skill_loading | 渐进式披露:目录始终存在,正文按需加载 | | s09 subagent | 上下文隔离 + 受限动作空间 | | s10 context_compaction | 压缩遮蔽的是投影,而非日志 | | s11 task_system | 任务是 harness 状态,而非模型记忆 | | s12 background_jobs | 同步工具调用 vs 异步作业 | 第 3 部分 — 为什么工业级 harness 需要 Event / Plugin / Capability | s13 event_bus | 权限/日志/指标从循环中移出,交给监听器 | | s14 plugin_system | Context / Registry / Plugin — 一切皆插件 | | s15 capability_seams | Definition / Provider / Consumer — 换掉提供者,就换掉整个世界 | | s16 agent_team | spawn / send / receive / status;策略属于模型 | | s17 goal_loop | 目标是持久状态,而非 while not done | | s18 full_harness | 集成,通过自主修复失败的测试来验证 | 第 4 部分 — deepseek-harness 的独特机制(进阶) | s19 revertible_effects | 注册返回其逆操作:track / accumulator / LIFO / independence | | s20 reactive_coeffects | 依赖在每次上下文变化时重新求值;三阶段级联 | | s21 inertial_lifecycle | 目标视图 vs 已提交视图驱动一切;惯性;失败时优先恢复 | | s22 session_lifecycle | 会话/结束种子边界、分叉、目标激活(armed/disarmed)、派生缓存 | | s23 self_extending | inspect / mount / unmount — 模型修改自己的运行时 | 每一章结尾都会指出下一章存在是为了修复的痛点。 对比相邻两章的差异,你就能得到“这一章添加了什么”的确切答案。 快速开始 pip install -r requirements.txt # one dependency: httpx python s01_agent_loop/code.py --demo # any chapter runs offline python s18_full_harness/code.py --demo --debug # trace the inside of a turn python s23_self_extending/code.py --demo # the model modifies its own runtime real model (OpenAI-compatible API or Anthropic) cp .env.example .env # LLM_API_KEY / LLM_BASE_URL / LLM_MODEL python s18_full_harness/code.py Help me find out why the tests are failing and fix them. python3 -m unittest discover tests # 22 deterministic tests 学习无需密钥——每一章的 --demo 都在离线的脚本化模型(ScriptedProvider)上运行。环境变量见 .env.example。 两条铁律 1. 模型可见即被记录(在 s05 中形式化)。 任何进入模型请求的内容都必须能从事件日志中重建。messages 是一种投影,绝不是真相。 2. 模型决策。框架赋能(在 s02 中形式化,在 s18 中检验)。 框架构建一个由工具、上下文、状态和权限组成的可操作世界——它从不脚本化模型的思考。测试套件会扫描核心代码中形如 if task_type == "research" 的分支:零命中。 仓库布局 learn-agent-harness/ ├── README.md / README.cn.md ← 双语入口 ├── DESIGN.md ← 研究发现 + 课程设计决策 ├── harness_llm.py ← 唯一共享文件:模型访问层 │ (不包含任何框架逻辑) ├── tests/ ← 每章的冒烟测试 + 确定性机制测试 ├── docs/ ← Cordis 论文笔记 + 阅读索引 ├── s01_agent_loop/ … s23_self_extending/ │ 每一章:code.py + README.md(中文)+ README.en.md 为什么每章一个 code.py,而不是共享的 src/? 因为 from src.agent import Agent 会隐藏学习过程——你永远看不到 Agent 是如何成长的。本项目倾向于重复:每一章都展示完整、最小、可运行的实现。唯一的例外是 harness_llm.py——HTTP 传输不属于框架机制。 与参考项目的关系 - shareAI-lab/learn-claude-code ——借鉴了其教学方法:每章一个概念,README 从痛点出发,代码内标注“新增 / 未变”,愿意重复。 - deepseek-ai/deepseek-harness ——吸收了其工业级设计:会话事件日志、Turn/Step 术语、工具流水线、能力接缝、一切皆插件、自我扩展。不是它的 Cordis 框架——相同的理念在这里用 30 行的 EventBus + PluginContext 表达。参见概念 → 章节映射 上文。 本项目不是这两个仓库的 fork、翻译或重写。设计决策见:DESIGN.md。 延伸阅读 - docs/README.md ——索引和建议阅读路径。 - Cordis 论文笔记(中文)——对 deepseek-harness 的 Cordis 框架所依据的 88 页形式化论文的阅读指南,将每个概念映射到某一章(最好在 s14–s23 之后阅读)。 贡献 欢迎贡献——代码或文字的修正、新练习、更好的解释、翻译或测试覆盖。 - 阅读 CONTRIBUTING.md 了解工作流程和内部规则。 - 所有参与者都应遵守行为准则。 - 在开始大型更改之前,请先创建一个 issue,以便我们能够就方向达成一致。 安全 请私下报告漏洞,而不是创建公开的 issue。 请参阅 SECURITY.md。 支持 如有问题、想法和讨论,请参阅 SUPPORT.md。 许可证 MIT © 2026 flysheep-ai
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
flysheep-ai/learn_deepseek_harness
跟着 23 章可运行代码,看懂编码智能体底层机制
相关插件 · 开发 / 工程
隐私简历生成器reactive-resume/reactive-resume
Reactive Resume 已迁至 GitHub 上的…
★ 45,288已汉化MCP
71.7
长时任务执行闭环AMAP-ML/LongHorizon-Harness
面向 Computer-Use Agent 的 Loop Engineering
★ 1,764已汉化DSH
70.5
多代理编排运行时Enderfga/claw-orchestrator
面向编程智能体的运行时。把 Claude Code、Codex、Antigravity、Grok…
★ 586已汉化MCP
69.4
记忆进化插件csyangwen/dsh-memory-evolve
dsh-memory-evolve 使用场景指南
★ 461已汉化DSH
67.9
原生编程智能体paean-ai/deeptide
由 DeepSeek 打造,为 DeepSeek 而生。
★ 1,107已汉化DSH
67.7
多引擎接力台emo-xiaoyu/harness-mix
macOS/Linux 已加入源码构建与启动适配;目标系统的完整桌面验收仍需在对应机器执行。安装方式、Linux…
★ 419已汉化DSH
66.8
这是你的仓库?认领条目