Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
HYTHE — coordination bus + shared truth for AI agent fleets — self-hosted MCP server + stdio bridge.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
HYTHE_AGENT_ID, HYTHE_AGENT_KEY_FILE, HYTHE_AGENT_AUTH_MODE, API_KEY, MCP_HOST, MCP_PORTค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"hythe": {
"command": "npx",
"args": [
"-y",
"@hythe/mcp"
],
"env": {
"HYTHE_AGENT_ID": "ใส่ค่าของคุณ",
"HYTHE_AGENT_KEY_FILE": "ใส่ค่าของคุณ",
"HYTHE_AGENT_AUTH_MODE": "ใส่ค่าของคุณ",
"API_KEY": "ใส่ค่าของคุณ",
"MCP_HOST": "ใส่ค่าของคุณ",
"MCP_PORT": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add hythe --env HYTHE_AGENT_ID='ใส่ค่าของคุณ' --env HYTHE_AGENT_KEY_FILE='ใส่ค่าของคุณ' --env HYTHE_AGENT_AUTH_MODE='ใส่ค่าของคุณ' --env API_KEY='ใส่ค่าของคุณ' --env MCP_HOST='ใส่ค่าของคุณ' --env MCP_PORT='ใส่ค่าของคุณ' -- npx -y @hythe/mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"hythe": {
"command": "npx",
"args": [
"-y",
"@hythe/mcp"
],
"env": {
"HYTHE_AGENT_ID": "ใส่ค่าของคุณ",
"HYTHE_AGENT_KEY_FILE": "ใส่ค่าของคุณ",
"HYTHE_AGENT_AUTH_MODE": "ใส่ค่าของคุณ",
"API_KEY": "ใส่ค่าของคุณ",
"MCP_HOST": "ใส่ค่าของคุณ",
"MCP_PORT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"hythe": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@hythe/mcp"
],
"env": {
"HYTHE_AGENT_ID": "ใส่ค่าของคุณ",
"HYTHE_AGENT_KEY_FILE": "ใส่ค่าของคุณ",
"HYTHE_AGENT_AUTH_MODE": "ใส่ค่าของคุณ",
"API_KEY": "ใส่ค่าของคุณ",
"MCP_HOST": "ใส่ค่าของคุณ",
"MCP_PORT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
HYTHE_AGENT_KEY_FILE envHYTHE_AGENT_AUTH_MODE envMCP_HOST envMCP_PORT envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน hythe.dev แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: HYTHE_AGENT_ID, API_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.2.0) เข้า registry 2 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, LickityClick
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Create, edit and track LickityClick short links, campaigns and click stats from your AI assistant.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
A coordination bus + shared truth for your agent fleet. Self-hosted, two-component setup: a dockerized server plus a thin stdio bridge for your MCP clients.
HYTHE is an MCP server that lets multiple AI coding agents — Claude Code, Codex, Cursor, custom harnesses — share state, preserve context across sessions, and coordinate with each other. It is not another memory store. Its differentiators:
replace-current), and get_current_observation resolves the chain server-side — so readers get the newest non-superseded state. Conflict handling is implemented: checkpoint is branch-preserving CAS — concurrent writers branch rather than overwrite, and conflicts surface as heads, never silently resolved (contract-tested; see the evidence ledger).| Doc | What it covers |
|---|---|
| Quickstart | Clean machine → two coordinating agents in ~15 minutes |
| Concepts | One current truth, messaging lifecycle, resume/checkpoint, honest security model |
| Checkpoint / resume v3 | Current-head pointer, reconciliation, record / patch, the v3 read model, and the one-time adoption step for scopes written before v3 |
| ACP SPEC | The coordination protocol, versioned (1.0.0) |
| Tutorial | Annotated transcript of a real Claude Code ↔ Codex review loop from the original Engram deployment |
| Tool compatibility map | The 20-tool v1 surface; every retired tool and its exact replacement |
| Backup & restore | Tested SQLite backup/restore/compaction runbook |
| Agent credential operator | Offline issuance, attestation, promotion, rotation, and revocation |
| Private-residue adjudication | Hash-bound, owner-approved disposition of ambiguous historical rows |
| SQLite physical sanitation | Verified offline VACUUM and no-clobber promotion after logical cleanup |
| Pavilion production | Pinned deployment, readiness, shutdown, canary, and rollback contract |
Version 0.2.0. This source tree and package define the reviewed 0.2.0 release. Version 0.2.0 preserves 0.1.7's dual-proof agent authorization, exact-mailbox/private-payload containment, bounded related-context discovery, latency-SLO recovery and the offline adjudicator, and adds checkpoint / resume resultVersion: 3: an explicit current-head pointer per scope, a reconcile operation that folds live heads into one survivor and resolves divergent values causally, append-only verified fact/loop versions, a read model that only promotes values proven on the accepted lineage, and record / patch operations on the pointed head. Every v1 / v2 request and result shape is frozen; v3 is opt-in per call, so a 0.1.7 client keeps working against a 0.2.0 server. The dependency tree moved to Express 5, clearing two moderate qs advisories. This release runs on the reference production host since 2026-09-05. All 0.2.0 rollout configurations pin @hythe/mcp@0.2.0; verify that the registry returns that exact version before production use. The predecessor @tomcat65/engram-mcp and io.github.tomcat65/engram remain available as compatibility history and are never unpublished. See CHANGELOG.md and the v3 guide.
House rule: every claim in these docs must trace to a test or a measurement (see the evidence ledger below). Claims that don't are bugs.
| Claim | Evidence | Source | Date |
|---|---|---|---|
| Tree green, full gates | Source and clean installed-package gates cover 49 Vitest files (530 passed, 2 skipped, 6 explicit todos), 107 migration checks, 43 release-tree checks, 31 agent-kit checks, zero production npm audit findings, registry validation, and an isolated Docker start/readiness/MCP/WebSocket/graceful-shutdown canary. | .github/workflows/ci.yml, tests/, src/migrations/, clients/agent-kit/tests/test-setup.sh, scripts/verify-hythe-release-tree.test.mjs, scripts/verify-packed-consumer.mjs | 2026-08-14 |
| Compaction identity fails closed | Startup and post-compaction hooks reject missing, conflicting, or invalid identity; the bridge binds acting tools and message-resource recipients to the configured exact lane before any HTTP request. | clients/agent-kit/tests/test-setup.sh, tests/contract-bridge-identity.test.ts | 2026-08-13 |
| Exact mailboxes stay isolated | Houston/Hythe, case variants, display metadata, legacy identity history, cross-tenant poisoning, suffix handles, lifecycle changes, supersession, HTTP, and ENG-4 authorship have negative isolation coverage. | tests/contract-message-identity-isolation.test.ts, tests/contract-eng4-p0.test.ts | 2026-08-13 |
| Private message bodies stay out of shared graph surfaces | Historical, oversized, malformed, alias-linked, relation-linked, imported, exported, searched, graphed, logged, and restored payload paths are covered; hidden children do not leak through counts. | tests/contract-message-payload-isolation.test.ts, tests/contract-data-payload-isolation.test.ts, tests/contract-log-confidentiality.test.ts | 2026-08-13 |
| Cleanup is offline and fail-closed | Migration 007, owner-approved adjudication, and physical sanitation are dry-run/plan-first, bind execution to reviewed database and decision evidence, require verified no-clobber artifacts, refuse unresolved custody, and preserve rollback state. | src/migrations/007-private-message-residue.mjs, src/migrations/private-message-residue-adjudication.mjs, src/migrations/vacuum-sanitized-database.mjs, docs/ | 2026-08-14 |
| Per-agent authority is server-derived | The base key proves deployment/tenant access; a separate protected-file hya1 credential proves the exact agent. Required mode rejects stripped proof, mismatched identity, insufficient scope, revoked credentials, and stale WebSocket sessions. | src/agent-auth/, tests/contract-agent-auth-foundation.test.ts, tests/contract-agent-auth-server.test.ts, tests/contract-agent-key-client.test.ts | 2026-08-14 |
| Install and discovery surfaces agree | CLI and registry surfaces require an exact lane identity and expose only a protected per-agent key-file path plus an explicit authorization mode; tools and resource templates served through HTTP match the stdio bridge path. | tests/contract-cli.test.ts, tests/contract-agent-key-client.test.ts, tests/contract-mcp-resources-http.test.ts, scripts/verify-hythe-release-tree.test.mjs | 2026-08-14 |
| Current head is explicit, never guessed | The pointer advances only from the pointed head; stale parents branch without becoming current; a pointer at a non-live snapshot fails closed; snapshot rows are immutable by trigger. 33 contract tests. | tests/contract-eng4-h1-head-pointer.test.ts | 2026-09-03 |
| Versions and coverage are exact and verified | Every ledger tuple gets exactly one disposition; the startup backfill is all-or-nothing and idempotent; a bidirectional parity verifier fails closed on any missing, extra or mismatched row. 32 contract tests. | tests/contract-eng4-h2-version-foundation.test.ts | 2026-09-03 |
| Reconciliation is CAS-bound and causal | Exact live-head set and pointer are compare-and-set; every non-survivor head is retired (never deleted); divergent values resolve only by bound accept, reject or lineage reject; the record is payload-bound and re-verified on replay and read. 34 contract tests. | tests/contract-eng4-h3-reconcile.test.ts | 2026-09-04 |
| The v3 read model promotes only proven values | currentFacts / openLoops come only from verified versions on the accepted lineage with provenance; everything else is accounted as divergent or legacy with closed coverage. 29 contract tests. | tests/contract-eng4-h4-read-model.test.ts | 2026-09-04 |
| record / patch cannot promote stale state | Only the pointed head is admitted (conflict otherwise); state is materialized from the hash-verified payload; each payload is read once per call; snapshot resources serve exactly the verified bytes. 21 contract tests, four review rounds. | tests/contract-eng4-h5-record-patch.test.ts | 2026-09-04 |
| Express 5 keeps the HTTP contract | A bodiless or wrong-content-type request is handled like an empty JSON body on every parsed route, never a framework 500; production audit reports zero findings. | tests/contract-express5-body-contract.test.ts, .github/workflows/ci.yml run 33878587010 | 2026-09-04 |
| Production migration verified on a copy first | The v3 schema and backfill were exercised against a copy of the production database on the production host before cutover; the live cutover took 17 s with row counts identical to the verified cold backup. | docs/PAVILION-PRODUCTION.md; operator log engram-prod/releases/hythe-74a324c-cutover-20260905T005551Z.log on the host | 2026-09-05 |
docker compose up, then the @hythe/mcp stdio bridge per MCP client; first-run wizard stores the API key in a protected .env and prints secret-free file-referencing config for Claude Code / Codex / Cursor / Claude Desktop; optional namespaced (demo-*) demo seed on an otherwise empty DB.resultVersion: 3: an explicit current-head pointer, reconcile to fold heads and resolve divergent values, verified fact/loop versions with provenance, and record / patch on the pointed head — see the v3 guide.The published npm package does not install a transformer engine by default. Without one, HYTHE still provides deterministic 384-dimension token-hash vectors plus lexical ranking; it does not download a model or create a model cache. @xenova/transformers@2.17.2 is an optional peer for operators who deliberately provide it from their own audited dependency root.
The Docker image keeps semantic behavior stable through a separate, locked /opt/hythe-transformers runtime. Its startup preflight loads the configured Xenova/all-MiniLM-L6-v2 q8 model and requires one finite 384-dimension embedding before the server starts. When SQLITE_VEC_ALLOW_REMOTE_MODELS=false, the configured SQLITE_VEC_CACHE_DIR must already contain that model. Do not switch between transformer and hash embeddings on a populated vector index: retain the same provider/model/dimensions or rebuild the vector index first.
Apache-2.0