Project Skill Audit
Overview
Audit the project's real recurring workflows before recommending skills. Prefer evidence from memory, rollout summaries, existing skill folders, and current repo conventions over generic brainstorming.
Recommend updates before new skills when an existing project skill is already close to the needed behavior.
Workflow
Map the current project surface.
Identify the repo root and read the most relevant project guidance first, such as AGENTS.md, README.md, roadmap/ledger files, and local docs that define workflows or validation expectations.
Build the memory/session path first.
Resolve the memory base as $CODEX_HOME when set, otherwise default to ~/.codex.
Use these locations:
- memory index:
$CODEX_HOME/memories/MEMORY.md or ~/.codex/memories/MEMORY.md
- rollout summaries:
$CODEX_HOME/memories/rollout_summaries/
- raw sessions:
$CODEX_HOME/sessions/ or ~/.codex/sessions/
Read project past sessions in this order.
If the runtime prompt already includes a memory summary, start there.
Then search MEMORY.md for:
- repo name
- repo basename
- current
cwd
- important module or file names
Open only the 1-3 most relevant rollout summaries first.
Fall back to raw session JSONL only when the summaries are missing the exact evidence you need.
Scan existing project-local skills before suggesting anything new.
Check these locations relative to the current repo root:
.agents/skills
.codex/skills
skills
Read both SKILL.md and agents/openai.yaml when present.
Compare project-local skills against recurring work.
Look for repeated patterns in past sessions:
- repeated validation sequences
- repeated failure shields
- recurring ownership boundaries
- repeated root-cause categories
- workflows that repeatedly require the same repo-specific context
If the pattern appears repeatedly and is not already well captured, it is a candidate skill.
Separate new skill from update existing skill.
Recommend an update when an existing skill is already the right bucket but has stale triggers, missing guardrails, outdated paths, weak validation instructions, or incomplete scope.
Recommend a new skill only when the workflow is distinct enough that stretching an existing skill would make it vague or confusing.
Check for overlap with global skills only after reviewing project-local skills.
Use $CODEX_HOME/skills and $CODEX_HOME/skills/public to avoid proposing project-local skills for workflows already solved well by a generic shared skill.
Do not reject a project-local skill just because a global skill exists; project-specific guardrails can still justify a local specialization.
Session Analysis
1. Search memory index first
- Search
MEMORY.md with rg using the repo name, basename, and cwd.
- Prefer entries that already cite rollout summaries with the same repo path.
- Capture:
- repeated workflows
- validation commands
- failure shields
- ownership boundaries
- milestone or roadmap coupling
2. Open targeted rollout summaries
- Open the most relevant summary files under
memories/rollout_summaries/.
- Prefer summaries whose filenames,
cwd, or keywords match the current project.
- Extract:
- what the user asked for repeatedly
- what steps kept recurring
- what broke repeatedly
- what commands proved correctness
- what project-specific context had to be rediscovered
3. Use raw sessions only as a fallback
- Only search
sessions/ JSONL files if rollout summaries are missing a concrete detail.
- Search by:
- exact
cwd
- repo basename
- thread ID from a rollout summary
- specific file paths or commands
- Use raw sessions to recover exact prompts, command sequences, diffs, or failure text, not to replace the summary pass.
4. Turn session evidence into skill candidates
- A candidate
new skill should correspond to a repeated workflow, not just a repeated topic.
- A candidate
skill update should correspond to a workflow already covered by a local skill whose triggers, guardrails, or validation instructions no longer match the recorded sessions.
- Prefer concrete evidence such as:
- "this validation sequence appeared in 4 sessions"
- "this ownership confusion repeated across extractor and runtime fixes"
- "the same local script and telemetry probes had to be rediscovered repeatedly"
Recommendation Rules
Recommend a new skill when:
- the same repo-specific workflow or failure mode appears multiple times across sessions
- success depends on project-specific paths, scripts, ownership rules, or validation steps
- the workflow benefits from strong defaults or failure shields
Recommend an update when:
- an existing project-local skill already covers most of the need
SKILL.md and agents/openai.yaml drift from each other
- paths, scripts, validation commands, or milestone references are stale
- the skill body is too generic to reflect how the project is actually worked on
Do not recommend a skill when:
- the pattern is a one-off bug rather than a reusable workflow
- a generic global skill already fits with no meaningful project-specific additions
- the workflow has not recurred enough to justify the maintenance cost
What To Scan
Output Expectations
Return a compact audit with:
Existing skills
List the project-local skills found and the main workflow each one covers.
Suggested updates
For each update candidate, include:
- skill name
- why it is incomplete or stale
- the highest-value change to make
Suggested new skills
For each new skill, include:
- recommended skill name
- why it should exist
- what would trigger it
- the core workflow it should encode
Priority order
Rank the top recommendations by expected value.
Naming Guidance
- Prefer short hyphen-case names.
- Use project prefixes for project-local skills when that improves clarity.
- Prefer verb-led or action-oriented names over vague nouns.
Failure Shields
- Do not invent recurring patterns without session or repo evidence.
- Do not recommend duplicate skills when an update to an existing skill would suffice.
- Do not rely on a single memory note if the current repo clearly evolved since then.
- Do not bulk-load all rollout summaries; stay targeted.
- Do not skip rollout summaries and jump straight to raw sessions unless the summaries are insufficient.
- Do not recommend skills from themes alone; recommendations should come from repeated procedures, repeated validation flows, or repeated failure modes.
- Do not confuse a project's current implementation tasks with its reusable skill needs.
Follow-up
If the user asks to actually create or update one of the recommended skills, switch to $skill-creator and implement the chosen skill rather than continuing the audit.
1---2name: project-skill-audit3description: Analyze a project's past Codex sessions, memory files, and existing local skills to recommend the highest-value skills to create or update. Use when a user asks what skills a project needs, wants skill ideas grounded in real project history, wants an audit of current project-local skills, or wants recommendations for updating stale or incomplete skills instead of creating duplicates.4---56# Project Skill Audit78## Overview910Audit the project's real recurring workflows before recommending skills. Prefer evidence from memory, rollout summaries, existing skill folders, and current repo conventions over generic brainstorming.1112Recommend updates before new skills when an existing project skill is already close to the needed behavior.1314## Workflow15161. Map the current project surface.17 Identify the repo root and read the most relevant project guidance first, such as `AGENTS.md`, `README.md`, roadmap/ledger files, and local docs that define workflows or validation expectations.18192. Build the memory/session path first.20 Resolve the memory base as `$CODEX_HOME` when set, otherwise default to `~/.codex`.21 Use these locations:22 - memory index: `$CODEX_HOME/memories/MEMORY.md` or `~/.codex/memories/MEMORY.md`23 - rollout summaries: `$CODEX_HOME/memories/rollout_summaries/`24 - raw sessions: `$CODEX_HOME/sessions/` or `~/.codex/sessions/`25263. Read project past sessions in this order.27 If the runtime prompt already includes a memory summary, start there.28 Then search `MEMORY.md` for:29 - repo name30 - repo basename31 - current `cwd`32 - important module or file names33 Open only the 1-3 most relevant rollout summaries first.34 Fall back to raw session JSONL only when the summaries are missing the exact evidence you need.35364. Scan existing project-local skills before suggesting anything new.37 Check these locations relative to the current repo root:38 - `.agents/skills`39 - `.codex/skills`40 - `skills`41 Read both `SKILL.md` and `agents/openai.yaml` when present.42435. Compare project-local skills against recurring work.44 Look for repeated patterns in past sessions:45 - repeated validation sequences46 - repeated failure shields47 - recurring ownership boundaries48 - repeated root-cause categories49 - workflows that repeatedly require the same repo-specific context50 If the pattern appears repeatedly and is not already well captured, it is a candidate skill.51526. Separate `new skill` from `update existing skill`.53 Recommend an update when an existing skill is already the right bucket but has stale triggers, missing guardrails, outdated paths, weak validation instructions, or incomplete scope.54 Recommend a new skill only when the workflow is distinct enough that stretching an existing skill would make it vague or confusing.55567. Check for overlap with global skills only after reviewing project-local skills.57 Use `$CODEX_HOME/skills` and `$CODEX_HOME/skills/public` to avoid proposing project-local skills for workflows already solved well by a generic shared skill.58 Do not reject a project-local skill just because a global skill exists; project-specific guardrails can still justify a local specialization.5960## Session Analysis6162### 1. Search memory index first6364- Search `MEMORY.md` with `rg` using the repo name, basename, and `cwd`.65- Prefer entries that already cite rollout summaries with the same repo path.66- Capture:67 - repeated workflows68 - validation commands69 - failure shields70 - ownership boundaries71 - milestone or roadmap coupling7273### 2. Open targeted rollout summaries7475- Open the most relevant summary files under `memories/rollout_summaries/`.76- Prefer summaries whose filenames, `cwd`, or `keywords` match the current project.77- Extract:78 - what the user asked for repeatedly79 - what steps kept recurring80 - what broke repeatedly81 - what commands proved correctness82 - what project-specific context had to be rediscovered8384### 3. Use raw sessions only as a fallback8586- Only search `sessions/` JSONL files if rollout summaries are missing a concrete detail.87- Search by:88 - exact `cwd`89 - repo basename90 - thread ID from a rollout summary91 - specific file paths or commands92- Use raw sessions to recover exact prompts, command sequences, diffs, or failure text, not to replace the summary pass.9394### 4. Turn session evidence into skill candidates9596- A candidate `new skill` should correspond to a repeated workflow, not just a repeated topic.97- A candidate `skill update` should correspond to a workflow already covered by a local skill whose triggers, guardrails, or validation instructions no longer match the recorded sessions.98- Prefer concrete evidence such as:99 - "this validation sequence appeared in 4 sessions"100 - "this ownership confusion repeated across extractor and runtime fixes"101 - "the same local script and telemetry probes had to be rediscovered repeatedly"102103## Recommendation Rules104105- Recommend a new skill when:106 - the same repo-specific workflow or failure mode appears multiple times across sessions107 - success depends on project-specific paths, scripts, ownership rules, or validation steps108 - the workflow benefits from strong defaults or failure shields109110- Recommend an update when:111 - an existing project-local skill already covers most of the need112 - `SKILL.md` and `agents/openai.yaml` drift from each other113 - paths, scripts, validation commands, or milestone references are stale114 - the skill body is too generic to reflect how the project is actually worked on115116- Do not recommend a skill when:117 - the pattern is a one-off bug rather than a reusable workflow118 - a generic global skill already fits with no meaningful project-specific additions119 - the workflow has not recurred enough to justify the maintenance cost120121## What To Scan122123- Past sessions and memory:124 - memory summary already in context, if any125 - `$CODEX_HOME/memories/MEMORY.md` or `~/.codex/memories/MEMORY.md`126 - the 1-3 most relevant rollout summaries for the current repo127 - raw `$CODEX_HOME/sessions` or `~/.codex/sessions` JSONL files only if summaries are insufficient128129- Project-local skill surface:130 - `./.agents/skills/*/SKILL.md`131 - `./.agents/skills/*/agents/openai.yaml`132 - `./.codex/skills/*/SKILL.md`133 - `./skills/*/SKILL.md`134135- Project conventions:136 - `AGENTS.md`137 - `README.md`138 - roadmap, ledger, architecture, or validation docs139 - current worktree or recent touched areas if needed for context140141## Output Expectations142143Return a compact audit with:1441451. `Existing skills`146 List the project-local skills found and the main workflow each one covers.1471482. `Suggested updates`149 For each update candidate, include:150 - skill name151 - why it is incomplete or stale152 - the highest-value change to make1531543. `Suggested new skills`155 For each new skill, include:156 - recommended skill name157 - why it should exist158 - what would trigger it159 - the core workflow it should encode1601614. `Priority order`162 Rank the top recommendations by expected value.163164## Naming Guidance165166- Prefer short hyphen-case names.167- Use project prefixes for project-local skills when that improves clarity.168- Prefer verb-led or action-oriented names over vague nouns.169170## Failure Shields171172- Do not invent recurring patterns without session or repo evidence.173- Do not recommend duplicate skills when an update to an existing skill would suffice.174- Do not rely on a single memory note if the current repo clearly evolved since then.175- Do not bulk-load all rollout summaries; stay targeted.176- Do not skip rollout summaries and jump straight to raw sessions unless the summaries are insufficient.177- Do not recommend skills from themes alone; recommendations should come from repeated procedures, repeated validation flows, or repeated failure modes.178- Do not confuse a project's current implementation tasks with its reusable skill needs.179180## Follow-up181182If the user asks to actually create or update one of the recommended skills, switch to [$skill-creator](/Users/dimillian/.codex/skills/.system/skill-creator/SKILL.md) and implement the chosen skill rather than continuing the audit.