osdlc

explain

Explain one thing as a parley document with no questions: the subject as typed blocks with numbered nodes anchored to the exact text, a walkthrough the reader comments on. Domains are notes beside this skill (sql today). Then hand it to parley. Use it when the reader needs to understand something, not decide something.

osdlc 3 Updated 5d ago

Resources

1
GitHub

Install

npx skillscat add osdlc/osdlc/claude-plugin-packs-craft-skills-explain

Install via the SkillsCat registry.

SKILL.md

/craft:explain

Usage:

  • /craft:explain <domain> <subject> explains the subject: a file, a query, a schema source.
  • /craft:explain sql <query file> walks a query in execution order.
  • /craft:explain sql <ddl, migrations dir or dump> describes the database it defines.

Scope: one subject to one document with no questions. Not in scope: proposing a change
(/craft:discuss), running the thing explained, or serving the page (/craft:parley).

Inputs: the domain, the subject, and the domain note domains/<domain>.md beside this skill.
Output: docs/parley/<id>.json, checked and served, with no questions.

What an explanation is

  • Blocks from the domain note, in reading order; a prose block first when the subject needs
    framing.
  • Every node anchored to the exact text it explains (a TextQuoteSelector) and, when the
    subject lives in the repo, carrying source so the page links to the lines.
  • summary in one line and detail in two to four short paragraphs per node.
  • A warning for every silent-failure case the reader could miss.
  • No questions. Where the subject embeds a choice, say so in the node's detail; a decision is
    /craft:discuss.

Steps

  1. Read the domain note and the subject; name the dialect or language. If the domain has no
    note, say so, suggest one, and proceed on the block types alone (/craft:parley).
  2. List the nodes in the order the domain note asks for and give each a stable id, a word
    never a number.
  3. For each node write the anchor, title, summary, detail and warnings, and the domain's extra
    fields.
  4. Write docs/parley/<id>.json, id being the kebab-case title, and run /craft:parley check.
  5. Run /craft:parley serve, which starts the listener, and give the link. Answer each comment
    as it arrives, without waiting to be told.

Grading

  • Every anchor resolves and the nodes read in the domain note's order.
  • Every node's detail says more than its summary.
  • The document has no questions.
  • A rewrite keeps every node id.

Test environment

examples/sql/orders-query-explained.json and examples/sql/orders-schema.json beside
/craft:parley are reference outputs. Explain their subjects from scratch and compare.