@open-agent-toolkit/cli 0.3.12 → 0.3.14
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/skills.md +64 -2
- package/assets/docs/contributing/smoke-testing.md +3 -3
- 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 +112 -15
- package/assets/docs/docs-tooling/agent-instructions.md +131 -0
- package/assets/docs/docs-tooling/commands.md +74 -30
- package/assets/docs/docs-tooling/index.md +7 -6
- package/assets/docs/docs-tooling/meta.json +1 -1
- package/assets/docs/docs-tooling/workflows.md +357 -11
- package/assets/docs/{cli-utilities → getting-started}/bootstrap.md +60 -5
- package/assets/docs/{guide → getting-started}/concepts.md +28 -10
- 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 +146 -15
- package/assets/docs/index.md +47 -48
- package/assets/docs/meta.json +6 -7
- package/assets/docs/provider-sync/commands.md +26 -3
- 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 +43 -5
- package/assets/docs/provider-sync/manifest-and-drift.md +85 -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 +34 -34
- 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/docs-index-contract.md +19 -4
- package/assets/docs/reference/file-locations.md +7 -2
- package/assets/docs/reference/index.md +13 -1
- package/assets/docs/reference/meta.json +7 -1
- package/assets/docs/reference/oat-directory-structure.md +24 -22
- 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} +1 -1
- 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 +1 -1
- 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 +63 -4
- 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 +218 -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} +8 -8
- 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 +47 -11
- 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 +643 -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 +27 -7
- package/assets/skills/oat-docs-analyze/references/quality-checklist.md +16 -3
- package/assets/skills/oat-docs-apply/SKILL.md +20 -3
- package/assets/skills/oat-docs-authoring/SKILL.md +11 -7
- package/assets/skills/oat-docs-authoring/references/docs-root-resolution.md +12 -5
- package/assets/skills/oat-docs-authoring/references/lifecycle-boundaries.md +7 -7
- package/assets/skills/oat-docs-authoring/references/oat-fumadocs-contract.md +13 -3
- package/assets/skills/oat-docs-authoring/references/targeted-authoring-workflow.md +5 -4
- package/assets/skills/oat-docs-authoring/references/validation.md +11 -1
- package/assets/skills/oat-docs-bootstrap/SKILL.md +31 -8
- package/assets/skills/oat-docs-bootstrap/assets/AGENTS.md.template +2 -1
- package/assets/skills/oat-doctor/SKILL.md +25 -25
- package/assets/skills/oat-project-document/SKILL.md +21 -2
- package/assets/templates/docs-markdown/contributing.md +35 -0
- package/assets/templates/docs-markdown/index.md +18 -0
- package/dist/commands/docs/index-generate/index.d.ts.map +1 -1
- package/dist/commands/docs/index-generate/index.js +41 -8
- package/dist/commands/docs/init/index.d.ts +17 -2
- package/dist/commands/docs/init/index.d.ts.map +1 -1
- package/dist/commands/docs/init/index.js +194 -14
- package/dist/commands/docs/init/markdown.d.ts +39 -0
- package/dist/commands/docs/init/markdown.d.ts.map +1 -0
- package/dist/commands/docs/init/markdown.js +317 -0
- package/dist/commands/docs/init/resolve-options.d.ts +3 -1
- package/dist/commands/docs/init/resolve-options.d.ts.map +1 -1
- package/dist/commands/docs/init/resolve-options.js +36 -0
- package/dist/commands/docs/init/scaffold.d.ts.map +1 -1
- package/dist/commands/docs/init/scaffold.js +11 -0
- package/dist/commands/shared/agents-md.d.ts +7 -0
- package/dist/commands/shared/agents-md.d.ts.map +1 -1
- package/dist/commands/shared/agents-md.js +131 -91
- package/dist/commands/tools/shared/pack-manifest.d.ts.map +1 -1
- package/dist/commands/tools/shared/pack-manifest.js +1 -0
- package/dist/config/oat-config.d.ts +2 -1
- package/dist/config/oat-config.d.ts.map +1 -1
- package/dist/config/oat-config.js +4 -2
- 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/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
|
@@ -1,191 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Remote Project Management
|
|
3
|
-
description: Safely bind OAT planning records to GitHub, Linear, or Jira through provider-neutral host capabilities.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Remote Project Management
|
|
7
|
-
|
|
8
|
-
Remote project management connects an OAT backlog item or project to a remote
|
|
9
|
-
GitHub, Linear, or Jira record. OAT owns policy, previews, approvals, durable
|
|
10
|
-
operation state, and authoritative read-back verification. The host agent owns
|
|
11
|
-
live execution capability discovery.
|
|
12
|
-
|
|
13
|
-
Remote management is deliberately explicit. It does not turn every plan task
|
|
14
|
-
into a remote issue, run background synchronization, or treat a provider result
|
|
15
|
-
as proof of success.
|
|
16
|
-
|
|
17
|
-
## Prerequisite
|
|
18
|
-
|
|
19
|
-
Confirm that file-backed project management is adopted before using a remote
|
|
20
|
-
command:
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
oat pjm doctor --json
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Continue only when `adoption.state` is `declared` or `inferred-legacy`. Run
|
|
27
|
-
`oat pjm init` first when adoption is absent or only partially initialized.
|
|
28
|
-
|
|
29
|
-
## Lifecycle operations
|
|
30
|
-
|
|
31
|
-
The command family is `oat pjm remote`:
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
oat pjm remote intake github:example/repository#123 --to-backlog BL-123 --capability-evidence-stdin --json
|
|
35
|
-
oat pjm remote publish --binding rb_example --capability-evidence-stdin --json
|
|
36
|
-
oat pjm remote refresh --binding rb_example --capability-evidence-stdin --json
|
|
37
|
-
oat pjm remote reconcile --binding rb_example --capability-evidence-stdin --json
|
|
38
|
-
oat pjm remote closeout --project .oat/projects/shared/example --capability-evidence-stdin --json
|
|
39
|
-
oat pjm remote discussion --binding rb_example --limit 20 --capability-evidence-stdin --json
|
|
40
|
-
oat pjm remote resolve relink --binding rb_example github:example/repository#456 --capability-evidence-stdin --json
|
|
41
|
-
oat pjm remote resolve detach --binding rb_example --json
|
|
42
|
-
oat pjm remote resolve recreate --binding rb_example --capability-evidence-stdin --json
|
|
43
|
-
oat pjm remote doctor --json
|
|
44
|
-
oat pjm remote migrate --check --json
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
Before each provider-contacting example, the host discovers live capability and
|
|
48
|
-
supplies only its bounded provider-neutral evidence on standard input. Mutation
|
|
49
|
-
commands also require the current caller-owned authority evidence requested by
|
|
50
|
-
their live help.
|
|
51
|
-
|
|
52
|
-
- `intake` reads one remote record into a selected local backlog target and
|
|
53
|
-
creates the binding.
|
|
54
|
-
- `publish` creates or updates one explicitly selected binding.
|
|
55
|
-
- `refresh` updates retained snapshots without writing remotely.
|
|
56
|
-
- `reconcile` classifies local, remote, and baseline changes before proposing
|
|
57
|
-
any write.
|
|
58
|
-
- `closeout` prepares a reviewed batch while preserving independent per-binding
|
|
59
|
-
outcomes.
|
|
60
|
-
- `discussion` returns one bounded, sanitized page as non-persisted evidence.
|
|
61
|
-
- `resolve relink`, `detach`, and `recreate` handle anomalous bindings without
|
|
62
|
-
discarding identity history or retrying an uncertain create blindly.
|
|
63
|
-
- `doctor` and `migrate` diagnose or repair local records without contacting a
|
|
64
|
-
provider.
|
|
65
|
-
|
|
66
|
-
Use `--help` on the live command for current options. JSON output uses one
|
|
67
|
-
versioned envelope and may return a nonzero shell exit for a safely persisted
|
|
68
|
-
`pending`, `needs-review`, `partial`, `uncertain`, or `blocked` outcome.
|
|
69
|
-
|
|
70
|
-
## Repository-owned policy
|
|
71
|
-
|
|
72
|
-
Remote policy lives only in the shared repository config at `.oat/config.json`.
|
|
73
|
-
The safe defaults are local operational state, no description publication, and
|
|
74
|
-
read-only authority:
|
|
75
|
-
|
|
76
|
-
```json
|
|
77
|
-
{
|
|
78
|
-
"pjm": {
|
|
79
|
-
"remote": {
|
|
80
|
-
"schemaVersion": 1,
|
|
81
|
-
"storage": { "state": "local" },
|
|
82
|
-
"policy": {
|
|
83
|
-
"description": "none",
|
|
84
|
-
"authority": { "default": "read-only" }
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
Use the config command instead of editing nested values by hand:
|
|
92
|
-
|
|
93
|
-
```bash
|
|
94
|
-
oat config set pjm.remote.policy.description managed-section --shared
|
|
95
|
-
oat config set pjm.remote.policy.authority.operations.update-fields user-approved --shared
|
|
96
|
-
oat config set pjm.remote.policy.providers.github.authority.operations.create user-approved --shared
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
Description modes are `none`, `managed-section`, and `replace`. Authority modes
|
|
100
|
-
are `read-only`, `user-approved`, `user-authorized`, and `autonomous`.
|
|
101
|
-
For each operation, OAT resolves the repository operation override, then its
|
|
102
|
-
repository default, then the built-in read-only fallback. A matching provider
|
|
103
|
-
operation override or provider default replaces that repository result and may
|
|
104
|
-
broaden it. Binding defaults and operation restrictions then clamp authority,
|
|
105
|
-
while purpose field grants intersect to narrow the outbound fields. Provider
|
|
106
|
-
configuration never bypasses hard approval floors or the requirement for
|
|
107
|
-
current caller-owned authority evidence; missing, stale, or mismatched evidence
|
|
108
|
-
fails closed. Autonomous configuration is not a background grant.
|
|
109
|
-
|
|
110
|
-
## Live host capability boundary
|
|
111
|
-
|
|
112
|
-
At operation time, the host agent inspects currently granted MCP or connector
|
|
113
|
-
descriptions for the requested semantic operation and exact account, workspace,
|
|
114
|
-
site, or repository context. If no capable connector is available, it may
|
|
115
|
-
inspect the live help of an already configured provider CLI before the first
|
|
116
|
-
provider-contacting command.
|
|
117
|
-
|
|
118
|
-
OAT does not store provider tool names, native schemas, captured catalogs,
|
|
119
|
-
executable names, flags, or CLI dialects. The host returns only bounded,
|
|
120
|
-
sanitized capability evidence through `--capability-evidence-stdin`. It must not
|
|
121
|
-
install tools, request credential values, or switch execution surfaces after an
|
|
122
|
-
attempt begins. The CLI may then emit one provider-neutral `externalAction`.
|
|
123
|
-
The host executes that exact action at most once and returns one bounded
|
|
124
|
-
observation with `oat pjm remote operation continue`.
|
|
125
|
-
|
|
126
|
-
## Content and outbound safety
|
|
127
|
-
|
|
128
|
-
Inbound provider text is retained only through an allowlist of core fields and
|
|
129
|
-
adapter-approved extensions. If a retained text field triggers a conservative
|
|
130
|
-
sensitive-content signal, OAT suppresses that whole field and marks the
|
|
131
|
-
snapshot incomplete. This is a bounded field-safety rule, not general DLP or
|
|
132
|
-
credential-value parsing.
|
|
133
|
-
|
|
134
|
-
Every remote create or update consumes only an explicit normalized projection.
|
|
135
|
-
The universal provider-neutral pre-write gate evaluates that projection before
|
|
136
|
-
preview, approval, action, and authoritative read-back. It never scans the
|
|
137
|
-
repository, worktree, Git history, or arbitrary files for secrets. Missing,
|
|
138
|
-
stale, failed, or blocked safety evidence prevents execution.
|
|
139
|
-
|
|
140
|
-
## Previews, approval floors, and uncertainty
|
|
141
|
-
|
|
142
|
-
Mutation-capable commands persist and return a preview before execution. The
|
|
143
|
-
preview digest binds the target, normalized fields, remote revision,
|
|
144
|
-
capability, safety result, and effective policy. If any load-bearing input
|
|
145
|
-
changes, the approval is stale.
|
|
146
|
-
|
|
147
|
-
Fresh approval is always required for complete description replacement,
|
|
148
|
-
relink, detach, recreate, destructive operations, and promotion to shared
|
|
149
|
-
operational storage. `user-approved` authority also requires applying the exact
|
|
150
|
-
persisted preview. Higher configured authority cannot bypass those floors.
|
|
151
|
-
|
|
152
|
-
The host submits a bounded observation with `oat pjm remote operation continue`.
|
|
153
|
-
Only an OAT `ok` envelope after authoritative read-back means success. A
|
|
154
|
-
connector response, process exit, or visible remote change is evidence rather
|
|
155
|
-
than a verdict. If a create or update is uncertain, do not retry it blindly;
|
|
156
|
-
use the recovery guidance in the envelope so OAT can search, relink, recreate,
|
|
157
|
-
or reconcile without producing duplicates.
|
|
158
|
-
|
|
159
|
-
## Storage and worktrees
|
|
160
|
-
|
|
161
|
-
Portable binding metadata follows its backlog or project owner. Shared backlog
|
|
162
|
-
metadata lives under `.oat/repo/pjm/remote/bindings`; project metadata lives
|
|
163
|
-
under that project's `remote/bindings` directory. Local projects keep their
|
|
164
|
-
portable metadata in the local operational store.
|
|
165
|
-
|
|
166
|
-
Operational snapshots, journals, batches, and receipts default to a
|
|
167
|
-
repository-fingerprinted directory under the Git common directory:
|
|
168
|
-
`.git/oat/pjm-remote/<repository-fingerprint>/`. All linked worktrees for one
|
|
169
|
-
repository therefore share the same local operational state, while another
|
|
170
|
-
clone gets its own store.
|
|
171
|
-
|
|
172
|
-
Shared operational storage is opt-in and may expose remote planning content to
|
|
173
|
-
everyone with repository access. It requires a persisted preview and fresh
|
|
174
|
-
approval, and it is rejected for local projects. Preview the exact proposed
|
|
175
|
-
paths through `oat pjm remote storage shared --help` before applying them.
|
|
176
|
-
|
|
177
|
-
## Offline behavior
|
|
178
|
-
|
|
179
|
-
OAT can inspect portable bindings, the bounded local snapshot, journals,
|
|
180
|
-
receipts, and pending recovery instructions while offline. `remote doctor` and
|
|
181
|
-
`migrate` are local-only. Provider refresh, publication, reconciliation writes,
|
|
182
|
-
and authoritative verification remain pending or blocked until matching live
|
|
183
|
-
capability evidence is available; offline state never fabricates remote
|
|
184
|
-
freshness or success.
|
|
185
|
-
|
|
186
|
-
## Related references
|
|
187
|
-
|
|
188
|
-
- [Configuration](configuration.md)
|
|
189
|
-
- [CLI Reference](../reference/cli-reference.md)
|
|
190
|
-
- [File Locations](../reference/file-locations.md)
|
|
191
|
-
- [Troubleshooting](../reference/troubleshooting.md)
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: User Guide
|
|
3
|
-
description: User-facing guide for operating OAT across provider sync, docs tooling, workflow execution, skills, and ideas.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# User Guide
|
|
7
|
-
|
|
8
|
-
This page is now a compatibility router.
|
|
9
|
-
|
|
10
|
-
The old catch-all User Guide is being split into clearer adoption lanes so new users can choose the part of OAT that matches what they actually need.
|
|
11
|
-
|
|
12
|
-
## Contents
|
|
13
|
-
|
|
14
|
-
- [Core Concepts](concepts.md) - High-level mental model while concept material is being redistributed.
|
|
15
|
-
|
|
16
|
-
## Status
|
|
17
|
-
|
|
18
|
-
This guide bucket remains visible so older links have a stable landing page. New docs should go into the canonical top-level sections below instead of adding more pages under `guide/`.
|
|
19
|
-
|
|
20
|
-
## Canonical Sections
|
|
21
|
-
|
|
22
|
-
- [Provider Sync](../provider-sync/index.md) - Provider interoperability, drift, sync, and config behavior.
|
|
23
|
-
- [Agentic Workflows](../workflows/index.md) - Tracked projects, ideas, workflow skills, and lifecycle execution.
|
|
24
|
-
- [Docs Tooling](../docs-tooling/index.md) - Docs app setup, docs commands, and docs workflow entry points.
|
|
25
|
-
- [CLI Utilities](../cli-utilities/index.md) - Bootstrap, tool packs, configuration, and general CLI surfaces.
|
|
26
|
-
- [Reference](../reference/index.md) - Durable contracts and reference material.
|
|
27
|
-
|
|
28
|
-
## Legacy Pages Still Under Guide
|
|
29
|
-
|
|
30
|
-
- [Core Concepts](concepts.md) - High-level mental model while concept material is being redistributed.
|
|
31
|
-
- This guide bucket is being retired. Use the canonical top-level sections above for active documentation.
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Quickstart
|
|
3
|
-
description: 'Start-here guide for choosing the right OAT adoption path.'
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Quickstart
|
|
7
|
-
|
|
8
|
-
Use this page to choose the OAT path that matches what you are actually trying to do.
|
|
9
|
-
|
|
10
|
-
This page is intentionally lightweight. It is not the full command manual. Once you choose a path, continue into the owning section for the deeper operational detail.
|
|
11
|
-
|
|
12
|
-
## Prerequisites
|
|
13
|
-
|
|
14
|
-
- Node.js 22.17 or newer
|
|
15
|
-
- Git 2.31 or newer
|
|
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 exits as
|
|
19
|
-
a system error.
|
|
20
|
-
|
|
21
|
-
## Choose a Path
|
|
22
|
-
|
|
23
|
-
### Provider Sync
|
|
24
|
-
|
|
25
|
-
Use this path when you want canonical skills, agents, and rules to stay aligned across provider surfaces such as Claude, Cursor, Copilot, Gemini, or Codex.
|
|
26
|
-
|
|
27
|
-
Best fit:
|
|
28
|
-
|
|
29
|
-
- you want cross-provider sync and drift checks
|
|
30
|
-
- you care about canonical-to-provider asset management
|
|
31
|
-
- you do not necessarily need tracked project workflows
|
|
32
|
-
|
|
33
|
-
Continue here:
|
|
34
|
-
|
|
35
|
-
- [Provider Sync](provider-sync/index.md)
|
|
36
|
-
|
|
37
|
-
### Agentic Workflows
|
|
38
|
-
|
|
39
|
-
Use this path when you want tracked, resumable implementation work with explicit lifecycle artifacts, reviews, and handoff-friendly state.
|
|
40
|
-
|
|
41
|
-
Best fit:
|
|
42
|
-
|
|
43
|
-
- you want structured project execution
|
|
44
|
-
- you want lifecycle artifacts like `state.md`, `plan.md`, and `implementation.md`
|
|
45
|
-
- you want a workflow layer on top of the base CLI/tooling
|
|
46
|
-
|
|
47
|
-
Continue here:
|
|
48
|
-
|
|
49
|
-
- [Agentic Workflows](workflows/index.md)
|
|
50
|
-
|
|
51
|
-
### Docs Tooling
|
|
52
|
-
|
|
53
|
-
Use this path when you are bootstrapping or maintaining a documentation surface with OAT.
|
|
54
|
-
|
|
55
|
-
Best fit:
|
|
56
|
-
|
|
57
|
-
- you need docs app setup or maintenance workflows
|
|
58
|
-
- you care about docs navigation, docs commands, and docs-specific analysis/apply flows
|
|
59
|
-
- you want the docs-system contract rather than the broader workflow layer
|
|
60
|
-
|
|
61
|
-
Continue here:
|
|
62
|
-
|
|
63
|
-
- [Docs Tooling](docs-tooling/index.md)
|
|
64
|
-
|
|
65
|
-
### CLI Utilities
|
|
66
|
-
|
|
67
|
-
Use this path when you want general OAT CLI help outside the dedicated provider-sync, workflows, and docs-tooling lanes.
|
|
68
|
-
|
|
69
|
-
Best fit:
|
|
70
|
-
|
|
71
|
-
- you want bootstrap/setup guidance
|
|
72
|
-
- you want tool-pack, configuration, local-state, or utility command guidance
|
|
73
|
-
- you want a general CLI surface map rather than one specific product lane
|
|
74
|
-
|
|
75
|
-
Continue here:
|
|
76
|
-
|
|
77
|
-
- [CLI Utilities](cli-utilities/index.md)
|
|
78
|
-
|
|
79
|
-
## If You Are Unsure
|
|
80
|
-
|
|
81
|
-
Start with the path that best matches the primary thing you need right now.
|
|
82
|
-
|
|
83
|
-
- If you are trying to sync canonical assets across tools, choose Provider Sync.
|
|
84
|
-
- If you are trying to run a tracked implementation workflow, choose Agentic Workflows.
|
|
85
|
-
- If you are working on the docs system itself, choose Docs Tooling.
|
|
86
|
-
- If you mainly need command-line setup or utility guidance, choose CLI Utilities.
|
|
87
|
-
|
|
88
|
-
You can adopt more than one lane over time. OAT is designed so these sections can be used together or independently.
|
|
@@ -1,196 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Autonomous Project Execution
|
|
3
|
-
description: 'Session-scoped autonomy signals, gate boundaries, review requirements, and execution-learnings behavior for OAT projects.'
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Autonomous Project Execution
|
|
7
|
-
|
|
8
|
-
OAT autonomy is an explicit session policy for driving a project through its
|
|
9
|
-
lifecycle without waiting at ordinary interactive gates. It does not bypass the
|
|
10
|
-
gate-owning skills: each skill still applies its own checks, records provenance,
|
|
11
|
-
and either resolves the gate or reports a boundary.
|
|
12
|
-
|
|
13
|
-
The provider-agnostic entry point is `oat-project-autonomous`. Invoke it
|
|
14
|
-
deliberately with a goal, project slug, ticket reference, or active project. A
|
|
15
|
-
restart does not silently resume autonomy; invoke the skill again and it resumes
|
|
16
|
-
from the persisted project state.
|
|
17
|
-
|
|
18
|
-
## Activation contract
|
|
19
|
-
|
|
20
|
-
An autonomous session uses both signals:
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
export OAT_AUTONOMOUS=1
|
|
24
|
-
export OAT_NON_INTERACTIVE=1
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
`OAT_AUTONOMOUS=1` implies and sets `OAT_NON_INTERACTIVE=1` for the current
|
|
28
|
-
run. The distinction is intentional:
|
|
29
|
-
|
|
30
|
-
- `OAT_NON_INTERACTIVE=1` selects existing safe no-prompt paths for one
|
|
31
|
-
workflow.
|
|
32
|
-
- `OAT_AUTONOMOUS=1` additionally enables lifecycle chaining, defined gate
|
|
33
|
-
resolutions, boundary stops, and provenance requirements.
|
|
34
|
-
|
|
35
|
-
Both signals are session-scoped. Never write them to `state.md`, `plan.md`,
|
|
36
|
-
repository config, user config, or any other durable artifact. A later
|
|
37
|
-
interactive session therefore needs no autonomy cleanup and behaves
|
|
38
|
-
interactively around the state the autonomous run left behind.
|
|
39
|
-
|
|
40
|
-
## Gate outcomes
|
|
41
|
-
|
|
42
|
-
Every interactive lifecycle gate has one of two autonomous outcomes:
|
|
43
|
-
|
|
44
|
-
1. **Auto-resolve** using an existing safe path, then record the decision and
|
|
45
|
-
evidence.
|
|
46
|
-
2. **Boundary stop** with a structured blocker and a resumable next step.
|
|
47
|
-
|
|
48
|
-
The main boundary classes are:
|
|
49
|
-
|
|
50
|
-
- **Product judgment** — repository evidence cannot resolve material scope or
|
|
51
|
-
requirements ambiguity.
|
|
52
|
-
- **Destructive-change risk** — an action could discard work, delete data,
|
|
53
|
-
rewrite history, or broadly restructure an unapproved surface.
|
|
54
|
-
- **Unresolved Critical findings** — a blocking review has not passed.
|
|
55
|
-
- **Repository-policy approval** — protected operations require authority the
|
|
56
|
-
session does not have.
|
|
57
|
-
- **Missing credentials** — a required external action has no authenticated
|
|
58
|
-
route or offline equivalent.
|
|
59
|
-
|
|
60
|
-
A boundary is a successful fail-closed outcome, not permission to continue with
|
|
61
|
-
a guessed answer. The run reports what stopped, the evidence, and the operator
|
|
62
|
-
action needed to resume.
|
|
63
|
-
|
|
64
|
-
The canonical autonomy contract and exhaustive gate inventory
|
|
65
|
-
(`.agents/docs/autonomy-contract.md`, vendored into each consuming skill at
|
|
66
|
-
`references/docs/autonomy-contract.md`) map each prompt to its autonomous
|
|
67
|
-
resolution and provenance.
|
|
68
|
-
|
|
69
|
-
### Dispatch-ladder scope selection
|
|
70
|
-
|
|
71
|
-
An incomplete reusable dispatch ladder is auto-resolvable when an authorized
|
|
72
|
-
adoption-compatible config scope is available. Autonomous planning checks
|
|
73
|
-
config-file existence in this fixed order without prompting or reordering from
|
|
74
|
-
effective value or matrix-cell provenance:
|
|
75
|
-
|
|
76
|
-
1. user config (`~/.oat/config.json`);
|
|
77
|
-
2. repo-local config (`.oat/config.local.json`);
|
|
78
|
-
3. shared config (`.oat/config.json`), only when repository policy already
|
|
79
|
-
authorizes that write.
|
|
80
|
-
|
|
81
|
-
Before writing, planning rejects a candidate that would preserve a
|
|
82
|
-
provider-level scalar in that scope or remain shadowed by one at higher
|
|
83
|
-
precedence. It always tries the next authorized compatible candidate and stops
|
|
84
|
-
without mutation only when none remains.
|
|
85
|
-
|
|
86
|
-
The planner runs exactly one matching `oat config adopt dispatch-matrix --keep-existing`
|
|
87
|
-
command, records file-existence and compatibility evidence plus the selected
|
|
88
|
-
scope, and re-runs dispatch preflight. Existing explicit cells remain unchanged;
|
|
89
|
-
their provenance does not select the persistence scope. No authorized
|
|
90
|
-
compatible scope, or a ladder that remains incomplete after adoption, is still
|
|
91
|
-
a repository-policy boundary. `OAT_NON_INTERACTIVE=1` without
|
|
92
|
-
`OAT_AUTONOMOUS=1` does not select a scope and continues to fail closed.
|
|
93
|
-
|
|
94
|
-
## Review contract
|
|
95
|
-
|
|
96
|
-
Autonomous execution preserves independent review:
|
|
97
|
-
|
|
98
|
-
- Discovery, design, and plan artifacts run their configured exit gates.
|
|
99
|
-
Quick-start reviews the discovery, optional lightweight design, and plan as
|
|
100
|
-
one bundle when those artifacts exist.
|
|
101
|
-
- Review routing is selected before launch through the dispatch substrate.
|
|
102
|
-
A configured gate target is preferred when available; otherwise policy may
|
|
103
|
-
choose a target-preserving subagent route. Any reduced independence is
|
|
104
|
-
explicit in the dispatch record.
|
|
105
|
-
- Once a launch is accepted, it is terminal for route selection. Failures use
|
|
106
|
-
bounded recovery with the same payload; they do not silently fall through to
|
|
107
|
-
a cheaper or less independent reviewer.
|
|
108
|
-
- Eligible review artifacts are received immediately. Fix tasks use the normal
|
|
109
|
-
bounded implement-and-re-review loop.
|
|
110
|
-
- Critical findings and failed blocking reviews stop progression. High
|
|
111
|
-
findings follow the configured gate policy.
|
|
112
|
-
- A normal phase or final lifecycle review cannot satisfy a configured
|
|
113
|
-
implementation exit gate. Only gate invocation provenance with the matching
|
|
114
|
-
run ID can authorize that boundary.
|
|
115
|
-
|
|
116
|
-
Project review artifacts and review rows reference launcher-owned dispatch
|
|
117
|
-
records. The configured invocation is authoritative evidence; child
|
|
118
|
-
self-reporting is optional corroboration. See [Evidence
|
|
119
|
-
Layers](evidence-layers.md) and [Reviews](reviews.md).
|
|
120
|
-
|
|
121
|
-
## HiLL and lifecycle closeout
|
|
122
|
-
|
|
123
|
-
If checkpoint selection is unconfirmed when autonomy starts implementation,
|
|
124
|
-
OAT takes the existing `workflow.hillCheckpointDefault: final` path explicitly:
|
|
125
|
-
|
|
126
|
-
```yaml
|
|
127
|
-
oat_plan_hill_phases: ['<final-phase-id>']
|
|
128
|
-
oat_auto_review_at_hill_checkpoints: true
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
An existing valid explicit list is preserved. An existing `[]` is also
|
|
132
|
-
preserved and means every phase, never no phases. At each configured checkpoint,
|
|
133
|
-
autonomy runs and receives the review without waiting.
|
|
134
|
-
|
|
135
|
-
At final closeout, autonomy follows the same authoritative order as an
|
|
136
|
-
interactive run: final verification, mandatory final lifecycle review,
|
|
137
|
-
configured implementation exit gate, pre-approval sequence, final HiLL
|
|
138
|
-
approval, post-approval sequence, then implementation completion and success
|
|
139
|
-
output. A `not_configured` resolution persists an explicit no-gate allowance
|
|
140
|
-
before the sequence starts; a null, missing, or unrecognized resolver result
|
|
141
|
-
fails closed as unresolved. A gate this project disabled persists an
|
|
142
|
-
`allowed/configured` result with `disposition: project_disabled` and never
|
|
143
|
-
launches the configured command.
|
|
144
|
-
|
|
145
|
-
Autonomy does not turn an ordinary independent review into configured-gate
|
|
146
|
-
provenance. A configured review must produce a gate-originated artifact with
|
|
147
|
-
the matching run ID, and eligible receive must be durably reconciled. Blocked,
|
|
148
|
-
ambiguous, malformed, or stale gate state is a boundary stop: the run remains
|
|
149
|
-
resumable through `oat-project-implement` and cannot continue to approval,
|
|
150
|
-
completion, or output.
|
|
151
|
-
|
|
152
|
-
The default autonomous tail is summary, documentation, and final PR when no
|
|
153
|
-
post-implementation sequence is configured; stored legacy or structured
|
|
154
|
-
sequences retain their documented meaning.
|
|
155
|
-
|
|
156
|
-
## Execution-learnings loop
|
|
157
|
-
|
|
158
|
-
Autonomous runs keep an append-only project-local
|
|
159
|
-
`oat-execution-learnings.md`. Dated entries record an observation, impact, and
|
|
160
|
-
recommendation under the source taxonomy: `gotcha`, `efficiency`,
|
|
161
|
-
`documentation-gap`, `candidate-skill-content`, `decision`, or
|
|
162
|
-
`environment-limited`.
|
|
163
|
-
|
|
164
|
-
When the file exists, `oat-project-summary` synthesizes actionable
|
|
165
|
-
recommendations into `## Autonomous Execution Learnings`, grouped as:
|
|
166
|
-
|
|
167
|
-
- agent-instruction updates;
|
|
168
|
-
- cloud-environment improvements;
|
|
169
|
-
- code follow-ups;
|
|
170
|
-
- workflow issues.
|
|
171
|
-
|
|
172
|
-
Each recommendation links back to its source entry. Projects without the
|
|
173
|
-
learnings file render normal summaries with no autonomous-learnings section.
|
|
174
|
-
The summary export keeps the synthesized recommendations after project
|
|
175
|
-
archival.
|
|
176
|
-
|
|
177
|
-
## Taking over interactively
|
|
178
|
-
|
|
179
|
-
After an autonomous session ends:
|
|
180
|
-
|
|
181
|
-
1. Start a normal session without the autonomy environment signals.
|
|
182
|
-
2. Open the same project from its repository-local `.oat` directory.
|
|
183
|
-
3. Resume the owning lifecycle skill.
|
|
184
|
-
|
|
185
|
-
Persisted review rows, task state, explicit HiLL checkpoints, and dispatch
|
|
186
|
-
provenance remain valid. Interactive prompts and checkpoint pauses return
|
|
187
|
-
normally because autonomy itself was never persisted.
|
|
188
|
-
|
|
189
|
-
## Related
|
|
190
|
-
|
|
191
|
-
- [HiLL Checkpoints](hill-checkpoints.md) — checkpoint field semantics and
|
|
192
|
-
interactive behavior.
|
|
193
|
-
- [Implementation Execution](implementation-execution.md) — phase execution,
|
|
194
|
-
review, fixes, and closeout.
|
|
195
|
-
- [Cursor Cloud](cursor-cloud.md) — project-home and environment-readiness
|
|
196
|
-
guidance for cloud runs.
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Human-in-the-Loop Lifecycle (HiLL) Checkpoints
|
|
3
|
-
description: 'Checkpoint configuration and behavior for pauseable, human-in-the-loop lifecycle execution.'
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Human-in-the-Loop Lifecycle (HiLL) Checkpoints
|
|
7
|
-
|
|
8
|
-
OAT supports two checkpoint classes:
|
|
9
|
-
|
|
10
|
-
- Workflow phase checkpoints
|
|
11
|
-
- Plan phase checkpoints
|
|
12
|
-
|
|
13
|
-
The [Phase gate review](reviews.md#phase-review-gate) (`oat_phase_review_gate`) is a separate, non-pausing mechanism — it does not pause on a passing gate and never modifies the HiLL keys below (`oat_hill_completed`, `oat_plan_hill_phases`).
|
|
14
|
-
|
|
15
|
-
## Workflow checkpoints (`state.md`)
|
|
16
|
-
|
|
17
|
-
Frontmatter keys:
|
|
18
|
-
|
|
19
|
-
- `oat_hill_checkpoints`
|
|
20
|
-
- `oat_hill_completed`
|
|
21
|
-
|
|
22
|
-
Example:
|
|
23
|
-
|
|
24
|
-
```yaml
|
|
25
|
-
oat_hill_checkpoints: ['discovery', 'spec', 'design']
|
|
26
|
-
oat_hill_completed: ['discovery']
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
## Plan phase checkpoints (`plan.md`)
|
|
30
|
-
|
|
31
|
-
Frontmatter key written after implementation confirmation:
|
|
32
|
-
|
|
33
|
-
- `oat_plan_hill_phases`
|
|
34
|
-
|
|
35
|
-
Semantics:
|
|
36
|
-
|
|
37
|
-
- Field absent: valid before the first `oat-project-implement` run confirms checkpoint selection. Planning may intentionally leave the field unset until that first execution starts.
|
|
38
|
-
- Empty list: checkpoint after every phase boundary, but only after implementation has confirmed the choice and written `oat_plan_hill_phases: []` into `plan.md`.
|
|
39
|
-
- Explicit list: checkpoint only after completing the named phases (`p01`, `p04`, etc).
|
|
40
|
-
|
|
41
|
-
### Lite checkpoint bypass
|
|
42
|
-
|
|
43
|
-
Lite projects have no HiLL checkpoints. `oat-project-implement` resolves
|
|
44
|
-
`oat_workflow_mode` from project state before any checkpoint field read, and
|
|
45
|
-
when the mode is `lite` it resolves checkpoint state as `none` without reading
|
|
46
|
-
or interpreting `oat_plan_hill_phases`. An empty list cannot represent lite's
|
|
47
|
-
policy, because for every other mode an empty list means "checkpoint after every
|
|
48
|
-
phase". `oat-project-implement`'s Lite checkpoint bypass writes:
|
|
49
|
-
|
|
50
|
-
```yaml
|
|
51
|
-
oat_auto_review_at_hill_checkpoints: false # lite: no checkpoints
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
The workflow preference prompt, the standard checkpoint prompt, and the
|
|
55
|
-
auto-review preference prompt are all skipped in both interactive and autonomous
|
|
56
|
-
runs. Only HiLL approval pauses are absent — the root-owned per-phase review and
|
|
57
|
-
the final review remain required.
|
|
58
|
-
|
|
59
|
-
The rest of this section applies to `spec-driven`, `quick`, and `import`
|
|
60
|
-
projects.
|
|
61
|
-
|
|
62
|
-
On the first implementation run, `oat-project-implement` must summarize every plan phase, state the total phase count and final phase ID, and then ask an explicit three-option checkpoint question:
|
|
63
|
-
|
|
64
|
-
- Stop after each phase
|
|
65
|
-
- Stop after specific phases
|
|
66
|
-
- Stop only after the final phase is completed
|
|
67
|
-
|
|
68
|
-
It then writes the confirmed value into `plan.md`. If the field is later missing during a resumed implementation run, treat that as bookkeeping drift rather than as an implicit default.
|
|
69
|
-
|
|
70
|
-
Listed phases are where you stop **after completing them**, not before. `["p03"]` means "complete p03, then pause" — not "pause before starting p03." Setting the last phase ID (e.g., `["p03"]` when p03 is final) means "stop only at the end of implementation."
|
|
71
|
-
|
|
72
|
-
### Setting a default via `workflow.hillCheckpointDefault`
|
|
73
|
-
|
|
74
|
-
The first-run checkpoint prompt can be skipped entirely by setting the `workflow.hillCheckpointDefault` preference:
|
|
75
|
-
|
|
76
|
-
- `every` — automatically write `oat_plan_hill_phases: []` (pause after every phase) without prompting
|
|
77
|
-
- `final` — automatically write `oat_plan_hill_phases: ["<final-phase-id>"]` (pause only at the end) without prompting
|
|
78
|
-
|
|
79
|
-
When set, `oat-project-implement` reads the preference before the prompt and prints `HiLL checkpoints: <every|final> (from workflow.hillCheckpointDefault)`, skipping the interactive choice. When unset (default), the skill prompts as before.
|
|
80
|
-
|
|
81
|
-
This is a personal preference — typically set at user scope so it applies to every repo:
|
|
82
|
-
|
|
83
|
-
```bash
|
|
84
|
-
oat config set workflow.hillCheckpointDefault final --user
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
See [Workflow preferences in the Configuration guide](../../cli-utilities/configuration.md#workflow-preferences-workflow) for the full list of preference keys and surface guidance.
|
|
88
|
-
|
|
89
|
-
## Reference artifacts
|
|
90
|
-
|
|
91
|
-
- `.oat/templates/plan.md`
|
|
92
|
-
- `.oat/projects/<scope>/<project>/plan.md`
|
|
93
|
-
- `.oat/projects/<scope>/<project>/state.md`
|