improve — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited improve (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Purpose: Update skills based on ~/.claude/reflection.md and user's correction string. Closes the self-improving loop. When: After user has filled the correction string in ~/.claude/reflection.md. Output: Updated skills (explicit approval per change) + updated ~/.claude/skills/index.md.
~/.claude/reflection.md — fully (global file, not in project folder)~/.claude/skills/index.md — current registry state~/.claude/skills/cross-cutting-principles.md — mandatory reference for all changesIf ~/.claude/reflection.md not found or correction string empty — report and stop:
~/.claude/reflection.md не найден / строка коррекции пуста.
Запусти Reflect Skill и заполни строку коррекции перед Improve.Extract from the --- block at the top of reflection.md:
⚠️ Низкий confidence ([N]). Данные сессии ненадёжны.
Изменения применять с повышенной осторожностью, особенно L2.
Продолжить? (да / нет)Wait for answer. If "нет" — stop.
A proposed change that addresses a listed root_cause = higher priority.
If a skill appears in frontmatter but not in Proposals — flag as possible omission.
If frontmatter is missing or malformed (no --- block) — continue without it, but note:
⚠️ Frontmatter отсутствует — reflection.md создан до RSIm Phase 2.
Proceeding without structured metadata.For each skill from "Proposals" section, check:
~/.claude/skills/changelog.md (if exists).How many times changed? What changed last time? → 3+ changes in last 5 cycles = instability signal. Flag explicitly in plan.
~/.claude/reflection-*.md archive.Does this skill have ❌ in previous reflections? → Yes = recurring pattern, not one-off. Propose deeper fix, not cosmetic.
Does new change undo what was just added? → Conflict → show before diff: ⚠️ Конфликт с правкой от [дата]: [суть]
If changelog doesn't exist — skip point 1, proceed with 2-3.
Result of this step: internal context only, not shown to user. Flag instability signals or conflicts in the change plan.
#### Level definitions
Every proposed change must be classified before adding to the plan:
(hard-problems.md, best-practices.md, patterns.md, heuristics). Does NOT modify skill behavior. Low risk.
Changes how the agent behaves. Apply with scrutiny — one session of friction is usually not enough justification for an L2 change.
If a proposed change would fall here — add as TODO in plan, do not apply:
[L3-TODO] [описание] — отложено до реализации scoring (#10)#### Classification rules
| Proposed change | Level |
|---|---|
| Add entry to hard-problems / best-practices / patterns | L1 |
| Update heuristic or tip in a skill | L1 |
| Modify a step, sequence, or rule in a skill | L2 |
| Create a new skill | L2 |
| Edit CLAUDE.md dispatch table (Rule 4) | L2 |
| Edit CLAUDE.md Rule 1.5 / Rule 1.7 | L2 |
| Change agent strategy across projects | L3 |
#### Priority order
#### Plan format
Show plan in one message before any changes:
Предлагаю следующие изменения (в порядке приоритета):
[L1] 1. [скилл/файл]: [суть изменения] ← строка коррекции
[L2] 2. [скилл/файл]: [суть изменения]
[L1] 3. [скилл/файл]: [суть изменения]
L1 = knowledge (низкий риск) | L2 = workflow (меняет поведение) | L3-TODO = отложено
Применяю по одному, каждый раз жду подтверждения.
Начинаем с №1?Wait for "да" / "продолжай" / "пропусти" before first change.
For each change in plan:
1. Show diff before applying:
For L1 changes:
── [L1] Изменение N/M: [скилл] ──────────────────
БЫЛО:
[exact quote from current file]
СТАНЕТ:
[new text]
Причина: [one line from reflection.md]
Применить? (да / нет / изменить)For L2 changes:
── [L2] Изменение N/M: [скилл] ──────────────────
⚠️ Это изменение меняет поведение скилла. Одна сессия фрикций — слабое основание.
БЫЛО:
[exact quote from current file]
СТАНЕТ:
[new text]
Причина: [one line from reflection.md]
Повторялось в предыдущих reflections: [да — N раз / нет]
Применить? (да / нет / изменить)2. Wait for explicit answer:
да / продолжай / apply → apply changeнет / пропусти / skip → skip, move to nextизменить + correction → apply corrected version3. After applying — confirm and write to changelog:
✓ [файл] обновлён.Immediately add line to ~/.claude/skills/changelog.md:
YYYY-MM-DD | [skill-name] | [one-line summary] | [source: correction / friction / new skill]If file doesn't exist — create it with header before writing.
4. Move to next item.
If plan item = "create new skill":
~/.claude/skills/cross-cutting-principles.md before generatingskill-generator to create ~/.claude/skills/[name]/SKILL.md~/.claude/skills/index.md (in correct group): | `[name]` | [purpose] | [tags] | 0 | ✅ Ready |triggers: field from new skill's frontmatter~/.claude/CLAUDE.md: | [trigger1] / [trigger2] / ... | `[skill-name]` |Apply with confirmation.
✓ ~/.claude/skills/[name]/SKILL.md создан.
✓ index.md обновлён.
✓ Rule 4: [добавлена строка с триггерами / не требуется — triggers пуст]Don't skip the description step — user must confirm the skill is what they want.
After all L1/L2 changes are applied — scan episodic memory for recurring patterns.
Trigger: Run this step automatically after every Improve session.
Process:
~/.claude/memory/episodic/hard-problems.md~/.claude/memory/episodic/best-practices.md~/.claude/memory/episodic/failures/*.md (all files)~/.claude/memory/semantic/patterns.md — does a pattern for this tag already exist? ── [DISTILL] Паттерн для тега: [tag] ──────────────────
Найдено [N] episodic записей с тегом "[tag]":
- [entry 1 title] (hard-problems / best-practices / failures)
- [entry 2 title]
- [entry N title]
Предлагаю добавить в semantic/patterns.md:
## [Domain] — [Pattern title]
**Tags:** [tag, ...]
Generalization: [timeless rule extracted from the N entries]
Evidence: [N] episodic observations
Applicable: [when to apply]
Counter-cases: [when it does NOT apply, if derivable]
Добавить? (да / нет / изменить)~/.claude/memory/semantic/patterns.md.Log to changelog:
YYYY-MM-DD | semantic/patterns | [tag] pattern distilled from N episodic entries | distillationRules:
⚠️ [tag]: записи противоречат друг другу — не дистиллируемAfter all applied changes:
Required — usage counters: Take skills table from reflection.md (with ✅/⚠️/❌ ratings) — all mentioned skills were used this session. Increment their "Uses" counter by 1. Non-optional step.
Also: if skill got ❌ — add ⚠️ Review next to status in index.md. If skill had ❌ in previous reflection too (check archive) — recurring signal, candidate for priority Improve.
Other:
Show diff for index.md — also with confirmation.
Automatically (no confirmation) rename ~/.claude/reflection.md: → ~/.claude/reflection-YYYY-MM-DD.md (date from reflection.md header)
Then show final report:
── Итог Improve сессии ─────────────────────────
Применено изменений: N
Пропущено: M
Файлы обновлены:
✓ ~/.claude/skills/[name]/SKILL.md
✓ ~/.claude/skills/index.md
Архив:
✓ ~/.claude/reflection.md → reflection-YYYY-MM-DD.md
Цикл завершён:
intake → работа → reflect → improve ✓
Следующий проект начнётся с улучшенными скиллами.
[If applied changes ≥ 1]:
Новые улучшения готовы к экспорту → /rsim-exportConservative changes:
Boundaries:
CLAUDE.md without explicit instructionUncertainty:
Before final report: re-read ## CURATOR RULES and this checklist. Verify every item. Fix before delivery.
~/.claude/skills/cross-cutting-principles.md~/.claude/skills/index.md updated — counters, statuses, archive~/.claude/reflection.md archived automatically in Step 5~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.