Turn intent into
crystal-clear specs.
Describe what you're building in plain language and get back a structured, versioned spec: flows, data models, roles, test cases. The AI proposes changes. Nothing lands without your approval.
Free 14-day trial. No credit card. Cancel in two clicks.
Your spec shouldn't die in a wiki.
Product intent ends up spread across a doc nobody updated, a thread nobody saved, and a few people's heads. The code drifts from all three, one small decision at a time.
Specs today
- Wiki pages are out of date before the feature ships
- Nobody can say which version is the current one
- AI coding tools guess at your product intent
- Spec-driven tools generate a spec, then throw it away once code ships
- Decisions vanish into chat scrollback and memory
With CrystalSpec
- One living spec, versioned and diffed like code
- A published revision is always the source of truth
- Agents read the same spec your team does, via MCP
- The spec stays current after the code ships
- Every decision proposed, approved, and recorded
Six months later, someone re-opens a question that was settled, argues it from scratch, and lands somewhere new. The original reasoning lived in a meeting nobody wrote up.
From a rough idea to a published spec, in four steps.
The AI handles the structure. The decisions stay with you, from the first draft to the published revision.
Describe
Tell the assistant what you're building. It reads your whole project for context: every flow, model, role, and glossary term.
Review & approve
The AI returns concrete proposals: create this flow, update that step. Each one is validated before it can be applied, and you accept or reject them individually.
Analyze
Run the inconsistency analyzer on a project, flow, or step. Contradictions, gaps, and unused terms come back as graded findings, with a one-click path to fix them.
Publish
Publishing cuts a versioned revision with a drafted change summary. Share it read-only, export a PDF, fire a signed webhook, revert any time.
AI proposes. You decide.
Chat with an assistant that knows your whole project. Suggestions arrive as structured proposals (create this flow, update that field, delete that role), each validated before it can be applied. Nothing is written until you approve it.
- Approve or reject proposals one by one, or all at once
- Validation catches missing fields and broken references up front
- Every approval and rejection is recorded
Find the holes before they cost a sprint.
One click scans a project, flow, or step for contradictions, gaps, and dead glossary terms. Findings come back graded by severity, and "Fix all with AI" turns the report into proposals you review like any other change.
- Whole-project, per-flow, or per-step analysis with an optional goal
- Findings graded as contradictions, warnings, and notes
- A browsable history of past analyses, with jumps straight to the flow
Git-style history for product decisions.
Editing forks a draft revision locked to one editor, so the published spec stays stable while you work. Publishing cuts a new version with a change summary and a field-level changeset. Any version can be reverted.
- One active editor per draft, so edits never collide
- Field-level "View changes" diffs between revisions
- Optional sign-off before publish, with named approvers
- Revert with full lineage, plus a per-project activity timeline
Your agents can query the spec.
The spec is typed data, so an agent can pull a flow, list revisions, diff what changed, or ask the project a question over a hosted MCP server, a scoped GraphQL API, and signed webhooks on every publish. A markdown PRD can't answer those questions. A structured spec can.
- MCP tools for Claude Code, Claude Desktop, and Cursor
- Query the typed graph: flows, models, revisions, glossary terms
- HMAC-signed revision.published webhooks, plus read-only public links
Ship the spec straight into GitHub, Linear, or ClickUp.
Publish a revision and CrystalSpec breaks the changes into atomic tasks, pushed to the tracker your team already uses. Every issue links back to the revision it came from, so the spec stays the single source of truth.
- AI-decomposed atomic tasks from any published revision
- Push to GitHub, Linear, or ClickUp
- Idempotent: re-running never creates a task twice
Answers from the spec, in the channel you already use.
Mention @CrystalSpec in a bound channel and it replies in the thread, grounded in the project's published revision. Nobody needs an account to ask, and a question can never change the spec.
- Native, formatted answers with a link back to the project
- Stateless and read-only by design
- Billed to the connection owner, so the whole channel can ask for free
@CrystalSpec what happens if payment fails at checkout?
Bring a messy doc. Leave with a spec.
Paste what you already have. The assistant proposes the structure, flow by flow, and you approve what's right.
Start freeEverything a spec needs, in one place.
Built for product, engineering, and design teams. The spec is typed, queryable data, so people and agents work from the same structure.
Flows that branch
Plain steps, nested sub-flows, and decision points with labelled branches. Every flow renders as a live diagram you can click into.
Data models, drawn or generated
Typed fields, enums, arrays, and references between models. Build them by hand or generate them from your project's context.
Test cases on every flow
Each flow carries verification cases with codes and descriptions, so QA starts from the spec instead of guessing at it.
Discussions where the work is
Threads anchored to flows and projects, with @mentions, a global unread inbox, and an AI teammate that answers when you mention @cs.
Share without an account
Publish a read-only link to any project. Visitors browse the live spec, and signed-in viewers can ask the AI questions about it.
The full anatomy of a spec
Roles, phases, epics, glossary terms, and reference resources, typed and cross-referenced so every flow and model shares one vocabulary.
Cmd+K everything
A command palette that searches every flow, step, model, and term in your project, and lands you there with the editor open.
Access control that holds
Owners, admins, and contributors, with per-project read/write overrides enforced server-side on every operation.
PDF & DOCX export
A server-rendered PDF or a styled Word document of the entire specification, for whenever a stakeholder asks for "the document."
Ask the spec in Slack
Mention @CrystalSpec in a bound channel and it answers in-thread from your published revision, with a link back to the project.
Standing instructions
House style, tone, and things to always check, injected into every AI call across chat, analysis, and revision summaries. Only an owner can change them.
Sign-off before a revision ships
Require approval before publish. Drafts park as pending, approvers are notified in-app, in Slack, and over webhooks, and both sides are credited on release.
Ten dollars a seat. That's the pricing page.
Try everything free, then pay $10 per member per month, with each member's monthly AI allowance included. A five-person team runs $50 a month, all in.
Free Trial
Every feature unlocked while you evaluate.
Upgrade only when you're ready to commit.
- Full spec authoring & AI assistant
- 500 AI credits per member, monthly
- Versioned revisions & publishing
- Read-only public sharing
Team
One flat price per seat, however your team grows.
5 members → $50/month. Add or remove seats anytime.
- Unlimited projects
- Unlimited seats, billed per seat
- 500 AI credits per member, monthly
- Shared AI top-ups when you need more
- Per-project read/write access control
- Push to GitHub, Linear & ClickUp
- MCP server, GraphQL API, webhooks & PDF export
Questions we hear a lot.
No. That's the core design decision. The assistant only produces proposals: structured create, update, and delete suggestions that wait for your explicit approval. Each one is validated before you can approve it, every decision is recorded, and rejected proposals are kept so you can see what was suggested and who declined it.
Every team member gets 500 AI credits each month (roughly $5 of AI usage), included with their seat and refreshed automatically. When someone runs out, usage draws from a shared team top-up balance you can buy once and keep. Reviewing proposals never costs credits; only generation does.
Editing forks a draft revision that's locked to a single active editor, while everyone else keeps seeing the stable published version. Publishing promotes the draft to a new version with a change summary and a field-level diff. Discussions live outside the lock, so the conversation never stops while someone is editing.
Yes. Any project can publish a read-only share link that requires no account. Visitors browse the live published spec, and signed-in viewers can ask the AI questions about it, billed to their own workspace rather than yours. Rotate or disable the link at any time and old URLs stop resolving immediately.
Yes, it's a first-class feature. CrystalSpec hosts an MCP server that Claude Code, Claude Desktop, and Cursor can connect to with a scoped personal token. There's also a GraphQL API, HMAC-signed webhooks that fire when a revision is published, and PDF and DOCX export for the humans in the room.
Yes. Connect a Slack workspace, bind a channel, and mention @CrystalSpec with a question. It answers in the thread from the project's published revision, formatted natively, with a link back to the project. It's stateless and read-only, so a Slack question can never change the spec. Usage is billed to the connection owner's allowance, so anyone in the channel can ask without an account or credits of their own.
Turn on "require approval before publish" and a submitted draft parks as pending instead of publishing, while its editor keeps working. Choose who can approve: any member, the team owners, or a named set. Approvers are notified in-app, in Slack, and over webhooks, and re-pinged if the draft changes before they sign off. On publish, both the author and the approver are credited.
No. Create an account and start a free trial with every feature unlocked, including your monthly AI allowance. When you're ready, the paid plan is a single per-seat price: $10 per member per month.
Didn't find your question? Start free →
Ready to crystallize
your next project?
Describe it in a sentence. Review what the AI proposes. Publish when it's right. From then on, your team and their agents read the same spec.