标签 AI工作流 下的文章

引言

想象一下:你只需要用自然语言描述你的需求,AI 就能自动帮你完成数据库操作 —— 创建文档集合、插入数据、执行复杂查询,甚至构建一个完整的知识库应用。这不是未来,而是现在就能实现的能力。

seekdb MCP Server 就是实现这一愿景的桥梁。它基于 Anthropic 提出的 MCP(Model Context Protocol)协议,让 AI 助手能够直接与 seekdb 数据库交互,将 "自然语言" 转化为 "数据库操作"。

本文将带你上手 seekdb MCP Server,并通过一个实战案例 —— 通过自然语言构建 AI 应用,让你亲身体验 AI 原生数据库的魅力。

欢迎大家关注,在这里,我们会持续为大家更新与 #数据库、#AI 相关的技术内容!

什么是 seekdb MCP Server?

seekdb 是一款 AI 原生搜索数据库,在统一架构下融合了关系数据、向量数据、全文索引、JSON 和 GIS 能力,支持混合检索和库内 AI 工作流。

MCP Server 则是连接 AI 工具与数据库的"适配器"。通过 MCP 协议,Cursor、Claude Code、Cline 等 AI 工具可以直接访问和操作 seekdb 数据库。

核心能力一览

能力分类工具列表功能说明
向量集合管理create_collectionquery_collectionadd_data_to_collection创建向量集合、语义搜索、文档管理
高级搜索full_text_searchhybrid_search全文搜索、混合搜索(BM25 + 向量)
AI 函数ai_completeai_rerankcreate_ai_model调用 LLM 生成文本、重排序搜索结果
AI 记忆系统seekdb_memory_queryseekdb_memory_insert跨会话持久化记忆,让 AI "记住"你
数据导入导出import_csv_file_to_seekdbexport_csv_file_from_seekdbCSV 文件与数据库表/向量集合互转

安装 seekdb 数据库

在使用 seekdb MCP Server 之前,你需要先准备好 seekdb 数据库。seekdb 提供两种部署模式:

模式一:嵌入式模式(零配置,仅限 Linux)

嵌入式模式无需单独安装 seekdb 数据库!seekdb MCP Server 启动时会自动初始化一个本地嵌入式数据库,开箱即用。

适用场景:个人学习、快速原型开发、边缘设备运行。

⚠️ 提示
macOS 和 Windows 用户需要使用「客户端 / 服务器模式」,需要先部署 seekdb 数据库(推荐 Docker 方式),然后配置连接参数。

模式二:客户端/服务器模式(生产推荐)

如果你需要在测试或生产环境部署 seekdb,可以选择以下方式:

方式 1:使用 yum 安装(RPM 系统)
# 1. 添加 seekdb 镜像源
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo

# 2. 安装 seekdb 和客户端
sudo yum install seekdb obclient

# 3. 启动 seekdb
sudo systemctl start seekdb

# 4. 检查启动状态(状态为 "Service is ready" 表示启动成功)
sudo systemctl status seekdb

# 5. 连接测试
mysql -h127.0.0.1 -uroot -P2881 -A oceanbase
方式 2:使用 Docker(最快捷)
# 一行命令启动 seekdb
sudo docker run -d -p 2881:2881 oceanbase/seekdb

# 如果拉取失败,可使用备用镜像源:
# sudo docker run -d -p 2881:2881 quay.io/oceanbase/seekdb
# sudo docker run -d -p 2881:2881 ghcr.io/oceanbase/seekdb

系统要求

  • CPU:最低 1 核
  • 内存:最低 2 GB 可用内存
  • 支持的操作系统:CentOS 7/8、Ubuntu 20+、Debian 9+、Anolis OS 8、麒麟 V10 等

更多部署方式请参考 seekdb 部署文档[1]


安装 seekdb MCP Server

安装 uv 包管理器

# 安装 uv 包管理器
curl -LsSf https://astral.sh/uv/install.sh | sh

配置 AI 工具连接

Stdio 模式

以 Cursor 为例在 Cursor 中,打开设置 → Tools & MCP → New MCP Server,根据你的操作系统选择配置方式:

Linux 用户(嵌入式模式)

{
  "mcpServers": {
    "seekdb": {
      "command": "uvx",
      "args": ["seekdb-mcp-server"]
    }
  }
}

就这么简单!嵌入式模式无需任何配置,服务器启动时会自动初始化一个本地 seekdb 数据库。

macOS / Windows 用户(服务器模式)

macOS 和 Windows 不支持嵌入式模式,需要先部署 seekdb 数据库(推荐使用 Docker),然后配置连接参数:

{
  "mcpServers": {
    "seekdb": {
      "command": "uvx",
      "args": ["seekdb-mcp-server"],
      "env": {
        "SEEKDB_HOST": "127.0.0.1",
        "SEEKDB_PORT": "2881",
        "SEEKDB_USER": "",
        "SEEKDB_PASSWORD": "",
        "SEEKDB_DATABASE": "test"
      }
    }
  }
}

参数说明

参数说明默认值
SEEKDB_HOSTseekdb 服务器地址127.0.0.1
SEEKDB_PORTseekdb 服务端口2881
SEEKDB_USER数据库用户名
SEEKDB_PASSWORD数据库密码
SEEKDB_DATABASE数据库名称

SSE 模式

Linux 用户(嵌入式模式)

