Project memory
for your work
Sidecar is a local-first CLI tool that helps developers and AI coding agents record decisions, track work, and carry context between sessions.
Git remembers what changed. Sidecar remembers why.
$ npm install -g sidecar-cli Everything your codebase forgets
Code changes live in git. Everything else — the reasoning, the tradeoffs, the half-finished work — disappears between sessions.
Decisions
Record the reasoning behind architectural choices. Not just what you did — why you did it.
sidecar decision record Work Logs
Track what changed in a session. Goals, outcomes, and the files you touched.
sidecar worklog record Tasks
Add follow-up work directly inside the project. No separate issue tracker needed for small items.
sidecar task add Notes
Capture observations, warnings, or loose thoughts before they evaporate.
sidecar note Summaries
Auto-generate a structured project summary that reflects recent activity.
sidecar summary refresh Preferences
Store project-level conventions and style preferences that guide both humans and agents.
sidecar preferences Humans and AI agents,
sharing the same memory
Developers use the CLI directly. An AI coding agent — reading its AGENTS.md instructions in your repository — can do the same: record decisions, log work, and leave notes for whoever comes next.
Sidecar becomes the project's shared memory. When a new session starts — human or agent — it reads the same structured context and picks up where things left off.
Works with Claude Code, Cursor, Codex, and any agent that can run shell commands.
# Agent Instructions
Before starting work:
$ sidecar context --format markdown
After completing changes:
$ sidecar worklog record \
--done "..." \
--files src/... \
--by agent
If a decision was made:
$ sidecar decision record \
--title "..." \
--summary "..." \
--by agent
$ sidecar summary refresh Code is remembered.
Reasoning is not.
Git is a perfect record of what changed. But it tells you almost nothing about why a decision was made, what alternatives were considered, or what work was left half-done.
This gets worse as AI-assisted development becomes normal. An agent finishes a task, the session ends, and all the context it built up about your project is gone. The next session starts cold.
Sidecar gives both humans and agents a place to write things down — in the project, next to the code, for anyone who opens the repo next.
Why did we switch to SQLite here?
No record. Ask someone. Hope they remember.
sidecar context
→ "Decided to use SQLite for v1: simple, local, zero config. See decision 2024-11-01."
The pain
- ✕ Decisions live in Slack, get lost
- ✕ AI sessions start cold every time
- ✕ PRs don't explain tradeoffs
- ✕ Follow-up tasks get forgotten
- ✕ Conventions have to be re-explained
Simple by design
Three steps. Works in any repository. Nothing to sync.
Initialize
Run sidecar init in any project. Creates a .sidecar/ folder with a local database and config.
Record as you go
Use the CLI to capture decisions, log work, add tasks, and write notes — as you work, not after.
Retrieve context
Any time — human or agent — run sidecar context to get a structured view of what happened and why.
# Start with context from the last session
$ sidecar context
# ... do your work ...
# Record a decision you made
$ sidecar decision record \
--title "Use SQLite for local storage" \
--summary "Simple, zero-config, no server required for v1"
# Log the work you completed
$ sidecar worklog record \
--goal "Add task support" \
--done "Implemented add/list/done commands" \
--files src/tasks.ts,src/cli.ts
# Add a follow-up task
$ sidecar task add "Add import/export support" --priority medium
# Refresh the project summary
$ sidecar summary refresh Designed to stay out of the way
Simple primitives. No cloud. No sync. No account. Just a folder in your repo.
Local-first
Everything lives in .sidecar/ inside your project. No server, no account, no sync required.
Structured memory
Data is stored in SQLite. Predictable, queryable, and inspectable with any standard database tool.
Agent-friendly
Designed for AI coding workflows. AGENTS.md instructions, stable --json output, and sidecar event add for validated writes from any tool.
Deterministic summaries
sidecar summary refresh generates a reliable snapshot from structured data, not freeform text.
Project preferences
Store conventions and style preferences that shape how agents and tools approach the project.
Local UI included
Run sidecar ui to open a local web dashboard. Browse decisions, work logs, and tasks all in your browser.
Your project has a lot to say.
Start recording it.
Install Sidecar, initialize it in your repo, and start building a memory layer your future self will thank you for.
$ npm install -g sidecar-cli