{"slug":"feature-radar-learn","title":"feature-radar-learn","summary":"Extract reusable patterns, architectural decisions, and pitfalls from completed work into .feature-radar/specs/. Captures the \"why\" behind choices so future sessions build on past experience. MUST use this skill when the user reflects on what worked or didn't, wants to record a d","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-09-30T19:53:11.293332Z","repo":{"url":"https://github.com/runkids/my-skills","stars":14,"forks":1,"license":null,"updatedAt":"2026-09-30T18:53:08Z"},"bodyHtml":"<hr>\n<h2>name: feature-radar-learn\ndescription: |\nExtract reusable patterns, architectural decisions, and pitfalls from completed work\ninto .feature-radar/specs/. Captures the \"why\" behind choices so future sessions build\non past experience. MUST use this skill when the user reflects on what worked or didn't,\nwants to record a decision or pattern for future use, or hit a dead end worth documenting.\nUse when the user asks to remember, document, or extract lessons from recent work.\nDo NOT use for recording external observations — that's feature-radar-ref's job.\nDo NOT use for archiving completed features — that's feature-radar-archive's job.</h2>\n<h1>Extract Learnings</h1>\n<p>Capture reusable knowledge from completed work into <code>.feature-radar/specs/</code>.</p>\n<h2>Deep Read</h2>\n\n<h2>Behavioral Directives</h2>\n\n<h2>Workflow</h2>\n<ol>\n<li><p><strong>Identify the source</strong> — ask the user what was just completed (feature, bug fix, refactor, investigation)</p>\n</li>\n<li><p><strong>Analyze the work</strong> — review recent commits, changed files, and implementation decisions</p>\n</li>\n<li><p><strong>Extract knowledge</strong> — classify each reusable piece into exactly one category, and state the classification in your output:</p>\n<ul>\n<li><strong>Pattern</strong>: recurring solution worth replicating (e.g., \"three-tier config merge\")</li>\n<li><strong>Decision</strong>: architectural choice with rationale (e.g., \"YAML over JSON because...\")</li>\n<li><strong>Pitfall</strong>: mistake or dead end to avoid</li>\n<li><strong>Technique</strong>: implementation approach that worked well</li>\n</ul>\n</li>\n<li><p><strong>Write to specs</strong> — create or append to <code>.feature-radar/specs/{topic}.md</code></p>\n</li>\n<li><p type=\"\"><strong>Checkpoint</strong> — State what was written and ask: \"I've written to <code>specs/{topic}.md</code> (). Does this look correct, or should I adjust anything?\" Wait for user confirmation before proceeding.</p>\n</li>\n<li><p><strong>Update base.md</strong> — increment the specs count in Tracking Summary</p>\n</li>\n</ol>\n<h2>File Format</h2>\n<p>Use the format defined in <code>../feature-radar/references/SPEC.md</code> § 3.4 (<code>specs/{topic}.md</code>).</p>\n<h2>Guidelines</h2>\n<ul>\n<li>One topic per file. If the learning spans multiple topics, create multiple files.</li>\n<li>Name files by the pattern, not by the feature that produced it.\n<ul>\n<li>Good: <code>yaml-config-merge.md</code>, <code>symlink-vs-copy-tradeoffs.md</code></li>\n<li>Bad: <code>audit-feature-learnings.md</code>, <code>v2-refactor-notes.md</code></li>\n</ul>\n</li>\n<li>Append to existing files when the new learning extends a known topic.</li>\n<li>Keep it concise — future readers need the insight, not the full story.</li>\n</ul>\n<h2>Example Output</h2>\n<pre><code>→ Created specs/symlink-vs-copy-tradeoffs.md (Decision)\n→ Updated base.md: specs 2 → 3\n</code></pre>\n<h2>Completion Summary</h2>\n<p>Follow the template in <code>../feature-radar/references/DIRECTIVES.md</code>, with skill name \"Learn Complete\".</p>\n","files":[{"path":"SKILL.md","sizeBytes":2824,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-09-30T19:53:56.888505Z","sha256":"AA2F8BFE11D596B6120F9A1A02FB5E4B5D580B3943A39E77D997CE76B044D0B1","sizeBytes":1469},"review":null,"source":{"repositoryUrl":"https://github.com/runkids/my-skills","path":"feature-radar/feature-radar-learn","license":null,"commit":"7f33dbc5934c5e27920b3e88e8a6ccb06f304b98","subtreeSha":"350351037130544AF1AF2DBC1687446D4B08D6FD5B4C45059BD1E0BB484FEC01","lastSyncedAt":"2026-09-30T19:53:09.4483Z"},"reviewedAt":"2026-09-30T20:00:38.0361Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/runkids/my-skills/tree/main/feature-radar/feature-radar-learn"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install runkids-my-skills@llmmart"},{"target":"git","command":"git clone https://github.com/runkids/my-skills.git"}]}