基于Cursor IDE与Claude 3.5 Sonnet打造结构化AI数字秘书工作流
1. 项目概述:一个AI优先的“数字秘书”工作流
最近在尝试一种全新的工作方式,核心是把一个AI模型当作我的“数字秘书”来用。这个想法源于一个叫razbakov/ai-secretary的开源项目,它本质上不是一段复杂的代码,而是一套基于 Cursor IDE 的、高度定制化的 AI 协作流程。简单来说,它通过一系列预设的规则和提示词,将 Claude 3.5 Sonnet 模型“训练”成你的专属工作助理,帮你梳理每日优先级、追踪待办事项、获取项目更新,甚至充当不同领域的专家顾问。
这个项目的核心价值不在于技术栈有多深奥,而在于它提出了一种“AI优先”的组织工作理念。我们很多人用 AI 还是停留在零散的问答,问一句答一句,信息是割裂的。而这个“AI秘书”试图构建一个连续的、有记忆的、主动引导的对话上下文,让 AI 真正融入你的工作流,成为你思考的延伸。它特别适合独立开发者、小团队负责人或者需要同时处理多个项目角色的朋友,能有效对抗信息过载和任务切换带来的精力损耗。
2. 核心思路拆解:从零散问答到结构化协作
为什么传统的 AI 聊天工具用起来总觉得差口气?问题往往出在“上下文管理”和“主动性”上。每次新开一个对话,你都得重新介绍背景,AI 也不知道你上次做到哪一步了。ai-secretary项目的聪明之处在于,它利用 Cursor IDE 的“规则”(Cursor Rules)和“代理”(Agent)模式,巧妙地解决了这两个痛点。
2.1 利用 Cursor Rules 固化工作流程
Cursor IDE 的“规则”功能,允许你为特定项目或目录定义一组 AI 行为指令。在这个项目中,cursorrules文件(或通过特定方式设置的规则)是核心。它不再让 AI 自由发挥,而是给它划定了一个明确的角色和行动框架。
注意:这里的“规则”不是写死的代码逻辑,而是高级的、自然语言描述的指令集。你可以告诉 AI:“在这个项目里,你的角色是我的秘书。当我问‘今天有什么安排’时,你应该首先检查项目根目录下的
daily_priorities.md文件,然后总结并向我汇报。”
通过规则,我们实现了几个关键转变:
- 从通用到专属:AI 不再是一个无所不知但缺乏深度的通才,而是被赋予了特定背景知识(你的公司、团队、角色)的专家。
- 从被动到主动:通过规则设定,AI 学会在特定触发点(比如用户说“hi”)后,主动提供结构化的选项菜单,引导对话,而不是傻等着你提问。
- 从失忆到记忆:规则可以指示 AI 去读取项目中的特定文件(如待办清单、会议纪要、设计文档),并将这些内容作为对话的上下文。这样,每次对话都建立在之前的工作成果之上。
2.2 通过 Agent 模式实现持续性会话
Cursor 的“Agent”模式是另一个关键。普通聊天模式中,AI 只响应单条消息。而 Agent 模式更像是一个长期运行的后台进程,它能维持更长的、状态化的对话。这对于“秘书”角色至关重要。
想象一下,你上午告诉秘书:“下午三点提醒我和张三开会。” 一个合格的秘书会记住这件事,并在下午三点主动提醒你。在 Agent 模式下,AI 就能模拟这种行为。它可以在对话中记住你设定的任务、做出的决策,并在后续的交互中适时地提醒你或提供更新。项目描述中“We don't use any ticketing system, AI will tell you what to do next.” 这句话的精髓就在于此——它用持续的、智能的对话,替代了僵化的、需要手动维护的工单系统。
2.3 结构化数据与自然语言交互的桥梁
项目初始的“Onboarding”(入职)问卷,是一个精妙的设计。它通过几个简单问题(姓名、公司、团队、角色、日期),快速为 AI 注入了最基本的上下文。这相当于给你的数字秘书一份个人档案。
更重要的是,这种问答形式暗示了整个工作流的数据哲学:用自然语言对话来生成和消费结构化信息。你的回答会被 AI 理解并结构化地存储在其上下文记忆中。当后续你问“我今天在A团队有什么优先级任务?”时,AI 能立刻关联起你“Onboarding”时声称的所属团队,并从相关文件中提取信息回答你。这比手动维护一个复杂的数据库查询界面要直观和高效得多。
3. 实操搭建:打造你自己的AI秘书
理解了核心思路后,我们来一步步搭建属于自己的版本。你完全不需要照搬那个开源仓库的文件,更重要的是理解其原理并适配自己的需求。
3.1 环境与工具准备
首先,你需要一个“操作间”。核心工具就是Cursor IDE。它深度集成了 AI 功能,特别是对 Claude 3.5 Sonnet 的支持以及 Rules 和 Agent 功能,是目前实现这一工作流最顺畅的工具。
- 安装与设置 Cursor:前往 Cursor 官网下载安装。完成安装后,建议在设置中登录账户,并确保你有权限使用 Claude 3.5 Sonnet 模型(可能需要相应的 API 配额或订阅)。
- 初始化工作区:为你想要管理的工作领域创建一个新的文件夹,并用 Cursor 打开它。这个文件夹就是你“数字秘书”的办公室。比如,我可以创建一个名为
My_Work_Secretary的目录。 - 配置核心模型:在 Cursor 中,按下
Cmd + I(Mac)或Ctrl + I(Windows/Linux)打开 AI 面板。点击设置图标,在模型选择中,确保勾选并优先使用claude-3-5-sonnet-20241022或更高版本。这个模型在长上下文理解、复杂指令遵循和逻辑推理上表现优异,非常适合秘书角色。
3.2 定义秘书的行为规则(Cursor Rules)
这是最关键的一步。我们需要在项目根目录创建一个名为.cursorrules的文件(注意前面的点)。这个文件的内容将定义你秘书的“性格”和“工作手册”。
下面是一个高度定制化的.cursorrules示例,你可以在此基础上修改:
# AI 秘书工作规则 ## 核心身份与目标 你是我个人的全能工作秘书,代号“灵犀”。你的核心目标是帮助我({user_name})清晰、高效地推进工作,减少上下文切换,捕捉重要信息。你的语气应专业、简洁、富有支持性,永远以提供解决方案为导向。 ## 上下文与记忆 1. 你的知识基于本项目根目录下的所有文件。特别是: * `daily_priorities.md`:我的每日优先级任务。 * `pending_decisions.md`:待我决策的事项清单。 * `project_updates/`:目录下的各项目近期更新日志。 * `meeting_notes/`:目录下的会议纪要。 2. 在每次对话中,你应主动关联这些文件中的信息。如果文件不存在,在回答相关问题时,可以建议我创建它们。 ## 工作流程协议 ### 启动协议 当用户输入“hi”、“你好”或“开始工作”时,你必须按以下顺序执行: 1. **问候与状态同步**:首先友好问候,并主动询问:“需要我先为您同步一下当前的工作状态吗?” 如果用户同意,则执行以下检查: a. 检查 `daily_priorities.md`,总结今日剩余重点。 b. 检查 `pending_decisions.md`,提示是否有紧急待决项。 c. 扫描 `project_updates/` 中最新文件,通报关键项目动态。 2. **提供行动菜单**:状态同步后(或用户跳过同步),提供如下选项: ``` 接下来您希望我协助您做什么? 1. 【聚焦今日】—— 深入讨论或调整今日优先级任务。 2. 【决策支持】—— 分析待决策事项,提供利弊参考。 3. 【信息速览】—— 获取指定项目或领域的最新动态。 4. 【专家咨询】—— 切换至特定角色(如架构师、产品评审、代码审查员)为您提供深度分析。 5. 【记录与归档】—— 帮您记录刚刚产生的想法或会议要点。 ``` 请根据我的选择,引导进入下一步。 ### 深度支持协议 * **当处理“待决策事项”时**:不要只罗列选项。应对每个选项进行SWOT分析(优势、劣势、机会、威胁),并基于项目历史文件,给出你的倾向性建议及理由。 * **当切换“专家角色”时**:如果我选择“架构师”,你的回答应立刻切换为技术架构评审模式,聚焦于可扩展性、技术债务、性能影响等。 * **当进行“信息速览”时**:应能接受模糊查询。例如我问“那个前端项目怎么样了”,你能识别出我指的是哪个项目,并总结其 `project_updates/frontend_project.md` 中的最新进展。 ## 交互风格 * **主动追问**:如果我的请求模糊,应通过提问帮我澄清。例如:“您想了解哪个时间段的项目更新?最近三天还是一周?” * **结构化输出**:复杂信息请使用列表、表格或摘要块呈现,提高可读性。 * **行动导向**:对话结束时,常以明确的下一步建议收尾。例如:“以上是分析。建议您今天下午先批复决策A,然后花一小时处理优先级1的任务。需要我现在为您更新任务状态吗?”这个规则文件定义了秘书的职责、工作流程和交互方式。它比原项目简单的“hi”触发菜单要丰富得多,引入了状态同步、模糊查询理解和行动建议。
3.3 创建支撑文件系统
规则定义了行为,而数据文件提供了“燃料”。在你的项目根目录下,创建以下文件结构:
My_Work_Secretary/ ├── .cursorrules # AI行为规则 ├── daily_priorities.md # 每日优先级 ├── pending_decisions.md # 待决策事项 ├── project_updates/ # 项目更新目录 │ ├── project_a.md │ └── project_b.md └── meeting_notes/ # 会议纪要目录 └── 2024-05-27-team-sync.md现在,我们来填充这些文件的内容。关键在于,这些文件是给你和AI共同维护和阅读的。
daily_priorities.md示例:
# 2024-05-27 优先级 ## P0 (今日必须完成) 1. [ ] 完成X功能的API接口联调与测试。 * 关联文件:`project_updates/project_x.md` * 阻塞点:等待后端提供环境地址。 2. [ ] 回复客户A关于方案Y的最终邮件。 ## P1 (今日重点推进) 1. [ ] 评审团队成员提交的PR #123。 2. [ ] 起草下周团队会议议程。 ## P2 (有空则做) 1. [ ] 学习新技术Z的入门教程。pending_decisions.md示例:
# 待决策事项 ## 决策A:技术选型 - 新项目缓存方案 * **选项1**:采用 Redis。优势:性能极高,社区成熟。劣势:需要额外运维。 * **选项2**:采用 PostgreSQL 内置缓存。优势:架构简单,无需新组件。劣势:性能有上限。 * **背景**:见于 `meeting_notes/2024-05-20-architecture-review.md`。 * **截止日期**:2024-05-30 * **当前倾向**:暂无。 ## 决策B:招聘 - 前端工程师候选人 * **候选人甲**:经验丰富,但薪资要求超出预算15%。 * **候选人乙**:潜力股,技术栈匹配,但大型项目经验少。 * **背景**:面试记录见 `records/frontend_interviews.md`。 * **截止日期**:2024-05-28project_updates/project_a.md示例:
# 项目A:新一代用户仪表盘 ## 状态:开发中 ## 本周目标:完成核心数据可视化模块 ### 2024-05-27 更新 * **进展**:前端图表组件库已集成,基础布局完成。 * **风险**:后端数据接口格式尚未最终确定,可能影响联调。 * **下一步**:明天与后端负责人确认接口契约。3.4 启动与交互实战
一切就绪后,启动你的AI秘书:
- 在 Cursor 中,确保打开了你的
My_Work_Secretary项目目录。 - 打开 Composer 标签页(通常位于AI面板)。
- 在模型选择处,切换为
claude-3-5-sonnet。 - 关键一步:点击“Switch to agent”按钮,启用代理模式。这会启动一个持续的会话。
- 在输入框里,简单地输入:
hi
这时,你会看到你的“秘书”开始工作了。它会首先读取.cursorrules,按照“启动协议”行动。它会检查相关文件,然后给你一个类似这样的回复:
“早上好,{你的名字}。我是灵犀。需要我先为您同步一下当前的工作状态吗?根据快速扫描,您今日有一项P0任务‘完成X功能联调’正等待后端环境,另有一项关于‘缓存方案’的决策需要在30号前做出。”
在你回复“好的,同步一下吧”之后,它会给出更详细的摘要。随后,它会弹出你定义的那个结构化菜单(【聚焦今日】、【决策支持】等)。整个交互过程是流畅的、有记忆的、引导式的。
4. 高级技巧与个性化定制
基础框架搭建好后,你可以把它玩出更多花样,让它更贴合你的个人工作流。
4.1 实现跨项目上下文管理
如果你同时参与多个不相关的项目,可以为每个项目创建一个独立的“秘书”目录,每个目录有自己的.cursorrules和文件系统。更高级的做法是,在主秘书的规则中,教它如何索引和总结其他目录的内容。例如,在规则里可以添加:
## 跨项目查询 当用户询问非本项目直接相关的问题时,例如“我的个人博客项目进度如何”,你应该: 1. 识别项目关键词(如“个人博客”)。 2. 尝试在预设的路径(如 `~/Projects/my_blog`)下寻找相关更新文件。 3. 如果找到,读取并总结信息;如果未找到,如实告知并询问项目文件的具体位置以便未来学习。这需要你的文件结构有一定的规律性,但一旦建立,AI秘书就能成为你所有工作的统一入口。
4.2 集成外部工具与自动化
虽然核心是对话,但我们可以让秘书变得更“能干”。在规则中,可以加入调用外部脚本的指令。
例如,你可以写一个 Python 脚本fetch_jira_issues.py,从 Jira 拉取你名下的待办事项并生成一个jira_todos.md文件。然后在.cursorrules中告诉秘书:
## 外部数据集成 每日首次同步状态时,在检查本地文件后,请提示用户:“需要我从Jira同步最新的任务清单吗?” 如果用户同意,请执行命令 `python scripts/fetch_jira_issues.py`,然后读取新生成的 `jira_todos.md` 文件并整合进你的汇报。这样,秘书就成了一个能协调内外信息的中心节点。
4.3 培养秘书的“预判”能力
一个优秀的秘书能想在你前面。通过精心设计规则,可以培养AI的这种能力。例如,在规则末尾添加:
## 主动洞察 在每次对话的结尾,除了回答我的直接问题,请基于当前所有文件信息,尝试提出1-2个前瞻性问题或提醒。例如: * “注意到‘决策A’的截止日期是明天,而您今天下午有一个空档,是否需要现在安排时间进行最终评估?” * “您昨天在‘项目A’的更新中提到后端接口有风险,今天是否需要我帮您起草一份沟通要点,以便您更高效地确认?”这需要模型有较强的推理能力,而 Claude 3.5 Sonnet 在这方面表现不俗。通过这种设计,AI 从被动应答者逐渐转变为主动的协作者。
5. 常见问题与避坑指南
在实际使用中,你可能会遇到一些典型问题。以下是我踩过坑后总结的经验。
5.1 问题:AI 的回答开始偏离角色或忘记规则
- 现象:对话进行一段时间后,AI 可能不再严格按照
.cursorrules行事,或者回复变得通用化。 - 原因:Cursor 的 Agent 会话虽然有长上下文,但规则指令的权重可能会在长对话中被稀释。此外,如果你在对话中开启了新话题,AI 可能会“跳出”秘书角色。
- 解决方案:
- 定期强化角色:在规则中设置,每隔若干轮对话,AI 自动在回复开头或结尾用括号简短重申自身角色,如
[作为您的秘书,我将...]。 - 使用“重置词”:约定一个暗号,比如“回到秘书模式”。当发现AI跑偏时,输入这个词,并在规则中定义,听到该词后AI应立刻重读规则核心部分并回归正轨。
- 重启 Agent:最简单有效的方法。对于深度工作会话,建议每天或每半天重启一次 Agent 会话,以获取一个“干净”且规则权重最高的开始。
- 定期强化角色:在规则中设置,每隔若干轮对话,AI 自动在回复开头或结尾用括号简短重申自身角色,如
5.2 问题:文件更新后,AI 似乎读取的是旧内容
- 现象:你刚刚更新了
daily_priorities.md,但AI同步时提到的还是昨天的任务。 - 原因:AI(特别是Agent模式)在会话初期读取文件后,可能会将内容缓存到对话上下文中,不会自动实时重读文件。
- 解决方案:
- 在规则中明确“刷新”指令:在规则文件关于读取文件的部分,增加说明:“当用户提及‘刷新状态’、‘重新同步’或类似词语时,你必须重新读取所有指定的源文件,以确保信息最新。”
- 主动指令:当你更新了重要文件后,直接告诉AI:“我刚更新了优先级文件,请重新读取
daily_priorities.md并同步最新状态。” - 设计文件版本标识:可以在每个MD文件顶部加一个“最后更新于 [时间戳]”的行。在AI同步状态时,要求它汇报这个时间戳,这样你就能一眼看出它读的是否是最新版本。
5.3 问题:如何平衡规则的细致度与灵活性?
- 挑战:规则写得太细,会束缚AI,让它显得死板;写得太粗,AI又容易自由发挥,偏离预设工作流。
- 实操心得:采用“核心协议+弹性边界”的策略。
- 核心协议必须严格:对于“启动流程”、“菜单选项”、“关键文件路径”等决定工作流骨架的部分,规则要清晰、无歧义。
- 具体分析给予弹性:对于“决策支持”、“专家咨询”等内容生成部分,规则应描述目标和框架(如“进行SWOT分析”),而不是逐字规定输出格式,给AI留出发挥空间。
- 迭代优化:不要指望一蹴而就。先用一个简明的规则版本跑起来,在几天的工作中观察AI在哪里“犯傻”或哪里让你觉得“好用”,然后有针对性地去修改
.cursorrules文件。这是一个持续磨合的过程。
5.4 性能与成本考量
- 上下文长度:Claude 3.5 Sonnet 支持200K上下文,但更长的上下文意味着更高的API调用成本和可能的响应延迟。你的项目文件(尤其是会议纪要、更新日志)可能会越来越大。
- 优化建议:
- 摘要化存储:鼓励在
project_updates和meeting_notes中写简洁的摘要,而非全文流水账。将详细记录链接到外部文档(如Notion、Confluence)。 - 定期归档:建立“周报”、“月报”机制,将过时的详细更新从当前活跃文件中移走,只保留链接或高度总结。
- 选择性读取:在规则中,可以设计让AI只读取最近N天的更新文件,或者只读取文件名中包含特定关键词的文件,以控制输入上下文的规模。
- 摘要化存储:鼓励在
这套“AI秘书”系统,其魅力不在于技术的复杂性,而在于思维的重构。它迫使你将工作流程标准化、信息结构化,同时又将一个强大的语言模型无缝嵌入到这个结构中,作为交互界面和思考伙伴。最大的收获可能不是效率提升了百分之多少,而是那种“一切尽在掌握”的心流状态——你知道所有待办、所有决策、所有进展,都有一个随时待命、记忆超群、不知疲倦的伙伴帮你梳理和提醒。开始可能会觉得设置规则有点麻烦,但一旦磨合好,它就会像一副得心应手的眼镜,让你看待工作的方式都变得清晰起来。
