Skip to content

docs: comprehensive overhaul — discoverability, explore-first, and closing recurring doc-request issues#1237

Merged
TabishB merged 6 commits into
Fission-AI:mainfrom
clay-good:docs/comprehensive-overhaul
Jun 24, 2026
Merged

docs: comprehensive overhaul — discoverability, explore-first, and closing recurring doc-request issues#1237
TabishB merged 6 commits into
Fission-AI:mainfrom
clay-good:docs/comprehensive-overhaul

Conversation

@clay-good

@clay-good clay-good commented Jun 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

A comprehensive, documentation-only overhaul addressing #1228 ("the docs are fragmented and, in practice, almost nonexistent") and the broader maintainer feedback that the docs in general need work, and /opsx:explore should be a lot more front and center.

The existing reference docs were actually fairly thorough, so the real problems were discoverability, a missing new-user mental model, explore being undersold, and a set of recurring questions that good docs should answer but didn't. This PR fixes all of that while staying additive (new pages plus small surgical edits; no reference doc was rewritten wholesale).

What's new

Orientation and mental model

  • docs/README.md — a documentation home / index that maps every doc and offers "pick your path" routes (the direct fix for "fragmented").
  • docs/how-commands-work.md — the single biggest gap from the issue thread: /opsx:* runs in your AI chat, openspec runs in your terminal, what "interactive mode" really means, per-tool syntax, and how to confirm install. (Answers the "how do I start interactive mode?" comments directly.)
  • docs/overview.md — core concepts on one page.
  • docs/glossary.md — every term in one place.

Explore, front and center

  • docs/explore.md — a dedicated "Explore First" guide. The canonical loop is reframed as explore → propose → apply → archive, and explore now leads the README demo, Quick Start, docs home, getting-started, overview, how-commands-work, and workflows (promoted out of "expanded mode," since it ships in the default profile).

Closing recurring doc-request issues

Accuracy and surgical edits

Issues addressed

Primary: #1228. Also closes or substantially answers the doc-shaped parts of: #510, #1100, #176, #684, #976, #355, #1188, #169, #1206, #257, #308, #1213. Complements (no overlap with) the open #1146 beginner-workflow guide.

Validation

Note to maintainers

Opened from a fork as a collaborator. Happy to split this into smaller PRs (for example, land the docs home + how-commands-work.md first) if that's easier to review. Feedback very welcome.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Documentation
    • Added/expanded the documentation hub and new end-user guides: Getting Started, How Commands Work, Core Concepts (at a glance), Explore, Examples & Recipes, Editing & Iterating, Existing Projects, FAQ, Glossary, and Troubleshooting.
    • Updated Quick Start and workflow examples to route new users through /opsx:explore early, including “Start here when unsure” guidance and revised command-flow diagrams.
    • Enhanced operational support with clearer installation/update/uninstall instructions, broader CLI tool notes, and more actionable troubleshooting fixes.
    • Refreshed the README with a filled “See it in action” dialogue example and reorganized documentation entry points.

…nd location, FAQ, glossary, troubleshooting, recipes)

Addresses Fission-AI#1228 (docs are fragmented and hard to discover). Additive,
docs-only. The single sharpest gap from the issue thread was that nobody
explains where slash commands run, hence the new "How Commands Work" page.

New docs:
- docs/README.md          documentation home / index that maps every doc
- docs/how-commands-work.md  where /opsx:* (chat) vs openspec (terminal) run; "interactive mode" answered
- docs/overview.md        core concepts at a glance, one page
- docs/faq.md             consolidated common questions
- docs/glossary.md        every term in one place
- docs/troubleshooting.md concrete fixes for concrete failures
- docs/examples.md        real changes start to finish (recipes)

Small additive edits:
- docs/getting-started.md  "where do I type this?" callout + first-five-minutes + richer Next Steps
- README.md                Docs list points at the new home and key new pages

Voice: warm, plain, bottom-line-up-front; no em-dashes in prose.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@clay-good clay-good requested a review from TabishB as a code owner June 22, 2026 14:12
@coderabbitai

coderabbitai Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: f36aab20-a258-4783-9985-7b46a3d15cd6

📥 Commits

Reviewing files that changed from the base of the PR and between f75a62c and 7ad51b0.

📒 Files selected for processing (3)
  • docs/README.md
  • docs/existing-projects.md
  • docs/glossary.md
✅ Files skipped from review due to trivial changes (3)
  • docs/README.md
  • docs/glossary.md
  • docs/existing-projects.md

📝 Walkthrough

Walkthrough

Adds new documentation pages for concepts, examples, FAQ, glossary, troubleshooting, and workflow guidance. Updates README.md, getting-started.md, and command reference pages to route users toward the explore-first flow.

Changes

OpenSpec Documentation Expansion and Navigation Redesign

