promptopt
为终端 AI 代理节省 token 的插件
Claude Code · Codex CLI · opencode · Gemini CLI · Claude Desktop · 任何 MCP 客户端
你的代理在写第一行代码之前就烧掉了大部分 token。 promptopt 堵住这些漏洞——本地、离线、免费。
⚡ 快速概览
npx promptopt install # one command. every detected CLI. done.这一条命令就能注册一个 MCP 服务器、注入约 200 token 的纪律协议、添加廉价模型子代理,并开始在一个漂亮的 HTML 仪表盘中跟踪你的节省情况。
更喜欢复选框? 通过 npm 安装(npm i promptopt)或运行 promptopt init 会打开一个交互式清单——方向键移动,space 切换你想要配置的 CLI,a 全选,enter 进行配置:
promptopt - select the CLIs to configure:
[x] claude
> [ ] claude-desktop
[x] codex
[ ] opencode
[ ] gemini
[ ] generic
space: toggle a: check all enter: continue esc: cancel它只出现在真正的交互式安装中——绝不会在 CI、npx 运行期间或本仓库内部出现(PROMPTOPT_NO_INIT=1 可永久禁用)。
$ promptopt "Hey, could you please fix the bug in src/app.ts? Thanks!"
tokens: 15 -> 7 compressed (net -53.3%)
intent: fix (85% confidence)
--- optimized prompt ---
Fix the bug in src/app.ts
route: simple · gemini-2.5-flash ~$0.0032 (92% under flagship pricing)Related MCP server: token-compressor
🩸 问题所在
Token 泄漏 | 实际发生的情况 | promptopt 的修复 |
🔁 返工循环 | 代理猜错了一个模糊请求 → 你重新提示 → 双倍花费 | 在猜测代价高昂时提出 ≤3 个尖锐问题;在代价不高时自动假设并说明假设 |
🗣️ 啰嗦的提示 | “嘿,能不能请你也许……” | 基于规则的压缩:典型提示减少 15–55% |
🏋️ 模型尺寸不当 | 用 Opus 级别的推理处理 grep 级别的查找 | 分层分类器路由到最便宜的可用模型/子代理 |
📜 冗长的会话 | 重复任务、叙述未更改的代码、总结回顾 | 行为协议规则 1–6 |
在三个真实提示上,promptopt 花费了 $0.078,而未压缩的旗舰模型会花费 $0.300——在其自己的报告中实时跟踪。
📦 安装
要求: Node ≥ 18。无需 API 密钥。无需账户。没有任何数据离开你的机器。
一条命令搞定一切
npx promptopt install
# or the interactive checklist, anytime:
npx promptopt init自动检测你已安装的 CLI 并配置每一个。添加 -n 可先预览(--dry-run),--all 强制所有目标。
选择你的目标
npx promptopt install claude在 .mcp.json(项目)或 ~/.claude.json(--user 标志)中注册 MCP 服务器,将协议注入 CLAUDE.md,并创建两个真实的子代理:
promptopt-scout→ haiku — 只读查找和搜索,≤5 行答案promptopt-worker→ sonnet — 范围明确的编辑,diff 优先输出
重启你的 Claude Code 会话 → 完成。
注意: 项目范围的 MCP 服务器需要一次性信任批准——在该文件夹中启动
claude并接受提示(或运行/mcp)。卡在“等待批准”?就是这个原因。改用--user安装,则每个项目都无需提示即可信任。
Claude Desktop 没有用于本地服务器的 URL 方案,所以请选择以下之一:
选项 A — 一键捆绑包(推荐):
从 Releases 下载 promptopt-<version>.mcpb 并将其拖到 Claude Desktop 窗口上。所有依赖都已捆绑——另一端无需 Node 工具。
选项 B — 安装程序:
npx promptopt install claude-desktop # writes claude_desktop_config.json for you选项 C — 手动: 粘贴到 %APPDATA%\Claude\claude_desktop_config.json(Windows)或 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS):
{
"mcpServers": {
"promptopt": { "command": "npx", "args": ["-y", "promptopt", "mcp"] }
}
}重启 Claude Desktop → 工具出现在你的聊天中。
npx promptopt install codex --user # ~/.codex/config.toml + ~/.codex/AGENTS.md
npx promptopt install codex # project AGENTS.md onlynpx promptopt install opencode # opencode.json + AGENTS.md
npx promptopt install gemini # .gemini/settings.json + GEMINI.md
npx promptopt install generic # any MCP client: AGENTS.md + printed snippet验证与撤销
npx promptopt doctor # health-check every registration
npx promptopt uninstall # removes everything cleanly (marker-based, zero residue)所有指令文件的编辑都位于 <!-- promptopt:start vX --> 和 <!-- promptopt:end --> 标记之间;JSON 配置在修改前会创建 .bak 备份。
🧠 它的思考方式
每个会话注入一次(约 200 token)——你买过的最便宜的保险:
1. 简洁思考。 行动前用 ≤3 个短句做计划。绝不重复任务。 2. 询问或假设。 如果请求有 ≥2 种解释:采用假设并在一行中说明 “假设 X”——除非错误的猜测会导致完全返工,那么提出 ≤3 个批量问题并停止。 3. 廉价路由。 琐碎的子任务交给
promptopt-scout。绝不在 grep 级别的工作上花费前沿 token。 4. 批量处理。 并行工具调用。每个文件只读一次。绝不重新读取未更改的文件。 5. 精简输出。 用 diff 代替完整文件。完成后停止——不要总结。 6. 大型任务。 在超过 5k 输出 token 的工作之前,运行optimize_prompt并遵循其计划。
❓ 自答的问题
每个提示都按意图分类(问题 / 构建 / 计划 / 修复 / 添加),模糊的构建请求会显示多项选择菜单而不是长篇提示:
questions (1) - ask these before acting:
1. What should be built?
choices: feature inside the existing app | standalone script | CLI tool |
library / package | service / API endpoint | full new app
default if unanswered: a feature integrated into the existing project三种模式:hybrid (默认——置信度 ≥70% 时假设,其余询问) · auto (全部假设) · ask (绝不假设)。
🛠️ MCP 工具
工具 | 功能 |
| 意图 → 压缩 → 自动假设 → 基于选择的阻塞 → 路由 → 使用报告 |
| 每个提供商最便宜的可用模型,与始终旗舰模型对比成本 |
| 任何文本的离线 BPE token 计数 + 压缩机会 |
| 为无法读取指令文件的代理提供协议文本 |
💸 模型路由
层级 | Claude | OpenAI | Gemini |
琐碎 | claude-haiku-4-5 · $1/$5 | gpt-5.4-nano · $0.20/$1.25 | gemini-3.1-flash-lite · $0.25/$1.50 |
标准 | claude-sonnet-5 · $2/$10 | gpt-5.1 · $1.25/$10 | gemini-2.5-flash · $0.30/$2.50 |
复杂 | claude-opus-5 · $5/$25 | o3 · $2/$8 | gemini-3-pro-preview · $2/$12 |
价格于 2026-08-21 对照公共 LiteLLM 注册表验证。价格会变动——请固定你的当前价格:
promptopt models --refresh # re-syncs into ~/.promptopt/models.json (trusted 7 days)意图决定层级:question 降级(解释很少需要 Opus),plan 至少提升到标准(错误的计划是最昂贵的错误)。
📊 使用报告
每次优化运行都会写入 ./promptopt-report/ 并打印路径:
report: C:\dev\myproject\promptopt-report\index.html一个深色渐变、零 JS、可离线工作的仪表盘,带有统计卡片和进度条:
节省的 token——本次运行和累计
与始终旗舰模型基线相比,估计节省的美元
已用预算 / 剩余百分比(本地预算,默认 $10)
反事实条:如果没有插件你会烧掉多少
最近一次运行的前后对比、假设、提出的选择、路由表、最近 20 次运行
promptopt budget # usage + % left
promptopt budget --set-usd 25 --set-tokens 2000000
promptopt report --open # print (and open) the static report
promptopt dashboard # LIVE dashboard on http://localhost:4739
promptopt "..." --no-report # optimize without recording实时仪表盘
promptopt dashboard 启动一个仅限本地的服务器(绑定 127.0.0.1,绝不暴露到你的网络),自动打开浏览器,并保持页面实时:一个小的轮询脚本检测新的优化运行并自动重新加载页面——在标签页中保持打开,边工作边看着节省累积。
promptopt dashboard # http://localhost:4739
promptopt dashboard -p 8080 # custom port (auto-falls forward if taken)
promptopt dashboard --no-open # serve without opening the browser端点:/(仪表盘)、/api/data(使用快照 JSON)、/api/ping。提供的页面每次请求都会从账本重新渲染——无需手动刷新状态。
将 promptopt-report/ 添加到 .gitignore——本地遥测,仅限你可见。
⌨️ CLI 速查表
promptopt "<prompt>" # optimize (hybrid mode + report)
promptopt init # interactive checkbox installer
promptopt "<prompt>" --mode ask # all questions, zero assumptions
promptopt route "<prompt>" # tier + cheapest model per provider
promptopt audit "$(cat big-log.txt)" # token count + compression report
promptopt models # catalog + source
promptopt dashboard # live localhost usage dashboard
promptopt doctor # installation health check🔒 隐私与准确性
运行时零网络调用。 唯一的网络事件是 npm 获取包本身。没有密钥、没有遥测、没有账户。
压缩会原样保护代码块、URL 和文件路径;需求绝不会被丢弃。
Token 计数使用离线 cl100k_base BPE——Claude/Gemini 实际计数差异约 ±10%。成本是根据公共注册表价格估算的,不是发票。
Claude Desktop 接受远程连接器的 URL,但本地 stdio 服务器——比如完全在你机器上运行的 promptopt——没有深层链接方案。这正是 .mcpb 桌面扩展格式存在的原因:一个文件,双击安装,包含依赖。
🤝 贡献
欢迎 PR——新的压缩规则、模型目录更新、新的代理目标。参见 CONTRIBUTING.md。
git clone https://github.com/hawktuahcoin-hurhur/promptopt && cd promptopt
npm ci && npm run build && npm test && npm run test:smoke📄 许可证
MIT © promptopt 贡献者
This server cannot be deployed
Maintenance
Related MCP Connectors
AI model routing on your own vendor keys: pick the best model per prompt, or route and run it.
SaaS intelligence for AI agents. 5 unified tools cover 1,000+ services with 91-96% token savings.
Compress coding-agent context ~64%. Hosted Neural Keep MCP for Cursor/Claude/Codex.
Shared distillation cache for AI agents — every fetch ~73-89% fewer tokens via a shared cache.
Related MCP Servers
- FlicenseAqualityDmaintenanceA fully offline MCP server for token estimation, prompt compression, model routing, and semantic caching to optimize LLM usage costs and efficiency.9-
- AlicenseNot gradedqualityDmaintenanceEnables semantic prompt compression for LLM workflows, reducing token usage by 30-70% while preserving semantic meaning.12MIT
- AlicenseNot gradedqualityBmaintenanceEnables autonomous context window management, prompt caching, token optimization, and real-time observability for AI coding agents across multiple IDEs, reducing token costs and improving performance.Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables AI coding agents to compress terminal output and file context in real time, preserving full error tracebacks while reducing token consumption by 60-85%.43MIT