Skip to content

About

Local Codex tool-output filtering with OpenAI Decisions by default and optional TypeSafe Jev support.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

Codex Decision

Codex Decision logo

Codex Decision selects repetitive lines for removal from supported local tool output. Errors and useful evidence stay visible. Every shortened result links to the complete original.

Codex Decision 0.14.0 — Download the integrated VSIX.

Get started

Install the single VSIX in Windows VS Code with a Linux x86_64 WSL environment:

code --install-extension codex-decision-0.14.0.vsix --force

The package contains the hook, skill, session controls, settings, and verified Codex UI patch. On activation it installs or updates the local plugin and repairs supported Codex builds. Existing plugin data and thread choices remain in place. Run Developer: Reload Window after the integration repair, then open your Codex thread. Review the hook in /hooks if Codex requests trust. No second package or manual composer patch is needed.

Use Decision: Check Integration for status and Decision: Repair Integration to restore the controls and reopen a hidden Decision panel. Unsupported Codex builds produce a visible diagnostic. See installation and upgrades for details and standalone CLI setup.

Temporary WSL or installer access failures retry automatically after 2, 5, and 15 seconds. Persistent failures identify the installation phase without exposing private process output. Configuration and security refusals remain visible immediately.

1. Connect Decision

Sign in to Codex, select OpenAI Decisions, TypeSafe Jev, or Custom provider, then test and save the connection in Connect Decision. The credentials stay out of chat.

Save a separate key for each provider and switch without entering it again. Decision settings show both saved-key states. Enable Use the other provider if needed for one automatic fallback when the primary key is missing or a provider request fails. Fallback is off by default; enabling it permits eligible output to reach either provider. Failed evaluations keep the full output.

For a custom provider, choose the OpenAI Decisions or TypeSafe Jev JSON schema and enter the complete endpoint URL and model ID. Authentication supports a bearer API key, username and password, a named API-key header, or no authentication. HTTPS is required except for a local loopback endpoint. The provider must implement the selected decision schema. A standard chat-completions endpoint needs a compatible adapter. Custom connections use only their configured endpoint and do not use automatic fallback.

Custom connection form with endpoint, model, JSON schema, and username and password fields

Connect Decision screen with an empty API key field

2. Turn Decision on or off

Click decision in the composer. Each thread remembers its choice. Eligible output is sent to the selected provider while Decision is enabled.

Decision on/off button on the Codex composer toolbar

The enabled indicator reflects API and hook health: green when healthy, red for a failure, and amber while checking or waiting for hook verification. Its tooltip and the Decision panel share the active thread's request counts, skipped-output counts, and latest hook outcome. A newer normal skip clears an older error. Codex dropdown menus cover the indicator.

Current composer tooltip showing two API requests, fourteen skipped outputs, and a normal short-output skip

3. Adjust the details

Open Codex settings → Decision to choose Monitor (keep full output) or Filter (shorten approved output). Manage the relevance cutoff, API key, and log retention here. Settings apply to all sessions.

Decision settings showing activity, API key controls, and log retention

4. Inspect a result

Open the Decision panel beside Terminal and Output. Blue rows mark proposed omissions; gold rows mark kept lines. Bars show relevance. Hover for excerpts and reasons. The latest hook status stays visible alongside the last line evaluation, so a later skip does not make an older evaluation appear current.

Decision panel showing 47 of 50 lines removed and persistent thread activity counts

Select Latest for the current result or Totals for the selected thread’s saved request attempts, validated responses, evaluations, removals, and skip reasons. Switching threads restores their own counters. Incomplete older history shows a lower bound (≥) or an unknown count (—).

Select Show raw skipped outputs beside the skip count to capture and inspect future skipped tool calls for that thread. Expand an entry to see its skip reason, tool input, and original response. Captured data stays in private local storage with bounded retention. Older skips have no saved raw payload. Turn the checkbox off to stop capture.

Decision panel showing the raw skipped outputs checkbox and a captured tool call with input and original response

Decision Totals view with saved session counts and reasons outputs stayed complete

Screenshots capture the current webview code with synthetic, key-free data. Code-mode scripts can still serialize the original tool result after a hook records a replacement, so the panel’s removal counts do not establish downstream token savings. See the processing investigation and troubleshooting.

The October 18 investigation bounds historical API participation at 8.04–8.44% of enabled invocations. Small outputs and exact source reads account for about 61%. Version 0.13.0 fixes 11 missed safe opportunities through validated wrappers, narrower diagnostic matching, and reviewed read-only routes. The paired synthetic cohort improved from 9/20 to 20/20 safe outputs evaluated, with no labeled evidence loss. A separate classifier holdout still kept all unknown formats. These tests do not predict the new workload rate. The UI labels hook estimates and unverified delivery explicitly.

Documentation

API key · Filtering rules · Privacy and safeguards · Tests · Startup and UI verification · Request reliability audit · Usage verification · Provider benchmarks

About

Local Codex tool-output filtering with OpenAI Decisions by default and optional TypeSafe Jev support.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages