Build a Barry
In this guide, you’ll install Barry and setup your first identity. Each identity can have different capabilities, permissions, and preferences/configuration.
Before you begin
Section titled “Before you begin”You need a Mac with Homebrew. To check, run
brew --version.
1. Install Barry
Section titled “1. Install Barry”Clone Barry, install what it needs, and set it up:
git clone https://github.com/perintyler/Barry barrycd barrybrew bundle && pnpm install && pnpm barry setupbarry setup installs the barry command and one login job that runs Barry’s
services; barry setup --uninstall removes it and keeps your data.
2. Setup identity
Section titled “2. Setup identity”Your identity is a directory that holds your Barry’s settings. Every session starts from it. Primitives describes it in full.
3. Start a session
Section titled “3. Start a session”What a bag looks like
Section titled “What a bag looks like”A bag is a directory with a bag.yaml at its root. Barry’s own memory bag is
a short one worth reading
(bags/memory/bag.yaml):
name: memorydescription: Repo- and tag-scoped memories — agents save them, sessions start with them
tools: entry: tools.ts # Curation and import are occasional; keep them behind tool_search so the # everyday surface is save/search/get — the loop an agent actually runs. deferred: - update - forget - list_tags - import_claude
services: web: description: Memory browser — search, edit, and curate memories in a web UI command: pnpm args: ["exec", "tsx", "server/src/index.ts"] working-directory: . serves: http health: /healthThirty lines give a session four tools, hide three more behind search, and run
a web app beside them. tools.entry is the only required part; everything else
is the bag saying what it also brings.
Your Barry has an identity, an agent, and a model. Give it tools next, in Packing bags.