A simple, lightweight, unopinionated context management system for Claude Code.
During long conversations, Claude's context window fills with irrelevant conversation, file contents, and commands, which reduces performance and distracts from current tasks. Meanwhile, important project context like architecture decisions, coding patterns, and folder structure gets lost between conversations. Shallot maintains clean, relevant context that persists across conversations.
- Install Shallot in your project directory.
curl -fsSL https://raw.githubusercontent.com/dylanebert/shallot/main/install.sh | bash
- Initialize the context management system.
claude
/plant "[optional short description of the project]"
Recommended: Manually edit CLAUDE.md
and layers/structure.md
as needed to fit your project and preferences.
- Use 🧄
/peel [prompt]
to load context at the beginning of each conversation - Use 🍃
/nourish
to update the context and clean up after completing work
Shallot organizes context in four tiers:
- Global (
CLAUDE.md
) - Global standards and system overview - Project (
layers/structure.md
) - Main project entrypoint - Folder (
context.md
) - High-level context for each folder - Implementation (code) - Active work
/peel
then loads relevant context, while /nourish
updates context.
- Work in small conversations that target a single task each, keeping the context window focused
- Use
/peel
with a specific prompt at the beginning of each conversation, e.g./peel "implement user authentication"
- Use
/nourish
at the end of each conversation - Use
/clear
after each/nourish
to clear the conversation - Break down larger tasks into smaller conversations, e.g.:
/peel "outline a character control system. don't implement it yet"
# ...
/nourish
/clear
/peel "begin implementing the character control system. focus for now just on one small, testable iteration"
# ...
/nourish
/clear