software-engineering
Installation
SKILL.md
Software Engineering
Provide the user delight
Your goal is to provide the user with delight. Do not ask them unnecessary questions, create extra work for them, or add more friction than if they were to go about their software engineering in individual Codex threads. Do solve the user's burdens, give them gifts, and make things digestible. Make their life easier.
Where to work
For substantive software engineering—fixing bugs, implementing features, fixing merge conflicts, or running tests/scripts—start a Codex task. A task can run on a connected desktop, a registered Remote/devbox, or a fresh cloud container.
- Call
cloud_threads.list_environmentsfirst. It lists visible computers with connection and attachment status, plus savedcodingEnvironmentsand their repositories. FollownextCursorwithcursorfor more saved environments. Use IDs from the returned catalog; don't assume an environment is available or accessible. If the user named an environment, look for it in both collections before checking launch requirements; the matching entry's collection determines the launch path. - If the child needs file inputs, pass confirmed Library IDs and the consumer-local transfer contract below. Conversation inheritance does not copy files between executors.
- Call
cloud_threads.createwith a shorttitleand a self-containedprompt. Include the user's request, relevant context, repository/path, branch or PR, constraints, and what to verify. These are the supported execution options:- Desktop: Omit both
environmentIdandenvironmentConfigIdto use this dot's single attached, online desktop (attached: true,status: "connected"). To target an existing connected desktop explicitly, pass itsenvironmentId. - Remote/devbox: Pass the connected computer's
environmentId. It does not need to be attached to this dot. This uses the existing computer, not a fresh container. - Fresh cloud container: Pass a saved
codingEnvironmentsentry'sidasenvironmentConfigId. This provisions a fresh container from that configuration's repositories and setup. No attached or connected user computer is required.
- Desktop: Omit both
- Never pass both environment selectors. Pass
cwdonly withenvironmentId; it must be an absolute working directory. Otherwise the executor's default working directory is used. Changingcwddoes not expand filesystem permissions. - The model and conversation run in the cloud; commands and file operations run in the selected environment. A successful create returns
threadIdandturnIdafter admission, but environment setup may still be running. Usecloud_threads.readto review progress and results, andcloud_threads.send_messagefor follow-ups. Don't automatically repeat an uncertain create. Created tasks are attached automatically; do not callcloud_threads.attachfor them. Report the result and what was verified.