Agents are ephemeral. Models are temporary. Context is permanent.
Same files. Different runtime. Compounding.
# Claude Code
claude plugin install walnut@walnut
# Everything else (Hermes, Claude Desktop, Cursor, Windsurf, Cline)
npx @lock-in-lab/walnut setupYou've had those AI sessions where every word is on point. Where the output changes the scope of your project entirely, writes the copy perfectly, or smashes the architecture. You get out exactly what you wanted β or sometimes so much more.
That's what good context does. And when that happens, you need a log of the decisions and tasks that led to it. Where it came from. Where it's going.
Your world of context can't be condensed into one monolithic MEMORY.md. Each meaningful thing in your life β your startup, your people, your side project β has goals that don't change often, tasks that change every day, a history of decisions that compounds, and domain knowledge you uncover slowly over time. These files move at different speeds. They need their own space.
That's why we built walnut.
Each meaningful thing in your life gets a walnut β your startup, your people, your health, your experiment. Life's got a bunch.
Each walnut has five system files inside _core/:
my-startup/_core/
key.md β What it is (identity, people, links β rarely changes)
now.md β Where it is right now (rebuilt every save)
log.md β Where it's been (prepend-only, immutable)
insights.md β What it knows (evergreen domain knowledge)
tasks.md β What needs doing (the work queue)
The inside of a walnut is shaped like a brain. And just like a brain, it has bundles that feed it β bundles of emails, research, quotes, files, anything related to doing a certain thing. They grow over time, get archived, or get shared.
Your goals in life and work don't change as often as your tasks and current state of affairs. Your decisions and actions occur every day and create outcomes. But the evergreen stuff β why you don't do a certain thing, or why you do some things a certain way β these are slow things you uncover over time. That's why we propose the walnut structure: files that move at different speeds.
Five folders. The file system IS the methodology.
01_Archive/ β Everything that was
02_Life/ β Personal foundation β goals, people, health
03_Inputs/ β Buffer only β arrives here, gets routed out
04_Ventures/ β Revenue intent β businesses, clients, products
05_Experiments/ β Testing grounds β might become a venture, might get archived
Traditional folder hierarchies break down when your agent can search everything. What you need instead is a system designed around capture, routing, and structured persistence.
-
Your agent reads your project state before responding. Not guessing from a flat memory file β reading the actual system files. Identity, current state, tasks, recent decisions. The brief pack loads in 30 seconds.
-
Decisions get caught mid-conversation. The stash runs silently. When you say "let's go with React Native for the mobile app" β that's a decision. It gets tagged, routed to the right walnut, and logged at the next save checkpoint.
-
Next session picks up exactly where you left off. No re-explaining. No context debt. Your agent knows your project, your people, your last decision, and what needs doing next.
| Platform | Install | |
|---|---|---|
| Claude Code | claude plugin install walnut@walnut |
Full plugin β 12 skills, hooks, rules, stash protocol |
Any platform that supports Model Context Protocol gets walnut operations via our MCP server.
| Platform | Install | |
|---|---|---|
| Hermes | npx @lock-in-lab/walnut setup |
MCP server + skill pack Β· community integration by @witcheer |
| Claude Desktop | npx @lock-in-lab/walnut setup |
MCP server auto-configured |
| Cursor | npx @lock-in-lab/walnut setup |
MCP server auto-configured |
| Windsurf | npx @lock-in-lab/walnut setup |
MCP server auto-configured |
| Cline | npx @lock-in-lab/walnut setup |
MCP server auto-configured |
| Continue.dev | npx @lock-in-lab/walnut setup |
MCP server auto-configured |
| Platform | Install | |
|---|---|---|
| OpenClaw | openclaw plugins install @lock-in-lab/walnut-openclaw |
ContextEngine plugin β replaces default memory |
- Obsidian Bridge β Sync walnut files with your Obsidian vault
- GitHub Copilot β Via MCP Registry integration
setup auto-detects which platforms you have installed and configures them. One command.
plugins/walnut/ Claude Code plugin (12 skills, hooks, rules)
plugins/walnut-cowork/ Claude Co-Work plugin (coming soon)
src/ MCP server (5 tools for any MCP client)
skills/walnuts/ Hermes skill pack
The Claude Code plugin is the full experience β 12 skills including the save protocol, stash mechanic, world dashboard, context mining, and bundle lifecycle. The MCP server gives any MCP-compatible client the core walnut operations.
Context operations show up as bordered blocks with πΏοΈ
ββ πΏοΈ +2 stash (5)
β React Native for mobile app β my-startup
β Chase Jake for API specs β my-startup
β β drop?
β°β
This visually separates context operations from regular conversation. You always know what's the system and what's your agent talking. Opt out in preferences if you don't want it.
The squirrel isn't a personality β it's a UI convention. Your agent keeps its own voice.
|
"most cracked thing I've seen for AI in 2025." Louka Ewington-Pitsos |
"two AI systems, one context layer." witcheer β―οΈ Β· Telegram |
|
"You're gonna smoke everyone with this." Athon Millane |
"context quality > context quantity." |
|
"best thing ive ever used. this is fucked." Caspar Tremlett |
"Bro. Walnuts is legendary." Roland Bernath |
Your context lives on your machine as plain markdown files. Switch models β Claude to GPT to local Ollama β your walnuts come with you. Switch platforms β Claude Code to Cursor to Hermes β same files, same context.
Your context belongs to you.
Want to build with us? Open an issue, join the conversation in Discussions, or check the contributing guide.
Built by Lock-in Lab Β· @benslockedin Β· MIT License














