Codex Session Product Reviewer Maintainer
This skill reviews a completed or in-progress Codex task from a product
manager's point of view. It is a reviewer workflow, not an implementation
workflow.
The core question is:
Did this session solve the right product problem, with the right scope,
behavior, and validation?
Use it to turn a vague request like "review this Codex session as a PM" into a
grounded product review based on the session transcript, actual code changes,
tests, plan docs, and repository product standards.
Use When
Use this skill when the user asks to:
- review a Codex session id, task, thread, or run as a product manager
- evaluate whether another agent's implementation was product-correct
- apply first-principles thinking to a shipped task
- judge whether a proposal or implementation solved the right user problem
- produce a reviewer-style accept / conditional accept / reject
- translate fuzzy dissatisfaction into explicit product critique
Common trigger phrases:
- "review 一下 codex session id ..."
- "as a 专业的产品经理 review"
- "第一性原理思考一下"
- "作为 reviewer"
- "PM review this task"
- "这个 session 做得怎么样"
- "这个实现是不是产品上对"
Do Not Use When
Do not use this skill for:
- generic code review where the user mainly wants bugs and line comments
- debugging a failed Rudder agent run transcript
- creating a new product idea or brainstorming from scratch
- implementing the fixes found during review, unless the user explicitly asks
- summarizing a session without judgment
- judging only from the final assistant message when local evidence is
available
If the user asks for code correctness review, use a code-review workflow.
If the user asks why a Rudder agent run failed, use the run transcript debugging
workflow first.
Inputs
Required:
- A Codex session id, commit hash, PR, branch, or clearly identified task to
review.
Optional:
- The review lens, such as PM, first principles, design, workflow, release, or
founder mode.
- A desired output style, such as short verdict, detailed memo, or findings
only.
Evidence Collection
Never start with opinion. Build the evidence packet first.
Locate the Codex session.
- Search
~/.codex/session_index.jsonl, ~/.codex/sessions/**/*.jsonl,
and ~/.codex/archived_sessions/*.jsonl for the session id or prefix.
- Confirm the session title, timestamp, cwd, branch, and final assistant
message.
- If the session cannot be found, say that and review only the artifacts the
user provided.
Extract the real user request and corrections.
- Ignore injected
AGENTS.md, environment context, skill bodies, and system
text.
- Capture each meaningful user prompt, especially mid-task corrections such
as scope changes, product constraints, or "also consider..." feedback.
Extract what the agent actually did.
- Summarize proposals, plans, implementation steps, changed files, commands,
validation results, commits, and pushes.
- Use
git show, git diff, plan docs, tests, and relevant source files
when a commit or file path is mentioned.
- Distinguish committed changes from unrelated dirty worktree changes.
- Compare the changed-file set with the user's actual request. Flag
unrelated files or commits mixed into the task, especially skill renames,
dependency/version churn, generated artifacts, release files, or broad
runtime changes inside a narrow product/UI fix.
Read the relevant product context.
- Start with
doc/product/GOAL.md, doc/product/PRODUCT.md, doc/product/README.md plus relevant doc/product/domains/**,
and doc/engineering/DESIGN.md when the task affects product behavior or UI.
- Read the task's plan doc if one exists.
- For release, desktop, plugin, database, or CLI work, follow the relevant
AGENTS.md doc route.
Check validation evidence.
- Record which focused tests, full checks, E2E tests, builds, screenshots,
or browser checks actually passed.
- Treat "attempted but timed out" as unverified, not as passed.
- For visible UI changes, look for real visual verification of the non-empty
and edge-case states, not only empty states.
First-Principles Review Frame
Use this frame before writing the verdict:
User job
- What real user or operator problem was this task supposed to solve?
- Was the original request a symptom of a deeper workflow or information
architecture issue?
Object model
- What is the product object really? View, navigation shortcut, workflow
state, preference, project artifact, run, issue, or setting?
- Did the implementation model it as the correct kind of object?
Core loop impact
- Does the change help Rudder complete real agent-work loops end to end?
- Does it reduce operator friction, improve control, or clarify agent work?
Scope discipline
- Did the agent delete or avoid unnecessary surface area?
- Did it create a new concept when an existing one should have been reused?
- Did it handle the user's explicit edge cases?
Behavioral completeness
- Are the important entry points covered?
- Does the behavior remain correct for empty, normal, long, cross-org,
mobile, direct-link, and legacy-link states when relevant?
Trust and validation
- Did the agent prove the change works in the states users actually care
about?
- Are failed or skipped checks clearly separated from passing checks?
Review Method
Follow this sequence.
State the evidence basis.
- Mention the session id, title, date, commit hash if present, and files or
plan docs inspected.
Give the verdict early.
- Use one of:
accept, conditional accept, reject, or needs more evidence.
- Add a numeric score only if useful.
Explain the product essence.
- In one paragraph, say what the task was really about.
- Translate UI wording into product language. For example, "recent views in
main content feels wrong" becomes "navigation history was mis-modeled as a
workspace view."
Name what was right.
- Focus on product decisions, not implementation busywork.
- Explain why the chosen model fits or does not fit Rudder's operating
layer.
Name the gaps.
- Prioritize product correctness, behavioral gaps, missed edge cases,
validation gaps, and scope mistakes.
- Be concrete: cite files, lines, tests, or session events when possible.
- Separate "not done" from "not proven."
Recommend the next move.
- Give one pragmatic follow-up, not a wishlist.
- Say whether to keep direction, patch behavior, rewrite spec, gather
evidence, or reject and reframe.
Output Shape
Default to Chinese when the user asks in Chinese.
Keep the final review compact:
结论:...
我会给这次任务:7/10,conditional accept。
做得好的地方:
- ...
关键缺口:
1. ...
2. ...
下一步建议:...
For higher-stakes reviews, add:
- Evidence inspected
- First-principles diagnosis
- Product acceptance criteria
- Residual risks
Do not bury the verdict after a long transcript summary.
Judgment Rules
- A session can be directionally correct and still not product-done.
- Passing typecheck/build does not prove product behavior.
- A failed E2E launch is not a product failure by itself, but it leaves the
affected user flow unverified.
- A visible UI task is not fully reviewed unless at least the relevant rendered
states were inspected or explicitly marked unverified.
- "Too many items" should be reviewed as an experience question, not only as a
rendering limit.
- Compatibility paths should not preserve the old wrong mental model.
- The best review says which part to keep, which part to patch, and why.
Common Findings To Look For
- Mis-modeled product object: history treated as a view, settings treated as
content, workflow state treated as global preference.
- Incomplete entry points: only list clicks record behavior, but direct detail,
board cards, sidebar links, deep links, or mobile paths do not.
- Validation mismatch: tests cover the new API but not the actual operator path.
- Commit hygiene mismatch: the final commit claims to fix one product problem
but includes unrelated skill, dependency, generated, or release changes.
- Edge-case theater: code handles a number limit but not whether that limit is
the right product experience.
- Over-scoped fix: the implementation adds management UI when a small recovery
affordance was enough.
- Under-scoped fix: the implementation moves UI but leaves the underlying
behavioral contract inconsistent.
Boundaries
Do not edit code during this review unless the user explicitly asks to fix the
findings. If asked to fix, switch from reviewer mode to normal implementation
mode and follow repository validation and commit rules.
Do not claim certainty about user satisfaction from logs alone. Phrase such
claims as evidence-based judgment, not truth.
Do not quote long chunks of the transcript. Summarize the evidence and cite the
local file paths or commit hashes that matter.
1---2name: codex-session-product-reviewer-maintainer3description: Use when reviewing a local Codex session, task, thread, or commit as a product manager or first-principles reviewer for product correctness, scope, behavior, validation, and whether the task solved the right user problem.4---56# Codex Session Product Reviewer Maintainer78This skill reviews a completed or in-progress Codex task from a product9manager's point of view. It is a reviewer workflow, not an implementation10workflow.1112The core question is:1314> Did this session solve the right product problem, with the right scope,15> behavior, and validation?1617Use it to turn a vague request like "review this Codex session as a PM" into a18grounded product review based on the session transcript, actual code changes,19tests, plan docs, and repository product standards.2021## Use When2223Use this skill when the user asks to:2425- review a Codex session id, task, thread, or run as a product manager26- evaluate whether another agent's implementation was product-correct27- apply first-principles thinking to a shipped task28- judge whether a proposal or implementation solved the right user problem29- produce a reviewer-style accept / conditional accept / reject30- translate fuzzy dissatisfaction into explicit product critique3132Common trigger phrases:3334- "review 一下 codex session id ..."35- "as a 专业的产品经理 review"36- "第一性原理思考一下"37- "作为 reviewer"38- "PM review this task"39- "这个 session 做得怎么样"40- "这个实现是不是产品上对"4142## Do Not Use When4344Do not use this skill for:4546- generic code review where the user mainly wants bugs and line comments47- debugging a failed Rudder agent run transcript48- creating a new product idea or brainstorming from scratch49- implementing the fixes found during review, unless the user explicitly asks50- summarizing a session without judgment51- judging only from the final assistant message when local evidence is52 available5354If the user asks for code correctness review, use a code-review workflow.55If the user asks why a Rudder agent run failed, use the run transcript debugging56workflow first.5758## Inputs5960Required:6162- A Codex session id, commit hash, PR, branch, or clearly identified task to63 review.6465Optional:6667- The review lens, such as PM, first principles, design, workflow, release, or68 founder mode.69- A desired output style, such as short verdict, detailed memo, or findings70 only.7172## Evidence Collection7374Never start with opinion. Build the evidence packet first.75761. Locate the Codex session.77 - Search `~/.codex/session_index.jsonl`, `~/.codex/sessions/**/*.jsonl`,78 and `~/.codex/archived_sessions/*.jsonl` for the session id or prefix.79 - Confirm the session title, timestamp, cwd, branch, and final assistant80 message.81 - If the session cannot be found, say that and review only the artifacts the82 user provided.83842. Extract the real user request and corrections.85 - Ignore injected `AGENTS.md`, environment context, skill bodies, and system86 text.87 - Capture each meaningful user prompt, especially mid-task corrections such88 as scope changes, product constraints, or "also consider..." feedback.89903. Extract what the agent actually did.91 - Summarize proposals, plans, implementation steps, changed files, commands,92 validation results, commits, and pushes.93 - Use `git show`, `git diff`, plan docs, tests, and relevant source files94 when a commit or file path is mentioned.95 - Distinguish committed changes from unrelated dirty worktree changes.96 - Compare the changed-file set with the user's actual request. Flag97 unrelated files or commits mixed into the task, especially skill renames,98 dependency/version churn, generated artifacts, release files, or broad99 runtime changes inside a narrow product/UI fix.1001014. Read the relevant product context.102 - Start with `doc/product/GOAL.md`, `doc/product/PRODUCT.md`, `doc/product/README.md` plus relevant `doc/product/domains/**`,103 and `doc/engineering/DESIGN.md` when the task affects product behavior or UI.104 - Read the task's plan doc if one exists.105 - For release, desktop, plugin, database, or CLI work, follow the relevant106 AGENTS.md doc route.1071085. Check validation evidence.109 - Record which focused tests, full checks, E2E tests, builds, screenshots,110 or browser checks actually passed.111 - Treat "attempted but timed out" as unverified, not as passed.112 - For visible UI changes, look for real visual verification of the non-empty113 and edge-case states, not only empty states.114115## First-Principles Review Frame116117Use this frame before writing the verdict:1181191. User job120 - What real user or operator problem was this task supposed to solve?121 - Was the original request a symptom of a deeper workflow or information122 architecture issue?1231242. Object model125 - What is the product object really? View, navigation shortcut, workflow126 state, preference, project artifact, run, issue, or setting?127 - Did the implementation model it as the correct kind of object?1281293. Core loop impact130 - Does the change help Rudder complete real agent-work loops end to end?131 - Does it reduce operator friction, improve control, or clarify agent work?1321334. Scope discipline134 - Did the agent delete or avoid unnecessary surface area?135 - Did it create a new concept when an existing one should have been reused?136 - Did it handle the user's explicit edge cases?1371385. Behavioral completeness139 - Are the important entry points covered?140 - Does the behavior remain correct for empty, normal, long, cross-org,141 mobile, direct-link, and legacy-link states when relevant?1421436. Trust and validation144 - Did the agent prove the change works in the states users actually care145 about?146 - Are failed or skipped checks clearly separated from passing checks?147148## Review Method149150Follow this sequence.1511521. State the evidence basis.153 - Mention the session id, title, date, commit hash if present, and files or154 plan docs inspected.1551562. Give the verdict early.157 - Use one of: `accept`, `conditional accept`, `reject`, or `needs more158 evidence`.159 - Add a numeric score only if useful.1601613. Explain the product essence.162 - In one paragraph, say what the task was really about.163 - Translate UI wording into product language. For example, "recent views in164 main content feels wrong" becomes "navigation history was mis-modeled as a165 workspace view."1661674. Name what was right.168 - Focus on product decisions, not implementation busywork.169 - Explain why the chosen model fits or does not fit Rudder's operating170 layer.1711725. Name the gaps.173 - Prioritize product correctness, behavioral gaps, missed edge cases,174 validation gaps, and scope mistakes.175 - Be concrete: cite files, lines, tests, or session events when possible.176 - Separate "not done" from "not proven."1771786. Recommend the next move.179 - Give one pragmatic follow-up, not a wishlist.180 - Say whether to keep direction, patch behavior, rewrite spec, gather181 evidence, or reject and reframe.182183## Output Shape184185Default to Chinese when the user asks in Chinese.186187Keep the final review compact:188189```markdown190结论:...191192我会给这次任务:7/10,conditional accept。193194做得好的地方:195- ...196197关键缺口:1981. ...1992. ...200201下一步建议:...202```203204For higher-stakes reviews, add:205206- Evidence inspected207- First-principles diagnosis208- Product acceptance criteria209- Residual risks210211Do not bury the verdict after a long transcript summary.212213## Judgment Rules214215- A session can be directionally correct and still not product-done.216- Passing typecheck/build does not prove product behavior.217- A failed E2E launch is not a product failure by itself, but it leaves the218 affected user flow unverified.219- A visible UI task is not fully reviewed unless at least the relevant rendered220 states were inspected or explicitly marked unverified.221- "Too many items" should be reviewed as an experience question, not only as a222 rendering limit.223- Compatibility paths should not preserve the old wrong mental model.224- The best review says which part to keep, which part to patch, and why.225226## Common Findings To Look For227228- Mis-modeled product object: history treated as a view, settings treated as229 content, workflow state treated as global preference.230- Incomplete entry points: only list clicks record behavior, but direct detail,231 board cards, sidebar links, deep links, or mobile paths do not.232- Validation mismatch: tests cover the new API but not the actual operator path.233- Commit hygiene mismatch: the final commit claims to fix one product problem234 but includes unrelated skill, dependency, generated, or release changes.235- Edge-case theater: code handles a number limit but not whether that limit is236 the right product experience.237- Over-scoped fix: the implementation adds management UI when a small recovery238 affordance was enough.239- Under-scoped fix: the implementation moves UI but leaves the underlying240 behavioral contract inconsistent.241242## Boundaries243244Do not edit code during this review unless the user explicitly asks to fix the245findings. If asked to fix, switch from reviewer mode to normal implementation246mode and follow repository validation and commit rules.247248Do not claim certainty about user satisfaction from logs alone. Phrase such249claims as evidence-based judgment, not truth.250251Do not quote long chunks of the transcript. Summarize the evidence and cite the252local file paths or commit hashes that matter.