From craft
This skill should be used when the user asks to "apply insights", "insights to rules", "update rules from insights", "apply suggestions", or mentions updating CLAUDE.md from insights data. Extracts suggestions from the /insights report and applies them to the global CLAUDE.md via the sync pipeline.
npx claudepluginhub data-wise/craft --plugin craftThis skill uses the workspace's default tool permissions.
Extract CLAUDE.md improvement suggestions from the /insights report and apply them through the sync pipeline. Targets the global CLAUDE.md only (insights are cross-project).
Provides Ktor server patterns for routing DSL, plugins (auth, CORS, serialization), Koin DI, WebSockets, services, and testApplication testing.
Conducts multi-source web research with firecrawl and exa MCPs: searches, scrapes pages, synthesizes cited reports. For deep dives, competitive analysis, tech evaluations, or due diligence.
Provides demand forecasting, safety stock optimization, replenishment planning, and promotional lift estimation for multi-location retailers managing 300-800 SKUs.
Extract CLAUDE.md improvement suggestions from the /insights report and apply them through the sync pipeline. Targets the global CLAUDE.md only (insights are cross-project).
/insights and seeing claude_md_additions suggestions~/.claude/usage-data/~/.claude/usage-data/report.html or facets data)~/.claude/CLAUDE.mdExecute these steps in order.
Locate and parse the insights data:
# Check for insights data
if [ -f ~/.claude/usage-data/report.html ]; then
echo "Found insights report"
elif [ -d ~/.claude/usage-data/facets/ ]; then
echo "Found facets data"
else
echo "No insights data found. Run /insights first."
exit 1
fi
Extract the claude_md_additions array from the report. These are structured suggestions with:
title: Section heading for CLAUDE.mdcontent: The actual rules/guidance to addsource: Which sessions/patterns generated this suggestionpriority: How impactful the suggestion is (high/medium/low)Show each suggestion with context for user review:
┌───────────────────────────────────────────────────────────────┐
│ INSIGHTS SUGGESTIONS (N found) │
├───────────────────────────────────────────────────────────────┤
│ │
│ Suggestion 1/N: <title> │
│ Source: <N sessions with this pattern> │
│ Priority: <high|medium|low> │
│ │
│ Proposed CLAUDE.md addition: │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ ## <Title> │ │
│ │ - <rule 1> │ │
│ │ - <rule 2> │ │
│ │ - <rule 3> │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
└───────────────────────────────────────────────────────────────┘
For each suggestion, ask the user:
{
"questions": [{
"question": "Apply this suggestion to global CLAUDE.md?",
"header": "Apply",
"multiSelect": false,
"options": [
{
"label": "Apply (Recommended)",
"description": "Add this section to ~/.claude/CLAUDE.md"
},
{
"label": "Skip",
"description": "Don't add this suggestion"
},
{
"label": "Edit first",
"description": "Let me modify the content before applying"
}
]
}]
}
For each approved suggestion, use the CLAUDE.md sync pipeline:
# Apply using the sync pipeline
python3 utils/claude_md_sync.py ~/.claude/CLAUDE.md --add-section "<title>" "<content>"
If sync pipeline is not available, fall back to direct append:
# Fallback: Direct append to CLAUDE.md
echo "" >> ~/.claude/CLAUDE.md
echo "## <Title>" >> ~/.claude/CLAUDE.md
echo "" >> ~/.claude/CLAUDE.md
echo "<content>" >> ~/.claude/CLAUDE.md
After applying all approved suggestions, verify the CLAUDE.md stays within budget:
# Run budget enforcer
python3 utils/claude_md_optimizer.py ~/.claude/CLAUDE.md --check
# If over budget, the optimizer will:
# 1. Report which sections exceed limits
# 2. Suggest P2 content to move to detail files
# 3. Offer to auto-optimize
If the CLAUDE.md exceeds the line budget after additions:
┌───────────────────────────────────────────────────────────────┐
│ ⚠️ BUDGET WARNING │
├───────────────────────────────────────────────────────────────┤
│ CLAUDE.md is now N lines (budget: 200 lines) │
│ Over budget by M lines │
│ │
│ Options: │
│ 1. Run optimizer to trim P2 content │
│ 2. Keep as-is (will be truncated at 200 lines) │
│ 3. Manually edit to reduce size │
└───────────────────────────────────────────────────────────────┘
Summarize what was applied:
┌───────────────────────────────────────────────────────────────┐
│ INSIGHTS APPLY REPORT │
├───────────────────────────────────────────────────────────────┤
│ Suggestions found: N │
│ Applied: M │
│ Skipped: P │
│ Edited: Q │
│ │
│ CLAUDE.md status: Within budget / Over budget │
│ File: ~/.claude/CLAUDE.md │
│ │
│ Applied sections: │
│ ✅ Branch Guard & Git Hooks │
│ ✅ Worktree Best Practices │
│ ⏭️ Release Pipeline (skipped) │
│ ✅ Testing Conventions (edited) │
└───────────────────────────────────────────────────────────────┘
Use craft box-drawing format throughout. Show step progress:
[1/5] Parse insights ........... DONE (N suggestions found)
[2/5] Present suggestions ...... DONE (user reviewed N)
[3/5] Apply approved ........... DONE (M applied)
[4/5] Budget check ............. DONE (within budget)
[5/5] Report ................... SHOWN
| Error | Recovery |
|---|---|
| No insights data | Suggest running /insights first |
| CLAUDE.md not found | Suggest running /craft:docs:claude-md:init |
| Sync pipeline fails | Fall back to direct append |
| Over budget | Offer optimizer or manual edit |
| Parse error | Show raw data for manual review |
Global CLAUDE.md only. Insights are cross-project patterns, so they belong in ~/.claude/CLAUDE.md, not project-specific files.
/insights — Generate the insights report/craft:docs:claude-md:sync — CLAUDE.md sync pipelineutils/claude_md_sync.py — 4-phase sync pipelineutils/claude_md_optimizer.py — Budget enforcement