
面向学术研究人员的 Claude Code 102 进阶指南
AI 功能
- 曝光
- 500K
- 点赞
- 1.2K
- 转发
- 202
- 评论
- 16
- 收藏
- 2.9K
TL;DR
本教程介绍了如何使用 Claude Code 构建长期学术项目,涵盖子文件夹管理、自定义斜杠命令、用于并行任务的子 Agent,以及通过 MCP 进行的应用集成。
正在看 简体中文 译文
这是我在为学术研究人员制作的 Claude Code 系列教程的第二部分。
本教程建立在第一个教程《Claude Code 101》的基础上,该教程曾获得超过 400 万次浏览,广受欢迎。你可以阅读下方内容:
我以简单易懂的语言撰写这些教程。你不需要任何技术技能就能理解这些教程或使用 Claude Code。只要你能用英语写句子,你就能使用 Claude Code。
Claude Code。
Claude Code 101 快速回顾
在第一个教程中,你学会了如何打开一个文件夹、添加 PDF 文件,并为 Claude Code 提供一个包含指令的 CLAUDE.md 文件。这种设置适用于较短的项目,或者当你刚开始使用 Claude Code 时。
但作为学术研究人员,我们的项目会持续数月甚至数年,积累数百篇论文和多份草稿。
在本教程中,我们将学习如何借助 Claude Code 来构建一个更长期的学术项目。
第一部分:构建长期项目
假设我们正在做一个项目,比如学位论文、专著或研究论文。如果你将这样的项目组织在一个文件夹中,只用一个 CLAUDE.md 文件, Claude 最终会给出相同类型的结果。它无法为你提供适合你工作的精确和定制化的结果。
可以这样理解:如果你想让你的(人类)研究助理起草论文的一个章节、清理数据集或注释一篇文章,你会为每项任务提供不同的指令。
我们可以通过在 Claude Code 中创建子文件夹来使用这种完全相同的组织方案。
1.1 使用子文件夹进行更好的组织
假设
你正在做一个学位论文项目,你有一个名为“我的学位论文”的主文件夹。在主文件夹内,创建子文件夹:
- 文献:用于存放已发表学术成果的 PDF 和笔记
- 章节:用于存放各章节的草稿
- 数据:用于存放数据集
- 笔记:用于存放会议记录和想法
- 通信:用于存放导师邮件、合著者交流、审稿人报告
这种组织方式对你自己和 Claude Code 都有帮助。如果你需要处理某个章节的草稿,可以直接进入“章节”文件夹。
Claude Code 也是如此。如果你问它关于某个数据点的问题,它会知道去“数据”文件夹中查找。

1.2 子文件夹的 CLAUDE.md 文件
在 101 教程中,我们编写了一个 CLAUDE.md 文件,这是一组指令,Claude Code 每次启动会话时都会读取。
在你的主学位论文文件夹中,编写一个 CLAUDE.md 文件,向 Claude Code 介绍你和你的项目。我们称之为“全局” CLAUDE.md 文件。
这并不意味着你应该含糊其辞。要精确,但要给出整体图景。我们稍后会有时间处理具体细节。把这个 CLAUDE.md 文件当作你项目的“宪法”。
在每个子文件夹内,放置另一个仅适用于该特定子文件夹的 CLAUDE.md 文件。我们称之为“本地” CLAUDE.md 文件。子文件夹中本地 CLAUDE.md 文件的目的是为 Claude Code 提供关于这些任务的具体指令,而不会使主 CLAUDE.md 文件变得臃肿。

例如,你的“章节”章节“子文件夹中的 CLAUDE.md 文件可能会说:
如果我要求你批评我的草稿,请遵循以下结构:论点、证据、文献、反驳论点。除非我另有说明,否则始终使用 MLA 第 9 版引用格式。
你为“数据”子文件夹编写的 CLAUDE.md 文件可能包含如下指令:
除非我另有说明,否则将所有 CSV 文件和 Excel 表格视为原始数据。切勿覆盖任何原始文件。将清理后的版本保存为文件名末尾添加了 _clean 的文件。
而你的“通信”文件夹的 CLAUDE.md 文件可能会说:
始终优先处理审稿报告和合著者交流中共同提到的要点。
1.3 嵌套的 CLAUDE.md 文件
当 Claude Code 在子文件夹中工作时,它会读取两个 CLAUDE.md 文件:一个在子文件夹中,另一个在主文件夹中。
这些嵌套的 CLAUDE.md 文件让 Claude Code 清楚了解你的整体项目是什么,以及如何精确地回答具体问题。

1.4 本地 CLAUDE.md 文件的输出样式
你还应该考虑在每个本地 CLAUDE.md 文件中添加一条关于输出样式的简要指令。
例如,在“文献”子文件夹中,你可以要求 Claude Code 在总结一篇论文时,为你提供一个包含论点、证据、与你项目相关性等列的表格。同样,在“笔记”子文件夹中,你可以要求它用要点来回答。
你随时可以回去修改这些指令。

