The persistent decision & memory layer for AI-assisted development
Your AI assistant forgets everything between sessions. Hopsule gives it a structured, persistent brain - decisions, memories, and enforcement that carry across every tool and conversation.
Core Primitive
Decisions with a lifecycle
Architectural decisions are too important to live in a chat message. Hopsule gives them a formal lifecycle - Draft, Pending, Accepted, Deprecated - so your whole team and every AI assistant knows the current rules.
Each decision includes a statement, rationale, scope key, affected file paths, and tags. Once accepted, it becomes immutable - the content can never be changed, only deprecated. This keeps decisions reliable and consistent over time.
Use Zustand for client state management; do not use Redux.
Zustand offers a simpler API with less boilerplate. Bundle size is 1.1 kB vs Redux Toolkit's 11 kB.
Core Primitive
Persistent context that never fades
Memories store what your project should know- migration notes, conventions, tech stack context. Unlike decisions, memories have no lifecycle. They're created and then remain as background knowledge for your AI.
Memories can be linked to decisions, scoped by file paths, and tagged for search. Source status tracking shows whether linked code chunks are still active, partially orphaned, or fully orphaned.
Billing service was migrated from Stripe v2 to v3 in Q1 2025.
Tags
Related decisions
- Use Stripe v3 API
Core Primitive
Context packs for every conversation
Capsules package your decisions and memories into a curated context pack. They hold references, not copies - so the context is always up to date. The MCP server materializes the active capsule into a structured prompt.
Freeze a capsule to create an immutable snapshot - "this is what the AI knew when we shipped v2.0." Supersede it when the next version is ready. Solo developers need just one active capsule; teams can create targeted packs for different workflows.
Add decisions and memories from the left
Governance
Advisory-only enforcement
Enforcement checks your code against accepted decisions - in the IDE on save, in PRs via the GitHub App, and in CI/CD via the CLI. It never blocks your code. Warnings are shown; you decide what ships.
Three severity levels - HIGH (error), MEDIUM (warning), LOW (info). Deprecated decisions surface low-severity warnings, not full violations. The goal: make architectural drift visible and intentional, not accidental.
Visualization
The knowledge graph
Brain is an interactive graph that maps relationships between decisions, memories, tasks, capsules, and conflicts. See your project's architecture as a living network.
Find orphan decisions, understand the impact before deprecating something, and help new team members see the big picture. Connections are typed - explicit, semantic, temporal, causal - so you know why things are related.
AI Assistant
Hopper - your project-aware AI
Hopper is a RAG-based chat assistant that searches your project's decisions, memories, and tasks before answering. Every response is grounded in your actual architecture - not generic advice.
Hopper supports streaming responses, image uploads, conversation compression for long chats, and responds in your language. It cites decisions but never refuses to help - advisory only.
Workflow
Tasks with a feedback loop
Tasks are work items linked to decisions and memories. When you complete a task, you validate or challenge the related decisions - closing the loop between planning and execution.
If enough tasks challenge a decision, its health moves to Under Question or Actively Challenged - a signal that the team should review it. Taskify lets you create tasks directly from the IDE.
Migrate Redux to Zustand
Use Zustand
Update auth to Clerk SDK
Use Clerk
Add Zod validation to /api
Zod validation
Remove legacy store
Use Zustand
Governance
Conflicts are surfaced, never auto-resolved
When two accepted decisions in the same scope contradict each other, Hopsule detects the conflict automatically. No AI involved - detection is deterministic based on scope keys.
Conflicts are surfaced with severity and linked decisions. The team resolves by deprecating the old, rejecting the new, or editing the draft. Hopsule never auto-resolves - humans decide.
Use Zustand for client state; do not use Redux.
AcceptedUse Redux Toolkit for the new admin dashboard module.
Common questions
Quick answers about how Hopsule's core primitives work together.
Still have questions? Reach out to our team


