Repository navigation
Gajendra 0.4.0 — October 7, 2026
One clear focus across your AI tools.
Get the Codex plugin · Mac setup · User guide
This source release brings the native macOS utility and Codex plugin onto the same local work model:
one NOW, ordered Focus and Important, provider-reported Running, and Ready for Review. User intent
controls Finish/Reopen and exact continuation links. Provider sessions remain with their owners.
What changed
- Faster reads and local changes. Prepared catalog reads and a shared local backend make everyday reads and priority changes fast.
Source refreshes are coalesced; catalog/configuration/activity revisions prevent reuse across
invalidation boundaries. Durable state uses atomic writes, revision checks and retry keys. - Fewer provider scans. Normal Codex listing uses its supported metadata-only API. Full reconciliation remains periodic;
fresh evidence is still required when acknowledging a review. - Review with Undo. Review acknowledgement removes only the selected response and keeps priorities. Retry/Undo,
external client changes and newer responses have explicit handling. History distinguishes
reviewed responses and intentionally finished work. - Continue in the right chat. Exact continuation selection retains prior chats and transfers priority/context/NOW together.
- A more consistent Mac utility. The launcher reconciles visibility with Spaces. Priority headers and compact controls are
consistent across native and embedded surfaces. - Smoother interaction. Titles crossfade their emphasis within a fixed footprint; row surfaces and buttons respond to
pointer interaction. Keyboard commands remain immediate. Reduce Motion preserves static feedback. - Development with evals. Added six product evals, with synthetic acceptance cases and machine-readable results in CI and the release gauntlet.
- Current screenshots and guides. Refreshed the real UI screenshots, Focus Deck hero/background, README and contribution/conduct guidance. Reviewed both MIT license copies; no terms changed.
- Dependency updates. Reconciled the dependency PRs in order, retaining the compatible MCP Apps 1.x API and patched MCP SDK 1.31.0. MCP Apps 2.x requires a separate SDK migration.
Measured performance
Same machine, enabled sources, bundled runtime and isolated copies of local state; three samples
per before/after operation. Synthetic collapse writes were used. These are CLI/backend timings,
including process overhead, not render times or production percentiles.
| Operation | Before median | After median | Change |
|---|---|---|---|
| Warm provider refresh | 15.05 s | 0.80 s | 94.7% lower |
| Local state write | 15.92 s | 0.11 s | 99.3% lower |
| Prepared read | New endpoint | 0.12 s | Ready catalog plus current state |
A later installed-build check recorded 90–94 ms prepared reads, 646–671 ms warm refreshes and
2.86 s for the first refresh with a new backend. The motion/release pass does not change the
listing algorithm. Ordinary and fast listing had equal indexed coverage in the comparison.
Full reconciliation can still take the previous scan time; unindexed provider metadata may lag
until it runs. No pagination, resource bounds or review freshness checks were removed.
Install and update
The v0.4.0 GitHub release contains the
merged source and gajendra-codex-plugin-0.4.0.zip with a SHA-256 checksum. The ZIP contains the
complete 17-file runtime plugin; it is not a notarized macOS installer. The internal package and
repository marketplace version are 0.4.0. The earlier v0.4.0-rc.1 remains a separate historical
prerelease; its tag has not been moved.
See Codex plugin setup for the repository marketplace. Plugin-only use
requires Node.js matching package.json and locally available provider executables. Reopen the
panel/reload the host after updating to pick up both tools and UI. The optional native app is built
from source with a bundled Node runtime; see the repository README.
The repository package is available for local installation. Official directory review is a
separate process; see submission readiness.
Known limits and remaining user checks
- No notarized downloadable native app or mobile companion is shipped. macOS clean-account,
physical VoiceOver, login-item and manual drag checks remain separate from scripted evidence. - Provider availability and bounded discovery can leave a saved priority outside current results;
it stays preserved and the UI explains the condition. - An expired or offline cache is visibly a saved view with neutral activity. It is never evidence
of current Running or Ready status. Local changes can use that view while refresh catches up. - Lifecycle hooks are optional and require host trust. Polling remains the fallback.
- The backend is a reversible session process with a private Unix socket, not a system service.
It exits after idle use.GAJENDRA_SHARED_BACKEND=off,GAJENDRA_CODEX_FAST_LIST=offand
GAJENDRA_METADATA_CACHE=offare independent rollback switches; restart clients after changes. - Preserve your state and backup when downgrading; older writers can discard newer optional fields.
The PR, hosted checks and source release are separate receipts. A source release does not
certify OpenAI directory approval, code signing/notarization, or performance on every machine.
Verification
169 source tests and 31 browser journeys passed, with five source-suite repetitions and all
155 repeated browser cases passing, along with native self-tests/build, strict
signature validation and bundle checks. The native installed synthetic review/Undo and priority
journeys, and plugin review/Undo journey, were inspected through CUA. User state stayed unchanged.
The release gauntlet's --non-native-ui mode records 19 passing gates and three not run,
reporting a partial run: its AX-based native
launcher/fullscreen/performance gates are deliberately not executed in the restricted UI-control
environment. Narrow CUA checks do not replace those broader receipts. No full-gauntlet or native
latency claim is made for this release. Hosted CI is reported on the PR separately.
Runtime dependency patches bring the production dependency audit to zero findings. The full
development audit still reports the unpatched braces nested-pattern denial of service
through vite-plugin-singlefile/micromatch (three affected package entries). This dependency is
build-only; our single-file plugin uses an empty inlinePattern, bypassing that matching path.
No untrusted pattern is accepted by this build. No forced downgrade or broad dependency migration
is included.
Repository update
Fresh product screenshots, eval acceptance criteria and current community documentation are included in PR #47. The README and repository homepage now describe both the macOS utility and Codex plugin.
Documentation icons and navigation were polished in PR #48. The v0.4.0 tag and downloadable artifacts are unchanged.
