GitHub
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Capture dev context on interrupt; replay it as a 30-second resume card. Git stash for your head.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"br8n": {
"command": "uvx",
"args": [
"br8n",
"--from",
"br8n",
"br8n-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add br8n -- uvx br8n --from br8n br8n-mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"br8n": {
"command": "uvx",
"args": [
"br8n",
"--from",
"br8n",
"br8n-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"br8n": {
"type": "stdio",
"command": "uvx",
"args": [
"br8n",
"--from",
"br8n",
"br8n-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub anthonysuherli ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.1.2) เข้า registry 3 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี GitHub, Desktop Commander, Cloudflare MCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Site · install · how it works · pip install br8n
You'll forget what this branch was for. br8n won't. It saves what you were thinking the moment you get pulled away — branch, open files, the diff, and the one-line *why* — and hands it back as a 30-second resume card when you return. Your code is already saved; this is the part that isn't. Research puts the cost of refocusing after an interruption at about 23 minutes (Gloria Mark, UC Irvine), and longer for complex code. *(Snapshots are taken two ways today: automatically at commit boundaries via an installed post-commit hook, and on demand with /br8n:capture. There is no continuous watcher.)*
Most tools capture *state* (files, layout, git history). br8n captures *intent* — the one-line hypothesis in your head: *"JWT validation is caching stale tokens."* That's the wedge that matters.
Beyond your current device, br8n is a portable knowledge engine: your captured insights live in a searchable journal accessible from Claude Code, the iOS companion, or any tool that speaks HTTP. Sync, search, and share across machines (paid tier, future).
Before a meeting, a branch switch, or end of day, run /br8n:capture. br8n snapshots your workspace in one second and records *"What were you working on?"* — the one-line hypothesis is the load-bearing field.
Before: Capture: After:
┌─────────────────┐ /br8n:capture ┌──────────────────┐ │ Fixing bug in │ ───► br8n asks: ───► │ Finding saved: │ │ auth flow │ "What were │ │ • git diff │ │ files: [3] │ you doing?" │ │ • open files │ │ branch: fix-#42 │ Fixing auth │ │ • cursor pos │ └─────────────────┘ bug │ │ • hypothesis │ └──────────────────┘ (stored in KB)
Your captured snapshots live in a searchable journal. One hypothesis per snapshot— the thing you'd write on a post-it.
Open br8n (or focus your editor). The resume card appears instantly with:
╔════════════════════════════════════╗
║ br8n — Where were you? ║ ╠════════════════════════════════════╣ ║ 📌 Fixing auth bug in login flow ║ ║ ║ ║ Recent snapshots: ║ ║ • 5 min ago: auth middleware ║ ║ • 12 min ago: jwt validation ║ ║ • 45 min ago: session storage ║ ║ ║ ║ Coverage: ████░ (rich) ║ ╚════════════════════════════════════╝
No digging through git logs. No "where was I again?" Back to work in 30 seconds.
If coverage is gap (you've been away a while, or switched branches), one click runs a web-research pipeline to pull in fresh context: changed docs, new issues, updated deps—and folds it back into your session knowledge base.
Resume card says "coverage: gap"
│ ▼ ┌─────────────────┐ │ [Explore Now] │ ─► web search (changed deps, docs) └─────────────────┘ ─► fetch + parse relevant sources │ ─► extract + embed findings ▼ Coverage updates to "rich" + new context appears in the card
Perfect for returning after a weekend or after your teammate merged a big change.
br8n is a self-contained fork of Delapan, repurposing its primitives (Findings, pgvector search, tap/preamble) from chat to automatic capture.
Slash commands from inside any Claude Code session:
/br8n:pickup → Show the current repo/branch resume card
/br8n:capture → Save a snapshot right now /br8n:search → Ask a question, grounded in your session history /br8n:explore → Force the gap-fill pipeline
Example: You're in a Claude Code session debugging auth. Type /br8n:search "how did I set up JWT validation?" and get an answer from your captured snapshots.
A native SwiftUI app — the read spine. Sign in with Apple, browse your cross-repo activity, and read resume cards from your phone. Consumes the same /v1/projects + /v1/resume + /v1/activity API, authenticated per-user (see below).
Your captured snapshots form a searchable knowledge journal. The engine runs in two tiers from the same code — the difference is where your data lives.
| Tier | Free / local | Paid / cloud |
|---|---|---|
| Storage | On-device SQLite | Hosted Supabase (pgvector) |
| Access | Loopback only (localhost:8002) | Anywhere (with API key) |
| Sign-in | None | GoTrue |
| Data | ~/.br8n/brain.db | Encrypted, RLS protected |
| Select | BR8N_BACKEND=local | BR8N_BACKEND=cloud + creds |
Access your knowledge anywhere:
Claude Code (local/cloud) iOS companion (cloud) Browser (cloud, future)
│ │ │ └──────────────┬───────────────┴───────────────────────┘ │ br8n API │ ┌───────┴────────┐ │ │ SQLite Supabase (local db) (cloud db)
Free tier: single device, no sync. Paid tier: access from Claude Code, the iOS app, or any tool that speaks HTTP. Team sharing and cross-repo search are designed (future).
The paid value props — cross-machine sync, cross-repo search, managed keys, team sharing — are not yet shipped.
14:32 — Debugging auth middleware
Open file: middleware.py, line 45 Hypothesis: "JWT validation is caching stale tokens"
14:35 — [Meeting call] /br8n:capture → br8n saves the snapshot
15:47 — [Back from meeting] /br8n:pickup → resume card appears: "🔸 JWT validation is caching stale tokens" Recent context shown. No "where was I?" moment.
You're on fix/session-timeout, about to switch to main
/br8n:capture → snapshot saved against this branch
Hours later, switch back: git checkout fix/session-timeout /br8n:pickup → resumes from that branch → shows the last hypothesis + snapshots
You're in a Claude Code session, ask a question:
/br8n:search "how did I set up the JWT secret?"
Claude Code queries your captured session history and answers from your own notes/decisions.
Install the Claude Code plugin — no venv, no path editing. The plugin's MCP server bootstraps its own environment on first run.
/plugin marketplace add anthonysuherli/br8n
/plugin install br8n@br8n
Reload the session, then use /br8n:pickup, /br8n:capture, etc. Data lives in ~/.br8n/brain.db on the free/local tier.
What works without any key: capture and resume. Snapshots are stored without embeddings, so the resume card, the hypothesis and the snapshot trail all work with no account and no key at all.
What needs a key: semantic search (/br8n:search) needs an embedding key — AI_GATEWAY_API_KEY or OPENAI_API_KEY. The explore / gap-fill pipeline needs that *and* TAVILY_API_KEY for web search.
Keyless semantic search: on the local tier, pip install 'br8n[local-embeddings]' gives you semantic search with no API key at all — an on-device ONNX model (bge-small-en-v1.5, ~130MB, no torch, downloaded once on first use). Use /br8n:embeddings to check which provider is active or switch between them. A keyless python -m br8n.vault.reindex rebuilds real vectors, not just text.
Vectors from different models aren't comparable, so br8n keeps one active embedding space and re-embeds when you change providers. Because a provider can also change *by accident* — a shell without your API key resolves to the local model — br8n will not silently throw your vectors away: a change it inferred from the environment is offered, not applied. /br8n:embeddings (and --check) report the pending switch, and it happens when you confirm. While an offer is pending, capture and search behave exactly as they do with no key at all: nothing breaks, nothing is lost, and the backlog re-embeds itself once you confirm. A switch you ask for explicitly applies immediately.
Sanity-check a local install with python -m br8n.api.main --check — it reports your Python version, which backend tier is configured, whether sqlite-vec loads, whether the DB path is writable, and whether the embedding and explore keys are present. Anything missing is named explicitly.
Free/local (SQLite, single device):
BR8N_BACKEND=local python -m br8n.api.main # listens 127.0.0.1:8002
Paid/cloud (Supabase, accessible anywhere):
BR8N_BACKEND=cloud uvicorn br8n.api.main:app --reload --port 8002
Working on br8n itself, rather than using it:
git clone https://github.com/anthonysuherli/br8n
cd br8n/backend python3.11 -m venv .venv .venv/bin/pip install -e ".[dev]" cp .env.example .env
pip install br8n also works as a plain package install, and ships the br8n-mcp and br8n-server entry points; the plugin marketplace remains the supported path for using br8n inside Claude Code.
By default, the knowledge base is keyed by project (git repo name) and kb (git branch). Override the database path with BR8N_DB_PATH (local) or set Supabase credentials in .env (cloud).
The cloud tier is multi-user: each request carries a Supabase GoTrue JWT — obtained via Sign in with Apple through POST /v1/auth/apple (Supabase verifies the Apple token and provisions the user) and rotated via POST /v1/auth/refresh. The backend verifies the JWT against SUPABASE_JWT_SECRET and scopes every read/write (findings *and* the activity graph) to the caller's own org via row-level security. BR8N_API_KEY remains as a service-only key for internal callers. The local tier needs no auth (loopback-only, single user).
See CLAUDE.md for:
br8n/ core engine, fork structure)/v1/capture, /v1/resume, /v1/explore, /v1/auth/apple)/br8n:pickup, etc.)/v1/auth/apple + /v1/auth/refreshตัดมาแค่ช่วงต้น อ่านต่อใน repo