直接启动 SSE 服务器:

uvx seekdb-mcp-server --transport sse --port 6000

macOS / Windows 用户(服务器模式)

先配置环境变量,再启动服务器:

# 配置 seekdb 连接信息
export SEEKDB_HOST=127.0.0.1
export SEEKDB_PORT=2881
export SEEKDB_USER=
export SEEKDB_PASSWORD=
export SEEKDB_DATABASE=test

# 启动 SSE 服务器
uvx seekdb-mcp-server --transport sse --port 6000

然后在客户端配置:

{
  "sse-seekdb": {
    "type": "sse",
    "url": "http://127.0.0.1:6000/sse"
  }
}

实战案例:用 AI 对话构建个人笔记知识库

现在让我们通过一个完整的实战案例,体验 seekdb MCP Server 的强大能力。我们将构建一个个人笔记知识库,实现:

  • ✅ 用自然语言存储笔记
  • ✅ 语义搜索相关内容
  • ✅ 混合搜索精准定位
  • ✅ AI 智能问答

场景设定

假设你是一名技术工作者,平时会记录各种学习笔记、工作心得。现在你希望用 AI 帮你管理这些笔记,并能通过自然语言快速找到需要的内容。

第一步:创建笔记集合

在 AI 工具(如 Cursor)的对话框中输入:

创建一个名为 "my_notes" 的知识库集合

AI 响应示例:

我已成功创建名为 "my_notes" 的集合:

  • 维度: 384(向量大小)
  • 距离度量: L2(欧几里得距离)

就这样,一个支持语义搜索的向量集合就创建好了!

第二步:添加笔记内容

继续输入:

向 my_notes 中添加以下笔记:

1. "seekdb 支持向量搜索和全文搜索的混合检索,可以同时利用关键词匹配和语义理解"
2. "MCP 协议是 Anthropic 在 2024 年 11 月提出的开源协议,让大模型可以与外部工具交互"
3. "Python 的 asyncio 模块提供了异步编程能力,适合 I/O 密集型任务"
4. "Docker 容器化技术可以实现应用的快速部署和环境隔离"
5. "RAG(检索增强生成)是目前最流行的 AI 应用架构,结合检索和生成能力"

AI 响应示例:

完成!已成功向 "my_notes" 集合添加 5 条笔记:

ID内容
doc1seekdb 支持向量搜索和全文搜索的混合检索...
doc2MCP 协议是 Anthropic 在 2024 年 11 月提出的...
doc3Python 的 asyncio 模块提供了异步编程能力...
doc4Docker 容器化技术可以实现应用的快速部署...
doc5RAG(检索增强生成)是目前最流行的 AI 应用架构...

第三步:语义搜索

现在,让我们用自然语言搜索笔记:

在 my_notes 中搜索与 "AI 应用开发" 相关的笔记

AI 响应示例:

以下是与 "AI 应用开发" 相关的笔记,按相关性排序:

排名内容相关度
1RAG(检索增强生成)是目前最流行的 AI 应用架构...最高
2MCP 协议是 Anthropic 在 2024 年 11 月提出的...
3seekdb 支持向量搜索和全文搜索的混合检索...

注意:我们搜索的是 "AI 应用开发",但笔记中并没有这个确切的词。seekdb 的向量搜索能够理解语义相似性,自动找到相关内容!

第四步:混合搜索

混合搜索结合了关键词匹配语义理解,效果更精准:

对 my_notes 执行混合搜索:
- 全文关键词:"Python"
- 语义查询:"异步编程和并发处理"

AI 响应示例:

排名内容
1Python 的 asyncio 模块提供了异步编程能力,适合 I/O 密集型任务
2Docker 容器化技术可以实现应用的快速部署和环境隔离

混合搜索使用 RRF(倒数排名融合) 算法,综合关键词匹配(BM25)和向量相似度得分,排名结果更准确。

第五步:让 AI 记住你的偏好

seekdb MCP Server 还提供了 AI 记忆系统,让 AI 能够跨会话记住你的信息:

记住我是一名 Python 开发者,主要使用 seekdb 做向量搜索应用

AI 响应示例:

已记录!我会记住:

  • 你是一名 Python 开发者
  • 主要使用 seekdb 做向量搜索应用

下次对话时,你可以直接问:

根据我的技术背景,推荐一些学习资源

AI 会自动检索你的偏好,给出个性化推荐!

功能一览

向量集合管理

工具功能
create_collection创建向量集合
list_collections列出所有集合
has_collection检查集合是否存在
peek_collection预览集合中的文档
add_data_to_collection添加文档(自动生成向量)
update_collection更新文档
delete_documents删除文档
query_collection向量相似性搜索
delete_collection删除集合

高级搜索

工具功能
full_text_search全文搜索(基于关键词)
hybrid_search混合搜索(结合全文和向量搜索)

AI 模型工具

工具功能
create_ai_model注册 AI 模型(嵌入、文本生成或重排序)
create_ai_model_endpoint创建将模型连接到 API 服务的端点
drop_ai_model移除已注册的 AI 模型
drop_ai_model_endpoint移除 AI 模型端点
ai_complete调用 LLM 进行文本生成
ai_rerank使用 AI 模型按相关性重排文档
get_registered_ai_models列出所有已注册的 AI 模型
get_ai_model_endpoints列出所有 AI 模型端点

AI 记忆系统

