Tokenectomy Razor

ทางการ

เซิร์ฟเวอร์ MCP ที่ใช้ Rust ซึ่งรวดเร็วและมีน้ำหนักเบา ออกแบบมาเพื่อปรับแต่งเพย์โหลดของพรอมป์ต์และลดค่าใช้จ่ายของโทเค็นสำหรับ LLM

GitHub
3
ลองใช้ MCP นี้ผู้สนับสนุน

คุณทำอะไรได้บ้างด้วย Tokenectomy Razor MCP?

  • ทำความสะอาดบันทึกข้อผิดพลาด — ขอให้ลบสัญญาณรบกวนจากเฟรมเวิร์กและปกปิดข้อมูลรับรองจากสแตกเทรซด้วย get_error_context โดยส่งคืนเฉพาะซอร์สโค้ดท้องถิ่นที่เกี่ยวข้องเท่านั้น
  • ค้นหาวิธีแก้ไขที่รู้จัก — ให้ผู้ช่วยสอบถาม Stack Exchange ผ่าน search_stack_overflow โดยใช้ลายเซ็นข้อผิดพลาดที่ทำความสะอาดแล้วเพื่อค้นหาวิธีแก้ไขที่เกี่ยวข้อง
  • ใช้แพตช์โค้ดที่ตรวจสอบแล้ว — ขอให้แก้ไขไฟล์แบบอะตอมมิกด้วย apply_code_patch ซึ่งจะรันการตรวจสอบไวยากรณ์และย้อนกลับโดยอัตโนมัติเมื่อเกิดความล้มเหลว
  • ตรวจจับข้อบกพร่องของโค้ด — ใช้ analyze_code สำหรับการวิเคราะห์ AST แบบคงที่เพื่อค้นหาการรั่วไหลของทรัพยากร ปัญหาความปลอดภัย และบั๊กด้วยพิกัด LSP ที่แม่นยำ
  • รันพร็อกซีการปกปิดข้อมูลในเครื่อง — กำหนดค่าโหมด --proxy เพื่อสกัดกั้นและทำความสะอาดทราฟฟิก API ของ LLM บน localhost ก่อนส่งต่อต้นทาง

เอกสาร

Tokenectomy Razor

การผ่าตัดล็อกและปกปิดความลับที่รวดเร็วและกำหนดผลลัพธ์ได้แน่นอนสำหรับเอเจนต์เขียนโค้ด AI — ลดสัญญาณรบกวนจากเฟรมเวิร์กได้ 90%+ ปกปิดข้อมูลรับรองด้วยภูมิคุ้มกัน ReDoS แบบ O(N) เวลาแฝงต่ำกว่า 1 มิลลิวินาที เขียนด้วยภาษา Rust ที่ปลอดภัย

Tokenectomy (คำนาม): token + -ectomy (การผ่าตัดเอาออก) — การตัดทอนโทเค็นที่สิ้นเปลืองออกจากบริบทของ LLM อย่างแม่นยำ

เอนจินผ่าตัดล็อกประสิทธิภาพสูงและการปกปิดความลับสำหรับเอเจนต์เขียนโค้ด AI

Tokenectomy Razor official website Tokenectomy Razor crate version on crates.io Tokenectomy Razor npm package version Tokenectomy Razor CI build status Tokenectomy Razor RustSec security audit status Tokenectomy Razor MIT License Tokenectomy Razor on Glama.ai Listed on mcpservers.org Official MCP Registry Tokenectomy Razor GitHub Actions Marketplace Tokenectomy Razor documentation site

  • ทะเบียน MCP อย่างเป็นทางการ: mcp-name: io.github.Tokenectomy-Labs/razor

📋 สารบัญ


มันทำอะไร

Tokenectomy Razor เป็นเซิร์ฟเวอร์ Model Context Protocol (MCP) แบบอัตโนมัติแบบเครื่องต่อเครื่อง (M2M) และเอนจินประมวลผลสตรีมที่เขียนด้วยภาษา Rust ที่ปลอดภัย มันสกัดกั้นล็อกข้อผิดพลาดจากเอเจนต์ AI ลดสัญญาณรบกวนจากเฟรมเวิร์กได้ 90%+ ปกปิดความลับโดยอัตโนมัติ (JWT, คีย์ API, ข้อมูลรับรองฐานข้อมูล) และแคชบริบทที่ผ่านการทำความสะอาดแล้วด้วย TTL 24 ชั่วโมง—ทั้งหมดโดยไม่ส่งข้อมูลดิบไปยังบริการภายนอก

ใน 30 วินาที

