بنقرة واحدة
self-review-apply
Parse self-review XML feedback and execute the review comments as organized tasks
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Parse self-review XML feedback and execute the review comments as organized tasks
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Capture a kenkeep node manually from the current session. Writes a new node directly under `.ai/kenkeep/nodes/<kind>/`. The reviewer accepts by leaving the file in place and rejects by deleting it. Use when the user wants to record a project convention, gotcha, rationale, or named-thing into the project knowledge base.
First-time bootstrap of the project knowledge base from existing markdown documentation. Surveys docs, follows cross-references, and writes new node files directly under `.ai/kenkeep/nodes/`. Supervised by the user, who reviews each node on disk before accepting or deleting it. Use when the user wants to seed an empty knowledge base from the project's existing docs.
Curate pending session logs into kenkeep nodes by reading sessions in-host, drafting curator actions, then deduping and persisting via the kenkeep primitives. Resolves any surfaced contradictions interactively with the user. Use when the user wants to process accumulated session captures, or when the SessionStart nudge reports pending session logs.
Capture a knowledge-base node manually from the current session. Writes a new node directly under `.ai/knowledge-base/nodes/<kind>/`. The reviewer accepts via `git commit` and rejects via `git restore`. Use when the user wants to record a project convention, gotcha, rationale, or named-thing into the project knowledge base.
First-time bootstrap of the project knowledge base from existing markdown documentation. Surveys docs, follows cross-references, and writes new node files directly under `.ai/knowledge-base/nodes/`. Supervised by the user, who reviews each node with `git diff` before committing. Use when the user wants to seed an empty knowledge base from the project's existing docs.
Curate pending session logs into knowledge-base nodes by running the `npx @e0ipso/ai-knowledge-base curate` CLI, then resolve any contradictions surfaced by the curator with the user in-session. Use when the user wants to process accumulated session captures, or when the SessionStart nudge reports pending session logs.
| name | self-review-apply |
| description | Parse self-review XML feedback and execute the review comments as organized tasks |
| metadata | {"disable-model-invocation":"true","argument-hint":"[review.xml path]"} |
Read structured review feedback from a self-review XML file and execute the changes.
Non-obvious semantics (keep in sync with assets/self-review-v1.xsd):
new-line-start/new-line-end (for
added/context lines) OR old-line-start/old-line-end (for deleted lines). Never both. If
neither pair is present, it's a file-level comment.viewed attribute: true = reviewer looked at this file. false = reviewer did not mark it
as viewed. Distinguishes "reviewed, no comments" from "not yet reviewed."path on renames: For renamed files (change-type="renamed"), path is the new path.change-type values: added, modified, deleted, renamed.Read the XML file from $ARGUMENTS or default to ./review.xml. Stop if the file does not exist.
Use the Bash tool to run xmllint --schema assets/self-review-v1.xsd <review-xml-path> --noout
(where assets/ is relative to this skill's directory). If validation fails, stop and report the
xmllint errors to the user. If xmllint is not installed, warn the user and continue without
validation.
Check the <review> root element attributes to determine the review mode and load context:
git-diff-args and repository attributes present): Use the Bash tool to run
git diff <git-diff-args> from the repository path. This gives you the same diff the reviewer
saw. If the diff is too large, limit to files that have comments.source-path attribute present): Read each file listed in the review from the
source-path directory (file path attributes are relative to it). Skip deleted files. If a file
is too large, read only the line ranges referenced by comments (with surrounding context).This context is essential — without it you're working blind.
Skip files with zero comments. For files with comments, create one TaskCreate task per file, then spawn subagents to work on independent files concurrently. For small reviews (3 or fewer files with comments), apply changes directly without subagents.
For each file:
Load attachments for this file. For each comment with <attachment> elements, read the
referenced image file using the Read tool to include it as visual context. The path attribute
contains a relative path from the XML file to the image. If the image file does not exist, note
this and proceed with text-based feedback only.
Apply suggestions bottom-to-top. Sort suggestions by line number descending so that
insertions and deletions don't invalidate line numbers of subsequent suggestions. For each
<suggestion>, find original-code in the file and replace it with proposed-code. Use line
numbers as hints but match on text to handle drift.
Address all other comments. Read the referenced lines, understand the <body>, and implement
the change. Use your judgment. Every comment category is actionable — including question, which
often implies a change is needed. If a question is purely informational (no code change needed),
answer it in the summary instead.
Complete all changes for one file before moving to the next.
After all feedback has been applied, output a clearly delimited summary section.
List each change that was made, grouped by logical unit of work (e.g., "refactored validation logic", "updated API error handling") rather than by file. Keep entries concise (one line per change).
For every question category comment in the review:
Changed or No change).