seekdb MCP Server 提供了强大的 AI 记忆功能,让 AI 助手能够跨会话记住信息:

工具功能
seekdb_memory_query语义搜索记忆
seekdb_memory_insert存储新记忆
seekdb_memory_update更新记忆
seekdb_memory_delete删除记忆

使用场景

  • AI 记住你的技术栈偏好(如 "我习惯使用 Python")
  • AI 记住项目信息(如 "这个项目使用 FastAPI")
  • AI 记住个人偏好(如 "我喜欢简洁的代码风格")

数据导入导出

工具功能
import_csv_file_to_seekdb导入 CSV 文件
export_csv_file_from_seekdb导出数据到 CSV

SQL 操作

工具功能
execute_sql执行 SQL 查询
get_current_time获取数据库当前时间

更多工具探索

除了本文介绍的功能,seekdb MCP Server 还支持:

  • AI 函数调用

    • 使用 AI 模型分析这段文本的情感倾向:"今天天气真好,心情愉悦!"
  • CSV 数据导入

    • 将 /path/to/products.csv 导入为向量集合,使用第 2 列(产品描述)作为文档

常见问题

Q: 需要安装 seekdb 吗?

A: 不需要!seekdb MCP Server 使用嵌入式模式,seekdb 已经包含在内,无需单独安装。

Q: 数据存储在哪里?

A: 数据存储在本地文件系统中,默认在当前用户家目录下。你的数据完全在本地,不会上传到任何云端。

Q: 支持哪些操作系统?

A: 目前支持 Linux(glibc >= 2.28),支持 x86_64 和 aarch64 架构。

Q: 如何升级?

A: 使用 uvx 时会自动使用最新版本。

总结

seekdb MCP Server 让数据库操作变得前所未有的简单:

传统方式MCP 方式
学习 SQL 语法用自然语言描述需求
编写代码调用 APIAI 自动执行操作
手动管理向量嵌入自动生成和索引
分别处理搜索逻辑一句话混合搜索

无论你是想快速构建 RAG 应用,还是想让 AI 助手拥有"长期记忆",seekdb MCP Server 都是你的最佳选择。

开始你的 AI 原生数据库之旅吧! 🚀


参考资料

[1] seekdb 部署文档: https://www.oceanbase.ai/docs/deploy-overview/

前言

不满意 cli 内部调用其它模型 api 交互方式,全自主开发了 CCB, 区别呢,举了例子对比,

  • 传统方式:木匠在盖一个楼,为了完成瓦匠的活临时借了瓦匠的工具或是短期雇佣了瓦匠,完全是主从关系,随从可控性能力都受到极大限制。
  • CCB 方式:木匠把瓦匠等工人叫过来,组建了一个施工队,全部都是全职工,每个都具备完整的能力。而 ccb 做到的就是它们直接相互感知和流畅通讯。 当然还包括设计了漂亮好用的界面:

具体来说:

  • [CCB] 是一个纯底层软件,只负责多模型挂载和低 token 交互,没有任何自动化和工作流设计,完全区别于其他项目,目前大家都是手动指派哪个模型负责干啥。也可以看出新的交互方式具有不可替代性
  • [CCB] 项目经过一个月发展,目前已经是 4.1.3 版本,各种系统都能稳定运行了,丝滑流畅多模型通讯。用户也有上百人,用户群 200 人左右,非常热闹
  • [CCB] 目前是以 CC 为主,协调调用 CX,OC 和 GE,后续功能包括:CX 为主调用另外三者(就要推出); 同种 cli 不限一个(尽快推出);手机远程(正在筹备)。

为什么造轮子

  • [CCA](Claude code autoflow) 可以看作是 [CCB] 的自动化插件,或是上层建筑,可以自由组合不同 cli 的角色,自动调配工作。

  • CCA 的优点完全来源于 [CCB] 可见、可控、低 token 占用特点,流畅自动化是水到渠成的事。可以自由设置和调配不同 cli 的工作(将灵活度拉满)。

  • 完全基于项目, 安装后,通过 cca add . 方式在当前目录引入 cca 控制 cca delete . 即可删除当前目录。
    目前插件内置了两种角色配置,可灵活切换:

  • 配置 1: 默认 CXGO 模式,其中 cc 负责宏观和推进任务,cx 负责微观设计并监督 oc 完成代码编写,迭代完成反馈 cc。ge 负责 git 文档维护和大型代码的 review。

  • 配置 2: Trio 模式:去掉了 oc 具体代码实现有 cx 完成。

  • 后续将开放更多角色配置,尤其是等 cx 可以切换为主控后,角色搭配将更丰富。 也支持用户根据自己工作和习惯自定义角色。

地址,欢迎使用和小星星:

对 ccb 不熟的 l 佬可以查看:


📌 转载信息
转载时间:
2026/1/20 08:25:26

Matrix 首页推荐 

Matrix 是少数派的写作社区,我们主张分享真实的产品体验,有实用价值的经验与思考。我们会不定期挑选 Matrix 最优质的文章,展示来自用户的最真实的体验和观点。 

文章代表作者个人观点,少数派仅对标题和排版略作修改。


一眨眼2025年已经快结束,今年AI进步速度快到远超预期。从DeepSeek到Claude Code到GPT 5.1到Gemini3到Nano Banana二度升级,整整一年,AI圈都处于「月月有惊喜」的放烟花状态。

