Skip to content
cccskills
FreePublished on GitHub

writing-specs

Guides agents in drafting concise, reliable product and technical specifications. It keeps settled decisions and rationale in the right document, marks unconfirmed inferences, and defines how goal-and-requirements documents should describe capabilities, non-goals, and durable principles.

OriginalShow the original description

Use when a workflow step drafts or revises a spec artifact — a goal-and-requirements, an architecture, or a module SPEC — or when a workflow skill names it at such a step. The shared quality bar for specs — not a workflow, nothing to execute.

Run score Not tested

See how to install

Good for

  • Drafting a product goal and requirements document
  • Recording architecture or module boundaries
  • Revising a spec after a product decision changes
  • Keeping rationale and trade-offs in project specs

Files included (1)

  • SKILL.md2.9 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Writing Specs

The workflow family's shared bar for every spec a workflow produces: short, honest, on-rails. Process skills name this concept at the steps that draft or revise specs; what to draft and when stays with the referencing skill. Graph mechanics — frontmatter, link kinds, the spec_* tools — are the spec-graph skill's ground; this concept carries the quality bar the family holds on top of them, and is where the family's rules for specs and the spec graph accrue.

Short

  • Small enough to read in one sitting. Target signal, not completeness.
  • Explain intent, not inventory: what the thing is for, what it owns, where its boundary runs — never a file listing or a restatement of the code.

Honest

  • Only settled content appears. Never pad with [TBD] or placeholder sections — a section that hasn't been settled simply doesn't exist yet.
  • Anything inferred rather than confirmed is marked unconfirmed, inline, where it stands.
  • New and inferred specs are status: draft until the user has reviewed them — the flip out of draft follows the user's review, never the drafting agent's own judgment. A reviewed durable spec goes active, never done: it stays in force and evolves with the project.

On-rails

  • High-signal enough that a future agent (or human) lands on the decisions without re-deriving them.
  • The spec is the only home for rationale: decisions, invariants, trade-offs, and bug post-mortems are recorded here, never as code comments — a rationale paragraph found in code is content to promote into the owning spec, leaving at most a one-line pointer where misediting would silently break something.
  • Say each thing once: link by id instead of restating; the dependency edges between sibling modules live in the parent's spec, not in each leaf.
  • One spec per genuine boundary — not per directory, not per file.

The goal doc describes the product, not a plan

goal-and-requirements is the living record of what the product is and why: its goal, problem, audience, capabilities, and non-goals, plus any durable principles.

  • No versions, releases, phases, MVP/v1/v2 splits, or "later" lists. Sequencing is not a spec's job: an idea cut from scope goes back to the user to track wherever they plan work, and never into the doc.
  • Capabilities state what the product does, or for a new project what its smallest useful first build will do.
  • Non-goals hold only what is excluded by decision. Something neither listed nor excluded is open, not forbidden.
  • It evolves with the product: a change that adds a capability or overturns a principle updates the goal doc in the same change.

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

Helps an agent ask focused questions when a workflow needs user decisions. It groups independent questions into rounds, frames choices as visible outcomes, and explains how to continue when answers are skipped or interactive questions are unavailable.

  • Gathering scope and behavior decisions for a feature
  • Clarifying choices that depend on earlier answers
  • Confirming an inference with clear options
JetBrains/thinkrail1.8KUpdated Oct 26, 2026

brainstorming

FreeSummary

Clarify the product goal and technical choices before a feature, behavior change, or bug fix is built. The workflow records an agreed task specification, guides implementation against it, and updates durable project specs when the work lands.

  • Clarifying goals before building a feature
  • Agreeing on behavior changes before coding
  • Investigating and planning a bug fix
JetBrains/thinkrail1.8KUpdated Oct 26, 2026

Route new project setup, pull request lifecycle work, and product changes such as features or bug fixes to the workflow that governs them. It also identifies when a request needs no workflow, so routine questions and nonbehavioral edits can proceed directly.

  • Choosing a workflow for a new project
  • Routing a feature or bug fix
  • Handling pull request checks or review feedback
JetBrains/thinkrail1.8KUpdated Oct 26, 2026

Build a draft specification graph for an existing codebase that has no specs. Survey its guidance files, documentation, manifests, and code; infer project purpose and module boundaries, adopt suitable existing design documents, and validate the resulting graph for review.

  • Creating initial specs for an undocumented codebase
  • Mapping modules and their dependencies
  • Turning existing architecture documents into specs
JetBrains/thinkrail1.8KUpdated Oct 26, 2026

Manage MCP server settings in ThinkRail when servers need to be added, changed, enabled, or troubleshot. It explains user and repository configuration, safe credential references, approval and sign-in steps, and how to load deferred tools.

  • Adding or removing an MCP server
  • Changing server settings or exposure
  • Troubleshooting missing or failing MCP tools
JetBrains/thinkrail1.8KUpdated Oct 26, 2026

Routes project setup to the appropriate workflow by checking whether specs and source code already exist. It sends an empty workspace with a new idea toward a requirements document, or an existing codebase toward an initial spec graph, and offers review when specs are already present.

  • Setting up a project with no existing specifications
  • Routing a new idea to a requirements workflow
  • Preparing initial specs for an existing codebase
JetBrains/thinkrail1.8KUpdated Oct 26, 2026

See all skills by JetBrains

Report a problem with this skill