Skip to content
WIP

This guide is a work in progress. Barry is also a work in progress.

barry bag

Manage capability bags.

barry bag [options] [command]
Subcommand Description
list List all registered bags and status.
show Show bag manifest and what it provides.
access Set registry-wide bag visibility: enabled | deferred | disabled (distinct from pack/unpack, which are per-barry)
doctor Audit every barry for stale bag references, missing traits, un-enabled sub-bags and missing launchd plists.
sync-traits Sync bag traits (incl. trait-granted skills) into the DB without touching identities.
create Scaffold a new bag directory.
build Build local bags to plain JS (all bags if no name given)
infra Run terraform against a bag’s declared infrastructure (infra: in bag.yaml)
serve Serve a local bag over MCP (for remote-bag testing and as a reference server)
check Validate a bag directory without installing it: manifest, referenced files, skills, actions.
publish-sdk Publish @barry-rocks/sdk/tools to npm.

List all registered bags and status.

barry bag list [options]

Alias: barry bag ls.

Show bag manifest and what it provides.

barry bag show [options] <name>
Argument Required
name Required

Set registry-wide bag visibility: enabled | deferred | disabled (distinct from pack/unpack, which are per-barry)

barry bag access [options] <name> <level>
Argument Required
name Required
level Required

Audit every barry for stale bag references, missing traits, un-enabled sub-bags and missing launchd plists.

barry bag doctor [options]
Option Description
--fix Repair the problems found.

Sync bag traits (incl. trait-granted skills) into the DB without touching identities.

barry bag sync-traits [options] [name]
Argument Required
name Optional

Scaffold a new bag directory.

barry bag create [options] <name>
Argument Required
name Required
Option Description
--path <dir> Directory to create bag in.
--server Include MCP server for barry:// resource discovery.
--template <type> Template: local (default, monorepo) or npm (standalone, uses @barry-rocks/sdk/tools) Default local.

Build local bags to plain JS (all bags if no name given)

barry bag build [options] [name]
Argument Required
name Optional
Option Description
-f, --force Rebuild even when output is up to date.
-w, --watch Rebuild on source changes.

Run terraform against a bag’s declared infrastructure (infra: in bag.yaml)

barry bag infra [options] <name> <action>
Argument Required
name Required
action Required
Option Description
--auto-approve Skip terraform interactive approval.
--var <var...> Pass -var to terraform (repeatable)

Serve a local bag over MCP (for remote-bag testing and as a reference server)

barry bag serve [options] <name>
Argument Required
name Required
Option Description
--port <port> Port to listen on (default: 9878)
--host <host> Host to bind (default: 127.0.0.1)

Validate a bag directory without installing it: manifest, referenced files, skills, actions.

barry bag check [options] <path>
Argument Required
path Required
Option Description
--deep Also boot the bag’s tools entry on a real MCP server (runs bag code)
--json Emit findings as JSON.

Publish @barry-rocks/sdk/tools to npm.

barry bag publish-sdk [options]
Option Description
--dry-run Run pnpm publish –dry-run without actually publishing.

Every command also accepts -h, --help. All system commands.