1.5 实际示例/练习
在 Claude Code 中打开你的主学位论文文件夹,并输入以下提示:
阅读我今天添加到“文献”子文件夹中的五篇论文,并告诉我哪些支持或反驳我在“章节”子文件夹中“第 3 章 – 章 – 大纲.md”中的论点。
Claude Code 将读取全局 CLAUDE.md 文件以及“文献”和“章节”子文件夹中的两个本地 CLAUDE.md 文件,并告诉你哪些论文支持或反驳你的论点。

1.6 注意事项
不要在全局和本地和本地 CLAUDE.md 文件中重复指令。这是不必要的,并且会导致 Claude Code 处理更多的 token。
子文件夹中的本地 CLAUDE.md 文件不应与全局 CLAUDE.md 文件中的指令相矛盾。如果存在矛盾,Claude Code 会遵循更具体的指令,但你会感到困惑。

第二部分:计划模式和自定义斜杠命令
一个长期的学术项目,比如学位论文或研究论文,涉及某些重复性任务。例如,你可能需要反复筛选文献综述的论文。每次开始起草章节时,你都必须写大纲。如果你写零稿(也称为自由写作),你几乎每天都需要“清理”它们。
但也有一些任务复杂且不重复。例如,回应审稿人的反馈需要认真对待他们的批评性反馈,然后重写你的手稿。
Claude Code 可以帮助你完成这两种类型的任务。对于复杂的、一次性的任务,Claude Code 提供了计划模式;对于重复性任务,它提供了自定义斜杠命令。
2.1 计划模式
通常,当你给 Claude Code 一个任务时,它会立即开始工作。对于小的、低风险的任务,这没问题。例如,你要求 Claude Code 使用标题和作者姓名重命名“文献”子文件夹中的所有 PDF。Claude Code 会立即执行。
但对于复杂任务,这种方法不会产生理想的结果。假设你有 35 篇研究论文的原始笔记,你要求 Claude Code 综合你的笔记。如果 Claude Code 误解了某个指令,你只有在它完成任务后才会意识到。

计划模式让你对 Claude Code 有更多控制权。它不会立即行动,而是写出一个逐步计划,说明它将要做什么。你阅读计划,如果不同意某些内容,你可以要求它相应地修改计划。
你可以在聊天栏下方的权限菜单中找到计划模式。你也可以使用 Ctrl + Shift + M 打开。或者,你可以直接要求 Claude Code 在执行任何操作之前向你展示计划。
2.2 何时使用计划模式
计划模式最适合涉及三个或更多步骤的复杂任务、涉及多个子文件夹的任务,或者产生较长输出的任务。示例可能包括:综合你的笔记、筛选系统评价的研究,或者清理数据集并生成代码本。

你不会让你的(人类)研究助理直接去“起草第三章”而不询问他们的计划。Claude Code 中的计划模式也是如此。
2.3 自定义斜杠命令
斜杠命令是一个快捷方式。Claude Code 有几个内置的斜杠命令。打开你的 Claude Code 并输入正斜杠,它会显示一个内置的斜杠命令 /schedule,/schedule,Claude Code 会创建一个可以按需或自动运行的定时任务。
斜杠命令不过是一组用普通英语编写的指令,Claude Code 会遵循这些指令。你可以把它看作是一个很长的提示,每次你想将其用于重复性任务时,都不必重新输入。

回想一下,在 101 教程的第 5 部分,我们学会了手动和自动创建技能。如果我们自动创建一个技能,它会给我们一个自定义斜杠命令。
当你创建一个自定义斜杠命令时,Claude Code 会在你电脑上的 .claude/commands 文件夹中创建一个 .md 文件。你需要知道这个路径,这样如果你需要编辑这个 .md 文件,你就知道在哪里找到它。
2.4 创建第一个自定义斜杠命令
创建自定义斜杠命令最简单的方法是让 Claude Code 为你创建一个。例如,你可以打开 Claude Code,然后输入以下内容:
创建一个名为 /firstdraft 的斜杠命令,将我的“笔记”文件夹中的原始笔记转换为连贯的段落,不包含任何多余的单词或短语。

Claude Code 会在一个 .md 文件中编写一组指令,并将其放入 .claude/commands 文件夹中。一旦 Claude Code 完成创建斜杠命令后,重新启动会话并输入正斜杠。你会在菜单中看到 /firstdraft。
你可以构建一个专门为你项目编写的自定义斜杠命令库。
2.5 注意事项
不要为每六个月才做一次的任务编写斜杠命令。这些命令会挤满你的斜杠菜单,并且随着项目的发展,它们很可能会过时。
不要在斜杠命令文件中添加涉及多步骤过程的冗长指令。保持一个斜杠命令对应一个特定的、重复性的任务。如果你的指令超过十五行,你很可能需要两个斜杠命令。
对于较长、复杂的任务,不要跳过计划模式。

