signal-from-expert
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseSignal from Expert
Signal from Expert
Two ingredients make this work. Both are required:
- Volume of the user's honest, unfiltered thinking — it exposes exactly how they see something and their current level of understanding.
- A world-class expert's body of work — several essays, articles or transcripts, read in full, reviewed against all of his thinking.
The output is relevance and clarity: the expert's exact words, mapped onto the user's exact situation, including where they are wrong.
这项工作需要两个必备要素:
- 用户真实、未经过滤的思考内容体量——能精准展现用户对事物的看法及当前认知水平。
- 顶尖专家的作品合集——需完整阅读多篇论文、文章或访谈稿,并与用户的所有思考内容进行比对。
输出内容需具备关联性与清晰性:将专家原文与用户实际情况对应,包括用户存在错误的地方。
Inputs
输入信息
The user's message names three things. If one is missing, ask for it in one plain-text question.
- Corpus — the files or folders of the user's own thinking to analyze (e.g. , or
journal/2026-08-29.mdlast 14 days). Read exactly that. Nothing more.daily/ - Expert + topic — e.g. "Paul Graham on what to build", "Bezos on decision making".
- URLs (optional) — specific pieces he wants included.
用户消息需包含三项内容。若缺失其中一项,以简洁文本提问索要。
- Corpus(语料库)——用户用于分析的个人思考文件或文件夹(例如 ,或
journal/2026-08-29.md文件夹中过去14天的内容)。仅读取指定内容,不得额外扩展。daily/ - 专家+主题——例如“Paul Graham 谈创业方向”、“Bezos 谈决策制定”。
- URLs(可选)——用户希望纳入分析的特定作品链接。
Workflow
工作流程
1. Read the corpus in full
1. 完整读取语料库
cat -ncat -n2. Build the source list
2. 构建来源列表
bash
ls <repo>/essays/<expert-slug>/ 2>/dev/null # reuse what is already savedThen find more with DeepAPI (load the skill; if the key is not set). Run 5+ separate calls with different phrasings of (essay, talk transcript, interview, "best essays on", specific sub-questions). Pick the 5–8 pieces most relevant to the topic. Merge with the user's URLs and anything already saved.
deepapisource ~/.deepapi/envPOST /v1/search/web<expert> <topic>Show the list (title + URL, one line each) and ask "go?". Do not scrape before the user answers.
bash
ls <repo>/essays/<expert-slug>/ 2>/dev/null # reuse what is already saved随后通过DeepAPI查找更多内容(加载技能;若未设置密钥,执行)。针对使用不同表述(如论文、演讲文稿、访谈、“最佳相关论文”、特定子问题),发起5次以上独立的请求。筛选出5-8篇与主题最相关的作品,与用户提供的URL及已保存内容合并。
deepapisource ~/.deepapi/env<expert> <topic>POST /v1/search/web展示该列表(每行包含标题+URL),并询问“是否继续?”。在用户答复前不得进行抓取操作。
3. Scrape and save the sources
3. 抓取并保存来源内容
bash
python3 scripts/fetch-sources.py --expert "Paul Graham" --out <repo>/essays/paul-graham \
https://paulgraham.com/startupideas.html https://paulgraham.com/schlep.htmlOne DeepAPI call for all URLs. Writes per page (header + verbatim text, site layout junk stripped) and prints a head/tail preview per file. Check every preview: the text must start at the real first line and end at the real last line. Fix leftovers by hand; never edit the prose itself.
NN-slug.mdIf does not exist, copy there and add the symlink.
<repo>/essays/AGENTS.mdassets/essays-AGENTS.mdCLAUDE.mdbash
python3 scripts/fetch-sources.py --expert "Paul Graham" --out <repo>/essays/paul-graham \
https://paulgraham.com/startupideas.html https://paulgraham.com/schlep.html针对所有URL发起一次DeepAPI请求。为每个页面生成文件(包含标题+原文文本,剔除网站布局冗余内容),并打印每个文件的首尾预览。检查所有预览内容:文本必须从真实起始行开始,到真实结束行结束。手动修复残留问题;不得修改原文内容。
NN-slug.md若不存在,将复制到该位置,并添加符号链接。
<repo>/essays/AGENTS.mdassets/essays-AGENTS.mdCLAUDE.md4. Read every source in full
4. 完整读取所有来源内容
cat -nfile:linecat -nfile:line5. Write the analysis
5. 撰写分析报告
Default 4 numbered items. Format, exactly:
undefined默认包含4个编号条目。格式严格遵循以下规范:
undefinedDD-MM-YYYY — Signal from <Expert>
DD-MM-YYYY — Signal from <Expert>
Corpus: <files>. Sources: (N pieces). Agent analysis, not the user's words.
essays/<expert-slug>/Read all N. Here are the K that hit your exact situation, each with <Expert>'s own words and the file:line for the full passage.
Corpus: <files>. Sources: (N pieces). Agent analysis, not the user's words.
essays/<expert-slug>/Read all N. Here are the K that hit your exact situation, each with <Expert>'s own words and the file:line for the full passage.
1. <Short, plain-English claim>
1. <Short, plain-English claim>
<One or two lines: what the user said in the corpus, and why this passage hits it.>
"<Exact quote, 1–4 sentences>"
Full section:
essays/<expert-slug>/NN-slug.md:START-END<One or two lines: what the user said in the corpus, and why this passage hits it.>
"<Exact quote, 1–4 sentences>"
Full section:
essays/<expert-slug>/NN-slug.md:START-END2. ...
2. ...
Co-founder read: <One paragraph. What the items say together and what to do next.>
Rules for the items:
- **At least one item must be a gap** — a place where the expert's writing shows the user is wrong, or missing something. Mark it: `## 2. Gap: ...`. Back it with a quote like every other item.
- Quotes are the expert's exact words, short. Never long excerpts — the full text is in the saved file, the `file:line` range points to it.
- Quote the user's own corpus words when calling out a pattern or gap. Never paraphrase their reasoning.
- One claim per item. Plain English. No hedging.
- Skip anything in the corpus that is private personal life rather than the topic at hand.Co-founder read: <One paragraph. What the items say together and what to do next.>
条目规则:
- **至少包含一处认知缺口条目**——即专家内容显示用户存在错误或认知缺失的地方。标记格式为:`## 2. Gap: ...`。与其他条目一样,需附上专家原文引用。
- 引用内容需为专家原文,且简短。不得使用长篇摘录——完整文本已保存于文件中,`file:line`范围可指向对应内容。
- 指出模式或认知缺口时,需引用用户语料库中的原文。不得转述用户的推理内容。
- 每个条目对应一个观点。使用简洁直白的表述,不得含糊其辞。
- 忽略语料库中与当前主题无关的私人生活内容。6. Save and show
6. 保存并展示结果
Save to (if the corpus is one file, its parent folder). Print the full analysis in chat. Do not commit.
<corpus folder>/signal-<expert-slug>.md将分析结果保存至(若语料库为单个文件,则保存至其父文件夹)。在聊天窗口中打印完整分析内容。无需提交版本控制。
<corpus folder>/signal-<expert-slug>.mdFailure modes
故障处理
- — the scrape body uses
Unknown field "url"(array). The script does this right.urls - Python on DeepAPI responses — the sandbox proxy truncates chunked responses to urllib. The script uses curl for that reason; do the same for any ad-hoc calls.
IncompleteRead - Page shows — re-run with a higher
truncated: true.--max-chars - Search returns junk — ask the user for URLs instead of guessing.
- Fewer than 3 sources found — say so and ask; do not pad with weak pieces.
- ——抓取请求体需使用
Unknown field "url"(数组格式)。脚本已正确处理此问题。urls - DeepAPI响应出现Python 错误——沙箱代理截断了urllib的分块响应。因此脚本使用curl处理,临时调用也需采用相同方式。
IncompleteRead - 页面显示——使用更高的
truncated: true参数重新运行。--max-chars - 搜索结果无效——向用户索要URL,而非自行猜测。
- 找到的来源少于3个——告知用户并询问;不得用无关内容凑数。