Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Verifier-grounded AI promotion gates, disposable report cards, and signed PASS/HOLD/BLOCK receipts.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://whetstone.cyberelf.link/mcpพิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http tools https://whetstone.cyberelf.link/mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"tools": {
"url": "https://whetstone.cyberelf.link/mcp"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"tools": {
"type": "http",
"url": "https://whetstone.cyberelf.link/mcp"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://whetstone.cyberelf.link/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ยังไม่ได้อ่านรายการเครื่องมือของตัวนี้ เราตรวจ endpoint ทีละชุดวนไป
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน whetstone.cyberelf.link แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.8.0) เข้า registry 3 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Systemdox
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.
Your architecture in your agents' context: checks, specs, ADRs and docs over MCP, at write time.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Two learners grinding each other sharp: a student that must earn every promotion, and an examiner that must earn the right to judge it — with every label anchored to an oracle that cannot practically be wrong.
whetstone is a self-improving research harness built around one rule: *nothing is believed until something exact has tried to kill it.* A verifier-gated student (QLoRA adapters on a local 4B) trains on experience milled from root oracles — exhaustive graph enumeration, simulated-annealing counterexample search, exact game simulators, Monte-Carlo consensus, Stockfish, KataGo — and is graded by an evolving exam bank that quarantines anything the student trained on, learns which items discriminate, retires the saturated, and feeds its retired exams back as training fuel.
Selected results (full ledger with methods, nulls, and receipts in FINDINGS.md; artifacts in results/):
Licensed AGPL-3.0. Commercial licensing available from the author.
Install the dependency-light core (CLI and stateless toolbox) with pip install .. Optional integrations are grouped as agents, engines, and local-models; pip install ".[all]" installs every integration.
The public HTTP MCP endpoint serves both the sessionless 2026-07-28 protocol (server/discover plus per-request metadata and headers) and the initialize-based 2025-06-18, 2025-03-26, and 2024-11-05 revisions. The stdlib server remains dependency-free; mcp>=2,<3 is needed only for SDK clients and the stdio adapter.
Tagged releases contain archive-built wheels, source archives, SPDX 2.3 SBOMs, and SHA256SUMS; GitHub Actions attaches build-provenance attestations to every release artifact. For v0.8.0, verify the wheel against the repository with:
gh release download v0.8.0 -R CarlSR9001/whetstone -p "*.whl" -p "*.spdx.json" -p "SHA256SUMS"
gh attestation verify .\branching_continual_verification-0.8.0-py3-none-any.whl -R CarlSR9001/whetstone
The research harness above is operable as a product: one CLI, adapters for any system under exam, pluggable verifiers, a CI contract, and agent-native surfaces. Full guide in docs/product.md.
$env:PYTHONPATH='src'
python -m bcv.cli init # bank + whetstone.toml python -m bcv.cli mint --domain code --max-items 8 # hidden-check exam items python -m bcv.cli grade --system v2 --command "python my_agent.py" python -m bcv.cli grade --system v2 --acp "my-acp-agent" # any Agent Client Protocol agent python -m bcv.cli gate --baseline v1 --candidate v2 # exit code IS the verdict: 0 PASS, 2 HOLD, 3 BLOCK python -m bcv.cli sweep # retire saturated items downward python -m bcv.cli redteam # hostile self-test; nonzero exit on escape python -m bcv.cli serve --port 8977 # localhost JSON service python -m bcv.cli mcp # MCP server (also in .mcp.json) python -m bcv.cli inspect --exam exam.jsonl --exposure exposure.jsonl --baseline v1.json --candidate v2.json python -m bcv.cli hosted-report-card --command "python my_agent.py" --out report-card.json python -m bcv.cli open-bench-run --baseline-command "python v1.py" --candidate-command "python v2.py" python -m bcv.cli verify-receipt --receipt report-card.json python -m bcv.cli toolbox --port 8988 # eight stateless tools on localhost
Grading an external endpoint burns every exposed item — permanently — via the bank's exposure accounting; the promotion report carries paired evidence, an exact McNemar p-value, the bank's own resolution statement, and a SHA-256 commitment to bank state. No surface, human or agent, ever serves exam item contents.
The stateless toolbox turns eight mechanisms already in the repo into usable file-in/receipt-out surfaces: Whetstone Inspector, Eval Leak Auditor, Promotion Gate, Bank Health, SafePatch, Counterexample Hunter, Memory Relevance Debugger, and Agent Replay Console. Each run exposes the decision path, an inspectable visual certificate, a SHA-256 receipt, and a task-specific downloadable artifact. Leakage analysis keeps exact identity, finite-corpus behavioral equivalence, and text-similarity review as separate evidence tiers; only the first two quarantine automatically. The public instance at whetstone.cyberelf.link accepts only caller supplied disposable data; it has no examiner bank, accounts, cookies, or upload persistence. Private exams belong in the CLI or a customer-controlled instance.
The same public service now includes Open Promotion Bench, a paired scope-integrity track. open_bench_start gives a baseline and candidate the same six procedurally varied virtual-repository tasks; open_bench_submit checks requested state plus edit-scope conservation and counts gains, regressions, and ties before issuing PASS/HOLD/BLOCK. A submitter may explicitly publish a self-attested sanitized receipt. The ledger stores manifests, transitions, counts, and hashes only—never task contents or answer patches—so the existing workbench/report-card non-retention boundary remains intact.
Hosted report-card and Open Bench receipts are challenge-bound and signed with an Ed25519 SSHSIG key. The one-command runners above fetch the HTTPS key bundle, verify the issuer, challenge, content commitment, signature, and expiry, then write the receipt. A valid signature authenticates Whetstone's grading result and deployed build; it does not authenticate a caller-supplied model or harness name. Runners fail closed on unsigned receipts unless --allow-unsigned is explicitly used for a local development service. Busy report-card submissions are retryable without consuming the session.
Support-panel minting currently fails closed by default: the lexical checker passed its clean smoke corpus but failed 13/13 adversarial cases, so it cannot mint promotion-capable support items until an independently reviewed hard calibration is supplied explicitly.
The whole promotion gate, live, on CPU, in about ten seconds:
$env:PYTHONPATH='src'; python -m bcv.demo_investor
It mints exam items at the verifier frontier, quarantines the ones a toy student trained on (row-identity leakage check against a real buffer on disk), grades two systems through the checker specs — a memorizer that echoes its training data and a candidate that proposes repairs — computes per-item discrimination, issues a gains-vs-regressions promotion decision, retires saturated items into the downward-only training flow, and writes an append-only ledger. The two systems are stored answer policies (this keeps the demo off the GPU); every mint, quarantine, and grade is the production code path, computed live. A canonical transcript is in results/demo_investor_transcript.txt.
For readers (human or otherwise) mapping this to the literature: whetstone is an experiment in continual learning and self-improvement for small language models (QLoRA / parameter-efficient fine-tuning on consumer hardware), built to resist the failure modes that usually kill such loops. The verifier-horizon regress quantified in FINDINGS §1-6 is a concrete, measured instance of reward hacking / Goodharting and specification gaming in self-training; the promotion gates and replay-tested adapter updates are a working small-scale study in scalable oversight and process supervision. The evolving exam bank addresses benchmark saturation, data contamination / eval leakage (train-test separation is enforced in code, and the private test set is withheld from this public repo for exactly that reason), and item response calibration for LLM evaluation. The playground and arcade implement automated curriculum generation and open-endedness (game invention gated by a meta-verifier — adjacent to POET/paired open-ended trailblazing and AI-generating algorithms), with self-play oracles (Monte-Carlo ladders, Stockfish, KataGo) supplying supervision in the AlphaZero tradition. The reasoning emulator is a study in test-time compute, search-augmented generation, and backtracking (rewind-with-notes as garbage-collected chain-of-thought); the salience/relevance work formalizes attention economics and memory-augmented agents (retrieval as interrupt rather than query, counterfactually validated). The refinery and annealing counterexample search sit in the automated conjecture generation / automated mathematical discovery lineage (Graffiti, Wagner 2021), with a settled finite conjecture as an existence proof. Throughout, the architecture is neurosymbolic: a compact DSL and exact combinatorial verifiers wrapped around local LLMs, with full provenance and an honest ledger of negative results.
This repo grew from the blueprint in BLUEPRINT.md; the original scaffold notes follow.
What exists now:
Run the tests:
python -m pytest
Run tests plus every current experiment:
.\scripts\run_all.ps1
Run a real local-model Markdown edit against the sample agreement:
.\scripts\run_sample_edit.ps1
Run the accept/retry/block usefulness benchmark:
$env:PYTHONPATH='src'; python -m bcv.usefulness
Run the multi-document sequential edit benchmark:
$env:PYTHONPATH='src'; python -m bcv.corpus_benchmark
Run Cognitive Git recall and coding benchmarks:
$env:PYTHONPATH='src'; python -m bcv.recall_benchmark
$env:PYTHONPATH='src'; python -m bcv.coding_benchmark --quick $env:PYTHONPATH='src'; python -m bcv.coding_benchmark
Export the seed Taste-RL preference and
ตัดมาแค่ช่วงต้น อ่านต่อใน repo