Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
WingFoil — the repo-native intent layer for AI-native software engineering
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"wingfoil": {
"command": "npx",
"args": [
"-y",
"wingfoil",
"mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add wingfoil -- npx -y wingfoil mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"wingfoil": {
"command": "npx",
"args": [
"-y",
"wingfoil",
"mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"wingfoil": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"wingfoil",
"mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub wingfoil ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.3.2) เข้า registry 3 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Opencu
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.
Independent local computer-use engine and MCP server for macOS, Windows, Linux and Android
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
A structured harness for AI-assisted software development, built to make it deterministic.
WingFoil solves a critical problem: as your software project grows, AI agents lose consistency and control. Context gets scattered, conventions drift, and decisions made in one session don't carry forward to the next.
WingFoil centralizes your project's memory, DNA, and directives in a structured, git-backed format — giving both humans and AI agents a shared source of truth.
*The first example, docs/examples/01-first-project, recorded from docs/examples/01-first-project/demo.tape. The example checks its own results, and the recording stops if a check fails, so if WingFoil stops matching the example the recording fails instead of going stale.*
When using AI agents to write software, you face growing friction:
The larger the project, the worse the signal-to-noise ratio.
WingFoil provides a structured, authoritative interface to your project:
This keeps everything synchronized, so that two runs from the same specs and configuration can produce equivalent software: the goal the *Determinism Index* measures (see *Success Metric* below).
Alex, the Solo Developer Every new AI session forces you to re-explain context. WingFoil loads relevant info in seconds — no more context loss between sessions.
Sam, the Code Reviewer You're starting with AI for code review but aren't confident enough for full development yet. WingFoil lets you enforce quality standards and gradually expand AI usage as you gain confidence.
Jordan, the Team Developer You don't know what conventions your tech lead has defined, and agents ignore team rules. WingFoil keeps everyone aligned on directives, decisions, and project state without constant manual updates.
Morgan, the Tech Lead You need agents to follow the team's rules automatically, not invent new ones. WingFoil encodes governance once; it auto-loads for every agent. It also keeps the whole team synchronized on progress and blockers.
Casey, the Manager You need visibility into decisions and methodology. WingFoil provides an audit trail, queryable knowledge base, and real-time tracking of project state.
init, your own custom directives, role assignments (shipped in 0.2)agent execute launches Claude Code or Codex CLI on a Memory element with its context assembled and checked first, and records the run (new in 0.3)| Area | Commands | |
|---|---|---|
| Setup | `wingfoil init [--template Scrum\ | Kanban] · wingfoil mcp` |
| DNA | wingfoil dna show [section] · dna set --value · dna add · dna update · dna remove · wingfoil paths [category] | |
| Memory | wingfoil memory add --type --title [--set = ] · submit · approve --reason · reject --reason · amend --reason · park --reason · deprecate · history · search [keyword] | |
| Directives | wingfoil directive create --name · directive assign --directive --role · directive remove · wingfoil directives list [--role ] | |
| Workflow | wingfoil workflow list · show · start · next · status · finalize · end · adopt · rekey · create · remove | |
| Agent | `wingfoil agent execute --element \ | --next · agent list · agent show ` |
Every command accepts --format console|json|yaml and ends with exit code 0 (success), 1 (refused) or 2 (bad command line); every command that commits accepts --dry-run, except init. Full details: [CLI reference](docs/cli-reference.md).
wingfoil mcp, stdio) — DNA, Memory and workflows as read-only Resources, the workflow state as wingfoil://workflows/-/next and wingfoil://workflows/-/status, plus a -session Prompt per role that embeds the role's directives; given an element and a state (a commit), the Prompt — and the Resource wingfoil://session/{role}/{element}/{state} — return the agent's execution context for that elementapprover rolenpm install -g wingfoil
This installs the wingfoil binary (Node.js 22.12+ required). Verify it:
wingfoil --version
Run this from the root of a git repository with a git identity configured (git config user.name / user.email).
1. Initialize WingFoil — scaffolds .wingfoil/ (DNA, Memory schema and templates, directives, workflows) and commits it:
$ wingfoil init --template Scrum
It also installs the built-in agent adapters (claude-code, codex-cli) under .wingfoil/agents/.
2. Name the project and register yourself as the approver — approvals need a team member holding the approver role, with your git email:
$ wingfoil dna set project.name --value "My Project"
{ "key": "project.name", "value": "My Project" } $ wingfoil dna add team.members --value "Ada Lovelace" --entry-email ada@example.com --entry-roles approver,developer { "key": "team.members", "value": "Ada Lovelace" }
3. Create a task, write it, submit it:
$ wingfoil memory add --type task --title "My first task"
{ "id": "task-001-my-first-task", "path": "docs/memory/task/task-001-my-first-task.md" } $ wingfoil memory submit task-001-my-first-task { "id": "task-001-my-first-task", "path": "docs/memory/task/task-001-my-first-task.md", "from": "draft", "to": "pending" }
(Write the task's body in the file before submitting — the submit commit records it.)
4. Approve it — the commit records who approved and why:
$ wingfoil memory approve task-001-my-first-task --reason "Scope is clear."
{ "id": "task-001-my-first-task", "path": "docs/memory/task/task-001-my-first-task.md", "from": "pending", "to": "approved" } $ git log -1 --format=%B wf(task): approve task-001-my-first-task [pending → approved]
Approver: Ada Lovelace (approver) Reason: Scope is clear.
WingFoil-Version: 0.3.0 (6ca54978a01dc29c81e395d363efcdeac8a513fd)
5. Connect your AI agent — for Claude Code, add .mcp.json at the repository root:
{ "mcpServers": { "wingfoil": { "command": "wingfoil", "args": ["mcp"] } } }
| Document | For |
|---|---|
| [User guide](docs/user-guide.md) | Step by step: install, configure DNA / Memory / Directives, daily use, agents, CI |
| [CLI reference](docs/cli-reference.md) | Every command: arguments, output, exit codes, the commit it writes |
| [Examples](docs/examples/) | Runnable, self-checking scripts for the main scenarios |
| [Guide for AI agents](docs/agents.md) | What an agent needs to operate in a WingFoil project |
| [Comparison](docs/comparison.md) | WingFoil beside agent-rule files, spec-driven development tools, coding agents and IDEs |
| [Case study](docs/case-study.md) | How WingFoil develops WingFoil, with the release-health figures of v0.1, v0.2, v0.3 and v0.3.1 |
| [Changelog](CHANGELOG.md) | What changed in each release |
For developers and teams already using AI agents WingFoil is built to make the development process deterministic, and measures how far it does By centralizing memory, conventions, and directives — keeping them synchronized across all actors
Two independent development runs from the same specs + WingFoil config using different AI agents should produce substantially equivalent software, with all team members and agents maintaining shared understanding of project workflow state, progress, and alignment. This is the goal WingFoil is measured against, not a property it already has.
*Substantially equivalent* means behaviourally equivalent: both codebases pass the same acceptance contracts. The Index has three components:
0.4 — Interaction Layer + Polish (planned): adopting WingFoil in a project already under way (init --mode infer, dna infer, memory import, audit), MCP Tools through whic
ตัดมาแค่ช่วงต้น อ่านต่อใน repo