Persistent context and memory tool for Claude Code sessions
Project description
Workshop
Persistent context and memory tool for Claude Code sessions.
Workshop helps Claude remember decisions, gotchas, preferences, and context across sessions. Never lose track of why you made a choice or what you were working on.
Features
- 🧠 Smart Context Search - Ask "why did we do X?" and get instant answers with reasoning
- 📝 Decision Tracking - Record architectural decisions with full reasoning
- ⚠️ Gotcha Documentation - Never forget edge cases and constraints
- 🔄 Session Summaries - Automatic capture of what happened in each session
- 🔍 Full-Text Search - Fast SQLite FTS5 search across all entries
- 🎯 Goal & State Management - Track what you're working on and what's next
- 🤖 Claude Code Integration - Seamless integration with automatic context loading
Installation
pip install claude-workshop
# Set up Claude Code integration (recommended)
workshop init
This will:
- Add Workshop instructions to global Claude Code settings (
~/.claude/settings.json) - Copy integration files to local project (
.claude/directory) - Enable automatic context loading at session start
Manual Installation Options
# Global only (Claude checks for Workshop in all projects)
workshop init --global
# Local only (auto-load context in current project)
workshop init --local
Quick Start
# Write entries
workshop note "Implemented user authentication flow"
workshop decision "Using zustand for state management" --reasoning "Simpler API than Redux, better TypeScript support"
workshop gotcha "Stripe webhooks need raw body parser disabled"
workshop preference "User prefers verbose comments explaining the why"
# Query and search
workshop why "using zustand" # Smart search - answers "why did we do X?"
workshop context # Show current session context
workshop search "authentication" # Search all entries
workshop read --type decision # Show all decisions
workshop recent # Show recent entries
# Manage state
workshop goal add "Implement payment processing"
workshop next "Add error boundaries for auth failures"
Data Storage
Workshop uses SQLite for fast, efficient storage:
- Project-specific:
./.workshop/workshop.dbin your project root - Global:
~/.workshop/workshop.dbfor cross-project context - Custom location: Set
WORKSHOP_DIRenvironment variable
Migration from JSON
If you're upgrading from an earlier version that used JSON storage, Workshop will automatically migrate your data to SQLite on first run and create a backup of your JSON file.
Claude Code Integration
Workshop integrates seamlessly with Claude Code to maintain context across sessions.
Global Setup (Recommended)
Add Workshop instructions to your global Claude Code settings so it's available in all projects:
Already done! If you have ~/.claude/settings.json configured, Claude will automatically:
- Check for Workshop at session start
- Use Workshop to record decisions, gotchas, and preferences
- Query Workshop for historical context
Project-Specific Setup
For per-project integration with automatic context loading:
- Copy
.claude/directory from this repo to your project - The SessionStart hook will auto-load Workshop context
- Custom instructions will guide Claude's Workshop usage
See .claude/README.md for details.
How It Works
- Session Start: Claude checks if Workshop is available
- During Session: Claude records important information:
- Architectural decisions with reasoning
- Failed approaches and why
- User preferences and coding style
- Gotchas and constraints
- Current goals and next steps
- Context Queries: Claude searches Workshop when needing historical context
Benefits
- Continuity: Pick up exactly where you left off
- Institutional Knowledge: Never lose context about why things are the way they are
- Collaboration: Share context with future sessions (and future you!)
- Efficiency: Avoid re-discovering the same information
Commands Reference
Write Entries
workshop note <text>- Add a noteworkshop decision <text> -r <reasoning>- Record a decision with reasoningworkshop gotcha <text>- Document a gotcha or constraintworkshop preference <text>- Save a user preferenceworkshop antipattern <text>- Record an antipattern to avoid
Query & Search
workshop why <query>- Smart search answering "why did we do X?"workshop search <query>- Full-text search across all entriesworkshop context- Show current session context summaryworkshop recent- Show recent entriesworkshop read --type <type>- Filter entries by type
Session History
workshop sessions- List recent sessionsworkshop session <id|last>- View session details
State Management
workshop goal add <text>- Add a goalworkshop goal list- List active goalsworkshop next <text>- Add a next step/TODO
Utilities
workshop info- Show workspace informationworkshop init- Set up Claude Code integration
License
MIT License - see LICENSE file for details.
Contributing
Issues and pull requests welcome at https://github.com/zachswift615/workshop
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_workshop-0.1.0.tar.gz.
File metadata
- Download URL: claude_workshop-0.1.0.tar.gz
- Upload date:
- Size: 24.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ded80f7b5b14844d0a0a6de5e062ccf53b8bddf26c7e69c872267ebebe36213
|
|
| MD5 |
139f5368173193093277b43b6e5430ec
|
|
| BLAKE2b-256 |
59e8a70610a70971bf984d0dd57b58416575a43bfbf59725db127d6796f5c869
|
File details
Details for the file claude_workshop-0.1.0-py3-none-any.whl.
File metadata
- Download URL: claude_workshop-0.1.0-py3-none-any.whl
- Upload date:
- Size: 27.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e30462f15a9930c8db0d430acbfc165aa775467515cb9a76a5adcb6ee490a198
|
|
| MD5 |
518c5316cdd4636a4d05fcf0d3f103df
|
|
| BLAKE2b-256 |
20095b9f63b84f8749954164efd17ae696706b6a450f6e62617748c690f5221f
|