ปัญหา:

  • เอเจนต์ AI สิ้นเปลืองโทเค็นกับสัญญาณรบกวนจากเฟรมเวิร์ก (node_modules, site-packages, .cargo/registry)
  • ข้อมูลรับรองที่ละเอียดอ่อนรั่วไหลเข้าไปในล็อก LLM โดยไม่ตั้งใจ (คีย์ AWS, URL ฐานข้อมูล, โทเค็น API)
  • ข้อผิดพลาดซ้ำๆ ที่เหมือนกันทำให้เสียเงินทุกครั้งที่ลองใหม่

วิธีแก้ไข:

Raw Error Log (38K tokens + secrets)
    ↓
[Redact secrets locally] → [Filter framework frames] → [Extract user code]
    ↓
Sanitized Context (2K tokens, no secrets) → Safe to send to LLM

ตัวอย่างจริง

ก่อน:

$ cat error.log | head -20
Error in /home/user/.cargo/registry/src-xxx/tokio-1.35/src/runtime/mod.rs:12345
  at /home/user/.cargo/registry/src-yyy/serde/src/lib.rs:456
  Database connection failed: postgresql://admin:secretpass@db.example.com:5432/mydb
  JWT Auth token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0...
  [... 500+ more framework frames ...]

หลัง:

$ cat error.log | razor --scrub
Error in /home/user/src/main.rs:42
  at /home/user/src/utils.rs:18
  Database connection failed: [CONNECTION_STRING_REDACTED]
  JWT Auth token: [JWT_REDACTED]

ประโยชน์:

  • ✅ บริบทเล็กลง 95% (2K เทียบกับ 38K โทเค็น) → ประหยัดเงินค่าเรียก API ของ LLM
  • ✅ ไม่มีความลับในล็อก → นอนหลับสบายขึ้น
  • ✅ ข้อผิดพลาดที่เหมือนกันถูกแคช → การลองครั้งที่สองเสียค่าใช้จ่าย $0

จุดเด่นทางเทคนิค

                  ┌──────────────────────────────────────────────┐
   Agent Error     │              TOKENECTOMY RAZOR               │    Sanitized Context
   Dump (38K toks) │  - Polyglot Stack Frame Filter               │ ──►  (2K toks) ──► LLM
  ────────────────►│  - Deterministic Secret Redactor (O(N))      │
                   │  - SHA-256 Idempotency Cache (24h TTL)       │
                   └──────────────────────────────────────────────┘
  • การผ่าตัดร่องรอยหลายภาษาเชิงลึก: การแยกวิเคราะห์ในหน่วยความจำครอบคลุม Rust, Python, TypeScript/JavaScript, Go, Java/Kotlin (Spring Boot 3, Tomcat, Hibernate, Netty, Undertow, HikariCP), C/C++ (AddressSanitizer, GDB, glibc) และ PHP กรองรายละเอียดภายในเฟรมเวิร์กและส่วนประกอบรันไทม์ที่ก่อให้เกิดสัญญาณรบกวนอย่างแม่นยำ พร้อมแยกเฟรมโค้ดแอปพลิเคชันจริงของผู้ใช้
  • เอนจินวิเคราะห์โค้ด AST แบบคงที่ (analyze_code): การวิเคราะห์ AST แบบคงที่ปริมาณงานสูงเพื่อตรวจจับแฮนเดิลที่ไม่ปิด การรั่วไหลของทรัพยากร และช่องโหว่ด้านความปลอดภัย ด้วยขีดจำกัดการทำงานที่กำหนด (โหนด AST 50K, ขีดจำกัดไฟล์ 10 MB) และพิกัด LSP UTF-16 ที่แม่นยำ
  • การปฏิบัติตาม TDQS ระดับ A ของ Glama: คะแนนคุณภาพนิยามเครื่องมือ 100% พร้อมขอบเขตสคีมาที่ชัดเจน เงื่อนไขก่อนรันไทม์ และการเปิดเผยข้อมูลครบถ้วนในเครื่องมือ MCP ทั้งหมด
  • พร็อกซีรีเวิร์สเกตเวย์ AI (--proxy): สกัดกั้นสตรีมพรอมต์แบบโปร่งใสบน 127.0.0.1:8080 ทำการตัดทอนโทเค็นและปกปิดข้อมูลรับรองแบบเรียลไทม์ก่อนส่งต่อต้นทางไปยัง OpenAI, Anthropic หรือ Ollama
  • การปกปิดความลับแบบ Zero-Knowledge: เอนจิน regex แบบกำหนดผลลัพธ์ได้เชิงเส้นเวลาจะลบ JWT, โทเค็น API, คีย์เข้าถึงคลาวด์, สตริงการเชื่อมต่อ และคีย์ส่วนตัวก่อนส่งผ่านเครือข่าย การประมวลผลทั้งหมดเกิดขึ้นในเครื่อง
  • แคช Idempotency SHA-256: จัดเก็บผลลัพธ์ที่กำหนดได้ด้วย TTL 24 ชั่วโมง ความล้มเหลวซ้ำๆ ใน CI/CD หรือลูปเอเจนต์จะไม่ก่อให้เกิดค่าใช้จ่าย API ต้นทางใดๆ
  • การจำกัดการข้ามเส้นทาง: การเข้าถึงระบบไฟล์ MCP ทั้งหมดถูกทำให้เป็นรูปแบบมาตรฐานและล็อกไว้ที่ขอบเขตโฟลเดอร์รากของเวิร์กสเปซ (CWD) ไม่มีการหลบหนี ../ หรือการเจาะผ่าน symlink
  • การปฏิบัติตามโปรโตคอล M2M: เซิร์ฟเวอร์ stdio JSON-RPC 2.0 ดั้งเดิมที่ปฏิบัติตามข้อกำหนดโปรโตคอล Model Context Protocol อย่างเป็นทางการ

