Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Jev judgments for agents: injection scanning, shell risk gating, ranking
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
TYPESAFE_API_KEYค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"jev": {
"command": "uvx",
"args": [
"jev-mcp"
],
"env": {
"TYPESAFE_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add jev --env TYPESAFE_API_KEY='ใส่ค่าของคุณ' -- uvx jev-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"jev": {
"command": "uvx",
"args": [
"jev-mcp"
],
"env": {
"TYPESAFE_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"jev": {
"type": "stdio",
"command": "uvx",
"args": [
"jev-mcp"
],
"env": {
"TYPESAFE_API_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub Aitejiu ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: TYPESAFE_API_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.2) เข้า registry 2 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Fomu MCP
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.
Kenya government form guides: checklists, draft letters, eCitizen, Huduma, timelines. Sample data.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
用 TypeSafe Jev(System One 决策模型)做 agent harness 工程实验的技术仓库:评测框架、基准报告、可运行的集成工具(MCP server、skill router)。
用 uv 一条命令,无需克隆:
# 从 PyPI
uvx jev-mcp
uvx --from git+https://github.com/Aitejiu/jev-harness-lab jev-mcp
配置到任意 MCP 客户端(opencode / Claude Desktop 等):
{
"mcp": { "jev": { "type": "local", "command": ["uvx", "--from", "git+https://github.com/Aitejiu/jev-harness-lab", "jev-mcp"], "environment": { "TYPESAFE_API_KEY": "your-key" }, "enabled": true } } }
提供的工具:
| 工具 | 作用 |
|---|---|
scan_injection | 扫描工具/网页/邮件输出里的注入指令,返回 block / review / pass |
bash_risk | shell 命令四维风险打分(破坏性 / 触密 / 外发 / 不可逆),返回 deny / review / allow |
rank_candidates | 候选片段按相关性打分排序(RAG 精排) |
MCP Registry 归属标记(勿改格式):
mcp-name: io.github.Aitejiu/jev
npx skills add Aitejiu/jev-harness-lab --skill jev-skill-router
用 Jev 把任务路由到已安装的 skill,并且只加载选中那一个的完整指令,避免把整个 skill 目录塞进主模型上下文。技能页:https://www.skills.sh/aitejiu/jev-harness-lab/jev-skill-router
两个集成都需要:
export TYPESAFE_API_KEY=<your-key>
.
├── examples/ # 最小可运行示例(三原语、state、路由、护栏、抽取) ├── eval/ # 评测框架:11 个基准脚本 + 24 份报告 + 原始结果 │ └── datasets/ # 手工构造的数据集(如 130 条 shell 命令风险集) ├── integrations/ │ └── opencode/ # opencode 插件:jev_route_skill(skill 门控) ├── skills/ │ └── jev-skill-router/ # 可安装的 agent skill(SKILL.md + 独立脚本,skills.sh) ├── docs/ │ └── REPORT.md # 技术评估报告(数据与结论) ├── src/jev_mcp/ # MCP server 包(PyPI: jev-mcp) ├── pyproject.toml # Python 打包配置(console script: jev-mcp) ├── server.json # MCP Registry 元数据(mcp-name: io.github.Aitejiu/jev) ├── mcp_server.py # 兼容 shim:不安装也可 python mcp_server.py 运行 ├── skill_router.py # 本地 skill 目录路由(Jev 选择并加载 SKILL.md) ├── common.py # .env 加载 + 共享 client └── requirements.txt
uv venv --python 3.12 .venv
uv pip install -r requirements.txt echo "TYPESAFE_API_KEY= " > .env
# 最小示例
.venv/bin/python examples/quickstart.py .venv/bin/python examples/noul.py # criteria 对判断的影响 .venv/bin/python examples/routing.py # 阈值路由
.venv/bin/python eval/run_skillretbench.py --variant hybrid --per-setting 100
评测结果缓存在 eval/results/*.jsonl(已随仓库提交,可 --report-only 直接出报告);原始数据集在 eval/data/,需按 eval/README.md 的说明下载(已 gitignore)。
.venv/bin/python mcp_server.py # stdio
| 工具 | 作用 | 输入 → 输出 |
|---|---|---|
scan_injection | 扫描工具输出中的注入指令 | tool_output → action(block/review/pass) + 概率 |
bash_risk | shell 命令四维风险打分 | command → action(deny/review/allow) + 破坏性/触密/外发/不可逆分数 |
rank_candidates | 候选片段相关性重排 | query + candidates(≤10) → 排序后的 index/score |
接入 opencode 的配置示例(项目 .opencode/opencode.json):
{
"mcp": { "jev": { "type": "local", "command": ["/absolute/path/to/jev-harness-lab/.venv/bin/python", "/absolute/path/to/jev-harness-lab/mcp_server.py"], "enabled": true } } }
.venv/bin/python skill_router.py --query "帮我查飞书文档" --load
opencode 插件在 integrations/opencode/jev-skill-router.ts:注册 jev_route_skill(task) 工具,请求进来时用 Jev 从本地 skill 目录选出最合适的一个并返回其完整指令。参考做法是配合 agent.build.tools.skill = false 关闭内置 skill 工具,使主模型上下文不再携带整个 skill 目录。
| 任务 | 数据 | 结果 |
|---|---|---|
| 间接注入检测 | InjecAgent 1,105 条 | 阈值 0.10:P/R 100%,良性误报 0% |
| 检索重排 | BEIR SciFact 900 对 | BM25 → Jev:MRR 0.622 → 0.843,Hit@1 50% → 78.3% |
| 意图分类 | SNIPS / Banking77 | 7 类 97.9% / 77 类 80.3% |
| 工具目录路由 | MetaTool 199 工具 | 相似干扰 k=5 96.5% |
| Skill router | SkillRetBench 501 库 | hybrid 架构 R@1 75.8%(最强基线 38.0%) |
| 命令风险门控 | 自建 130 条 | 危险拦截 100%、正常放行 98.2% |
| 模型难度路由 | RouterBench | 51%(无信号,负结果) |
| 轨迹失败归因 | Who&When 1,403 步 | AUROC 0.56(负结果) |
总计约 22,500 次 API 调用、52.2M input tokens、$2.19。
choice 最多 255 个选项、仅文本输入、state+questions 共享约 32k tokens、英语为主。jev-1.13.0,模型升级后建议重新评测。