[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-80191":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":9,"pushedAt":9,"updatedAt":26,"readmeContent":27,"aiSummary":28,"trendingCount":15,"starSnapshotCount":15,"syncStatus":16,"lastSyncTime":29,"discoverSource":30},80191,"deepseek-claude-code-worker-mcp","louchi1984-coder\u002Fdeepseek-claude-code-worker-mcp","louchi1984-coder","DeepSeek V4 code worker MCP for Codex Desktop, powered by Claude Code",null,"JavaScript",93,14,81,1,0,2,5,12,6,3.53,"MIT License",false,"main",true,[],"2026-06-12 02:03:59","# DeepSeek Code Worker MCP\n\nLanguages: [English](README.md) | [简体中文](README.zh-CN.md)\n\nCoding-worker MCP for Codex Desktop. Codex plans, delegates, and reviews; DeepSeek V4 does the expensive code reading, editing, and checking through Claude Code.\n\nGoal: **save Codex main-thread tokens, not DeepSeek tokens**. For suitable coding tasks, the intended workflow can reduce Codex main-thread token usage by about 40-60%.\n\n## Current Beta\n\nCurrent GitHub beta tag: `v0.3.20-beta.38`.\n\n## What It Does\n\n- Runs real coding work with DeepSeek V4 through Claude Code\n- Works separately from your normal Claude Code usage\n- Async worker tools: `start` \u002F `get` \u002F `tail` \u002F `wait` \u002F `cancel`\n- Supports long DeepSeek thinking without killing the worker by default\n- Returns status, changed files, snapshot diffs, policy, and checks\n- Uses scoped Claude Code permissions by default; `bypassPermissions` stays off\n- Includes `setup` \u002F `doctor` for install, auth, and environment checks, including a real `claude --version` probe\n\nThis is not a standalone DeepSeek client. It includes a small `claude-deepseek` launcher that runs the local Claude Code CLI against DeepSeek's Anthropic-compatible endpoint.\n\n## Quick Start\n\nThis project is not published to the npm registry yet. Use one of these two paths.\n\nGitHub \u002F no global install:\n\n```json\n{\n  \"mcpServers\": {\n    \"deepseek-code-worker\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"github:louchi1984-coder\u002Fdeepseek-claude-code-worker-mcp#v0.3.20-beta.38\"\n      ]\n    }\n  }\n}\n```\n\nSource mode, recommended for local development:\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Flouchi1984-coder\u002Fdeepseek-claude-code-worker-mcp.git\ncd deepseek-claude-code-worker-mcp\nnpm install\nnpm run mcp:setup\nnpm run mcp:doctor\n```\n\nSource-mode MCP config:\n\n```json\n{\n  \"mcpServers\": {\n    \"deepseek-code-worker\": {\n      \"command\": \"node\",\n      \"args\": [\"\u002Fabsolute\u002Fpath\u002Fto\u002Fdeepseek-claude-code-worker-mcp\u002Fsrc\u002Fdeepseek-worker-mcp.mjs\"]\n    }\n  }\n}\n```\n\nCheck a GitHub tag without installing:\n\n```bash\nnpx github:louchi1984-coder\u002Fdeepseek-claude-code-worker-mcp#v0.3.20-beta.38 --doctor\n```\n\nExpected shape:\n\n```json\n{\n  \"server_version\": \"0.3.20-beta.38\",\n  \"ok\": true\n}\n```\n\n## If the User Does Not Use Terminal\n\nPaste this into Codex Desktop:\n\n```text\nPlease install and configure this MCP for Codex Desktop:\nhttps:\u002F\u002Fgithub.com\u002Flouchi1984-coder\u002Fdeepseek-claude-code-worker-mcp\n\nRequirements:\n1. Install the MCP from GitHub.\n2. If Claude Code is missing, ask me for permission and install it.\n3. Run setup\u002Fdoctor.\n4. If a DeepSeek key is missing, open an interactive setup so I can enter it.\n5. Write the MCP server entry to ~\u002F.codex\u002Fconfig.toml.\n6. Tell me whether I need to restart Codex Desktop.\n```\n\n## Requirements and Auth\n\n- Node.js 20+\n- Claude Code CLI\n- DeepSeek API key\n- macOS \u002F Linux are primary targets; Windows is best-effort\n\nSetup can:\n\n- ask to install `@anthropic-ai\u002Fclaude-code` when Claude Code is missing\n- prompt for a DeepSeek API key and save it to `~\u002F.codex\u002Fsecrets\u002Fdeepseek_api_key`\n\nYou can also use:\n\n- `ANTHROPIC_AUTH_TOKEN`\n- `DEEPSEEK_API_KEY_FILE`\n- `CLAUDE_BIN`\n\nThe package does not bundle a DeepSeek key and does not modify your global Claude Code configuration.\n\n## Recommended Use\n\nStart a worker:\n\n```json\n{\n  \"name\": \"deepseek_start_implementation\",\n  \"arguments\": {\n    \"cwd\": \"\u002Fabsolute\u002Fproject\u002Fpath\",\n    \"task\": \"Make the requested code change.\"\n  }\n}\n```\n\nRead compact status:\n\n```json\n{\n  \"name\": \"deepseek_get_job\",\n  \"arguments\": {\n    \"job_id\": \"dsw_...\"\n  }\n}\n```\n\nRules:\n\n- Codex defines the task boundary\n- DeepSeek worker performs one implementation task\n- Codex asks MCP for status only when it needs facts about the worker\n- MCP reports observed facts: process state, changed files, diffs, checks, forbidden-path touches, and errors\n- Claude Code hooks record compact tool-action summaries when available\n- MCP does not suggest poll intervals, decide that quiet means stuck, or tell Codex when to take over\n- Codex reviews diff\u002Fchecks after terminal status\n- One clear implementation task should map to one worker. Do not start a second\n  worker for the same task while the first job is still running.\n- If a follow-up worker is needed after terminal status, include the previous\n  job id, terminal status, failure\u002Fcheck result, and current diff summary.\n- Do not request logs\u002Fevents\u002Fdiffs while the job is `running`\n- Do not use `deepseek_wait_for_job` as the main loop\n\nDeepSeek V4 Pro can spend about 10 minutes in one continuous thinking\u002Fquiet segment on complex code tasks. That is not cumulative job runtime.\n\n## Codex Token-Saving Discipline\n\nThis MCP saves tokens when Codex reads and writes less code. Recommended practice:\n\n- Give the worker a narrow task: one goal, clear boundaries, and explicit validation commands.\n- Do not make Codex read the whole codebase before delegating; pass only the project brief needed for this slice.\n- Put validation-generated side effects, such as eval reports, in `generated_paths` instead of widening `allowed_dirs`.\n- While a job is running, avoid logs, events, and diffs by default; read compact status only when facts are needed.\n- After terminal status, review only `files_changed`, key implementation ranges, checks, and known risks.\n- Large generated result files, eval outputs, log summaries, and snapshot documents should not be repeatedly read or edited by the worker by default. Prefer letting the worker change core implementation and let validation commands or the host produce generated outputs at the end.\n- Follow-up workers should receive only the necessary previous-result summary, not the full conversation history.\n\nKeep the project brief short, for example:\n\n```text\nProject brief:\n- Project: \u003Cone-line project goal>\n- Current slice: \u003Cmodule or feature boundary>\n- Task: \u003Csingle implementation goal>\n- Boundaries: \u003Callowed files\u002Fdirs>\n- Generated outputs: \u003Ceval reports or generated files>\n- Do not touch: \u003Cforbidden paths>\n- Validate: \u003Ccommands>\n- Previous result: \u003Cjob id + terminal status + relevant diff\u002Fcheck summary>\n```\n\n## Tools\n\n- `deepseek_start_implementation`: starts a background job and returns `job_id`\n- `deepseek_get_job`: reads compact job status\n- `deepseek_tail_job`: reads compact status; logs are opt-in\n- `deepseek_wait_for_job`: short observation window; does not kill the worker\n- `deepseek_cancel_job`: requests cancellation\n- `deepseek_implement_in_workspace`: synchronous mode for tiny edits\n\nLarge evidence is opt-in:\n\n- `include_logs: true`\n- `include_events: true`\n- `include_diff: true`\n\nDefault status output is intentionally small. It does not include poll hints, `suggested_action`, semantic state labels, pending-tool debug fields, or Claude argument previews.\n\nThe local build records Claude Code hook summaries in `tool-events.jsonl` inside each job directory. Default status exposes only a tiny `tool_activity` summary. Full hook\u002Fstream details require `include_events: true`. Hook summaries intentionally omit file contents, edit old\u002Fnew strings, and full command output.\n\n## Use Cases\n\nModel selection is core know-how for this MCP: use cheaper\u002Ffaster `deepseek-v4-flash` for ordinary implementation by default; switch to `deepseek-v4-pro[1m]` only when the task needs broad context, a debugging loop, complex reasoning, or multi-step agentic coding. The goal is to save Codex main-thread tokens, not DeepSeek tokens.\n\n| `use_case` | Default model | effort | Best for |\n| --- | --- | --- | --- |\n| `auto` | `deepseek-v4-flash` | `max` | general implementation |\n| `fast_patch` | `deepseek-v4-flash` | `high` | small patches |\n| `simple_agent_task` | `deepseek-v4-flash` | `high` | simple agentic coding |\n| `scaffold_or_tests` | `deepseek-v4-flash` | `high` | scaffolding, glue code, tests |\n| `debug_loop` | `deepseek-v4-pro[1m]` | `max` | reproduce, locate, fix, validate |\n| `agentic_coding` | `deepseek-v4-pro[1m]` | `max` | multi-step implementation |\n| `complex_reasoning` | `deepseek-v4-pro[1m]` | `max` | architecture, hard logic, failure analysis |\n| `long_context_codebase` | `deepseek-v4-pro[1m]` | `max` | broad codebase work |\n| `docs_generation` | `deepseek-v4-pro[1m]` | `high` | documentation |\n\nExplicit `model`, `thinking`, or `reasoning_effort` values override the preset.\n\nSelection rules:\n\n- Use `auto` by default\n- Use `fast_patch` for obviously tiny edits\n- Use `scaffold_or_tests` for tests, scaffolding, and glue code\n- Use `debug_loop` for reproduce, locate, fix, and validate work\n- Use the Pro[1m] presets for cross-file implementation, complex logic, or broad codebase context\n- Do not default to Pro[1m] just because it sounds stronger; also do not make Codex read the whole codebase before delegating\n\n## Permission Boundary\n\nThis MCP is not an OS\u002Fcontainer sandbox. Its guardrails are:\n\n- temporary Claude Code `dontAsk` settings per worker\n- a `PreToolUse` hook for clearly dangerous Bash, forbidden paths, and direct out-of-scope writes\n- Claude Code hooks for compact action logs\n- final workspace snapshot policy checks\n\nDefault `safety_mode` is `permissive`: Bash is allowed except clearly dangerous commands. Use `safety_mode: \"safe\"` to restrict Bash to read-only locator commands and explicit checks.\n\n`bypassPermissions` is disabled by default. Keep it off unless you add a real sandbox outside this MCP.\n\nUse `worker_profile: \"scoped_patch\"` with narrow `allowed_dirs` for tightly scoped patches.\n\nUse `generated_paths` for files that validation or eval commands are expected to\ncreate or update, such as `docs\u002FWORKFLOW_EVAL_RESULTS.md`. These paths are\nreported as `generated_changed` and are not counted as out-of-scope edits, while\n`forbidden_paths` still wins if the same file is forbidden.\n\nVersion `0.3.20-beta.38` principle: report actions, do not adjudicate. `allowed_dirs` changes outside the target scope are reported as facts, not automatically treated as failed work. `forbidden_paths` remains a hard failure. `allow_docs_only` is kept only for compatibility with older calls; documentation changes are reported and no longer fail just because they are docs-only.\n\nIf `doctor` reports `claude_code_version` as failed, the `claude` command exists\nbut is not a usable Claude Code CLI. A common cause is a wrapper script or stale\nshim that intercepts `claude --version`. Fix the local Claude Code install or set\n`CLAUDE_BIN` to the real Claude Code executable, then rerun `doctor`.\n\n## Verification\n\n```bash\nnpm run mcp:doctor\nnpm run mcp:smoke:stream\nnpm run mcp:smoke:permission\nnpm run mcp:smoke:restore\n```\n\nReal worker smoke:\n\n```bash\nnpm run mcp:smoke\n```\n\nThe real smoke requires Claude Code CLI and a DeepSeek key, and can take longer.\n\n## Status\n\nThis project is currently beta. It is suitable for internal projects and early adopters. Before a stable npm release, run a clean-machine install and real worker end-to-end verification.\n","DeepSeek Code Worker MCP 是一个为 Codex Desktop 设计的编码工作器，通过 Claude Code 驱动 DeepSeek V4 进行代码读取、编辑和检查。该项目利用异步工具如 `start`\u002F`get`\u002F`tail`\u002F`wait`\u002F`cancel` 来处理实际编码任务，旨在减少 Codex 主线程令牌使用量约 40-60%，同时保持长时思考不中断工作进程。它支持独立于常规 Claude Code 使用，并且默认采用受限权限以增强安全性。适用于需要高效利用计算资源进行复杂代码操作的场景，尤其适合开发者希望优化其开发环境中的资源分配情况。项目基于 JavaScript 开发，遵循 MIT 许可协议。","2026-06-11 03:59:35","CREATED_QUERY"]