A beautiful terminal UI application for saving and organizing your frequently used commands with AI-generated descriptions.
- 💾 Save commands with auto-generated descriptions using Claude AI
- 🎨 Beautiful terminal UI built with Bubble Tea
- ⌨️ Simple keyboard navigation
- 📝 Persistent storage in JSON format
- 🤖 AI-powered command descriptions
- 🔄 Fallback to manual description entry if AI generation fails
- 📋 Pipe commands directly from clipboard or stdin
- 📋 Copy saved commands back to clipboard with one keystroke
- 🔧 Template variables support with
{{variable_name}}syntax
go build -o memorycatSet your Anthropic API key as an environment variable:
export ANTHROPIC_API_KEY=your_api_key_hereRun the application:
./memorycatSave a command directly from your clipboard:
pbpaste | ./memorycatOr save any command:
echo "kubectl get pods -A" | ./memorycatList View:
n- Add a new commandenterorc- Copy selected command to clipboardd- Delete selected command↑/k- Move up↓/j- Move downq- Quit
Input Mode:
- Type your command
Enter- Save command (will generate description with AI)Esc- Cancel
Commands are saved to: ~/.config/memorycat/commands.json
- Press
nto add a new command - Type:
docker ps -a - Press Enter
- Claude AI generates: "List all Docker containers"
- Command is saved and displayed in the list
- Navigate to any saved command and press
cto copy it to clipboard
Note: If AI generation fails (e.g., network issues, API errors), you'll be prompted to enter a description manually instead of losing your command.
$ pbpaste | ./memorycat
Generating description for: docker ps -a
Saved: Lists all Docker containers including stopped onesSave commands with template variables using {{variable_name}} syntax:
- Press
nto add a new command - Type:
curl -O {{url}} - Press Enter (command is saved with the template)
- Later, press
cto copy the command - The app will prompt you to enter a value for
{{url}} - Enter the URL value and press Enter
- The final command with substituted values is copied to clipboard
Example templates:
curl -O {{url}}- Download a file from a URLssh {{user}}@{{host}}- SSH to a serverdocker exec -it {{container}} bash- Enter a containergit clone {{repo}} {{destination}}- Clone a repository
- Go 1.24+
- Anthropic API key