เกณฑ์วัดประสิทธิภาพที่ตรวจสอบได้

ตัวชี้วัดประสิทธิภาพอ้างอิงจากฮาร์ดแวร์จริงและสามารถทำซ้ำได้ผ่านชุดเกณฑ์วัดแบบสแตนด์อโลน:

เป้าหมายเกณฑ์วัดภาระงานที่ทดสอบการวัดที่ตรวจสอบแล้วผลลัพธ์
การปกปิดล็อกปริมาณสูง250,000 บรรทัด (24.44 MB) ดัมป์ระดับองค์กรที่มีคีย์ API และ URI การเชื่อมต่อ333.49 มิลลิวินาที (73.3 MB/วินาที, 749,652 บรรทัด/วินาที)ผ่าน
ความต้านทาน ReDoSสตริงการย้อนรอยทางพยาธิวิทยา 50,000 ตัวอักษร1.44 มิลลิวินาที (การประเมินเชิงเส้น $O(N)$)ผ่าน
การทำงานพร้อมกันของเธรด100 เธรด OS พร้อมกันทำงานปกปิดและแยกข้อมูลพร้อมกัน100/100 เสร็จใน 27.35 มิลลิวินาที (7,312 การดำเนินการ/วินาที)ผ่าน
รอยเท้าหน่วยความจำเคอร์เนลหน่วยความจำสูงสุดระหว่างการทดสอบความเครียดต่อเนื่อง 250,000 บรรทัด76.24 MB VmRSS ผ่าน /proc/self/statusผ่าน

ทำความเข้าใจเกณฑ์วัด

ตัวชี้วัดทำไมจึงสำคัญสิ่งที่คาดหวัง
ปริมาณงานปกปิด 73.3 MB/วินาทีล็อกส่วนใหญ่มีขนาด <5MB; คุณจะปกปิดได้ในหน่วยมิลลิวินาที<10 มิลลิวินาทีสำหรับล็อก CI ทั่วไป
ภูมิคุ้มกัน ReDoS 1.44 มิลลิวินาทีป้องกันเพย์โหลดล็อกที่เป็นอันตรายจากการโจมตี DoS ระบบของคุณปลอดภัยสำหรับการใช้งานในโปรดักชันกับอินพุตที่ไม่น่าเชื่อถือ
หน่วยความจำสูงสุด 76.24 MBเหมาะสำหรับรันเนอร์ CI/CD ที่มีข้อจำกัด (GitHub Actions, GitLab)อยู่ในขีดจำกัด 256MB ได้อย่างสบาย
7,312 การดำเนินการ/วินาทีพร้อมกันเอเจนต์ AI หลายตัวสอบถามพร้อมกันจัดการคำขอพร้อมกัน 100 รายการได้อย่างปลอดภัย

ทำซ้ำในเครื่อง:

cargo test --release --test stress_benchmark -- --nocapture

การติดตั้ง

วิธีที่ 1: ทันทีผ่าน npx (แนะนำสำหรับไคลเอนต์ MCP)

ไม่ต้องใช้ชุดเครื่องมือ Rust การคอมไพล์แบบเนทีฟ หรือการตั้งค่าเส้นทางด้วยตนเอง:

npx -y tokenectomy-razor --mcp

หรือติดตั้งแบบโกลบอลผ่าน npm:

npm install -g tokenectomy-razor

วิธีที่ 2: Cargo (crates.io)

cargo install tokenectomy

วิธีที่ 3: ไบนารีเนทีฟที่คอมไพล์ล่วงหน้า (GitHub Releases)

ดาวน์โหลดไบนารีสแตนด์อโลนที่คอมไพล์ล่วงหน้าแบบไม่พึ่งพาใดๆ ได้โดยตรงจาก GitHub Releases:

  • Linux: tokenectomy-linux-x86_64 (glibc), tokenectomy-linux-x86_64-musl, tokenectomy-linux-aarch64
  • macOS: tokenectomy-darwin-arm64 (Apple Silicon M1/M2/M3/M4), tokenectomy-darwin-x86_64 (Intel)
  • Windows: tokenectomy-windows-x86_64.exe

