
Koda
io.github.aabxtract由 GitHub 帳號 aabxtract 發布v0.3.2更新於 Oct 25, 2026
Verification and memory layer for coding-agent workflows.
概覽
Koda 是本地 MCP 伺服器,讓編碼代理針對自己提交的變更做聚焦驗證,並讀取報告與反覆出錯的記憶。
- 可以做什麼
- 執行針對某次提交的聚焦驗證,由代理自行提供影響分析(flows、endpoints、target、commit、流程上限)。讀取最新的完整 JSON 報告,包含判定結果、覆蓋情況與證據路徑。讀取專案記憶,包括反覆出現的失敗、修復信心度與修復耗時。為專案產生經驗證的 GitHub Actions 工作流程。
- 適用情境
- 適合代理頻繁提交程式碼、希望每次變更都快速驗證而不必等完整測試套件的情況,也適合希望代理知道哪些失敗反覆出現、避免再次引入舊問題的情況。
- 執行需求
- 以本地 stdio 程序執行,通常透過 koda-verify npm 套件以 npx 啟動,因此需要 Node.js 與 npm。專案需先用 Koda 命令列初始化,建立 .koda 目錄並安裝 git 鉤子。選用環境變數包括 GROQ_API_KEY、KODA_TARGET、KODA_TEST_TOKEN、KODA_PROJECT 及通知相關權杖;瀏覽器流程需另外安裝 Kane CLI 並使用使用者自己的 Kane 帳號。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Koda,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Koda
Verification and memory for coding-agent workflows. Install once, verify the changes that matter, remember what keeps breaking.
[npm] [npm downloads] [Open VSX downloads] [license]
1,000+ downloads on Open VSX — Koda is already watching commits in editors around the world.
Why Koda exists
Coding agents write features in minutes — but who verifies every commit? Full test suites are too slow to run per commit, so most verification happens late (or never). Koda closes that gap: on every commit it verifies only what changed, in seconds-to-minutes, and remembers what keeps breaking so your agent stops reintroducing old bugs.
Koda never writes code. It orchestrates verification, remembers patterns, and reports — to both the human and the agent.
The three surfaces
How it works — the pipeline
Most commits never launch a browser: API/config/test-only changes verify with endpoints + tests in seconds. Browser flows fire only when UI files change.
Quick start
Then just keep committing — verification runs in the background on every commit.
One-time browser setup (optional, per user)
Browser flows are powered by the Kane CLI. The IDE extension onboards it for you: click Enable and Koda offers to install Kane and connect your account. Or do it manually:
About Kane accounts — yours, not ours
Koda ships zero credentials. Every Koda user authenticates their own Kane account:
- The extension's OAuth flow opens the Kane login in your browser; new users register there
- Your session lives locally in
~/.testmuai/on your machine — never synced, never proxied - Browser-flow credits come from your Kane account, not the developer's
- In CI, each repo configures its own
KANE_USERNAME/KODA_ACCESS_KEY-style secrets
No Kane? No problem. Koda runs in degraded mode: endpoint checks, integration tests, memory, and reports all work; browser flows are honestly marked SKIPPED — never faked.
Target URLs — localhost, LAN, or hosted
Koda verifies whatever your app points at. The default is auto-detected at koda init (probes common dev ports: 3000, 5173, 8080, 8000, 4200, 5000…). Override it three ways:
Precedence: --target flag → KODA_TARGET env → .koda/config.json → auto-detected default.
CLI reference
Agent integration (MCP)
Works with any MCP client: Claude Code, Cursor, Codex, Gemini CLI, Windsurf, Zed. In a development checkout: claude mcp add koda node /absolute/path/to/koda/mcp/server.js.
MCP tools
The agent loop
Reports record analysis_source: 'agent' when the agent supplied flows — verifiable proof the loop is agent-driven.
Reports
Every run writes a timestamped pair to .koda/reports/:
The JSON includes: commit metadata, analysis_source (agent / llm-fallback / fallback), risk level, per-check results with evidence file paths, memory context (similar failures, patterns, fix confidence), and action_required with priority and suggested focus. Markdown renders PASS / FAIL / SKIPPED distinctly with coverage status.
Raw Kane session events are preserved per-flow under .koda/evidence/.
Memory — remembers what keeps breaking
- Every failed check gets a stable key; failures that recur 2+ times become patterns
- When a fix lands and the check passes, the failure is marked resolved with
time_to_fix_ms - Coverage-gap findings ("no tests cover
app/page.js") resolve automatically once a passing test covers those files - Skipped checks (app offline) never pollute memory
- Writes are atomic; corrupt memory files are quarantined, not deleted
Safety guarantees
- Non-destructive hooks — existing pre-commit/post-commit/pre-push hooks are backed up before appending; Husky respected; idempotent via marker
- Read-only HTTP by default — only GET / HEAD / OPTIONS; mutating methods require explicit opt-in (
allow_mutating_methods: true) plus agent-declared endpoints - Honest results — if the app is down, checks are
SKIPPED, never reported as failures; skipped checks never enter memory - No secrets shipped — the package contains zero credentials; the pre-commit guard blocks accidentally committed keys
CI/CD
Generates .github/workflows/koda.yml from a validated template: Node setup, npm ci, build-if-present, Kane CLI install + auth via GitHub secrets (KANE_USERNAME, KANE_ACCESS_KEY), app start, wait-on target, koda run --commit ${{ github.sha }}. Template-first — no LLM-generated YAML. Refuses to overwrite without --force.
Configuration reference (.koda/config.json)
Environment variables
Optional — Koda works without any of these. Loaded from the project .env, falling back to ~/.koda/.env (configure once, use everywhere):
Development
See koda-v3-build-guide.md for the full implementation contract.
License
MIT
來源:README.md,提交 b2d4fbe
工具
0版本歷史
1- v0.3.2最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分