@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
|
@@ -37,7 +37,9 @@ Install the workflow skills with `oat tools install docs` (preferred) or
|
|
|
37
37
|
- `oat-docs-analyze` evaluates a docs surface for structure, drift, coverage,
|
|
38
38
|
contributor guidance, and docs-app contract issues, then runs the shared
|
|
39
39
|
auto artifact-review loop to verify the generated analysis artifact's
|
|
40
|
-
evidence, severities, and recommendations
|
|
40
|
+
evidence, severities, and recommendations (an analysis artifact is the
|
|
41
|
+
timestamped Markdown findings report that analyze writes under
|
|
42
|
+
`.oat/repo/analysis/` and that apply later reads)
|
|
41
43
|
- `oat-docs-apply` consumes the analysis artifact and applies only approved,
|
|
42
44
|
evidence-backed recommendations
|
|
43
45
|
- `oat-project-document` performs post-implementation docs sync for a tracked project,
|
|
@@ -48,7 +50,8 @@ Install the workflow skills with `oat tools install docs` (preferred) or
|
|
|
48
50
|
|
|
49
51
|
## Contract model
|
|
50
52
|
|
|
51
|
-
The docs workflow mirrors the
|
|
53
|
+
The docs workflow mirrors the
|
|
54
|
+
[agent-instructions analyze/apply split](agent-instructions.md):
|
|
52
55
|
|
|
53
56
|
- Analyze owns discovery, evidence gathering, confidence, and disclosure decisions
|
|
54
57
|
- Analyze also owns accuracy verification of the generated analysis artifact
|
|
@@ -61,6 +64,51 @@ skills.
|
|
|
61
64
|
|
|
62
65
|
## Typical flow
|
|
63
66
|
|
|
67
|
+
Diagram: bootstrap once, then analyze, approve and apply only agreed improvements.
|
|
68
|
+
|
|
69
|
+
=== "Diagram"
|
|
70
|
+
|
|
71
|
+

|
|
72
|
+

