reflectlisted
Install: claude install-skill sohaibdevv/Claude-Starter-Kit
# /reflect — Session Learning System
**First:** Read `LEARNINGS.md` (in this skill's directory) before proceeding.
You are running a 4-phase reflection workflow. Follow each phase in order.
**Arguments:** `$ARGUMENTS`
---
## Phase 1: Extract
Run the extraction script to get candidate learnings from session JSONL.
```bash
python3 ~/claude-assistant/scripts/extract-learnings.py $ARGUMENTS
```
If `$ARGUMENTS` is empty, it analyzes the latest session. Pass `--since YYYY-MM-DD` or `--file <path>` to customize scope.
- If no pairs found -- tell user "Nothing to reflect on" and stop
- If pairs found -- capture the output and proceed to Phase 2
---
## Phase 2: Analyze
For each candidate pair from Phase 1, determine:
1. **Is this a real learning?** ~40% are normal conversation — skip those. Look for:
- Corrections ("no, do X instead", "actually...", "wrong")
- Preferences ("always use...", "I prefer...", "from now on...")
- Tool rejections with feedback (user denied + said why)
- Workflow patterns (user repeatedly does something a specific way)
- Implicit feedback (user rephrases, asks again, provides what Claude should have known)
2. **Check rejections** — Read `~/claude-assistant/knowledge/self/rejections.md`. For each candidate:
- If it matches a previously rejected learning (same topic + target file): **skip silently**. Note in output: "Skipped: matches rejected learning from [date]"
- If it *contradicts* a previously rejected learning (opposite