VibeHub vs SpecStory: Markdown chat logs vs commit links
.specstory/history/ inside the project, through an Apache-2.0 CLI and free extensions for Cursor and VS Code, with optional cloud sync and search. VibeHub attaches each session to the git commit it produced and publishes vibes others can fork. Pick SpecStory if you want a readable local archive of every chat; pick VibeHub if you want each conversation tied to a specific commit and shareable.Last reviewed 2026-11-08
| Feature | VibeHub | SpecStory |
|---|---|---|
| How it captures | Claude Code plugin hooks; vb commit | CLI (run, sync, watch) and Cursor / VS Code extensions |
| Where history lives | VibeHub, linked to the git commit | Markdown in .specstory/history/; optional cloud sync |
| Linked to git commits | Yes — that is the core idea | Not described in its docs |
| Agents supported | Claude Code plugin; MCP and editor setups for Cursor, Windsurf, VS Code, Zed, JetBrains | Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more |
| Search | Browse sessions per project and commit | Cloud search by project or time |
| Sharing | Public vibe pages and forks | Per-session share links |
| License | Hosted service; plugins MIT | CLI Apache-2.0; extensions closed source |
| Pricing | CLI free; 1 credit per transcript-captured commit | Free extensions, CLI, and cloud plan |
What SpecStory does
SpecStory saves the conversations behind your code. The open-source CLI can launch an agent and save the session as you work (specstory run), export existing history (specstory sync), or run in the background to capture agents you start yourself (specstory watch). Free extensions do the same inside Cursor and VS Code with GitHub Copilot.
Sessions land as Markdown in .specstory/history/ in your project, so they are easy to read, grep, and commit if you choose. Logged-in CLI runs sync to SpecStory Cloud by default (--no-cloud-sync turns it off), which adds search and per-session share links where you choose which exchanges are visible.
What VibeHub does differently
VibeHub ties each session to the commit it produced. Open a commit and you see the conversation behind it; open a session and you see the commits it led to. That link is what code review needs: not every chat you had, but the one that explains this change.
Vibes can also be published as public pages and forked, with lineage back to the original. If what you want is a complete local archive of every AI chat in a project, SpecStory’s Markdown files are simpler.
Choose SpecStory if…
- You want every AI chat saved as plain Markdown inside the project, readable without any service.
- You work mostly in Cursor or VS Code with Copilot and want a free extension.
- You want to share individual sessions with selected exchanges hidden.
Choose VibeHub if…
- You want each conversation attached to the commit it produced, for code review.
- You want to publish AI-built work as pages others can fork.
- You want sessions kept out of your working tree rather than as files in the repo.
Questions, answered.
- Is SpecStory free?
- Its extensions, CLI, and a cloud plan are free, per its site. Some cloud features depend on your plan; its pricing page was unavailable when we checked, so confirm current prices on specstory.com.
- Does SpecStory upload my chats?
- Local Markdown history stays in your project. Cloud sync is on by default for logged-in CLI runs and can be turned off with
--no-cloud-sync. Synced sessions stay private unless you share them. - Can I commit SpecStory’s Markdown files instead of using VibeHub?
- You can, and for a small project that may be enough. You will have every chat in the repo, but no link between a given chat and the commit it produced, and long transcripts will add noise to diffs.
Sources
More comparisons
Version the whole vibe.
The vb CLI, public vibes, and GitHub mirroring are free forever.