Skip to main content

Overview

learn records a piece of tacit knowledge — a non-obvious gotcha, a workaround for a quirk, a pattern the team has converged on, or a discovery from debugging. Learnings are surfaced in future sync responses so every agent inherits them. Run enagrams compile-rules periodically to bake recent learnings into .cursor/rules/team-learnings.mdc so new Cursor sessions load them as project rules automatically.

Parameters

ParameterTypeRequiredDescription
insightstringYesWhat you learned, in one or two sentences
typestringNogotcha, workaround, pattern, discovery, or convention
tagsstringNoComma-separated tags
filesstringNoComma-separated related file paths

Example

{
  "tool": "learn",
  "arguments": {
    "insight": "Stripe test mode rate-limits webhook deliveries differently from live mode — retry backoff must accommodate 30s gaps.",
    "type": "gotcha",
    "tags": "stripe, webhooks, testing",
    "files": "src/billing/webhook.ts"
  }
}

When to Call learn

  • You just spent 20 minutes figuring out something that wasn’t obvious
  • You found a workaround for a library quirk
  • You discovered that a team pattern exists but wasn’t documented
  • You fixed a bug whose root cause would trip up the next agent
Decisions are permanent architectural choices; learnings are field-notes. Record both.