วิธีที่ 4: สร้างจากซอร์ส

git clone https://github.com/Tokenectomy-Labs/Tokenectomy.git
cd Tokenectomy
cargo build --release
sudo cp target/release/razor /usr/local/bin/razor

วิธีที่ 5: คอนเทนเนอร์หลายสถาปัตยกรรม (GHCR)

docker pull ghcr.io/tokenectomy-labs/razor:latest
docker run -it ghcr.io/tokenectomy-labs/razor:latest --help

การผสานรวม Model Context Protocol (MCP)

กำหนดค่า Tokenectomy Razor เป็นเซิร์ฟเวอร์เบื้องหลังอัตโนมัติในสภาพแวดล้อมเอเจนต์ AI หลัก:

Claude Desktop

เพิ่มใน ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) หรือ %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "tokenectomy": {
      "command": "npx",
      "args": ["-y", "tokenectomy-razor", "--mcp"]
    }
  }
}

Cursor

เพิ่มใน .cursor/mcp.json ในโฟลเดอร์รากของโปรเจกต์ของคุณ:

{
  "mcpServers": {
    "tokenectomy": {
      "command": "npx",
      "args": ["-y", "tokenectomy-razor", "--mcp"]
    }
  }
}

VS Code (MCP ดั้งเดิม / GitHub Copilot Agent / Continue)

สำหรับ VS Code ที่รองรับ MCP ดั้งเดิม ให้สร้างหรือแก้ไข .vscode/mcp.json ในเวิร์กสเปซของคุณ:

{
  "mcpServers": {
    "tokenectomy": {
      "command": "npx",
      "args": ["-y", "tokenectomy-razor", "--mcp"]
    }
  }
}

หรือใช้ไบนารีเนทีฟเวลาแฝงต่ำพิเศษ (หากติดตั้งผ่าน cargo install tokenectomy):

{
  "mcpServers": {
    "tokenectomy": {
      "command": "razor",
      "args": ["--mcp"]
    }
  }
}

VS Code + Cline

เปิดการตั้งค่า Cline ใน VS Code (หรือแก้ไข cline_mcp_settings.json):

  • macOS: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  • Linux: ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  • Windows: %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
{
  "mcpServers": {
    "tokenectomy": {
      "command": "npx",
      "args": ["-y", "tokenectomy-razor", "--mcp"],
      "disabled": false,
      "autoApprove": [
        "get_error_context",
        "search_stack_overflow",
        "analyze_code"
      ]
    }
  }
}

VS Code + Roo Code

ในการตั้งค่า Roo Code (หรือแก้ไข cline_mcp_settings.json ในพื้นที่จัดเก็บ Roo):

  • Linux: ~/.config/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
  • macOS: ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
{
  "mcpServers": {
    "tokenectomy": {
      "command": "npx",
      "args": ["-y", "tokenectomy-razor", "--mcp"],
      "disabled": false,
      "autoApprove": ["get_error_context", "analyze_code"]
    }
  }
}

Windsurf (Codeium)

เพิ่มใน ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "tokenectomy": {
      "command": "npx",
      "args": ["-y", "tokenectomy-razor", "--mcp"]
    }
  }
}

Google Antigravity CLI

agy mcp add tokenectomy-razor -- npx -y tokenectomy-razor --mcp

เครื่องมือ MCP ที่เปิดเผย

ชื่อเครื่องมือคำอธิบายความสามารถ
get_error_contextดำเนินการผ่าตัดร่องรอยบนดัมป์ข้อผิดพลาด ลบสัญญาณรบกวนจากเฟรมเวิร์ก ปกปิดข้อมูลรับรอง และแยกบริบทซอร์สในเครื่องที่เกี่ยวข้องซึ่งจำกัดอยู่ในเวิร์กสเปซ
search_stack_overflowสอบถาม Stack Exchange API สำหรับลายเซ็นข้อผิดพลาดที่เกี่ยวข้องโดยใช้คำค้นหาที่ผ่านการทำความสะอาด
apply_code_patchใช้การแก้ไขไฟล์แบบอะตอมมิกพร้อมการตรวจสอบไวยากรณ์ภาษาหลังการเขียน (cargo check, py_compile, node --check) และการย้อนกลับอัตโนมัติเมื่อการตรวจสอบล้มเหลว
analyze_codeดำเนินการวิเคราะห์โค้ด AST แบบคงที่เพื่อตรวจจับการรั่วไหลของทรัพยากร ช่องโหว่ด้านความปลอดภัย และข้อบกพร่องของโค้ด ด้วยขีดจำกัดการทำงานที่กำหนดและพิกัด LSP UTF-16 ที่แม่นยำ

