Claude Code Plugin
The Pensyve plugin gives Claude Code persistent memory across sessions. It remembers your preferences, project decisions, debugging approaches, and codebase knowledge — so you don't have to repeat yourself.
Install
In Claude Code:
/plugin marketplace add /path/to/pensyve/integrations/claude-code
/plugin install pensyve@pensyveThen restart Claude Code.
Connect to Pensyve
Cloud (recommended)
Set your API key (get one at pensyve.com/settings/api-keys):
export PENSYVE_API_KEY="psy_your_key"Add to your shell profile (~/.bashrc, ~/.zshrc) to persist across sessions.
The plugin ships pre-configured for Pensyve Cloud — it reads PENSYVE_API_KEY from your environment and passes it as a Bearer token in the Authorization header on every MCP request. Once the env var is set, you're ready to go.
To override the MCP config explicitly (e.g., for a specific project), add to .claude/settings.json:
{
"mcpServers": {
"pensyve": {
"type": "http",
"url": "https://mcp.pensyve.com/mcp",
"headers": {
"Authorization": "Bearer ${PENSYVE_API_KEY}"
}
}
}
}Use headers with Authorization: Bearer, not env. For HTTP-transport MCP
servers, the headers block sends your key on every request. The env block
is for local stdio servers that read environment variables at startup.
Local (self-hosted)
Build the MCP binary:
git clone https://github.com/major7apps/pensyve
cd pensyve
cargo build --release -p pensyve-mcpOverride the MCP config in .claude/settings.json:
{
"mcpServers": {
"pensyve": {
"command": "pensyve-mcp",
"args": ["--stdio"]
}
}
}No API key needed — all data stays on your machine in SQLite.
What You Get
Slash Commands
| Command | Description |
|---|---|
/remember <fact> | Store a fact, decision, or pattern |
/recall <query> | Search memories by semantic similarity |
/forget <entity> | Delete all memories for an entity |
/inspect [entity] | View all memories grouped by type |
/consolidate | Trigger memory consolidation cycle |
/memory-status | Show namespace statistics |
Skills
| Skill | When to Use |
|---|---|
session-memory | End of a work session — captures decisions and outcomes |
memory-informed-refactor | Before refactoring — loads relevant prior context |
context-loader | Session start or context switch — loads historical context |
memory-review | Periodic — finds stale facts, contradictions, cleanup opportunities |
Agents
| Agent | Mode | Purpose |
|---|---|---|
memory-curator | Background | Monitors sessions, suggests memorable events |
context-researcher | On-demand | Deep memory search, returns structured briefings |
Hooks
| Event | Behavior |
|---|---|
SessionStart | Loads relevant memories at session start |
Stop | Extracts decisions/outcomes after task completion |
PreCompact | Persists in-flight context before compaction |
UserPromptSubmit | Enriches prompts with memory context (opt-in) |
How It Feels
First session:
You: "We're using Drizzle ORM with Postgres, deployed on Vercel" Claude remembers this.
Next session (days later):
You: "Add a new table for audit logs" Claude recalls your ORM choice and generates Drizzle schema — no re-explanation needed.
Across sessions:
- Your debugging preferences persist
- Architecture decisions are remembered
- Code style choices carry forward
- Project-specific patterns are recalled automatically
The plugin works with any MCP-compatible client, not just Claude Code. See MCP Setup for other clients, or Remote MCP for cloud setup.