Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Dating by tokens, matched by usage league across agentic CLIs. Local-first.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"vibedate": {
"command": "npx",
"args": [
"-y",
"vibedate",
"mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add vibedate -- npx -y vibedate mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"vibedate": {
"command": "npx",
"args": [
"-y",
"vibedate",
"mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"vibedate": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"vibedate",
"mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub pooriaarab ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.8.8) เข้า registry 3 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, FactLot
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.
Cited CRE facts and deterministic calculators for agents: rent, CAM, debt sizing, IRR, parcel IDs.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
npm package · Install · Quick start · Privacy · Alternatives
Dating by tokens — connect your Claude Code / Codex usage, get sorted into a league (1M / 5M / 10M / 100M / 1B+), and match with people who burn tokens the way you do. The premise: heavy users of these tools share something worth matching on.
Part of the Vibe Suite — companion tools for agentic coding CLIs. Ships as CLI + npm package + MCP server, plus a local web app. Built on @pooriaarab/vibe-core.
▶ Watch the launch video — she matched with the man of her dreams. He was coding in a basement.
https://github.com/pooriaarab/vibedating/raw/main/branding/launch-video.mp4
Local-first. Raw token usage is read and stored on your own machine and
never leaves it. Only the coarse league *bucket* is ever shared — never the
raw number, never per-project breakdowns. Live matching is peer-to-peer over a
DHT (no central server) and opt-in only; without it the pool is a local
seeded demo.
v0 — works locally, privacy-first. Usage is verified from your harness's real local logs via vibe-core's readHarnessUsage (source real → verified: true); when no logs are readable you can self-report (VIBEDATING_TOKENS, unverified) or fall back to a demo value (unverified). Handles are bound to a persistent ed25519 identity (~/.vibedating/identity.json, mode 0600): every hello is signed, and a forged signature gets the peer dropped.
npm install -g vibedate
…or run it ad-hoc:
npx vibedate connect
# 1. Read your usage, compute + print your league (stored locally at ~/.vibedating)
vibedating connect
vibedating matches
vibedating discover --live # shares ONLY handle+league+harness+verified flag+identity pubkey
vibedating open
Self-report a token count (otherwise a demo value is used):
VIBEDATING_TOKENS=23400000 vibedating connect # also accepts 12M / 1.2B / 500k
vibedating connect Read usage, compute + print your league
(first run auto-assigns a memetic handle — never @you) vibedating matches [--live] List candidates in your league (live peers if any, with last-message time) vibedating discover [--live] Find live same-league peers over the DHT (opt-in) vibedating live [--keep-alive] Live text chat (--keep-alive / non-TTY survives stdin EOF) vibedating handle [@name] Print or set your handle vibedating daemon [start|stop|status|install|uninstall] Notify-only background daemon — alerts on NEW matches, never opens chat/video; install = run on login (launchd/systemd) vibedating open [--port N] Serve the local web app (default: random free port) vibedating mcp Run the stdio MCP server (tools: profile, matches) vibedating --version vibedating --help
vibedating discover --live joins the public hyperswarm DHT on your league topic — sha256('vibedate:' + leagueBucket) — so same-league peers find each other with no central server. On each encrypted connection the two sides exchange a one-line hello with only { handle, league, harness, verified, pubkey, nonce, sig } — the proof fields sign the hello with your persistent ed25519 identity so a handle can't be impersonated; raw usage is never put on the wire. Discovered peers are stored in ~/.vibedating/peers.json and shown by vibedating matches.
Live discovery is off by default. The --live flag is the explicit opt-in (persisted as the share:live consent scope); every live run prints what it shares before joining. Ctrl+C leaves the swarm cleanly.
The same local engine drives all three, so you can use it wherever you work:
vibedating open serves the dating UI (profile, match stack, league ladder) at http://localhost:PORT. The page reads your league + matches from a tiny local JSON endpoint.vibedating connect / matches.vibedating mcp exposes profile (your league) and matches to any MCP host (Claude Code, Codex, Cursor, …).import { league, matches, readUsage, CANDIDATES } from 'vibedate';
const usage = await readUsage('claude-code'); // { totalTokens, verified, ... } const lg = league(usage.totalTokens); // { name: '10M', min: 10_000_000 } const who = matches(lg.name, CANDIDATES); // same/adjacent-tier candidates
totalTokens is read into memory, stored at ~/.vibedating/state.json, and shown in the web app only behind an opt-in toggle. It is never transmitted.--live) as { handle, league, harness, verified, pubkey, nonce, sig } with same-league peers over the hyperswarm DHT. The handshake parser whitelists those fields, so a peer can't even be *sent* anything else into your process; the verified flag and identity pubkey are the only additions, never a token count.@pooriaarab/vibe-core's consent ledger (scope share:league), granted on connect and revocable on reset. Live P2P discovery has its own scope (share:live), default off.Bucketed by lifetime tokens; you match within your league or an adjacent tier (so the tiny 1B+ pool still has people to match with):
| League | Tokens (lifetime) |
|---|---|
| 1M | 1M – 4.99M |
| 5M | 5M – 9.99M |
| 10M | 10M – 99.9M |
| 100M | 100M – 999M |
| 1B+ | 1B+ |
An interactive, self-contained UX prototype (no build, no network): docs/prototype.html. The shipped local web app (vibedating open) is an adapted, data-driven version of this prototype.
MIT