|
|
73
|
+
|
|
74
|
+
=== "Mermaid source"
|
|
75
|
+
|
|
76
|
+
```mermaid
|
|
77
|
+
flowchart TD
|
|
78
|
+
SETUP["Bootstrap once\nConfirm inputs, then oat docs init"]
|
|
79
|
+
MD["Markdown\nValidate files and config"]
|
|
80
|
+
APP["Docs app\nInstall and verify build"]
|
|
81
|
+
AN["Analyze\nRead docs, write findings"]
|
|
82
|
+
PLAN["Plan from findings\nNo docs writes yet"]
|
|
83
|
+
Q{"Approve changes?"}
|
|
84
|
+
APPLY["Apply approved items\nNew branch, verify, offer PR"]
|
|
85
|
+
STOP["Skip all\nNo docs changed"]
|
|
86
|
+
SETUP --> MD
|
|
87
|
+
SETUP --> APP
|
|
88
|
+
MD -.-> AN
|
|
89
|
+
APP -.-> AN
|
|
90
|
+
AN --> PLAN
|
|
91
|
+
PLAN --> Q
|
|
92
|
+
Q -->|"approved"| APPLY
|
|
93
|
+
Q -->|"all skipped"| STOP
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
- **Setup, once.** `oat-docs-bootstrap` checks the repo without writing, asks
|
|
97
|
+
you to confirm its inputs, then runs `oat docs init`. Plain Markdown setup validates authored files,
|
|
98
|
+
configuration and guidance without installing app dependencies or building a
|
|
99
|
+
site. Fumadocs and MkDocs setup adds the relevant post-patches, installation,
|
|
100
|
+
build verification and walkthrough.
|
|
101
|
+
- **Analyze.** `oat-docs-analyze` never edits docs. It writes an analysis
|
|
102
|
+
artifact under `.oat/repo/analysis/` (and updates OAT tracking).
|
|
103
|
+
- **Approve.** `oat-docs-apply` builds a plan from the newest artifact and
|
|
104
|
+
stops for your decision: apply all, review item by item, or discuss and
|
|
105
|
+
revise. If the artifact is missing or stale it sends you back to analyze. If
|
|
106
|
+
you skip every item, nothing changes.
|
|
107
|
+
- **Apply.** Only after approval does apply create a branch, edit the approved
|
|
108
|
+
docs, regenerate navigation, verify, commit and offer a pull request. Items
|
|
109
|
+
marked as needing confirmation are confirmed again before they are written.
|
|
110
|
+
- **Repeat.** Re-run analyze afterwards to confirm the result.
|
|
111
|
+
|
|
64
112
|
1. Bootstrap or explicitly adopt a documentation surface with `oat-docs-bootstrap` (preferred — guided, includes post-scaffold patches and walkthrough) or `oat docs init` directly (CLI-only / non-interactive workflows)
|
|
65
113
|
2. (Optional) If migrating from MkDocs, handle that as a separate migration workstream; `oat docs migrate --docs-dir docs --config mkdocs.yml --apply` is only the syntax/frontmatter helper
|
|
66
114
|
3. Use `oat-docs-authoring` for targeted OAT Markdown/Fumadocs authoring work, with `authoring-docs` as the universal documentation-quality baseline
|
|
@@ -98,9 +146,297 @@ to open every page.
|
|
|
98
146
|
- link to deeper setup/config/reference material when full detail is not needed inline
|
|
99
147
|
- let the analysis artifact decide what should be inline, link-only, omitted, or escalated to the user
|
|
100
148
|
|
|
149
|
+
## authoring-docs
|
|
150
|
+
|
|
151
|
+
**Invocation:** Ask, “Use authoring-docs to improve the recovery instructions
|
|
152
|
+
in `docs/imports.md` for an on-call engineer.” Skill invocations are agent
|
|
153
|
+
instructions, not shell commands: use `/authoring-docs` where supported,
|
|
154
|
+
`$authoring-docs` in Codex, or the skill's name in a request. This convention
|
|
155
|
+
also applies to the other skills below; example paths refer to your files.
|
|
156
|
+
|
|
157
|
+
**Prerequisites:** A documentation target, intended reader, and accessible
|
|
158
|
+
sources of truth. No OAT project or OAT documentation configuration is
|
|
159
|
+
required. Source code, configuration, tests, deployment files, and existing
|
|
160
|
+
instructions establish what you can safely document.
|
|
161
|
+
|
|
162
|
+
**Example scenario:** An import runbook says to retry a job but does not
|
|
163
|
+
explain how an operator confirms that retrying is safe. Ask the skill to
|
|
164
|
+
inspect the actual job behavior and add a reader-focused recovery sequence,
|
|
165
|
+
marking any operational assumption that needs the owner's confirmation.
|
|
166
|
+
|
|
167
|
+
Choose the page's primary job before writing: a tutorial gets a reader to
|
|
168
|
+
first success, a how-to completes a task, reference provides exact contracts,
|
|
169
|
+
explanation builds understanding, and a runbook supports safe recovery. This
|
|
170
|
+
avoids mixing an introductory story, an exhaustive flag list, and an
|
|
171
|
+
incident procedure into one undifferentiated page. Preserve useful existing
|
|
172
|
+
intent and improve the nearest appropriate page instead of creating a
|
|
173
|
+
parallel documentation surface.
|
|
174
|
+
|
|
175
|
+
**Expected output:** Evidence-backed Markdown with clear prerequisites,
|
|
176
|
+
steps, expected results, verification, and relevant links. Risky operations
|
|
177
|
+
need recovery or rollback guidance when the sources establish it. Unknown
|
|
178
|
+
ownership, commands, endpoints, or compatibility guarantees remain explicit
|
|
179
|
+
questions rather than invented facts. The handoff identifies changed files,
|
|
180
|
+
sources inspected, checks run, and remaining uncertainty.
|
|
181
|
+
|
|
182
|
+
**What it does without asking:** It edits the documentation files your
|
|
183
|
+
request covers and can run the repository's documented docs checks. Its
|
|
184
|
+
workflow has no commit, push, or pull-request step.
|
|
185
|
+
|
|
186
|
+
**Next step:** Run the target repository's documented checks and resolve
|
|
187
|
+
owner-review gaps before sharing. Use [oat-docs-authoring](#oat-docs-authoring)
|
|
188
|
+
when the target also needs OAT placement and navigation conventions.
|
|
189
|
+
|
|
190
|
+
## oat-docs
|
|
191
|
+
|
|
192
|
+
**Invocation:** `/oat-docs "How do I choose between a quick and lite project?"`.
|
|
193
|
+
If you provide no question, the skill asks what you want to understand.
|
|
194
|
+
|
|
195
|
+
**Prerequisites:** Installed bundled OAT documentation under `~/.oat/docs/`
|
|
196
|
+
(install it with `oat init tools core`). No active project is required. If that documentation is missing, the skill
|
|
197
|
+
stops with installation guidance rather than substituting a repository
|
|
198
|
+
checkout that may describe a different release.
|
|
199
|
+
|
|
200
|
+
**Example scenario:** You are about to plan a small maintenance change and
|
|
201
|
+
want to understand the artifacts and approval boundary of each workflow.
|
|
202
|
+
Ask the skill to explain the choices from the installed documentation before
|
|
203
|
+
starting a project or changing configuration.
|
|
204
|
+
|
|
205
|
+
**Expected output:** A documentation-backed answer with practical examples
|
|
206
|
+
and pointers to relevant bundled pages. The skill searches and reads the
|
|
207
|
+
actual documentation rather than answering only from remembered behavior.
|
|
208
|
+
It can offer a related setup action or skill, but does not execute that offer
|
|
209
|
+
without confirmation.
|
|
210
|
+
|
|
211
|
+
**What it does without asking:** Nothing beyond reading. It is a read-only
|
|
212
|
+
question-and-answer skill: it creates or changes no files and runs no
|
|
213
|
+
commands that change state.
|
|
214
|
+
|
|
215
|
+
**Next step:** Choose the workflow or command that matches your task. If the
|
|
216
|
+
answer suggests setup changes, confirm the exact action separately from the
|
|
217
|
+
question-and-answer conversation.
|
|
218
|
+
|
|
219
|
+
## oat-docs-authoring
|
|
220
|
+
|
|
221
|
+
**Invocation:** Ask, “Use oat-docs-authoring to add a retry troubleshooting
|
|
222
|
+
section to the existing imports guide and update its local map if needed.”
|
|
223
|
+
The skill can also be invoked as `/oat-docs-authoring` with your task.
|
|
224
|
+
|
|
225
|
+
**Prerequisites:** An existing OAT Markdown surface, OAT/Fumadocs app, or
|
|
226
|
+
clearly identified target following OAT conventions, plus the installed
|
|
227
|
+
`authoring-docs` baseline. No active OAT project is required. This is
|
|
228
|
+
a targeted authoring or repair workflow, not bootstrap, a broad audit, or
|
|
229
|
+
bulk application of an analysis report.
|
|
230
|
+
|
|
231
|
+
**Example scenario:** One documented import error has a new recovery path.
|
|
232
|
+
Update that guide from the actual implementation and tests without
|
|
233
|
+
reorganizing unrelated sections or hand-editing generated sidebar files.
|
|
234
|
+
|
|
235
|
+
The wrapper adds OAT-specific placement and navigation rules to universal
|
|
236
|
+
authoring standards. Edit authored pages and relevant local `index.md`
|
|
237
|
+
Contents maps together, preserve useful context and local instructions, and
|
|
238
|
+
prefer `.md` unless the page needs JSX. For configured Markdown, use the
|
|
239
|
+
literal content root and authored index, even if it contains a nested
|
|
240
|
+
directory named `docs`; do not create an unnecessary app shell.
|
|
241
|
+
|
|
242
|
+
**Expected output:** Focused authored-source changes, checked links and
|
|
243
|
+
metadata, and any locally required generated-artifact refresh or freshness
|
|
244
|
+
check. The handoff distinguishes checks actually run from checks unavailable
|
|
245
|
+
or intentionally not applicable. Project-derived release documentation
|
|
246
|
+
belongs in the project-document workflow, not this wrapper.
|
|
247
|
+
|
|
248
|
+
**What it does without asking:** It edits the authored pages your task
|
|
249
|
+
covers together with the nearest local `index.md` Contents map. When
|
|
250
|
+
navigation changes, it regenerates or freshness-checks derived navigation
|
|
251
|
+
files with the docs app's own scripts, and it runs local validation
|
|
252
|
+
commands when they exist. Its workflow has no commit, push, or
|
|
253
|
+
pull-request step.
|
|
254
|
+
|
|
255
|
+
**Next step:** Review and validate the focused diff. For broader uncertainty
|
|
256
|
+
about the surface, use [oat-docs-analyze](#oat-docs-analyze); for a new surface,
|
|
257
|
+
use [oat-docs-bootstrap](#oat-docs-bootstrap).
|
|
258
|
+
|
|
259
|
+
## oat-docs-bootstrap
|
|
260
|
+
|
|
261
|
+
**Invocation:** `/oat-docs-bootstrap`, optionally with a target directory.
|
|
262
|
+
The conversation chooses Markdown, Fumadocs, or MkDocs and confirms the
|
|
263
|
+
destination before scaffolding or adoption. You do not need to remember the
|
|
264
|
+
framework later: `oat docs nav sync` has no framework flag and detects MkDocs
|
|
265
|
+
or Fumadocs on its own.
|
|
266
|
+
|
|
267
|
+
**Prerequisites:** An initialized OAT repository with readable
|
|
268
|
+
`.oat/config.json`, `.agents/`, and a runnable OAT CLI. An active project is
|
|
269
|
+
optional: it may provide context for the walkthrough, but setup does not
|
|
270
|
+
require one. The installed CLI must support the selected setup path.
|
|
271
|
+
|
|
272
|
+
**Example scenario:** Your repository already has useful Markdown guides in
|
|
273
|
+
`documentation/`, and the team wants OAT discovery and authoring guidance
|
|
274
|
+
without a site runtime. Choose additive Markdown adoption, retain those
|
|
275
|
+
guides, and then audit their metadata and local maps. Do not replace the tree
|
|
276
|
+
with a docs app simply because one can be scaffolded.
|
|
277
|
+
|
|
278
|
+
Preflight only reads. It checks declared documentation configuration before
|
|
279
|
+
discovery and checks framework evidence before assuming a populated
|
|
280
|
+
directory is plain Markdown. The skill then summarizes your choices and asks
|
|
281
|
+
you to confirm them before it runs `oat docs init`. The two setup paths
|
|
282
|
+
differ from that point on.
|
|
283
|
+
|
|
284
|
+
**Plain Markdown path:** Use this when you want plain Markdown files and no
|
|
285
|
+
site runtime. The skill collects a title, a dedicated repository-relative
|
|
286
|
+
root, and an optional description. It asks no app or package questions and
|
|
287
|
+
never installs dependencies, patches packages, starts a preview server, or
|
|
288
|
+
builds a site. An existing plain tree needs an explicit choice: adopt and
|
|
289
|
+
audit, audit only, or abort. A non-interactive `--yes` alone is not
|
|
290
|
+
permission to adopt. Adoption keeps existing files byte for byte and adds
|
|
291
|
+
only missing baseline files; a fresh setup creates an authored `index.md`
|
|
292
|
+
and `contributing.md` in the root you chose. Missing content conformity
|
|
293
|
+
becomes audit work rather than silent repair. Verification checks files,
|
|
294
|
+
configuration, and links.
|
|
295
|
+
|
|
296
|
+
**Fumadocs or MkDocs path:** Use this when you want a built documentation
|
|
297
|
+
site. The skill gathers app inputs (the visible site title and the package
|
|
298
|
+
name are different inputs), probes which capabilities the installed CLI
|
|
299
|
+
supports, runs the scaffold, and applies only the relevant post-patches (the
|
|
300
|
+
skill's labeled fixes for known gaps in the CLI's scaffold output).
|
|
301
|
+
Verification installs dependencies and runs a build. If a docs app already
|
|
302
|
+
exists, you choose how to resolve the conflict, and one of the choices,
|
|
303
|
+
`replace`, deletes the existing app.
|
|
304
|
+
|
|
305
|
+
**What it does without asking:** After you confirm your inputs, bootstrap
|
|
306
|
+
runs `oat docs init`, which writes the `documentation` section of
|
|
307
|
+
`.oat/config.json` and adds or updates a managed `## Documentation` section
|
|
308
|
+
in the root `AGENTS.md`. This happens on both paths. On the Fumadocs or
|
|
309
|
+
MkDocs path it also scaffolds the app, applies post-patches, installs
|
|
310
|
+
dependencies, runs a build, and may patch the root `package.json` so the
|
|
311
|
+
default build leaves the docs app out. It may also write an `AGENTS.md`
|
|
312
|
+
inside the new app when the CLI did not create one. Only after you confirm:
|
|
313
|
+
the `replace` choice deletes the existing docs app directory and clears its
|
|
314
|
+
`documentation` config and root `AGENTS.md` section (it refuses only when
|
|
315
|
+
that directory has uncommitted changes); answering yes to the
|
|
316
|
+
project-completion prompt writes `documentation.requireForProjectCompletion`
|
|
317
|
+
to `.oat/config.json`; and accepting the optional content kickoff at the end
|
|
318
|
+
runs analyze and then apply, which creates a branch and a commit and can
|
|
319
|
+
open a pull request.
|
|
320
|
+
|
|
321
|
+
**Expected output:** A verified fresh setup or additive adoption, followed
|
|
322
|
+
by a walkthrough of actual configuration, authored indexes, page metadata,
|
|
323
|
+
and contribution conventions. Markdown keeps its configured index authored;
|
|
324
|
+
an optional generated inventory needs an explicit destination outside the
|
|
325
|
+
configured content tree and never replaces it. A dry-run is only a preview.
|
|
326
|
+
A partial result can have created files while still requiring manual
|
|
327
|
+
guidance work; report that state rather than claiming complete bootstrap.
|
|
328
|
+
Optional completion enforcement is an explicit choice, not a hidden side
|
|
329
|
+
effect of initialization.
|
|
330
|
+
|
|
331
|
+
**Next step:** Bootstrap ends by offering
|
|
332
|
+
[oat-docs-analyze](#oat-docs-analyze) against the configured root, followed
|
|
333
|
+
by [oat-docs-apply](#oat-docs-apply) for repairs you approve. An adopted tree
|
|
334
|
+
needs this audit. Use `oat-project-document` for updates derived from an OAT
|
|
335
|
+
project. For later one-off pages, use
|
|
336
|
+
[oat-docs-authoring](#oat-docs-authoring).
|
|
337
|
+
|
|
338
|
+
## oat-docs-analyze
|
|
339
|
+
|
|
340
|
+
**Invocation:** `/oat-docs-analyze` (no arguments). The skill resolves the
|
|
341
|
+
docs surface itself: the configured `documentation.root` and `tooling` in
|
|
342
|
+
`.oat/config.json` first, then framework evidence, then a generic `docs/`
|
|
343
|
+
tree or root Markdown files. It does not rely on a guessed root when the
|
|
344
|
+
repository already declares one.
|
|
345
|
+
|
|
346
|
+
**Prerequisites:** A Git repository with a docs app, Markdown tree, or
|
|
347
|
+
root-level documentation, and `jq` for tracking updates. No active project
|
|
348
|
+
is required. Configured Markdown does not need an app package, generated
|
|
349
|
+
manifest, or docs-root agent file to qualify for analysis.
|
|
350
|
+
|
|
351
|
+
**Example scenario:** A team adopted an existing Markdown tree, but users
|
|
352
|
+
still cannot find several supported CLI operations. Analyze the literal
|
|
353
|
+
configured root against command definitions, examples, and local maps so
|
|
354
|
+
the report identifies which capability needs which page or section, rather
|
|
355
|
+
than prescribing a new framework as the fix.
|
|
356
|
+
|
|
357
|
+
The skill inventories content, checks index-contract coverage, verifies
|
|
358
|
+
substantive claims against repository sources, finds missing or thin
|
|
359
|
+
capability coverage, and checks navigation and drift. A usable finding names
|
|
360
|
+
the evidence, severity, proposed location, and concrete subtopics. Ownership
|
|
361
|
+
or operational claims that local sources cannot establish become
|
|
362
|
+
owner-review gaps, not confident invented instructions.
|
|
363
|
+
|
|
364
|
+
Existing tracking selects full or delta analysis when its recorded commit
|
|
365
|
+
is valid. The workflow is read-only toward docs and navigation; it writes
|
|
366
|
+
and may correct its own report, then updates analysis tracking. Generated
|
|
367
|
+
navigation is freshness-checked, not repaired during the audit.
|
|
368
|
+
|
|
369
|
+
**Expected output:** A timestamped `.oat/repo/analysis/docs-*.md` report with
|
|
370
|
+
evidence, confidence, and disclosure decisions, including concrete targets
|
|
371
|
+
for link-only recommendations. By default, a bounded auto artifact-review
|
|
372
|
+
loop checks the report before tracking and handoff. A disabled loop or
|
|
373
|
+
residual findings must remain disclosed; a report's existence alone does
|
|
374
|
+
not mean every recommendation is verified or approved.
|
|
375
|
+
|
|
376
|
+
**What it does without asking:** It writes the analysis artifact
|
|
377
|
+
`.oat/repo/analysis/docs-<timestamp>.md`, lets its review loop correct that
|
|
378
|
+
report, and then updates its tracking record in `.oat/tracking.json` (used
|
|
379
|
+
to choose a full or delta analysis next time). It does not edit
|
|
380
|
+
documentation pages, navigation files, or `mkdocs.yml`, and it creates no
|
|
381
|
+
branch or commit.
|
|
382
|
+
|
|
383
|
+
**Next step:** Review the findings and run [oat-docs-apply](#oat-docs-apply)
|
|
384
|
+
for selected recommendations. If evidence or target information is missing,
|
|
385
|
+
repair the analysis contract rather than asking apply to fill it in.
|
|
386
|
+
|
|
387
|
+
## oat-docs-apply
|
|
388
|
+
|
|
389
|
+
**Invocation:** `/oat-docs-apply` after reviewing a docs analysis report.
|
|
390
|
+
The skill loads the newest `.oat/repo/analysis/docs-*.md` report. You cannot
|
|
391
|
+
select an older one, so rerun analysis if the newest report is not the one
|
|
392
|
+
you reviewed. It then builds a recommendation plan and asks you to choose
|
|
393
|
+
`apply all`, `apply interactively` (approve, modify, or skip each item), or
|
|
394
|
+
`discuss` before changing anything.
|
|
395
|
+
|
|
396
|
+
**Prerequisites:** A recent, complete docs analysis artifact and an unchanged
|
|
397
|
+
compatible target. Recommendations need evidence, confidence, disclosure,
|
|
398
|
+
and concrete link targets where applicable. Apply also needs `jq` for
|
|
399
|
+
tracking updates, and `gh` only if you want it to open the pull request. No
|
|
400
|
+
active OAT project is required. Missing analysis or a changed target requires a fresh analysis,
|
|
401
|
+
not conventions invented during apply.
|
|
402
|
+
|
|
403
|
+
**Example scenario:** The audit found three CLI pages missing from their
|
|
404
|
+
`## Contents` maps, an inaccurate
|
|
405
|
+
example, and a proposed reorganization. Approve only the page listings and
|
|
406
|
+
example correction, leaving the reorganization for discussion. Apply should
|
|
407
|
+
execute those selected actions without broadening the work to every finding.
|
|
408
|
+
|
|
409
|
+
**Expected output:** Approved changes committed on a new
|
|
410
|
+
`oat/docs-<timestamp>` branch, relevant source/link checks, and declared
|
|
411
|
+
navigation or generated-artifact refreshes. Markdown retains its authored
|
|
412
|
+
index and needs no framework build or nav sync; Fumadocs sidebar metadata is
|
|
413
|
+
regenerated from approved Contents changes, never hand-edited. The summary
|
|
414
|
+
reports the applied plan and checks.
|
|
415
|
+
|
|
416
|
+
**What it does without asking:** Nothing changes until you approve the plan.
|
|
417
|
+
After you approve it, apply continues without asking again. It creates
|
|
418
|
+
branch `oat/docs-<timestamp>` from your current HEAD and edits only the
|
|
419
|
+
approved files. Items whose disclosure is `ask_user` are confirmed with you
|
|
420
|
+
once more before they are written. For a Fumadocs or MkDocs app it runs
|
|
421
|
+
the verification that fits what changed, such as `oat docs nav sync` and
|
|
422
|
+
the app's existing docs lint, format-check, and build scripts. It then
|
|
423
|
+
commits the changes as `docs: apply approved docs recommendations`. If the
|
|
424
|
+
branch cannot be created (for example because of local changes), it stops
|
|
425
|
+
and asks you to resolve that first. After committing, it asks whether to
|
|
426
|
+
push the branch and open a pull request; only a yes pushes. The PR targets
|
|
427
|
+
`main`, and its body includes the applied plan and the full analysis
|
|
428
|
+
report, so check the report for anything you would not publish. Finally it
|
|
429
|
+
updates `.oat/tracking.json`.
|
|
430
|
+
|
|
431
|
+
**Next step:** Review the committed diff before you agree to push or open a
|
|
432
|
+
pull request. Rerun analysis if you need a post-apply assessment, and treat
|
|
433
|
+
unapproved recommendations as remaining decisions rather than completed
|
|
434
|
+
work.
|
|
435
|
+
|
|
101
436
|
## Related docs
|
|
102
437
|
|
|
103
438
|
- [`commands.md`](commands.md)
|
|
104
439
|
- [`add-docs-to-a-repo.md`](add-docs-to-a-repo.md)
|
|
440
|
+
- [Improve Agent Instructions](agent-instructions.md)
|
|
105
441
|
- [`../reference/docs-index-contract.md`](../reference/docs-index-contract.md)
|
|
106
442
|
- [`../contributing/skills.md`](../contributing/skills.md)
|
|
@@ -46,7 +46,7 @@ After core initialization completes, `oat init` can enter an interactive guided
|
|
|
46
46
|
1. **Tool packs** — install OAT tool packs. The core pack (diagnostics, passive docs access) is checked by default and always installs at user scope. Guided setup asks whether to customize per-pack scope:
|
|
47
47
|
- choose **Yes** to run the per-pack scope selector for every pack that allows both scopes (`ideas`, `docs`, `workflows`, `utility`, `project-management`, `research`, `brainstorm`)
|
|
48
48
|
- choose **No** to apply additive per-pack defaults without extra scope prompts
|
|
49
|
-
- on a fresh install every pack defaults to **user** scope, so capabilities follow you across repositories; an existing install keeps its current placement
|
|
49
|
+
- on a fresh install every pack defaults to **user** scope, so capabilities follow you across repositories; an existing install keeps its current placement. See [Where tool packs install](#where-tool-packs-install) below
|
|
50
50
|
- after placement is chosen, repository `AGENTS.md` guidance is a separate opt-in. Accepting creates the root file with the managed `OAT tools` section when it is absent, and appends that section to an existing file or contained symlink target that lacks it, with one append-only write. An existing file is never replaced: when the section exists but differs, OAT prints a repository-relative, copy-pasteable managed-block patch instead. Declining leaves `AGENTS.md` unchanged
|
|
51
51
|
- installing `project-management` installs the capability only. Adopting it for this repository is a third, separate choice made with `oat pjm init` — see [Install vs. initialize](tool-packs.md#install-vs-initialize)
|
|
52
52
|
2. **Local paths** — multi-select from default gitignored artifact paths (analysis, PR, reviews, ideas). Pre-existing paths are pre-checked; only new paths are added.
|
|
@@ -59,6 +59,28 @@ Hook install note:
|
|
|
59
59
|
- The optional OAT pre-commit hook installs into Git's active hook directory.
|
|
60
60
|
- If a repo uses a managed hook folder such as `.githooks/`, that path must already be configured in Git, or OAT must configure it during the prompt flow before hook install.
|
|
61
61
|
|
|
62
|
+
What the hook does: before each commit it runs
|
|
63
|
+
`oat status --scope project --hook`, which checks whether the provider views in
|
|
64
|
+
this repository match their canonical sources. If views are out of date or
|
|
65
|
+
missing, it prints `oat: managed provider views are out of sync - run 'oat sync --scope project'`.
|
|
66
|
+
If it finds provider files that OAT does not manage, it prints a note to run
|
|
67
|
+
`oat status --scope project`. The hook only warns: it never blocks a commit,
|
|
68
|
+
because the hook line ends in `|| true`, and it does nothing when `oat` is not
|
|
69
|
+
on your `PATH`. OAT adds its lines between `# >>> oat pre-commit hook >>>` and
|
|
70
|
+
`# <<< oat pre-commit hook <<<` markers, appending them to an existing
|
|
71
|
+
`pre-commit` file rather than replacing it. In Git's default hook directory
|
|
72
|
+
(`.git/hooks/`) the hook belongs to your clone only and is not committed.
|
|
73
|
+
|
|
74
|
+
To remove the hook, run `oat init --scope project --no-hook` in the
|
|
75
|
+
repository. (Without `--scope project`, `oat init` uses scope `all` and also
|
|
76
|
+
writes under your home directory.) Although its
|
|
77
|
+
help text reads "Skip optional pre-commit hook install", the flag also removes
|
|
78
|
+
an OAT hook that is already installed. It deletes only the marked OAT block
|
|
79
|
+
and keeps any other hook content; if the file contained nothing but the OAT
|
|
80
|
+
block, the file is deleted (or emptied, when it is a symlink). You can also
|
|
81
|
+
delete the lines between the two markers by hand. To install the hook later
|
|
82
|
+
without prompts, run `oat init --scope project --hook`.
|
|
83
|
+
|
|
62
84
|
**Non-interactive mode:** Fresh-init guided setup offers are interactive-only. If `--setup` is passed in non-interactive mode (`--json`, piped input, non-TTY, or `OAT_NON_INTERACTIVE=1`), guided setup does not prompt: tool packs use additive defaults, local-path and documentation prompts are skipped unless already configured, and provider sync is skipped unless separately requested. Repository guidance also defaults to no write; pass `--project-guidance` to opt in explicitly or `--no-project-guidance` to record an explicit decline.
|
|
63
85
|
|
|
64
86
|
```bash
|
|
@@ -75,9 +97,42 @@ oat init --project-guidance
|
|
|
75
97
|
oat init --scope project
|
|
76
98
|
```
|
|
77
99
|
|
|
100
|
+
### Where tool packs install
|
|
101
|
+
|
|
102
|
+
Guided setup uses the same per-pack defaults as `oat tools install`, with one
|
|
103
|
+
difference described at the end of this section. The `--scope` option of `oat tools install` and `oat tools remove` lists `all` as
|
|
104
|
+
its default in `--help`. For `oat tools install`, that default does not mean
|
|
105
|
+
both scopes:
|
|
106
|
+
|
|
107
|
+
- With no `--scope`, a pack that is not installed yet is installed under your
|
|
108
|
+
home directory (user scope: `~/.agents/` and `~/.oat/`). A pack that is
|
|
109
|
+
already installed keeps the scope it has.
|
|
110
|
+
- With `--scope project`, the pack is installed in this repository
|
|
111
|
+
(`.agents/` and `.oat/`). With `--scope user`, it is installed under your
|
|
112
|
+
home directory.
|
|
113
|
+
|
|
114
|
+
The `core` pack can only live under your home directory:
|
|
115
|
+
|
|
116
|
+
- `oat tools install --scope project`, with no pack name, installs the other
|
|
117
|
+
seven packs in this repository and still installs `core` under your home
|
|
118
|
+
directory.
|
|
119
|
+
- `oat tools install core --scope project` exits successfully and prints
|
|
120
|
+
`Installed core tool pack.`, but it writes nothing, neither in the
|
|
121
|
+
repository nor in your home directory.
|
|
122
|
+
- `oat tools remove --all --scope project` fails with
|
|
123
|
+
`Pack core does not allow project scope`, and so does
|
|
124
|
+
`oat tools remove --all` with no `--scope`.
|
|
125
|
+
|
|
126
|
+
The difference: guided setup does not take its pack scope from `--scope`.
|
|
127
|
+
`oat init --scope project --setup`, run without an interactive terminal,
|
|
128
|
+
installed all eight packs under the home directory. In an interactive
|
|
129
|
+
terminal, answer **Yes** to the per-pack scope question to choose project
|
|
130
|
+
scope, or install packs afterwards with `oat tools install <pack> --scope project`. See [Where packs install](tool-packs.md#where-packs-install) for
|
|
131
|
+
the full rules and how to remove packs.
|
|
132
|
+
|
|
78
133
|
Related commands:
|
|
79
134
|
|
|
80
|
-
- `oat tools ...` (tool-pack install, update, remove, migrate, list, info):
|
|
81
|
-
- `oat pjm init` (adopt project management for this repository):
|
|
82
|
-
- `oat local ...`, `oat doctor`, and other utility commands:
|
|
83
|
-
- `oat status` / `oat sync` (provider sync):
|
|
135
|
+
- `oat tools ...` (tool-pack install, update, remove, migrate, list, info): [Tool Packs and Installed Assets](tool-packs.md)
|
|
136
|
+
- `oat pjm init` (adopt project management for this repository): [Install vs. initialize](tool-packs.md#install-vs-initialize)
|
|
137
|
+
- `oat local ...`, `oat doctor`, and other utility commands: [Config and Local State](../reference/config-and-local-state.md)
|
|
138
|
+
- `oat status` / `oat sync` (provider sync): [Provider Sync](../provider-sync/index.md)
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Core Concepts
|
|
3
|
+
description: Mental model for canonical assets, provider views, scopes, skills, and the optional workflow layer.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Core Concepts
|
|
7
|
+
|
|
8
|
+
OAT combines a provider-sync layer, reusable skills and CLI tooling, and an optional workflow system. This page gives the high-level mental model so the detailed docs are easier to navigate.
|
|
9
|
+
|
|
10
|
+
## Choose What to Adopt
|
|
11
|
+
|
|
12
|
+
=== "Diagram"
|
|
13
|
+
|
|
14
|
+

|
|
15
|
+

|
|
16
|
+
|
|
17
|
+
=== "Mermaid source"
|
|
18
|
+
|
|
19
|
+
```mermaid
|
|
20
|
+
flowchart LR
|
|
21
|
+
GOAL["What do you\nneed first?"] --> SYNC["Align coding tools\nProvider Sync"]
|
|
22
|
+
GOAL --> SKILLS["Help with one task\nReusable Skills"]
|
|
23
|
+
GOAL --> WORK["Resume longer work\nWorkflows"]
|
|
24
|
+
GOAL --> DOCS["Maintain documentation\nMarkdown or a docs site"]
|
|
25
|
+
SYNC -.-> LATER["Add another path\nwhenever useful"]
|
|
26
|
+
SKILLS -.-> LATER
|
|
27
|
+
WORK -.-> LATER
|
|
28
|
+
DOCS -.-> LATER
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
- **Provider Sync:** `oat init --scope project`, choose providers, then `oat sync --scope project`.
|
|
32
|
+
- **Reusable skills:** `oat tools install --scope user`; no repository initialization is needed.
|
|
33
|
+
- **Tracked workflows:** `oat init --scope project`, `oat tools install workflows --scope project`, then `/oat-project-quick-start`.
|
|
34
|
+
- **Documentation:** `oat init --scope project`, `oat tools install docs --scope project`, then `/oat-docs-bootstrap` for plain Markdown or a docs site.
|
|
35
|
+
|
|
36
|
+
Choose a starting point, not a required sequence. Use provider sync to align coding tools, install reusable skills for individual tasks, add tracked workflows for longer work, or maintain plain Markdown or a docs site with Docs Tooling. You can combine these paths later.
|
|
37
|
+
|
|
38
|
+
Commands below the diagram run in a terminal; `/name` denotes an agent skill (`$name` in Codex). Pack installation has its own scope: project scope targets repository assets, but the core pack is user-only when installed. Skip guided pack setup if you only want provider sync. New tracked projects default to synced storage and need an `origin` remote; choose local project storage for origin-free work.
|
|
39
|
+
|
|
40
|
+
Continue with [Provider Sync](../provider-sync/index.md), [Tool Packs](tool-packs.md), [Choose a Workflow](../workflows/choose-workflow.md), or [Docs Tooling](../docs-tooling/index.md).
|
|
41
|
+
|
|
42
|
+
## Canonical Assets and Provider Views
|
|
43
|
+
|
|
44
|
+
OAT keeps canonical assets in repo-controlled locations and projects provider-specific views from that source of truth. The canonical form is what you edit and review directly; provider views are synchronized outputs that let Claude Code, Cursor, Copilot, Gemini, and Codex consume the same intent in their native layouts.
|
|
45
|
+
|
|
46
|
+
=== "Diagram"
|
|
47
|
+
|
|
48
|
+

|
|
49
|
+

|
|
50
|
+
|
|
51
|
+
=== "Mermaid source"
|
|
52
|
+
|
|
53
|
+
```mermaid
|
|
54
|
+
flowchart LR
|
|
55
|
+
SKILLS[".agents/skills/"] --> OAT["oat sync"]
|
|
56
|
+
AGENTS[".agents/agents/"] --> OAT
|
|
57
|
+
RULES[".agents/rules/"] --> OAT
|
|
58
|
+
OAT --> CLAUDE[".claude/"]
|
|
59
|
+
OAT --> CURSOR[".cursor/"]
|
|
60
|
+
OAT --> COPILOT[".github/"]
|
|
61
|
+
OAT --> CODEX[".codex/"]
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Gemini CLI is a native read-only consumer; OAT does not generate a `.gemini/` view through sync.
|
|
65
|
+
|
|
66
|
+
Use these docs next:
|
|
67
|
+
|
|
68
|
+
- [Provider Sync](../provider-sync/index.md)
|
|
69
|
+
- [Reference](../reference/index.md)
|
|
70
|
+
|
|
71
|
+
## Sync, Drift, and Adoption
|
|
72
|
+
|
|
73
|
+
`oat sync` applies canonical content to provider views, while `oat status` reports whether a provider is in sync, drifted, or missing content. Drift is expected when provider-side files diverge from canonical content; OAT now also covers canonical rule sync and stray adoption so you can bring unmanaged files back under the canonical model deliberately.
|
|
74
|
+
|
|
75
|
+
Use these docs next:
|
|
76
|
+
|
|
77
|
+
- [Provider Sync Commands](../provider-sync/commands.md)
|
|
78
|
+
- [Manifest and Drift](../provider-sync/manifest-and-drift.md)
|
|
79
|
+
|
|
80
|
+
## Scopes
|
|
81
|
+
|
|
82
|
+
Most OAT operations run in one of three scopes: `project`, `user`, or `all`. Project scope targets the current repository, user scope targets user-level installations, and `all` evaluates both. The same scope model appears across sync, status, and provider configuration commands, so it is worth learning early.
|
|
83
|
+
|
|
84
|
+
Use these docs next:
|
|
85
|
+
|
|
86
|
+
- [Scope and Surface](../provider-sync/scope-and-surface.md)
|
|
87
|
+
- [CLI Reference](../reference/cli-reference.md)
|
|
88
|
+
|
|
89
|
+
## Skills and CLI Commands
|
|
90
|
+
|
|
91
|
+
Skills are structured workflow instructions stored in `.agents/skills`, while CLI commands provide direct operational entry points like `oat init`, `oat sync`, or `oat docs init`. Some capabilities are primarily CLI-driven, some are primarily skill-driven, and some combine both. As a rule: use the CLI for direct system actions and use skills when you want guided lifecycle execution.
|
|
92
|
+
|
|
93
|
+
Use these docs next:
|
|
94
|
+
|
|
95
|
+
- [Skills](../skills/index.md)
|
|
96
|
+
- [Contributing Skills](../contributing/skills.md)
|
|
97
|
+
|
|
98
|
+
## The Three Usage Modes
|
|
99
|
+
|
|
100
|
+
OAT offers three capabilities you can use independently:
|
|
101
|
+
|
|
102
|
+
1. Provider sync and CLI interop only
|
|
103
|
+
2. Provider-agnostic tooling and reusable skills
|
|
104
|
+
3. Optional workflow/project lifecycle
|
|
105
|
+
|
|
106
|
+
These are choices, not required adoption stages. Use only interoperability, install task-oriented skills, or adopt the lifecycle when you need tracked discovery, planning, implementation, review, and PR flow.
|
|
107
|
+
|
|
108
|
+
Use these docs next:
|
|
109
|
+
|
|
110
|
+
- [Quickstart](quickstart.md)
|
|
111
|
+
- [Workflow & Projects](../workflows/projects/index.md)
|
|
112
|
+
|
|
113
|
+
## Human-in-the-Loop Lifecycle
|
|
114
|
+
|
|
115
|
+
The workflow system supports explicit checkpoints so a project can pause at selected moments for approval or direction. At the workflow level, HiLL gates control lifecycle routing across discovery, spec, design, plan, and implementation. During implementation, plan-phase checkpoints control where execution pauses between plan phases.
|
|
116
|
+
|
|
117
|
+
Use these docs next:
|
|
118
|
+
|
|
119
|
+
- [Workflow & Projects](../workflows/projects/index.md)
|
|
120
|
+
- [Hill Checkpoints](../workflows/projects/planning/hill-checkpoints.md)
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Getting Started
|
|
3
|
+
description: 'Install OAT, get a first result in an existing repository, and learn the ideas the rest of the docs use.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Getting Started
|
|
7
|
+
|
|
8
|
+
Open Agent Toolkit (OAT) is a command-line tool and a library of skills
|
|
9
|
+
(instructions your coding agent follows on request) for teams that use more
|
|
10
|
+
than one AI coding tool, or want more structure in how they use one. You keep
|
|
11
|
+
one copy of each skill, agent and rule in your repository, and OAT creates and
|
|
12
|
+
checks the copies each tool reads; when you want it, OAT also adds tracked
|
|
13
|
+
workflows with plans, reviews and human approval points. Start with
|
|
14
|
+
[Quickstart](quickstart.md): it installs the CLI and gives you a first result
|
|
15
|
+
that changes files only inside one repository.
|
|
16
|
+
|
|
17
|
+
## Contents
|
|
18
|
+
|
|
19
|
+
- [Quickstart](quickstart.md) - Install the CLI, try it in an existing repository, and choose what to add next.
|
|
20
|
+
- [Core Concepts](concepts.md) - The ideas the rest of the docs rely on: canonical assets, provider views, scopes, skills and the workflow lifecycle.
|
|
21
|
+
- [CLI Bootstrap](bootstrap.md) - What `oat init` sets up in a repository, and the guided setup it offers.
|
|
22
|
+
- [Tool Packs and Installed Assets](tool-packs.md) - The bundled tool packs, where they install, and how to update or remove them.
|
|
23
|
+
|
|
24
|
+
## Project status
|
|
25
|
+
|
|
26
|
+
- **Version:** the CLI is published on npm as `@open-agent-toolkit/cli` and is
|
|
27
|
+
versioned 0.x, that is, before a 1.0 release.
|
|
28
|
+
- **License:** MIT.
|
|
29
|
+
- **Releases:** each version is published on the repository's
|
|
30
|
+
[GitHub Releases page](https://github.com/voxmedia/open-agent-toolkit/releases)
|
|
31
|
+
with release notes and the list of merged changes.
|
|
32
|
+
- **Issues:** report problems and requests on the
|
|
33
|
+
[issue tracker](https://github.com/voxmedia/open-agent-toolkit/issues).
|
|
34
|
+
- **Upgrading:** before you update, read
|
|
35
|
+
[Upgrading from an earlier CLI](tool-packs.md#upgrading-from-an-earlier-cli),
|
|
36
|
+
which lists defaults and exit codes that changed between releases.
|
|
37
|
+
|
|
38
|
+
## Known limits
|
|
39
|
+
|
|
40
|
+
These limits are documented on the pages linked from each item. A provider
|
|
41
|
+
is a coding agent tool such as Claude Code, Cursor or Codex, and a provider
|
|
42
|
+
view is the file or link that tool reads.
|
|
43
|
+
|
|
44
|
+
- **Cursor model choice is not verified.** When OAT launches an agent in
|
|
45
|
+
Cursor, Cursor can run a different model from the one OAT pinned, without an
|
|
46
|
+
error, and OAT records only the model it requested. See
|
|
47
|
+
[How each provider applies the cap](../workflows/advanced/dispatch-ceiling.md#how-each-provider-applies-the-cap).
|
|
48
|
+
- **Edits in provider folders are overwritten.** Re-running `oat sync` rewrites
|
|
49
|
+
provider views from their source in `.agents/`, so an edit made directly in a
|
|
50
|
+
provider folder such as `.claude/` is lost, and a file you placed at a view's
|
|
51
|
+
path yourself is replaced. See
|
|
52
|
+
[Manifest and Drift](../provider-sync/manifest-and-drift.md#quick-look).
|
|
53
|
+
- **The default reviewer independence can fall back.** A review gate's default
|
|
54
|
+
setting prefers a reviewer from a different model family, but when none is
|
|
55
|
+
available it falls back to the best available reviewer, which can be from the
|
|
56
|
+
same family, and only records a warning. See
|
|
57
|
+
[How independent the reviewer must be](../workflows/advanced/workflow-gates.md#how-independent-the-reviewer-must-be).
|
|
58
|
+
- **Re-running `oat pjm init` removes remote settings.** It replaces the `pjm`
|
|
59
|
+
section of `.oat/config.json` and deletes any `pjm.remote` settings, so back
|
|
60
|
+
the file up first. See
|
|
61
|
+
[Remote Project Management](../workflows/backlog-and-planning/remote-project-management.md#prerequisite).
|
|
62
|
+
- **Ad-hoc reviews run in the agent you invoke them in.** `oat-review-provide`
|
|
63
|
+
cannot send a review to a different model; to get another model's review,
|
|
64
|
+
run the skill in that model's coding tool. See
|
|
65
|
+
[oat-review-provide](../workflows/projects/reviews/review-flavors.md#oat-review-provide).
|
|
66
|
+
- **Gemini CLI gets no generated view.** OAT treats Gemini CLI as a native
|
|
67
|
+
read-only consumer, and sync does not generate a `.gemini/` view for it. See
|
|
68
|
+
[Canonical Assets and Provider Views](concepts.md#canonical-assets-and-provider-views).
|