This post is going to age like milk. That’s the nature of posts about AI workflows these days. Things are changing so fast. As a snapshot in time, and to help folks trying to experience the wonder that is a CLI-based coding agent with advanced memory, here is my current setup which I have running on a couple different computers tied to my one Claude Code subscription.
Openclaw is an awesome project and really popular right now. If you want a more minimal setup that gets at the soul of the project, but includes more advanced memory, this is the way.
In general, it’s really easy to get into a kind of automatic “copy/paste and just run the code” mode with these things, but going piece by piece and building it together with your agent is a good way to minimize the hidden code on your machine and make sure that you at least have a grasp on how things are working.
This post will walk you quickly through (1) setting up Claude Code, (2) installing AutoMem, and (3) giving your new agent a soul.
Step 1: Get Comfortable with Claude Code
If you have not installed Claude Code yet, start here:
npm install -g @anthropic-ai/claude-code
Spend some time using it on a real project. Learn the basics:
- How it reads and edits files
- How it runs commands
- How skills and MCP servers extend its capabilities
Once you are comfortable with the fundamentals, you are ready to add memory.
Step 2: Install AutoMem
AutoMem gives Claude Code persistent memory using a graph database (FalkorDB) for relationships and a vector database (Qdrant) for semantic search. It runs locally via Docker.
Add the Skill
Create this file at .claude/skills/install-automem.md in your project (or globally at ~/.claude/skills/install-automem.md): https://gist.github.com/ideadude/82f246e2080c5b7124fb58fce8366352
Run the Skill
Now just tell Claude: “Install automem for me”
Claude will walk you through the entire process. This worked seamlessly on my Mac with Docker Desktop already running. It also worked on a fresh Linux server that did not have Docker installed yet… Claude walked me through installing Docker first, then continued with AutoMem.
Step 3: Give Claude a Soul
A memory system is useful, but Claude still feels generic. The openclaw project has an interesting approach: give your AI assistant an identity and a soul.
Clone the openclaw repo to borrow their templates. (This is an optional step. The skill below grabs the files from the web, but it can be useful to have a local copy of this repo to point your agent at to learn useful skills and techniques.)
git clone https://github.com/openclaw/openclaw.git ~/openclaw
The templates are in docs/reference/templates/. The three files that matter:
- IDENTITY.md – Who is your Claude? Name, personality, emoji
- SOUL.md – Core values and behavioral principles
- BOOTSTRAP.md – The prompt that guides the soul creation conversation
Create the Soul Skill
Add this file at .claude/skills/create-soul.md: https://gist.github.com/ideadude/95249fc80674d2f3f8b8b9b808623535
Run the Soul Creation
Tell Claude: “Let us create a soul for you in this workspace”
Then just… talk. The conversation that follows is genuinely interesting. Claude will ask about the project, think about what personality fits, suggest names, and work with you to craft an identity that makes sense.
For my blogging project, we ended up with “Scout” (a curious explorer who helps find and develop ideas). The soul file captures values like being purposeful, respectful of my expertise, and focused on genuinely helpful content over volume. I shared the PMPro company Core Values with Claude and asked it to come up with a personality in alignment with those.
The bot that runs the server I set up in my basement is “Flint”. a work daemon running on an old gaming PC in my basement—direct, efficient, and just opinionated enough to push back when
“Flint” is a work daemon running on an old gaming PC in my basement—direct, efficient, and just opinionated enough to push back when there’s a better way to do something. He handles server tasks, answers questions, and signs off with a 🪨.
(Both agents wrote their own descriptions above.)
The Result
Now when I start a new Claude Code session, it is not starting from zero. It remembers past decisions. It has a consistent personality. It refers to itself as Scout and uses its emoji. It learns from its mistakes. It remembers where that fucking file is and doesn’t have to waste my API credits grepping things over and over as much. (Deep breath.) But really it smooths out a lot of the rough spots with running current CLI-based coding agents.
Some useful prompts to try after setup:
- “Remember this fix so this doesn’t happen again.”
- “Recall any decisions we made about [topic]”
Remember that Docker needs to be up and running when you want automem to be available to Claude. Claude will have installed the MCP and should notice if automem is down and even try to turn it on for you.
Have fun with your new bot.