Skip to content
Back to skills

Feedback Review

ASecurity

Batch-review the draft feedback rules captured automatically at session end by the correction detector and by wrap_session corrections — approve, reject, or flag conflicts in one pass. Use when the user says "review feedback drafts", "approve feedback drafts", "feedback drafts", "pending feedback rules", or when the injected SESSION.md shows a "Pending Feedback Drafts" section with a nonzero count.

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 25, 2026
ai-agentsgobashgit

Works with

  • cli
  • mcp

Security analysis

A100/100

Scanned September 25, 2026

npx -y skills add zzoretich/AgenticOS-Workbench --skill feedback-review --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Feedback Review?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Feedback Review
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/zzoretich-feedback-review/badge)](https://www.skillsdirectory.com/skills/zzoretich-feedback-review)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: feedback-review
description: Batch-review the draft feedback rules captured automatically at session end by the correction detector and by wrap_session corrections — approve, reject, or flag conflicts in one pass. Use when the user says "review feedback drafts", "approve feedback drafts", "feedback drafts", "pending feedback rules", or when the injected SESSION.md shows a "Pending Feedback Drafts" section with a nonzero count.
---
<!-- generated by tools/build-codex-plugin.js from plugin/; edit the source there, not this file -->

> Host: Codex CLI, through the `agenticos` plugin. Invoke as `$agenticos:feedback-review`. `<plugin root>` is the plugin's folder, two levels above the folder that holds this SKILL.md; the `aos` launcher is `<plugin root>/bin/aos`. The tools of the `agenticos` MCP server are named `mcp__agenticos__<tool>`. A question to the user is one message with its options numbered (where it says multiSelect, the user may pick several); wait for the reply before acting on it.

# Feedback review — draft approval

Corrections the user made in past sessions are auto-drafted as feedback rules under
`brain/memory/feedback/_drafts/` (by the session-end correction detector, or by the
`corrections` you pass to `wrap_session`). This skill is the human half of the loop:
ONE batched approval, applied through `feedback-apply` (memory-writer underneath) so an
approved rule is identical to a hand-written one.

Vault: the `vault` value in `${CLAUDE_CONFIG_DIR:-~/.claude}/agenticos.json`.

## Steps

1. List pending drafts: Bash `aos feedback-apply --list` (fallback: `sh "<plugin root>/bin/aos" feedback-apply --list`). Output is `slug | title | description` lines. If it prints `no drafts pending`, say so and stop.
2. Read every listed draft at `<vault>/brain/memory/feedback/_drafts/<slug>.md`. A draft whose frontmatter tags include `status/needs-review` came from the regex prefilter with no model to distill a rule: its `## Rule` is the user's raw wording. Such a draft is **rewrite-or-reject** — never approve it verbatim: either edit its `## Rule`, `## Why` and `## How to apply` into a real rule first (edit the draft file in place) and then approve, or reject it.
3. Conflict-check in-session (no script, no model call): call the `feedback_rules` tool of the `agenticos` MCP server (`mcp__agenticos__feedback_rules`) once with `full: true` to get every active rule's text (without it the tool returns only an index of titles and descriptions; drafts are never in it), then compare each draft against them. A conflict means an agent obeying BOTH rules at once is forced into contradiction: they command opposite actions in the same situation, one forbids what the other requires, or they state incompatible values for the same fact (two canonical paths for the same binary; "always ask first" vs "never ask, just act" for the same action). Overlapping topics, redundancy, or rules about different situations are NOT conflicts. A conflicting draft is a MERGE candidate: present it with the conflicting rule named and recommend "merge into <rule>" rather than plain approval.
4. Ask ONE question (multiSelect: true) — never one question per draft. One option per draft: label = the slug (shortened to fit), description = `<title> — <description>`, prefixed `CONFLICTS with <rule>: ` when step 3 flagged it. More than 4 drafts pending → additional questions of up to 4 each. Selected options = approved.
5. For each approved slug: `aos feedback-apply --approve <slug>`. For an approved MERGE candidate: approve it the same way, then edit the two conflicting rule files into one merged rule (keep the newest guidance and the strongest **Why** / **How to apply**), delete the superseded file, and remove its line from `<vault>/MEMORY.md`.
6. If any drafts were left unselected, ask one follow-up question: "Reject the unselected drafts or keep them pending?" (options: "Reject them" / "Keep pending"). On reject, for each: `aos feedback-apply --reject <slug>`. Rejection is remembered — the slug is trail-logged so the detector never re-drafts the same rule.
7. If the vault is a git repository, offer to commit `brain/memory/feedback`, `MEMORY.md` and `brain/_index/feedback-metrics.jsonl` with the message `feat: apply reviewed feedback drafts`. Do not commit without the user's yes.
8. Report one line: `applied N, rejected M, still pending K`.

## Boundaries

- Never write to `brain/memory/feedback/` directly — approval goes through `feedback-apply` so `MEMORY.md` stays in sync.
- Never auto-merge conflicting rules without the user selecting the merge option.
- The weekly captured-vs-recurred counter belongs to the persona's reflect duty (`feedback-metrics.js`), not to this skill.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.