HumanToAction / Codex plugin / 2026
Giving Codex separate routes for execution, handoff and review.
HumanToAction uses explicit activation and destination-aware instructions to refine work in place, prepare a handoff or return audit findings without conflating those requests.
- ROLE
- Software engineering
- STATE OF THE BUILD
- In progress
- RECORD UPDATED
- PUBLIC SOURCE
- View on GitHub
THE WORK
The project.
HumanToAction helps turn a request into a clearer task while preserving the kind of work being asked for. Continuing the current task, preparing a copyable handoff and reporting an audit each have their own route. The skill organizes known facts, uncertainty, authority and stopping conditions before directing the assistant's next action.
In version 0.2, I removed the automatic prompt hook and disabled implicit invocation. The plugin now requires explicit selection, supported by checks on the manifest, metadata and instructions. Those checks protect the package's activation settings; evaluating whether a model chooses the right route remains a separate job.
IMPLEMENTATION
Design choices.
- Explicit activation is reflected in the package as well as the prose. Removing the prompt hook and setting allow_implicit_invocation to false removes the automatic entry path instead of relying only on an instruction not to use it.
- Refining a task doesn't always need a new artifact. The same-task route keeps that work internal and continues, while an explicit new-task or handoff destination produces copyable instructions. The destination changes the output, not just its heading.
- Audit mode returns findings unless a rewrite is also requested. Keeping review and execution separate preserves the user's scope, although the host model still has to apply that distinction in the conversation.
- Structural tests cover settings that can be asserted directly, such as a restored hook or changed policy flag. Conversation-level routing and false activation need model evaluation; checking fixture text cannot stand in for observing an assistant's choices.
HOW IT FITS TOGETHER
Architecture.
- The runtime consists of a plugin manifest and one bundled Codex skill. Version 0.2 has no UserPromptSubmit hook or hook directory, and allow_implicit_invocation is false. Ordinary prompt-refinement language is no longer intended to activate the package by itself.
- Once selected, the skill separates established facts from inferences and unknowns, then identifies the permitted work and stopping conditions. It directs current-task refinement to stay internal, an explicit handoff to become a copyable artifact, and an audit to return findings unless changes were also requested.
- Python tooling checks the repository around those instructions: manifests, required files, activation metadata, public-text rules, routing fixtures and pinned CI references. It runs as development validation, not as a background model or runtime service.
- The unit tests assert that hooks are absent and the activation flag and required instruction text remain present. Fixture checks verify invocation markers and case IDs. They can catch a packaging regression, but they don't send conversations to a model or judge its response.
Explore the architecture map9 components · 8 connections
Explicit plugin use, with three ways to continue
The instructions require explicit selection before gathering context and choosing what to do next. File checks validate the package, not every model decision.
Invocation and current task
Instruction routing
Review and package checks
Scroll or drag the background to move. Use the zoom buttons to resize.Arrow keys move between components. Enter selects.
Choose a component to explore
Select a numbered component on the map or use the component menu. Its details and connections will appear here.
No component selected.
All connections (8)
- 01 · User request → 02 · Explicit-only activationCheck explicit invocation · Direct call
- 02 · Explicit-only activation → 05 · Ordinary domain workflowNot invoked · Blocked / denied
- 02 · Explicit-only activation → 03 · Context ledgerSelected explicitly · Direct call
- 04 · Repository validator → 02 · Explicit-only activationStatic package assertions · Direct call
- 03 · Context ledger → 06 · Destination and authorityMaterial context and constraints · Direct call
- 06 · Destination and authority → 07 · Current-task executionSame task · Direct call
- 06 · Destination and authority → 08 · Exported handoffNew task or reuse · Direct call
- 06 · Destination and authority → 09 · Audit findingsAudit or critique only · Direct call
MADE WITH
Codex plugin · Markdown · Python validation
ACCESS & INPUT
Security controls.
- The skill treats an audit as permission to inspect and report, not permission to rewrite or execute. This is an instruction to the host assistant, so its effectiveness still depends on instruction-following behavior.
- The package embeds no background model or network service. The host assistant processes the selected skill and conversation outside the plugin's own runtime.
SELECTED DEVELOPMENT RECORD
Engineering changes.
Implementation dates come from project records. “Recorded” is the date this portfolio entry was written.
Making plugin activation an explicit choiceremovedRecorded
Version 0.2 removed the automatic prompt hook and its Python runtime, and disabled implicit invocation. Repository checks protect those settings; model routing still requires a separate evaluation.
Source observedChanged
CHECKS & RESULTS
What was checked.
A source review shows what the code does. It is not a fresh test of the running app.
Code and development records reviewedReviewed
The code, tests and available development records were checked. Reported test results keep their original scope. No fresh app or live deployment check was run for this write-up.
- Scope of this check
- Code review, not a fresh run of the app
NEXT
Still to work through.
The package can test that explicit activation is configured, but not that every assistant will interpret a conversation correctly. The next evaluation needs actual outputs for ambiguous handoffs and audit-only requests, checking both the selected route and whether the assistant stayed within the requested work.