Codex instance audit

What is installed, what is actively used, where duplication has accumulated, and the cleanup decisions to make next.

Codex health
0 failures
Doctor reported 0 warnings and 0 failures
Installed plugins
12
All currently enabled
Logical custom skills
21
29 catalog entries because 8 are duplicated
Codex data
24.8 GiB
Mostly worktrees, sessions, logs, and temporary data
Overall assessment

The core setup is healthy and the most important operator tooling is heavily used. The mess is concentrated in duplicate skill installations, stale configuration, redundant integration paths, overly broad skill triggers, and generated storage.

Audit basis

This was a read-only audit performed by nine focused subagents. It used the live Codex configuration, codex mcp list, codex plugin list, Codex Doctor, current tool discovery, filesystem inventories, 2,470 retained rollout files, and recent successful-tool telemetry.

The retained session window ran from January 22 through June 26. The 30-day analysis covered 1,360 threads and the 90-day analysis covered 1,823 threads. Distinct-session counts are more meaningful than raw reads because a skill can be loaded repeatedly inside one task.

Custom skills

There are 21 logical non-system capabilities. Eight Cloudflare-related skill trees are byte-for-byte duplicated under both ~/.agents/skills and ~/.codex/skills, producing 29 catalog entries.

Custom and shared skills
SkillRecent evidenceAssessment
sveltekit-runtime-patterns171 sessions in 30 daysKeep Core Svelte runtime guidance
cloudflare67 sessionsKeep and repair Useful router, but oversized and overly broad
workers-best-practices40 sessionsKeep Focused production review rules
feature-pr-orchestrator30 sessionsKeep Proven delegated feature workflow
wrangler26 sessionsKeep and trim Useful but 922 lines and version-sensitive
impeccable26 sessionsKeep Explicit-only activation boundary
estimate-agent-usage30 sessionsKeep Established local usage accounting
agents-sdk7 sessionsKeep one copy Focused Cloudflare agent guidance
durable-objects8 sessionsKeep one copy Useful stateful-system specialist
effect-v4-serverless-patterns10 sessionsKeep Focused and deliberately reviewed
expo-ios-device-operator7 sessionsKeep Valuable physical-device evidence ladder
expo-serve-sim3 sessionsKeep Niche but concrete simulator workflow
update-nas-executor3 sessionsKeep High-value safety runbook
workflow-capture9 sessionsKeep Explicit reusable-workflow capture
youtube-thumbnail-concepting6 sessionsKeep and repair Image-generation turn contract conflict
btca-local5 sessionsKeep and repair Good explicit trigger; malformed closing tag
cloudflare-email-service3 sessionsDecide Useful but overlaps the umbrella skill
sandbox-sdk4 sessionsDecide Low-use specialist with umbrella overlap
web-perf4 sessionsRewrite or remove Requires Chrome DevTools tools not currently exposed
hatch-pet3 sessionsDecide Large bespoke workflow with no installed pets
columbia-pagesLow-frequency direct useKeep Produces hosted reports such as this one

Managed and plugin-provided skills

  • System: imagegen, openai-docs, plugin-creator, skill-creator, skill-installer.
  • Browser control: Browser, Chrome, and Computer Use skills.
  • GitHub: general GitHub orientation, address review comments, fix CI, and publish changes with yeet.
  • Codex Security: scan, deep scan, diff scan, discovery, validation, attack-path analysis, threat modeling, triage, fixes, and issue tracking.
  • Artifacts: documents, PDF, presentations, spreadsheets, and template creation.
  • Other: Remotion video guidance and Gmail workflows.

Skill quality findings

  • The eight duplicate trees consume only about 1.6 MB, but the real cost is duplicate prompt registration and ambiguous ownership.
  • The Cloudflare umbrella contains 63 reference areas, invalid frontmatter, three broken internal references, and a backup file. Its trigger overlaps nearly every focused Cloudflare skill.
  • Some Cloudflare skills install packages, start development tooling, or enable services during preflight. Those flows should begin read-only and respect the repository package manager.
  • The empty codex-primary-runtime directory provides no capability.
  • The composio-cli skeleton has support files but no SKILL.md, so it cannot load.

Plugins

Twelve local plugins are installed and enabled.

Installed plugin bundles
Plugin groupPluginsRecommendation
Strongly activeGitHub, Browser, Chrome, Computer Use, Codex SecurityKeep
Low-use but smallPDF, RemotionKeep or disable by preference
No observed useDocuments, Presentations, Spreadsheets, Template CreatorDisable until needed
Minimal valueConvexRemove unless scaffolding is wanted

Gmail, GitHub, and Convex also have app-synchronized remote plugin caches. The GitHub connector is active. Gmail is also genuinely active: recent telemetry recorded 21 successful Gmail calls across seven Desktop threads. Convex had one recent call.

The configured claude-plugins-official marketplace occupies about 12 MB but has no installed plugins. The legacy browser-use@openai-bundled-beta entry is enabled in configuration but no longer exists in the current plugin inventory.

MCP servers and app connectors