Layer / File(s) Summary
Navigation entry points and onboarding flow
README.md, docs/README.md, docs/getting-started.md
README.md adds a /opsx:explore example, revises Quick Start routing, and expands docs links. docs/README.md is added as the documentation landing page. docs/getting-started.md adds command-context guidance, updates the quick-path diagram, and extends Next Steps.
Core concepts and command model
docs/overview.md, docs/how-commands-work.md, docs/glossary.md
Adds the core concepts overview, command-context guide, and terminology glossary for OpenSpec.
Examples and recipes
docs/examples.md
Adds seven workflow recipes, terminal inspection commands, and follow-up links.
Explore, editing, existing projects, and installation
docs/explore.md, docs/editing-changes.md, docs/existing-projects.md, docs/installation.md
Adds explore guidance, artifact editing workflow, brownfield adoption guidance, and update/uninstall instructions.
FAQ and troubleshooting reference
docs/faq.md, docs/troubleshooting.md
Adds FAQ content plus symptom-based troubleshooting for setup, commands, configuration, migration, and support.
Command reference updates
docs/cli.md, docs/commands.md, docs/workflows.md
Updates supported tool IDs, adds explore guidance, and reorders the default quick path to start with /opsx:explore.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related issues

Possibly related PRs

Suggested reviewers

  • TabishB

Poem

🐇 I hopped through the docs with a curious nose,
Found explore-first paths where the new guidance goes.
A glossary, recipes, FAQs in a row,
Now the warren has maps for wherever folks go.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the PR’s docs overhaul, improved discoverability, and stronger explore-first emphasis.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@clay-good clay-good self-assigned this Jun 22, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
docs/faq.md (1)

43-43: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick win

Fix awkward grammar in the skill/command explanation.

Line 43: "OpenSpec installs whichever your tool uses" is grammatically incomplete. "Whichever" requires an object noun.

Suggested revision: "OpenSpec installs whichever commands your tool needs."

Proposed wording fix
- Both are files OpenSpec writes so your assistant can run the workflow. Skills (`.../skills/openspec-*/SKILL.md`) are the newer cross-tool standard; commands (`.../commands/opsx-*`) are the older per-tool slash files. You don't need to pick. You just type the slash command, and OpenSpec installs whichever your tool uses.
+ Both are files OpenSpec writes so your assistant can run the workflow. Skills (`.../skills/openspec-*/SKILL.md`) are the newer cross-tool standard; commands (`.../commands/opsx-*`) are the older per-tool slash files. You don't need to pick. You just type the slash command, and OpenSpec installs whichever commands your tool needs.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/faq.md` at line 43, The sentence in the skill/command explanation
contains a grammar error where "whichever" lacks a noun object, leaving the
statement incomplete. Revise the phrase "OpenSpec installs whichever your tool
uses" by adding an appropriate noun after "whichever" to complete the
grammatical structure, such as "OpenSpec installs whichever commands your tool
needs" or similar phrasing that provides the missing object noun.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@docs/faq.md`:
- Line 43: The sentence in the skill/command explanation contains a grammar
error where "whichever" lacks a noun object, leaving the statement incomplete.
Revise the phrase "OpenSpec installs whichever your tool uses" by adding an
appropriate noun after "whichever" to complete the grammatical structure, such
as "OpenSpec installs whichever commands your tool needs" or similar phrasing
that provides the missing object noun.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 858bb264-a68f-4ba5-a534-677f25c9ade1

📥 Commits

Reviewing files that changed from the base of the PR and between 1b06fdd and c37253c.

📒 Files selected for processing (9)
  • README.md
  • docs/README.md
  • docs/examples.md
  • docs/faq.md
  • docs/getting-started.md
  • docs/glossary.md
  • docs/how-commands-work.md
  • docs/overview.md
  • docs/troubleshooting.md

@clay-good clay-good marked this pull request as draft June 22, 2026 14:20
Per maintainer feedback (Tabish): "the docs in general need some work,
alongside making the explore option a lot more front and center."

explore ships in the default core profile but every doc led with propose
and treated explore as a footnote for "unclear requirements." This reframes
the canonical loop as explore -> propose -> apply -> archive and gives
explore real prominence.

- docs/explore.md (new): dedicated "Explore First" guide. When to use it,
  what it does/doesn't, a full transcript, handoff to propose, tradeoffs.
- getting-started.md: explore added to the flow and first-five-minutes,
  with a featured callout and Next Steps entry.
- overview.md: explore featured in the loop and next-links.
- docs/README.md: explore in the opening, pick-your-path, 30-second
  version, and the doc map.
- how-commands-work.md: explore leads the command list with a "good rhythm"
  note and an optional step in the clean-first-run example.
- workflows.md: new first-class "Start by exploring" pattern in the default
  section (was buried under expanded mode); quick-reference row strengthened.
- commands.md / faq.md / glossary.md: explore featured as the place to start.
- examples.md: top callout pointing at the explore recipe.
- README.md: explore opens the "See it in action" demo and Quick Start,
  and is added to the Docs list.

