Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Read, measure and explain LLM eval runs of a digline suite. Cannot promote a baseline.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"digline": {
"command": "uvx",
"args": [
"digline-mcp",
"--root",
"ใส่ค่าของคุณ",
"--names",
"ใส่ค่าของคุณ"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add digline -- uvx digline-mcp --root 'ใส่ค่าของคุณ' --names 'ใส่ค่าของคุณ'ตัวนี้ต้องใส่ค่าในคำสั่งเปิดเอง ให้คัดลอกค่าตั้งแล้วเติมค่า
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"digline": {
"command": "uvx",
"args": [
"digline-mcp",
"--root",
"ใส่ค่าของคุณ",
"--names",
"ใส่ค่าของคุณ"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้ต้องใส่ค่าในคำสั่งเปิดเอง ให้คัดลอกค่าตั้งแล้วเติมค่า
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"digline": {
"type": "stdio",
"command": "uvx",
"args": [
"digline-mcp",
"--root",
"ใส่ค่าของคุณ",
"--names",
"ใส่ค่าของคุณ"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน digline.dev แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.8.1) เข้า registry 6 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Context7, Codebase Memory, Exa
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
The MCP server for digline: it lets a coding agent read a digline result and measure a new one, and it does not let the agent promote a baseline.
Not because promotion is refused. Because there is no such tool.
| tool | what it does |
|---|---|
list_runs | every stored run of a suite, newest first, with the baseline marked |
get_run | one stored run — the verdicts, never the payload |
get_baseline | the approved reference, same shape |
log | which model answered, read down the stored runs; never a gate |
compare | a run against the baseline: did it get worse? |
diff | two runs, neither of them a reference: should I switch? |
explain | one run read back as typed facts, with the exit code |
run | execute the suite, with the call count acknowledged first |
promote is absent by construction, and so are migrate, view and report. A baseline is an *approved reference*, and promote writes into .digline/ /baselines/, which is committed — anything landing there arrives in somebody's diff and must arrive because they put it there. A refusal would be a conversation an agent could argue with; an absence is not.
Every tool, the reading ones included, loads the suite it is named. For a suite.py that executes the project's code, in the server's environment.
The reasoning is ADR 0011, and the judgement layer it turns into surface is AGENTS.md.
uv pip install digline-mcp
One server serves one repository: the perimeter is the repo, and multi-project is N named servers rather than a registry.
{
"mcpServers": { "digline-northwind": { "command": "digline-mcp", "args": ["--root", "/Users/you/src/northwind", "--names", "clear"] } } }
--tenant and --env are accepted and verify; they never override. The suite decides, as it does everywhere else in digline.
--names is required, with no default: clear lets the store's names leave as they are, and project projects every answer, so the names leave as tokens from the name table that --name-table module:attribute names; a refusal is not projected yet, and is a sentence (ADR 0054 §8). A configuration with --root alone no longer starts; --names clear keeps what it did. ADR 0054 has the reasons.
run costs, before it costs itrun takes a mandatory acknowledge_calls that must equal the suite's planned calls to the target. Called without it, the tool refuses and hands back the number:
run(suite="suite.py")
→ refused: this suite plans 100 calls to the target. 20 cases × 5 samples = 100 calls to the target; each answer is judged 3 times by llm_rubric. Call again with acknowledge_calls=100.
run(suite="suite.py", acknowledge_calls=100) → executes
The first call is the probe. An agent cannot spend a hundred model calls without having stated the number — AGENTS.md §7 as a contract rather than as advice.
An MCP response goes into a model's context, and from there into transcripts and caches nobody controls. So the run tools return a verdict-only projection: the name, the identity, the status, the score, the threshold, the tolerance, the measured interval, and the metadata a suite disclosed.
Never the judge's reason — the judge quotes the output, so the reason *is* the output. Never the sentence explaining a suspension, never undisclosed metadata, never a case's inputs, and never a prompt or its digest unless the suite declares Disclosure(artifact_body=True). A declared file outside the perimeter is refused when the run is made; one under .digline or .git is refused by the command that would let it cross. Neither is dropped in silence.