skills/learning-material-writer/SKILL.md
Create or update repo learning material under docs/learning for programmers new to the codebase. Use only when the user explicitly asks for learning material, onboarding docs, a codebase guide, repo handbook, or docs/learning content. Treat it as onboarding guidance, not the source of truth for behavior or decisions.
npx skillsauth add sjunepark/custom-skills learning-material-writerInstall 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.
Write concise learning material that helps a programmer become fluent in an unfamiliar repository. Use the same teaching priorities as teach: build the mental model first, explain roles and boundaries before low-level details, use small snippets only when they genuinely clarify the point, and add compact ASCII diagrams only when they reduce explanation.
The difference is output shape: instead of replying with one lesson in chat, create a navigable document set inside docs/learning.
Learning material is for orientation and onboarding. It must not present itself as the repository's authoritative source for implementation truth, product decisions, or development policy.
docs/learning is for onboarding and reader understanding.docs/learning/INDEX.md, include a short note telling readers to defer to more authoritative sources when accuracy or current behavior matters.AGENTS.md, README.md, docs/INDEX.md, or another docs index, update that surface when needed so the role of docs/learning is obvious there too.docs/learning if present.docs/learning.docs/learning/INDEX.md as the root entry point.INDEX.md inside directories that contain multiple child pages.teach style: purpose first, then main flow, then key mechanisms, then confusing parts.The document set should normally cover these areas, adapted to the repo:
If some area does not meaningfully exist in the repo, omit it rather than forcing a template.
Treat the docs like a short book, not a dump of notes.
system-overview, runtime-flows, module-boundaries, subsystems, or design-decisions when they fit the repo.Good patterns:
docs/learning/
INDEX.md
system-overview.md
codebase-map.md
runtime-flows/
INDEX.md
request-lifecycle.md
background-jobs.md
subsystems/
INDEX.md
auth.md
billing.md
design-decisions/
INDEX.md
state-management.md
docs/learning/
INDEX.md
product-and-architecture.md
how-data-moves/
INDEX.md
ingestion.md
serving.md
major-parts/
INDEX.md
api-layer.md
storage-layer.md
Bad patterns:
src/ without explaining why those parts matterUse a page shape that helps scanning. Adapt section names as needed, but most pages should answer some of these quickly:
Good page openings:
docs/learning/INDEX.md should usually include:
Directory INDEX.md pages should do the same thing for their local section.
If docs/learning already exists:
Do not:
docs/learning unless the user asked for that tooWhen doing the work:
docs/learningdocs/learning is explicitdevelopment
Long-running systematic codebase review with a persistent ledger in reviews/. Use to plan review areas, continue the next review pass, check campaign status, triage findings with the user, or apply auto-tier fixes. Modes: plan, continue, status, triage, fix (default continue).
development
Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or improve a frontend interface. Covers websites, landing pages, dashboards, product UI, app shells, components, forms, settings, onboarding, empty states, UX review, visual hierarchy, information architecture, accessibility, performance, responsive behavior, theming, typography, spacing, layout, color, motion, micro-interactions, UX copy, error states, edge cases, i18n, design systems, tokens, live browser iteration, and ambitious visual effects. Not for backend-only or non-UI tasks.
development
Manually integrate Git branch work without blind mechanical merges. Use when merging, transplanting, or refactoring branch work; resolving conflicts; preserving source-branch intent in a clean current-branch structure; or auditing that source additions, removals, tests, and docs landed intentionally.
testing
Prepare, audit, set up, and guide Release Please releases. Use when releasing, preparing or reviewing a release PR, adding Release Please, classifying SemVer impact or breaking changes, writing Release Please-compatible Conventional Commit guidance, or documenting release criteria. Release work requires existing Release Please config; setup requires an explicit setup request.