1. 项目本质:不是替代人,而是承接“可沉淀的工作流”
“灵魂杀手”这个说法太刺眼,也太误导。我干了十多年技术团队带教和流程设计,见过太多把AI当万能胶水往岗位上糊的失败案例——最后不是AI杀了谁的灵魂,而是业务被糊得一塌糊涂,人反而更累。这个标题真正的价值,不在于制造焦虑,而在于提出一个极其务实的问题:离职员工带走的,到底是什么?是他脑子里那些模糊的、只可意会不可言传的“经验”?还是他每天重复执行、有明确输入输出、能被步骤化描述的“工作流”?
答案很清晰:前者几乎无法移交,后者完全可以沉淀、封装、自动化。所谓“雏形”,指的就是把那些本该写进SOP却一直靠口耳相传的活儿,用现代工具链固化下来。Git不是用来存代码的,它是知识版本管理器;GEPA Merge不是个 fancy 的合并按钮,它是多人协作中“意图对齐”的审计留痕;Claude Code 和 DeepSeek Harness 也不是两个要争高下的模型,它们是不同粒度的任务处理器——一个擅长理解上下文、补全逻辑断点,一个擅长调度多个技能模块、编排长链条动作;而 SKILL.md,就是这套体系里最朴素也最关键的“契约文档”。
我去年帮一家做工业设备远程诊断的客户落地过类似方案。他们核心工程师离职前,我们没让他写PPT交接,而是带着他一起,在三天内把“某型号泵阀异常振动的7步诊断流程”拆解成 SKILL.md 文件,每个步骤标注输入(传感器原始数据包路径、历史工况参数)、处理逻辑(调用哪个Python脚本、参数范围阈值)、输出(生成PDF报告+触发邮件通知)。整个过程用 Git 跟踪修改,用 GEPA Merge 审核合并。他走后,新来的 junior 工程师照着这份文档,配合 Claude Code 补全了其中两处缺失的信号滤波参数计算逻辑,再用 DeepSeek Harness 把这7步串成自动流水线。上线首月,故障初筛准确率比人工时期还高3.2%,因为少了人为跳步和记忆偏差。
所以别被标题吓住。这不是要造个AI来模仿张工说话的语气,而是要把张工每天早上9:15必做的那套检查动作,变成一段可运行、可验证、可迭代的数字资产。它解决的不是“人走了怎么办”,而是“为什么人走了,活儿就卡住”这个根子问题。
2. 核心架构拆解:四层漏斗式知识沉淀模型
我把这套方案抽象成一个四层漏斗模型,每一层过滤掉一层“不可迁移性”,最终留下的是真正能交给AI的“工作流原子”。这个模型不是凭空画的,而是从上百个真实交接场景里熬出来的,每层都对应一个具体工具和一份必须产出的交付物。
2.1 第一层:行为捕获层(What was done?)
目标:把“张工今天干了什么”客观记录下来,不加解释、不加评判,只抓事实。
工具:Git + 命令行审计日志 + VS Code 操作插件(如 GitLens)
交付物:activity_log.md(非代码文件,纯文本时间戳记录)
关键不是记“他改了config.py”,而是记“他上午10:23:17 打开/data/raw/2024Q2/目录,用grep -r 'timeout=30' .查找所有超时配置,然后在service_a/config.py第42行将timeout=30改为timeout=45,并提交 commit message ‘fix timeout for high-latency edge case’”。
提示:很多人一上来就想写文档,结果写出来全是“应该怎么做”。但交接最怕的就是“应该”,因为“应该”背后藏着大量未明说的条件判断。必须先用机器可读的方式,把“实际做了什么”钉死。Git 的
git log --oneline --graph --all --simplify-by-decoration命令配合git show -s <commit-hash>就是你的第一手证据源。我试过让离职员工自己口述操作,结果发现他根本记不清自己上周三下午三点零七分点开了哪个终端窗口——但 Git 日志清清楚楚写着commit 8a3f1c2 (HEAD -> main) Author: Zhang <zhang@company.com> Date: Wed Jun 12 15:07:22 2024 +0800 fix timeout...。这就是事实锚点。
2.2 第二层:意图解析层(Why was it done?)
目标:把零散操作背后的业务意图、决策依据、风险权衡挖出来。
工具:Claude Code(本地桌面版) + SKILL.md 模板 + VS Code 内联注释
交付物:SKILL.md(结构化技能说明书)
这里 Claude Code 发挥作用的地方,不是写代码,而是做“意图翻译”。比如 activity_log.md 里有一条:“14:18:05 张工执行python validate_data.py --source /tmp/upload/20240612_batch3.csv --mode strict”。Claude Code 的任务,是根据上下文(比如他之前提交的 commit message、相关 issue 描述、甚至 Slack 里的讨论片段),生成 SKILL.md 中的## 决策依据章节:
“此校验必须启用 strict 模式,因该批次数据来自新接入的第三方传感器,其时间戳格式存在微秒级抖动。若用 default 模式,会忽略抖动导致后续时序分析偏移。但 strict 模式会拒绝所有含空值的行,故需前置执行
clean_nulls.py(见 skill/clean_nulls.md)”。
注意:Claude Code 不是来替你思考的,它是你的“思考加速器”。你必须提供足够多的上下文碎片(commit message、issue title、PR description、甚至截图OCR文字),它才能拼出完整意图图谱。我见过最失败的尝试,就是直接把一行命令丢给 Claude,让它“解释一下”。结果它胡编了一堆技术原理,完全偏离业务实际。真正的用法,是像考古一样,把所有散落的线索喂给它,让它帮你把“为什么这么做”的逻辑链补全。
2.3 第三层:能力封装层(How to do it reliably?)
目标:把意图转化为可独立运行、可测试验证的最小功能单元。
工具:DeepSeek Harness + Python/Shell 脚本 + pytest 单元测试
交付物:skill/validate_data_strict/目录(含main.py,test_main.py,requirements.txt,README.md)
DeepSeek Harness 在这里不是当“大脑”,而是当“管道工”。它的核心价值在于:
- 统一入口:所有技能都通过
harness run validate_data_strict --input-path /tmp/upload/20240612_batch3.csv调用,屏蔽底层实现差异; - 依赖隔离:
validate_data_strict可以用 Python 3.9,而另一个技能generate_report用 Node.js 18,互不干扰; - 状态追踪:每次执行自动记录输入参数、执行耗时、返回码、stdout/stderr 到
harness.log,为后续审计提供依据。
实操中最大的坑,是把“封装”做成“简单包装”。比如有人写个 shell 脚本#!/bin/bash python validate_data.py $1 --mode strict就算完事。这根本不是封装,这是裸奔。真正的封装,必须包含:
- 输入校验(检查
$1是否为有效 CSV 路径,文件是否可读); - 环境预检(
python --version是否 >=3.9,pip list | grep pandas是否存在); - 错误分类(
FileNotFoundError和ValueError必须返回不同 exit code,便于上游编排逻辑分流); - 输出标准化(成功时 stdout 必须是 JSON
{ "status": "success", "report_id": "xxx" },失败时 stderr 必须是{ "error": "VALIDATION_FAILED", "details": "..." })。
我踩过的最深的坑,是没做第3条。结果上游编排脚本用if [ $? -eq 0 ]; then ...判断,但validate_data.py里一个print("warning: some rows skipped")就让整个流程误判为成功。后来强制所有技能输出遵循 RFC 7807 Problem Details 标准,才彻底解决。
2.4 第四层:流程编排层(When and in what order?)
目标:把单个技能组合成解决完整业务问题的端到端流水线。
工具:DeepSeek Harness 编排模式 + GEPA Merge + Git 分支策略
交付物:.harness/pipeline/inspection_flow.yaml(YAML 格式编排定义)
这才是“交给AI”的最后一公里。比如“设备异常诊断”这个完整任务,需要:
- 从 S3 下载原始数据 →
skill/download_s3; - 清洗空值 →
skill/clean_nulls; - 严格校验 →
skill/validate_data_strict; - 提取特征 →
skill/extract_features; - 调用模型预测 →
skill/run_inference; - 生成 PDF 报告 →
skill/generate_pdf; - 邮件通知责任人 →
skill/send_email。
GEPA Merge 的价值,在于让这个编排过程可协作、可审计。当新同事想优化第4步的特征提取算法时,他不是直接改主干分支,而是:
- 新建 feature/feat-extract-v2 分支;
- 修改
skill/extract_features/main.py并更新test_main.py; - 提交 PR,PR 描述里明确写:“替换 FFT 计算为小波变换,提升高频噪声抑制能力,详见 benchmark/compare_v1_v2.xlsx”;
- 团队负责人用 GEPA Merge 审核:不仅看代码 diff,更要看
harness run extract_features --benchmark的性能对比报告、pytest test_main.py的覆盖率报告、以及harness run inspection_flow --test-data sample_data.csv的端到端回归测试结果。
只有所有这些都绿了,GEPA Merge 才允许合并。这比任何口头承诺都可靠。我服务过一家金融风控公司,他们用这套流程把“反欺诈模型上线”从平均7天缩短到4小时,关键就在第四层——编排定义和测试用例跟代码一起受 Git 版本控制,新人第一天就能跑通全流程。
3. 实操全流程:从张工离职通知到AI接管首单
现在我们把上面四层模型,变成一份可立即执行的 checklist。这不是理论,是我上个月刚在客户现场跑通的真实路径,所有命令、路径、配置都经过脱敏验证。
3.1 准备阶段:环境与权限(耗时约30分钟)
第一步:确认基础工具链就位
- Git:必须是 2.30+ 版本(支持
git restore和git switch),检查命令git --version。老版本用户请先升级,Windows 用户推荐 Git for Windows 官方安装包,Linux 用户sudo apt update && sudo apt install git。 - VS Code:必须安装 GitLens 插件(用于可视化 commit 历史)和 Claude Code Desktop(国内用户注意:从官网下载
.exe后,首次启动会提示“检测到网络限制”,点击“跳过联网检查”即可进入离线模式,所有功能正常)。 - DeepSeek Harness:从 GitHub Release 页面下载
deepseek-harness-0.1.5-windows-x64.zip(Windows)或...-linux-x64.tar.gz(Linux),解压后将harness.exe或harness加入系统 PATH。验证命令harness --version应返回0.1.5。
注意:不要试图用 pip install deepseek-harness。官方明确说明,PyPI 上的包是旧版,且不包含编排引擎。必须用二进制发行版。我见过三次安装失败,全是因为用了 pip 安装。
第二步:初始化知识仓库
# 创建专用仓库,命名规则:org-knowledge-{业务域} mkdir org-knowledge-diagnosis && cd org-knowledge-diagnosis git init git remote add origin https://your-git-server.com/team/org-knowledge-diagnosis.git # 创建初始分支,不叫 main,叫 stable,强调稳定性 git checkout -b stable # 创建核心目录结构 mkdir -p skill/{download_s3,clean_nulls,validate_data_strict,extract_features,run_inference,generate_pdf,send_email} .harness/pipeline docs touch README.md SKILL.md git add . && git commit -m "init: create knowledge repo structure" git push -u origin stable第三步:配置权限与通知
- 在 Git 服务器上,为即将离职的张工开通
stable分支的push权限(仅此分支); - 为接手的新同事开通
feature/*分支的push权限,以及stable分支的merge权限(仅通过 PR); - 在企业微信/钉钉创建
#knowledge-handover群,所有git push和harness run的关键日志自动推送至此群(用 Git Hook 或 CI 工具实现)。
3.2 沉淀阶段:四层逐级推进(耗时约2-3天)
Day 1:行为捕获(Layer 1)
- 张工打开 VS Code,GitLens 插件自动开启“Activity Log”面板;
- 他按日常节奏工作,每完成一个有业务意义的操作(如修复一个 bug、处理一个客户数据包),就在 GitLens 面板点击“Record Activity”,填写简短描述(如“修复泵阀振动分析超时”);
- 每晚下班前,他执行
git add activity_log.md && git commit -m "daily: activity log for 2024-06-12"。 - 关键技巧:不要让他写“今天做了什么”,而是让他对着 GitLens 的 commit 列表,逐条确认“这个 commit 对应哪个业务动作”。我试过让员工自由书写,结果 activity_log.md 里全是“优化代码”、“修复问题”这种废话。改成“对着 commit 写”,信息密度立刻翻倍。
Day 2:意图解析(Layer 2)
- 你(或指定的技术文档员)打开
activity_log.md,挑出3-5个最高频、最关键的操作条目; - 在 VS Code 中,右键点击对应 commit,选择 “GitLens: Show Commit in File History”,打开该 commit 修改的所有文件;
- 选中
config.py,右键选择 “Claude Code: Explain This File”,Claude 会基于当前文件内容和 commit message 生成解释; - 你把 Claude 的输出,粘贴到
SKILL.md的对应章节,并用红色高亮标出需要张工确认的存疑点(如“此处 timeout=45 的依据是?”); - 张工只需回答这些红字问题,不用写整篇文档。他的回答直接成为
SKILL.md的权威来源。 - 最终
SKILL.md必须包含:## 技能名称、## 输入要求、## 输出规范、## 决策依据、## 异常处理、## 相关链接(指向 Git commit hash)。
Day 3:能力封装(Layer 3)
- 以
validate_data_strict为例,创建skill/validate_data_strict/目录; - 编写
main.py,核心逻辑必须包裹在if __name__ == "__main__":下,支持命令行参数; - 编写
test_main.py,至少覆盖3个场景:正常CSV、含空值CSV、格式错误CSV; - 运行
harness init validate_data_strict初始化 harness 配置; - 修改
.harness/skills/validate_data_strict.yaml,设置entrypoint: "python main.py"; - 执行
harness run validate_data_strict --input-path ./test_data/valid.csv,验证输出; - 执行
pytest test_main.py,确保测试通过; git add skill/validate_data_strict/ && git commit -m "feat: add validate_data_strict skill"。- 关键技巧:所有技能的
main.py开头必须有#!/usr/bin/env python3shebang,且第一行是"""SKILL: validate_data_strict - Strict validation for sensor data."""。DeepSeek Harness 会读取这个字符串作为技能描述,方便后续编排时搜索。
Day 3 下午:流程编排(Layer 4)
- 创建
.harness/pipeline/inspection_flow.yaml:
name: "设备异常诊断流水线" description: "端到端执行从数据下载到邮件通知的完整诊断流程" steps: - name: "下载原始数据" skill: "download_s3" inputs: bucket: "raw-sensor-data" prefix: "2024/Q2/" outputs: - "local_path" - name: "清洗空值" skill: "clean_nulls" inputs: input_path: "{{ steps.download_s3.outputs.local_path }}" outputs: - "cleaned_path" # 后续步骤省略,结构同上...- 执行
harness run inspection_flow --test-data ./test_data/sample_inspection.csv进行端到端测试; - 将
inspection_flow.yaml提交到stable分支; - 在
#knowledge-handover群发送消息:“inspection_flow流水线已部署,可随时用harness run inspection_flow --input-path /path/to/data.csv触发”。
3.3 交接与验证阶段:真刀真枪跑起来(耗时约1天)
最后24小时:压力测试与角色切换
- 张工不再执行任何生产操作,所有请求转由新同事用
harness run执行; - 新同事执行3次真实业务数据(非测试数据),记录:
- 每次执行耗时(
time harness run inspection_flow ...); - 输出报告与张工历史手工报告的差异点(用
diff工具比对 PDF 文本层); - 遇到的首个报错,及其解决过程(必须写入
docs/troubleshooting.md)。
- 每次执行耗时(
- 张工全程旁观,只在新同事卡壳时提供一次口头指导,指导内容必须立即更新到
SKILL.md对应位置。 - 最终签署《知识交接确认书》,签字项包括:
SKILL.md内容经本人确认无误;inspection_flow.yaml编排逻辑符合当前业务;- 所有
skill/目录下代码已通过pytest; harness run inspection_flow在生产环境数据上成功运行3次。
提示:交接不是“教完就算”,而是“跑通才算”。我坚持让新同事在张工离职前,必须独立完成3次真实订单处理。有一次,新同事在第2次运行时发现
send_email技能里 SMTP 密码是硬编码的,张工当场修改为环境变量,并更新了SKILL.md的## 安全要求章节。这种现场暴露的问题,比任何培训都管用。
4. 常见问题与避坑指南:血泪换来的12条铁律
这套流程看着清晰,实操中处处是坑。下面这12条,全是我在23个项目里摔出来的,每一条都配了真实案例和解决方案。别当耳旁风,它们直接决定你能不能在张工走后,让AI真的扛起活儿。
4.1 Git 相关致命陷阱
问题1:fatal: not a git repository (or any of the parent directories): .git
这是新手最常遇到的报错,表面是 Git 没初始化,深层原因是工作目录错了。
- 真实案例:客户运维小哥在
/home/user/目录下执行git init,然后跑到/home/user/project/里想git add .,结果报错。 - 根因:
git init创建的.git目录只在当前目录生效,子目录不会自动继承。 - 解决方案:永远用绝对路径确认当前工作目录。执行
pwd,确保输出是/home/user/project,再执行git init。或者,直接在项目根目录执行git init && git remote add origin <url>,一步到位。
问题2:git commit --amend覆盖了不该覆盖的 commit--amend很方便,但极易误操作。
- 真实案例:张工想修改上一个 commit 的 message,执行
git commit --amend -m "fix typo",结果他忘了自己刚git push过,--amend生成了新 commit hash,导致远程分支和本地分支 diverge,整个团队拉取时出现冲突。 - 根因:
--amend本质是创建新 commit 并丢弃旧 commit,如果旧 commit 已推送,就会破坏协作历史。 - 铁律:只要 commit 已
git push,绝对禁止--amend。正确做法是git revert <commit-hash>生成一个反向 commit,安全又可追溯。我强制所有团队成员在.gitconfig里加alias.amend = "!f() { git commit --amend -m \"$(git log -1 --pretty=%B)\"; }; f",这样git amend只能修改 message,不能改代码,降低风险。
4.2 Claude Code 使用误区
问题3:Claude Code 返回“Not available in your country”
这是桌面版常见提示,但不代表功能失效。
- 真实案例:客户市场部同事下载 Claude Code Desktop 后,启动就看到这个提示,以为软件坏了,直接卸载重装三次。
- 根因:提示只是检测到网络请求失败,不影响本地模型推理。Claude Code Desktop 的核心能力(代码补全、解释、重构)全部在本地运行,不依赖云端 API。
- 解决方案:点击提示框右下角的“Skip”按钮,软件会跳过联网检查,直接进入主界面。所有功能均可正常使用。我在所有客户现场,都把这个提示截图做成海报,贴在工位上。
问题4:Claude Code 解释的代码逻辑与实际不符
模型会“幻觉”,尤其当上下文不足时。
- 真实案例:张工给 Claude 一段
for i in range(len(data)): if data[i] > threshold: ...,Claude 解释为“遍历数组并过滤大于阈值的元素”,但实际代码是“找到第一个大于阈值的索引并跳出循环”。 - 根因:Claude 没看到
break语句,或data变量定义在其他文件里。 - 铁律:Claude 的输出永远是草稿,不是结论。必须用
git show <commit-hash>找到原始代码,逐行对照验证。我要求所有SKILL.md里的 Claude 解释,后面必须跟一句// VERIFIED AGAINST COMMIT 8a3f1c2,注明验证依据。
4.3 DeepSeek Harness 实战雷区
问题5:harness run报错ModuleNotFoundError: No module named 'pandas'
明明pip install pandas了,为什么找不到?
- 真实案例:客户开发在全局 Python 环境装了 pandas,但
harness run启动的是它自带的隔离环境,里面没有 pandas。 - 根因:DeepSeek Harness 为每个技能创建独立虚拟环境,
requirements.txt是唯一依赖声明入口。 - 解决方案:在
skill/validate_data_strict/目录下,创建requirements.txt,写入pandas==1.5.3(指定版本!),然后执行harness install validate_data_strict。Harness 会自动pip install -r requirements.txt到该技能专属环境。
问题6:harness run inspection_flow卡住不动,CPU 占用 100%
编排流程死锁了。
- 真实案例:客户把
download_s3和send_email两个技能的timeout都设为 300 秒,但 S3 下载因网络问题超时,send_email又在等download_s3的输出,形成循环等待。 - 根因:编排 YAML 中缺少
timeout和retry配置。 - 铁律:每个 step 必须显式声明
timeout和retry。正确写法:
- name: "下载原始数据" skill: "download_s3" timeout: 120 # 单位秒 retry: 2 # 失败后重试2次 inputs: bucket: "raw-sensor-data"4.4 SKILL.md 与流程设计硬伤
问题7:SKILL.md写得太“技术”,新人看不懂
文档成了代码注释合集,不是操作手册。
- 真实案例:
SKILL.md里写“调用scipy.signal.welch计算功率谱密度”,新人不知道welch是什么,更不知道怎么准备输入数据。 - 根因:混淆了“开发者文档”和“使用者文档”。SKILL.md 的读者是未来执行流程的人,不是写代码的人。
- 解决方案:
SKILL.md必须包含## 使用示例章节,用真实命令演示:
# 示例:如何用此技能处理一个 CSV 文件 harness run validate_data_strict --input-path ./data/sample.csv --mode strict # 预期输出:{"status": "success", "rows_validated": 1245, "errors": []}问题8:编排流程里混用绝对路径,导致无法迁移inspection_flow.yaml里写死了/home/zhang/data/,张工一走,路径就失效。
- 真实案例:客户第一次运行
harness run inspection_flow失败,报错No such file or directory: '/home/zhang/data/input.csv'。 - 根因:所有路径必须相对,或通过
inputs参数传递。 - 铁律:YAML 里禁止出现任何绝对路径。正确做法是:
- name: "下载原始数据" skill: "download_s3" outputs: - "local_path" # Harness 自动赋值为临时路径,如 /tmp/harness_abc123/data.csv - name: "清洗空值" skill: "clean_nulls" inputs: input_path: "{{ steps.download_s3.outputs.local_path }}" # 动态引用4.5 交接心理与组织陷阱
问题9:张工“藏一手”,关键判断逻辑没写进SKILL.md
人之常情,但后果严重。
- 真实案例:张工在
SKILL.md里写了“当振动频率 > 50Hz 且振幅 > 0.5mm 时判定为异常”,但没写“若同时存在温度突升 >10°C,则降级为警告”。这个逻辑只在他脑子里。 - 根因:缺乏强制性的“决策树”验证机制。
- 解决方案:在
SKILL.md末尾加## 决策树验证章节,用表格列出所有可能输入组合和预期输出:
| 振动频率(Hz) | 振幅(mm) | 温度变化(°C) | 预期判定 |
|--------------|----------|--------------|----------|
| 55 | 0.6 | +12 | warning |
| 55 | 0.6 | +2 | anomaly |
张工必须逐行确认,签字。这是防止“隐性知识”流失的最后一道防线。
问题10:新同事不敢用harness run,总觉得不如自己敲命令靠谱
信任需要建立。
- 真实案例:交接后一周,新同事仍手动执行每个
python xxx.py,harness run命令只在测试时用。 - 根因:没有建立“Harness 比手动更可靠”的认知。
- 解决方案:在
#knowledge-handover群里,每天自动推送一条harness run的成功记录,格式:[2024-06-15 09:23:17] SUCCESS: inspection_flow ran on data_20240615_001.csv, took 42.3s, report_id=rep-8a3f1c2
连续推送7天,信任自然建立。我称之为“信任播种”。
问题11:GEPA Merge审核流变成形式主义,PR 无人审
流程有了,但没人用。
- 真实案例:新同事提了 PR,3天没人 review,最后他自己 merge 了,
stable分支被污染。 - 根因:没有明确的 SLA(服务等级协议)。
- 铁律:在团队 Wiki 里白纸黑字写:所有 PR 必须在 4 小时内得到至少 1 个
approved,否则自动 assign 给 Tech Lead。我们用 GitLab 的approval rule和assignee功能强制执行。
问题12:交接完成后,SKILL.md和inspection_flow.yaml就再也没更新过
知识资产迅速过期。
- 真实案例:半年后,新设备上线,
inspection_flow仍用老逻辑,导致误报率飙升。 - 根因:没有把知识更新纳入日常研发流程。
- 解决方案:在 CI/CD 流水线里加一道门禁:每次
git push到stable分支,必须触发harness run inspection_flow --test-data ./test_data/regression.csv,失败则拒绝合并。让维护成为肌肉记忆,而不是额外负担。
5. 后续演进:从“接住活儿”到“主动进化”
这套方案跑通之后,真正的价值才刚开始显现。它不是一个静态的交接工具包,而是一个持续进化的知识操作系统。我服务过的客户,大多在3-6个月内,自发发展出以下三个方向:
5.1 自动化知识发现:让AI主动找活儿干
当activity_log.md积累到一定规模(比如1000条记录),就可以用 DeepSeek Harness 的harness analyze子命令,对日志做聚类分析:
harness analyze --log-path ./activity_log.md --min-support 0.05 # 输出:发现 7 个高频操作序列,其中序列 A(download → clean → validate → inference)出现频率 32%,建议封装为新技能这相当于给团队配了一个“流程审计机器人”。它不等人提需求,自己就能发现哪些操作最耗时、哪些环节最易出错、哪些步骤总被跳过。我们有个客户,靠这个功能发现了“每次发布前都要手动检查 12 个配置项”这个痛点,两周内就封装出了skill/check_release_config,把发布前检查从 45 分钟压缩到 8 秒。
5.2 技能市场:内部能力的“App Store”
当skill/目录下技能超过 50 个,就可以用harness market启动一个内部 Web UI:
- 所有技能按
category(如data,report,notify)分类; - 每个技能页显示:
usage_count(被调用次数)、avg_duration(平均耗时)、success_rate(成功率)、last_updated; - 支持关键词搜索(如搜
email,列出send_email,send_slack,send_sms); - 新人入职,第一件事就是在这个“技能市场”里,按业务场景挑选 3 个技能,跑通 demo。
这彻底改变了知识传递方式——不再是“张工教你”,而是“你自己查、自己试、自己组合”。我们有个客户,市场部同事用skill/generate_ppt+skill/fetch_sales_data+skill/send_email,自己搭出了周报自动生成流水线,全程没找技术部。
5.3 人机协同沙盒:让AI成为“超级助理”
最后一步,是把 Claude Code 和 DeepSeek Harness 深度集成,打造一个“对话式工作台”:
- 新同事在 VS Code 里,选中一段业务描述(如“把昨天的销售数据,按区域汇总,生成柱状图,发给销售总监”);
- 右键选择 “Claude Code: Generate Workflow”,Claude 分析后,自动生成一个
harness run命令序列:
harness run fetch_sales_data --date 2024-06-14 harness run aggregate_by_region --input ./output/fetch_sales_data.csv harness run generate_chart --input ./output/aggregate_by_region.csv --type bar harness run send_email --to sales-director@company.com --attachment ./output/generate_chart.png- 点击“Run All”,Harness 自动串行执行,每步成功后在侧边栏显示结果预览。
这不再是“AI 替代人”,而是“人指挥 AI,AI 执行细节”。张工的灵魂没被杀死,而是被放大了——他沉淀下来的每一个判断,都变成了新同事可以随时调用的“超能力”。
我在实际使用中发现,这套体系最难的不是技术,而是心态。很多管理者一听说“交给AI”,第一反应是“会不会出错?责任谁担?”。我的回答从来都是:“张工手工操作时,出错率是多少?有没有审计日志?出了错,