Docs-only and additive. No em-dashes in prose; links verified.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@clay-good

Copy link
Copy Markdown
Collaborator Author

Pushed a follow-up commit acting on the feedback that the docs need more work and that /opsx:explore should be a lot more front and center.

explore already ships in the default core profile, but every doc led with propose and treated explore as a footnote for "unclear requirements." This reframes the canonical loop as explore → propose → apply → archive and gives explore real prominence:

  • New docs/explore.md ("Explore First"): a dedicated guide. When to use it, what it does and doesn't do, a full transcript, the handoff to propose, and honest tradeoffs.
  • Featured at the top of the high-traffic pages: the repo README's "See it in action" demo and Quick Start now open with explore; the docs home, getting-started, overview, how-commands-work, and workflows all lead with "start by exploring when you're unsure."
  • Promoted out of expanded mode: workflows.md now has a first-class "Start by exploring" pattern in the default section (it was previously only shown under the expanded command set).
  • Reference touchpoints: commands.md, faq.md, and glossary.md all surface explore as the recommended starting point.

Still docs-only and additive. No em-dashes in prose; relative links verified. Happy to keep iterating, and as before I can split this into smaller PRs if that's easier to review.

…tall, context limits) + sync tool list

Sweep of open issues and discussions surfaced several questions good docs
should answer but didn't. This adds the missing guides and fixes a stale list.

