Half-finished features
Three hours of Claude Code, then you stop. A teammate opens Cursor the next morning — they have no idea what you tried, what failed, what worked.
Snapshot what Claude Code, Cursor, Codex, Copilot, or Windsurf was doing. Your teammate runs huddleup resume and picks up exactly where you left off. No re-explaining, no token waste, no midnight Slack pings.
Free, open-source, AGPL-3.0 · Node.js 20+ · macOS, Linux, Windows
Static rules files (CLAUDE.md, .cursor/rules/) describe how your team likes to work. They tell the AI nothing about what was tried in the last session. That gap shows up three ways.
Three hours of Claude Code, then you stop. A teammate opens Cursor the next morning — they have no idea what you tried, what failed, what worked.
Context dies at 10%. No one captured the plan, the dead ends, the next step. The next session has to re-derive everything from a stale CLAUDE.md.
"Hey, what were you doing yesterday with the auth middleware?" Re-explaining what you tried, at 11 pm, to someone who is also tired.
Dev A captures their session as plain markdown. Dev B picks it up — in whichever AI tool they prefer. The AI starts the next prompt already knowing what was tried.
Built for the actual loop: code with an AI tool, snapshot, hand off, resume. No backend to host. No accounts to provision.
Captures git diff, the last AI messages from every detected tool, inferred open files, the active branch, and your one-line note. Writes plain markdown to .huddleup/threads/<name>.md.
Your teammate runs one command and gets a "YOU ARE HERE" briefing, the relevant files reopened, and a context file the AI tool reads on its next prompt. Zero re-explanation.
Sidebar panel with Snapshot, Resume, Standup, and New Thread buttons. Every action is also in the command palette. Live on VS Code Marketplace and Open VSX.
Claude Code, Cursor, Codex CLI, GitHub Copilot, and Windsurf are all auto-detected. detectAllAdapters() merges messages from every tool into a single snapshot — the thread's Tools field lists every contributor.
The generated AI-tool config files (CLAUDE.md, .cursor/rules/huddleup.mdc, AGENTS.md, .windsurfrules) tell the AI to auto-run huddleup snapshot at ~10% tokens remaining. Even if a human forgets, the AI doesn't.
The whole .huddleup/ folder is markdown plus JSONL history. Commit it, paste in Slack, attach to a Linear ticket. No backend, no MCP server, no accounts.
HuddleUp probes every supported tool on the machine. Multiple adapters can match — their open files and last messages merge into a single snapshot. The thread's Tools field lists every contributor.
Reads ~/.cursor/{sessions,chats}/ and Cursor's workspaceStorage globalStorage on macOS, Linux, and Windows.
Reads ~/.claude/projects/<hash>/*.jsonl (modern) and ~/.claude/sessions/*.jsonl (legacy). Generates CLAUDE.md with the Token Exhaustion Protocol.
Detects ~/.windsurf/, ~/.codeium/, and the Windsurf/Codeium application data folders across platforms.
Reads VS Code globalStorage (github.copilot-chat) for Code, Code Insiders, and Cursor; also ~/.github/copilot/ and ~/.vscode/copilot/.
Detects ~/.codex/ and the Codex app data folders on macOS, Linux, and Windows. Parses JSON, JSONL, and plain-log session files.
Add a new adapter in src/adapters/ — implement detect() + capture() and call registerAdapter(). About 80 lines. See docs/adapters.md.
Static rules (CLAUDE.md, .cursor/rules) carry your conventions. Memory bank tools persist context for one tool. HuddleUp adds the missing live, cross-tool handoff layer.
| Capability | CLAUDE.md | .cursor/rules/ | Memory Bank | HuddleUp |
|---|---|---|---|---|
| Static project rules | ||||
| Live session state (work-in-progress) | partial | |||
| Captures last AI messages + git diff | ||||
| Multi-tool merge (Claude + Cursor + Copilot…) | ||||
| Token-exhaustion auto-save | ||||
| Plain markdown + git, no backend | ||||
| Cross-platform (mac/linux/windows) | partial | |||
| Open source | convention | convention | varies | AGPL-3.0 |
No sign-up, no account, no backend. Just Node.js, git, and a terminal.
$ npm install -g huddleup Requires Node.js 20+. Also installs the hup short alias.
$ cd your-project
$ huddleup init Scaffolds .huddleup/ and generates CLAUDE.md, .cursor/rules/huddleup.mdc, AGENTS.md, .windsurfrules.
$ huddleup snapshot Auto-captures git diff + last AI messages from every detected tool. Asks one question: "where did you leave it?"
$ huddleup resume streaming-chat-endpoint Prints a YOU ARE HERE briefing, opens the inferred files, and injects context into your AI tool.
Distributed via npm · VS Code extension via Marketplace and Open VSX · Open source on GitHub under AGPL-3.0
If your answer isn't here, open an issue on GitHub — we'll add it.
One install command. One snapshot. One resume. Your team is huddled in.