@open-agent-toolkit/cli 0.3.13 → 0.3.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/assets/bundle-metadata.json +1 -1
- package/assets/docs/contributing/index.md +14 -1
- package/assets/docs/contributing/markdown-features.md +38 -0
- package/assets/docs/contributing/skills.md +64 -2
- package/assets/docs/contributing/smoke-testing.md +23 -16
- package/assets/docs/contributing/updating-model-guidance.md +2 -2
- package/assets/docs/contributing/verifying-cursor-pins.md +1 -1
- package/assets/docs/docs-tooling/add-docs-to-a-repo.md +32 -0
- package/assets/docs/docs-tooling/agent-instructions.md +131 -0
- package/assets/docs/docs-tooling/index.md +1 -0
- package/assets/docs/docs-tooling/meta.json +1 -1
- package/assets/docs/docs-tooling/workflows.md +338 -2
- package/assets/docs/{cli-utilities → getting-started}/bootstrap.md +60 -5
- package/assets/docs/getting-started/concepts.md +120 -0
- package/assets/docs/getting-started/index.md +68 -0
- package/assets/docs/getting-started/meta.json +4 -0
- package/assets/docs/getting-started/quickstart.md +174 -0
- package/assets/docs/{cli-utilities → getting-started}/tool-packs.md +142 -14
- package/assets/docs/index.md +47 -48
- package/assets/docs/meta.json +6 -7
- package/assets/docs/provider-sync/commands.md +25 -2
- package/assets/docs/provider-sync/config.md +60 -1
- package/assets/docs/provider-sync/index.md +31 -15
- package/assets/docs/provider-sync/instruction-sync.md +32 -1
- package/assets/docs/provider-sync/manifest-and-drift.md +92 -0
- package/assets/docs/provider-sync/meta.json +1 -0
- package/assets/docs/provider-sync/pilot-with-a-team.md +236 -0
- package/assets/docs/provider-sync/scope-and-surface.md +37 -3
- package/assets/docs/reference/cli-reference.md +33 -33
- package/assets/docs/{cli-utilities → reference}/config-and-local-state.md +25 -9
- package/assets/docs/{cli-utilities → reference}/configuration.md +151 -34
- package/assets/docs/reference/file-locations.md +4 -1
- package/assets/docs/reference/index.md +13 -1
- package/assets/docs/reference/meta.json +7 -1
- package/assets/docs/reference/oat-directory-structure.md +1 -1
- package/assets/docs/{workflows/projects/artifacts.md → reference/project-artifacts.md} +4 -4
- package/assets/docs/{workflows/projects/state-machine.md → reference/project-state-machine.md} +28 -21
- package/assets/docs/{workflows/projects/repo-analysis.md → reference/repository-pr-comments.md} +2 -2
- package/assets/docs/reference/troubleshooting.md +125 -10
- package/assets/docs/reference/what-oat-writes.md +410 -0
- package/assets/docs/skills/brainstorm.md +77 -0
- package/assets/docs/skills/diagnostics.md +56 -0
- package/assets/docs/{workflows/skills → skills}/explainer-kit.md +121 -0
- package/assets/docs/skills/index.md +416 -0
- package/assets/docs/{workflows/skills → skills}/meta.json +4 -2
- package/assets/docs/{workflows/skills → skills}/recon.md +49 -0
- package/assets/docs/skills/repo-improve.md +254 -0
- package/assets/docs/skills/research.md +237 -0
- package/assets/docs/skills/session-closeout.md +61 -0
- package/assets/docs/workflows/advanced/autonomy.md +344 -0
- package/assets/docs/workflows/{projects → advanced}/cursor-cloud.md +69 -1
- package/assets/docs/workflows/{projects → advanced}/dispatch-ceiling.md +163 -18
- package/assets/docs/workflows/{projects → advanced}/evidence-layers.md +20 -13
- package/assets/docs/workflows/advanced/index.md +19 -0
- package/assets/docs/workflows/advanced/meta.json +13 -0
- package/assets/docs/workflows/{projects → advanced}/orchestration-model.md +108 -35
- package/assets/docs/workflows/{projects → advanced}/programmatic-execution.md +4 -4
- package/assets/docs/{cli-utilities → workflows/advanced}/workflow-gates.md +162 -8
- package/assets/docs/workflows/advanced/worktree-bootstrap.md +83 -0
- package/assets/docs/workflows/approvals-and-automation.md +261 -0
- package/assets/docs/workflows/backlog-and-planning/backlog-lifecycle.md +348 -0
- package/assets/docs/workflows/backlog-and-planning/index.md +13 -0
- package/assets/docs/workflows/backlog-and-planning/meta.json +4 -0
- package/assets/docs/workflows/backlog-and-planning/remote-project-management.md +303 -0
- package/assets/docs/workflows/choose-workflow.md +114 -0
- package/assets/docs/workflows/ideas/index.md +3 -3
- package/assets/docs/workflows/ideas/lifecycle.md +225 -1
- package/assets/docs/workflows/index.md +11 -62
- package/assets/docs/workflows/meta.json +10 -2
- package/assets/docs/workflows/projects/closeout/closeout-skills.md +538 -0
- package/assets/docs/workflows/projects/closeout/index.md +14 -0
- package/assets/docs/workflows/projects/closeout/meta.json +4 -0
- package/assets/docs/workflows/projects/{pr-flow.md → closeout/pr-flow.md} +1 -1
- package/assets/docs/workflows/projects/{retro.md → closeout/retro.md} +1 -1
- package/assets/docs/workflows/projects/execution/execution-skills.md +258 -0
- package/assets/docs/workflows/projects/{implementation-execution.md → execution/implementation-execution.md} +52 -38
- package/assets/docs/workflows/projects/execution/index.md +15 -0
- package/assets/docs/workflows/projects/execution/meta.json +9 -0
- package/assets/docs/workflows/projects/execution/picking-up-projects.md +376 -0
- package/assets/docs/{cli-utilities → workflows/projects/execution}/project-log.md +1 -1
- package/assets/docs/workflows/projects/index.md +38 -49
- package/assets/docs/workflows/projects/lifecycle.md +159 -74
- package/assets/docs/workflows/projects/meta.json +2 -23
- package/assets/docs/workflows/projects/{design-modes.md → planning/design-modes.md} +29 -0
- package/assets/docs/workflows/projects/planning/hill-checkpoints.md +167 -0
- package/assets/docs/workflows/projects/planning/index.md +16 -0
- package/assets/docs/workflows/projects/planning/meta.json +10 -0
- package/assets/docs/workflows/projects/planning/planning-skills.md +381 -0
- package/assets/docs/workflows/projects/{splitting.md → planning/splitting.md} +3 -3
- package/assets/docs/workflows/projects/planning/starting-projects.md +511 -0
- package/assets/docs/workflows/projects/{reviews.md → reviews/index.md} +51 -5
- package/assets/docs/workflows/projects/reviews/meta.json +4 -0
- package/assets/docs/workflows/projects/reviews/review-flavors.md +650 -0
- package/assets/docs/workflows/projects/{reviewing-oat-prs.md → reviews/reviewing-oat-prs.md} +3 -3
- package/assets/docs/workflows/waves/index.md +12 -0
- package/assets/docs/workflows/waves/meta.json +4 -0
- package/assets/docs/workflows/waves/wave-workflows.md +206 -0
- package/assets/public-package-versions.json +4 -4
- package/assets/skills/oat-docs/SKILL.md +19 -19
- package/assets/skills/oat-docs-analyze/SKILL.md +1 -1
- package/assets/skills/oat-docs-apply/SKILL.md +1 -1
- package/assets/skills/oat-docs-authoring/SKILL.md +1 -1
- package/assets/skills/oat-docs-bootstrap/SKILL.md +1 -1
- package/assets/skills/oat-doctor/SKILL.md +25 -25
- package/assets/templates/docs-app-fuma/app/[[...slug]]/page.tsx +14 -2
- package/assets/templates/docs-app-fuma/app/globals.css +1 -0
- package/dist/release/public-package-contract.js +1 -1
- package/package.json +2 -2
- package/assets/docs/cli-utilities/backlog-lifecycle.md +0 -80
- package/assets/docs/cli-utilities/index.md +0 -74
- package/assets/docs/cli-utilities/meta.json +0 -13
- package/assets/docs/cli-utilities/remote-project-management.md +0 -191
- package/assets/docs/guide/concepts.md +0 -88
- package/assets/docs/guide/index.md +0 -31
- package/assets/docs/guide/meta.json +0 -4
- package/assets/docs/quickstart.md +0 -88
- package/assets/docs/workflows/projects/autonomy.md +0 -196
- package/assets/docs/workflows/projects/hill-checkpoints.md +0 -93
- package/assets/docs/workflows/projects/picking-up-projects.md +0 -124
- package/assets/docs/workflows/projects/review-flavors.md +0 -138
- package/assets/docs/workflows/skills/index.md +0 -184
- package/assets/docs/workflows/skills/repo-improve.md +0 -89
- package/assets/docs/workflows/wave-workflows.md +0 -77
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Quickstart
|
|
3
|
+
description: 'Install the OAT CLI, get a first result in an existing repository, and choose what to add next.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Quickstart
|
|
7
|
+
|
|
8
|
+
In about ten minutes you install the OAT command-line tool, try it safely in a
|
|
9
|
+
repository you already have, and choose what to add.
|
|
10
|
+
|
|
11
|
+
## What you need
|
|
12
|
+
|
|
13
|
+
- Node.js 22.17 or newer
|
|
14
|
+
- Git 2.31 or newer
|
|
15
|
+
- An existing Git repository
|
|
16
|
+
|
|
17
|
+
OAT does not run an up-front Git version check. Git compatibility is evaluated
|
|
18
|
+
best-effort by each command, and a missing or unsupported Git operation makes
|
|
19
|
+
that command fail with a system error.
|
|
20
|
+
|
|
21
|
+
## Install the CLI
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
npm install --global @open-agent-toolkit/cli
|
|
25
|
+
oat --version
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Your first result
|
|
29
|
+
|
|
30
|
+
From the root folder of your repository, run:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
oat init --scope project
|
|
34
|
+
oat status --scope project
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
`--scope project` targets the current repository. OAT calls this choice a
|
|
38
|
+
scope; `user` scope targets your home directory instead.
|
|
39
|
+
|
|
40
|
+
In a terminal, `oat init` asks which providers to enable (saved in
|
|
41
|
+
`.oat/sync/config.json`), whether to add an optional pre-commit hook that
|
|
42
|
+
warns, without blocking, when provider views are out of date, and whether to
|
|
43
|
+
run guided setup. For this first run, answer no to guided setup: it installs
|
|
44
|
+
tool packs in your home directory. Apart from your answers,
|
|
45
|
+
`oat init --scope project` writes only these files:
|
|
46
|
+
|
|
47
|
+
- empty folders `.agents/skills/`, `.agents/agents/` and `.agents/rules/`,
|
|
48
|
+
which hold your canonical assets: the one copy of each skill, agent and rule
|
|
49
|
+
that you edit;
|
|
50
|
+
- `.oat/sync/manifest.json`, OAT's record of the files it manages;
|
|
51
|
+
- a block marked `# OAT core` at the end of `.gitignore` and `.gitattributes`,
|
|
52
|
+
creating either file if needed and leaving your existing lines unchanged.
|
|
53
|
+
|
|
54
|
+
It does not touch your home directory or your Git remote, and it commits
|
|
55
|
+
nothing. For every file OAT creates, what to commit, and how to remove it all, see [What OAT Writes](../reference/what-oat-writes.md).
|
|
56
|
+
|
|
57
|
+
`oat status --scope project` reports provider views: the files or links that
|
|
58
|
+
each provider (a coding agent tool such as Claude Code, Cursor or Codex) reads.
|
|
59
|
+
A new repository has none yet, so it prints `No managed entries found.`
|
|
60
|
+
|
|
61
|
+
Leaving out `--scope project` also writes under your home directory
|
|
62
|
+
(`~/.oat/sync/manifest.json` and an empty `~/.agents/skills/`).
|
|
63
|
+
|
|
64
|
+
## Then choose what to add
|
|
65
|
+
|
|
66
|
+
Each path works on its own. Code blocks run in a terminal. Names written as
|
|
67
|
+
`/name` are agent skills, typed in your coding agent's chat, not in a shell;
|
|
68
|
+
Codex uses `$name`. A skill is a set of instructions your agent follows on
|
|
69
|
+
request, and a tool pack is a bundle of skills and templates that installs
|
|
70
|
+
together.
|
|
71
|
+
|
|
72
|
+
### Provider Sync
|
|
73
|
+
|
|
74
|
+
You edit each skill, agent and rule once in `.agents/`, and OAT creates the
|
|
75
|
+
files each coding tool reads and reports drift. It needs no tracked projects.
|
|
76
|
+
|
|
77
|
+
Add a skill first: a folder in `.agents/skills/` with a `SKILL.md` file (see
|
|
78
|
+
step 4 of [Pilot Provider Sync with One Team](../provider-sync/pilot-with-a-team.md)).
|
|
79
|
+
With no skills, sync reports `No changes required.`
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
oat providers set --scope project --enabled claude
|
|
83
|
+
oat sync --scope project --dry-run
|
|
84
|
+
oat sync --scope project
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
The first command saves your choice in `.oat/sync/config.json` (other
|
|
88
|
+
providers are `cursor`, `codex`, `copilot` and `gemini`). The second previews.
|
|
89
|
+
The third creates views, such as a link in `.claude/skills/` for each skill in
|
|
90
|
+
`.agents/skills/`, and records them in `.oat/sync/manifest.json`. A provider
|
|
91
|
+
folder already in the repository, such as `.claude/`, is enough for sync to
|
|
92
|
+
create its views. Read next: [Provider Sync](../provider-sync/index.md).
|
|
93
|
+
|
|
94
|
+
### Reusable skills
|
|
95
|
+
|
|
96
|
+
You get skills for research, comparing options, code review, ideas and
|
|
97
|
+
brainstorming, installed for you across all your repositories. You do not need
|
|
98
|
+
`oat init` for this.
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
oat tools install --scope user
|
|
102
|
+
oat sync --scope user
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
With no pack name, this installs all eight packs (core, ideas, docs,
|
|
106
|
+
workflows, utility, research, brainstorm and project-management) under
|
|
107
|
+
`~/.agents/` and `~/.oat/`, and sync links them into tools it finds in your
|
|
108
|
+
home directory, such as `~/.claude/skills/`. To install one pack, name it:
|
|
109
|
+
`oat tools install research --scope user`. The core pack (`oat-docs` and
|
|
110
|
+
`oat-doctor`) always installs for your user, never into a repository. Read
|
|
111
|
+
next: [Skills](../skills/index.md) and
|
|
112
|
+
[Tool Packs and Installed Assets](tool-packs.md).
|
|
113
|
+
|
|
114
|
+
### Workflows
|
|
115
|
+
|
|
116
|
+
You track longer work as a resumable project with reviews, approval points and
|
|
117
|
+
files such as `plan.md`, `implementation.md` and `state.md`.
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
oat tools install workflows --scope project
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Claude Code reads skills only from `.claude/skills/`, while Cursor, Codex,
|
|
124
|
+
Copilot and Gemini read `.agents/skills/` directly. If you use Claude Code and
|
|
125
|
+
have not enabled it, run `oat providers set --scope project --enabled claude`
|
|
126
|
+
and then `oat sync --scope project` after installing, or the `/oat-...` skills
|
|
127
|
+
will not appear in it.
|
|
128
|
+
|
|
129
|
+
Then type `/oat-project-quick-start` in your coding agent.
|
|
130
|
+
|
|
131
|
+
This adds workflow skills and agents under `.agents/`, templates, scripts and
|
|
132
|
+
project folders under `.oat/`, and `.oat/config.json`. New tracked projects
|
|
133
|
+
default to the synced scope, which stores project files on a separate Git ref
|
|
134
|
+
and pushes it to your `origin` remote; read
|
|
135
|
+
[Before your first project](../workflows/projects/planning/starting-projects.md#before-your-first-project)
|
|
136
|
+
first. Read next: [Choose a Workflow](../workflows/choose-workflow.md).
|
|
137
|
+
|
|
138
|
+
### Docs tooling
|
|
139
|
+
|
|
140
|
+
You set up plain Markdown or a docs site, then have your agent analyze it and
|
|
141
|
+
apply the changes you approve.
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
oat tools install docs --scope project
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
As with Workflows, if you use Claude Code and have not enabled it, run
|
|
148
|
+
`oat providers set --scope project --enabled claude` and
|
|
149
|
+
`oat sync --scope project` after installing.
|
|
150
|
+
|
|
151
|
+
Then type `/oat-docs-bootstrap` in your coding agent.
|
|
152
|
+
|
|
153
|
+
This adds seven docs skills under `.agents/skills/`, templates under
|
|
154
|
+
`.oat/templates/`, a script under `.oat/scripts/`, and `.oat/config.json`.
|
|
155
|
+
Read next: [Docs Tooling](../docs-tooling/index.md).
|
|
156
|
+
|
|
157
|
+
For setup options, configuration and every command, see
|
|
158
|
+
[CLI Bootstrap](bootstrap.md),
|
|
159
|
+
[Config and Local State](../reference/config-and-local-state.md) and the
|
|
160
|
+
[CLI Reference](../reference/cli-reference.md).
|
|
161
|
+
|
|
162
|
+
## If you are unsure
|
|
163
|
+
|
|
164
|
+
Start with the path that matches what you need right now.
|
|
165
|
+
|
|
166
|
+
- To sync canonical assets across tools, choose Provider Sync.
|
|
167
|
+
- For help with one task, such as researching a decision, choose Reusable
|
|
168
|
+
skills.
|
|
169
|
+
- To run a tracked implementation workflow, choose Workflows.
|
|
170
|
+
- To work on documentation, choose Docs tooling.
|
|
171
|
+
- For command-line setup or utility guidance, use the links just above.
|
|
172
|
+
|
|
173
|
+
You can adopt more than one path over time; they work together or on their
|
|
174
|
+
own.
|
|
@@ -7,6 +7,15 @@ description: 'Tool-pack lifecycle commands (oat tools) for installing, updating,
|
|
|
7
7
|
|
|
8
8
|
This page covers CLI commands that manage bundled OAT tool packs and installed OAT skill/agent assets in canonical directories.
|
|
9
9
|
|
|
10
|
+
> **In short**
|
|
11
|
+
>
|
|
12
|
+
> - A tool pack is a bundle of OAT skills (instructions your coding agent follows), agents, templates and scripts that installs as one unit.
|
|
13
|
+
> - There are eight packs: `core` (setup diagnostics and a local copy of these docs), `workflows` (tracked projects), `docs` (documentation upkeep), `utility` (reviews and maintenance helpers), `research` (evidence gathering and comparison), `ideas` and `brainstorm` (exploring ideas), and `project-management` (backlog and decisions kept in the repository).
|
|
14
|
+
> - Install one pack with an explicit scope: `oat tools install research --scope project` puts it in this repository, and `oat tools install research --scope user` puts it in your home directory. Leave out the pack name, as in `oat tools install --scope project`, to install every pack; in an interactive terminal it first asks which packs to include.
|
|
15
|
+
> - The `core` pack only ever installs under your home directory, whatever `--scope` you pass. [Where packs install](#where-packs-install) shows what that means for each command.
|
|
16
|
+
> - Installing the `project-management` pack is not the same as adopting project management: the repository's planning files are created only when someone runs `oat pjm init`.
|
|
17
|
+
> - Read next: [Choosing packs and their ownership](#choosing-packs-and-their-ownership), [Install vs. initialize](#install-vs-initialize), [Upgrading from an earlier CLI](#upgrading-from-an-earlier-cli), and [What OAT Writes](../reference/what-oat-writes.md) for every file each command creates.
|
|
18
|
+
|
|
10
19
|
## Quick Look
|
|
11
20
|
|
|
12
21
|
- What it does: explains how bundled OAT packs are installed, updated, inspected, and removed.
|
|
@@ -29,8 +38,40 @@ This page covers CLI commands that manage bundled OAT tool packs and installed O
|
|
|
29
38
|
|
|
30
39
|
Every reusable pack is a complete user-scope capability. On a **fresh** install
|
|
31
40
|
each pack lands at user scope by default, so capabilities follow you across
|
|
32
|
-
repositories. `core` is the one pack that is user-only
|
|
33
|
-
|
|
41
|
+
repositories. `core` is the one pack that is user-only; see
|
|
42
|
+
[Where packs install](#where-packs-install) for what happens when you ask for
|
|
43
|
+
project scope.
|
|
44
|
+
|
|
45
|
+
### Where packs install
|
|
46
|
+
|
|
47
|
+
The `--scope` option of `oat tools install` and `oat tools remove` lists `all`
|
|
48
|
+
as its default in `--help`. For `oat tools install`, that default does not
|
|
49
|
+
mean both scopes:
|
|
50
|
+
|
|
51
|
+
- With no `--scope`, a pack that is not installed yet is installed under your
|
|
52
|
+
home directory (user scope: `~/.agents/` and `~/.oat/`). A pack that is
|
|
53
|
+
already installed keeps the scope it has. An interactive install of several
|
|
54
|
+
packs asks where each one should go and suggests the same answer.
|
|
55
|
+
- With `--scope project`, the pack is installed in this repository
|
|
56
|
+
(`.agents/` and `.oat/`). With `--scope user`, it is installed under your
|
|
57
|
+
home directory.
|
|
58
|
+
- With `--scope all` given explicitly for one pack, as in
|
|
59
|
+
`oat tools install docs --scope all`, that pack is installed at both scopes.
|
|
60
|
+
|
|
61
|
+
The `core` pack can only live under your home directory:
|
|
62
|
+
|
|
63
|
+
- `oat tools install --scope project`, with no pack name, installs the other
|
|
64
|
+
seven packs in this repository and still installs `core` under your home
|
|
65
|
+
directory.
|
|
66
|
+
- `oat tools install core --scope project` exits successfully and prints
|
|
67
|
+
`Installed core tool pack.`, but it writes nothing, neither in the
|
|
68
|
+
repository nor in your home directory. Run `oat tools install core` (or add
|
|
69
|
+
`--scope user`) to install it.
|
|
70
|
+
- `oat tools remove --all --scope project` fails with
|
|
71
|
+
`Pack core does not allow project scope`, and so does
|
|
72
|
+
`oat tools remove --all` with no `--scope`. Remove the project copies one
|
|
73
|
+
pack at a time with `oat tools remove --pack <pack> --scope project`, and
|
|
74
|
+
remove the home-directory copies with `oat tools remove --all --scope user`.
|
|
34
75
|
|
|
35
76
|
On a **re-install**, existing placement wins. A pack already installed at
|
|
36
77
|
project scope stays at project scope; the fresh-install default never migrates
|
|
@@ -184,7 +225,7 @@ oat tools update --pack utility --scope user
|
|
|
184
225
|
```
|
|
185
226
|
|
|
186
227
|
It never falls back to a source checkout or copies core logic into the
|
|
187
|
-
workflows pack. See [Explainer Kit](../
|
|
228
|
+
workflows pack. See [Explainer Kit](../skills/explainer-kit.md) for
|
|
188
229
|
the usage and lifecycle contract.
|
|
189
230
|
|
|
190
231
|
## Scope, intent, and inventory
|
|
@@ -449,12 +490,17 @@ adoption**, and the two are tracked independently:
|
|
|
449
490
|
fresh install, so `~/.agents/skills/` and `~/.oat/templates/` receive the
|
|
450
491
|
managed assets and no repository file is touched.
|
|
451
492
|
- **Initialize (adoption)**: `oat pjm init` instantiates the two-layer working
|
|
452
|
-
repo-reference surface under `.oat/repo
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
493
|
+
repo-reference surface under `.oat/repo/` and records explicit adoption in
|
|
494
|
+
`.oat/config.json` as `pjm.initialized: true` with a `pjm.schemaVersion`. It
|
|
495
|
+
also writes the `OAT project-management` and `OAT decisions` guidance
|
|
496
|
+
sections to the root `AGENTS.md`. When no root `AGENTS.md` exists, it
|
|
497
|
+
creates the file with both sections. When the file (or a contained symlink
|
|
498
|
+
to one) exists, it appends whichever of the two sections is absent and
|
|
499
|
+
leaves the rest of the file unchanged. It does not rewrite a section that is
|
|
500
|
+
already there but differs from the managed version, and it does not write to
|
|
501
|
+
a file with more than one hard link or that it cannot write. In those cases
|
|
502
|
+
adoption still completes, the existing file is left unchanged, OAT prints a
|
|
503
|
+
manual patch for you to apply, and the command exits with status 1.
|
|
458
504
|
|
|
459
505
|
Having the pack installed does **not** mean this repository uses PJM. Adoption
|
|
460
506
|
is a per-repository decision recorded by `oat pjm init`:
|
|
@@ -471,7 +517,7 @@ The canonical surface splits active operational state (under `pjm/`) from durabl
|
|
|
471
517
|
- `.oat/repo/reference/decisions/` (file-per-record decisions plus a generated index)
|
|
472
518
|
- AGENTS guides at `.oat/repo/AGENTS.md`, `.oat/repo/pjm/AGENTS.md`, and `.oat/repo/reference/AGENTS.md`
|
|
473
519
|
|
|
474
|
-
Decisions are now file-per-record under `reference/decisions/` (created and indexed with the [`oat decision`](config-and-local-state.md#oat-decision-) command group), replacing the legacy single `decision-record.md`. Repos still on the old `reference/` layout can migrate with `oat pjm migrate`.
|
|
520
|
+
Decisions are now file-per-record under `reference/decisions/` (created and indexed with the [`oat decision`](../reference/config-and-local-state.md#oat-decision-) command group), replacing the legacy single `decision-record.md`. Repos still on the old `reference/` layout can migrate with `oat pjm migrate`.
|
|
475
521
|
|
|
476
522
|
Migration eligibility is independent of where the `project-management` pack is
|
|
477
523
|
installed. `oat pjm migrate` resolves the repository's adoption state for
|
|
@@ -551,7 +597,7 @@ Useful options:
|
|
|
551
597
|
- `--repo-root <path>` - scaffold a different repo-reference root instead of `.oat/repo`
|
|
552
598
|
- `--json` - emit a machine-readable result with created and skipped paths
|
|
553
599
|
|
|
554
|
-
Backlog scaffolding is delegated to the lower-level [`oat backlog init`](config-and-local-state.md#oat-backlog-) helper. Use `oat pjm init` for the full PJM repo-reference surface, and use `oat backlog init` directly only when you need to create or repair the backlog sub-surface by itself.
|
|
600
|
+
Backlog scaffolding is delegated to the lower-level [`oat backlog init`](../reference/config-and-local-state.md#oat-backlog-) helper. Use `oat pjm init` for the full PJM repo-reference surface, and use `oat backlog init` directly only when you need to create or repair the backlog sub-surface by itself.
|
|
555
601
|
|
|
556
602
|
### `oat tools list`
|
|
557
603
|
|
|
@@ -726,7 +772,7 @@ Key behavior:
|
|
|
726
772
|
- Interactive installs show each pack's current install location in the picker so already-installed packs are visible before you submit
|
|
727
773
|
- Installing is **additive**: choosing a scope for a pack never removes it from another scope. A pack installed at user scope plus a project install ends up at `project + user`, not moved
|
|
728
774
|
- For every pack that allows both scopes (`ideas`, `docs`, `workflows`, `utility`, `project-management`, `research`, `brainstorm`), the interactive flow offers a per-pack end-state selector (`project`, `user`, or `both`) defaulting to the pack's current placement; leaving the default makes no changes for that pack
|
|
729
|
-
- Fresh installs default to **user scope** for every pack; existing installs keep their current placement
|
|
775
|
+
- Fresh installs default to **user scope** for every pack; existing installs keep their current placement. The `--scope` default shown in `--help` is `all`, but with no `--scope` a pack that is not installed yet goes under your home directory; see [Where packs install](#where-packs-install)
|
|
730
776
|
- `oat init --setup` uses this same additive scope resolver. In guided setup, choosing to customize scope reaches the per-pack selector; choosing the recommended defaults, or running non-interactively, applies additive per-pack defaults without removals
|
|
731
777
|
- Every pack's fresh-install default is user scope (`defaultScope` in the release manifest); existing installs keep their current placement on re-install, so a re-install never moves a pack between scopes or creates a second copy at the other one. This applies to the per-pack subcommands too: a bare `oat tools install docs` in a repository where `docs` is already at project scope stays at project scope, and only an explicit `--scope` overrides that
|
|
732
778
|
- Removing a pack from a scope happens only when you explicitly choose a narrower end-state in the interactive flow (e.g. a pack at `both` set to `project` only). All staged removals are shown in a single change summary and applied only after one batch confirmation — declining makes no changes
|
|
@@ -785,6 +831,7 @@ Purpose:
|
|
|
785
831
|
Key behavior:
|
|
786
832
|
|
|
787
833
|
- Accepts a tool name, `--pack <pack>`, or `--all` (mutually exclusive)
|
|
834
|
+
- `--all` covers every pack, including `core`, so it works only with `--scope user`. `oat tools remove --all --scope project`, and `oat tools remove --all` with no `--scope`, fail with `Pack core does not allow project scope`; remove project-scope packs one at a time with `--pack <pack> --scope project`
|
|
788
835
|
- Removal is planned from the release manifest, so it deletes **only** assets OAT manages for that pack and scope
|
|
789
836
|
- Retained by design: project-scope repository template overrides, mutable seed files (`.oat/ideas/…`, `.oat/projects-root`, project `.gitkeep` files), and shared scripts still owned by another installed pack. Retained owner data is reported rather than silently skipped
|
|
790
837
|
- Already-missing files are not an error
|
|
@@ -916,7 +963,7 @@ The `core` pack contains foundational diagnostic and documentation skills:
|
|
|
916
963
|
|
|
917
964
|
Key behavior:
|
|
918
965
|
|
|
919
|
-
- Core pack always installs at **user scope** (`~/.agents/skills/`). It is the only pack whose sole allowed scope is `user
|
|
966
|
+
- Core pack always installs at **user scope** (`~/.agents/skills/`). It is the only pack whose sole allowed scope is `user`. A conflicting explicit `--scope project` is not rejected: `oat tools install core --scope project` (and the legacy `oat init tools core --scope project`) exits successfully and prints `Installed core tool pack.` but writes nothing, while `oat tools install --scope project` with no pack name still installs core under your home directory. To install core, omit `--scope` or pass `--scope user`. Keeping core in your home directory makes its skills available in any directory. See [Where packs install](#where-packs-install).
|
|
920
967
|
- `~/.oat/docs/` is a managed directory asset: its completeness and drift are compared as a whole tree, so a partially deleted docs tree is reported as a partial `core` install rather than passing silently.
|
|
921
968
|
- Core is checked by default in the `oat init tools` guided setup.
|
|
922
969
|
- Installation also bundles OAT documentation to `~/.oat/docs/` for the oat-docs skill.
|
|
@@ -1042,6 +1089,13 @@ grandfathered as `inferred-legacy`, and existing installs remain additive. One
|
|
|
1042
1089
|
inert per-pack install flag was removed, and several commands you already run
|
|
1043
1090
|
behave differently.
|
|
1044
1091
|
|
|
1092
|
+
OAT is versioned 0.x, and as this section shows, defaults and exit codes can
|
|
1093
|
+
change between 0.x releases. Release notes for each version, including the
|
|
1094
|
+
list of merged changes, are published on the repository's
|
|
1095
|
+
[GitHub Releases page](https://github.com/voxmedia/open-agent-toolkit/releases).
|
|
1096
|
+
The repository does not keep a separate `CHANGELOG` file. Read the notes for
|
|
1097
|
+
each version you skip before you update a team's installation.
|
|
1098
|
+
|
|
1045
1099
|
### Install scope defaults flipped to user
|
|
1046
1100
|
|
|
1047
1101
|
Every pack's fresh-install default is now **user** scope; it used to be project
|
|
@@ -1172,4 +1226,78 @@ Related docs:
|
|
|
1172
1226
|
- Diagnosing pack drift (`oat status`, `oat doctor`): `../reference/troubleshooting.md`
|
|
1173
1227
|
- Bootstrap (`oat init`): `bootstrap.md`
|
|
1174
1228
|
- Provider sync (`oat status`, `oat sync`, `oat providers ...`): `../provider-sync/index.md`
|
|
1175
|
-
- Diagnostics and local-state commands:
|
|
1229
|
+
- Diagnostics and local-state commands: [Config and Local State](../reference/config-and-local-state.md)
|
|
1230
|
+
|
|
1231
|
+
## Choosing packs and their ownership
|
|
1232
|
+
|
|
1233
|
+
A tool pack is a bundle of OAT skills, agents, templates, and scripts that
|
|
1234
|
+
installs as one unit. You choose which packs to install and, for each one, its
|
|
1235
|
+
scope: user scope puts it in your home directory (`~/.agents/`, `~/.oat/`) so
|
|
1236
|
+
it works in every repository you open, and project scope puts it in this
|
|
1237
|
+
repository so every clone gets it.
|
|
1238
|
+
|
|
1239
|
+
| Need | Choose |
|
|
1240
|
+
| ---------------------------------------------------------- | ----------------------------------------------- |
|
|
1241
|
+
| Setup diagnostics and bundled documentation | `core` |
|
|
1242
|
+
| Tracked projects and lifecycle execution | `workflows` |
|
|
1243
|
+
| Documentation and instruction maintenance | `docs` |
|
|
1244
|
+
| Reviews, orchestration, explainers, repository improvement | `utility` |
|
|
1245
|
+
| Evidence gathering and analysis | `research` (includes its dispatch dependencies) |
|
|
1246
|
+
| Exploratory capture | `ideas` and/or `brainstorm` |
|
|
1247
|
+
| File-backed backlog, roadmap, decisions, tracker bindings | `project-management`, then explicitly adopt PJM |
|
|
1248
|
+
|
|
1249
|
+
The interactive picker selects every pack except `project-management`; a
|
|
1250
|
+
non-interactive install includes all eight. To install only one pack, name it:
|
|
1251
|
+
for example, `oat tools install research --scope user` installs just the
|
|
1252
|
+
`research` pack (plus the two `utility` dispatch skills it depends on). The
|
|
1253
|
+
`brainstorm` pack is labeled "always-on" because, at its default user scope,
|
|
1254
|
+
its skill is available in every repository you open. It does not start on its
|
|
1255
|
+
own: it enters brainstorm mode only when you run `/oat-brainstorm` or
|
|
1256
|
+
explicitly ask to brainstorm, and it does not activate for review, debugging,
|
|
1257
|
+
PR, status, or implementation questions. Installing `project-management`
|
|
1258
|
+
only makes its commands available. The repository's planning files are not
|
|
1259
|
+
created until someone runs `oat pjm init` (see [Install vs. initialize](#install-vs-initialize)).
|
|
1260
|
+
|
|
1261
|
+
- If you are trying OAT on your own, accept the picker's selection and add packs
|
|
1262
|
+
later when you need their workflows.
|
|
1263
|
+
- If your team will keep its backlog and decisions in the repository, also
|
|
1264
|
+
select `project-management`, then run `oat pjm doctor --json` and
|
|
1265
|
+
`oat pjm init` once.
|
|
1266
|
+
- If you mainly need evidence gathering, choose `research`; it installs the two
|
|
1267
|
+
dispatch skills it needs from `utility` for you.
|
|
1268
|
+
|
|
1269
|
+
| Scope | Choose it when | What you give up |
|
|
1270
|
+
| ------- | ----------------------------------------------- | -------------------------------------------------------------------------- |
|
|
1271
|
+
| User | You want the skills in every repository you use | Teammates do not get them from the repository |
|
|
1272
|
+
| Project | The team needs identical tooling in every clone | Pack updates show up as repository changes |
|
|
1273
|
+
| Both | Rarely, and only deliberately | Duplicate copies, and OAT does not decide which copy your agent tool loads |
|
|
1274
|
+
|
|
1275
|
+
A fresh install goes to user scope, which lets you reuse packs across
|
|
1276
|
+
repositories without update churn in each one; a pack that is already installed
|
|
1277
|
+
keeps its scope. **`core` is user-only**: `oat tools install --scope project`
|
|
1278
|
+
with no pack name still installs it in your home directory, and
|
|
1279
|
+
`oat tools install core --scope project` reports success but installs nothing
|
|
1280
|
+
(see [Where packs install](#where-packs-install)). `oat init --scope project --setup` does not choose
|
|
1281
|
+
project scope for packs; customize each pack's scope at the prompt, or install
|
|
1282
|
+
packs explicitly. Installing a pack at a second scope adds a second copy rather
|
|
1283
|
+
than moving it, so use `oat tools migrate` to move a pack between scopes.
|
|
1284
|
+
Templates that a project-scope install writes belong to the repository after
|
|
1285
|
+
that: later pack updates and `oat tools remove` leave them alone.
|
|
1286
|
+
|
|
1287
|
+
- If you are trying OAT alone, or want your skills in all your repositories,
|
|
1288
|
+
use user scope.
|
|
1289
|
+
- If you are rolling OAT out to a team, install with `--scope project` and
|
|
1290
|
+
commit the result. If you already have user-scope copies, move them with
|
|
1291
|
+
`oat tools migrate --pack <pack> --from user --to project` instead of
|
|
1292
|
+
installing a second time.
|
|
1293
|
+
- If you do end up with both copies, check which one your agent tool actually
|
|
1294
|
+
loads; OAT does not resolve that for you.
|
|
1295
|
+
|
|
1296
|
+
Installing any pack never gives OAT permission to publish to an issue tracker.
|
|
1297
|
+
|
|
1298
|
+
> [!WARNING]
|
|
1299
|
+
> Rerunning `oat pjm init` or `oat pjm migrate --apply` deletes the `pjm.remote`
|
|
1300
|
+
> settings from `.oat/config.json`, so every remote setting silently returns to
|
|
1301
|
+
> its default. Afterwards, check `git diff .oat/config.json` and restore the
|
|
1302
|
+
> settings you need with `oat config set` (shared remote storage is restored
|
|
1303
|
+
> with `oat pjm remote storage shared`) before doing more remote work.
|
package/assets/docs/index.md
CHANGED
|
@@ -1,30 +1,45 @@
|
|
|
1
1
|
---
|
|
2
|
-
title:
|
|
2
|
+
title: Home
|
|
3
3
|
description: 'An open-source toolkit for portable, provider-agnostic agent tooling and workflows.'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# OAT Documentation
|
|
7
7
|
|
|
8
|
-
Open Agent Toolkit (OAT) is an open-source
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
-
|
|
26
|
-
|
|
27
|
-
|
|
8
|
+
Open Agent Toolkit (OAT) is an open-source command-line tool and skill library
|
|
9
|
+
for teams that work with AI coding agents such as Claude Code, Cursor, Codex,
|
|
10
|
+
GitHub Copilot and Gemini CLI. You define skills, agents and rules once in your
|
|
11
|
+
repository and OAT keeps every tool's copy in step, and when you want more
|
|
12
|
+
structure it adds optional tracked workflows with plans, reviews and human
|
|
13
|
+
approval points.
|
|
14
|
+
|
|
15
|
+
## What you can do with it
|
|
16
|
+
|
|
17
|
+
- **Keep your coding tools aligned.** Edit each skill, agent and rule once in
|
|
18
|
+
`.agents/`, let `oat sync` create the files each tool reads, and check them
|
|
19
|
+
for drift with `oat status`. Start with
|
|
20
|
+
[Provider Sync](provider-sync/index.md).
|
|
21
|
+
- **Get help with a single task.** Use ready-made skills, instructions your
|
|
22
|
+
agent follows on request, to research a decision, compare options or review
|
|
23
|
+
a change, without setting up a tracked project. Start with
|
|
24
|
+
[Skills](skills/index.md).
|
|
25
|
+
- **Make longer work resumable.** Track work as a project that moves through
|
|
26
|
+
discovery, specification, design, planning, implementation, review and pull
|
|
27
|
+
request, with points where a person approves before the agent continues.
|
|
28
|
+
Start with [Choose a Workflow](workflows/choose-workflow.md).
|
|
29
|
+
- **Keep documentation maintained.** Set up plain Markdown or a docs site,
|
|
30
|
+
then have your agent analyze it and apply the improvements you approve.
|
|
31
|
+
Start with [Docs Tooling](docs-tooling/index.md).
|
|
32
|
+
|
|
33
|
+
Each of these works on its own, so you can start with one and add others
|
|
34
|
+
later.
|
|
35
|
+
|
|
36
|
+
## Start here
|
|
37
|
+
|
|
38
|
+
New to OAT? [Quickstart](getting-started/quickstart.md) installs the CLI, gives
|
|
39
|
+
you a first result in an existing repository that changes files only inside
|
|
40
|
+
that repository, and helps you choose what to add next.
|
|
41
|
+
|
|
42
|
+
## Why OAT exists
|
|
28
43
|
|
|
29
44
|
Teams often need some combination of:
|
|
30
45
|
|
|
@@ -32,32 +47,16 @@ Teams often need some combination of:
|
|
|
32
47
|
- reusable skills and helper tooling that do not depend on one provider
|
|
33
48
|
- a more structured workflow for longer-running implementation work
|
|
34
49
|
|
|
35
|
-
OAT exists to make those layers work together without forcing teams to adopt
|
|
36
|
-
|
|
37
|
-
|
|
50
|
+
OAT exists to make those layers work together without forcing teams to adopt
|
|
51
|
+
all of them at once. It is not another agent runtime: it works through the
|
|
52
|
+
coding agents you already use.
|
|
38
53
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
That page is the canonical path-selection guide. Use it to choose whether you need:
|
|
42
|
-
|
|
43
|
-
- provider sync
|
|
44
|
-
- agentic workflows
|
|
45
|
-
- docs tooling
|
|
46
|
-
- general CLI utilities
|
|
47
|
-
|
|
48
|
-
## Source-of-truth hierarchy
|
|
49
|
-
|
|
50
|
-
1. Runtime behavior: `packages/cli/src/**`
|
|
51
|
-
2. Skill behavior contracts: `.agents/skills/*/SKILL.md`
|
|
52
|
-
3. OAT templates and runtime state: `.oat/templates/**`, `.oat/sync/**`, `.oat/config.json`, `.oat/config.local.json`
|
|
53
|
-
4. Repo reference records: `.oat/repo/**`
|
|
54
|
-
|
|
55
|
-
## Where To Go Next
|
|
54
|
+
## Contents
|
|
56
55
|
|
|
57
|
-
-
|
|
58
|
-
-
|
|
59
|
-
-
|
|
60
|
-
-
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
56
|
+
- [Getting Started](getting-started/index.md) - How to install OAT, get a first result, and learn the core ideas, plus project status and known limits.
|
|
57
|
+
- [Skills](skills/index.md) - Which skill to use for a task, and how to run it.
|
|
58
|
+
- [Workflows](workflows/index.md) - Tracked projects from plan to pull request, plus ideas, backlog planning and running a batch of existing plans as a wave.
|
|
59
|
+
- [Provider Sync](provider-sync/index.md) - How to keep one set of skills, agents and rules in step across coding tools.
|
|
60
|
+
- [Docs Tooling](docs-tooling/index.md) - How to set up and maintain Markdown docs or a docs site.
|
|
61
|
+
- [Reference](reference/index.md) - Configuration, commands, file locations and troubleshooting.
|
|
62
|
+
- [Contributing](contributing/index.md) - How to change OAT itself: code, docs and skills.
|
package/assets/docs/meta.json
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
{
|
|
2
|
-
"title": "
|
|
2
|
+
"title": "Home",
|
|
3
3
|
"pages": [
|
|
4
4
|
"index",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"provider-sync",
|
|
5
|
+
"getting-started",
|
|
6
|
+
"skills",
|
|
8
7
|
"workflows",
|
|
8
|
+
"provider-sync",
|
|
9
9
|
"docs-tooling",
|
|
10
|
-
"
|
|
11
|
-
"contributing"
|
|
12
|
-
"reference"
|
|
10
|
+
"reference",
|
|
11
|
+
"contributing"
|
|
13
12
|
]
|
|
14
13
|
}
|
|
@@ -13,8 +13,8 @@ These command definitions inherit the cross-cutting CLI conventions in:
|
|
|
13
13
|
|
|
14
14
|
## Adjacent command docs (outside provider interop scope)
|
|
15
15
|
|
|
16
|
-
- `oat init` (bootstrap):
|
|
17
|
-
- `oat tools ...` (tool-pack lifecycle — install, update, remove, list, info):
|
|
16
|
+
- `oat init` (bootstrap): [CLI Bootstrap](../getting-started/bootstrap.md)
|
|
17
|
+
- `oat tools ...` (tool-pack lifecycle — install, update, remove, list, info): [Tool Packs and Installed Assets](../getting-started/tool-packs.md)
|
|
18
18
|
- `oat doctor` (cross-cutting diagnostics): `../reference/cli-reference.md`
|
|
19
19
|
|
|
20
20
|
## Quick Look
|
|
@@ -241,3 +241,26 @@ Key behavior:
|
|
|
241
241
|
- Under `none`, warns about every `CLAUDE.md` that remains after sync, including inside excluded trees, because any one of them makes Claude Code ignore every `AGENTS.md`
|
|
242
242
|
- Uses pointer content `@AGENTS.md\n`, file symlinks, or hard copies depending on the selected strategy
|
|
243
243
|
- Detailed behavior and examples: [`Instruction Sync`](instruction-sync.md)
|
|
244
|
+
|
|
245
|
+
## Safe scope for routine refresh
|
|
246
|
+
|
|
247
|
+
`oat sync` copies or links your canonical assets (the skills, agents, and rules
|
|
248
|
+
you edit under `.agents/`) into provider views, the per-tool files such as
|
|
249
|
+
`.claude/skills/<name>` that each agent tool reads. The scope decides which
|
|
250
|
+
trees it touches: `project` is this repository, `user` is your home directory,
|
|
251
|
+
and `all` is both.
|
|
252
|
+
|
|
253
|
+
> [!WARNING]
|
|
254
|
+
> A bare `oat sync` uses scope `all`, so it also writes under your home
|
|
255
|
+
> directory. Every sync also overwrites edits made directly in provider folders,
|
|
256
|
+
> replaces an untracked file sitting at a view path, and removes a view whose
|
|
257
|
+
> canonical source was deleted. Edit files under `.agents/` rather than in
|
|
258
|
+
> provider folders, and pass `--scope` explicitly.
|
|
259
|
+
|
|
260
|
+
- For a repository-only refresh, run `oat sync --scope project --dry-run` to
|
|
261
|
+
preview, then run it again without `--dry-run`.
|
|
262
|
+
- In CI or scripts, always pass `--scope project` so the run cannot touch
|
|
263
|
+
anything in a home directory.
|
|
264
|
+
- To refresh your personal skills across repositories, run
|
|
265
|
+
`oat sync --scope user`.
|
|
266
|
+
- If you do mean to refresh both, preview `oat sync --scope all --dry-run` first.
|