接入说明 · 链接到正确位置
这份文件回答「然后链接到正确位置」。 结论先行:本系列作为独立分章网页书发布在
https://jiangtian.top/harness/,与本站 《FDE 入门到精通》 同版式、双向互链,并在/lab/挂同款卡片。
0 · 一句话结论
| 项 | 结论 |
|---|---|
| 目标站点 | jiangtian.top(自建站,静态目录直接部署,非 VitePress) |
| 正确落点 | /harness/,与 /fde/ 平级的第二本分章电子书 |
| 主入口 | https://jiangtian.top/harness/ |
| 版式 | 复用 /fde/assets/book.css,同款侧栏目录、翻页条、进度条、credit、返回条 |
| 反向链接 | /fde/ 全部 15 页的侧栏与页底、目录页「进阶阅读」卡片、/lab/ 实验室卡片 |
| 源稿 | 本目录 chapters/*.md、appendix/*.md、README.md、SOURCES.md |
| 构建 | build_harness_book.py → out/harness/ |
| 发布 | deploy_harness.py(SSH 上传 + 打补丁 + 全量校验) |
为什么是独立子站,而不是塞进
/fde/的 p00–p13:原书是「AI Engineer World's Fair 2026 八场演讲」的非官方改编,署名与授权(CC BY-NC-SA 4.0)都属于原作者「高飞的电子替身」。把 19 章原创教程插进那 14 页,会混淆著作权边界,也会破坏原书「序 → 八课 → 总结 → 实践手册 → 附录」的既定结构。独立成书 + 双向链接,是既能被找到、又不改动原书正文的正确位置。
1 · 站点结构
jiangtian.top/
├── fde/ 已有 · FDE 入门到精通(14 页 + 目录)
│ ├── index.html ← 加「进阶阅读」卡片
│ ├── p00..p13.html ← 侧栏 backlinks + 页底 pager-back 各加一个入口
│ └── assets/book.css ← 被 /harness/ 原样复用
├── harness/ 新增 · Agent Harness 从入门到精通
│ ├── index.html 封面 + 全书目录
│ ├── p00.html 导读(README:为什么、证据等级、四级能力、90 天、毕业标准)
│ ├── c01..c19.html 19 章正文
│ ├── a01..a04.html 附录 A 术语表 / B 来源索引 / C 验收清单 / D 失败模式
│ ├── a05.html 本文件(接入说明)
│ └── assets/
│ ├── book.css 原书样式,字节级复用
│ ├── extra.css 分章站样式 + Markdown 补充样式
│ ├── nav.js 原书侧栏交互
│ └── cover.svg 新封面(不复用原书封面图)
└── lab/index.html 已有 · 加一张同款 aicard
2 · 链接映射(源稿 → 线上)
| 源稿 | 线上 |
|---|---|
README.md / ../README.md |
p00.html |
chapters/h01.md … h19.md |
c01.html … c19.html |
appendix/glossary.md |
a01.html |
SOURCES.md |
a02.html |
appendix/production-checklist.md |
a03.html |
appendix/failure-patterns.md |
a04.html |
INTEGRATION.md |
a05.html |
构建脚本会重写所有 .md 内部链接,包括 ./harness/...、../harness/... 这类相对写法;外部 URL 原样保留。未匹配到的 .md 链接统一指向 index.html,不会留死链。
3 · 互链落点("正确位置"的具体清单)
| # | 位置 | 改动 | 理由 |
|---|---|---|---|
| 1 | /fde/ 15 页侧栏 backlinks |
新增「Harness 教程」入口,2×2 变 2×3 | 侧栏是全书全局导航,读者在任何一页都能看到续篇 |
| 2 | /fde/ 15 页页底 pager-back |
新增「Harness 教程 →」 | 手机端侧栏收起时仍可见 |
| 3 | /fde/index.html 目录页 |
目录列表后加「进阶阅读」卡片 | 目录页是自然的分叉点 |
| 4 | /fde/p12.html 附录 D |
加一句「延伸:Harness 工程资料索引」 | 原书附录 D 就是资料来源,语义最贴 |
| 5 | /lab/index.html |
新增同款 aicard,紧邻 FDE 卡片 |
实验室是站内全部作品的索引页 |
| 6 | /harness/ 侧栏 backlinks |
「FDE 电子书」入口 | 反向可回到原书 |
| 7 | /harness/ 页底 pager-back |
「去 FDE 电子书 →」 | 同上,移动端兜底 |
不动的地方:原书正文一字不改、原书封面图不复用、不改动 /post/17660.html 书评文章、不改首页导航结构。
4 · 发布链路
沿用 /fde/ 既有的部署方式(SSH + SFTP,/www/wwwroot/jiangtian.top/):
python build_harness_book.py # 生成 out/harness/
python deploy_harness.py # 上传 + 打补丁 + 线上校验
deploy_harness.py 的约束:
- 上传前在服务器
/root/下打两份备份:/fde/全部 HTML +extra.css,以及/lab/index.html。 - 补丁采用「下载 → 本地改 → 断言计数 → 回传」,每页都校验锚点存在,锚点缺失即中止,不覆盖线上文件。
- 上传后统一
chown www:www、文件 644、目录 755。 - 全量 curl 校验:每个页面 HTTP 200,且互链字符串存在;任何一页失败都会在输出里列出
FAILED。
5 · 验收清单
https://jiangtian.top/harness/返回 200,封面与目录正常- 19 章 + 导读 + 5 附录 + 目录页,共 26 个 HTML 全部 200
- 侧栏目录五篇分组、每章 h2 可展开、当前章高亮
- 每页翻页条「上一章 / 目录 / 下一章」正确,首尾不出现死链
- 章节内所有内部链接跳转正确(无
.md残留) - 代码块深色底、表格可读、宽表格可横向滚动
/fde/15 页均出现「Harness 教程」入口,原书正文未变/lab/新卡片可见,点了能进/harness/- 移动端(≤900px)侧栏可收起、页底返回条可见
6 · 回滚
服务器上每次部署都会留带时间戳的备份:
ls -lt /root/*backup*.tgz /www/wwwroot/jiangtian.top/lab/index.html.bak-*
# 回滚 FDE 补丁
tar xzf /root/fde-html-backup-<stamp>.tgz -C /www/wwwroot/jiangtian.top/fde
# 回滚实验室页
cp -a /www/wwwroot/jiangtian.top/lab/index.html.bak-<stamp> /www/wwwroot/jiangtian.top/lab/index.html
# 下线新书
rm -rf /www/wwwroot/jiangtian.top/harness
7 · 纠偏记录
上一版把「博客」误判成第三方 FDE-Wiki(zhyese/fde-wiki,VitePress),给出的是 config.ts / scripts/split.mjs 补丁,方向不对,已整体废弃。真实载体是本站 /fde/ 这套静态分章网页书,本文档与全部脚本按此重做。
8 · 时效与责任
本系列基线为公众号原文(2026-11-05)+ 官方仓库 / 文档站 / 论文 / 业界博客,资料截止 2026-11-06。DeepSeek Harness 为 developer preview,官方 SAFETY.md 明确写明未经过安全审计、不得视为生产就绪;教程中所有命令与配置键都可能随版本失效,方法论不随之失效。每条引用都带证据等级,未复核的来源集中列在附录 B 的「待核实线索」,未编造补位。