เริ่มต้นใช้งานอย่างรวดเร็ว

ฉันใช้ Claude Desktop

# 1. Add to claude_desktop_config.json (see MCP Integration section above)
# 2. When Claude encounters errors, it automatically uses "get_error_context" tool
# 3. Errors stay sanitized without any additional setup

ฉันใช้ GitHub Actions

# Add to your workflow (.github/workflows/build.yml)
- name: Sanitize Build Failure Log
  if: failure()
  uses: daffa2555/tokenectomy-action@v1
  with:
    log-file: 'build.log'
    output-file: 'sanitized.log'

# Now you can safely share sanitized.log without leak concerns

พารามิเตอร์:

พารามิเตอร์ชนิดค่าเริ่มต้นคำอธิบาย
log-fileString''เส้นทางไปยังไฟล์ล็อกข้อผิดพลาดดิบที่จะประมวลผล
log-contentString''เนื้อหาสตริงโดยตรงหากไม่ได้ระบุไฟล์
output-fileStringtokenectomy-sanitized.logเส้นทางสำหรับไฟล์เอาต์พุตที่ผ่านการทำความสะอาด
versionStringv1.2.1เวอร์ชันเป้าหมายของรีลีสไบนารี

ฉันต้องการความเป็นส่วนตัวสูงสุด (สภาพแวดล้อมแบบตัดขาดจากเครือข่าย)

# All redaction happens locally—no network calls except to your LLM
cargo install tokenectomy

# Process logs without any cloud services
echo $ERROR_LOG | razor --scrub --local-only

# Or from a file:
razor --scrub --file /var/log/app/error.log > sanitized.log

การใช้งานขั้นสูง

CLI แบบสแตนด์อโลน

นอกเหนือจากโหมดเอเจนต์ M2M แล้ว Razor ยังมีคำสั่ง CLI สำหรับการไพพ์เทอร์มินัลและการเขียนสคริปต์เชลล์ในเครื่อง:

# Scrub framework frames and output clean log
npm test 2>&1 | razor --scrub > sanitized.log

# Sanitize a specific log file
razor --scrub --file /var/log/app/error.log > sanitized.log

# CLI diagnosis with specific AI provider
razor --file error.log --provider openai
razor --file error.log --provider anthropic
razor --file error.log --local-only

โหมดพร็อกซีรีเวิร์สเกตเวย์ AI

Tokenectomy Razor สามารถทำงานเป็นพร็อกซีรีเวิร์ส HTTP ในเครื่องแบบโปร่งใส มันอยู่ระหว่างแอปพลิเคชันไคลเอนต์และผู้ให้บริการ LLM ต้นทาง (OpenAI, Anthropic, Ollama, OpenRouter) ดำเนินการตัดทอนโทเค็นและปกปิดข้อมูลรับรองแบบเรียลไทม์ก่อนส่งต่อต้นทาง

การพัฒนาท้องถิ่น (Loopback เริ่มต้น):

# Forward to OpenAI
razor --proxy --proxy-bind 127.0.0.1:8080 --upstream-url https://api.openai.com/v1

# Forward to local Ollama instance
razor --proxy --proxy-bind 127.0.0.1:8080 --upstream-url http://127.0.0.1:11434/v1

ชี้ไคลเอนต์ SDK หรือ IDE มาตรฐานใดๆ ไปที่พร็อกซีในเครื่อง:

export OPENAI_BASE_URL="http://127.0.0.1:8080/v1"
# Now all API calls are automatically sanitized

การเสริมความแข็งแกร่งของพร็อกซีในโปรดักชัน

การผูกกับอินเทอร์เฟซภายนอก (0.0.0.0) ต้องได้รับอนุญาตโทเค็นอย่างชัดเจน:

razor --proxy --proxy-bind 0.0.0.0:8080 --upstream-url https://api.openai.com/v1 --allow-remote --proxy-token "YOUR_SECURE_TOKEN"

ขีดจำกัดทรัพยากรที่บังคับใช้: MAX_HEADER_SIZE (64 KB), MAX_BODY_SIZE (10 MB), ไทม์เอาต์ไคลเอนต์/ต้นทาง (30 วินาที / 60 วินาที) และขีดจำกัดการทำงานพร้อมกัน 128 การเชื่อมต่อ

การกำหนดค่า

ค่ากำหนดสามารถตั้งค่าได้ผ่าน ~/.tokenectomy.toml:

default_provider = "openai"  # openai | anthropic | ollama | mock
openai_api_key = "sk-..."
anthropic_api_key = "sk-ant-..."
ollama_base_url = "http://localhost:11434"
context_lines = 10
max_context_chars = 10000

