-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscripture.html
More file actions
250 lines (232 loc) · 25.5 KB
/
Copy pathscripture.html
File metadata and controls
250 lines (232 loc) · 25.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>藏经阁 · 几境</title>
<style>
@font-face{font-family:'MaShanLocal';src:url('fonts/mashanzheng.woff2') format('woff2');font-display:swap}
@font-face{font-family:'SerifLocal';src:url('fonts/notoserifsc.woff2') format('woff2');font-weight:400 500;font-display:swap}
@font-face{font-family:'SerifLocal';src:url('fonts/notoserifsc-bold.woff2') format('woff2');font-weight:600 700;font-display:swap}
@font-face{font-family:'SansLocal';src:url('fonts/notosanssc-light.woff2') format('woff2');font-weight:300;font-display:swap}
@font-face{font-family:'SansLocal';src:url('fonts/notosanssc.woff2') format('woff2');font-weight:400 500;font-display:swap}
.shelf.hl{animation:shelfglow 2.4s ease}@keyframes shelfglow{0%,100%{box-shadow:0 4px 8px -2px rgba(0,0,0,.55)}30%{box-shadow:0 0 0 2px var(--gold),0 0 24px rgba(201,164,92,.5)}}
</style>
<style>
:root{
--ink:#0d1115;--panel:#171f25;--panel2:#1c252b;--rice:#ece6d6;--rice-dim:#b8b3a4;--muted:#8b938d;
--jade:#5bb295;--jade-d:#3f8f76;--gold:#c9a45c;--gold-l:#e6c074;--cinnabar:#d05f4c;--azure:#6db0c4;
--line:rgba(220,210,185,.12);--serif:'SerifLocal','Songti SC','SimSun',serif;--sans:'SansLocal','PingFang SC','Microsoft YaHei',sans-serif;--brush:'MaShanLocal','Songti SC',cursive;
}
*{margin:0;padding:0;box-sizing:border-box}
html{background:#0c1014}/*BGFIX:实色兜底——iOS Safari 滚动/回弹露馅也是深色,绝不露白*/
/* 站点统一作者署名(低调,五页一致) */
.site-by{flex:0 0 auto;text-align:center;font-family:var(--sans);font-size:10.5px;color:var(--muted);letter-spacing:.04em;padding:9px 12px 13px;position:relative;z-index:2}
.site-by a{color:var(--rice-dim);text-decoration:none;border-bottom:1px solid rgba(184,179,164,.32)}
.site-by a:hover{color:var(--rice)}
html::before{content:'';position:fixed;inset:0;z-index:-1;background:radial-gradient(820px 520px at 50% -6%,rgba(201,164,92,.10),transparent 60%),radial-gradient(700px 460px at 84% 36%,rgba(91,178,149,.06),transparent 58%),linear-gradient(180deg,#0c1014,#0e141a 45%,#0c1014)}/*BGFIX*/
body{color:var(--rice);font-family:var(--serif);-webkit-font-smoothing:antialiased;min-height:100svh;display:flex;flex-direction:column;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.r{opacity:0;animation:rise .6s cubic-bezier(.2,.7,.2,1) forwards}
.jjnav{flex:0 0 auto;display:flex;align-items:center;gap:2px;justify-content:center;padding:9px 12px;border-bottom:1px solid var(--line);font-family:var(--sans);font-size:13px;position:relative;z-index:5}
.jjnav a{color:var(--rice-dim);text-decoration:none;padding:5px 12px;border-radius:8px;transition:.2s;letter-spacing:.04em}
.jjnav a:hover{color:var(--rice);background:rgba(255,255,255,.05)}
.jjnav a.brand{font-family:var(--brush);font-size:20px;color:var(--gold);padding-right:4px}
.jjnav a.on{color:var(--jade)}
.jjnav .sp{width:1px;height:15px;background:rgba(220,210,185,.2);margin:0 3px}
.stage{flex:1 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:0;position:relative;z-index:2;padding:clamp(10px,2vh,20px) 18px clamp(12px,2vh,20px)}
.head{text-align:center;flex:0 0 auto}
.head h1{font-family:var(--brush);font-size:clamp(32px,5.6vh,50px);color:var(--gold-l);line-height:1;text-shadow:0 0 26px rgba(201,164,92,.28)}
.head .s{font-family:var(--sans);font-size:11.5px;letter-spacing:.14em;color:var(--rice-dim);margin-top:7px}
.legend{display:flex;gap:14px;justify-content:center;margin-top:9px;font-family:var(--sans);font-size:11px;color:var(--rice-dim)}
.legend i{display:inline-block;width:11px;height:11px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.lg-z i{background:linear-gradient(120deg,#2a2615,#caa24e);border:1px solid var(--gold)}
.lg-r i{background:linear-gradient(120deg,#1b2f28,#3f8f76);border:1px solid rgba(91,178,149,.6)}
.lg-x i{background:linear-gradient(120deg,#222a31,#3a4754);border:1px solid var(--line)}
/* ===== 双扇门书柜 ===== */
.shelves{perspective:1500px;display:flex;align-items:stretch;justify-content:center;width:100%;max-width:840px;height:clamp(420px,74vh,600px);margin-top:clamp(12px,2.2vh,20px)}
.cabinet{flex:1 1 0;min-width:0;display:flex;flex-direction:column;background:linear-gradient(180deg,#12181e,#0f141a);border:7px solid;border-image:linear-gradient(150deg,#3a3118,#1c1a12) 1;box-shadow:0 22px 50px rgba(0,0,0,.6),inset 0 0 44px rgba(0,0,0,.5),0 0 0 1px rgba(201,164,92,.2);overflow:hidden;position:relative}
.cabinet.left{transform-origin:right center;transform:rotateY(12deg);border-radius:8px 3px 3px 8px}
.cabinet.right{transform-origin:left center;transform:rotateY(-12deg);border-radius:3px 8px 8px 3px}
.cabinet::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:4}
.cabinet.left::after{background:linear-gradient(90deg,rgba(0,0,0,.5),transparent 42%)}
.cabinet.right::after{background:linear-gradient(270deg,rgba(0,0,0,.5),transparent 42%)}
.shelf{flex:1 1 0;min-height:0;display:flex;align-items:stretch;border-bottom:1px solid rgba(201,164,92,.22);box-shadow:0 4px 8px -2px rgba(0,0,0,.55)}
.shelf:last-child{border-bottom:none;box-shadow:none}
.tab{flex:0 0 28px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.28);border-right:1px solid rgba(201,164,92,.12)}
.tab span{writing-mode:vertical-rl;text-orientation:upright;font-family:var(--brush);font-size:clamp(14px,2vh,18px);letter-spacing:.08em}
.tab.nei span{color:#a99cc0}
.books{flex:1;display:flex;align-items:flex-end;gap:clamp(6px,1.4vw,10px);overflow-x:auto;scrollbar-width:none;padding:0 10px;min-width:0}
.books::-webkit-scrollbar{display:none}
.spine{position:relative;writing-mode:vertical-rl;text-orientation:upright;cursor:pointer;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:3px 3px 1px 1px;border:1px solid;font-family:var(--serif);font-weight:500;letter-spacing:.06em;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s;user-select:none}
.spine .t{font-size:clamp(13px,1.85vh,16px);line-height:1.14}
.spine::after{content:"";position:absolute;left:3px;right:3px;top:5px;height:1px;background:currentColor;opacity:.22}
.spine:hover,.spine.active{transform:translateY(-9px)}
.zhen{width:clamp(40px,5.8vw,54px);height:96%;background:linear-gradient(100deg,#1c2129,#2c2614 52%,#1c2129);border-color:var(--gold);color:var(--gold-l);box-shadow:inset 0 0 12px rgba(0,0,0,.5),0 0 12px rgba(201,164,92,.14)}
.zhen:hover{box-shadow:0 12px 20px rgba(0,0,0,.5),0 0 20px rgba(201,164,92,.34)}
.zen{width:clamp(36px,5.2vw,49px);height:88%;background:linear-gradient(100deg,#141f1b,#1c302a 52%,#141f1b);border-color:rgba(91,178,149,.5);color:#8fd9bf;box-shadow:inset 0 0 11px rgba(0,0,0,.45)}
.xin{width:clamp(34px,4.8vw,45px);height:80%;background:linear-gradient(100deg,#171c22,#232b33 52%,#171c22);border-color:rgba(220,210,185,.22);color:var(--rice-dim);box-shadow:inset 0 0 10px rgba(0,0,0,.4)}
/* 中缝封条 */
.seal{flex:0 0 clamp(36px,5.2vw,48px);align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;background:repeating-linear-gradient(45deg,rgba(208,95,76,.22),rgba(208,95,76,.22) 8px,rgba(208,95,76,.07) 8px,rgba(208,95,76,.07) 16px);border:1px solid rgba(208,95,76,.45);border-radius:3px;z-index:6;transform:translateZ(44px);box-shadow:0 14px 30px rgba(0,0,0,.55)}
.seal .wax{font-family:var(--brush);font-size:15px;color:#fff;background:var(--cinnabar);border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transform:rotate(-7deg);box-shadow:0 2px 7px rgba(0,0,0,.45)}
.seal .st{writing-mode:vertical-rl;text-orientation:upright;font-family:var(--brush);font-size:clamp(15px,2.2vh,19px);color:#f6e2da;letter-spacing:.16em;text-shadow:0 0 9px rgba(208,95,76,.45)}
/* 抽卷弹层 */
.scrim{position:fixed;inset:0;background:rgba(8,11,14,.8);backdrop-filter:blur(3px);z-index:50;display:none;align-items:center;justify-content:center;padding:24px}
.scrim.on{display:flex;animation:rise .25s both}
.modal{max-width:430px;width:100%;background:linear-gradient(180deg,var(--panel),#12171c);border:1px solid var(--line);border-radius:14px;padding:26px 24px;position:relative;box-shadow:0 30px 70px rgba(0,0,0,.6);max-height:86vh;overflow-y:auto}
.modal .x{position:absolute;top:13px;right:15px;font-family:var(--sans);font-size:21px;color:var(--muted);cursor:pointer;background:none;border:none;line-height:1}
.modal .x:hover{color:var(--rice)}
.ribbon{display:inline-block;font-family:var(--sans);font-size:11px;letter-spacing:.16em;padding:4px 12px;border-radius:18px;border:1px solid}
.ribbon.gz{color:var(--gold-l);border-color:rgba(201,164,92,.5);background:rgba(201,164,92,.08)}
.ribbon.gzn{color:var(--jade);border-color:rgba(91,178,149,.45);background:rgba(91,178,149,.07)}
.ribbon.gx{color:var(--rice-dim);border-color:rgba(220,210,185,.28);background:rgba(220,210,185,.05)}
.m-realm{font-family:var(--sans);font-size:12px;color:var(--muted);letter-spacing:.06em;margin:13px 0 2px}
.m-xinfa{font-family:var(--brush);font-size:19px;color:var(--rice);line-height:1.3;margin-bottom:15px}
.m-title{font-size:19px;color:#fff;font-weight:600;line-height:1.35}
.m-en{font-family:var(--sans);font-size:12.5px;color:var(--rice-dim);margin-top:3px}
.m-au{font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:4px}
.m-why{color:var(--rice-dim);font-size:14.5px;line-height:1.7;margin-top:13px;border-top:1px dashed var(--line);padding-top:13px}
.m-link{display:inline-block;margin-top:15px;font-family:var(--sans);font-size:13px;color:var(--jade);text-decoration:none;border:1px solid rgba(91,178,149,.4);border-radius:8px;padding:8px 17px}
.m-link:hover{background:rgba(91,178,149,.12)}
.m-none{display:inline-block;margin-top:15px;font-family:var(--sans);font-size:12px;color:var(--muted)}
@media(max-width:560px){.cabinet.left{transform:rotateY(9deg)}.cabinet.right{transform:rotateY(-9deg)}.tab{flex-basis:24px}}
</style>
</head>
<body>
<nav class="jjnav">
<a class="brand" href="index.html">几境</a>
<span class="sp"></span>
<a href="realms.html">境界</a>
<a class="on" href="scripture.html">藏经阁</a>
<a href="quiz.html">测一测</a>
<span class="sp"></span>
<a href="en/scripture.html">EN</a>
</nav>
<div class="stage">
<div class="head r">
<h1>藏经阁</h1>
<div class="s">每境该读的典籍 · 点书脊抽卷一观</div>
<div class="legend">
<span class="lg-z"><i></i>镇阁</span><span class="lg-r"><i></i>真传</span><span class="lg-x"><i></i>心传</span>
</div>
</div>
<div class="shelves r" style="animation-delay:.12s">
<!-- 左扇:外功 炼气→元婴(4 层) -->
<div class="cabinet left">
<div class="shelf" id="realm1"><div class="tab" style="color:#9fb0a8"><span>炼气</span></div><div class="books">
<div class="spine zhen" onclick="pull('b1a', this)"><span class="t">AI素养四诀</span></div>
<div class="spine zen" onclick="pull('b1b', this)"><span class="t">与AI共生</span></div>
<div class="spine xin" onclick="pull('b1c', this)"><span class="t">半人马赛博格</span></div>
<div class="spine xin" onclick="pull('b1d', this)"><span class="t">一桩妙事</span></div>
</div></div>
<div class="shelf" id="realm2"><div class="tab" style="color:#5bb295"><span>筑基</span></div><div class="books">
<div class="spine zhen" onclick="pull('b2a', this)"><span class="t">提示工程官典</span></div>
<div class="spine zen" onclick="pull('b2b', this)"><span class="t">提示工程正法</span></div>
<div class="spine zen" onclick="pull('b2d', this)"><span class="t">提示白皮书</span></div>
<div class="spine xin" onclick="pull('b2c', this)"><span class="t">提示藏经</span></div>
<div class="spine xin" onclick="pull('b2e', this)"><span class="t">提示速成课</span></div>
</div></div>
<div class="shelf" id="realm3"><div class="tab" style="color:#c9a45c"><span>金丹</span></div><div class="books">
<div class="spine zhen" onclick="pull('b3a', this)"><span class="t">上下文工程</span></div>
<div class="spine zen" onclick="pull('b3b', this)"><span class="t">AI工程大典</span></div>
<div class="spine xin" onclick="pull('b3c', this)"><span class="t">LLM即内存</span></div>
<div class="spine xin" onclick="pull('b3d', this)"><span class="t">情境胜提示</span></div>
</div></div>
<div class="shelf" id="realm4"><div class="tab" style="color:#6db0c4"><span>元婴</span></div><div class="books">
<div class="spine zhen" onclick="pull('b4a', this)"><span class="t">评测真经</span></div>
<div class="spine zen" onclick="pull('b4c', this)"><span class="t">系统范式</span></div>
<div class="spine xin" onclick="pull('b4b', this)"><span class="t">以模评模</span></div>
</div></div>
</div>
<!-- 中缝封印:神识既成,方可言放手 -->
<div class="seal"><div class="wax">封</div><div class="st">神识既成 方可放手</div></div>
<!-- 右扇:化神 + 内功返虚(2 层,层更高) -->
<div class="cabinet right">
<div class="shelf" id="realm5"><div class="tab" style="color:#ecdfb6"><span>化神</span></div><div class="books">
<div class="spine zhen" onclick="pull('b5a', this)"><span class="t">构建智能体</span></div>
<div class="spine xin" onclick="pull('b5b', this)"><span class="t">智能体食谱</span></div>
<div class="spine xin" onclick="pull('b5c', this)"><span class="t">自主度九品</span></div>
<div class="spine xin" onclick="pull('b5d', this)"><span class="t">技能法门</span></div>
<div class="spine xin" onclick="pull('b5e', this)"><span class="t">智能体十二律</span></div>
</div></div>
<div class="shelf" id="realm6"><div class="tab nei"><span>返虚🔒</span></div><div class="books">
<div class="spine zhen" onclick="pull('b6a', this)"><span class="t">组织革新录</span></div>
<div class="spine zen" onclick="pull('b6b', this)"><span class="t">AI经济志</span></div>
</div></div>
</div>
</div>
</div>
<footer class="site-by">作者 Hugin-Z · <a href="https://github.com/Hugin-Z" target="_blank" rel="noopener">GitHub</a></footer>
<div class="scrim" id="scrim" onclick="if(event.target===this)closeM()">
<div class="modal">
<button class="x" onclick="closeM()">✕</button>
<span class="ribbon" id="m-rib"></span>
<div class="m-realm" id="m-realm"></div>
<div class="m-xinfa" id="m-xinfa"></div>
<div class="m-title" id="m-title"></div>
<div class="m-en" id="m-en"></div>
<div class="m-au" id="m-au"></div>
<div class="m-why" id="m-why"></div>
<div id="m-act"></div>
</div>
</div>
<script>
var G={zhen:['gz','镇阁之作'],zen:['gzn','真传典籍'],xin:['gx','入门心传']};
var D={
b1a:{g:'zhen',realm:'炼气 · 心法',xinfa:'AI 是副驾驶,不是负责人',title:'AI Fluency · 4D 框架',en:'委托 / 描述 / 判别 / 尽责 — 免费官方课',au:'Anthropic × Dakan & Feller',why:'把"会用 AI"拆成四种可练的能力,是整套修为的内功总纲。入门先立框架。',link:'https://www.anthropic.com/ai-fluency'},
b1b:{g:'zen',realm:'炼气 · 心法',xinfa:'AI 是副驾驶,不是负责人',title:'Co-Intelligence《与 AI 共生》',en:'Living and Working with AI',au:'Ethan Mollick · 2024',why:'不讲技术,讲心态——把 AI 当协作者而非工具,破除"它会取代我"的迷障。',link:''},
b1c:{g:'xin',realm:'炼气 · 心法',xinfa:'AI 是副驾驶,不是负责人',title:'Centaurs and Cyborgs on the Jagged Frontier',en:'半人马、赛博格,与"参差的前沿"',au:'Ethan Mollick · One Useful Thing',why:'两种成功的人机协作姿态,外加"沉睡的车手"警示。后面所有心魔之说,源头在此。',link:'https://www.oneusefulthing.org/'},
b1d:{g:'xin',realm:'炼气 · 心法',xinfa:'AI 是副驾驶,不是负责人',title:'One Useful Thing(一桩妙事)',en:'Ethan Mollick 的每周通讯',au:'Ethan Mollick',why:'面向普通人的 AI 上手通讯,更新快、不堆术语。想保持"知道现在到底能拿 AI 做什么",订它准没错。',link:'https://www.oneusefulthing.org/'},
b2a:{g:'zhen',realm:'筑基 · 心法',xinfa:'提示不是咒语,是工作说明书',title:'Prompt Engineering 官方指南',en:'清晰 · 上下文 · 示例 · 分步 · 指定格式',au:'Anthropic Docs',why:'把"提问"升级成"描述任务"的标准手册。短、准、可立刻照做。',link:'https://github.com/anthropics/courses'},
b2b:{g:'zen',realm:'筑基 · 心法',xinfa:'提示不是咒语,是工作说明书',title:'Prompt Engineering for LLMs',en:'The Art and Science of Building LLM-Based Applications',au:"John Berryman & Albert Ziegler(Copilot 创始工程师)· O'Reilly 2024",why:'从模型如何"读"你的话讲起,系统建立提示策略。两位是 Copilot 奠基者,经验之谈不是炒概念。',link:''},
b2d:{g:'zen',realm:'筑基 · 心法',xinfa:'提示不是咒语,是工作说明书',title:'Prompt Engineering 白皮书',en:'系统讲透各类提示技巧(免费)',au:'Lee Boonstra · Google · 2024',why:'把 temperature、few-shot、思维链、结构化输出讲得很全的免费白皮书。和 Anthropic 官典对照着读,跨厂商通吃。',link:''},
b2c:{g:'xin',realm:'筑基 · 心法',xinfa:'提示不是咒语,是工作说明书',title:'Anthropic Prompt Library',en:'现成的高质量提示范例库',au:'Anthropic',why:'照着抄、照着改——最快建立"好提示长什么样"的手感。',link:'https://github.com/anthropics/anthropic-cookbook'},
b2e:{g:'xin',realm:'筑基 · 心法',xinfa:'提示不是咒语,是工作说明书',title:'ChatGPT Prompt Engineering for Developers',en:'DeepLearning.AI × OpenAI 免费短课',au:'Isa Fulford & Andrew Ng',why:'一两个小时跑完的动手短课,边写边学。最快把提示从"碰运气"练成"有套路"。',link:'https://www.deeplearning.ai/'},
b3a:{g:'zhen',realm:'金丹 · 心法',xinfa:'决定性能的是你往"内存"里装了什么',title:'Effective Context Engineering for AI Agents',en:'上下文工程:提示工程的自然演进',au:'Anthropic Applied AI · 2025.09',why:'官方把重心从"写好一句 prompt"挪到"管理好整个上下文状态"。从筑基迈向金丹的关键一跃。',link:'https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents'},
b3b:{g:'zen',realm:'金丹 · 心法',xinfa:'决定性能的是你往"内存"里装了什么',title:'AI Engineering《AI 工程》',en:'Building Applications with Foundation Models',au:"Chip Huyen · O'Reilly 2025",why:'横跨数关:提示、上下文、RAG、评测、agent 全成体系讲透,且重评测。若只读一本系统典籍,就它。官方配套资源在 GitHub(aie-book)。',link:'https://github.com/chiphuyen/aie-book'},
b3c:{g:'xin',realm:'金丹 · 心法',xinfa:'决定性能的是你往"内存"里装了什么',title:'「LLM 即操作系统,上下文窗口即内存」',en:'一个让你瞬间理解上下文工程的比喻',au:'Andrej Karpathy · 演讲 / Software 3.0',why:'prompt 只是敲进系统的一条命令;真正决定结果的,是你往"内存"里加载了什么。一句话点醒。',link:'https://www.bilibili.com/video/BV1SHKczUEzi'},
b3d:{g:'xin',realm:'金丹 · 心法',xinfa:'决定性能的是你往"内存"里装了什么',title:"The New Skill in AI is Not Prompting, It's Context Engineering",en:'新技能不在提示,而在上下文',au:'Philipp Schmid · 2025',why:'一篇把"为什么重心从提示转向上下文"讲得最干净的短文。和 Anthropic 那篇互为表里,先读这篇热身。',link:'https://www.philschmid.de/context-engineering'},
b4a:{g:'zhen',realm:'元婴 · 心法',xinfa:'自己能跑是内功,别人能跑才是法门',title:'Your AI Product Needs Evals',en:'先看自己的数据、写断言式测试,再上自动评判',au:'Hamel Husain',why:'"神识"修炼总纲:把"我感觉还行"换成"我有可量的标准"。失败的 AI 产品几乎都败在没有 eval。',link:'https://hamel.dev/blog/posts/evals/'},
b4c:{g:'zen',realm:'元婴 · 心法',xinfa:'自己能跑是内功,别人能跑才是法门',title:'Patterns for Building LLM-based Systems & Products',en:'构建 LLM 系统与产品的工程范式',au:'Eugene Yan',why:'把评测、RAG、护栏、缓存、UX 这些"让产出可控"的范式系统梳理。神识落到工程上的全景图。',link:'https://eugeneyan.com/writing/llm-patterns/'},
b4b:{g:'xin',realm:'元婴 · 心法',xinfa:'自己能跑是内功,别人能跑才是法门',title:'Creating a LLM-as-a-Judge That Drives Results',en:'用模型当评委:如何校准到可信',au:'Hamel Husain',why:'别用 1–5 分糊涂尺,改用"是否达成目标 + 评语",并校准模型评委与人的一致性。神识外放的具体招式。',link:'https://hamel.dev/blog/posts/llm-judge/'},
b5a:{g:'zhen',realm:'化神 · 心法',xinfa:'跨项目仍有效,才是法',title:'Building Effective Agents',en:'workflow 与 agent 之辨 · 从简到繁',au:'Erik Schluntz & Barry Zhang · Anthropic 2024.12',why:'agentic 的定海神针:先简单方案 + 充分评估,只在不够时才加自主。教你几种可组合的模式。',link:'https://www.anthropic.com/engineering/building-effective-agents'},
b5b:{g:'xin',realm:'化神 · 心法',xinfa:'跨项目仍有效,才是法',title:'anthropic-cookbook · patterns/agents',en:'上文那篇的可运行参考实现',au:'anthropics / GitHub',why:'把"构建高效 Agent"里的模式变成能跑的代码。读完理论就来这抄实现。',link:'https://github.com/anthropics/anthropic-cookbook/tree/main/patterns/agents'},
b5c:{g:'xin',realm:'化神 · 心法',xinfa:'跨项目仍有效,才是法',title:'Levels of Autonomy for AI Agents(L0–L5)',en:'仿自动驾驶 SAE 的自主度分级',au:'arXiv 2506.12469 等',why:'给"放手程度"一把尺:从 Operator 到 Observer。当下生产天花板是 L3、"在环上"治理——别盲目追 L5。',link:'https://arxiv.org/abs/2506.12469'},
b5d:{g:'xin',realm:'化神 · 心法',xinfa:'跨项目仍有效,才是法',title:'agent-skills',en:'把可复用能力封装成 skill 的格式参考',au:'addyosmani / GitHub',why:'想把方法"工具化"给别人用时,照它的格式组织 SKILL 文件。从"自己会跑"走向"别人能跑"。',link:'https://github.com/addyosmani/agent-skills'},
b5e:{g:'xin',realm:'化神 · 心法',xinfa:'跨项目仍有效,才是法',title:'12-Factor Agents',en:'可靠 LLM 应用的十二条工程原则',au:'Dex Horthy · HumanLayer · 2025',why:'一句话戳破幻觉:"好 agent 大多是普通软件,LLM 只在关键处点睛。"自己掌控状态与控制流,才稳得住。',link:'https://github.com/humanlayer/12-factor-agents'},
b6a:{g:'zhen',realm:'返虚 · 心法(内功)',xinfa:'AI 改变的不是个人效率,是协作结构',title:'How AI Is Transforming Work at Anthropic',en:'真实组织里的人机分工实况',au:'Anthropic(Huang 等)',why:'数据说话:真实团队里"完全委托"只占 0–20%,高层设计始终归人。返虚不是更狠地自动化,而是重构协作结构。',link:'https://www.anthropic.com/research/how-ai-is-transforming-work-at-anthropic'},
b6b:{g:'zen',realm:'返虚 · 心法(内功)',xinfa:'AI 改变的不是个人效率,是协作结构',title:'Anthropic Economic Index',en:'AI 正在如何改变真实工作与经济',au:'Anthropic',why:'从大规模真实使用数据看 AI 在各行业、各职能里究竟替代或增强了什么。判断"组织级影响"的实证地基。',link:'https://www.anthropic.com/economic-index'}
};
var lastSpine=null;
function pull(id,el){
var d=D[id];if(!d)return;
var rib=document.getElementById('m-rib');rib.className='ribbon '+G[d.g][0];rib.textContent=G[d.g][1];
document.getElementById('m-realm').textContent=d.realm;
document.getElementById('m-xinfa').textContent='“'+d.xinfa+'”';
document.getElementById('m-title').textContent=d.title;
document.getElementById('m-en').textContent=d.en;
document.getElementById('m-au').textContent=d.au;
document.getElementById('m-why').textContent=d.why;
document.getElementById('m-act').innerHTML=d.link?'<a class="m-link" href="'+d.link+'" target="_blank" rel="noopener noreferrer">前往研习 ↗</a>':'<span class="m-none">纸质 / 视频典籍 · 各书店或网络可寻</span>';
document.getElementById('scrim').classList.add('on');
if(lastSpine)lastSpine.classList.remove('active');
lastSpine=el;if(lastSpine)lastSpine.classList.add('active'); // 显式传入被点元素,不依赖全局 event(Firefox/Safari 兼容)
}
function closeM(){document.getElementById('scrim').classList.remove('on');if(lastSpine){lastSpine.classList.remove('active');lastSpine=null;}}
document.addEventListener('keydown',function(e){if(e.key==='Escape')closeM();});
// 从测一测跳来:#realmN 滚动到对应书架并高亮
(function(){
var m=(location.hash.match(/realm(\d)/)||[])[1];
if(!m)return;
var el=document.getElementById('realm'+m);
if(!el)return;
setTimeout(function(){
el.scrollIntoView({behavior:'smooth',block:'center'});
el.classList.add('hl');
setTimeout(function(){el.classList.remove('hl');},2600);
},300);
})();
</script>
</body>
</html>