Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
Local-first intent and provenance for Codex, Claude Code, Cursor, Gemini CLI, and MCP agents.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"pathmark": {
"command": "npx",
"args": [
"-y",
"pathmark"
]
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add pathmark -- npx -y pathmark프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"pathmark": {
"command": "npx",
"args": [
"-y",
"pathmark"
]
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"pathmark": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"pathmark"
]
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 6일 점검
레지스트리 이름이 GitHub 계정 hacksurvivor 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.17)은 39일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, HotCodePush
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
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.
Manage over-the-air (OTA) updates for React Native, Expo, Capacitor and Cordova apps.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
Carry intent across agents without turning stale code facts into hidden memory.
Pathmark v0.1.17 stops Claude Code from gating every memory lookup:
pathmark setup claude-code --apply-permissions adds allow rules for Pathmark's ten local read-only tools, so recall and search run without a permission prompt, and in auto mode without a safety-classifier round-trip that can fail transiently;~/.claude/settings.json, adds only missing rules, keeps every other setting, and never rewrites a file it cannot parse;readOnlyHint/openWorldHint annotations, so anything that writes, deletes, or may call an external model always keeps its prompt.See the v0.1.17 release notes or the complete changelog. The npm badge above always shows the currently published version.
Pathmark gives Codex, Claude Code, opencode, Gemini CLI, Cursor, and any MCP-capable harness one local intent and provenance layer. Save decisions, constraints, preferences, and approved conclusions once. Use them from the next agent without pasting a recap.
Code remembers implementation. Pathmark remembers intent. Repository code, architecture, tests, CI, and intentional agent instructions remain authoritative for how the software works. Raw sessions are searchable evidence, not automatically trusted truth.
Your context stays on disk at ~/.pathmark/memory/memory.jsonl. You do not need an account, hosted database, API key, or vendor backend to start.
Pathmark is a Developer Tools submission for OpenAI Build Week 2026. The project existed before the challenge, so the submission is deliberately scoped to the meaningful extension built after the submission period opened on July 13, 2026.
During the eligible period, Codex with GPT-5.6 helped audit and extend Pathmark from a working local memory layer into safer long-running developer infrastructure:
The primary Codex session for this work is 019f5fc3-d7e6-7b41-8a30-d161c90b98fb. The qualifying release range is v0.1.6 through v0.1.7; the pre-challenge baseline is commit 4c0e87dfdbd2ba4c643abd8b887cc228bdb08b73.
See the Build Week implementation record for the before/after boundary, commit evidence, Codex collaboration details, and a fast judge test.
You do not work in one tool. You ask Codex to patch, Claude Code to review, opencode to clean up, and Gemini CLI to challenge the plan. Each tool starts cold unless you carry the context across.
Pathmark gives those tools one place to read and write intent and evidence:
remember, search_memory, recall_memory, session_trace, rate_recall, consolidate_memory, audit_memory, and conclusion-first chat / ask_memory.Pathmark stays provider-neutral. Codex gets one optional synthesis preset. The core server works with any MCP client that can use local tools.
Pathmark requires Node.js 22.5 or newer.
You switch tools during a coding session:
Pathmark keeps the notes in one store.
Point each harness at the same store:
Codex \
Claude Code \ opencode > Pathmark MCP > ~/.pathmark/memory/memory.jsonl Gemini CLI / Cursor /
Install Pathmark in each harness and point them at the same PATHMARK_STORE_DIR. One tool saves raw context with remember or proposes a durable conclusion with create_conclusion; an approved conclusion and raw evidence can then be recovered with recall_memory, search_memory, get_context, or ask_memory.
Pathmark sits below the agents as an intent, evidence, and provenance bus for your coding workflow.
Pathmark exposes these MCP tools:
| Tool | Purpose |
|---|---|
remember | Save raw searchable evidence. Raw evidence is not treated as durable approved intent. |
create_conclusion | Propose a higher-signal durable conclusion or preference. Approval is required by default before recall. |
search_memory | Search memories and conclusions. |
recall_memory | Transparent recall: returns context plus the exact memory IDs, timestamps, sources, matches, tags, and previews used. Accepts optional tags, exact ids, and compact includeRecords: false output. |
session_trace | Return a bounded chronological audit trail for one session: prompts, exact injected memory IDs, redacted tool inputs/results, and answers. |
rate_recall | Label exact IDs from a chat / ask_memory recall as relevant or irrelevant so audit precision is measured. |
get_context | Return compact context for a task or question. |
list_conclusions | List approved saved conclusions. |
list_pending_conclusions | Review bounded, paginated pending conclusion proposals. |
approve_conclusion | Atomically approve a proposal, optionally correcting text/tags and recording the reviewer. |
reject_conclusion | Retain a rejected proposal in the audit trail while permanently excluding it from recall. |
get_memory_snapshot | Generate a bounded USER/PROJECT/AGENT snapshot from approved canonical conclusions. |
consolidate_memory | Review a bounded unsynthesized evidence batch and optionally stage evidence-backed proposals. Nothing is auto-approved. |
delete_memory | Soft-delete a memory or conclusion by id. |
update_memory | Correct a record while preserving prior versions. |
supersede_memory | Replace an outdated record with a linked current record. |
purge_memory | Preview or apply permanent deletion by id, namespace, tags, source, or date. |
audit_memory | Measure capture-to-recall behavior, unused records, recall age, duplicates, stale raw hits, and whether precision labels exist. |
doctor_memory | Report duplicates, deleted/expired records, conclusions, and index health. |
compact_memory | Preview or apply deduplication, retention, and physical cleanup with an automatic backup. |
backup_memory | Create a point-in-time canonical JSONL backup. |
export_memory | Export a scoped mergeable JSONL bundle, optionally encrypted. |
ask_memory | Return an approved-conclusion answer or scoped raw context, exact provenance, and a recall ID for feedback. |
chat | Chat-compatible alias for ask_memory, including multi-intent conclusion retrieval and explicit abstention. |
get_config | Show local store configuration. |
npm install -g pathmark
Then add the MCP server to your client.
Prefer npm for normal installs. To test the current GitHub main branch directly:
npm install -g --install-links=true github:hacksurvivor/pathmark
Generate a setup snippet for your harness:
pathmark setup list
pathmark setup claude-code pathmark setup opencode --json pathmark setup gemini-cli pathmark setup kimi
See docs/compatibility.md for Codex, Claude Code, opencode, Gemini CLI, OpenClaw, Hermes Agent, Grok CLI, Kimi, GLM, and generic MCP setups.
codex mcp add pathmark -- pathmark
Codex users can also enable auto-capture:
pathmark codex install --replace-legacy-hooks
When you want the visible "what memory did you use?" entry in Codex, Claude Code, Cursor, opencode, Gemini CLI, Grok-compatible MCP hosts, or any other MCP harness, call the recall_memory tool before answering. Codex session start injects an approved conclusion snapshot. Before non-trivial prompts, Codex recalls approved conclusions first and uses fresh scoped raw evidence only as a bounded fallback. recall_memory remains the portable visible trace across harnesses.
claude mcp add --scope user pathmark -- pathmark
pathmark setup claude-code --apply-permissions
The second command lets Pathmark's local read-only tools (recall, search, diagnostics) run without a permission prompt, including in auto mode, where they would otherwise wait on the safety classifier. It backs up ~/.claude/settings.json, adds only the missing allow rules, and leaves everything else untouched. Tools that write or delete memory still ask.
--scope user makes Pathmark available in every project; Claude Code's default scope only covers the current directory. For automatic capture and session-start recall (including after context compaction), merge the hooks block from pathmark setup claude-code into ~/.claude/settings.json.
Claude Code's built-in auto-memory lives in per-project folders the other agents cannot see. Bring it into the shared store as evidence (re-runnable; edits update in place with history, and records you delete in Pathmark stay deleted):
pathmark import-native claude-code --dry-run
pathmark import-native claude-code
Use the generated snippets:
pathmark setup opencode
pathmark setup gemini-cli
Add this to your Claude Desktop MCP config:
{
"mcpServers": { "pathmark": { "command": "pathmark", "env": { "PATHMARK_STORE_DIR": "~/.pathmark/memory" } } } }
Add the same command to Cursor's MCP server settings:
{
"mcpServers": { "pathmark": { "command": "pathmark" } } }
npm install
npm test npm run coverage
Run directly:
PATHMARK_STORE_DIR=.pathmark npm run dev
Pathmark can import a compatible local JSONL memory store without deleting or moving the source files.
npm run import:legacy -- --source-dir ~/old-codex-memory
Defaults:
Legacy source: ~/.pathmark/legacy/codex
Pathmark target: ~/.pathmark/memory/memory.jsonl
The importer creates a memory.jsonl.backup-* file before writing, uses deterministic ids so reruns skip duplicates, and redacts obvious KEY=..., TOKEN=..., PASSWORD=..., and Bearer ... values. It uses the same store lock as live MCP and Codex writers, so an import cannot overwrite records captured concurrently.
Use a dry run fir
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요