Skip to content
cccskills
FreePublished on GitHub

rfc-writer

Write well-structured RFCs with normative clauses. Use when: (1) Creating a new RFC, (2) Adding or editing RFC clauses, (3) User mentions RFC, specification, or normative requirements

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md4.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

RFC Writer

Write RFCs that are precise, complete, and follow govctl conventions.

Invocation Mode

This helper skill may be used standalone or by /discuss, /gov, /spec, or /migrate. It is responsible for RFC content and clause quality, not RFC lifecycle verbs. Use /spec or /gov for govctl rfc finalize, bump, or advance.

Quick Reference

govctl rfc new "<title>"
govctl clause new <RFC-ID>:C-<NAME> "<title>" -s "<section>" -k <kind>
govctl clause edit <RFC-ID>:C-<NAME> --stdin <<'EOF'
clause text
EOF

RFC Structure

Every RFC should have:

  1. Summary clause (informative) — what this RFC covers and why
  2. Specification clauses (normative) — the actual requirements
  3. Rationale sections within clauses — why each requirement exists

Summary Clause Template

govctl clause new <RFC-ID>:C-SUMMARY "Summary" -s "Summary" -k informative
govctl clause edit <RFC-ID>:C-SUMMARY --stdin <<'EOF'
Brief overview of what this RFC specifies and why.

**Scope:** What is covered and what is not.

**Rationale:** Why this specification is needed.
EOF

Normative Clause Template

govctl clause new <RFC-ID>:C-<NAME> "<Title>" -s "Specification" -k normative
govctl clause edit <RFC-ID>:C-<NAME> --stdin <<'EOF'
The system MUST ...
The system SHOULD ...
The system MAY ...

**Rationale:**
Why this requirement exists.
EOF

Writing Rules

RFC 2119 Keywords

Use these keywords in ALL CAPS in normative clauses:

KeywordMeaning
MUSTAbsolute requirement
MUST NOTAbsolute prohibition
SHOULDRecommended but not required
SHOULD NOTDiscouraged but not prohibited
MAYOptional

Quality Checklist

  • Be specific. Avoid vague terms: "appropriate", "reasonable", "as needed". Say exactly what.
  • Include rationale. Every normative clause should explain why, not just what.
  • One requirement per sentence. Don't chain MUST/SHOULD in a single sentence.
  • Reference existing artifacts. Use [[RFC-NNNN]] or [[ADR-NNNN]] syntax.
  • Testable. Each MUST/SHOULD should be verifiable — if you can't test it, rewrite it.

Clause Naming

  • Use C- prefix followed by a descriptive uppercase name with hyphens
  • Good: C-VALIDATION, C-ERROR-FORMAT, C-WORK-DEF
  • Bad: C-1, C-Misc, C-stuff

Section Types

SectionClause KindContent
SummaryinformativeOverview, scope, rationale
SpecificationnormativeMUST/SHOULD/MAY requirements
RationaleinformativeExtended explanation

Rendering Rules

The renderer auto-generates structural elements. Do NOT include these in clause text:

  • Clause heading (### [RFC-XXXX:C-NAME] Title) — auto-generated from metadata
  • *Since: vX.Y.Z* — auto-generated from the since JSON field
  • > **Superseded by:** ... — auto-generated from the superseded_by field
  • Amended: ... — does not exist; do not hallucinate this

Clause text should contain only the specification prose, rationale, and [[...]] references.

Common Mistakes

MistakeFix
Vague MUST: "MUST handle errors appropriately"Specific: "MUST return Result<T, E> with descriptive error message"
No rationaleAdd **Rationale:** section explaining why
Untestable requirementRewrite so it can be verified programmatically
Missing cross-referencesAdd [[RFC-NNNN]] or [[ADR-NNNN]] links
Including Since: in clause textDon't — the renderer adds it from the since field automatically
Including clause heading in textDon't — the renderer generates ### [RFC:C-NAME] Title from metadata

Validation and Handoff

  • Run govctl check after substantive RFC edits
  • Use rfc-reviewer before lifecycle handoff
  • Use /spec for clarification-only or artifact-only RFC maintenance
  • Use /gov for implementation-bearing RFC amendments

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Write effective Architecture Decision Records. Use when: (1) Creating a new ADR, (2) Recording a design decision, (3) User mentions ADR, decision, trade-off, or alternatives

The English summary is being prepared. Showing the original description.

lucifer1004/typub35Updated Jul 11, 2026

commit

Free

Commit changes with govctl integration — check work item status, update journal or notes, and run govctl check

The English summary is being prepared. Showing the original description.

lucifer1004/typub35Updated Jul 11, 2026

Stress-test a design decision with premortem/backcast analysis, then produce a risk-calibrated recommendation that maps to ADR fields. Use when: (1) Multiple competing architecture options, (2) Irreversible or high-risk design choices, (3) /discuss identifies a complex trade-off

The English summary is being prepared. Showing the original description.

lucifer1004/typub35Updated Jul 11, 2026

Facilitate design discussion — research context, clarify requirements, draft RFC/ADR

The English summary is being prepared. Showing the original description.

lucifer1004/typub35Updated Jul 11, 2026

gov

Free

Execute governed implementation workflow with work items, RFC/ADR checks, phase gates, testing, and closure. Use when: (1) User invokes /gov, (2) A non-trivial change needs work item tracking, (3) Implementation may require RFC/ADR handling

The English summary is being prepared. Showing the original description.

lucifer1004/typub35Updated Jul 11, 2026

Write well-structured Verification Guards. Use when: (1) Creating a new guard, (2) Editing guard check commands or patterns, (3) User mentions guard, verification, or check

The English summary is being prepared. Showing the original description.

lucifer1004/typub35Updated Jul 11, 2026

See all skills by lucifer1004

Report a problem with this skill