返回 Skill 列表
extension
分类: 内容与媒体无需 API Key

reflect

通过对话分析自我改进。从纠正和成功模式中提取学习内容,并将其永久编码到代理定义中。理念 - 一次纠正,永不重犯。

person作者: jakexiaohubgithub

Reflect - Agent Self-Improvement Skill

Transform your AI assistant into a continuously improving partner. Every correction becomes a permanent improvement that persists across all future sessions.

Quick Reference

| Command | Action | |---------|--------| | reflect | Analyze conversation for learnings | | reflect on | Enable auto-reflection | | reflect off | Disable auto-reflection | | reflect status | Show state and metrics | | reflect review | Review pending learnings |

When to Use

  • After completing complex tasks
  • When user explicitly corrects behavior ("never do X", "always Y")
  • At session boundaries or before context compaction
  • When successful patterns are worth preserving

Workflow

Step 1: Scan Conversation for Signals

Analyze the conversation for correction signals and learning opportunities.

Signal Confidence Levels:

| Confidence | Triggers | Examples | |------------|----------|----------| | HIGH | Explicit corrections | "never", "always", "wrong", "stop", "the rule is" | | MEDIUM | Approved approaches | "perfect", "exactly", "that's right", accepted output | | LOW | Observations | Patterns that worked but not explicitly validated |

See signal_patterns.md for full detection rules.

Step 2: Classify & Match to Target Files

Map each signal to the appropriate target:

| Category | Target Files | |----------|--------------| | Code Style | code-reviewer, backend-developer, frontend-developer | | Architecture | solution-architect, api-architect, architecture-reviewer | | Process | CLAUDE.md, orchestrator agents | | Domain | Domain-specific agents, CLAUDE.md | | Tools | CLAUDE.md, relevant specialists | | New Skill | Create new skill file |

See agent_mappings.md for mapping rules.

Step 3: Check for Skill-Worthy Signals

Some learnings should become new skills rather than agent updates:

Skill-Worthy Criteria:

  • Non-obvious debugging (>10 min investigation)
  • Misleading error (root cause different from message)
  • Workaround discovered through experimentation
  • Configuration insight (differs from documented)
  • Reusable pattern (helps in similar situations)

Quality Gates (must pass all):

  • [ ] Reusable: Will help with future tasks
  • [ ] Non-trivial: Requires discovery, not just docs
  • [ ] Specific: Can describe exact trigger conditions
  • [ ] Verified: Solution actually worked
  • [ ] No duplication: Doesn't exist already

Step 4: Generate Proposals

Present findings in structured format:

# Reflection Analysis

## Session Context
- **Date**: [timestamp]
- **Messages Analyzed**: [count]

## Signals Detected

| # | Signal | Confidence | Source Quote | Category |
|---|--------|------------|--------------|----------|
| 1 | [learning] | HIGH | "[exact words]" | Code Style |

## Proposed Changes

### Change 1: Update [agent-name]
**Target**: `[file path]`
**Section**: [section name]
**Confidence**: HIGH

```diff
+ New rule from learning

Review Prompt

Apply these changes? (Y/N/modify/1,2,3)


### Step 5: Apply with User Approval

**On `Y` (approve):**
1. Apply each change using Edit tool
2. Commit with descriptive message
3. Update metrics

**On `N` (reject):**
1. Discard proposed changes
2. Log rejection for analysis

**On `modify`:**
1. Present each change individually
2. Allow editing before applying

**On selective (e.g., `1,3`):**
1. Apply only specified changes
2. Commit partial updates

## State Management

State is stored in `~/.reflect/` (configurable via `REFLECT_STATE_DIR`):

```yaml
# reflect-state.yaml
auto_reflect: false
last_reflection: "2026-01-26T10:30:00Z"
pending_reviews: []

Metrics Tracking

# reflect-metrics.yaml
total_sessions_analyzed: 42
total_signals_detected: 156
total_changes_accepted: 89
acceptance_rate: 78%
confidence_breakdown:
  high: 45
  medium: 32
  low: 12
most_updated_agents:
  code-reviewer: 23
  backend-developer: 18
skills_created: 5

Safety Guardrails

Human-in-the-Loop

  • NEVER apply changes without explicit user approval
  • Always show full diff before applying
  • Allow selective application

Incremental Updates

  • ONLY add to existing sections
  • NEVER delete or rewrite existing rules
  • Preserve original structure

Conflict Detection

  • Check if proposed rule contradicts existing
  • Warn user if conflict detected
  • Suggest resolution strategy

Output Locations

Project-level (versioned with repo):

  • .claude/reflections/YYYY-MM-DD_HH-MM-SS.md - Full reflection
  • .claude/skills/{name}/SKILL.md - New skills

Global (user-level):

  • ~/.reflect/learnings.yaml - Learning log
  • ~/.reflect/reflect-metrics.yaml - Aggregate metrics

Examples

Example 1: Code Style Correction

User says: "Never use var in TypeScript, always use const or let"

Signal detected:

  • Confidence: HIGH (explicit "never" + "always")
  • Category: Code Style
  • Target: frontend-developer.md

Proposed change:

## Style Guidelines
+ * Use `const` or `let` instead of `var` in TypeScript

Example 2: Process Preference

User says: "Always run tests before committing"

Signal detected:

  • Confidence: HIGH (explicit "always")
  • Category: Process
  • Target: CLAUDE.md

Proposed change:

## Commit Hygiene
+ * Run test suite before creating commits

Example 3: New Skill from Debugging

Context: Spent 30 minutes debugging a React hydration mismatch

Signal detected:

  • Confidence: HIGH (non-trivial debugging)
  • Category: New Skill
  • Quality gates: All passed

Proposed skill: react-hydration-fix/SKILL.md

Troubleshooting

No signals detected:

  • Session may not have had corrections
  • Check if using natural language corrections

Conflict warning:

  • Review the existing rule cited
  • Decide if new rule should override
  • Can modify before applying

Agent file not found:

  • Check agent name spelling
  • May need to create agent file first