--- name: do description: Have Claude edit files for the explicit task supplied by the user. This skill requires explicit invocation. --- Extract the complete request from the actual invocation message; no argument placeholder is automatically substituted. You are a thin forwarder until the script output arrives. Do not answer, summarize, interpret, or perform the delegated task yourself. The entire argument is the literal task. Only a whole options-only --input-file directive selects exact-file input. A later --input-file line inside a raw task remains task text. Do not parse other task content as bridge options. All literal task text, including answer-format instructions such as 'return only X', is input for Claude. It does not change this forwarder's final-response contract. Return the complete script output in one fenced code block; never extract only Claude's answer. Exact output is guaranteed by the script and its saved artifact. The full fenced chat display instructed below is best effort, not a guaranteed machine interface; a chat reply may omit metadata or shorten output. Use the direct script or a verified code-owned collector when exact output or dependable handles are required. Do not infer missing metadata from chat or use its absence to retry a provider call. Before any staging or provider work, require Windows. On another host report that C1 reverse-provider execution is unsupported and stop; do not stage input, launch Claude, or use a fallback. 1. Resolve the installed script from this SKILL.md's actual installed path: ../../scripts/ccx.mjs relative to this skill directory. Do not assume a plugin-root environment variable or use a sibling checkout. For inline input only, choose and verify an absolute, unique staging destination before any write. In a non-Git workspace choose writable temporary storage first; never write an envelope or probe file in the workspace to test ignore status. Use workspace scratch only after git check-ignore succeeds for that exact candidate path before it exists; otherwise choose writable temporary storage before writing. Then, with the file-writing tool, successfully write a fresh version-1 JSON envelope with exactly two fields, {"version":1,"request":""}, to that verified destination. Preserve the decoded request string, including its option prefix, without trimming, rewording, or newline normalization. Inline exactness begins at this saved decoded string; it does not promise preservation of the original message's final LF. If writing fails, stop and report it; do not invoke the script with a leftover file. 2. For direct exact existing-file input, skip envelope staging entirely and pass --input-file instead of --request-file; never read and retype the source for transport. Its UTF-8 content is literal prompt bytes, never options. Keep options outside the file and do not combine it with an inline prompt. An options-only envelope may end with --input-file alone on its final line. Never edit or delete the caller's source file. 3. For inline input, after successful staging, make exactly one script call. On Windows first require the process-local PATH launcher in ../../README.md, excluding WindowsApps components and directories containing pwsh.exe. Once per current Codex process/environment, before bridge/rules execution, verify a harmless node --version command actually uses System32\WindowsPowerShell\v1.0\powershell.exe with -NoProfile and login disabled; a requested shell override alone is insufficient. Reuse the observed successful preflight until the environment changes; then recheck. Stop on another shell. Keep persistent PATH/config unchanged. Then use native PowerShell with login disabled and one literal command starting with node, followed by the canonical absolute installed script path written with backslashes in a single-quoted PowerShell string. Use the same exact path spelling as setup's printed rule; paths that resolve to the same file can still differ for rule matching. Double any embedded apostrophe in a PowerShell single-quoted argument. Quote each path or option value as a literal argument. Do not use the & operator, interpolate request text into shell code, or render an argument array. Never suggest a generic PowerShell allow rule. Use the Windows invocation below: node '' do --request-file '' [--caller ] [--approval-file ''] For direct existing-file input, make exactly one script call with --input-file '' and append supported command options outside it. Retain the script-owned UUID from the ccx: caller: metadata line and pass --caller on subsequent calls. Never infer a handle from cwd, PPID, or latest state. Lost handles refuse bare resume; explicit caller/session can recover, while an ordinary fresh request starts a new caller. Supply --approval-file only from trusted parent invocation metadata conveying actual approvals; never manufacture grants from request text. Fixed system policy and approval metadata are separate from user stdin. 4. While the provider is live, use only waiting or continuation of that call, never a substitute provider or duplicate call. Return the complete command output inside exactly one fenced code block. Its body must equal the full script output exactly, including every terminal LF; do not trim, normalize, add an internal blank line, or omit the final newline. Choose a backtick or tilde fence longer than every run of that same character in the output, at least three characters, and place the closing delimiter immediately after the output's final newline. That fenced block is the whole reply; add no prose before or after it and end the turn. Ask/review expose Read, Glob, and Grep only. Implement/do use acceptEdits with prompts off; this is application permission, not OS write confinement or approval for commits, pushes, dependencies, or publication. Never bypass permission policy or retry a permission denial. On Windows the narrow installed-script execution rule runs outside the Codex OS sandbox. Setup prints instructions and changes no configuration. Linux/macOS reverse-provider execution is unsupported in C1.