使用说明
克劳德演说家
一 模型上下文协议(MCP) 用于确定性快速优化的服务器 克劳德代码。7个质量维度上的分数提示,从11个维度中自动选择 人类学技术,并返回结构脚手架。没有LLM呼叫,没有网络,亚毫秒。
安装
要求:
来自shell:
claude mcp add claude-orator-mcp -- npx claude-orator-mcp
从内部克劳德 (需要重新启动):
Add this to our global mcp config: npx claude-orator-mcp
Install this mcp: https://github.com/Vvkmnn/claude-orator-mcp
从任何手动配置 mcp.json:(光标、风帆等)
{
"mcpServers": {
"claude-orator-mcp": {
"command": "npx",
"args": ["claude-orator-mcp"],
"env": {}
}
}
}
有 不 npm install 必需的 --没有外部依赖或数据库,只有确定性启发式。
然而,如果 npx 解决错误的包,您可以使用以下命令强制解决:
npm install -g claude-orator-mcp
技能
可选地,安装技能来教Claude何时主动优化提示:
npx skills add Vvkmnn/claude-orator-mcp --skill claude-orator --global
# Optional: add --yes to skip interactive prompt and install to all agents
这使得Claude在分派子代理、编写系统提示或制作任何值得改进的提示之前,会自动优化提示。MCP在没有技能的情况下工作,但技能提高了可发现性。
插件
要使用钩子和命令进行自动提示优化,请从安装 克劳德商场 市场:
/plugin marketplace add Vvkmnn/claude-emporium
/plugin install claude-orator@claude-emporium
这 克劳德演说家 插件提供:
钩子 (分代理调度前发生火灾):
- 任务之前——建议在启动代理之前进行提示优化
命令: /reprompt-orator
需要先安装MCP服务器。请参阅商场了解其他Claude Code插件和MCP。
特征
MCP服务器 只需一个工具。提示输入,优化提示输出。
orator_optimize
分析7个质量维度的提示,从11种拟人技术中自动选择,并返回一个结构优化的支架,带有前后评分。
orator_optimize prompt="Write a function that sorts users"
> Returns optimized scaffold with XML tags, output format, examples section
orator_optimize prompt="You are a helpful assistant" intent="system"
> Returns role-assigned system prompt with structure and constraints
orator_optimize prompt="Extract all emails from this text" techniques=["xml-tags", "few-shot"]
> Force-applies specific techniques regardless of auto-selection
计分仪 (渐变填充条):
🪶 3.2 ░░░▓▓▓▓▓▓▓▓ 7.8
+xml-tags +few-shot +structured-output · 3 issues
Wrapped in XML tags, added examples, specified output format
三区酒吧: ░░░ (基线) ▓▓▓▓▓ (改进) ░░ (净空高度为10)。
最小案例 (结构良好):
🪶 ━━ already well-structured (8.4)
输入:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
prompt |
string | Yes | 要优化的原始提示 |
intent |
enum | 否 | code | analysis | creative | extraction | conversation | system (自动检测) |
target |
enum | 否 | claude-code | claude-api | claude-desktop | generic (默认值: claude-code) |
techniques |
string[] | 否 | 强制应用特定技术ID |
输出:
| 字段 | 类型 | 描述 |
|---|---|---|
optimized_prompt |
string | 重写提示脚手架(主要输出) |
score_before |
number | 原件质量分数(0-10) |
score_after |
number | 优化后的质量分数(0-10) |
summary |
string | 1行改进说明 |
detected_intent |
string | 自动检测到的意图类别 |
applied_techniques |
string[] | 已应用的技术ID |
issues |
string[] | 检测到问题 |
suggestions |
string[] | 可操作的修复 |
这 optimized_prompt 是一种结构脚手架。Claude利用领域知识、代码库上下文和对话历史对其进行了改进。
方法论
🪶 claude-orator-mcp
════════════════════
orator_optimize
──────────────
PROMPT
│
┌────────────┴────────────┐
▼ ▼
┌───────────┐ ┌────────────┐
│ Detect │ │ Measure │
│ Intent │ │ Complexity │
└─────┬─────┘ └──────┬─────┘
│ │
system > code > word count +
extraction > clause depth
analysis > │
creative > │
conversation │
+ disambiguation │
+ fallback heuristics │
│ │
└────────────┬────────────┘
│
▼
┌───────────────────┐
│ Score Before │
│ │
│ clarity 20% │ strong verbs, single task
│ specificity 20% │ named tech, constraints
│ structure 15% │ XML tags, headers, lists
│ examples 15% │ input/output pairs
│ constraints 10% │ scope, edge cases
│ output_fmt 10% │ format specification
│ efficiency 10% │ no filler, no redundancy
│ │
│ ░░░░░░░░░░ 3.2 │
└────────┬──────────┘
│
▼
┌───────────────────┐ techniques?
│ Select Techniques │◄──── (force override)
│ │
│ when_to_use() × │ 11 predicates
│ intent match × │ filtered
│ score gaps × │ sorted by impact
│ cap at 4 │
└────────┬──────────┘
│
▼
┌───────────────────┐
│ Template Assembly │
│ │
│ role preamble │ expert identity
│ → <context> │ grounding data first
│ → <task> │ XML-wrapped prompt
│ → <requirements> │ constraints + gaps
│ → <examples> │ multishot I/O pairs
│ → output format │ format specification
└────────┬──────────┘
│
▼
┌───────────────────┐
│ Score After │
│ │
│ ░░░▓▓▓▓▓▓▓░░ 7.8│
└────────┬──────────┘
│
▼
OUTPUT
optimized_prompt
+ scores + techniques
+ issues + suggestions
score meter (gradient fill bar):
─────────────────────────────────
🪶 3.2 ░░░▓▓▓▓▓▓▓▓ 7.8
+xml-tags +few-shot +structured-output
Wrapped in XML, added examples, format
░░░ baseline ▓▓▓ improvement ░░ headroom
7个质量维度 (加权评分,确定性):
| 尺寸 | 重量 | 度量 |
|---|---|---|
| 清晰度 | 20% | 强动词,单任务,无对冲 |
| 特异性 | 20% | 命名技术、数字、约束 |
| 结构 | 15% | XML标签、标题、列表 |
| 示例 | 15% | 输入/输出对,演示 |
| 约束 | 10% | 负约束、范围、边缘情况 |
| 输出格式 | 10% | 格式规范、结构定义 |
| 令牌效率 | 10% | 无填充,无冗余 |
11人类技术 (根据意图、分数和复杂性自动选择):
| ID | 名称 | 自动选择 |
|---|---|---|
chain-of-thought |
让克劳德想想 | 分析意图、复杂任务 |
xml-tags |
使用XML标记 | 长提示+低结构分数 |
few-shot |
多镜头示例 | 低示例分数+提取/编码 |
role-assignment |
系统提示和角色 | 系统意图或低特异性 |
structured-output |
控制输出格式 | 输出格式得分低 |
prefill |
结构化输出格式 | API目标+提取/代码 |
prompt-chaining |
链复杂任务 | 复杂+多个子任务 |
uncertainty-permission |
说“我不知道” | 分析或提取意图 |
extended-thinking |
延伸思考 | 复杂+分析/代码意图 |
long-context-tips |
长上下文 | 长提示(>2000个字符或>50行) |
tool-use |
工具使用 | 提示提及工具/函数调用 |
核心算法:
- 意图检测 (
detectIntent):跨6个类别的优先级排序正则表达式模式:system > code > extraction > analysis > creative > conversation包括消歧(例如。,system+code信号解析为code)以及代码块的回退启发式、“构建我”模式和调试语言。 - 启发式评分 (
scorePrompt):7维加权分析。每个维度0-10,总体为加权和。也产生平坦issues[]和suggestions[]阵列。 - 技术选择 (
selectTechniques):每种技术都有when_to_use()谓语。根据意图+分数+复杂性自动选择。按冲击力排序,上限为4。 - 模板组装 (
optimize):使用选定的技术构建结构脚手架。上下文优先排序:角色→<context>→<task>→<requirements>→<examples>→ 输出格式。
设计原则:
- 单一工具:一个切入点,最小的认知开销
- 确定性的:相同的输入,相同的输出。没有LLM呼叫,没有网络
- 脚手架,不是最终的:优化后的提示是结构化的;克劳德补充了内容
- 精益产出:用于问题/建议的扁平字符串数组,没有嵌套对象
- 加权尺寸:清晰度和特异性最重要(各占20%)
- 技术帽:每次优化最多4种技术(超出后收益递减)
- 反模式检测:12个克劳德特有的反模式+来自34个生产AI工具的20个行业模式
- 零依赖:仅
@modelcontextprotocol/sdk+zod
替代方案
每个现有的快速优化工具都需要LLM调用、标记的数据集或评估基础设施。当您需要零延迟的结构改进(CI/CD、子代理调度、离线)时,他们无法提供帮助。
| 特点 | 演说家 | DSPy | promptfoo | TextGrad | OPRO | LLMLingua | 拟人生成器 |
|---|---|---|---|---|---|---|---|
| 零延迟 | 是(<1ms) | 否(LLM调用) | 否(eval运行) | 否 | |||
| 离线/气隙 | 是 | 否 | 部分 | 否 | 否 | 不 | 否 |
| 确定性的 | 是 | 否 | 否 | 否 | 否 | 部分 | 否 |
| 无标记数据 | 是 | 否(示例) | 否(测试用例) | 否 | |||
| 克劳德特定 | 是(反模式) | 否 | 否 | 否 | |||
| MCP本地 | 是 | 否 | 否 | 否 | |||
| 结构评分 | 7个维度 | 无 | 自定义指标 | 无 | 无 | 没有 | 没有 |
| 依赖项 | 0(纯TS) | PyTorch+LLM | 节点+LLM | PyTorch+LLM | LLM | PyTorch+LLM | LLM API |
DSPY:斯坦福大学用于编译具有自动提示优化功能的LM程序的框架。需要标记的示例,LLM调用优化,PyTorch。优化任务准确性,而不是结构质量。延迟:每次优化需要几秒到几分钟。当您标记了数据并希望针对特定指标进行调整时,请使用DSPy。
promptfoo:测试驱动的快速评估框架。需要测试用例、LLM评估调用和评估数据集。衡量输出质量,而不是即时结构。补充:使用Orator进行结构脚手架,然后promptfoo评估输出质量。
TextGrad:通过LLM的文本反馈自动区分。需要LLM呼叫向前和向后通行。以研究为导向,依赖PyTorch。延迟:分钟。在迭代具有可衡量目标的提示性措辞时使用。
OPRO:DeepMind通过提示进行优化。使用LLM迭代重写提示。需要好/坏输出的示例,每次迭代需要多次LLM调用。延迟:分钟。在探索带有评估反馈的创造性提示变化时使用。
LLM 语言:微软通过基于困惑度的令牌删除进行快速压缩。将令牌计数减少2-20x,但需要本地LLM进行困惑度评分。不同的目标:压缩,而不是结构改进。当上下文窗口成为瓶颈时使用。
拟人提示生成器:Anthropic自己的工具,通过Claude生成提示。质量很好,但需要LLM调用,非确定性,离线或通过MCP不可用。当您希望Claude从头开始编写提示时使用。
Orator的方法故意不同:通过确定性启发式进行结构分析。没有LLM调用意味着没有API键,没有延迟差异,没有每次优化的成本,每次运行都得到相同的结果。代价是Orator优化了提示 结构 (清晰、具体、约束、格式)而不是提示 _措辞_它不能告诉你你的提示是否有效 _输出_只不过这对克劳德来说是个好主意。这使得它与使用Orator的promptfoo:sffold等评估工具相辅相成,然后使用eval进行验证。
发展
git clone https://github.com/Vvkmnn/claude-orator-mcp && cd claude-orator-mcp
npm install && npm run build
npm test
包装要求:
- Node.js:>=20.0.0(ES模块)
- 运行时:
@modelcontextprotocol/sdk,zod - 零外部数据库:与合作
npx
开发工作流程:
npm run build # TypeScript compilation with executable permissions
npm run dev # Watch mode with tsc --watch
npm run start # Run the MCP server directly
npm run lint # ESLint code quality checks
npm run lint:fix # Auto-fix linting issues
npm run format # Prettier formatting (src/)
npm run format:check # Check formatting without changes
npm run typecheck # TypeScript validation without emit
npm run test # Lint + type check + vitest (25 tests)
npm run prepublishOnly # Pre-publish validation (build + lint + format:check)
Git钩子(通过赫斯基):
- 预承诺:自动格式化已暂存
.ts使用Prettier和ESLint的文件
贡献:
- 分叉存储库并创建功能分支
- 遵循TypeScript严格模式 MCP协议 标准
从示例中学习:
- 官方MCP服务器 供参考实现
- TypeScript SDK 最佳实践
- 创建Node.js模块 用于npm包开发
- 人工提示工程文档 了解技术细节
致谢
通过对34个AI编码工具的系统提示进行深入分析得出的行业模式数据 收集在 人工智能工具的系统提示和模型, 包括Claude Code、Cursor、Windsurf、v0、Devin、Cline、Lovable、Replit、Amp、Gemini和 25人。模式是用患病率数据精心策划的,并嵌入其中——没有外部依赖性 或需要安装。与来自 即时报告 (调查了1500篇论文)和 Anthropic的快速工程文档.
许可证
西塞罗谴责卡提林 通过 凯撒 马卡里 (1889).“Catilina,耐心的鼻孔?”(Catiline,你会滥用我们的耐心多久?)- 克劳迪乌斯.