ระบบนิเวศที่รองรับ

ภาษาเฟรมเวิร์กหลักเส้นทางเฟรมเวิร์กที่แยกออก
RustTokio, Actix-web, Axum.cargo/registry, .rustup, target/debug/build
PythonDjango, FastAPI, Flask, PyTorchsite-packages, dist-packages, venv, __pycache__
TypeScript / JavaScriptNext.js, Express, NestJS, Vitenode_modules, .next, dist, รายละเอียดภายใน webpack
GolangGin, Fiber, panic จาก stdlibgo/src (stdlib), go/pkg/mod, vendor
Java / KotlinSpring Boot, Quarkus, Gradle.m2/repository, .gradle/caches, รายละเอียดภายในเฟรมเวิร์ก
C / C++GDB Backtraces, AddressSanitizer/usr/include, /usr/lib, vcpkg_installed
PHPLaravel, Symfonyvendor/composer, vendor/symfony, vendor/laravel

หมายเหตุ: ปัจจุบันมาพร้อมตัวแยกข้อมูลที่แข็งแกร่งสำหรับ Rust, Python, TypeScript/JavaScript และ Go การรองรับ Java/Kotlin, C/C++ และ PHP จะมาใน v1.2 ดู #1 สำหรับการติดตามความคืบหน้า


การเปรียบเทียบ Tokenectomy

คุณสมบัติTokenectomySplunk Log ObfuscationDatadog Logsgit-secrets
ติดตั้งทันที (ไม่ต้องติดตั้งเอเจนต์)
ทำงานกับเอเจนต์ AI (MCP)
ประมวลผลในเครื่องเท่านั้น
ร่องรอยสแตกหลายภาษา
แคชการปกปิด (ประหยัดค่าใช้จ่าย)
โอเพนซอร์ส (MIT)
ราคาฟรี OSS$$$ /เดือน$$$ /เดือนฟรี

เมื่อใดควรใช้ Tokenectomy:

  • ✅ คุณใช้เอเจนต์เขียนโค้ด AI (Claude, Cursor, Cline ฯลฯ)
  • ✅ คุณใส่ใจความเป็นส่วนตัวและการประมวลผลแบบท้องถิ่นเป็นหลัก
  • ✅ คุณต้องการลดต้นทุนโทเค็น LLM
  • ✅ คุณกังวลเกี่ยวกับการรั่วไหลของความลับในล็อก เมื่อใดควรใช้เครื่องมืออื่น:
  • ❌ คุณต้องการเพียงการสแกนความลับแบบคงที่ → ใช้ truffleHog, detect-secrets
  • ❌ คุณต้องการแดชบอร์ดตรวจสอบแบบเรียลไทม์ → ใช้ Datadog, New Relic, Splunk
  • ❌ บันทึกข้อผิดพลาดของคุณมีขนาดเล็กกว่า 100 โทเค็นโดยธรรมชาติ → ค่าใช้จ่ายแฝงไม่คุ้มค่า
  • ❌ ระบบของคุณถูกตัดขาดจากเครือข่ายโดยสิ้นเชิง → จริงๆ แล้ว Tokenectomy เหมาะสมที่สุด! (ประมวลผลในเครื่อง 100%)

คำถามที่พบบ่อย

ถาม: Tokenectomy ส่งบันทึกของฉันไปยังเซิร์ฟเวอร์ภายนอกหรือไม่?

ตอบ: ไม่ การแก้ไข การแยกวิเคราะห์ และการกรองทั้งหมดเกิดขึ้นในเครื่องของคุณ การเรียกเครือข่ายเพียงอย่างเดียวคือการเรียกไปยัง LLM ที่คุณเลือก (OpenAI, Anthropic, Ollama) หลังจาก การทำความสะอาดเสร็จสมบูรณ์ ดู SECURITY.md สำหรับการรับประกันแบบ zero-knowledge


ถาม: Tokenectomy แก้ไขความลับประเภทใดบ้าง?

ตอบ: GitHub PAT, คีย์ AWS, คีย์ API ของ OpenAI/Anthropic, JWT, สตริงการเชื่อมต่อฐานข้อมูล (PostgreSQL, MySQL, MongoDB, Redis), คีย์ SSH ส่วนตัว, webhook ของ Slack/Discord และอื่นๆ อีกมากมาย รายการทั้งหมดอยู่ใน src/redact.rs


ถาม: จะเกิดอะไรขึ้นหากความลับของฉันไม่ตรงกับรูปแบบการแก้ไข?

ตอบ: แจ้งปัญหา (issue) พร้อมตัวอย่าง (ที่ทำความสะอาดแล้ว) เราจะเพิ่มรูปแบบนั้น สำหรับตอนนี้ คุณสามารถเพิ่มรูปแบบที่กำหนดเองได้ใน ~/.tokenectomy.toml (ฟีเจอร์จะมาใน v1.3)


