Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
79 commits
Select commit Hold shift + click to select a range
e1a49df
Add first batch of finished skills
akbad Jan 1, 2026
11575c7
Add skills install script supporting all Bureau-supported coding agents
akbad Jan 1, 2026
77af9d5
Rename protocol setup script for consistency w/ dirname
akbad Jan 1, 2026
7eeaee9
Add minor doc + script adjustments
akbad Jan 1, 2026
e556bd9
Drop explicit MCP configs from OpenCode template config in anticipati…
akbad Jan 6, 2026
127c547
Add helper script for replacing placeholders in config strings
akbad Jan 15, 2026
31b2b7d
Remove redundant docs in subdirs
akbad Jan 15, 2026
5ddc053
Remove redundant "by category" and "deep dive" agent-oriented guides …
akbad Jan 16, 2026
bbe24aa
Remove other redundant docs in `tools/`
akbad Jan 16, 2026
7430ed7
Drop references to removed MCP guidance docs for agents
akbad Jan 16, 2026
0ff71d1
Update broken paths to reference/guidance docs in agent role prompts
akbad Jan 16, 2026
4ae0456
Merge branch 'main' into feat/skills-system
akbad Jan 16, 2026
846cdd2
Rename `check-prereqs` to `ensure-prereqs` for accuracy & clarity
akbad Jan 23, 2026
e3fd7a1
Add first draft of Codex auto-approval test script
akbad Jan 23, 2026
93c7e47
Add v1 logging library
akbad Jan 25, 2026
b09d18b
Remove extraneous/mistakenly-generated file
akbad Jan 27, 2026
4b9a894
Set role settings in stone
akbad Feb 3, 2026
f11268a
Update security note
akbad Feb 3, 2026
5513652
Set some new config settings in stone
akbad Feb 3, 2026
051fdf9
Set more new config settings in stone
akbad Feb 3, 2026
88d3748
Add `service-order.py` after review
akbad Feb 3, 2026
6dbcd29
Add trivial script updates
akbad Feb 3, 2026
0d0a83c
Fix typo in file-level docstring
akbad Feb 3, 2026
bd831ad
Correct comment
akbad Feb 3, 2026
791a2e7
Update `operations/` README
akbad Feb 3, 2026
c3d1959
Add minor updates to setup doc
akbad Feb 3, 2026
7d1ef99
Add more trivial script updates/refactors
akbad Feb 3, 2026
2a6876d
Refactor `ensure-prereqs` to use shared logging library
akbad Feb 4, 2026
9d8c433
Add `log_banner()` to shared logging library
akbad Feb 4, 2026
1698d4f
Refactor script setting up Superpowers for Codex
akbad Feb 4, 2026
8920992
Refactor `open-bureau` to use logging library
akbad Feb 4, 2026
4443709
Refactor scripts to use new shared internal libraries
akbad Feb 4, 2026
8809d8f
Refactor script to use new shared internal libraries
akbad Feb 4, 2026
bbe062f
Add scaffolding for expanded `operations/` internal package
akbad Feb 4, 2026
bc3f5c7
Add documentation of design choice w. r. t. role prompts in launcher …
akbad Feb 4, 2026
e843a33
Add TOML package in anticipation of upgrade
akbad Feb 4, 2026
de79abf
Add trivial updates to config-related code
akbad Feb 4, 2026
e566697
Update shared JSON config manipulation library in anticipation of exp…
akbad Feb 4, 2026
e31748a
Add library supporting direct role setup
akbad Feb 4, 2026
81c4522
Ensure config validation delegates to the same parsing as used for co…
akbad Feb 4, 2026
598ccf1
Add placeholder expansion validation & update placeholder regex varname
akbad Feb 4, 2026
5ca74e6
Remove `name` field from skill files' YAML frontmatter and add docume…
akbad Feb 6, 2026
2872491
Remove stale reference to now-removed *Superpowers* bootstrap script
akbad Feb 6, 2026
14515af
Rename skill files to avoid naming conflicts w.r.t. invocation + fit …
akbad Feb 6, 2026
76291c2
Add README for static skills explaining choice of no `name` field in …
akbad Feb 6, 2026
a480998
Remove duplicated "editing modes" guidance from tools guide for agent…
akbad Feb 6, 2026
78670fb
Patch Codex skill install location to be `~/.agents/skills` (from `~/…
akbad Feb 6, 2026
5739614
Add "assess mode" skill and add comprehensive Bureau skills section t…
akbad Feb 6, 2026
b9285c1
Add hunk-by-hunk mode to "assess mode" skill
akbad Feb 6, 2026
6621d3f
Add "observe" step and summarization offer directive to "assess mode"…
akbad Feb 7, 2026
fe6f2d1
Refine "assess mode" skill further
akbad Feb 7, 2026
806f989
Refine bootstrap script output and remove outdated info
akbad Feb 7, 2026
60d6d75
Add high-quality coding style doc based on my own work
akbad Feb 8, 2026
5fbc4f0
Rename code standards doc
akbad Feb 8, 2026
37ae686
Update info on assess mode in README
akbad Feb 9, 2026
8689939
Add config related to assess mode, including making it a default-inst…
akbad Feb 9, 2026
b023253
Disable the `code_standards` override setting by default
akbad Feb 9, 2026
177d6c7
Add charter.yml configs
akbad Feb 9, 2026
24653b5
Polish formatting of agent output in micro mode
akbad Feb 10, 2026
757957c
Add `md` formatting to post-step output templates in micro mode skill…
akbad Feb 10, 2026
906828b
Overhaul "micro mode" skill definition to fix various issues
akbad Feb 10, 2026
88b56af
Update directive for finding standards sources in "assess mode" skill
akbad Feb 10, 2026
c5a0345
Update wording in "assess mode" skill
akbad Feb 11, 2026
23fc14d
Simplify handoff guide
akbad Feb 11, 2026
28b4043
Further refine handoff guide
akbad Feb 11, 2026
8b65659
Fix wording
akbad Feb 11, 2026
377bc0c
Update inline comment
akbad Feb 16, 2026
51b8423
Update OpenCode agent role setup to only wire user-enabled agents
akbad Feb 21, 2026
9d50276
Make order in which changes are presented in "assess mode" dependency…
akbad Feb 22, 2026
7716ea8
Add updated config documentation, including new schema for specifying…
akbad Feb 22, 2026
7212cb2
Add further reviewed changes
akbad Feb 22, 2026
150bc81
Add logging to memory cleanup handlers
akbad Feb 22, 2026
a4a3ba9
Minor formatting polishes to handoff guide
akbad Feb 22, 2026
a5ace11
Add diff and summary to micro mode step header
akbad Mar 2, 2026
9b8a5ff
Add first batch of config file + docs updates
akbad Mar 2, 2026
9e5aea2
Add initial changeset to overhaul config system to single repo-provid…
akbad Mar 3, 2026
3104427
Add `.vscode/settings.json` ensuring VSCode Mypy extension uses uv-in…
akbad Mar 3, 2026
b4a3f55
Update role prompt setup script
akbad Mar 3, 2026
b188f8b
wip
akbad Mar 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ close-bureau
.worktrees/
*.pyc
.serena/
.vscode/
.vscode/*
!.vscode/settings.json
.npm-cache/
bureau.egg-info/
.coverage
Expand Down
5 changes: 5 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
// ensure VSCode extension picks up Mypy when the uv-installed Python interpreter
// (in bureau/.venv/) is selected in VSCode
"mypy-type-checker.importStrategy": "fromEnvironment"
}
56 changes: 47 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,11 @@
- spawnable as **cross-CLI subagents** with *minimal* task delegation overhead
- usable in *every* supported CLI as both:

- **isolated subagents**
- **isolated subagents**
- **interactive main agents**

- **Built-in workflow skills** — structured, multi-step protocols (like [two-phase code assessment](protocols/context/static/skills/assess-mode/SKILL.md)) that agents activate automatically when they recognise a matching task

- A **<ins>*near-zero* learning curve</ins>** via:

1. **context injection** that ensures:
Expand Down Expand Up @@ -110,15 +112,16 @@ All agents automatically read these files at startup:

- Serves as an entrypoint to documentation progressively disclosing each MCP servers' tool capabilities

- Guidance on automatically activating [skills](https://github.com/obra/superpowers/tree/main/skills) highly relevant and useful for key dev workflows/tasks *(provided by the [Superpowers plugin](https://github.com/obra/superpowers), currently **only for Claude Code or Codex**)*
- **Custom Bureau skills**: structured workflow protocols (e.g. `bureau-assess-mode`) installed for all supported CLIs and activated automatically by matching prompts
- **[Superpowers](https://github.com/obra/superpowers) skills** — community-maintained skill library *(currently Claude Code and Codex only)*

Injected via these files (created in setup steps)
Injected via these files

- `~/.claude/CLAUDE.md` (Claude Code)
- `~/.gemini/GEMINI.md` (Gemini CLI)
- `~/.codex/AGENTS.md` (Codex)

with each of the 3 files above generated from templates (for portability regardless of repo clone location).
with each of the 3 files above generated from [templates](protocols/context/templates/) and symlinked (for portability).

### Spec-driven development *(maintainer favourite)*

Expand All @@ -132,9 +135,44 @@ with each of the 3 files above generated from templates (for portability regardl
- can seamlessly handle on-the-fly updates, accordingly synchronize/adjust specs, plans, tasks, etc. in a cascading fashion

> [!TIP]
>
>
> To get started fast, **read [Bureau's 5-minute guide to `spec-kit`](docs/USAGE.md#using-github-speckit-cli)**.

### Workflow skills that actually help

> *Structured, multi-step protocols that agents activate automatically when they recognise a matching task.*

> [!NOTE]
>
> All skill names below appear in agent interfaces prefixed with `bureau-` (e.g. `assess-mode` → `bureau-assess-mode`).

#### Skills installed by default

| Skill | What it does |
| :--- | :--- |
| **[Assess mode](protocols/context/static/skills/assess-mode/SKILL.md)** | **Two-phase guided review**: first builds a mental model of changes (with 4 comprehension styles to choose from), then audits every file against [configurable quality standards](docs/CONFIGURATION.md#assess_mode). Interactive tour when used as a main agent; structured report when delegated to a subagent. |
| **[Micro mode](protocols/context/static/skills/micro-mode/SKILL.md)** | **Step-gated editing with DAG-based planning:** offers maximum control over each atomic edit, with pause points after every change. |

#### Additional skills available in the catalog

The [`protocols/context/static/skills/`](protocols/context/static/skills/) directory ships several more skills that can be enabled on demand:

| Skill | What it does |
| :--- | :--- |
| [Scrimmage mode](protocols/context/static/skills/scrimmage-mode/SKILL.md) | Systematic self-attack testing after every code change: generates attack vectors across 5 categories (input validation, state, failure modes, concurrency, security) and blocks progression until vulnerabilities are fixed. |
| [Blast radius mode](protocols/context/static/skills/blast-radius-mode/SKILL.md) | Runs impact analysis before edits by enumerating callers, dependents, tests, and contracts affected, then classifying changes as *safe/needs review/breaking/blocked*. |
| [Clearance mode](protocols/context/static/skills/clearance-mode/SKILL.md) | Rigorous completion verification that defines measurable "done" criteria upfront and blocks clearance until they're satisfied, with evidence. |
| [Safeguard mode](protocols/context/static/skills/safeguard-mode/SKILL.md) | Defines system invariants (value constraints, state machines, relationships, ordering) that must never break and verifies them after all changes. |
| [Prompt engineering](protocols/context/static/skills/prompt-engineering/SKILL.md) | Guided prompt creation and refinement for system prompts, agent instructions, skill definitions, or any LLM-facing text. |
| [Shadow mode](protocols/context/static/skills/shadow-mode/SKILL.md) | Propose-only editing: the agent shows diffs without touching files, with the user applying changes manually. Ideal for learning, maximum transparency, or untrusted environments. |

To enable any of these, add them to the `skills.enabled` [config setting](docs/CONFIGURATION.md#skills):

```yaml
skills:
enabled: [micro-mode, assess-mode, shadow-mode, scrimmage-mode]
```

## Agent role usage patterns

### Spawning subagents
Expand Down Expand Up @@ -190,20 +228,20 @@ Use the built-in [primary agents mechanism](https://opencode.ai/docs/agents/#pri

| File | Purpose | Tracked? |
| :--- | :--- | :--- |
| `charter.yml` | Fixed, rarely-changed system defaults | Yes |
| `directives.yml` | Streamlined collection of user-oriented, often-tweaked settings | Yes |
| `defaults.yml` | All git-tracked package defaults (ships with Bureau) | Yes |
| `.bureau.yml` | Optional project-level config (discovered by CWD walk-up) | Yes (in *your* project) |
| **`local.yml`** | **Personal customizations/overrides** (gitignored) | **No** (gitignored) |

Configuration loads based on the following hierarchy *(later config sources override earlier ones)*: \
**`charter.yml` → `directives.yml` → `local.yml` → environment variables**
**`defaults.yml` → `.bureau.yml` → `local.yml` → environment variables**

See [`docs/CONFIGURATION.md`](docs/CONFIGURATION.md) for full reference.

## Repo structure

```
bureau/
├── bin/ # CLI entry points (open-bureau, close-bureau, check-prereqs)
├── bin/ # CLI entry points (open-bureau, close-bureau, ensure-prereqs)
├── agents/ # Agent definitions and setup
├── protocols/ # Context/guidance files for agents
├── tools/ # MCP servers and their documentation
Expand Down
Loading
Loading