You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Add `external` mode to `/distill` — analyses external plugin/skill/agent resource via URL or local path; reads structure (E1–E3), extracts mental model (E4–E6), compares against live local setup (E7–E10), scores candidates (E11), produces adoption brainstorm table with adopt-as-is/tweak/discuss/skip lanes (E12), and recommends install-as-is when Group A is thin or cherry-picking effort is large (E13–E15)
- Bump foundry plugin version 0.3.0 → 0.4.0
- Add conflict pre-check and git diff safety gate to distill `lessons` mode — greps target file before writing, flags cross-proposal collisions with ⚠, shows diff for final review before commit
- Auto-trigger fast benchmark in calibrate `apply` mode instead of dead-end error when no prior run exists for target
- Add `/distill-external` calibration entry with two GT fixture cases (caveman plugin → install-as-is; Karpathy autoresearch → Group A maps to research plugin)
- Clarify no-line-wrapping rule covers all message body content in git-commit.md
---
Co-authored-by: Claude Code <noreply@anthropic.com>
| 🟠 `/distill` | Suggest new agents/skills, prune memory, consolidate lessons into rules; `external <source>` analyses an external plugin/skill/agent resource and produces a scored adoption proposal with install-as-is recommendation |
190
+
| 🔵 `/develop:plan` | Scope analysis and implementation planning without code changes |
→ Full command reference, orchestration flows, rules (13 auto-loaded rule files), architecture internals, status line — see [`.claude/README.md` → Skills](.claude/README.md#-skills)
Extracts patterns from work history and corrections, then distills them into durable improvements — new agent or skill suggestions, roster quality review, memory pruning, or promoting lessons into rulesand agent instruction updates.
310
+
Extracts patterns from work history and corrections, then distills them into durable improvements — new agent or skill suggestions, roster quality review, memory pruning, promoting lessons into rules, or analysing external plugins and agentic resources for adoption.
311
311
312
312
```text
313
-
/foundry:distill # analyze project patterns, suggest new agents/skills
314
-
/foundry:distill review # review existing roster for quality and gaps (no new suggestions)
315
-
/foundry:distill prune # trim stale/redundant entries from project MEMORY.md
316
-
/foundry:distill lessons # promote patterns from .notes/lessons.md into rules/agents/skills
317
-
/foundry:distill "I keep doing X manually" # use description as context for suggestions
313
+
/foundry:distill # analyze project patterns, suggest new agents/skills
314
+
/foundry:distill review # review existing roster for quality and gaps (no new suggestions)
315
+
/foundry:distill prune # trim stale/redundant entries from project MEMORY.md
316
+
/foundry:distill lessons # promote patterns from .notes/lessons.md into rules/agents/skills
/foundry:distill "external ./path/to/plugin" # same — local path or directory
319
+
/foundry:distill "I keep doing X manually" # use description as context for suggestions
318
320
```
319
321
320
-
`lessons` mode is the primary post-correction consolidation path. It reads `.notes/lessons.md` and `feedback_*.md` memory files, clusters them by domain, classifies each entry as `-> rule`, `-> agent update`, `-> skill update`, `-> already covered`, or `-> too narrow`, generates proposals, and asks for confirmation before applying anything.
322
+
**`lessons` mode** is the primary post-correction consolidation path. It reads `.notes/lessons.md` and `feedback_*.md` memory files, clusters them by domain, classifies each entry as `→ rule`, `→ agent update`, `→ skill update`, `→ already covered`, or `→ too narrow`, then generates proposals. Before applying, it runs a conflict pre-check — greps each target file for the section the delta would land in and flags cross-proposal collisions with ⚠. Confirmed changes are applied and followed by a `git diff` gate so you can inspect or revert before committing.
323
+
324
+
**`external` mode** does a fast + slow read of the source (URL, file, or directory), extracts the mental model and standout implementation details, compares against the live local setup, then splits candidates into two groups: *Align + improve* (maps cleanly onto existing agents/skills/rules) and *Differentiated highlights* (novel, structurally different — interesting but larger work). Each candidate is scored and assigned to an adoption lane: adopt-as-is / tweak / discuss / skip. When Group A is thin or cumulative edit effort is large, it recommends installing the source as a standalone plugin with justification, rather than cherry-picking. Nothing is written until you confirm.
321
325
322
326
After applying: run `/foundry:init` to propagate new rule files to `~/.claude/`.
For each target in target list, check whether `.reports/calibrate/<TIMESTAMP>/<target>/proposal.md` exists. Collect targets with proposal (`found`) and without (`missing`).
245
245
246
-
Print `⚠ No proposal found for <target> — run /calibrate <target> [fast|full] first` for each missing target.
246
+
For each **missing** target: do not stop — auto-trigger a `fast` benchmark inline. Print `→ No prior run for <target> — running fast benchmark now…`, then execute Steps 2–5 for that target with `fast` mode using a fresh timestamp, and add to `found` list once proposals are written. This ensures `apply` alone always produces results rather than a dead-end error.
247
247
248
248
**Print run's report before applying**: for each found target, read and print `.reports/calibrate/<TIMESTAMP>/<target>/report.md` verbatim so user sees benchmark basis before any file changes.
Copy file name to clipboardExpand all lines: plugins/foundry/skills/calibrate/modes/skills.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -64,6 +64,7 @@ Modes evaluated for calibration but deferred — significant barriers. `/audit`
64
64
|`/distill-review`| Reads real agent/skill files; synthetic roster possible but overlaps `/audit` calibration | Distinct synthetic scenarios identified |
65
65
|`/distill-prune`| Likely calibratable — construct a synthetic memory corpus with known entries to drop (stale, redundant, duplicated-in-CLAUDE.md), then score recall of correct drop/trim/keep decisions; ground truth is constructable | Synthetic memory corpus fixtures built |
66
66
|`/distill-lessons`| Reads real `.notes/lessons.md`; needs realistic synthetic lesson corpus | Lesson corpus fixtures exist |
67
+
|`/distill-external`| Calibratable with two concrete GT fixture cases: **(1) caveman plugin** — narrow communication-mode tool, no local overlap → GT outcome: install-as-is recommendation; **(2) Karpathy autoresearch** — research automation with strong structural overlap to `research:` plugin → GT outcome: Group A candidates map to research plugin, digest recommended. Score whether adoption-table lane assignments (adopt-as-is/tweak/discuss/skip) and install-as-is flag match GT. Ground truth constructable without live external source — fixture = static snapshot of each tool's agent/skill/rule files. | GT fixture snapshots authored |
67
68
68
69
**Excluded** (inherently non-calibratable — documented to avoid recurring evaluation):
0 commit comments