Effective MCP server inventory
ServerState and evidenceRecommendation
node_replEnabled; heavily used by Browser and ChromeKeep
computer-useEnabled; recent successful desktop-control activityKeep
openaiDeveloperDocsEnabled; recent successful official-doc callsKeep
codex-securityEnabled; healthy tools and active security workflowsKeep
github HTTP MCPEnabled but direct PAT path has no calls; duplicates the app connectorSeparate or remove
codebase-retrievalDisabled; 595 historical calls but none in 90 daysRemove stale config
App connectors visible to Codex
ConnectorUseRecommendation
GitHubHeavy recent use across repository and PR workflowsKeep
Svelte ServerHeavy documentation and autofix useKeep
Gmail21 successful calls across seven recent Desktop threadsKeep
ConvexOne recent call; repository tooling covers most real workRemove unless intentionally wanted
BotmailUnused implicit platform connectorIgnore or hide

Configuration and instructions

  • config.toml is 618 lines and contains 143 trusted-project entries; 40 target paths no longer exist.
  • Three disabled skill configuration entries target nonexistent files.
  • The global rules file contains 30 mostly one-off historical approvals, including destructive commands. They are redundant under the current no-approval posture.
  • The configured security posture is broad: unrestricted filesystem, network access, no approval prompts, and Browser navigation/upload approvals set to never ask.
  • The global instruction to read every file in full can force huge, generated, binary, or secret-bearing files into context. It is useful for authored source files but costly as an unconditional rule.
  • The notification helper, desktop preferences, feature infrastructure, and keybindings are coherent and should remain.
Safety posture to review deliberately

The autonomy settings are internally consistent, but full machine access, no approvals, logged-in Chrome control, and automations that can move files create a large combined blast radius.

Automations

Recurring Codex workflows
AutomationCurrent behaviorRecommendation
archive-daily-agent-usageHealthy recent capturesKeep
clean-stale-codex-memoriesDaily, with repeated no-op runsReduce to weekly or monthly
archive-ai-session-historyThree times daily; safely skips when storage is unmountedReduce cadence or add mount gate
keep-developer-cleanDaily and capable of moving projectsMake manual, weekly, or preview-only

Storage and generated state

Worktrees
10.36 GiB
15 registered; 12 clean and 3 dirty
Sessions
5.35 GiB
Conversation history, not ordinary cache
Logging DB
4.07 GiB
About 1.45 million rows in roughly ten days
Low-risk cleanup
2.94 GiB
Mostly an old verification node_modules tree
  • Clean worktrees total about 7.12 GiB. They should be reviewed and removed through Git-aware commands, not raw directory deletion.
  • Worktree node_modules directories total about 9.83 GiB and are reproducible.
  • Three dirty worktrees must be protected before any bulk cleanup.
  • The logging database is the most urgent hygiene issue. It was actively growing during the audit and should receive a retention or log-level fix rather than manual deletion.
  • Sessions, archived sessions, memories, generated images, and active state databases should not be treated as disposable cache.
  • A stale plugin backup, abandoned marketplace staging, an old app-server binary, and a large verification dependency tree are conservative cleanup candidates after Codex is closed.

Cleanup decisions

Reply with the item numbers and your decision, for example: 1 yes, 2 yes, 6 rewrite, 12 keep.

  1. Consolidate the eight duplicate Cloudflare-family skills into canonical ~/.agents/skills copies with ~/.codex/skills symlinks.
  2. Remove the empty ~/.codex/skills/codex-primary-runtime directory.
  3. Remove the incomplete composio-cli skill skeleton, or finish it if Composio is still wanted.
  4. Repair and narrow the Cloudflare umbrella skill: valid frontmatter, focused routing, no backup file, and fixed references.
  5. Trim the Wrangler skill and make Cloudflare-family preflight checks read-only and package-manager-aware.
  6. Fix the malformed btca-local skill and the YouTube thumbnail/image-generation workflow conflict.
  7. Rewrite web-perf for the installed Browser tooling, or remove it.
  8. Keep or remove hatch-pet based on whether custom Codex pets are still planned.
  9. Remove 40 dead trusted-project entries and three dead disabled-skill references from configuration.
  10. Remove the ghost browser-use@openai-bundled-beta entry and other explicitly obsolete feature/config entries.
  11. Replace the 30 historical global command rules with a minimal durable allowlist, or remove the file while approvals remain disabled.
  12. Remove the unused claude-plugins-official marketplace.
  13. Remove the stale disabled codebase-retrieval MCP configuration.
  14. Disable the redundant PAT-backed GitHub MCP path if it can be separated while retaining the active GitHub connector and workflow skills.
  15. Remove the Convex plugin/connector unless its scaffolding tools are intentionally wanted.
  16. Disable Documents, Presentations, Spreadsheets, and Template Creator until needed; separately decide whether to keep Remotion.
  17. Make keep-developer-clean manual, weekly, or preview-only.
  18. Reduce the stale-memory and session-backup automation cadence.
  19. Review the combined full-access, no-approval, and Browser never_ask posture.
  20. Scope the global “read every file in full” instruction to relevant authored files, excluding huge, generated, binary, and secret-bearing files.
  21. Delete approximately 2.94 GiB of low-risk temporary data after closing Codex.
  22. Review and remove unneeded clean worktrees and/or their reproducible node_modules, while protecting the three dirty worktrees.
  23. Investigate Codex logging retention and verbosity before touching the active 4.07 GiB logging database.
  24. After Codex is closed, remove the stale plugin backup, abandoned staging data, and old app-server binary through the safest available cleanup path.