~/chadacus.dev/ecosystem-update/2026-05-21

Ecosystem Update - 2026-05-21

May 21, 2026 · generated by the ecosystem-update Claude Skill

TL;DR

  • No Tier 1 source had commits since the 2026-05-20 run, but live search surfaced a Codex-native hook catalog and the official hook docs now confirm UserPromptSubmit as a supported turn-scoped event.
  • Safe Quick Win applied: wired the existing local prompt classifier to UserPromptSubmit, so route hints are generated before each turn without logging raw prompts.
  • The next worthwhile harness work is not wholesale skill import; it is a focused hook contract pass for apply_patch, PermissionRequest, and stop-gate output shapes.

Quick Wins

Item Source Type Impact Effort Action
UserPromptSubmit route classifier hook OpenAI Codex hooks docs, openai/codex hook parity issue hook 2 1 Wire existing /Users/chadsimon/.codex/bin/classify_prompt.py into /Users/chadsimon/.codex/hooks.json.

Auto-Implemented

  • Backed up config.toml, hooks.json, and all current agent TOMLs under /Users/chadsimon/.codex/backups/2026-05-21/.
  • Updated /Users/chadsimon/.codex/hooks.json with a UserPromptSubmit command hook that runs python3 /Users/chadsimon/.codex/bin/classify_prompt.py.
  • Verified hooks.json parses with python3 -m json.tool.
  • Smoke-tested the hook script with a synthetic auth prompt; it produced R4 high-risk: auth and wrote /tmp/codex-route-ecosystem-update-smoke.json.
  • Verified the edited hook scripts compile with PYTHONPATH=/Users/chadsimon/.codex/bin python3 -m py_compile ~/.codex/bin/classify_prompt.py ~/.codex/bin/codex_hook_common.py.
  • Ran TERM=xterm-256color codex --strict-config doctor --summary --ascii; result: 13 ok | 1 idle | 2 notes | 0 warn | 0 fail.
  • Ran python3 ~/.codex/bin/auto_runtime.py contract-check; it failed on pre-existing AgentOps memory citation records (MEMORY_CITATIONS_REQUIRED, 16 hard violations) and one advisory missing replan record. This is unrelated to today's hook edit but remains a closure hygiene issue for autonomous runs.

Build Queue

  • Stop-gate output-shape repair before wiring (hook) - OpenAI Codex hooks docs, How Boris Uses Claude Code /go - Existing completion_gate.py and what_would_chad_do.py scripts are present, but they emit stopReason without the documented decision: block or continue: false stop-control shape. Fix and test those outputs before adding them to Stop.
  • apply_patch hook coverage audit (hook) - OpenAI Codex hooks docs, am-will/codex-skills hook catalog - Current PostToolUse coverage is Bash-only, while Codex now documents apply_patch/Edit/Write matcher compatibility. Audit whether existing verification/failure-context scripts should observe file-edit events or whether a separate edit-specific hook is needed.
  • PermissionRequest conservative-profile miner (hook) - How Boris Uses Claude Code /fewer-permission-prompts, OpenAI Codex hooks docs - Build a report-only analyzer for repeated conservative-profile approvals before changing any allowlist or rules.
  • Codex hook catalog intake (skill) - am-will/codex-skills, hook catalog README - Evaluate the 51-bundle hook catalog one bundle at a time against the local trust model; consider only local, credential-free guards such as secret scanning, file protection, and scope/TDD gates.
  • Hook parity event matrix watch (research) - openai/codex issue #21753 - Track PermissionRequest, PostToolUseFailure, SubagentStart/Stop, TaskCreated/Completed, and PostCompact so local harness assumptions do not drift from the shipped event surface.
  • Recap/focus-mode local status intake (agent-pattern) - How Boris Uses Claude Code - Codex already has goals, subagents, and session state, but returning-to-session summaries could be improved through existing state files before adding any dashboard.

Research

  • Full Claude Code Hook Parity (29+) - Useful as a watchlist for future Codex hook events and handler types; current local hooks should stay conservative until events are shipped and documented.
  • Codex Hook Catalog - New community catalog has breadth, but the safe value is selective adaptation of tested local hook bundles rather than wholesale installation.
  • Tier 2 arXiv scan was skipped because tier2_last_run was 2026-05-20T10:33:24Z and this run began at 2026-05-21T10:30:41Z, just under the 24-hour threshold.

Already Have

gpt-5.5 power-user default, approval_policy = "never", sandbox_mode = "danger-full-access", prompt telemetry off, live web search, schema-linked config.toml, features.hooks = true, features.plugins = true, features.goals = true, features.prevent_idle_sleep = true, features.plugin_hooks = false, destructive app tools disabled by default, OpenAI developer docs MCP, omni-mem MCP, Stitch and Kickstarter MCP entries, Browser/Chrome/Computer Use/Documents/Spreadsheets/Presentations/Gmail/OpenAI Developers plugins, Bash PreToolUse guard, Bash PostToolUse verification ledger and failure-context hooks, SessionStart repo-context and config-posture hooks, UserPromptSubmit route classifier hook, Stop and PreCompact omni-mem hooks, read-only explorer/planner/reviewer/python-reviewer/typescript-reviewer/validator agents, scoped worker and chad-twin agents, bounded agent thread/depth/runtime caps, profiles.review, profiles.conservative, profiles.conservative-auto-review, conservative profile login-shell suppression, global placeholder pokegen disable, session-recall, rlm-scan, planning-gate, auto, drive, go, codex-security, security-audit, codex-runtime-doctor, what-would-chad-do, classify_prompt.py, completion_gate.py, what_would_chad_do.py, and stable codex-cli 0.132.0.

Rejected

  • Wholesale install am-will/codex-skills - rejected because it imports many skills/hooks and some require credentials, new tools, or new scripts; use audited single-bundle intake instead.
  • Enable plugin_hooks automatically - rejected because plugin-bundled hooks are executable code and still need trust review before global enablement.
  • Add prompt logging through UserPromptSubmit - rejected because global prompt telemetry must remain opt-in; today's hook stores only route classification, not raw prompts.
  • Wire stop-gate scripts immediately - rejected for today because the existing scripts need output-shape repair against the current documented Stop hook contract.
  • Enable native Codex memories automatically - rejected because local policy currently uses omni-mem as the default memory system and features.memories = false is intentional.
  • Edit AGENTS.md as a Quick Win - rejected by the ecosystem-update hard limit; constitutional policy changes require explicit direction.

Sources checked: https://github.com/hesreallyhim/awesome-claude-code, https://howborisusesclaudecode.com/, https://github.com/shanraisshan/codex-cli-best-practice, https://github.com/am-will/codex-skills, https://github.com/openai/codex/issues/21753, https://developers.openai.com/codex/hooks Tier 2 fetched: no; skipped because prior Tier 2 run was less than 24 hours old. Tier 3 fetched: no; skipped because prior Tier 3 run was less than 7 days old. omni-mem write: saved memory cc871842-e787-43e2-af4f-160ff6b9124f. Run at: 2026-05-21T10:33:31Z

// archive

← back to all digests