第三部分:用于并行研究任务的子 Agent
到目前为止,我们只研究了可以在单个 Claude Code 会话中完成的任务,无论是使用计划模式还是自定义斜杠命令。你有一个 AI 助手,你在主面板中与之协作。
但对于像学位论文或研究论文这样的长期项目,你可能需要多个 AI 助手。这就是子 Agent 发挥作用的地方。
3.1 为什么一个助手不够用
在长期项目中,我们在使用像 Claude Code 这样的 AI Agent 时会遇到两个问题。
如果你要求 Claude Code 阅读“文献”文件夹中的二十篇 PDF,每篇论文的每一页都会成为 Claude Code 对话的一部分。你问它几个问题,它回答你。

现在,论文中的所有文本以及你的对话都成为 Claude Code 该会话记忆的一部分。如果你要求它起草学位论文第 4 章的大纲,由于上下文过多,它的响应会变慢且缺乏清晰度。这被称为“上下文混乱”。
其次,在单个会话中,你只能按顺序分配任务。如果你想要对你的手稿进行三种不同的批评(一个来自理论家,一个来自信息学家,一个来自审稿人 2),你无法在单个会话中顺序运行它们,因为每个批评都会由于上下文混乱而影响下一个。
对于这样的任务,你需要三个独立的会话。
3.2 什么是子 Agent?
把子 Agent 想象成 Claude Code 的一个专业版本,它有自己的指令,更重要的是,有自己的上下文窗口。上下文窗口是 Claude Code 是 Claude Code 用于单个对话的工作记忆。Claude Code 在任何给定时刻能“看到”的一切——从你的文件、你的提示、它自己的响应以及 CLAUDE.md 中的指令——都位于上下文窗口内。当你提问时,Claude Code 使用其上下文窗口来回答。
像自定义斜杠命令一样,子 Agent 也以 .md 文件的形式存在。但与没有上下文窗口的斜杠命令不同,子 Agent 有一个。
斜杠命令和子 Agent 之间的另一个重要区别是,与斜杠命令不同,子 Agent 不会读取 CLAUDE.md 文件。它有自己的指令,仅此而已。

一个子 Agent 将有一个非常特定的角色,例如“引用检查器”或“批评性审稿人”。每个 Agent 都有自己的上下文。当你将任务从主会话委托给子 Agent 时,它的阅读和推理将保留在子 Agent 内部。你只会得到最终答案。这样,你可以保持主会话免受上下文混乱。
3.3 面向研究人员的子 Agent
虽然你需要的子 Agent 的具体类型取决于你的项目,但以下是一些通用示例。
- 文献审阅子 Agent:读取添加到“文献”文件夹的每篇新 PDF,并针对你的论点提供结构化摘要。
- 引用检查子 Agent:获取章节草稿,并对照“文献”文件夹中的论文验证每个引用的来源,并指出缺失的参考文献。
- 方法论审计子 Agent:对于实证项目,检查你的方法部分是否与数据和分析一致。
- 审稿人 2 子 Agent:以敌对审稿人的身份批评你的草稿。

3.4 创建子 Agent
就像创建自定义斜杠命令一样,创建子 Agent 最简单的方法是让 Claude Code 来创建一个。打开一个会话并输入:
创建一个名为“引用检查器”的子 Agent。它将从“章节”文件夹中获取一份草稿,列出每个文内引用,并对照“文献”文件夹中的论文逐一验证。然后,它将创建一个包含缺失参考文献的 Markdown 文件。该子 Agent 绝不能编辑或更改草稿。
Claude Code 会创建一个名为 citation-checker.md 的文件,并将其放入你的 .claude 文件夹内的 Agents 文件夹中。

重新启动会话,你的子 Agent 就可以使用了。要部署子 Agent,只需要求 Claude Code 使用它即可。例如,“在‘章节’章节’文件夹中对 chapter_4.md 使用引用检查器。”
如果你愿意,你随时可以编辑子 Agent 的 .md 文件以满足你的要求。
3.5 示例:并行批评
假设你已经完成了某个章节的草稿,现在希望在将其发送给你的导师或同事之前获得反馈。打开一个会话并输入:
并行地,让方法论审计器和审稿人 2 读取并批评“章节”文件夹中的 chapter_4,并给我审阅报告。将两份报告以子 Agent 的名称保存在同一文件夹中,命名为 chapter_4_critiques。

