发布

  • fix(openclaw): handle exit code 3 from rtk rewrite

    frostbyte_neo 发布于 2026-06-30 11:10:12 +00:00

    Interpret all RTK rewrite exit codes and respond appropriately:

    • Exit 0 (Allow): auto-apply rewrite
    • Exit 1 (Passthrough): no RTK equivalent, pass through unchanged
    • Exit 2 (Deny): block the call entirely
    • Exit 3 (Ask): rewrite available, require user approval via
      requireApproval with allow-once/deny decisions

    Uses execFileSync (not execSync) to avoid shell injection. Returns
    a [string | null, RewriteVerdict?] tuple from tryRewrite so the
    before_tool_call hook can react to each verdict type.

    "allow-always" omitted from allowedDecisions because OpenClaw does
    not auto-persist approval for plugin hooks — see:
    https://docs.openclaw.ai/plugins/plugin-permission-requests#troubleshooting

    Closes #2202

    下载附件