Tokenectomy Razor
官方基于Rust的快速轻量级MCP服务器,旨在优化提示词负载并减少LLM的令牌开销。
你可以用 Tokenectomy Razor MCP 做什么?
- 错误转储的痕迹手术 — 让您的助手通过
get_error_context从崩溃日志中剥离框架噪音并编辑凭据。 - 静态代码分析 — 让您的助手使用
analyze_code检测源文件中的资源泄漏、未关闭句柄和语法漏洞。 - 原子补丁应用 — 通过
apply_code_patch请求安全的文件修改,并自动进行语法验证和失败时回滚。 - 上下文健康审计 — 让您的助手使用
audit_context_health对日志或提示进行令牌膨胀、噪音和凭据泄漏的评分。 - 净化错误搜索 — 通过
search_stack_overflow获取已编辑错误签名的 Stack Overflow 答案,而不会泄露代码或秘密。
文档
Tokenectomy Razor
修复 Claude Code 与 Cursor 速率限制:基于 Rust 的零延迟本地 AI 网关与上下文手术 MCP 服务器
别再为 node_modules 堆栈跟踪浪费 20,000 个令牌。Tokenectomy Razor 是一个亚毫秒级本地 AI 网关反向代理(127.0.0.1:8080)及配套 MCP 服务器,采用安全 Rust 编写。可从终端错误日志中剔除 41.7%–99.7% 的框架噪音,对泄露的数据库凭据/JWT 进行脱敏,并免费缓存提示词。
┌────────────────────────────────────────────────────────┐
│ Autonomous Agents │
│ Claude Code • Cursor • Antigravity • Cline • Windsurf │
└───────────────────────────┬────────────────────────────┘
│
▼ (HTTP / SSE Outbound Prompts)
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ⚡ TOKENECTOMY AI GATEWAY (127.0.0.1:8080) │
│ │
│ ┌─────────────────────────┐ ┌───────────────────────────┐ ┌──────────────────────────────────────────────┐ │
│ │ Zero-Cost Prompt │ │ Zero-Leak Credential │ │ Polyglot Trace Surgery │ │
│ │ Cache │ │ Redaction │ │ (9 Languages) │ │
│ │ <1ms Hit • 100% Free │ │ API Keys • JWTs • DB URIs│ │ node_modules • site-packages • .cargo │ │
│ └───────────┬─────────────┘ └─────────────┬─────────────┘ └──────────────────────┬───────────────────────┘ │
│ │ │ │ │
│ └───────────────────────────────┼────────────────────────────────────────┘ │
│ ▼ │
│ Smart Upstream Auto-Router │
│ (Anthropic • OpenAI • Groq • Ollama Local) │
└──────────────────────────────────────────────┬───────────────────────────────────────────────────────────────────┘
│
┌────────────────────────────────┼────────────────────────────────┐
▼ ▼ ▼
api.anthropic.com api.openai.com localhost:11434
(Claude 3.5 / 3.7 Sonnet) (GPT-4o / o1 / o3-mini) (DeepSeek / Llama)
⚡ 快速开始(10 秒)
0. 零配置单行包装器(wrap)
无需手动设置任何环境变量,即可在任何编码代理或测试套件后直接运行 Tokenectomy 的隐私与缓存网关:
# Wrap Claude Code CLI
razor wrap -- claude
# Wrap Aider with DeepSeek or Ollama (Auto-Transpiled on the fly!)
razor wrap -- aider --model deepseek/deepseek-chat
# Wrap test runs to scrub logs and prevent accidental credential leakage
razor wrap npm test
1. 启动独立 AI 网关(手动模式)
npx -y tokenectomy-razor --proxy
💡 智能多提供商自动路由与通用 LLM 转译器默认开启! Tokenectomy 会自动分析请求路径和请求头。需要让 Claude Code 对接 DeepSeek 或 Ollama?Tokenectomy 会透明地将 Anthropic
/v1/messages格式实时转译为 OpenAI/v1/chat/completions格式,反之亦然。
2. 连接你常用的代理
将你的编码代理或 CLI 指向 127.0.0.1:8080 上的本地网关:
| 代理 / 环境 | 设置命令或配置 | 自动路由的上游 |
|---|---|---|
| Claude Code | export ANTHROPIC_BASE_URL="http://127.0.0.1:8080" | https://api.anthropic.com |
| Cursor | Models > OpenAI Base URL: http://127.0.0.1:8080/v1 | https://api.openai.com |
| Google Antigravity / Gemini | export OPENAI_BASE_URL="http://127.0.0.1:8080/v1" | https://api.openai.com |
| Cline / Roo Code | Provider: OpenAI Compatible • Base URL: http://127.0.0.1:8080/v1 | https://api.openai.com |
| Ollama / 本地 LLM | Base URL: http://127.0.0.1:8080 | http://localhost:11434 |
3. 实时 FinOps 与安全仪表盘
在浏览器中打开 http://127.0.0.1:8080/dashboard,实时查看令牌缩减、提示词缓存命中、美元节省以及被脱敏的凭据。
4. 配套 MCP 服务器设置(子皮层)
适用于调用深度诊断工具(get_error_context、analyze_code、apply_code_patch)的代理:
Claude Code CLI
claude mcp add tokenectomy npx -y tokenectomy-razor --mcp
Google Antigravity / Gemini CLI
agy mcp add tokenectomy-razor -- npx -y tokenectomy-razor --mcp
Cursor Composer(.cursor/mcp.json)
{
"mcpServers": {
"tokenectomy": {
"command": "npx",
"args": ["-y", "tokenectomy-razor", "--mcp"]
}
}
}
Claude Desktop(claude_desktop_config.json)
{
"mcpServers": {
"tokenectomy": {
"command": "npx",
"args": ["-y", "tokenectomy-razor", "--mcp"]
}
}
}
5. 终端管道与 CLI 清洗
npm test 2>&1 | npx tokenectomy-razor
🛑 问题所在:为什么你的 AI 会触发速率限制并产生幻觉
当你的应用在开发过程中崩溃时(Next.js、Express、FastAPI、Tokio),运行时环境会从 node_modules 或 site-packages 倾倒出数百行第三方管道代码。
当你将原始崩溃转储粘贴到 Cursor 或 Claude 中时:
- 耗尽你的 5 小时速率限制:一个简单的 Express/Prisma 错误就可能倾倒出 5,000 到 45,000 个令牌的、你从未编写过的第三方库代码。几次崩溃循环就能轻松烧光你的会话额度。
- 触发 AI 幻觉:Claude 会迷失在框架内部(
node_modules/express/lib/router/layer.js或starlette/routing.py)中,并试图编辑库文件,而不是你的实际应用代码。 - 泄露机密与凭据:包含原始数据库密码的连接字符串、JWT 承载令牌以及嵌入在错误跟踪中的云密钥会被转发到外部模型服务器。
Raw Terminal Crash (45,820 tokens + Leaked Secrets)
│
▼ <0.2ms Local Rust DFA Engine
[Redact Passwords & Keys] ──► [Strip Third-Party Framework Frames] ──► [Isolate Root Cause]
│
▼
Clean Context (118 tokens • Zero Secrets • Sub-millisecond)
🔍 前后对比
❌ 没有 Tokenectomy:AI 产生幻觉并烧毁上下文
TypeError: Cannot read properties of undefined (reading 'token')
at loadComponents (/app/node_modules/next/dist/server/load-components.js:14:2)
at renderToHTML (/app/node_modules/next/dist/server/render.js:50:5)
at nextServer (/app/node_modules/next/dist/server/next-server.js:80:12)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
at runMicrotasks (node:internal/process/task_queues:120:3)
at checkoutHandler (/app/pages/api/checkout.ts:42:15)
Database connection failed: postgresql://admin:super_secret_password@db.prod.internal:5432/primary
API key leaked: sk-ant-api03-abcdef1234567890abcdef1234567890
Claude 会做什么: 分析
load-components.js和next-server.js,推测 Webpack / Next.js 内部机制,并将连接凭据泄露到远程推理日志中。
✅ 使用 Tokenectomy:干净的上下文与即时修复
// [Tokenectomy Surgery: 5 internal framework frames pruned (83.3%)]
// Source: /app/pages/api/checkout.ts:42:15
42 | const sessionToken = req.headers.authorization.token;
| ^ TypeError: Cannot read properties of undefined (reading 'token')
🛡️ [CONNECTION_STRING_REDACTED]
🛡️ [ANTHROPIC_KEY_REDACTED]
Claude 会做什么: 立即识别出
checkout.ts中的第 42 行尝试访问未定义 headers 上的.token。立即建议使用可选链req.headers.authorization?.token。凭据在传输前已被脱敏。
🔬 可验证的基准测试
所有性能声明均基于硬件实测,并可在物理硬件上独立复现(在运行 Arch Linux、内核 6.13 的 10 核 Intel Core i5-1235U @ 15W 上测得):
硬件依赖声明: 性能取决于硬件;所报告的吞吐量代表在指定测试硬件(10 核 Intel Core i5-1235U @ 15W TDP)上的实测结果。吞吐量会随更高 TDP 的台式机/服务器 CPU 和更快的内存总线而提升。建议开发者使用下方的复现命令独立审计性能。
📋 点击展开完整原始基准终端日志($ cargo test --release)
$ cargo test --release --test stress_benchmark -- --nocapture
=====================================================================================
🧪 TOKENECTOMY OSS VERIFIABLE HEAVY STRESS BENCHMARK (100% REPRODUCIBLE IN OSS)
Hardware: 10-Core / 12-Thread Intel Core i5-1235U | OS: Arch Linux | Kernel Telemetry Active
Initial Baseline Process Memory (VmRSS): 3.45 MB
=====================================================================================
🔥 [TEST 1/3] QUARTER-MILLION LINES LOG REDACTION TORTURE (250,000 LINES / 25MB+ BUFFER)
├── Buffer Size: 24.44 MB (250000 lines)
├── Redaction Latency: 471.05ms (51.9 MB/sec)
├── Line Throughput: 530,735 lines/sec
├── Peak Memory (VmRSS): 76.05 MB (Delta: +72.60 MB)
└── Status: ✅ PASSED (100% of 250,000 lines sanitized, zero memory balloon)
🔥 [TEST 2/3] REDOS CATASTROPHIC BACKTRACKING TORTURE (50,000 CHARS PAYLOAD)
├── Attack Payload Size: 50,082 characters
├── Execution Latency: 1.165 ms
└── Status: ✅ PASSED (Linear O(N) evaluation, ReDoS-resistant on tested payloads)
🔥 [TEST 3/3] HIGH-CONCURRENCY TORTURE (100 PARALLEL OS THREADS)
├── Thread Concurrency: 100 concurrent OS threads
├── Successful Operations: 100/100 (100.0%)
├── Total Elapsed: 11.31ms
├── Concurrency Throughput: 17,688 ops/sec
├── Final VmRSS: 78.99 MB
└── Status: ✅ PASSED (Zero race condition, zero deadlock)
=====================================================================================
🏆 TOKENECTOMY OSS STRESS BENCHMARK: 3/3 PASSED (100% GREEN)
Total Suite Duration: 580.83ms
Bounded Final VmRSS: 78.99 MB
=====================================================================================
test test_oss_heavy_stress_benchmark ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.58s
| 基准测试目标 | 测试负载 | 已验证测量结果 | 结果 |
|---|---|---|---|
| 日志脱敏吞吐量 | 250,000 行(24.44 MB)包含 API 密钥与连接 URI 的企业级转储 | 530,735 行/秒(471.0 毫秒,51.9 MB/s) | 通过 |
| ReDoS 韧性 | 50,000 字符的病态回溯正则表达式负载 | 1.16 毫秒(确定性线性 $O(N)$ DFA 求值) | 通过 |
| 线程并发 | 100 个并发 OS 线程执行同步脱敏 | 17,688 次操作/秒(100/100 在 11.31 毫秒内完成) | 通过 |
| 内存占用 | 25 万行连续压力测试期间的峰值常驻内存 | 76.05 MB VmRSS,通过 /proc/self/status 测量(约为输入缓冲区大小的 3 倍) | 通过 |
| 发布版测试套件 | 覆盖提取器、过滤器与分析器的完整集成测试矩阵 | 90 / 90 项验证通过(零 panic,零泄漏) | 通过 |
🛡️ 自动化脱敏与机密清理基准测试
在内部基准测试夹具(tests/fixtures/)上评估,包含 12 条多语言崩溃跟踪(Rust、Python、TypeScript、Go、YAML),内含 22 个真实凭据及干净的阴性对照。与 Gitleaks v8.30.1(默认规则集)进行头对头评估。
架构说明: Gitleaks 主要设计为仓库提交/差异扫描器,而非内存运行时跟踪脱敏器。Tokenectomy Razor 专为运行时流清理和堆栈跟踪手术而设计。
1. 各类别的精确率、召回率与 F1 分数
| 机密类别 | 真实值 | Razor 召回率 | Razor F1 | Gitleaks 召回率 | Gitleaks F1 | 脱敏优势 |
|---|---|---|---|---|---|---|
Anthropic Claude API 密钥(sk-ant-...) | 1 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
AWS 访问密钥 ID(AKIA...) | 1 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
| AWS 秘密访问密钥 | 1 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
| 数据库 URI(PostgreSQL、MySQL、Redis、Mongo) | 4 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
| 通用密码 / 认证机密(YAML/JSON) | 3 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
GitHub 个人访问令牌(ghp_...) | 1 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
GitLab 个人访问令牌(glpat-...) | 1 | 100.0% | 100.0% | 100.0% | 100.0% | 持平(100% 捕获) |
HuggingFace API 令牌(hf_...) | 1 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
| JSON Web 令牌(RFC 7519 / 截断) | 2 | 100.0% | 100.0% | 100.0% | 100.0% | 持平(100% 捕获) |
npm 注册表访问令牌(npm_...) | 1 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
OpenAI API 密钥(sk-...、sk-proj-...) | 1 | 100.0% | 100.0% | 100.0% | 100.0% | 持平(100% 捕获) |
| PEM 私有 RSA 密钥块 | 1 | 100.0% | 100.0% | 100.0% | 100.0% | 持平(100% 捕获) |
PyPI 包上传令牌(pypi-AgEI...) | 1 | 100.0% | 100.0% | 100.0% | 100.0% | 持平(100% 捕获) |
SendGrid API 密钥(SG...) | 1 | 100.0% | 100.0% | 0.0% | 0.0% | 召回率 +100%(M2M 零泄漏) |
Slack 机器人/用户令牌(xoxb-...) | 1 | 100.0% | 100.0% | 100.0% | 100.0% | 持平(100% 捕获) |
Stripe 实时/测试密钥(sk_live_...) | 1 | 100.0% | 100.0% | 100.0% | 100.0% | 持平(100% 捕获) |
2. 头对头性能与架构摘要
| 维度 | Tokenectomy Razor(--scrub) | Gitleaks v8.30.1 | 架构依据 |
|---|---|---|---|
| 整体机密召回率 | 100.0%(22/22) | 36.4%(8/22) | Razor 可捕获未加引号的 URI、数据库端口及 diff 规则遗漏的 AI 密钥 |
| 整体精确率 | 100.0%(0 个误报) | 88.9% | 对编译器错误和压缩跟踪零误触发 |
| 整体 F1 分数 | 100.0%(内部夹具) | 51.6% | 专为崩溃上下文设计的全面覆盖 |
| 执行引擎 | 高吞吐 Rust DFA($O(N)$) | Go 正则扫描器 + Git 树爬虫 | 为代理流式回溯提供亚毫秒级延迟 |
| ReDoS 韧性 | 确定性线性时间($O(N)$) | 依赖引擎 | 非回溯 DFA 正则可防止测试转储上的灾难性回溯 |
| 脱敏操作 | 内联令牌脱敏([KEY_REDACTED]) | 仅警告日志(不清理) | 在 LLM 皮层摄取前直接对文本进行消毒 |
3. 令牌缩减与 LLM 上下文节省(tiktoken cl100k_base)
| 指标 | 测量值 | 对 AI 编码代理的运营影响 |
|---|---|---|
| 平均令牌缩减率 | 41.67% | 持续缩小原始崩溃跟踪的令牌占用 |
| 中位数缩减率(P50) | 42.95% | 典型的凭据和连接转储缩减 |
| 第 90 百分位(P90) | 61.42% | 消除多行长密钥和凭据 |
| 最小 / 最大范围 | 0.00% — 81.36% | 干净阴性对照上为 0%(零失真),泄漏场景最高达 81.4% |
| 保留 / 节省的总令牌数 | 920 个令牌(净节省 44.02%) | 防止上下文窗口饱和并降低 LLM 计费 |
🔌 高级代理与网关配置
1. 多提供商 AI 网关选项(--proxy)
Tokenectomy 的网关在 127.0.0.1:8080 上本地运行,零手动配置。在复杂的开发环境或容器化代理拓扑中,你可以自定义绑定和路由:
# Default Smart Auto-Routing (routes Anthropic, OpenAI, and Ollama requests dynamically):
razor --proxy
# Safety Circuit Breaker: Prevent runaway agent loops from burning your hourly budget or 5-hour window:
razor --proxy --max-hourly-tokens 200000
# Resilient 429 Auto-Retry: Automatically pause and retry when hitting upstream rate limits (default: on):
razor --proxy --max-retries 5
# Explicit upstream override (e.g. Groq, vLLM, or OpenRouter):
razor --proxy --upstream-url https://api.groq.com/openai/v1
# Secure remote container binding with mandatory bearer token:
razor --proxy --proxy-bind 0.0.0.0:8080 --allow-remote --proxy-token "$MY_GATEWAY_TOKEN"
实时指标与 Prometheus 导出
Tokenectomy 通过 JSON 暴露实时 FinOps 和 Token 经济学数据:
curl http://127.0.0.1:8080/v1/metrics
返回 rate_limits_mitigated、circuit_breaker_trips、last_latency_ms、current_hourly_tokens、cache_hits、cache_tokens_saved 和 estimated_cost_saved_usd 的即时遥测数据。
2. 独立 CLI 与终端清理
当直接调试或通过管道传输终端测试输出时:
# Pipe terminal test failures through the surgical redactor:
npm test 2>&1 | razor --scrub
# Sanitize a specific raw log file:
razor --scrub --file /var/log/app/error.log > sanitized.log
# Offline local air-gapped mode (zero external network calls):
cat failure.log | razor --scrub --local-only
🛠️ 暴露的 MCP 工具
Tokenectomy Razor 符合 Glama Grade A 工具定义质量评分(TDQS),具有明确的参数边界:
| 工具名称 | 能力描述 |
|---|---|
get_error_context | 对错误转储执行追踪手术,移除框架噪声,编辑凭据,并提取与工作区边界相关的本地源代码上下文。 |
analyze_code | 执行静态 AST 代码分析,检测资源泄漏、未关闭的句柄和语法漏洞,具有有界执行限制和精确的 LSP UTF-16 坐标。 |
apply_code_patch | 应用原子文件修改,并在写入后进行语言语法验证(cargo check、py_compile、node --check),失败时自动回滚。 |
search_stack_overflow | 使用经过清理和编辑的搜索词查询 Stack Exchange API,查找相关错误签名。 |
audit_context_health | 审计原始日志、追踪或提示负载,检测 Token 膨胀、框架噪声和凭据。返回 M2M 遥测、节省指标和上下文健康等级。 |
🌐 支持的多语言生态系统
| 语言 | 支持的框架 | 排除的框架内部 |
|---|---|---|
| Rust | Tokio、Actix-web、Axum | .cargo/registry、.rustup、target/debug/build |
| TypeScript / JS | Next.js、Express、NestJS、Vite | node_modules、.next、dist、webpack 内部 |
| Python | Django、FastAPI、Flask、PyTorch | site-packages、dist-packages、venv、__pycache__ |
| Golang | Gin、Fiber、Stdlib Panics | go/src(标准库)、go/pkg/mod、vendor |
| Java / Kotlin | Spring Boot 3、Tomcat、Netty | .m2/repository、.gradle/caches、内部字节码 |
| C / C++ | AddressSanitizer、GDB / LLDB | /usr/include、/usr/lib、vcpkg_installed |
| C# (.NET) | ASP.NET Core、.NET Runtime | System.Private.CoreLib、Microsoft.AspNetCore |
| Ruby on Rails | Rails、Sinatra、Bundler | /gems/、ruby/gems、内部 rack 处理器 |
| PHP | Laravel、Symfony | vendor/composer、vendor/symfony |
📦 安装选项
方法 1:通过 npx 即时安装(零工具链设置)
npx -y tokenectomy-razor --mcp
方法 2:Cargo(crates.io)
cargo install tokenectomy
方法 3:预编译独立二进制文件
零依赖、独立的发布二进制文件可在 GitHub Releases 获取:
- Linux:
x86_64-unknown-linux-gnu、x86_64-unknown-linux-musl、aarch64-unknown-linux-gnu - macOS:
aarch64-apple-darwin(Apple Silicon M1/M2/M3/M4)、x86_64-apple-darwin(Intel) - Windows:
x86_64-pc-windows-msvc.exe
方法 4:多架构 Docker 容器(GHCR)
docker pull ghcr.io/tokenectomy-labs/razor:latest
docker run -i ghcr.io/tokenectomy-labs/razor:latest --mcp
⚖️ 版本对比
| 能力 | Razor(社区开源版) | Sentinel(商业版) |
|---|---|---|
| 多语言堆栈追踪手术 | 是(9 种运行时语言) | 是(全部 9 种语言 + 深度 AST 语义修复) |
| O(N) ReDoS 安全密钥编辑 | 是 | 是 |
| JSON-RPC 2.0 MCP 服务器 | 是 | 是 |
AI 网关反向代理(--proxy) | 是 | 是 |
| SHA-256 幂等缓存(24 小时 TTL) | 是 | 是 |
| FinOps 指标仪表板 | 是 | 是 |
| 语法验证回滚(编译器 / 代码检查器) | 是 | 是 |
| 自动化测试套件回滚(0 脏差异) | — | 是 |
| Tree-sitter AST 语法修复 | — | 是 |
| 反幻觉范围防护 | — | 是 |
| 多文件原子事务 | — | 是 |
时间机器撤销引擎(--undo) | — | 是 |
| 自主修复状态机 | — | 是 |
需要企业级 AST 自修复? 探索 Sentinel 版
🗺️ 路线图与里程碑
| 里程碑 / 能力 | 状态 | 目标版本 |
|---|---|---|
| 核心多语言日志手术与 $O(N)$ ReDoS 编辑 | ✅ 已完成 | v1.0.0 |
AI 网关反向代理(--proxy)与幂等缓存 | ✅ 已完成 | v1.1.0 |
| 多架构 Docker 与 GitHub Actions Marketplace 操作 | ✅ 已完成 | v1.1.3 |
静态 AST 分析引擎(analyze_code)与 UTF-16 LSP | ✅ 已完成 | v1.1.5 |
| Glama.ai 工具定义质量评分(TDQS A 级) | ✅ 已完成 | v1.1.5 |
| 预编译独立二进制文件(Linux、macOS、Windows) | ✅ 已完成 | v1.1.6 |
官方 MCP 注册表收录(io.github.Tokenectomy-Labs/razor) | ✅ 已完成 | v1.1.7 |
mcpservers.org 目录收录 | ✅ 已完成 | v1.1.7 |
| Java/Kotlin(Spring Boot 3)与 C/C++(ASan)提取器 | ✅ 已完成 | v1.2.0 |
| C# (.NET) 与 Ruby on Rails 深度堆栈手术 | ✅ 已完成 | v1.2.2 |
用户自定义编辑与噪声规则(~/.tokenectomy.toml) | ✅ 已完成 | v1.2.2 |
自主上下文健康审计(audit_context_health)与 M2M 建议 | ✅ 已完成 | v1.2.2 |
| 自动化编辑基准与 CI 门禁 | ✅ 已完成 | v1.2.2 |
声明式 M2M 控制平面([:TOKENECTOMY:M2M_CONTROL_PLANE:v1.3.0]) | ✅ 已完成 | v1.3.0 |
交互式多策略预算(aggressive、conservative、lossless_compact) | ✅ 已完成 | v1.2.3 |
| GitHub Actions OIDC 官方注册表发布门禁 | ✅ 已完成 | v1.2.3 |
awesome-mcp-servers 社区目录收录 | ✅ 已完成 | v1.2.4 |
内联丢弃帧标识([DROPPED_FRAMES: ...])与反静默截断审计 | ✅ 已完成 | v1.3.1 |
内容寻址原始日志缓存与验证哈希(--diff-verify) | ✅ 已完成 | v1.3.1 |
| 智能多提供商自动路由(Anthropic、OpenAI、Ollama)与零成本提示缓存 | ✅ 已完成 | v1.3.3 |
代理安全断路器(--max-hourly-tokens)、429 自动重试缓解器与 CORS 预检 | ✅ 已完成 | v1.3.3 |
通用 LLM 格式转译器(OpenAI /v1/chat/completions ⇄ Anthropic /v1/messages) | ✅ 已完成 | v1.3.4 |
零配置代理命令包装器(razor wrap -- <cmd>)与 Git 预提交钩子 | ✅ 已完成 | v1.3.4 |
| 多提供商高可用性与自动故障转移 | 📋 计划中 | v1.4.0 |
声明式 AI 网关配置(gateway.toml / tokenectomy.yaml) | 📋 计划中 | v1.4.0 |
| 完整 SSE 流式 Token 缓存引擎 | 📋 计划中 | v1.4.0 |
| 原生 VS Code 与 JetBrains 配套扩展 | 📋 计划中 | v1.4.0 |
| 服务器发送事件(SSE)远程 MCP 传输 | 📋 计划中 | v1.4.0 |
🔒 安全与不变量
- 默认本地执行: 所有堆栈追踪解析、帧修剪和密钥编辑均在物理硬件上本地执行。
- 文档化网络出口: 在 MCP 服务器模式下,
search_stack_overflow是唯一具有出站网络出口的工具(HTTPS 至api.stackexchange.com)。负载严格限制为经过清理和编辑的错误签名文本(不含代码行、本地路径或任何凭据)。在气隙环境中,使用--local-only完全禁用网络搜索。 - 确定性线性时间模式匹配: 所有模式匹配器使用非回溯 DFA 正则引擎($O(N)$ 线性时间)和 Aho-Corasick 自动机评估。
- 路径遍历边界隔离: 文件操作严格锁定在活动工作区根目录内(
CWD)。路径遍历(../)和未授权符号链接均被阻止。 - 安全 Rust 实现: 核心执行路径强制实施安全 Rust 内存保证,并使用有界流读取器(
.take())防止资源耗尽。
如需披露漏洞,请查阅我们的 安全政策。
⚖️ 法律与下游分叉免责声明
Tokenectomy Razor 严格用于合法的开发者生产力、可观测性、日志手术和防御性凭据编辑。任何下游分叉、克隆、再分发或私有部署均完全独立于原始作者。Tokenectomy Labs 及其维护者不对第三方使用本代码库或其衍生品实施的非法、恶意或未授权行为承担任何责任。所有下游运营者须 100% 自行承担遵守当地和国际网络安全法律的责任。完整法律条款请参阅 DISCLAIMER.md。
❓ 常见问题解答(FAQ)
Tokenectomy Razor 如何防止 Claude Code 和 Cursor 触发速率限制?
当测试或终端构建崩溃时,Next.js、Express、Jest 和 Django 等框架会转储数千个内部堆栈帧(node_modules、site-packages)。发送原始 5,000 行崩溃日志每次提示会消耗 15,000 至 45,000 个 Token,在几分钟内耗尽您的 5 小时会话限制。Tokenectomy Razor 拦截日志并剥离 95% 不可操作的框架管道,在 <0.2ms 内将 40,000 字符的崩溃日志缩减至不到 200 个必要 Token。
如何阻止 Cursor 将 node_modules 错误日志发送给 LLM?
将 Tokenectomy Razor 作为本地 AI 网关反向代理运行(npx -y tokenectomy-razor --proxy)。在 Cursor 设置中,将 OpenAI Base URL 指向 http://127.0.0.1:8080/v1。任何由 Composer 粘贴或引用的终端错误输出都将在到达模型服务器之前自动进行清理、编辑和缓存。
Tokenectomy 如何防止错误日志中的凭据泄漏?
所有日志手术和密钥编辑在出站传输前 100% 在您的机器内存中本地执行。Razor 使用确定性线性时间正则和 Aho-Corasick 自动机检测并编辑 PostgreSQL/MongoDB 连接 URI、JWT 承载令牌和云 API 密钥,使用 [REDACTED] 令牌。清理过程零云出口。