New guides:
- docs/existing-projects.md: adopting OpenSpec on a large brownfield codebase
  without documenting everything up front (addresses Fission-AI#510, Fission-AI#1100, Fission-AI#176).
  Delta-first framing, first-change walkthrough, onboard, importing existing
  requirements docs, domain organization, monorepo/workspace pointers.
- docs/editing-changes.md: how to edit any artifact, update a proposal/spec
  after starting, go back after implementing, and reconcile manual code edits
  (addresses Fission-AI#684, Fission-AI#976, Fission-AI#355, Fission-AI#1188, Fission-AI#169, Fission-AI#1206).

Enhancements:
- installation.md: Updating + Uninstalling sections (addresses Fission-AI#308).
- faq.md: new entries for existing codebases, editing artifacts, going back,
  reconciling manual edits, context limits / long sessions, and uninstalling
  (addresses Fission-AI#257 among others).
- cli.md: --tools list now includes `vibe` and matches AI_TOOLS in
  src/core/config.ts, with a note pointing at the source (fixes Fission-AI#1213).
- Wired the new guides into the docs home, getting-started, and the README.

Docs-only and additive. No em-dashes in prose; links and section anchors verified.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@clay-good clay-good changed the title docs: comprehensive documentation overhaul (home, mental model, command location, FAQ, glossary, troubleshooting, recipes) docs: comprehensive overhaul — discoverability, explore-first, and closing recurring doc-request issues Jun 22, 2026
@clay-good clay-good marked this pull request as ready for review June 22, 2026 14:43

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (3)
docs/existing-projects.md (2)

27-35: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick win

Reduce repetition of "exactly" in nearby sentences.

Lines 31 and 33 both use "exactly" within close proximity ("This is exactly what brownfield work needs" and "which is exactly when you want it thorough"). Consider rephrasing one of them using alternatives like "precisely," "this," or restructuring the sentence.

Proposed fix
-This is exactly what brownfield work needs. You're rarely building from nothing. You're adding a field, fixing a redirect, tightening a timeout. A delta lets you specify that one change precisely without first writing a 40-page spec of everything around it.
+This is what brownfield work needs. You're rarely building from nothing. You're adding a field, fixing a redirect, tightening a timeout. A delta lets you specify that one change precisely without first writing a 40-page spec of everything around it.

And:

-The spec for `auth/` becomes thorough only after you've made several auth changes, which is exactly when you want it thorough.
+The spec for `auth/` becomes thorough only after you've made several auth changes, which is when you want it thorough.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/existing-projects.md` around lines 27 - 35, The section "Why delta-first
is the whole trick" uses the word "exactly" twice in close proximity: once in
the phrase "This is exactly what brownfield work needs" and again in "which is
exactly when you want it thorough". To reduce repetition, rephrase one of these
instances by replacing "exactly" with an alternative word like "precisely" or
"this," or by restructuring the sentence to convey the same meaning without
repeating the word.

11-14: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick win

Bash command blocks need either output or no dollar signs (MD014).

Lines 12–13 and 74–75 show $ prefixes without subsequent command output. Either remove the $ or add placeholder output like # output: or > openspec init installed.

Proposed fix (remove `$` prefixes)
-$ cd your-existing-project
-$ openspec init          # adds openspec/ and your AI tool's commands
+cd your-existing-project
+openspec init          # adds openspec/ and your AI tool's commands

Similarly for lines 74–75:

-$ openspec config profile      # select the expanded workflows
-$ openspec update              # apply them to this project
+openspec config profile      # select the expanded workflows
+openspec update              # apply them to this project

Also applies to: 73-76

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/existing-projects.md` around lines 11 - 14, The bash code blocks at
lines 12-13 and 74-75 contain dollar sign ($) command prompts but do not include
any subsequent output or results, which violates the MD014 markdown linting
rule. Remove the dollar sign prefixes from these bash command blocks in the
existing-projects.md file so that the commands appear without prompts. This
applies to both the cd and openspec init commands in the first block and the
corresponding commands in the second block referenced at lines 73-76.
docs/explore.md (1)

9-11: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick win

Consider alternative to "right first step" to improve word variety.

Line 11 ("Explore is the right first step more often than people expect") uses "right" where the phrase could also leverage "best," "ideal," or restructure slightly. If "right" appears elsewhere in nearby context, this will feel repetitive.

Proposed alternatives
-Explore is the right first step more often than people expect.
+Explore is the best first step more often than people expect.

Or:

-Explore is the right first step more often than people expect.
+In most cases, explore is the right first move more often than people expect.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/explore.md` around lines 9 - 11, In the sentence "Explore is the right
first step more often than people expect", replace the word "right" with a more
varied alternative such as "best" or "ideal" to improve word variety and avoid
repetition if "right" appears elsewhere in the nearby context. Alternatively,
consider restructuring the sentence entirely to convey the same meaning while
improving readability and vocabulary diversity.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/cli.md`:
- Line 110: The supported tool IDs list is out of order and does not match the
AI_TOOLS array in src/core/config.ts. Reorder the tools in the Supported tool
IDs list so that vibe appears immediately after lingma and before opencode,
instead of appearing near the end between trae and windsurf. This will ensure
the documentation accurately mirrors the source-of-truth configuration as
claimed.

---

Nitpick comments:
In `@docs/existing-projects.md`:
- Around line 27-35: The section "Why delta-first is the whole trick" uses the
word "exactly" twice in close proximity: once in the phrase "This is exactly
what brownfield work needs" and again in "which is exactly when you want it
thorough". To reduce repetition, rephrase one of these instances by replacing
"exactly" with an alternative word like "precisely" or "this," or by
restructuring the sentence to convey the same meaning without repeating the
word.
- Around line 11-14: The bash code blocks at lines 12-13 and 74-75 contain
dollar sign ($) command prompts but do not include any subsequent output or
results, which violates the MD014 markdown linting rule. Remove the dollar sign
prefixes from these bash command blocks in the existing-projects.md file so that
the commands appear without prompts. This applies to both the cd and openspec
init commands in the first block and the corresponding commands in the second
block referenced at lines 73-76.

In `@docs/explore.md`:
- Around line 9-11: In the sentence "Explore is the right first step more often
than people expect", replace the word "right" with a more varied alternative
such as "best" or "ideal" to improve word variety and avoid repetition if
"right" appears elsewhere in the nearby context. Alternatively, consider
restructuring the sentence entirely to convey the same meaning while improving
readability and vocabulary diversity.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: c8793466-d8d9-45dc-9112-16af284ba5d6

📥 Commits

Reviewing files that changed from the base of the PR and between c37253c and 7552233.

📒 Files selected for processing (15)
  • README.md
  • docs/README.md
  • docs/cli.md
  • docs/commands.md
  • docs/editing-changes.md
  • docs/examples.md
  • docs/existing-projects.md
  • docs/explore.md
  • docs/faq.md
  • docs/getting-started.md
  • docs/glossary.md
  • docs/how-commands-work.md
  • docs/installation.md
  • docs/overview.md
  • docs/workflows.md
✅ Files skipped from review due to trivial changes (8)
  • docs/overview.md
  • docs/README.md
  • docs/how-commands-work.md
  • README.md
  • docs/glossary.md
  • docs/workflows.md
  • docs/getting-started.md
  • docs/examples.md

Comment thread docs/cli.md Outdated
@lorenzoceglia

Copy link
Copy Markdown

Hi! Thanks for creating the PR for my issue. One thing I wanted to bring up: wouldn't it be nice to add this information to the main website, just like other library docs? I assume those .md doc files are meant for agents, right?

@clay-good

Copy link
Copy Markdown
Collaborator Author

Hi! Thanks for creating the PR for my issue. One thing I wanted to bring up: wouldn't it be nice to add this information to the main website, just like other library docs? I assume those .md doc files are meant for agents, right?

Hi @lorenzoceglia, yes these are for the repo (humans and agents alike). Pinging @TabishB about the website copy.

@lorenzoceglia

Copy link
Copy Markdown

@clay-good Let me know if I can help :)

TabishB
TabishB previously approved these changes Jun 23, 2026

@TabishB TabishB left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for all the improvements! I think this is a really good step in the right direction @clay-good

@TabishB

TabishB commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

@lorenzoceglia We're definitely keen to add a proper docs site for OpenSpec. I'd be keen to get something set up with Fuma Docs. I wouldn't mind someone taking a stab at it to begin with.

Feel free to reach out to me on discord to coordinate and/or email (tabish@openspec.dev). Or whatever other messaging platform you prefer.

Resolve conflicts in docs/cli.md and docs/getting-started.md:
- cli.md: --tools list now matches AI_TOOLS order in src/core/config.ts
  (lingma, vibe, opencode ...)
- getting-started.md: keep both Stores and FAQ/Troubleshooting next-steps links

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
TabishB and others added 2 commits June 24, 2026 16:37
The merge with main pulled in the stores rename (Fission-AI#1190), which retired the
workspaces/initiatives/context-store vocabulary and deleted docs/workspaces-beta/.
This updates the three docs still describing the old model so they match the
new stores model, fixing the vocabulary-sweep test and dead links:

- glossary.md: Workspace/Link/Context store/Initiative -> Store/Reference/
  Working context/Workset; link to stores-beta/user-guide.md
- README.md: replace deleted workspaces-beta/* links with the Stores User
  Guide and Agent Contract
- existing-projects.md: reframe the multi-repo section as stores; drop the
  dead concepts.md#coordination-workspaces anchor

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@TabishB TabishB added this pull request to the merge queue Jun 24, 2026
Merged via the queue into Fission-AI:main with commit bb1f18c Jun 24, 2026
9 checks passed
studyzy pushed a commit to studyzy/OpenSpec-cn that referenced this pull request Jun 30, 2026
…osing recurring doc-request issues (Fission-AI#1237)

* docs: comprehensive documentation overhaul (home, mental model, command location, FAQ, glossary, troubleshooting, recipes)

Addresses Fission-AI#1228 (docs are fragmented and hard to discover). Additive,
docs-only. The single sharpest gap from the issue thread was that nobody
explains where slash commands run, hence the new "How Commands Work" page.

New docs:
- docs/README.md          documentation home / index that maps every doc
- docs/how-commands-work.md  where /opsx:* (chat) vs openspec (terminal) run; "interactive mode" answered
- docs/overview.md        core concepts at a glance, one page
- docs/faq.md             consolidated common questions
- docs/glossary.md        every term in one place
- docs/troubleshooting.md concrete fixes for concrete failures
- docs/examples.md        real changes start to finish (recipes)

Small additive edits:
- docs/getting-started.md  "where do I type this?" callout + first-five-minutes + richer Next Steps
- README.md                Docs list points at the new home and key new pages

Voice: warm, plain, bottom-line-up-front; no em-dashes in prose.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs: make /opsx:explore front and center, plus general polish

Per maintainer feedback (Tabish): "the docs in general need some work,
alongside making the explore option a lot more front and center."

explore ships in the default core profile but every doc led with propose
and treated explore as a footnote for "unclear requirements." This reframes
the canonical loop as explore -> propose -> apply -> archive and gives
explore real prominence.

- docs/explore.md (new): dedicated "Explore First" guide. When to use it,
  what it does/doesn't, a full transcript, handoff to propose, tradeoffs.
- getting-started.md: explore added to the flow and first-five-minutes,
  with a featured callout and Next Steps entry.
- overview.md: explore featured in the loop and next-links.
- docs/README.md: explore in the opening, pick-your-path, 30-second
  version, and the doc map.
- how-commands-work.md: explore leads the command list with a "good rhythm"
  note and an optional step in the clean-first-run example.
- workflows.md: new first-class "Start by exploring" pattern in the default
  section (was buried under expanded mode); quick-reference row strengthened.
- commands.md / faq.md / glossary.md: explore featured as the place to start.
- examples.md: top callout pointing at the explore recipe.
- README.md: explore opens the "See it in action" demo and Quick Start,
  and is added to the Docs list.

Docs-only and additive. No em-dashes in prose; links verified.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs: close recurring gaps (existing projects, editing changes, uninstall, context limits) + sync tool list

Sweep of open issues and discussions surfaced several questions good docs
should answer but didn't. This adds the missing guides and fixes a stale list.

New guides:
- docs/existing-projects.md: adopting OpenSpec on a large brownfield codebase
  without documenting everything up front (addresses Fission-AI#510, Fission-AI#1100, Fission-AI#176).
  Delta-first framing, first-change walkthrough, onboard, importing existing
  requirements docs, domain organization, monorepo/workspace pointers.
- docs/editing-changes.md: how to edit any artifact, update a proposal/spec
  after starting, go back after implementing, and reconcile manual code edits
  (addresses Fission-AI#684, Fission-AI#976, Fission-AI#355, Fission-AI#1188, Fission-AI#169, Fission-AI#1206).

Enhancements:
- installation.md: Updating + Uninstalling sections (addresses Fission-AI#308).
- faq.md: new entries for existing codebases, editing artifacts, going back,
  reconciling manual edits, context limits / long sessions, and uninstalling
  (addresses Fission-AI#257 among others).
- cli.md: --tools list now includes `vibe` and matches AI_TOOLS in
  src/core/config.ts, with a note pointing at the source (fixes Fission-AI#1213).
- Wired the new guides into the docs home, getting-started, and the README.

Docs-only and additive. No em-dashes in prose; links and section anchors verified.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs: reconcile coordinate-across-repos docs with the stores model

The merge with main pulled in the stores rename (Fission-AI#1190), which retired the
workspaces/initiatives/context-store vocabulary and deleted docs/workspaces-beta/.
This updates the three docs still describing the old model so they match the
new stores model, fixing the vocabulary-sweep test and dead links:

- glossary.md: Workspace/Link/Context store/Initiative -> Store/Reference/
  Working context/Workset; link to stores-beta/user-guide.md
- README.md: replace deleted workspaces-beta/* links with the Stores User
  Guide and Agent Contract
- existing-projects.md: reframe the multi-repo section as stores; drop the
  dead concepts.md#coordination-workspaces anchor

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: TabishB <tabishbidiwale@gmail.com>
Co-authored-by: Tabish Bidiwale <30385142+TabishB@users.noreply.github.com>
clay-good added a commit to clay-good/OpenSpec that referenced this pull request Jun 30, 2026
Completes the documentation work begun in Fission-AI#1237 by tightening the
Fumadocs site toward the quality bar of the stores user-guide:

- Intro now opens problem-first ("the requirements lived only in chat"),
  adds an honest "How it compares" table (Spec Kit / Kiro / nothing), and
  frames the tradeoff in a "When the ceremony isn't worth it" callout.
- New Stores guide (beta) distilled from docs/stores-beta/user-guide.md:
  the problem, the annotated shape, a five-minute walkthrough with real
  command output, a role-based story, the root-resolution order, and an
  honest-limitations section. Linked from Existing Projects.

Verified with a clean `next build` (51 static pages, no warnings).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
clay-good added a commit to clay-good/OpenSpec that referenced this pull request Jun 30, 2026
…page

Continue the Fission-AI#1237 docs completion with a stronger product story:

- Landing page now reads like a real product site:
  - "Works with the tools you already use" strip (15 named assistants + more)
  - "What a change actually looks like" — three real artifacts
    (proposal.md, a spec delta, tasks.md) so the workflow is concrete
  - "The honest middle" comparison block (Spec Kit / Kiro / no specs)
  - Robust hero gradient via color-mix instead of v3 theme() syntax
- New Examples & Recipes page: seven copy-pasteable, narrated walkthroughs
  (small feature, bug fix, explore-first, parallel changes, no-behavior
  refactor with --skip-specs, step-by-step, onboard). Linked from the intro
  and getting-started.

Verified: clean `next build` (54 static pages, no warnings); Tailwind
opacity/color-mix utilities confirmed in the generated CSS; all internal
links resolve.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
clay-good added a commit to clay-good/OpenSpec that referenced this pull request Jun 30, 2026
…overage

Final pass completing the Fission-AI#1237 documentation work.

Reposition stores (beta) as the team adoption story, consistently:
- README.md gains a prominent "Why teams adopt OpenSpec" section right
  after the demo (cross-repo features, shared requirements, plan before
  code), leading with stores.
- Landing page gains a matching "Why teams adopt OpenSpec" section.
- Docs intro gains a teams card + callout pointing at stores.
- Stores page expanded with full References and Worksets technical
  examples (the cross-team requirements story, workset create/open).

Incorporate the remaining source-doc knowledge so the site is complete:
- New pages: Glossary, Troubleshooting, Multi-Language, and an
  Agents & Automation reference (the machine-readable --json surfaces and
  workflow primitives that make OpenSpec AI-native).
- The Workflow page now covers ff-vs-continue, a three-dimension verify
  example, and the update-vs-start-fresh decision guide.
- Nav restructured with a Help section; reference section gains Agents.

Build hardening: `build` now runs `fumadocs-mdx && next build` so the
content source is always regenerated. Clean build: 69 static pages, no
warnings; all internal links verified.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
pull Bot pushed a commit to ben-vargas/ai-openspec that referenced this pull request Jul 3, 2026
* docs(website): add Fumadocs documentation site for Cloudflare Pages

Add a self-contained marketing + documentation site under website/, built
with Fumadocs (Next.js) and configured as a static export so it deploys
directly to Cloudflare Pages with no server runtime.

What's included:
- A marketing landing page (hero, the two-folder model, the four core
  ideas, the explore→propose→apply→archive loop, and the "why").
- 13 documentation pages rewritten for clarity and delight: introduction,
  installation, getting started, how commands work, core concepts, the
  workflow, explore first, existing projects, editing a change,
  customization, FAQ, and a reference section (slash commands, CLI,
  supported tools).
- Static client-side search (Orama), per-page Open Graph images, and
  llms.txt / llms-full.txt routes — fitting for an AI-native tool.
- website/README.md with one-table Cloudflare Pages deploy settings
  (root: website, build: npm run build, output: out).

Content is faithful to the docs/ overhaul from Fission-AI#1237, restated in a
simpler, friendlier voice. Verified with a clean `next build` (48 static
pages, no warnings).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs(website): sharpen the sell, add a Stores guide

Completes the documentation work begun in Fission-AI#1237 by tightening the
Fumadocs site toward the quality bar of the stores user-guide:

- Intro now opens problem-first ("the requirements lived only in chat"),
  adds an honest "How it compares" table (Spec Kit / Kiro / nothing), and
  frames the tradeoff in a "When the ceremony isn't worth it" callout.
- New Stores guide (beta) distilled from docs/stores-beta/user-guide.md:
  the problem, the annotated shape, a five-minute walkthrough with real
  command output, a role-based story, the root-resolution order, and an
  honest-limitations section. Linked from Existing Projects.

Verified with a clean `next build` (51 static pages, no warnings).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs(website): make the value tangible — landing sections + Examples page

Continue the Fission-AI#1237 docs completion with a stronger product story:

- Landing page now reads like a real product site:
  - "Works with the tools you already use" strip (15 named assistants + more)
  - "What a change actually looks like" — three real artifacts
    (proposal.md, a spec delta, tasks.md) so the workflow is concrete
  - "The honest middle" comparison block (Spec Kit / Kiro / no specs)
  - Robust hero gradient via color-mix instead of v3 theme() syntax
- New Examples & Recipes page: seven copy-pasteable, narrated walkthroughs
  (small feature, bug fix, explore-first, parallel changes, no-behavior
  refactor with --skip-specs, step-by-step, onboard). Linked from the intro
  and getting-started.

Verified: clean `next build` (54 static pages, no warnings); Tailwind
opacity/color-mix utilities confirmed in the generated CSS; all internal
links resolve.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs(website): add favicon, sitemap, and robots for a complete public site

- Branded SVG favicon (app/icon.svg) in the OpenSpec indigo.
- Static sitemap.xml covering the home page and every doc, built from the
  content source and NEXT_PUBLIC_SITE_URL.
- robots.txt allowing all and pointing at the sitemap.

All three are emitted by the static export. Clean `next build`, 57 pages.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs: lead with stores as "why teams adopt OpenSpec"; complete docs coverage

Final pass completing the Fission-AI#1237 documentation work.

Reposition stores (beta) as the team adoption story, consistently:
- README.md gains a prominent "Why teams adopt OpenSpec" section right
  after the demo (cross-repo features, shared requirements, plan before
  code), leading with stores.
- Landing page gains a matching "Why teams adopt OpenSpec" section.
- Docs intro gains a teams card + callout pointing at stores.
- Stores page expanded with full References and Worksets technical
  examples (the cross-team requirements story, workset create/open).

Incorporate the remaining source-doc knowledge so the site is complete:
- New pages: Glossary, Troubleshooting, Multi-Language, and an
  Agents & Automation reference (the machine-readable --json surfaces and
  workflow primitives that make OpenSpec AI-native).
- The Workflow page now covers ff-vs-continue, a three-dimension verify
  example, and the update-vs-start-fresh decision guide.
- Nav restructured with a Help section; reference section gains Agents.

Build hardening: `build` now runs `fumadocs-mdx && next build` so the
content source is always regenerated. Clean build: 69 static pages, no
warnings; all internal links verified.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs(website): fix docs GitHub source links + address review nits

- page.tsx: prefix ViewOptionsPopover githubUrl with website/ so the
  "view/edit source" links resolve to website/content/docs/... instead
  of 404-ing on every deployed docs page (Alfred blocker).
- installation.mdx: note that `yarn global add` is Classic Yarn only and
  point Yarn Berry users at `yarn dlx` / npm / pnpm.
- index.mdx: label the comparison table's first column ("Option").
- (home)/page.tsx: use the shared docsRoute constant for all /docs links
  instead of hardcoded paths.

Verified with `npm run build` in website/ — 69 static pages, and the
built getting-started page links to blob/main/website/content/docs/...

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs(website): mirror docs/*.md into the site + auto-deploy on a cadence

Make the repository's docs/*.md the single source of truth for the docs
site instead of maintaining a parallel set of hand-written MDX pages that
silently drift.

- scripts/sync-docs.mjs mirrors ../docs into content/docs/ on every build:
  derives title/description, injects Fumadocs frontmatter (+ githubSource),
  rewrites internal *.md links to /docs routes, and emits meta.json. Pages
  are written as .md so <placeholders>/{braces} in the docs stay literal
  and never break the MDX build.
- docs.sync.config.mjs is the one manifest deciding which docs publish and
  their slug/section/icon. content/docs/ is now generated + git-ignored;
  the curated .mdx pages are removed. The marketing landing page stays
  hand-authored.
- build/dev/types:check run sync:docs first, so the site is always current.
- .github/workflows/deploy-docs.yml rebuilds and deploys to Cloudflare
  Pages via Wrangler on push to docs/**|website/**, daily on a schedule,
  on demand, and as a build-only check on PRs. Needs CLOUDFLARE_API_TOKEN
  + CLOUDFLARE_ACCOUNT_ID secrets and the DOCS_SITE_URL variable.
- source.config.ts carries githubSource so "edit this page" opens the real
  docs/*.md; website/README.md documents the pipeline.

Verified: clean build, 23 pages generated, 78 static pages, no warnings;
all internal doc links resolve; MDX-hazard docs (cli, customization) build.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* fix(website): fall back to default site URL when NEXT_PUBLIC_SITE_URL is empty

The deploy workflow passes NEXT_PUBLIC_SITE_URL from the DOCS_SITE_URL repo
variable, which resolves to an empty string when unset. `?? fallback` does
not catch '' (only null/undefined), so `metadataBase: new URL('')` crashed
`next build` with ERR_INVALID_URL while collecting page data. Use `||` so an
empty value also falls back. Verified: `NEXT_PUBLIC_SITE_URL='' npm run build`
now generates all 78 static pages.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs: add reviewing, writing-specs, and team-workflow guides

Fill the biggest gaps a new user hits, in the plain-language voice of the
stores user guide:

- reviewing-changes.md: the two-minute human review of an AI-drafted plan
  before /opsx:apply — what to open, in what order, and the red flags per
  artifact — plus the /opsx:verify pass after code.
- writing-specs.md: what a strong requirement and scenario are made of,
  choosing ADDED/MODIFIED/REMOVED, and right-sizing a change.
- team-workflow.md: how a change maps onto a branch and a pull request,
  reviewing spec deltas in a PR, when to archive, and parallel changes —
  framed as convention, since OpenSpec never touches git.

Wire them into the docs map (README), the site nav (docs.sync.config.mjs),
and light "next steps" cross-links from getting-started, editing-changes,
and workflows. Verified: site builds clean, 26 pages, all internal links
resolve.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs(website): add one-time deploy setup checklist + landing-page note

Spell out the three maintainer steps that activate auto-deploy (create the
openspec-docs Pages project, add CLOUDFLARE_API_TOKEN/ACCOUNT_ID secrets,
merge to main), and note that the pipeline mirrors docs on build regardless.
Also flag that openspec.dev is a separate Astro landing page and whether to
keep/port this Fumadocs landing page is a maintainer decision.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* fix(website): address review feedback on docs-site PR

Maintainer review (TabishB) + Alfred blocker:

- deploy-docs.yml: guard the Cloudflare deploy on `github.ref ==
  refs/heads/main`. A `workflow_dispatch` on a feature branch previously
  passed the guard and, since wrangler hardcodes `--branch=main` (a
  production deploy), would overwrite the live docs site. Non-main
  dispatches are now build-only. Also resolves Alfred's deploy-path blocker.
- package.json: drop the direct `cnfast` dependency and delete the dead
  `lib/cn.ts` (nothing imports it; a class-merge helper isn't used).
- package.json: declare `zod` (^4.4.3) — it was a phantom dep only
  resolving via fumadocs-mdx's hoisted copy. Refresh the lockfile.
- docs page: omit the on-page <DocsDescription>. The frontmatter
  description is derived from the first body paragraph, so it rendered
  the intro twice on every page. Kept in generateMetadata for SEO/OG.
- team-workflow.md: `openspec store create` does an initial commit, so
  scope "never commits" to the user's project and reframe the store
  clause as "never clones or syncs on its own."
- README.md: bump stale "20+ AI assistants" to "30+" to match the site.

Verified: npm run types:check + npm run build pass, 26 docs synced,
intro paragraph now renders once per page.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* chore(website): use pnpm to match the rest of the repo

Per maintainer review (TabishB): the root repo is pnpm (ci.yml runs
`pnpm install --frozen-lockfile` against a v9 `pnpm-lock.yaml`), but
`website/` had introduced npm + a `package-lock.json`. Standardize on
one package manager:

- Replace website/package-lock.json with website/pnpm-lock.yaml
  (lockfileVersion 9.0, generated with pnpm v9 to match root).
- deploy-docs.yml: add pnpm/action-setup@v4 (version 9, before
  setup-node, as in ci.yml), switch setup-node to `cache: pnpm` /
  `cache-dependency-path: website/pnpm-lock.yaml`, and
  `npm ci` → `pnpm install --frozen-lockfile`, `npm run build` →
  `pnpm run build`.
- package.json scripts + README: `npm run ...` → `pnpm run ...`.

website/ stays a standalone package (no pnpm-workspace.yaml), as before.

Verified: `pnpm install --frozen-lockfile`, `pnpm run build`, and
`pnpm run types:check` all pass — 26 docs synced, 87/87 static pages.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* chore: temporarily disable docs deploy

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Tabish Bidiwale <30385142+TabishB@users.noreply.github.com>
Co-authored-by: TabishB <tabishbidiwale@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants