← ClaudeAtlas

lesson-learnedlisted

Analyze recent code changes via git history and extract software engineering lessons. Use when the user asks 'what is the lesson here?', 'what can I learn from this?', 'engineering takeaway', 'what did I just learn?', 'reflect on this code', or wants to extract principles from recent work.
softaworks/agent-toolkit · ★ 1,980 · AI & Automation · score 83
Install: claude install-skill softaworks/agent-toolkit
# Lesson Learned Extract specific, grounded software engineering lessons from actual code changes. Not a lecture -- a mirror. Show the user what their code already demonstrates. ## Before You Begin **Load the principles reference first.** 1. Read `references/se-principles.md` to have the principle catalog available 2. Optionally read `references/anti-patterns.md` if you suspect the changes include areas for improvement 3. Determine the scope of analysis (see Phase 1) **Do not proceed until you've loaded at least `se-principles.md`.** ## Phase 1: Determine Scope Ask the user or infer from context what to analyze. | Scope | Git Commands | When to Use | |-------|-------------|-------------| | Feature branch | `git log main..HEAD --oneline` + `git diff main...HEAD` | User is on a non-main branch (default) | | Last N commits | `git log --oneline -N` + `git diff HEAD~N..HEAD` | User specifies a range, or on main (default N=5) | | Specific commit | `git show <sha>` | User references a specific commit | | Working changes | `git diff` + `git diff --cached` | User says "what about these changes?" before committing | **Default behavior:** - If on a feature branch: analyze branch commits vs main - If on main: analyze the last 5 commits - If the user provides a different scope, use that ## Phase 2: Gather Changes 1. Run `git log` with the determined scope to get the commit list and messages 2. Run `git diff` for the full diff of the scope 3. If the diff is large (>500 lines), u