LAST DB
On a foundation you own.
Software should make a life you want to live in — not a stack of rented silos you babysit. LastDB is a local database all your tools are built on: memory, board, ops gates, agent skills — and the apps you write yourself. Build hard. Build happy. Keep the substrate — and deliver slices of it to people you choose.
Local use needs no account. Optional cloud backup/sync joins an account when you want multi-device. Alpha — macOS Apple Silicon, ~5 minutes to install.
[Install →] [Apps] [llms.txt] — plain-text install for agents
Most teams assemble a life out of SaaS: notes here, tickets there, agents somewhere else — each with its own database, account, and anxiety. You are building in a dozen rented rooms.
LastDB is the room you own. One permanent local database. Apps (Brain, Kanban, Situations, and the ones you write) are tools on that foundation — not permanent custodians of a copy. The point of the stack is not grind for its own sake; it is building software — and a practice — that makes you happy.
LASTDB the foundation
Your local database. One process on your Mac. Everything else stands on this.
YOUR STACK the stack
Memory, board, ops, agents — and apps you invent. Same data. No per-tool silo.
This is how you get started. Needs Homebrew, Bun, and Node 18+ with npm on Apple Silicon. One installer puts LastDB and the starter apps on your machine. Prefer plain text? See llms.txt.
RUN THIS copy once → terminal or agent
Skip the first line if bun --version already works; skip the node line if npm --version already works. Script has no shell comments on purpose — macOS zsh does not treat # as a comment in an interactive paste.
curl -fsSL https://bun.sh/install | bash
export PATH="$HOME/.bun/bin:$HOME/.local/bin:$PATH"
brew install node
test "$(uname -m)" = "arm64" || { echo "LastDB needs macOS Apple Silicon" >&2; exit 1; }
for tool in brew git bun node npm; do command -v "$tool" >/dev/null || { echo "Missing $tool" >&2; exit 1; }; done
node --version
git --version
git clone https://github.com/EdgeVector/last-stack ~/.last-stack
~/.last-stack/setup
~/.last-stack/bin/last-stack-install-apps
brew services start lastdb
lastdb status
curl --fail --silent --show-error --unix-socket ~/.lastdb/data/folddb.sock http://localhost/health
brain init --grant-consent
kanban init
situations init
lastsecrets init
org init
search init --quiet
kanban list
brain concept new hello --title "Hello" --body "my first note"
brain get hello
brain ask "first note"
lastsecrets listIf a command is “not found,” ensure ~/.bun/bin and ~/.local/bin are on your PATH (the Bun installer usually does this; open a new terminal if needed). Health should print {"status":"ok"}. The installer ends with RESULT: PASS or RESULT: FAIL. Stop when it prints RESULT: FAIL. brain ask may lag a few seconds after create — brain get hello is immediate.
WHAT THAT DID
brew install LastDB, clone apps under ~/lastdb-apps, link brain / kanban / situations / lastsecrets / search, start the daemon, init each app. The installer prints a pass or fail result.
DATABASE ONLY
brew install edgevector/lastdb/lastdb brew services start lastdb lastdb status curl --fail --silent --show-error --unix-socket ~/.lastdb/data/folddb.sock http://localhost/health
Expect {"status":"ok"}. Add apps later from the same installer with --no-brew.
Installed already? Next steps, by intent: