- suggest-compact hook now reads the latest usage record from the session transcript and suggests /compact at a window-scaled token threshold (160k/200k window, 250k/1M window; COMPACT_CONTEXT_THRESHOLD and COMPACT_CONTEXT_INTERVAL overridable), re-firing per 60k-token growth bucket; tool-call count stays as the secondary signal (#2155) - Codex repo marketplace now points at ./plugins/ecc instead of ./ — Codex never discovers plugins whose local marketplace source.path is the marketplace root (verified on Codex CLI 0.137.0); plugins/ecc is a thin folder referencing root skills/.mcp.json per maintainer direction on #2097; docs flag plugin mode as experimental with the upstream blocker openai/codex#26037 linked (#2128) - README badges for installs/stars/forks now use shields endpoint badges backed by api.ecc.tools (live install count 3,712 vs the stale static 150), which also eliminates shields' 'Unable to select next GitHub token from pool' render in the stars badge Closes #2155 Closes #2128
.codex-plugin — Codex Native Plugin for ECC
This directory contains the Codex plugin manifest for ECC.
Structure
.codex-plugin/
└── plugin.json — Codex plugin manifest (name, version, skills ref, MCP ref)
.mcp.json — MCP server configurations at plugin root (NOT inside .codex-plugin/)
What This Provides
- 249 skills from
./skills/— reusable Codex workflows for TDD, security, code review, architecture, and more - 6 MCP servers — GitHub, Context7, Exa, Memory, Playwright, Sequential Thinking
Installation
Codex plugin support is marketplace-backed. The repo exposes a repo-scoped
marketplace at .agents/plugins/marketplace.json; Codex can add and track that
marketplace source from the CLI:
# Add the public repo marketplace
codex plugin marketplace add affaan-m/ECC
# Or add a local checkout while developing
codex plugin marketplace add /absolute/path/to/ECC
The marketplace entry points at plugins/ecc/ — Codex does not discover
plugins whose local marketplace source.path is the marketplace root (./),
so the entry must target a concrete plugin subdirectory (see
#2128). That thin plugin folder
references the root skills/ and .mcp.json so content stays single-sourced.
After adding or updating the marketplace, restart Codex and install or enable
ecc from the plugin directory.
Plugin mode is currently fragile on Codex. Marketplace discovery and install work with this layout, but runtime skill loading from local/repo marketplaces is unreliable upstream (openai/codex#26037) — Codex copies only the plugin folder into its install cache, so parent-referenced content may not be exposed in a fresh session. The safer, fully supported path today is the manual sync flow:
npm install && bash scripts/sync-ecc-to-codex.sh.
Official Plugin Directory publishing is coming soon. For official OpenAI
plugin-directory review, package this repo under the openai/plugins
repository shape: plugins/ecc/.codex-plugin/plugin.json,
plugins/ecc/skills/, and the supporting README/assets. Until that listing is
accepted, treat the public repo marketplace as the supported Codex distribution
path and keep release copy framed as repo-marketplace/manual installation.
The installed plugin registers under the short slug ecc so tool and command names
stay below provider length limits.
MCP Servers Included
| Server | Purpose |
|---|---|
chrome-devtools |
Interactive browser debugging via Chrome DevTools (CDP sessions, performance traces, console/network inspection) |
The former defaults (github, context7, exa, memory, playwright, sequential-thinking) were retired in the June 2026 connector audit — their jobs are covered by skills wrapping CLIs/REST APIs or by harness-native features. They remain available as opt-in entries in mcp-configs/mcp-servers.json. See docs/MCP-CONNECTOR-POLICY.md for the policy and the per-connector rationale.
Notes
- The
skills/directory at the repo root is the source of truth for the Codex plugin package; do not duplicate skill content inside.codex-plugin/. - ECC is moving to a skills-first workflow surface. Legacy
commands/remain for compatibility on harnesses that still expect slash-entry shims. - MCP server credentials are inherited from the launching environment (env vars)
- This manifest does not override
~/.codex/config.tomlsettings