Repository navigation
v0.2.0 — MCP server + host-agnostic Executor
What's new
pencil-sync-mcp — host-agnostic MCP server
pencil-sync now ships a second binary pencil-sync-mcp that exposes sync primitives as MCP tools. Any MCP-compatible host agent (Claude Code, Codex CLI, OpenCode, Gemini CLI) can use pencil-sync without spawning a nested claude subprocess.
7 MCP tools:
pencil_get_config— load configpencil_diff_design— diff .pen snapshot vs last synced statepencil_diff_code— diff code dir hashes vs last synced statepencil_detect_conflict— detect bidirectional conflictpencil_build_prompt— build the full LLM prompt for the host to applypencil_apply_fill_changes— deterministic CSS color substitution (no LLM)pencil_record_sync— persist sync state after edits
Executor interface (Option A)
All sync paths now go through an Executor interface (LocalClaudeExecutor is the only day-one implementation). Tests can inject a fake executor — no subprocess spawning in CI.
Stats
- 402 tests passing (up from 300)
- 0 TypeScript errors
@modelcontextprotocol/sdk+zodadded as runtime dependencies