Structuring solution docs
Skill vemodalen-x/VEMO_SKILLS/skills/research/structuring-solution-docs
Structure rules for a technical solution / design document (the research-solution framework's solution_document deliverable). Style-as-rules for document STRUCTURE — arc42 skeleton + MADR per-decision blocks — turned into checkable rules. Use when the research-solution agent authors the solution/design doc after the survey + recommendation. Owned by Framework 1 (research). Generic; project values live in the instance.From its SKILL.md
npx -y skills add vemodalen-x/VEMO_SKILLS --skill structuring-solution-docsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.2 KB, 945 tokens by cl100k_base, as published. Nobody here has run it
Solution-Doc Structure (arc42 + MADR, as checkable rules)
Governs the structure of a technical solution / design document — the solution_document in the
research-solution framework's requires_outputs (Wildtarsier §1.9). Complements technical-report-style
(which governs report prose) and polishing-chinese-prose (Chinese prose); this one governs the design-doc skeleton and
the per-decision block shape. Generic content (skill_spec §9): project specifics live in the instance.
When to use
- The research-solution agent, after the survey + recommendation, authors the solution/design doc for the chosen route.
- Trigger phrases: "写方案", "solution doc", "design doc", "技术方案文档".
Borrowed sources (provenance)
- arc42 (https://github.com/arc42/arc42-template, CC-BY-SA) — the section skeleton (S1–S12 below).
- MADR (https://github.com/adr/madr, MIT) — the per-architecture-decision block shape (D1–D6 below).
- Borrowed as structure ideas, transcribed into checkable rules; see the research skill_catalog borrow-note.
A. Document skeleton (arc42-derived) — required sections
The solution doc MUST cover these (omit a section only with an explicit "N/A — reason"):
- S1. Introduction & Goals — what the solution achieves; the top quality goals (from the PRD/NFRs).
- S2. Constraints — technical/platform/regulatory constraints (the project's hardware/budget/legal limits).
- S3. Context & Scope — system boundary, external interfaces, what's in/out of scope.
- S4. Solution Strategy — the chosen route in one view; why it meets the goals (links to the survey recommendation).
- S5. Building Blocks — decomposition into components, each with a responsibility.
- S6. Runtime / Flow — key scenarios as flows (a diagram per
technical-report-styleR7 — Feishu whiteboard mermaid). - S7. Deployment view — how it maps onto the target platform (runtime/hardware + integration point).
- S8. Architecture Decisions — the key decisions, each as a MADR block (§B).
- S9. Quality Requirements — measurable quality scenarios (ties to the project's NFRs/targets).
- S10. Risks & Technical Debt — known risks + mitigations + open items.
- S11. Interfaces / API — the integration contract / event API for downstream build (project-specific shape).
- S12. References — sources, cited per
technical-report-styleR4 (实测/文献/推测 tags).
B. Per-architecture-decision block (MADR-derived) — required fields
Every key design decision in S8 MUST carry (this is also the reviewing-decisions floor, see reviewing-decisions skill):
- D1. Context & problem — what forces the decision.
- D2. Decision drivers — the criteria (quality goals, constraints) that matter.
- D3. Considered options — ≥2 candidates, each with pros + cons (no one-sided option).
- D4. Decision — the chosen option, stated plainly.
- D5. Rationale — why it wins against the drivers, evidence-backed (cited).
- D6. Consequences — trade-offs accepted, follow-ups, what it forecloses.
Rules
- Structure is constrained, not free-form: every solution doc satisfies §A (skeleton) + §B (each decision block).
- Diagrams/flows via whiteboard, tables for comparisons (defer to
technical-report-styleR6–R8). - Language follows the project language policy (instance; ADR-style tiering) — same as other deliverables.
- Decoupling (skill_spec §9): this body is generic. Project specifics — the actual components, the chip, the NFR thresholds — are instance/deliverable content, not hardcoded here.
References
references/arc42-mapping.md— the arc42 → S1–S12 mapping + what each section answers (checklist form).
What ships with it: 1 file
1.6 KB alongside SKILL.md
references/
- arc42-mapping.md1.6 KB
Gives 0 of the 12 instructions most docs writing skills give in 945 tokens
Counted across 1,637 of the 3,044 authors here whose files we hold, read 2026-08-07
- Announce the skill at startin 54 of 1637, across 26 files
- Convert legacy doc files before editingin 45 of 1637, across 7 files
- Predict questions readers might askin 42 of 1637, across 4 files
- Generate clarifying questions for initial contextin 42 of 1637, across 3 files
- Create document scaffold with placeholder textin 42 of 1637, across 3 files
- Brainstorm content options for each sectionin 42 of 1637, across 3 files
- Test the document with a fresh context-less instancein 42 of 1637, across 3 files
- Include exact file paths in every taskin 42 of 1637, across 15 files
- Ask interview questions one at a timein 42 of 1637, across 27 files
- Apply surgical edits during refinementin 41 of 1637, across 2 files
- Offer structured workflow or freeformin 40 of 1637, across 1 file
- Ask for document meta-contextin 40 of 1637, across 2 files
Said here and by no other author read
- cover all twelve skeleton sections
- mark omitted sections with a reason
- state solution goals and quality goals
- list technical and regulatory constraints
- define the system boundary and scope
- explain the chosen solution strategy
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.