ถาม: Tokenectomy ปลอดภัยสำหรับการใช้งานในโปรดักชันหรือไม่?

ตอบ: ปลอดภัย เขียนด้วย Rust ที่ปลอดภัย (ไม่มีโค้ด unsafe ในเส้นทางความปลอดภัย), ทนทานต่อ ReDoS และ ผ่านการตรวจสอบด้วย RustSec ดู SECURITY.md สำหรับรายละเอียดทั้งหมด


ถาม: ฉันสามารถใช้ Tokenectomy แบบออฟไลน์ได้หรือไม่?

ตอบ: ได้—ยกเว้นการค้นหา Stack Overflow ใช้แฟล็ก --local-only เพื่อปิดการเข้าถึงเครือข่ายทั้งหมด (ยกเว้น LLM ของคุณ)


ถาม: ฉันจะถอนการติดตั้ง Tokenectomy ได้อย่างไร?

ตอบ: เพียงถอนการติดตั้ง:

npm uninstall -g tokenectomy-razor
# OR
cargo uninstall tokenectomy

ไม่จำเป็นต้องทำความสะอาดการกำหนดค่าใดๆ—ไม่มีไฟล์หลงเหลืออยู่


ถาม: ฉันสามารถใช้ Tokenectomy ในไปป์ไลน์ CI/CD ของฉันได้หรือไม่?

ตอบ: ได้! ใช้ GitHub Marketplace action (ดูส่วน Quick Start) หรือคอนเทนเนอร์ Docker ใช้งานได้กับ GitHub Actions, GitLab CI, Jenkins และอื่นๆ


ถาม: ความแตกต่างระหว่าง Razor (OSS) และ Sentinel (เชิงพาณิชย์) คืออะไร?

ตอบ: Razor เป็นเวอร์ชันชุมชนฟรีที่มีฟีเจอร์จำเป็นทั้งหมด Sentinel เพิ่มความสามารถขั้นสูง เช่น tree-sitter AST healing, เกราะป้องกันการหลอน (anti-hallucination guards) และ time-machine undo ดู การเปรียบเทียบรุ่น ด้านล่าง


การเปรียบเทียบรุ่น

ความสามารถRazor (Community OSS)Sentinel (Commercial Tier)
การกรองบันทึกเฟรมเวิร์กใช่ใช่
การแยก trace หลายภาษา (4 ภาษา)ใช่ใช่ (7 ภาษา)
AI Reverse Proxy Gateway (--proxy)ใช่ใช่
การรวม Stack Overflowใช่ใช่
แคช idempotency SHA-256ใช่ใช่
การแก้ไขความลับที่ปลอดภัยจาก ReDoSใช่ใช่
เซิร์ฟเวอร์โปรโตคอล MCP (JSON-RPC)ใช่ใช่
ทักษะเอเจนต์แบบรวม2 ทักษะ (Spec TDD & Fuzzer)ชุดทักษะครบ 4 ทักษะ
Tree-sitter AST Syntax Healingไม่ใช่
เกราะป้องกันขอบเขตการหลอนไม่ใช่
วงจรย้อนกลับการทดสอบอัตโนมัติไม่ใช่
ธุรกรรมอะตอมหลายไฟล์ไม่ใช่
เอ็นจิน Time Machine Undo (--undo)ไม่ใช่
เอ็นจิน True Ectomy Deep Surgeryไม่ใช่
การวินิจฉัย Live DB Port และ Dockerไม่ใช่

สนใจ Sentinel หรือไม่? ดูราคาและฟีเจอร์


แผนงาน

