Agent skill
lcp-wysiwid-spec
Write WYSIWID-style design docs (Concepts + Synchronizations) for go-lcpd, keeping terminology consistent with code.
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/lcp-wysiwid-spec
Metadata
Additional technical details for this skill
- short description
- WYSIWID design doc authoring
SKILL.md
Use this skill when you are authoring or updating go-lcpd design documentation (the “What You See Is What It Does” / WYSIWID pattern).
References (in-repo)
go-lcpd/WhatYouSeeIsWhatItDoes.md(background and rationale)
WYSIWID model (summary)
- A Concept is an independent capability. Concepts must not depend on each other.
- A Synchronization connects Concepts into an end-to-end flow/story.
Writing rules (must follow)
- Start with invariants (“Security & Architectural Constraints”). Use RFC 2119 language (MUST / MUST NOT) and include brief rationales.
- Keep Concepts dependency-free:
- A Concept MUST NOT call actions from other Concepts.
- A Concept MUST NOT reference other Concepts’ types.
- Cross-Concept coordination belongs only in Synchronizations.
- Keep structure flat and scannable; prefer short lists, signatures, and data-shape bullets over long prose.
- Use a ubiquitous language: keep terminology consistent across docs and Go identifiers where possible.
Suggested section order (for spec.md)
- Security & Architectural Constraints
- Concepts
- Synchronizations
Example template (shape)
-
### <ConceptName>- Purpose: …
- Domain Model:
Thing: field, field - Actions:
action(arg) -> out(include side effects + error cases)
-
### sync <SyncName>- Summary: …
- Flow: when / where / then (include error branches)
If the flow is complex, add a Mermaid sequence diagram or state chart.
Validation
- Ensure the doc can be read as the “ubiquitous language” for the relevant code.
- If the doc implies behavior changes, implement them and validate with the module’s normal test/lint flow (see
$lcp-go-lcpd).
Didn't find tool you were looking for?