Skip to main content

learn

Extract reusable patterns from recent work into instincts. Run after completing features, fixing bugs, or at session end to capture what the project learned.

Jump to install

Source facts

Repository
All-The-Vibes/ATV-StarterKit
Last source activity
April 7, 2026 at 20:40
Detected SKILL.md language
English
Stars
51
Forks
15

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
learn
description
Extract reusable patterns from recent work into instincts. Run after completing features, fixing bugs, or at session end to capture what the project learned.
# /learn — Extract Patterns into Instincts Analyze recent work (observations, git history, solutions) and extract reusable "instincts" — small learned behaviors with confidence scoring. ## When to Use - After completing a feature or fixing a bug - At the end of a coding session - When you want to capture a pattern you noticed - Periodically to keep the project's knowledge current ## Execution Flow ### Step 1: Gather Evidence Run these in parallel to collect data: 1. **Git history** — `git log --oneline -20` for recent commits 2. **Recent diffs** — `git diff HEAD~5..HEAD --stat` for what changed 3. **Observations** — Read `.atv/observations.jsonl` for tool use patterns from hooks 4. **Existing instincts** — Read `.atv/instincts/project.yaml` (create if missing) 5. **Solutions** — Read `docs/solutions/` for documented patterns ### Step 2: Analyze Patterns Look for recurring patterns across the evidence: **Code style patterns:** - Error handling conventions (wrapping, custom types, sentinel errors) - Naming conventions (variable, function, file naming) - Import organization preferences - Comment style and documentation patterns **Workflow patterns:** - Test-first vs test-after behavior - Commit granularity preferences - Branch naming conventions - Review practices **Architecture patterns:** - Package/module organization - Dependency injection style - Interface usage patterns - Configuration management approach **Tool usage patterns** (from observations.jsonl): - Frequently used shell commands - Common file editing sequences - Preferred build/test commands ### Step 3: Create or Update Instincts For each new pattern discovered, create an instinct entry. For patterns that match existing instincts, increase confidence and observation count. **Instinct format** (YAML in `.atv/instincts/project.yaml`): ```yaml instincts: - id: kebab-case-unique-id trigger: "when [specific situation]" behavior: "do [specific action]" confidence: 0.5 domain: code-style|testing|architecture|error-handling|workflow|tooling observations: 1 first_seen: YYYY-MM-DD last_seen: YYYY-MM-DD evidence: - "commit abc123: wrapped all errors with fmt.Errorf" - "observed 3 times in observations.jsonl" ``` **Confidence rules:** - New instinct starts at 0.5 - Each additional observation: +0.1 (capped at 0.95) - Contradictory evidence: -0.15 - No observations for 30 days: -0.1 - Minimum: 0.1 (below this, remove the instinct) **Important constraints:** - Maximum 50 active instincts per project - Each instinct must be atomic — one trigger, one behavior - Triggers must be specific (not "when writing code") - Behaviors must be actionable (not "write good code") - Evidence must cite specific commits or observations ### Step 4: Write Results 1. Write updated `.atv/instincts/project.yaml` 2. Ensure `.atv/instincts/` directory exists ### Step 5: Report Show a summary: ``` Learning complete! New instincts: + always-wrap-errors (0.5) — wrap errors with fmt.Errorf using %w + table-driven-tests (0.5) — use table-driven test pattern for Go tests Updated instincts: ↑ prefer-early-returns (0.6 → 0.7) — 1 new observation ↑ run-tests-before-commit (0.7 → 0.8) — 2 new observations Ready to evolve (confidence > 0.8): ★ run-tests-before-commit — consider /evolve to generate a skill Total: X instincts (Y new, Z updated) Instinct file: .atv/instincts/project.yaml ``` ## Notes - Instincts are project-scoped and committed to the repo — the whole team benefits - Run `/instincts` to see all learned patterns - Run `/evolve` when instincts reach high confidence to generate full skills - The observer hooks in `.github/hooks/copilot-hooks.json` automatically capture tool use data
View on GitHub