Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Human-in-the-loop approval gateway for AI agents over MCP: request, decide, approve.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"agentgate": {
"command": "npx",
"args": [
"-y",
"@agentkitai/agentgate-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add agentgate -- npx -y @agentkitai/agentgate-mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"agentgate": {
"command": "npx",
"args": [
"-y",
"@agentkitai/agentgate-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"agentgate": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@agentkitai/agentgate-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub agentkitai ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.0.3) เข้า registry 4 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, FOGA node
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.
A Finch OG Agent cell as an MCP server: read the world, dry-run and take ERC-8414 tenders by policy.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
AgentGate
Human-in-the-loop approval system for AI agents.
Agents request. Policies decide. Humans approve.
Keep humans in control of what AI agents can do.
Your AI agent wants to send an email, delete a file, or deploy to production. Should it? AgentGate lets you define policies that auto-approve safe actions, auto-deny dangerous ones, and route everything else to a human — via dashboard, Slack, Discord, or email.
docker-compose up for the full stack# Self-host the full stack (server + dashboard + Postgres):
docker compose up
pnpm install && pnpm --filter @agentkitai/agentgate-server db:migrate && pnpm --filter @agentkitai/agentgate-server bootstrap && pnpm dev
Drop AgentGate into an MCP client (Claude Desktop / Cursor / VS Code) — point it at the gateway:
{ "mcpServers": { "agentgate": { "command": "npx", "args": ["@agentkitai/agentgate-mcp"] } } }
See all pending requests at a glance, color-coded by urgency so you know what needs attention first.
Review, approve, or deny requests — filter by status to focus on what matters.
Search through every decision with filters for event type, action, actor, and date range.
Drill into any request to see parameters, context, timeline, and audit trail — with one-click Approve/Deny buttons.
Manage API keys with fine-grained scopes, rate limits, and usage tracking. Create, edit, or revoke keys from the dashboard.
Configure webhook endpoints for real-time notifications. Add URLs, pick events, and let AgentGate handle retries automatically.
Sign in with your API key — create one via the CLI or ask your admin.
pnpm install
pnpm --filter @agentkitai/agentgate-server db:migrate
pnpm --filter @agentkitai/agentgate-server bootstrap
Save the API key - it's shown once only! Set it in your environment:
export AGENTGATE_API_KEY="agk_..."
# Start server (port 3000) and dashboard (port 5173)
pnpm dev
In a new terminal (with API key set):
export AGENTGATE_API_KEY="agk_..."
pnpm demo
Visit http://localhost:5173 to view and manage approval requests.
┌─────────────────────────────────────────────────────────────────┐
│ AI Agents │ │ (use @agentkitai/agentgate-sdk or MCP to request approvals) │ └───────────────────────────┬─────────────────────────────────────┘ │ HTTP API (authenticated) ▼ ┌─────────────────────────────────────────────────────────────────┐ │ AgentGate Server │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ Policy Engine│ │ Request Store│ │ Audit Logger │ │ │ ├──────────────┤ ├──────────────┤ ├──────────────┤ │ │ │ API Keys │ │ Webhooks │ │ MCP Server │ │ │ └──────────────┘ └──────────────┘ └──────────────┘ │ └───────────────────────────┬─────────────────────────────────────┘ │ ┌─────────────┼─────────────┐ ▼ ▼ ▼ ┌────────────────┐ ┌────────────────┐ ┌────────────────┐ │ Web Dashboard │ │ Slack Bot │ │ Discord Bot │ │(React+Tailwind)│ │(approve in DM) │ │(approve in ch) │ └────────────────┘ └────────────────┘ └────────────────┘ │ │ │ └─────────────┼─────────────┘ ▼ ┌──────────┐ │ Humans │ └──────────┘
| Package | Description | Docs |
|---|---|---|
@agentkitai/agentgate-core | Types, schemas, policy engine | - |
@agentkitai/agentgate-server | Hono API server | - |
@agentkitai/agentgate-sdk | TypeScript SDK for agents | README |
@agentkitai/agentgate-cli | Command-line interface | - |
@agentkitai/agentgate-mcp | MCP server for Claude Desktop | - |
@agentkitai/agentgate-slack | Slack bot integration | README |
@agentkitai/agentgate-discord | Discord bot integration | README |
@agentkitai/agentgate-dashboard | React web dashboard | - |
import { AgentGateClient } from '@agentkitai/agentgate-sdk';
// Create client with API key const client = new AgentGateClient({ baseUrl: 'http://localhost:3000', apiKey: process.env.AGENTGATE_API_KEY, });
// Request approval const request = await client.request({ action: 'send_email', params: { to: 'customer@example.com', subject: 'Order shipped!', }, urgency: 'normal', });
// Wait for human decision const decided = await client.waitForDecision(request.id, { timeout: 60000, // 1 minute });
if (decided.status === 'approved') { // Execute the action await sendEmail(decided.params); } else { console.log('Action denied:', decided.decisionReason); }
AgentGate includes a command-line interface for managing approval requests.
# From the monorepo
pnpm --filter @agentkitai/agentgate-cli build
npm install -g @agentkitai/agentgate-cli
Configure the CLI with your server URL and API key:
# Set server URL
agentgate config set serverUrl http://localhost:3000
agentgate config set apiKey agk_your_api_key
agentgate config show
Configuration is stored in ~/.agentgate/config.json. You can also use environment variables:
export AGENTGATE_URL=http://localhost:3000
export AGENTGATE_API_KEY=agk_...
| Command | Description |
|---|---|
agentgate config show | Show current configuration |
agentgate config set | Set a configuration value |
agentgate request | Create a new approval request |
agentgate status | Get status of a request |
agentgate list | List approval requests |
agentgate approve | Approve a pending request |
agentgate deny | Deny a pending request |
# Create a request
agentgate request send_email \ --params '{"to": "user@example.com", "subject": "Hello"}' \ --urgency high
agentgate list --status pending
agentgate approve req_abc123 --reason "Looks good"
agentgate deny req_abc123 --reason "Not authorized"
agentgate list --json
AgentGate includes a Model Context Protocol (MCP) server for integration with Claude Desktop and other MCP-compatible clients.
Add to your claude_desktop_config.json:
{
"mcpServers": { "agentgate": { "command": "npx", "args": ["@agentkitai/agentgate-mcp"], "env": { "AGENTGATE_URL": "http://localhost:3000", "AGENTGATE_API_KEY": "agk_..." } } } }
| Tool | Description |
|---|---|
agentgate_request | Submit a new approval request |
agentgate_get | Get the status of an approval request by ID |
agentgate_list | List approval requests with optional filters |
agentgate_decide | Approve or deny a pending request |
agentgate_list_policies | List all policies ordered by priority |
agentgate_create_policy | Create a new policy with rules |
agentgate_update_policy | Replace an existing policy |
agentgate_delete_policy | Delete a policy by ID |
agentgate_list_audit_logs | List audit log entries with filters and pagination |
agentgate_get_audit_actors | Get unique actor values from audit logs |
AgentGate uses API keys for authentication. All API requests (except /health) require a valid API key.
| Scope | Description |
|---|---|
admin | Full access to all operations |
request:create | Create new approval requests |
request:read | Read approval requests |
request:decide | Approve or deny requests |
webhook:manage | Create/update/delete webhooks |
HTTP Header:
curl -H "Authorization: Bearer agk_..." http://localhost:3000/api/requests
SDK:
const client = new AgentGateClient({
baseUrl: 'http://localhost:3000', apiKey: process.env.AGENTGATE_API_KEY, });
// Via API (requires admin scope)
POST /api/api-keys { "name": "My Agent", "scopes": ["request:create", "request:read"] }
| Method | Endpoint | Description | Required Scope |
|---|
| POST | `/ap
ตัดมาแค่ช่วงต้น อ่านต่อใน repo