Skip to content

Quickstart — Your First Agent in ~10 Minutes

Thai version: HANDBOOK.th.md · Framework repo: bemindlabs/BWOC-Framework · Glossary: ../glossary.en.md

This is a single, copy-paste walkthrough. By the end you will have installed bwoc, created a workspace, incarnated an agent, talked to it, run a task, formed a one-agent team, and then retired the agent cleanly. Every step takes about a minute; the whole thing fits in ten.

When you want the full story for any topic, the "What next" box at the bottom links you to the right chapter.


The lifecycle you are about to walk

Every BWOC object follows three phases. The framework calls them uppāda · ṭhiti · vaya; plain English: birth → live → retire. This tutorial threads all three end-to-end so you see the complete arc once before exploring the details.


Step 0 — Prerequisites

You need Rust 1.85 or later. Check with:

rustc --version

If rustc is missing or older, install or update via rustup.rs.

That is the only hard requirement. The bwoc binary is self-contained; no other runtime is needed for the tutorial.


Step 1 — Install the CLI

Clone the framework and install the bwoc binary:

git clone https://github.com/bemindlabs/BWOC-Framework
cd BWOC-Framework
cargo install --path crates/bwoc-cli

What happens. Cargo compiles the CLI crate and places the bwoc binary in ~/.cargo/bin/. This takes a minute or two the first time.

Verify it works:

bwoc --help

Expected result. The help text lists all subcommands. You should see new, check, chat, run, team, status, and others.

Then run the doctor to catch any environment issues early:

bwoc doctor --auto

Expected result. Each check prints ok or self-repairs. Fix anything that stays warn or error before continuing.


Step 2 — Create a workspace

A workspace is the root directory that holds your agents, team config, and shared task lists.

bwoc init ./my-workspace
cd my-workspace

What happens. bwoc init creates .bwoc/ (registry + teams), a default agents/ folder, and a workspace manifest. The working directory is now your workspace root — all subsequent commands run from here.

Confirm it is registered:

bwoc workspace info

Expected result. A short summary: workspace name, path, registered agent count (zero so far).

Check the (empty) agent list:

bwoc list

Expected result. "No agents registered" or an empty table — correct, you have not created one yet.


Step 3 — Create your first agent

bwoc new sage --role "research assistant" --target agents/agent-sage

What happens. bwoc new copies the agent template into agents/agent-sage/, writes a config.manifest.json, creates the slot directories (persona/, mindsets/, skills/, interconnect/, memories/), generates AGENTS.md, and adds the agent to .bwoc/agents.toml.

Optional flags you can add (not needed for the tutorial):

Flag What it does
--backend ollama Pre-configure a local Ollama backend
--mindsets research,critical Seed specific mindset files
--skills writing,analysis Seed specific skill files

Expected result. You see a creation summary and the path agents/agent-sage/ now exists with its full slot structure.


Step 4 — Check the agent passes validation

bwoc check agents/agent-sage

What happens. The auditor verifies that AGENTS.md contains no backend-specific syntax (no YAML frontmatter, no wikilinks, no hardcoded model names), that config.manifest.json is valid JSON, and that MEMORY.md is within the 200-line limit.

Expected result. All checks print ok. If anything fails, the error message tells you exactly what to fix. A freshly scaffolded agent always passes — if it does not, run bwoc doctor --auto and retry.


Step 5 — Talk to the agent

Start an interactive chat session:

bwoc chat agent-sage

What happens. The harness loads the agent's manifest, resolves the backend (uses your default unless you set --backend), and opens a prompt.

Type something like:

What can you help me with?

Then type /exit or press Ctrl-D to leave the session.

Expected result. The agent responds based on its role ("research assistant") and any mindsets/skills declared in its slots.

If you want to pick a specific backend for this session without changing the manifest:

bwoc spawn agent-sage --backend claude
# or
bwoc spawn agent-sage --backend ollama

Step 6 — Run a headless task

For automation you do not need an interactive session. Use bwoc run:

bwoc run agent-sage --task "Summarize what a research assistant does in three bullet points"

What happens. The harness sends the task prompt to the agent and streams the result to stdout, then exits.

Useful flags:

Flag What it does
--json Emit structured JSON output instead of plain text
--timeout 60 Abort if the agent has not responded within 60 seconds

Expected result. Three bullet points printed to your terminal, then the process exits cleanly.


Teams let multiple agents share a task list and claim work cooperatively. Even with one agent it is worth trying so you see the pattern.

Create a team and add sage to it:

bwoc team create research --members sage

Add a task to the team's shared list:

bwoc task add research "Draft a one-paragraph project brief"

Have sage claim the task:

bwoc task claim research --as agent-sage

sage works the task (run or chat as in Steps 5–6). When done, mark it complete:

bwoc task complete research --as agent-sage

Expected result. The task moves through open → claimed → done in the team's task list. You can verify at any point by listing open tasks (see the end-user handbook for the full task command surface).


Step 8 — Observe what is happening

While agents are running you have three tools:

# One-line health status
bwoc status

# Follow the live log for a specific agent (Ctrl-C to stop)
bwoc log agent-sage -f

# Full dashboard — all agents, tasks, and resource use
bwoc dashboard

What to look for. bwoc status shows whether each agent is idle, running, or stopped. bwoc log streams structured events as the agent processes tasks. bwoc dashboard gives a holistic view useful when you have multiple agents in flight.


Step 9 — Stop and retire the agent

Stop the running agent process without removing anything:

bwoc stop agent-sage

When you are ready to remove the agent entirely but want to preserve its memory for future reference:

bwoc retire agent-sage --keep-memory

What happens. bwoc retire removes the agent from .bwoc/agents.toml, cleans up its process state, and — because you passed --keep-memory — leaves the memories/ slot in place so nothing learned is lost. Without that flag the whole directory is removed.

Expected result. bwoc list no longer shows sage. The memories/ folder remains at agents/agent-sage/memories/ if you used --keep-memory.

This is the retire phase — the third and final stage of the birth → live → retire arc.


What next

You have seen the full lifecycle once. Here is where to go deeper:

Topic Read
Full CLI surface — every flag, every command ../end-user/HANDBOOK.en.md
Incarnating agents, slot files, AGENTS.md rules ../agents/HANDBOOK.en.md
Writing persona, mindsets, and skills ../slots/HANDBOOK.en.md
Backends — Claude, Codex, Kimi, Ollama, and more ../backends/HANDBOOK.en.md
The design philosophy and dhamma mapping ../philosophy/HANDBOOK.en.md
Term lookup ../glossary.en.md
Framework source — canonical spec bemindlabs/BWOC-Framework

The framework's own docs live at docs/en/ in that repo — for example, the incarnation spec is at docs/en/INCARNATION.en.md and the agent template spec at modules/agent-template/AGENTS.md.