เหตุการณ์สำคัญ / ความสามารถสถานะเวอร์ชันเป้าหมาย
การผ่าตัดบันทึกหลายภาษาแกนหลักและการแก้ไขความลับที่ทนทานต่อ ReDoS แบบ $O(N)$✅ เสร็จสมบูรณ์v1.0.0
AI Gateway Reverse Proxy (--proxy) และแคช idempotency SHA-256✅ เสร็จสมบูรณ์v1.1.0
Docker หลายสถาปัตยกรรม (GHCR) และ GitHub Actions Marketplace Action✅ เสร็จสมบูรณ์v1.1.3
เอ็นจินวิเคราะห์โค้ด AST แบบคงที่ (analyze_code) และออฟเซ็ต LSP แบบ UTF-16✅ เสร็จสมบูรณ์v1.1.5
คะแนนคุณภาพคำจำกัดความเครื่องมือ Glama.ai (TDQS Grade A)✅ เสร็จสมบูรณ์v1.1.5
ไบนารีที่คอมไพล์ล่วงหน้าแบบหลายสถาปัตยกรรมแบบสแตนด์อโลน (Linux, macOS, Windows)✅ เสร็จสมบูรณ์v1.1.6
การลงทะเบียนใน MCP Registry อย่างเป็นทางการของ Anthropic (io.github.Tokenectomy-Labs/razor)✅ เสร็จสมบูรณ์v1.1.7
การซิงโครไนซ์ไดเรกทอรีอย่างเป็นทางการของ mcpservers.org และป้ายกำกับ✅ เสร็จสมบูรณ์v1.1.7
ตัวแยก trace สแตกเฟรมเวิร์ก Java / Kotlin (Spring Boot 3, Gradle)✅ เสร็จสมบูรณ์v1.2.0
ตัวทำความสะอาด backtrace C / C++ (AddressSanitizer และ GDB/LLDB)✅ เสร็จสมบูรณ์v1.2.0
ฮิวริสติกการบีบอัด panic และ dump ของ goroutine ใน Go✅ เสร็จสมบูรณ์v1.2.0
รายการในแคตตาล็อกไดเรกทอรีชุมชน awesome-mcp-servers🔄 กำลังดำเนินการv1.2.0
รูปแบบการแก้ไขความลับที่ผู้ใช้กำหนดเองผ่าน ~/.tokenectomy.toml📋 วางแผนแล้วv1.3.0
เกณฑ์เสียงรบกวนที่กำหนดค่าได้และรูปแบบการยกเว้นที่กำหนดเอง📋 วางแผนแล้วv1.3.0
แดชบอร์ดเมตริกการประหยัดโทเค็นและต้นทุนของเอเจนต์ในเครื่อง📋 วางแผนแล้วv1.3.0
ส่วนขยายคู่หู VS Code และ JetBrains ดั้งเดิม📋 วางแผนแล้วv1.4.0
การขนส่ง MCP ระยะไกลแบบ Server-Sent Events (SSE)📋 วางแผนแล้วv1.4.0
Tree-sitter AST syntax healing และการซ่อมแซม✅ Sentinel (ชำระเงิน)พร้อมใช้งานแล้ว
ธุรกรรมอะตอมหลายไฟล์และการย้อนกลับ Time-machine (--undo)✅ Sentinel (ชำระเงิน)พร้อมใช้งานแล้ว

หลักประกันด้านความปลอดภัยและความน่าเชื่อถือ

  • การประมวลผลแบบ Zero-Knowledge: การสแกนและการแก้ไขทั้งหมดเกิดขึ้นบนฮาร์ดแวร์ในเครื่องก่อนที่ข้อมูลจะออกจากขอบเขตระบบ
  • ภูมิคุ้มกันต่อ ReDoS: ตัวจับคู่รูปแบบทั้งหมดใช้การประเมินออโตมาตาจำกัดพร้อมการรับประกันเวลาเชิงเส้น ตรวจสอบแล้วในเกณฑ์มาตรฐาน
  • การแยกการข้ามเส้นทาง: การดำเนินการไฟล์ถูกล็อกอย่างเคร่งครัดภายในขอบเขตพื้นที่ทำงานผ่านโมดูลความปลอดภัย WorkspaceBoundary
  • ความปลอดภัยของหน่วยความจำ: นำไปใช้ใน Rust ที่ปลอดภัยพร้อมตัวอ่านสตรีมแบบจำกัดขอบเขต (.take()) ป้องกันการโจมตีแบบทรัพยากรหมด
  • การตรวจสอบการตรวจสอบ: การตรวจสอบการพึ่งพาอย่างต่อเนื่องผ่านฐานข้อมูลคำแนะนำ RustSec

การเปิดเผยช่องโหว่: ดู SECURITY.md สำหรับขั้นตอนการเปิดเผยอย่างรับผิดชอบ


การมีส่วนร่วม

พบข้อบกพร่อง? มีคำขอฟีเจอร์? ต้องการเพิ่มการสนับสนุนภาษาใหม่?

  1. ปัญหา (Issues): github.com/Tokenectomy-Labs/Tokenectomy/issues
  2. Pull Requests: Fork, สร้างสาขาฟีเจอร์ และส่ง PR พร้อมการทดสอบ
  3. ความปลอดภัย: ดู SECURITY.md สำหรับการเปิดเผยช่องโหว่ส่วนตัว

ดู CONTRIBUTING.md สำหรับแนวทางการมีส่วนร่วมโดยละเอียด


ทรัพยากร


สัญญาอนุญาต

สัญญาอนุญาต MIT ดู LICENSE สำหรับข้อกำหนดฉบับเต็ม


สร้างด้วย ❤️ โดย @daffa2555

มีคำถาม? เปิดปัญหา (issue) หรือเริ่มการสนทนาบน GitHub