templates/analytics/.builder/skills/learn/SKILL.md
Extract key learnings from the current chat thread and save them to docs/learnings.md. Use this skill when the user types "/learn" or asks to save learnings from the conversation.
npx skillsauth add BuilderIO/agent-native learnInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
/learn in chatPOST /api/learnPOST /api/learnAppends a structured entry to docs/learnings.md.
Structured entry (preferred for individual learnings):
{
"category": "User Preferences",
"insight": "Always filter out internal team emails when showing customer-specific activity",
"source": "User correction during customer dashboard session"
}
Raw markdown (for complex multi-line entries):
{
"rawMarkdown": "### Customer Data\n\n**Example Corp** org ID: `example-org-id`. Primary contact: [email protected]."
}
GET /api/learnReturns the current contents of docs/learnings.md as { content: string }.
Use one of the existing section headers from docs/learnings.md:
Agent Behavior RulesCustomer DataUser PreferencesUI PatternsDashboard Data Fetching PatternReusable ScriptsCross-Referencing Customers Across ServicesUse Other if none fit — the learning will be appended at the end of the file.
When reviewing a thread, focus on:
| Signal | Example |
| ------------------------ | ----------------------------------------------------------- |
| User corrections | "No, that metric should use signup not sign_up" |
| Data source mappings | "Example Corp org IDs are X, Y, Z" |
| Query patterns | "Always join on dim_hs_contacts for customer lookups" |
| Preferences | "I prefer stacked bar charts for per-user breakdowns" |
| Gotchas | "The data column is JSON — use JSON_VALUE() to extract" |
| Workflow insights | "Check Grafana before looking at code for incidents" |
Skip obvious or trivial observations. Each learning should be actionable — what to do, what not to do, and why.
User types /learn. Agent responds:
POST /api/learn:
POST /api/learn
{ "category": "Customer Data", "insight": "Example Corp org ID is `example-org-id`", "source": "Thread with Steve" }
Saved 3 learnings to
docs/learnings.md:
- Customer Data: Example Corp org ID is
example-org-id- User Preferences: Use dark theme for all exported charts
- Agent Behavior Rules: Always check Sentry before investigating code for error spikes
docs/learnings.md first to avoid duplicating existing entriessource field is optional but helpful for traceabilitytools
Public booking flow — the state machine, animations, and URL/app-state sync.
tools
Trigger-based automations — reminders, follow-ups, webhooks — across the booking lifecycle.
tools
Team event types, round-robin assignment, collective bookings, host weights, and no-show calibration.
development
The pure `computeAvailableSlots` function — inputs, outputs, invariants, and debugging guide.