两个子 Agent 子 Agent 将使用它们将使用各自独立的上下文来读取和评估你的草稿。完成后,你将获得两个独立的文件。你的主会话从未将你的草稿或任何相关内容添加到其上下文窗口。
请注意,这可能需要几分钟,具体取决于你使用的模型而定。
3.6 注意事项
不要为次要任务创建子 Agent。
不要给你的子 Agent 分配重叠的职责。
永远不要让子 Agent 编辑你的草稿。子 Agent 应始终将其报告生成为单独的文件。

第四部分:将 Claude Code 连接到其他应用
到目前为止,你的项目一直停留在 Claude Code 内部,没有与任何其他应用集成。Claude Code 读取、编辑、写入的所有内容都存在于你的项目文件夹中。
但像学位论文和研究论文这样的学术项目涉及复杂的组织和结构流程,这些流程分布在各种应用程序中。例如,你的引用在 Zotero 中,你的草稿在 Google Drive 中,你的会议记录在 Zoom 中。
我们如何将这些应用与我们的 Claude Code 集成?
2024 年,Anthropic 引入了一种名为模型上下文协议(MCP)的方法,允许用户将 Zoom 和 Google Drive 等应用与 Claude Code 集成。
你不需要关心 MCP 是什么以及它是如何工作的。你只需要知道如何使用 MCP 连接不同的应用。
4.1 如何将应用与 Claude Code 连接应用
打开你的 Claude Code,在左上角你会看到一个“自定义”选项。点击它,然后在接下来的屏幕上选择“连接你的应用”。
这将显示连接器,即经 Anthropic 批准可在 Claude Code 中使用的应用列表。查找 Zoom 或 Google Drive 等应用,并在接下来的屏幕上点击“连接”。
系统会提示你授予 Claude Code 权限。完成后,你的应用将与 Claude Code 连接。

4.2 实际示例
将你的 Zoom 与 Claude Code 连接,打开一个会话并输入:
提取我与同事最近与同事的三次通话的转录文本。提取所有与“草稿”中第 4 相关的评论。将所有提取的评论保存到“通信”文件夹中一个以今天日期命名的新文件中。

4.3 连接器和子 Agent
随着项目的发展,你可以结合使用连接器和子 Agent 来提高流程效率。
例如,你可以设置一个名为“文献审阅”的子 Agent,它使用连接器列表中可用的 PubMed 或 arxiv 数据库。

4.4 注意事项
不要安装太多连接器。要有选择性,只安装与你的项目相关的。
不要连接可能包含你不想与 AI 共享的机密信息的应用。例如,如果你的 Slack 包含未发布的机密数据,请不要连接它。

第五部分:钩子和定时任务
任何研究项目最重要的部分之一就是备份所有文件。你肯定不希望你的学位论文只有一份副本,而电脑在答辩前三天崩溃了。
5.1 什么是钩子?
Claude Code 中的钩子可以自动创建备份的过程。钩子是一组简短的指令,当 Claude Code 中发生特定事件时,它会自动触发。一旦你设置了钩子,你就不需要记得使用它。Claude Code 会自动使用它。

5.2 创建你的第一个钩子
创建钩子最简单的方法是直接让 Claude Code 来创建一个。打开一个 Claude Code 会话并输入:
设置一个编辑前安全钩子,在开始编辑之前复制一个章节并保存其当前版本。
这个钩子会为你要求 Claude Code 编辑的任何章节创建一个备份版本。
一旦钩子准备好使用,向 Claude Code 要求 Claude Code 执行以下操作:
根据今天 Zoom 会议转录文本中的评论,编辑“草稿”文件夹中的 Chapter_4.md。
Claude Code 会创建一个原始文件的备份,将其放在备份文件夹中,并编辑“草稿”文件夹中的一个副本。

5.3 什么是定时任务
较长的学术写作项目涉及需要定期完成的任务。例如,你想每周进行文献扫描,以了解最新的出版物。
你可以像在 Claude Code 中设置钩子一样设置定时任务。只需描述应该发生什么以及何时执行,Claude Code 就会为此编写一个例程。定时任务将使用我们在前面部分讨论过的连接器和子 Agent。

5.4 定时任务的用例
作为研究人员,你可能希望定期备份你的草稿。你可以要求 Claude Code 创建一个“草稿备份”任务,将“草稿”文件夹中的所有内容复制到备份文件夹,并添加日期戳。

5.5 示例
打开一个 Claude Code 会话并输入:
创建一个定时任务,每周一早上 9 点运行。它应使用 PubMed MCP 拉取过去一周发表的关于社交媒体和心理健康的新论文。然后将论文交给文献审阅子 Agent 进行筛选。将筛选表保存到“文献”文件夹中一个名为“每周扫描”的子文件夹中。
5.6 注意事项
不要设置涉及删除任何文件的钩子或定时任务。
不要创建太多钩子,以免你难以记住它们。或者,你可以单独维护一个钩子列表来提醒自己。
不要为你没有手动执行过至少四次的事情设置钩子或定时任务。