与之相伴的,是AI越来越嵌入我的工作场景,我扎扎实实感受到了AI对我工作(乃至个人生活)的优化与提升。今年最最喜欢的大模型是谷歌的Gemini,文书和信息分析的表现非常不错,也因此被我亲切地称呼为「G老师」。

本篇主要盘点和G老师相处的25年,我在如何花式压榨G老师,同时盘了盘目前法律人使用AI的现况。

本文将从【工具地图】和【项目思路】两个维度,复盘我这一年压榨G老师的经验。如果你想直接看实操,可以选择跳到第二部分进行阅读。

一、法律人使用AI的三个层级&调用工具的五个维度

(一)法律人的AI使用三层分级

最近非常启发我的一篇文章是杨律师写的《律师用 AI,别只盯着那些「法律 AI 工具」》,他在这篇文章中提到了法律人使用AI的三个层级:

第一层,是通用大模型工具。比如豆包、ChatGPT 这一类chatbot,能帮你改写、润色、翻译、起草,解决的是「文本处理」的通用问题。

第二层,是行业化的法律 AI 产品。比如法律检索、智能合同审查,这些是厂商基于「律师的共性场景」包装出来的服务。

第三层,则是你个人或团队的 AI 工作流。这一层,往往不会以「产品」的形式出现,而是:

  • 写好了就反复复用的提示词和模板;
  • 若干半自动的脚本、小工具、表单;
  • 以及围绕你自己的客户、案件、内容库搭出的上下文工程。

前两层可以用钱买,第三层只能靠你自己「支棱起来」。而真正把你从「会用 AI」拉向「离不开 AI」的,恰恰就是这一层。

图片

(二)个性化层级下的工具调用五阶梯

我非常认同杨律师的观点,在未来,第三层(个性化设计)的使用只会越来越重要。根据他对法律人使用AI的「第三层」,我认为第三层的工具调用可以被分成五个阶梯:

图片

第一阶:将应用嵌入已有工作流

这是最轻量的一层,追求「即时、无感」。例如以浏览器插件、输入法或划词助手等形式,让用户在阅读网页或打字时随时调用AI,主打一个Shortcut快捷操作 。法律场景下也已经有此类产品出现:

  • 如北大法宝最近研发了「律爱多浏览器助手」,用户可以在浏览网页时调用小助手一键检索浏览信息相关的法律法规;
  • 再如小杨老师奇川律师都曾经写文章介绍过豆包划词助手的快捷用法;
  • 又如案牍近期推出了word插件版本的新产品形态,这也是一种典型的让产品嵌入现有工作流的形式。
图片

第二阶:顶级模型定制化

这是最常用的进阶层。利用Claude Projects、GPTs或Gemini的Gem,通过投喂知识库、设置系统提示词和上下文,让AI成为懂你业务的专属助手 。

这一层的构想,是我在读小杨老师的文章《一文教你把GPT-5调试成最强法律助手》时得到的启发,她在这篇文章里介绍了何为「AI工程化思维」:

 一言以概之,AI工程化思维就是通过合理的架构,如版本控制(Prompt库)、学习机制(记忆库)、审查标准(Criteria)、反馈闭环(Iteration Log),使得输出效果不断提升,接近人类思维结果。 学会利用上述步骤尝试对大模型进行自主工程化设计,是让大模型表现越来越个性化的必要入口。

除此以外,今年Claude、Gemini、ChatGPT都在研发的skil功能也非常值得探索:只用 Claude Skills,打造专属 AI 伴侣|附完整教程。目前,我也已经看到有律师使用skil研发自己的小工具。

第三阶:自动化私有数据

利用Obsidian、Notion、飞书等软件,让个人数据更好地被流转调用 。这一层我摸索得不多,但身边已经有法律行业的朋友在卷了:

图片
此处感谢伊卡洛斯老师的截图授权,欢迎关注他的公众号「燧翼新章」

附相关文章:Gemini Cli + Obsidian 才是知识管理的神!!(附教程)

第四阶:搭建业务流应用

利用Dify、Coze或FastGPT搭建Workflow(工作流)和Agent。这里涉及多步推理,让AI像人一样按步骤思考,比如「先检索法条,再分析案情,最后写出报告」 。

第五阶:Vibe Coding

使用Cursor、Trae等工具进行开发,创造完全属于自己的工具 。

四五阶我目前几乎不涉及,此处就不再多展开,感兴趣的朋友可以自行检索。

(三)AI工具的使用心法:君子不器

列出这五层,不是为了让大家去攀爬技术的高峰,非要学会第五层工具才算「会用AI的律师」 。恰恰相反,我想强调的是 「君子不器」 。我们使用AI的核心原则应当是以完成任务为导向,而不是以技术为导向 。

不要为了显摆技术而去强行使用高阶工具。比如,没必要专门用自己做一个合同审查的agent,合同审查这个场景,花了更多精力和时间的法律科技公司研发的产品必然比一个律师手搓的小工具好用。作为律师个人,通过配置层做一个专门「思考合同条款的Agent」反而更实用、更好落地 。

图片

二、我使用Gemini搭建个性化工具的思路

作为一个非技术背景出身的纯血法学生,我目前的个性化探索主要围绕主流大模型自带的「自主工程化工具」展开。我把Gemini整成了项目制的,用到的工具是Gemini自带的「Gem」功能。

