Skip to content

安装 DevCodex 后,Cursor 的 progressive-skill-route hook 会 fail-close 所有写入(包括 skill_route 自己),Agent 完全无法改文件 #2

Description

@zhouavs

概述

在 Cursor 本地 IDE(macOS)安装 DevCodex 后,Agent 还能读文件,但任何写入都会被用户级 hook progressive-skill-route 直接拒绝。

更严重的是:这条 hook 要求先完成 skill_route,却连 CallMcpTool(skill_route) 自己也拦掉。路由走不通,写入也做不了,形成死锁。这不是某个项目的权限问题,换仓库同样写不进去。

README 里把类似现象写成 Windows / 旧版本 Hook 传输问题,并建议升级到 devcodex >= 1.17.3。本次发生在 macOS,卸载插件也不能让当前会话恢复写入,说明不只是 Windows 旧版问题。

环境

  • 宿主:Cursor 本地 IDE(不是 Cloud Agent)
  • 系统:macOS(darwin 25.5.0
  • 安装方式:GitHub / npm 发布的 DevCodex
  • 本机没有其他第三方 hook / skill 插件
  • 复现仓库:smart-listingmerchant-user(两个项目都被拦)

复现步骤

  1. 按 README 安装 DevCodex(全局包 + 用户级 Cursor 适配 / Plugin / MCP)。
  2. 打开 Cursor,在任意业务仓库开 Agent 对话。
  3. 让 Agent 读取某个源码文件(成功)。
  4. 让 Agent 对该文件做最小写入,例如末尾加一个空格。

实际结果

写入工具全部失败,错误为:

Error: progressive-skill-route

被拦的不只是改业务代码,还包括:

  • StrReplace / Write(改任意项目文件)
  • Shell(包括只读 ls 某些路径时也会被拦)
  • CallMcpToolskill_routecatalog / 空参数都不行)
  • profile_compose_entry_check
  • 读取 DevCodex 自己的 skill 文件
  • ~/.cursor 做 glob

同一会话里 MCP 仍显示为可用:

  • plugin-devcodex-workspace-devcodex-memoryready
  • plugin-devcodex-workspace-devcodex-profileready

skill_route 调不通,后续写入继续被 PreToolUse 拒绝。

换一个完全无关的仓库再测一次写入,结果一样。所以这是 会话级 / 用户级全局拦截,不是某个 repo 的沙箱或权限配置。

期望结果

  1. 安装 DevCodex 后,Cursor Agent 仍应能正常读写业务文件。
  2. progressive-skill-route 如果还没完成路由:
    • 不应 fail-close StrReplace / Write / Shell
    • 更不应拦截 CallMcpTool(skill_route)
  3. 要求先走 skill_route 的 hook,绝不能反过来把 skill_route 拦住。
  4. 若路由失败或 MCP 不可用,应 fail open(或明确降级为只提示、不阻断写入),而不是让 Cursor 变成只读。

现状

  • 读可以,写不行。
  • hook 名是 progressive-skill-route
  • 被它拦住的工具里,恰好包括完成这条 hook 所必需的 skill_route
  • README 将同类问题归因于 Windows 旧版 Hook;macOS 上同样出现,升级/卸插件也不能让当前会话恢复写入。

影响

安装后 Cursor Agent 无法改任何业务代码,等于这个宿主不可用。用户只能靠手动删 ~/.cursor/hooks.json~/.cursor/devcodex/,再完全退出 Cursor 并开新对话,才能恢复写入。

这不应当是安装后的默认行为。

相关

另有一条 issue 描述卸载后用户级 hook / 插件残留,导致卸掉 DevCodex 后 Cursor 仍然不能写。那是清理问题;本 issue 描述的是 安装后运行时就把写入死锁

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions