skills/write-tbp/SKILL.md
This skill covers how to write technical blog posts about tldraw's implementation details.
Create an assets folder for this topic in this skill directory:
assets/<topic>/
├── research.md # Gathered context and notes
└── draft.md # The blog post draft
Use a short, kebab-case name for the topic (e.g., scribbles, arrow-routing, dash-patterns).
Use an Explore subagent to gather all relevant information:
Task (subagent_type: Explore, thoroughness: very thorough)
Find all code, documentation, and context related to [TOPIC] in the tldraw codebase.
Look for:
- Implementation files in packages/editor and packages/tldraw
- Type definitions in packages/tlschema
- Related examples in apps/examples
- Any existing documentation in apps/docs/content
- Tests that reveal behavior
- Comments explaining why things work the way they do
For each relevant file, note:
- What it does
- Key functions/classes
- Interesting implementation details
- Any "why" comments or non-obvious decisions
Output a comprehensive summary of how [TOPIC] works. This document will be read by another agent. No need to over-optimize for human readability.
Save the research output to assets/<topic>/research.md.
Before writing, answer these questions from the research:
If you can't find an interesting angle, the topic may not be suitable for a technical blog post.
Create assets/<topic>/draft.md following the blog-guide structure:
Target 800-1500 words.
Check the draft against the blog-guide checklist:
Revise the draft to address any gaps.
Present the final draft to the user for review. The draft remains in assets/<topic>/draft.md until the user is satisfied, at which point they can move it to the appropriate location.
../shared/blog-guide.md for voice, tone, and structure.../shared/writing-guide.md for general writing conventions.