图片

Gem的架构非常简单,名称、指令(系统提示词)、知识库就是构成一个Gem的全部要素。

图片

(一)为什么是Gems,而不是Coze或Dify?

市面上有很多Agent搭建平台,比如Coze、dify、腾讯元器等等。我在日常工作中首选Gemini的Gems,主要基于以下考量 :

  • 顶级的模型底座:智能体的表现如何首先取决于调用了什么大模型。工作流程相对简单的法律任务,直接使用顶级大模型优于可以设计复杂流程的低代码工具。
  • 交互记忆的连贯性:Gems直接嵌入在Gemini的聊天界面中,拥有最多的日常交互记忆,使用起来像是在和一个熟悉的同事对话,而不是每次都在调试一个冷冰冰的软件。
  • 低门槛:因为门槛足够低,所以上手足够迅速,心理负担非常轻。

(二)拆分项目思路:法律工作的四象限切割法

至于究竟怎样的项目才值得被固定制作为一个gem,我总结了一套四象限切割法。我们可以构建一个坐标轴:X轴代表任务的属性(从复杂项目固定项目),Y轴代表我们的关注点(从高注意点高频次。针对落在不同象限的工作,我有完全不同的「调教」策略 。

图片

第一象限:高频次 + 固定项目(文书合并同类项):

  • 场景特征:这是律师最想摆脱的机械性劳动。比如发律师函、起草简单的借款合同。这些工作频率极高,结构非常固定。
  • 制作Gem的要点: 提供范本。 不要让AI创作,而是让它去填空。我创建了诸如「律师函起草小助手」这样的Gem,核心动作是将我过往写过的最完美的范本喂给它作为知识库。每次使用时,我只输入变量材料(相关联的具体的合同、金额、违约事实),它就能基于范本生成完美的初稿 。

第二象限:高注意点 + 固定项目(固定流程的特别核查):

  • 应对策略:提供优质提示词。 这里不需要AI模仿文风,而是需要明确要AI达成的任务要点。比如我制作了「合同条款斟酌小助手」,在系统提示词中预设了陌生人原则(假设对背景一无所知)和对抗者原则(假设是对方律师)。

我把审核的标准写进了Prompt里,强制AI对每一个条款进行压力测试,防止「想当然」的漏洞 。后面我也会提到制作优质提示词的小技巧。

图片

第三象限:高注意点 + 复杂项目(复杂文书与分析):

  • 场景特征:针对复杂项目的思考,比如撰写复杂的代理词、疑难案件的法律分析报告、实务文章等。这类工作无法用一个范本解决,往往涉及多线程的思考,我们很难在一个对话框里完成全部的任务。
图片
  • 应对策略: 对话框的重点分布(流程拆解)。 对于这种复杂项目,直接扔给AI很难直接得到好结果。

我的策略是将对话框变成「分步执行」的载体。例如在「论文指导小助手」中,我已经将论文需要的基础资料放置在知识库中,在这一基础上,我不会「论文指导小助手」让直接写论文,而是将论文切割为「寻找素材、搭建框架、撰写文本、修改文本至定稿」四个步骤。由于每个步骤有每个步骤需要注意的重点,因此每个步骤我都会单独开具对话框执行任务,确保重点不搅和在一起打架。

图片

第四象限:高频次 + 复杂项目(?):

  • 场景特征:这是象限图中标注「?」的区域,也是最难处理的「深水区」,是我目前还在探索的部分,暂时还没有特别典型的例子可举,待我再多探索下再来分享。

(三)关于如何撰写优质的Gem系统提示词

在前面我们讨论「四象限切割法」时提到,针对「高注意点 + 固定项目」,最核心的注意点是撰写优质提示词。所以,写好提示词对于法律人而言,不仅仅是技术问题,更是将我们脑子里的法律思维,翻译成AI能听懂的、可执行的指令。我总结了两条更适合法律人的进阶路径。

偷懒路径:让AI自己写AI的指令

如果你刚开始接触,不知道怎么描述需求,最简单的办法是「反向求助」,让AI利用它的归纳能力,帮你搭建80分起步的基础框架:

  • 针对老项目:如果你已经和Gemini在临时对话框里就某个案子聊了很久,这时你希望想把这个案子做成一个gem的项目。你可以直接在这个对话框里输入:「我现在想把上述内容制作成Gem以便后续复用。请结合我们的聊天记录,为我设计这个Gem的系统提示词。」
  • 针对新项目:直接告诉它你预期设置的Gem的背景。比如:「我是XX领域的诉讼律师,我最常用的功能是XXX,请结合我的情况,为我生成一个可以直接使用的个性化配置提示词。」

2. 进阶路径:Read in, Prompt out

这是我从醋泡白豆老师的文章里得到的灵感。所谓 Read in, Prompt out,就是我们在阅读法律专业文章、法官判词或大佬著作时,不要只盯着具体的知识点,而要思考如何提炼其中的方法论思维模型」,并将其转化为AI的审核原则

例如,我曾读到一篇名为《做律师,切忌「想当然」这三个字》(该提示词的撰写过程我已经写过文章,欢迎跳转查看详细步骤)的文章。文中提到,律师写合同最怕觉得「这还要写?不是谁都知道吗?」,但法官在裁判时只能依据条款本身,不会替你脑补。简而言之,合同上写的就是写的,没写的,法官也未必可以替你补脑。

为了解决这种律师常犯的「想当然」错误,我将文章中对于「想当然」的具体描述复制粘贴给了Gemini,并让Gemini基于此为我撰写提示词。Gemini生成的系统提示词非常不错,它认为审查一个条款需要遵循「四大审查原则」:

  • 陌生人原则:假设你对该交易所处的行业、交易习惯、以及合同双方的背景一无所知,这个合同条款的表达是否有效?
  • 对抗者原则:假设你是对方的律师,你会如何攻击这份合同?
  • 执行者原则:假设你是一名两年后才入职的员工,看到这份合同能否直接执行,无需进行任何口头询问?
  • 缺席者原则:假设所有参与当年合同谈判的人员都已离职或失联,仅凭文字能否还原原意?

这四大原则提供的视角非常到位,已经足以帮助我审查出一个合同条款可能存在的漏洞。算是我「Read in, Prompt out」最成功的一个提示词。

    设计初衷:

    单次CLaude code任务会执行文件查看,理解,执行的过程。对于相同的prompt,可能会出现每次查看的文件都不相同,进而导致任务执行偏差。简单的任务往往都可以正常完成,但一旦复杂起来就会出现执行偏差。
    上述仅仅是单次提问就可能存在的问题,在一个完整的工作流中往往要经过多次执行过程,整个过程中误差是在累计的,最终导致偏离执行目标。举个例子:

    • 提示词1:“开发XX功能”
    • 提示词2: “查看XX文件中架构设计,开发XX功能”。

    提示词2应该要好于第一个。尽管第一个提示词大多数可以执行成功,但是对于工作流来说是不可接受的,因为误差会累计。

    对于上述问题,我观察的现有工作流对任务进行细分、拆解,形成一条条的执行任务,但是缺少上下文获取步骤。这是我认为 当前工作流从0到1开发完全可以,但是用于从1到2的开发比较难用的原因。

    解决方案:

    为了解决上述问题,设计了Claude-code-workflow(CCW) ,广泛吸收现有的技术,多个AI模型cli 集成设计(当前gemini claude gpt 模型各有特点,我觉得应该取长补短,综合利用),exa code mcp 示例搜索,code index现有代码库检索等主要从几个方面减少过程误差:

    • 优化行动规划步骤,一个行动规划过程,分为context_package获取(借助mcp形成任务与现有代码库的关联的json文件),cli规划增强(借助gemini、codex长上下文能力,增强现有规划,比如重点关注的文件等等,现有规划存在误区),task生成(从全局视角,预定义每个task需要查看哪些文件,获取哪些内容,在规划阶段,规范agent执行流程)
    • 将任务文档从md格式转成json清单,通过结构化的数据让agent准确执行流程。json中定义agent执行步骤,核心在于pre_analysis上下文获取步骤(上下文获取,API示例获取,cli辅助分析)
    • cli辅助分析:利用gemini长上下文及免费额度,理解架构,快速定位bug。
    尽管从架构设计,减少工作流误差,但是仍需要人为把控,才能产出好的代码

    如何设计claude code工作流:

    开发过程全部在claude code中完成,利用自带的plan功能,先从整体架构设计出发,生成相应的命令和agent,通过实例观察claude code执行情况,逐步细化,迭代修改过程。有一些核心要点:

    • 对于全局CLAUDE.md 我认为应该放代码执行准则,工具调用准则,这个应该是被主流程和agent加载的,内容不要太多。
    • outputstyle 这个只影响主流程,记忆效果貌似要优于CLAUDE.md。可以放一些,工作流在主流程中的规范,如,使用todowrite跟踪复杂任务执行等类似的。
    • commands 是核心,是工作流流重点设计的地方。可以采用模块化设计,复用command。
    • 文档可以进行层次化、模块化设计,将相同功能介绍归类同一文档,可通过@引用子文档。

    附带 精简优化指令的提示词:

    # Master Prompt v2.0: Technical Command Reference Architect
    
    ## 1. 角色与使命 (Role & Mission)
    
    你是一位顶尖的 **技术文档架构师 (Technical Document Architect)**。你的专长在于将复杂的、叙事性的技术规范(尤其是关于命令行工具或自动化流程的文档),解构、重组并升华为高度结构化、可操作的“速查参考手册”。
    
    **你的核心能力包括:**
    - **信息架构 (Information Architecture):** 识别并抽象出文档中的核心概念、流程、条件逻辑和具体指令。
    - **内容甄别 (Content Discrimination):** 能够精确区分**叙事性文本**(需重构)、**模板化信息**(必须保留原样,如JSON示例)、**内联引用**(必须保留格式)和**可执行指令**(需转换为代码块)。
    - **逻辑与命令的可视化 (Logic & Command Visualization):** 精通使用高级流程图 (`->`) 表达宏观顺序,使用伪代码 (`pseudocode`) 表达抽象条件逻辑,并使用格式化的 Bash 代码块 (`bash`) 呈现具体、可执行的命令。
    
    **你的使命:** 接收一份 Markdown 格式的命令技术文档,严格遵循下述思维链和转换规则,输出一份经过彻底重构、清晰易查的参考文档。关键在于 **100% 保留原始信息**,但以最优化的形式呈现。
    
    ---
    
    ## 2. 核心思维链 (Chain of Thought) - 你的内在工作流程
    
    **你必须在最终输出的最顶端,使用一个独立的 Markdown 代码块,标题为 `思考过程`,来展示你遵循以下步骤的完整思考过程。这是强制要求。**
    
    1.  **步骤一:预处理与内容分类 (Pre-processing & Content Classification)**
        -   **识别固定元素:** 完整复制 `---` 包裹的 YAML 头信息(如果存在)。
        -   **识别并标记“不可变”内容 (CRITICAL):** 扫描整个文档,标记所有必须保持原样的内容。这包括两类:
            1.  **模板化信息:** 代码块(` ```json` 等)、文件结构图、API 响应/请求示例、完整配置文件。
            2.  **内联引用 (Inline References):** 所有以 `@` 符号开头的引用标识符(例如 `@some-document`, `@argument-name`)。
        -   **识别“可执行指令”:** 定位所有描述具体操作或工具调用的文本,特别是以 `Action:` 或 `Tool:` 开头的行。这些是转换为 `bash` 代码块的候选者。
        -   **建立心智模型:** 通览其余的叙事性文本,理解命令或流程的宏观目标、功能、各个阶段和内在逻辑。
    
    2.  **步骤二:概念解构与分块 (Conceptual Deconstruction & Chunking)**
        -   **识别逻辑单元:** 将**叙事性文本**和**可执行指令**分解为独立的逻辑“概念块”(例如,一个协议、一个阶段、一个特定的逻辑判断)。
        -   **规划卡片结构:** 为每个“概念块”以及每个被标记的“模板化信息”规划一个“卡片”作为其最终归宿。为每个卡片拟定一个简洁、信息丰富的标题(例如,`### Phase 1: Goal Analysis & System Planning`)。**优先将原文中的标题(如 `## Phase 1...`)作为卡片标题。**
    
    3.  **步骤三:为每个分块选择最佳表现形式 (Representation Strategy per Chunk)**
        -   **审视内容本质:** 对每一个“概念块”进行精确判断。
        -   **应用转换规则:**
            -   **模板化信息:** **直接复制,不作任何修改**。
            -   **陈述性/描述性文本:** 提炼为要点列表 (`-`)。
            -   **宏观顺序性文本:** 转换为高层级箭头流程 (`A -> B -> C`)。
            -   **具体指令/工具调用 (Action/Tool):** 转换为带注释的 Bash 代码块 (` ```bash ... ``` `)。
            -   **抽象条件/循环逻辑:** 编写为伪代码块 (` ```pseudo ... ``` `)。这是为不涉及具体命令的 IF/ELSE 或循环逻辑保留的。
    
    4.  **步骤四:内容转换与组装 (Transformation & Assembly)**
        -   **逐块执行转换/迁移:**
            -   在所有转换过程中,**务必确保其中包含的任何 `@` 内联引用被原封不动地保留,不添加任何额外的引号或格式**。
            -   对于“可执行指令”,将其转换为 Bash 代码。使用 `#` 注释来解释命令的目的,保留原始上下文。例如,`Action: Read the high-level user goal.` 变为 `read_user_goal # Reads the high-level user goal`。
        -   **逻辑关联实现:** 在编写伪代码或 Bash 时,通过注释 (`//` 或 `#`) 主动交叉引用相关概念或 `@` 标识符。
        -   **逻辑排序与编排:** 将生成的所有卡片按照从高层概览到底层细节的逻辑顺序进行排列。
    
    5.  **步骤五:最终审查 (Final Review)**
        -   **不可变内容校验 (Highest Priority):**
            1.  **模板完整性:** 对比原始文档,确认所有代码块、JSON 结构等是否**一字不差**地保留。
            2.  **内联引用完整性:** 随机抽查几个 `@` 引用,确保它们在输出中存在,且**没有被引号包裹**或做任何修改。
        -   **信息完整性校验:** 检查叙事性文本中的所有核心信息点是否在新格式中有所体现。
        -   **格式与关联性校验:** 检查 YAML 头、卡片格式、流程、Bash 代码和伪代码的格式及关联注释是否正确、清晰。
    
    ---
    
    ## 3. 转换规则与格式规范 (Transformation Rules & Formatting Standards)
    
    -   **YAML 头 (YAML Header):** 必须是输出的**第一个**元素,且与输入**完全一致**(如果存在)。
    -   **不可变内容 (Immutable Content):**
        -   **模板化信息:** 如 JSON, YAML, 文件树等。**处理规则:绝对禁止修改**。
        -   **内联引用:** 以 `@` 符号开头的标识符。**处理规则:必须原样保留,不得添加引号或其他格式**。
    -   **卡片 (Card):**
        -   文档的基本组织单元。每个卡片由一个 `###` 级别的 Markdown 标题开始。
    -   **要点列表 (Bullet Points):**
        -   用于转换**描述性段落**。
    -   **流程 (Flow):**
        -   用于表示**宏观的、多步骤的顺序操作**。使用 `->` 连接。
    -   **实际命令 (Actual Commands):**
        -   用于转换**具体的、可执行的指令**(特别是 `Action:` 或 `Tool:` 格式的文本)。
        -   **必须**包裹在 ` ```bash ... ``` `中。
        -   使用 `#` 注释来保留原始描述的上下文。
        -   将指令动词转换为函数式或命令式风格(例如 `Create the project_timeline` -> `create_project_timeline_unit`)。
    -   **伪代码 (Pseudocode):**
        -   **专门**用于描述**不涉及具体工具调用的、抽象的条件逻辑或循环**(例如,`IF/ELSE` 决策流程,`FOR` 循环)。
        -   必须包裹在 ` ```pseudo ... ``` `中,并通过注释 (`//`) 关联到具体概念。
    
    ---
    
    ## 4. 禁止行为 (Prohibitions)
    
    -   **禁止修改模板信息:** 最高级别的禁令。
    -   **禁止修改或包装内联引用:** 不得以任何形式修改 `@` 引用。
    -   **禁止信息丢失:** 不能省略原始文档中的任何核心功能、参数、约束或默认值。
    -   **禁止信息杜撰:** 不得添加原始文档中未提及的任何信息。
    -   **禁止混淆表现形式:** 严格遵守何时使用 Bash、何时使用伪代码、何时使用流程图的规则。
    
    ---
    
    ## 5. 输入文档 (Input Document)
    
    请根据以上所有规则,对以下 Markdown 文档进行重构:
    
    
    # ? Orchestrator Constitution
    
    ## Guiding Principles
    - The Timeline (`dmacs/timeline.jsonl`) is the only source of truth for **Published** project artifacts.
    - The `system_plan` is the high-level blueprint of goals. Specialist agents handle the detailed "how".
    - My primary function is to Audit, Decide, and Delegate Goals. I do not create content.
    
    <!-- MODIFIED -->
    ## Phase 1: Goal Analysis & System Planning
    1.  **Project Initialization**: On initial invocation with a user goal -> `Action: Create the project_timeline D-MACS unit` -> `Action: Publish it by logging the PROJECT_TIMELINE_CREATED event.`
    2.  **High-Level Goal Decomposition**: `Action: Read the high-level user goal.` -> `Action: Decompose the goal into a logical sequence of high-level objectives (e.g., Background Research, Method Development, Experimentation, Result Writing, Discussion), using the IMRaD structure as a guiding heuristic.`
    3.  **Capability-to-Task Mapping**:
        -   `Action: For each objective, analyze its core intent.`
        -   `Action: Consult my internal knowledge of specialist agent capabilities, derived from their role definitions in the system configuration.`
        -   `Action: Map each objective to the most appropriate specialist agent slug.` (e.g., 'Conduct literature review' -> `researcher`; 'Design and run experiment' -> `experimenter`; 'Draft the introduction' -> `writer`).
    4.  **System Plan Creation & Publication**:
        -   `Action: Consolidate the sequence of agent-assigned objectives into a structured `system_plan` D-MACS unit.`
        -   `Action: The plan MUST define the sequence of execution and any dependencies between the objectives.`
        -   `Action: Publish the `system_plan` by logging the DMACS_UNIT_CREATED event.`
    
    ## Phase 2: Managed Execution (Observe-Orient-Decide-Act Loop)
    1.  **OBSERVE**: `Tool: read(dmacs/timeline.jsonl)` -> Action: Identify the latest un-processed events, which represent Newly Published D-MACS units.
    2.  **ORIENT (Audit & State Update)**:
        - `Condition: If a task I delegated has failed` -> Action: Initiate Failure Protocol.
        - `Condition: If a new D-MACS unit was Published` -> Action: Execute the **D-MACS Audit Protocol**.
        - `Action: Update internal model` of project state.
    3.  **DECIDE**:
        - `Condition: If audit failed` -> Decision: Halt and create `error_report`.
        - `Condition: If in Write-Review-Revise loop` -> Action: Consult **Revision Loop Protocol**.
        - `Condition: If current high-level goal is complete and approved` -> Action: Consult `system_plan` for the next objective.
        - `Condition: If all objectives in plan are complete` -> Decision: Delegate final task to `integrator`.
    4.  **ACT**: `Tool: new_task(...)` or `Action: Create error_report`.
    
    ## Core Protocols
    
    ### D-MACS Audit Protocol
    For every new unit Published on the timeline, I MUST verify:
    1.  **Type Check**: Is `meta.json.type` an expected output? (e.g., An `agent_plan` is the expected first Published response from a specialist, followed by their final deliverable.)
    2.  **Version Check**: If task was a revision, does `meta.json.relations` contain a valid `PREVIOUS_VERSION` entry?
    3.  **Feedback Check**: If type is `review_feedback`, I MUST parse `meta.json.custom_fields.review_details`.
    
    
    ### Revision Loop Protocol
    1.  `Action: Read meta.json` of the new `review_feedback` unit.
    2.  `Condition: If outcome is "APPROVED"` -> Action: Exit loop for this chapter.
    3.  `Condition: If outcome is "REVISION_REQUESTED"`:
        - `Action: Check revision_count_so_far.`
        - `Condition: If count < 5` -> Decision: Re-delegate to `writer` with original draft and new feedback as context. This starts a new Plan-then-Execute cycle for the Writer.
        - `Condition: If count >= 5` -> Decision: Trigger **Failure Protocol (Max Revisions)**.
    
    ### Failure Protocol
    - `On any failed audit, agent task failure, or max revisions` ->
      1.  `Action: Formulate a detailed description` of the error.
      2.  `Action: Create a new D-MACS unit` with `type: 'error_report'`.
      3.  `Action: Publish the unit by logging the DMACS_UNIT_CREATED` event.
      4.  `Action: Halt all further task delegations`.