Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
PMLL Memory MCP — persistent KV context memory and Q-promise deduplication.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"pmll-memory": {
"command": "npx",
"args": [
"-y",
"pmll-memory-mcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add pmll-memory -- npx -y pmll-memory-mcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"pmll-memory": {
"command": "npx",
"args": [
"-y",
"pmll-memory-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"pmll-memory": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"pmll-memory-mcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub drQedwards ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.1) เข้า registry 8 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี 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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
pypm packaging CLI with shared PMLL memory + Q-promise. Sibling: drQedwards/pmll.
Live Stellar pmll-anchor IDs: docs/STELLAR.md · skills: SKILL.md · promises: Q_promise_lib/README.md.
TL;DR: PPM packages Python (C CLI). Shared PMLL owns memory/state (
memory_silo_t, exactpeek+ semanticpeek_semantic,
SAT bridge,
init_pml). Q-promise owns temporal/control-flow (qpromise_*,libqpromise.so)
— it does not replace the silo. Optional Stellar commitments hash off-chain
CodeworkPayloads into 32-byte digests viapmll-anchor(ABI: init/store/get/bump).
Companion packaging CLI + MCP memory server live in-tree.
PMLL provides durable structured memory for agent workflows, alongside a PPM packaging CLI (hermetic bundles, plugins, signing) and the PMLL Memory MCP server. Long-term graph tools adapt Context+.
Two complementary layers — not substitutes for each other:
| Layer | Owns | Key surface |
|---|---|---|
| PMLL | Durable memory / state | memory_silo_t, peek / peek_semantic, silo_set, SAT bridge, init_pml |
| Q-promise | Temporal / control-flow | qpromise_* API, libqpromise.so, deferred qpromise_drain() |
Q-promise does not replace the silo. A promise may *reference* a memory key (and optional SAT state id); results are committed back with silo_set / qpromise_resolve_commit.
retrieve (peek / peek_semantic)
→ compute / request work → promise PENDING → resolve / reject (optionally resolve_commit → silo) → continuation (then / catch / finally via qpromise_drain) → memory update → retrieve again
Thread safety: the C Q-promise drain is single-threaded. Continuations run only during qpromise_drain() on the calling thread; callers must externally serialize access. Details: Q_promise_lib/README.md.
Headers: PMLL.h · implementation: PMLL.c
| Symbol | Role |
|---|---|
memory_silo_t | Associative/semantic silo: tree, slots[], embed_dim (PMLL_EMBED_DIM=32), slot_count |
silo_slot_t | key, content, embedding, resolved |
init_silo / free_silo / silo_set | Allocate, free, write key/content + embedding |
peek | Exact key, else index |
peek_semantic | Cosine ≥ min_sim over embeddings (silo_embed_text, silo_cosine_similarity) |
init_pml | Sets every assignment[i] = -1 (undecided) |
check_conflict | Treats -1 as undecided (not sticky false from zero-fill) |
sat_bridge_* | Map 3SAT tokens → associative string literals in the silo |
Build / test / API: [`Q_promise_lib/README.md`](Q_promise_lib/README.md) (authoritative). Public symbols are qpromise_*; shared object is libqpromise.so. The old prototype (QMemNode / q_mem_* / memory-chain walker) is removed; Q_promises.h is a compatibility include redirecting to qpromise.h.
| Command | What it does |
|---|---|
pypm doctor | Checks Python headers, C compiler, OpenSSL, WASI toolchain, GPU, … |
pypm sandbox [-d DIR] | Drops you into an ephemeral temp dir (or custom DIR) with a full shell |
pypm plugin add NAME SRC | Downloads a .so plugin (from URL or path) into ~/.pypm/plugins/ |
pypm plugin run NAME … | Executes pypm_plugin_main() inside the named plugin |
pypm pypylock [-o FILE] | Bundles every wheel + interpreter into dist/venv.tar.gz (or FILE) |
pypm version | Prints the current CLI version |
ppm import PKG | Import and cache a package with GPU-accelerated hash verification |
ppm add PKG --lock | Add packages and update the lockfile |
ppm plan / ppm apply | Plan dependency changes, then apply them with an audit trail |
ppm snapshot / ppm rollback | Snapshot the environment; roll back to any prior state |
ppm sign / ppm verify | Sign artifacts (Ed25519) and verify cryptographic receipts |
ppm sbom | Generate a Software Bill of Materials (SBOM) |
*Road-mapped:* SAT dependency solver (the standalone SAT.c CDCL solver exists but is not yet used for resolution), parallel wheel cache, workspaces with single lockfile, WASM wheel resolution, Conda & Poetry import plugins.
gcc, clang, or MSVC)libcurl (plugin downloads)libdl (dynamic loading — standard on Linux / macOS)tar / libarchive (optional, for pypylock bundles)git clone https://github.com/drQedwards/PPM.git
cd PPM cc -Wall -Wextra -ldl -lcurl -o pypm Ppm.c ./pypm doctor # Diagnose your dev box ./pypm sandbox # Spin up a throw-away REPL playground
cd Q_promise_lib
make clean && make test make shared # → libqpromise.so cd ..
nvcc -O3 CLI/CLI.cu -lcuda -o ppm-gpu
./ppm-gpu import transformers torch --verbose
# Import a single package
ppm import transformers
ppm import transformers==4.43.3
ppm import transformers torch numpy
ppm import --from-file my_script.py
ppm import transformers --verbose
ppm init
ppm add transformers torch==2.4.0 --lock
ppm plan
ppm apply --note "Added ML stack"
ppm snapshot --name "before-upgrade"
ppm snapshots ppm rollback before-upgrade
ppm doctor
ppm sandbox # ephemeral temp directory
ppm sandbox -d /tmp/mydir # custom directory
ppm pypylock -o production-env.tar.gz
ppm import torch --verbose
ppm ensure transformers --gpu auto # auto-detect CUDA
ppm ensure transformers --gpu cu121 # force CUDA 12.1 ppm ensure transformers --gpu cpu # CPU-only
ppm keygen --out-priv ed25519.priv --out-pub ed25519.pub
ppm sign --sk ed25519.priv --file torch-2.4.0-*.whl --gpu ./libbreath_gpu.so ppm verify --receipt torch-2.4.0-*.whl.receipt.json --file torch-2.4.0-*.whl
ppm sbom --out project-sbom.json
ppm provenance --out provenance.json ppm graph --dot | dot -Tpng -o deps.png
# Install a plugin
ppm plugin add auditwheel https://cdn.example.com/auditwheel.so
ppm plugin run auditwheel repair --wheel torch-2.4.0-cp310-linux_x86_64.whl
// hello.c
#include int pypm_plugin_main(int argc, char **argv) { puts("Hello from a plugin 👋"); return 0; }
cc -shared -fPIC -o hello.so hello.c
mv hello.so ~/.pypm/plugins/ pypm plugin run hello
pypm.toml[tool.ppm]
python = "^3.10" default_gpu = "auto"
[tool.ppm.backends] cpu.index = "https://download.pytorch.org/whl/cpu" cu121.index = "https://download.pytorch.org/whl/cu121" cu122.index = "https://download.pytorch.org/whl/cu122"
torch_prefer = "2.4.*" transformers_prefer = "4.43.*"
export PYP_WORKSPACE_ROOT=/path/to/project # override workspace detection
export PYP_DEBUG=1 # enable debug output export CUDA_VISIBLE_DEVICES=0 # control GPU usage
**Persistent memory logic loop with short-term KV context memory, Q-promise
deduplication, and Context+ long-term
memory graph designed to improve context retention and retrieval for coding agents.**
pmll-memory-mcp is a Model Context Protocol (MCP) server with complementary short-term KV and optional long-term graph layers. Server construction prefers MCPServer (mcp 2.x) and falls back to FastMCP (mcp 1.x) — see mcp/pmll_memory_mcp/server.py.
Ground tool names in code: TypeScript (mcp/src/index.ts) has 15 tools including graphql and names like create_relation; Python (mcp/pmll_memory_mcp/server.py) has 14 tools (no graphql) with several longer names such as create_memory_relation. A ctypes demo in Ppm-lib/pmll_mcp/ loads libqpromise.so via qpromise_*.
Memory layers:
PMLL.c::memory_silo_t.ตัดมาแค่ช่วงต้น อ่านต่อใน repo