From review-cycle
One-time setup for review-cycle. Verifies Codex CLI and multi_agent config, optionally appends comment + fix-vs-defer policies to CLAUDE.md (global or project), and updates .gitignore to exclude per-project sentinel files. Idempotent — safe to run multiple times.
How this skill is triggered — by the user, by Claude, or both
Slash command
/review-cycle:initThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
One-time setup for using `review-cycle`. Run this once globally, then optionally re-run inside any project to handle project-level `.gitignore` entries.
One-time setup for using review-cycle. Run this once globally, then optionally re-run inside any project to handle project-level .gitignore entries.
Five named checks, each idempotent:
codex --version works~/.codex/config.toml has multi_agent = truecodex login if needed.gitignore — adds .claude/.review-mark and .claude/.no-review-gate if inside a git repoEach step checks state first. If something is already configured, it reports "✓ already done" and continues.
PROJECT_ROOT=""
if git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
PROJECT_ROOT=$(git rev-parse --show-toplevel)
fi
Remember whether we're inside a git repo. Project-scope options only apply when PROJECT_ROOT is set.
codex --version
npm install -g @openai/codex
codex login
Note this in the summary and continue (don't abort — other steps may still apply).Read ~/.codex/config.toml if it exists. Look for multi_agent = true (any whitespace) under [features].
If missing:
AskUserQuestion with options:
[features]
multi_agent = true
Backup existing config to ~/.codex/config.toml.bak first if the file exists.We don't auto-detect auth state precisely (requires interpreting codex CLI output). Just print a reminder:
~/.codex/auth.json exists (or equivalent token file): assume authed, no warning.codex login if you haven't already."Determine scope. If PROJECT_ROOT is set, use AskUserQuestion:
If PROJECT_ROOT is not set, default to global without asking.
For each chosen target file:
${file}.bak.${CLAUDE_PLUGIN_ROOT}/reference/policies.md. Specifically:
policies.md — only the actual policy text in the code blocks gets appended.MultiEdit or Edit to append. Create the file if it doesn't exist.If user chose "Skip", print the policy snippets to the conversation so they can paste manually later. Note: snippets are also always available at ${CLAUDE_PLUGIN_ROOT}/reference/policies.md.
Only run this step if PROJECT_ROOT is set.
GITIGNORE="$PROJECT_ROOT/.gitignore"
ENTRIES_TO_ADD=(".claude/.review-mark" ".claude/.no-review-gate")
For each entry:
.gitignore exists and already contains the entry (exact line match), skip..gitignore if missing).No user prompt — these entries are safe and minimal.
Print a compact checklist of what was done. One line per item, single status glyph at the start of each line:
✓ succeeded or already done⚠ needs user action✗ failed- skipped or not applicablereview-cycle init summary:
✓ Codex CLI: codex-cli 0.130.0
✓ multi_agent enabled
✓ Codex auth detected
✓ Policies appended to ~/.claude/CLAUDE.md (backup: .bak)
- .gitignore: skipped (not in a git repo)
Run /review-cycle:review on a project with uncommitted changes.
When something needs manual action, surface it inline with ⚠ and a clear next step. Example:
review-cycle init summary:
✓ Codex CLI: codex-cli 0.130.0
⚠ multi_agent not enabled — add `multi_agent = true` to [features] in ~/.codex/config.toml
⚠ Codex auth not detected — run: codex login
- Policies: skipped by user (snippets at ${CLAUDE_PLUGIN_ROOT}/reference/policies.md)
✓ .gitignore updated in /Users/.../my-project
Run /review-cycle:review on a project with uncommitted changes.
Keep each line short. Avoid bracketed status fields ([✓]) that widen the layout. Avoid two columns. The goal is no line wrapping in a typical 80-100 column terminal.
[features]\nmulti_agent = true\n if user opts in.[features] section: append [features]\nmulti_agent = true\n at the end.[features] section exists with other entries: insert multi_agent = true line within that section.multi_agent without AskUserQuestion confirmation. User's codex config requires consent.codex login automatically. It requires an interactive browser flow.~/.codex/, ~/.claude/, ${PROJECT_ROOT}/.claude/, or ${PROJECT_ROOT}/.gitignore.npx claudepluginhub oakoss/claude-plugins --plugin review-cycleGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.