@open-agent-toolkit/cli 0.3.8 → 0.3.9
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 +3 -3
- package/assets/agents/oat-codebase-mapper.md +3 -2
- package/assets/agents/oat-reviewer.md +5 -13
- package/assets/agents/skeptical-evaluator.md +6 -2
- package/assets/bundle-metadata.json +1 -1
- package/assets/docs/cli-utilities/backlog-lifecycle.md +3 -2
- package/assets/docs/cli-utilities/bootstrap.md +5 -2
- package/assets/docs/cli-utilities/config-and-local-state.md +13 -6
- package/assets/docs/cli-utilities/configuration.md +10 -9
- package/assets/docs/cli-utilities/tool-packs.md +60 -10
- package/assets/docs/contributing/code.md +9 -5
- package/assets/docs/provider-sync/commands.md +11 -8
- package/assets/docs/provider-sync/instruction-sync.md +241 -39
- package/assets/docs/provider-sync/scope-and-surface.md +1 -1
- package/assets/docs/reference/cli-reference.md +2 -0
- package/assets/docs/reference/oat-directory-structure.md +12 -11
- package/assets/docs/reference/troubleshooting.md +19 -4
- package/assets/docs/workflows/projects/implementation-execution.md +22 -8
- package/assets/docs/workflows/projects/lifecycle.md +4 -6
- package/assets/public-package-versions.json +4 -4
- package/assets/skills/oat-agent-instructions-analyze/SKILL.md +4 -4
- package/assets/skills/oat-agent-instructions-analyze/references/analysis-artifact-template.md +5 -5
- package/assets/skills/oat-agent-instructions-analyze/references/docs/rules-files.md +14 -11
- package/assets/skills/oat-agent-instructions-analyze/references/quality-checklist.md +2 -2
- package/assets/skills/oat-agent-instructions-analyze/scripts/resolve-instruction-files.sh +4 -3
- package/assets/skills/oat-agent-instructions-apply/SKILL.md +3 -3
- package/assets/skills/oat-agent-instructions-apply/references/docs/rules-files.md +14 -11
- package/assets/skills/oat-doctor/SKILL.md +17 -13
- package/assets/skills/oat-project-implement/SKILL.md +2 -2
- package/assets/skills/oat-project-implement/references/completion-and-closeout.md +33 -11
- package/assets/skills/oat-project-implement/references/phase-execution.md +109 -8
- package/assets/skills/oat-project-lite/SKILL.md +23 -1
- package/assets/skills/oat-project-next/SKILL.md +3 -3
- package/assets/skills/oat-project-progress/SKILL.md +2 -2
- package/assets/templates/docs-app-mkdocs/docs/contributing.md +1 -3
- package/assets/templates/pjm-agents.md +7 -3
- package/assets/templates/state.md +2 -2
- package/dist/commands/backlog/archive.d.ts +10 -2
- package/dist/commands/backlog/archive.d.ts.map +1 -1
- package/dist/commands/backlog/archive.js +22 -6
- package/dist/commands/backlog/index.d.ts.map +1 -1
- package/dist/commands/backlog/index.js +5 -1
- package/dist/commands/backlog/rewrite-references.d.ts +41 -0
- package/dist/commands/backlog/rewrite-references.d.ts.map +1 -0
- package/dist/commands/backlog/rewrite-references.js +516 -0
- package/dist/commands/config/index.d.ts +1 -0
- package/dist/commands/config/index.d.ts.map +1 -1
- package/dist/commands/config/index.js +69 -34
- package/dist/commands/init/index.d.ts +6 -0
- package/dist/commands/init/index.d.ts.map +1 -1
- package/dist/commands/init/index.js +27 -4
- package/dist/commands/init/tools/index.d.ts +18 -1
- package/dist/commands/init/tools/index.d.ts.map +1 -1
- package/dist/commands/init/tools/index.js +84 -17
- package/dist/commands/init/tools/project-guidance.d.ts +19 -4
- package/dist/commands/init/tools/project-guidance.d.ts.map +1 -1
- package/dist/commands/init/tools/project-guidance.js +58 -15
- package/dist/commands/init/tools/workflows/index.d.ts.map +1 -1
- package/dist/commands/init/tools/workflows/index.js +5 -1
- package/dist/commands/instructions/instructions.types.d.ts +105 -4
- package/dist/commands/instructions/instructions.types.d.ts.map +1 -1
- package/dist/commands/instructions/instructions.types.js +4 -5
- package/dist/commands/instructions/instructions.utils.d.ts +161 -6
- package/dist/commands/instructions/instructions.utils.d.ts.map +1 -1
- package/dist/commands/instructions/instructions.utils.js +650 -12
- package/dist/commands/instructions/sync/sync.d.ts.map +1 -1
- package/dist/commands/instructions/sync/sync.js +256 -18
- package/dist/commands/instructions/validate/validate.d.ts.map +1 -1
- package/dist/commands/instructions/validate/validate.js +36 -8
- package/dist/commands/pjm/index.d.ts.map +1 -1
- package/dist/commands/pjm/index.js +19 -4
- package/dist/commands/pjm/init.d.ts +3 -0
- package/dist/commands/pjm/init.d.ts.map +1 -1
- package/dist/commands/pjm/init.js +23 -5
- package/dist/commands/shared/agents-md.d.ts +26 -5
- package/dist/commands/shared/agents-md.d.ts.map +1 -1
- package/dist/commands/shared/agents-md.js +182 -3
- package/dist/commands/tools/guidance/index.d.ts +15 -0
- package/dist/commands/tools/guidance/index.d.ts.map +1 -0
- package/dist/commands/tools/guidance/index.js +81 -0
- package/dist/commands/tools/index.d.ts.map +1 -1
- package/dist/commands/tools/index.js +2 -0
- package/dist/config/oat-config.d.ts +49 -3
- package/dist/config/oat-config.d.ts.map +1 -1
- package/dist/config/oat-config.js +107 -14
- package/dist/config/resolve.d.ts.map +1 -1
- package/dist/config/resolve.js +12 -2
- package/package.json +2 -2
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
import { lstat, readFile, readlink, realpath, writeFile } from 'node:fs/promises';
|
|
1
|
+
import { lstat, open, readFile, readlink, realpath, writeFile } from 'node:fs/promises';
|
|
2
2
|
/**
|
|
3
3
|
* Plans repository AGENTS.md guidance without replacing existing paths.
|
|
4
4
|
*
|
|
5
|
-
* An absent root file may be created with one exclusive write.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* An absent root file may be created with one exclusive write. For an existing
|
|
6
|
+
* file (or its contained symlink target), matching content returns no-change,
|
|
7
|
+
* absent managed blocks are appended with one append-only write that never
|
|
8
|
+
* truncates, renames, or rewrites existing bytes, and a present-but-different
|
|
9
|
+
* block is returned as a zero-write, copy-pasteable manual patch.
|
|
8
10
|
*/
|
|
9
11
|
export interface AgentsMdFileSystem {
|
|
10
12
|
lstat: typeof lstat;
|
|
13
|
+
open: typeof open;
|
|
11
14
|
readFile: typeof readFile;
|
|
12
15
|
readlink: typeof readlink;
|
|
13
16
|
realpath: typeof realpath;
|
|
@@ -22,6 +25,11 @@ export interface AgentsMdManualPatch {
|
|
|
22
25
|
managedBlock: string;
|
|
23
26
|
legacyBlockAction: 'preserve' | 'remove-manually';
|
|
24
27
|
instructions: readonly string[];
|
|
28
|
+
/**
|
|
29
|
+
* Present when OAT refused to append absent blocks (zero bytes written);
|
|
30
|
+
* names the cause so callers do not claim an existing block differs.
|
|
31
|
+
*/
|
|
32
|
+
appendRefusal?: string;
|
|
25
33
|
}
|
|
26
34
|
export interface AgentsMdBlocked {
|
|
27
35
|
code: 'blocked';
|
|
@@ -30,7 +38,7 @@ export interface AgentsMdBlocked {
|
|
|
30
38
|
action: string;
|
|
31
39
|
}
|
|
32
40
|
export interface UpsertSectionResult {
|
|
33
|
-
action: 'created' | 'no-change' | 'manual-required' | 'blocked';
|
|
41
|
+
action: 'created' | 'appended' | 'no-change' | 'manual-required' | 'blocked';
|
|
34
42
|
manualPatch?: AgentsMdManualPatch;
|
|
35
43
|
blocked?: AgentsMdBlocked;
|
|
36
44
|
}
|
|
@@ -38,8 +46,21 @@ export interface AgentsMdSectionInput {
|
|
|
38
46
|
key: string;
|
|
39
47
|
body: string;
|
|
40
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Renders one managed block exactly as the writer creates or appends it, so
|
|
51
|
+
* read-only surfaces print the same bytes the writer would produce.
|
|
52
|
+
*/
|
|
53
|
+
export declare function buildAgentsMdManagedBlock(key: string, body: string): string;
|
|
41
54
|
export declare function formatAgentsMdMutationFailure(error: unknown): string;
|
|
42
55
|
export declare function formatAgentsMdGuidanceResult(result: UpsertSectionResult): readonly string[];
|
|
56
|
+
/**
|
|
57
|
+
* Open flags for the append-only write. A write access mode is required:
|
|
58
|
+
* `O_APPEND | O_NOFOLLOW` alone opens read-only and the write fails with
|
|
59
|
+
* `EBADF`. `O_NOFOLLOW` refuses a symlink swapped in at the final component,
|
|
60
|
+
* and `O_NONBLOCK` makes a FIFO swapped in fail fast (`ENXIO`) instead of
|
|
61
|
+
* hanging; it has no effect on regular-file writes.
|
|
62
|
+
*/
|
|
63
|
+
export declare const AGENTS_MD_APPEND_FLAGS: number;
|
|
43
64
|
export declare function upsertAgentsMdSections(repoRoot: string, sections: readonly AgentsMdSectionInput[], options?: Pick<AgentsMdMutationOptions, 'fileSystem'>): Promise<Record<string, UpsertSectionResult>>;
|
|
44
65
|
export declare function upsertAgentsMdSection(repoRoot: string, key: string, body: string, options?: AgentsMdMutationOptions): Promise<UpsertSectionResult>;
|
|
45
66
|
export declare function removeAgentsMdSection(repoRoot: string, key: string, options?: Pick<AgentsMdMutationOptions, 'fileSystem'>): Promise<boolean | 'manual-required' | 'blocked'>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents-md.d.ts","sourceRoot":"","sources":["../../../src/commands/shared/agents-md.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agents-md.d.ts","sourceRoot":"","sources":["../../../src/commands/shared/agents-md.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACV,MAAM,kBAAkB,CAAC;AAG1B;;;;;;;;GAQG;AAEH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,IAAI,EAAE,OAAO,IAAI,CAAC;IAClB,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAC1B,SAAS,EAAE,OAAO,SAAS,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AAmCD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,UAAU,GAAG,iBAAiB,CAAC;IAClD,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,iBAAiB,GAAG,SAAS,CAAC;IAC7E,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAcD;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3E;AAySD,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAGpE;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,mBAAmB,GAC1B,SAAS,MAAM,EAAE,CAoBnB;AAmDD;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,QAIb,CAAC;AA+RvB,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,SAAS,oBAAoB,EAAE,EACzC,OAAO,GAAE,IAAI,CAAC,uBAAuB,EAAE,YAAY,CAAM,GACxD,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAS9C;AAED,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,mBAAmB,CAAC,CAS9B;AAED,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,IAAI,CAAC,uBAAuB,EAAE,YAAY,CAAM,GACxD,OAAO,CAAC,OAAO,GAAG,iBAAiB,GAAG,SAAS,CAAC,CAYlD"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { constants } from 'node:fs';
|
|
2
|
+
import { lstat, open, readFile, readlink, realpath, writeFile, } from 'node:fs/promises';
|
|
2
3
|
import { dirname, isAbsolute, join, relative, resolve, sep } from 'node:path';
|
|
3
4
|
const defaultFileSystem = {
|
|
4
5
|
lstat,
|
|
6
|
+
open,
|
|
5
7
|
readFile,
|
|
6
8
|
readlink,
|
|
7
9
|
realpath,
|
|
@@ -16,6 +18,13 @@ function sectionEnd(key) {
|
|
|
16
18
|
function buildSection(key, body) {
|
|
17
19
|
return `${sectionStart(key)}\n${body}\n${sectionEnd(key)}`;
|
|
18
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Renders one managed block exactly as the writer creates or appends it, so
|
|
23
|
+
* read-only surfaces print the same bytes the writer would produce.
|
|
24
|
+
*/
|
|
25
|
+
export function buildAgentsMdManagedBlock(key, body) {
|
|
26
|
+
return buildSection(key, body);
|
|
27
|
+
}
|
|
19
28
|
function identityOf(stat) {
|
|
20
29
|
return { device: String(stat.dev), inode: String(stat.ino) };
|
|
21
30
|
}
|
|
@@ -120,6 +129,7 @@ async function planAgentsMd(repoRoot, fileSystem) {
|
|
|
120
129
|
kind: 'file',
|
|
121
130
|
agentsIdentity: identityOf(agentsStat),
|
|
122
131
|
targetIdentity: identityOf(agentsStat),
|
|
132
|
+
targetLinkCount: Number(agentsStat.nlink),
|
|
123
133
|
};
|
|
124
134
|
}
|
|
125
135
|
if (!agentsStat.isSymbolicLink()) {
|
|
@@ -158,6 +168,7 @@ async function planAgentsMd(repoRoot, fileSystem) {
|
|
|
158
168
|
kind: 'symlink',
|
|
159
169
|
agentsIdentity: identityOf(agentsStat),
|
|
160
170
|
targetIdentity: identityOf(targetStat),
|
|
171
|
+
targetLinkCount: Number(targetStat.nlink),
|
|
161
172
|
linkText,
|
|
162
173
|
};
|
|
163
174
|
}
|
|
@@ -212,7 +223,7 @@ function safeReason(error) {
|
|
|
212
223
|
if (!(error instanceof Error)) {
|
|
213
224
|
return 'AGENTS.md guidance could not be planned safely.';
|
|
214
225
|
}
|
|
215
|
-
if (/^(Repository root|Repository-root AGENTS\.md|Repository or AGENTS\.md|AGENTS\.md section|AGENTS\.md managed sections|AGENTS\.md content)/.test(error.message)) {
|
|
226
|
+
if (/^(Repository root|Repository-root AGENTS\.md|Repository or AGENTS\.md|AGENTS\.md section|AGENTS\.md managed sections|AGENTS\.md content|AGENTS\.md append)/.test(error.message)) {
|
|
216
227
|
return error.message;
|
|
217
228
|
}
|
|
218
229
|
return 'AGENTS.md guidance could not be planned safely.';
|
|
@@ -253,13 +264,19 @@ export function formatAgentsMdGuidanceResult(result) {
|
|
|
253
264
|
}
|
|
254
265
|
return [];
|
|
255
266
|
}
|
|
256
|
-
function createManualPatch(plan, managedBlocks, legacyKeys) {
|
|
267
|
+
function createManualPatch(plan, managedBlocks, legacyKeys, appendRefusal) {
|
|
257
268
|
const target = targetIdentifier(plan);
|
|
258
269
|
return {
|
|
259
270
|
target,
|
|
260
271
|
managedBlock: managedBlocks.join('\n\n'),
|
|
261
272
|
legacyBlockAction: legacyKeys.length > 0 ? 'remove-manually' : 'preserve',
|
|
273
|
+
...(appendRefusal ? { appendRefusal } : {}),
|
|
262
274
|
instructions: [
|
|
275
|
+
...(appendRefusal
|
|
276
|
+
? [
|
|
277
|
+
`OAT did not append to ${target}: ${appendRefusal}. Nothing was written.`,
|
|
278
|
+
]
|
|
279
|
+
: []),
|
|
263
280
|
`Open ${target}.`,
|
|
264
281
|
'Replace each matching OAT managed block, or append each absent block, exactly as shown.',
|
|
265
282
|
...(legacyKeys.length > 0
|
|
@@ -287,6 +304,121 @@ async function createMissingFile(plan, content, fileSystem) {
|
|
|
287
304
|
return 'blocked';
|
|
288
305
|
}
|
|
289
306
|
}
|
|
307
|
+
/**
|
|
308
|
+
* Open flags for the append-only write. A write access mode is required:
|
|
309
|
+
* `O_APPEND | O_NOFOLLOW` alone opens read-only and the write fails with
|
|
310
|
+
* `EBADF`. `O_NOFOLLOW` refuses a symlink swapped in at the final component,
|
|
311
|
+
* and `O_NONBLOCK` makes a FIFO swapped in fail fast (`ENXIO`) instead of
|
|
312
|
+
* hanging; it has no effect on regular-file writes.
|
|
313
|
+
*/
|
|
314
|
+
export const AGENTS_MD_APPEND_FLAGS = constants.O_WRONLY |
|
|
315
|
+
constants.O_APPEND |
|
|
316
|
+
constants.O_NOFOLLOW |
|
|
317
|
+
constants.O_NONBLOCK;
|
|
318
|
+
const HARD_LINK_REFUSAL = 'the file has more than one hard link, so an append could change another path';
|
|
319
|
+
function describeErrorCode(error) {
|
|
320
|
+
switch (errorCode(error)) {
|
|
321
|
+
case 'EACCES':
|
|
322
|
+
case 'EPERM':
|
|
323
|
+
return 'permission denied';
|
|
324
|
+
case 'EROFS':
|
|
325
|
+
return 'read-only file system';
|
|
326
|
+
case 'ENOSPC':
|
|
327
|
+
return 'no space left on device';
|
|
328
|
+
case 'EDQUOT':
|
|
329
|
+
return 'disk quota exceeded';
|
|
330
|
+
case undefined:
|
|
331
|
+
return 'unexpected error';
|
|
332
|
+
default:
|
|
333
|
+
return `error ${errorCode(error)}`;
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
const IDENTITY_CHANGED = 'Repository or AGENTS.md identity changed during planning.';
|
|
337
|
+
/**
|
|
338
|
+
* Appends absent managed blocks to an existing, already-approved target.
|
|
339
|
+
*
|
|
340
|
+
* The opened handle's device/inode must equal the planned target identity, so
|
|
341
|
+
* a target swapped in after planning (for example a hard link to a file
|
|
342
|
+
* outside the repository renamed over AGENTS.md) is refused with zero bytes
|
|
343
|
+
* written. A handle with more than one hard link is refused the same way, and
|
|
344
|
+
* a non-regular file is blocked. The payload always starts with one newline,
|
|
345
|
+
* so the first marker starts its own line however the file (or a concurrent
|
|
346
|
+
* writer) ended, and `O_APPEND` places it after every byte already there.
|
|
347
|
+
*/
|
|
348
|
+
async function appendAbsentSections(plan, blocks, fileSystem) {
|
|
349
|
+
let handle;
|
|
350
|
+
try {
|
|
351
|
+
handle = await fileSystem.open(plan.targetPath, AGENTS_MD_APPEND_FLAGS);
|
|
352
|
+
}
|
|
353
|
+
catch (error) {
|
|
354
|
+
const code = errorCode(error);
|
|
355
|
+
// The planned path was a regular file; any of these means something else
|
|
356
|
+
// now sits at it (a symlink, a directory, or nothing), so it is an
|
|
357
|
+
// identity change, not a write refusal. EMLINK is the BSD O_NOFOLLOW
|
|
358
|
+
// error for a symlink.
|
|
359
|
+
if (code === 'ELOOP' ||
|
|
360
|
+
code === 'EMLINK' ||
|
|
361
|
+
code === 'ENOENT' ||
|
|
362
|
+
code === 'EISDIR' ||
|
|
363
|
+
code === 'ENOTDIR') {
|
|
364
|
+
return { kind: 'blocked', reason: IDENTITY_CHANGED };
|
|
365
|
+
}
|
|
366
|
+
if (code === 'ENXIO') {
|
|
367
|
+
return {
|
|
368
|
+
kind: 'blocked',
|
|
369
|
+
reason: 'AGENTS.md append target is not a regular file.',
|
|
370
|
+
};
|
|
371
|
+
}
|
|
372
|
+
return { kind: 'refused', cause: describeErrorCode(error) };
|
|
373
|
+
}
|
|
374
|
+
let outcome;
|
|
375
|
+
let offset = 0;
|
|
376
|
+
const payload = Buffer.from(`\n${blocks.join('\n\n')}\n`, 'utf8');
|
|
377
|
+
try {
|
|
378
|
+
const opened = await handle.stat();
|
|
379
|
+
if (!opened.isFile()) {
|
|
380
|
+
outcome = {
|
|
381
|
+
kind: 'blocked',
|
|
382
|
+
reason: 'AGENTS.md append target is not a regular file.',
|
|
383
|
+
};
|
|
384
|
+
}
|
|
385
|
+
else if (!hasIdentity(opened, plan.targetIdentity)) {
|
|
386
|
+
outcome = { kind: 'blocked', reason: IDENTITY_CHANGED };
|
|
387
|
+
}
|
|
388
|
+
else if (Number(opened.nlink) !== 1) {
|
|
389
|
+
outcome = { kind: 'refused', cause: HARD_LINK_REFUSAL };
|
|
390
|
+
}
|
|
391
|
+
else {
|
|
392
|
+
while (offset < payload.length) {
|
|
393
|
+
const { bytesWritten } = await handle.write(payload, offset, payload.length - offset);
|
|
394
|
+
if (bytesWritten <= 0) {
|
|
395
|
+
throw Object.assign(new Error('Append wrote no bytes.'), {
|
|
396
|
+
code: 'EIO',
|
|
397
|
+
});
|
|
398
|
+
}
|
|
399
|
+
offset += bytesWritten;
|
|
400
|
+
}
|
|
401
|
+
outcome = { kind: 'appended' };
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
catch (error) {
|
|
405
|
+
outcome =
|
|
406
|
+
offset === 0
|
|
407
|
+
? { kind: 'refused', cause: describeErrorCode(error) }
|
|
408
|
+
: {
|
|
409
|
+
kind: 'blocked',
|
|
410
|
+
reason: `AGENTS.md append stopped after writing part of the managed block (${describeErrorCode(error)}); the file may now end with a partial OAT block. Remove the partial block by hand, then rerun.`,
|
|
411
|
+
};
|
|
412
|
+
}
|
|
413
|
+
try {
|
|
414
|
+
await handle.close();
|
|
415
|
+
}
|
|
416
|
+
catch {
|
|
417
|
+
// Every byte is already written (or the outcome is already a refusal); a
|
|
418
|
+
// close error does not change what the file contains.
|
|
419
|
+
}
|
|
420
|
+
return outcome;
|
|
421
|
+
}
|
|
290
422
|
async function upsertSectionsInternal(repoRoot, sections, removeSectionKeys, fileSystem, allowReplan) {
|
|
291
423
|
let plan;
|
|
292
424
|
try {
|
|
@@ -332,6 +464,53 @@ async function upsertSectionsInternal(repoRoot, sections, removeSectionKeys, fil
|
|
|
332
464
|
if (changed.length === 0 && legacy.length === 0) {
|
|
333
465
|
return Object.fromEntries(desired.map(({ key }) => [key, { action: 'no-change' }]));
|
|
334
466
|
}
|
|
467
|
+
// Appending cannot remove a legacy block, so any legacy block keeps the
|
|
468
|
+
// whole request on the zero-write manual patch.
|
|
469
|
+
if (legacy.length === 0) {
|
|
470
|
+
const absent = managed.filter(({ range }) => !range);
|
|
471
|
+
const different = managed.filter(({ block, range }) => range !== undefined &&
|
|
472
|
+
content.slice(range.start, range.end) !== block);
|
|
473
|
+
let appendRefusal;
|
|
474
|
+
if (absent.length > 0) {
|
|
475
|
+
if (plan.targetLinkCount !== 1) {
|
|
476
|
+
appendRefusal = HARD_LINK_REFUSAL;
|
|
477
|
+
}
|
|
478
|
+
else {
|
|
479
|
+
const appended = await appendAbsentSections(plan, absent.map(({ block }) => block), fileSystem);
|
|
480
|
+
if (appended.kind === 'blocked')
|
|
481
|
+
throw new Error(appended.reason);
|
|
482
|
+
if (appended.kind === 'refused')
|
|
483
|
+
appendRefusal = appended.cause;
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
if (appendRefusal !== undefined) {
|
|
487
|
+
// Zero bytes were written: every absent or different block goes on
|
|
488
|
+
// one manual patch that names why OAT did not append.
|
|
489
|
+
const refusalPatch = createManualPatch(plan, managed
|
|
490
|
+
.filter(({ block, range }) => !range || content.slice(range.start, range.end) !== block)
|
|
491
|
+
.map(({ block }) => block), [], appendRefusal);
|
|
492
|
+
return Object.fromEntries(managed.map(({ key, range }) => [
|
|
493
|
+
key,
|
|
494
|
+
range && !different.some((entry) => entry.key === key)
|
|
495
|
+
? { action: 'no-change' }
|
|
496
|
+
: { action: 'manual-required', manualPatch: refusalPatch },
|
|
497
|
+
]));
|
|
498
|
+
}
|
|
499
|
+
const differentPatch = different.length > 0
|
|
500
|
+
? createManualPatch(plan, different.map(({ block }) => block), [])
|
|
501
|
+
: undefined;
|
|
502
|
+
return Object.fromEntries(managed.map(({ key, range }) => {
|
|
503
|
+
if (!range)
|
|
504
|
+
return [key, { action: 'appended' }];
|
|
505
|
+
if (differentPatch && different.some((entry) => entry.key === key)) {
|
|
506
|
+
return [
|
|
507
|
+
key,
|
|
508
|
+
{ action: 'manual-required', manualPatch: differentPatch },
|
|
509
|
+
];
|
|
510
|
+
}
|
|
511
|
+
return [key, { action: 'no-change' }];
|
|
512
|
+
}));
|
|
513
|
+
}
|
|
335
514
|
const manualPatch = createManualPatch(plan, changed.length > 0
|
|
336
515
|
? changed.map(({ block }) => block)
|
|
337
516
|
: desired.map(({ block }) => block), legacy.map(({ key }) => key));
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { buildCommandContext, type CommandContext } from '../../../app/command-context.js';
|
|
2
|
+
import { type RealizedGuidanceState } from '../../init/tools/index.js';
|
|
3
|
+
import { Command } from 'commander';
|
|
4
|
+
export interface ToolsGuidanceDependencies {
|
|
5
|
+
buildCommandContext: typeof buildCommandContext;
|
|
6
|
+
resolveProjectRoot: (cwd: string) => Promise<string>;
|
|
7
|
+
loadGuidanceState: (context: CommandContext, projectRoot: string | null) => Promise<RealizedGuidanceState>;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* `oat tools guidance` renders the managed `OAT tools` AGENTS.md block from
|
|
11
|
+
* the installed pack state. It never installs, upgrades, or writes anything,
|
|
12
|
+
* so it is the safe way to obtain the block for a manual edit.
|
|
13
|
+
*/
|
|
14
|
+
export declare function createToolsGuidanceCommand(overrides?: Partial<ToolsGuidanceDependencies>): Command;
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/tools/guidance/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,WAAW,yBAAyB;IACxC,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAChD,kBAAkB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,iBAAiB,EAAE,CACjB,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,MAAM,GAAG,IAAI,KACvB,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACrC;AASD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,GAAE,OAAO,CAAC,yBAAyB,CAAM,GACjD,OAAO,CAkET"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { buildCommandContext } from '../../../app/command-context.js';
|
|
2
|
+
import { loadRealizedGuidanceState, } from '../../init/tools/index.js';
|
|
3
|
+
import { renderToolPacksManagedBlock } from '../../init/tools/project-guidance.js';
|
|
4
|
+
import { readGlobalOptions } from '../../shared/shared.utils.js';
|
|
5
|
+
import { resolveProjectRoot } from '../../../fs/paths.js';
|
|
6
|
+
import { Command } from 'commander';
|
|
7
|
+
const defaultDependencies = {
|
|
8
|
+
buildCommandContext,
|
|
9
|
+
resolveProjectRoot,
|
|
10
|
+
loadGuidanceState: (context, projectRoot) => loadRealizedGuidanceState(context, projectRoot),
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* `oat tools guidance` renders the managed `OAT tools` AGENTS.md block from
|
|
14
|
+
* the installed pack state. It never installs, upgrades, or writes anything,
|
|
15
|
+
* so it is the safe way to obtain the block for a manual edit.
|
|
16
|
+
*/
|
|
17
|
+
export function createToolsGuidanceCommand(overrides = {}) {
|
|
18
|
+
const dependencies = {
|
|
19
|
+
...defaultDependencies,
|
|
20
|
+
...overrides,
|
|
21
|
+
};
|
|
22
|
+
return new Command('guidance')
|
|
23
|
+
.description('Print the managed OAT tools AGENTS.md guidance block without installing or writing anything')
|
|
24
|
+
.action(async (_options, command) => {
|
|
25
|
+
const context = dependencies.buildCommandContext(readGlobalOptions(command));
|
|
26
|
+
try {
|
|
27
|
+
const projectRoot = await dependencies
|
|
28
|
+
.resolveProjectRoot(context.cwd)
|
|
29
|
+
.catch(() => null);
|
|
30
|
+
const { packs, otherProjectSkills } = await dependencies.loadGuidanceState(context, projectRoot);
|
|
31
|
+
if (packs.length === 0) {
|
|
32
|
+
// An empty block is a stale placeholder: pasting it turns the first
|
|
33
|
+
// real `--project-guidance` install into a manual patch.
|
|
34
|
+
const message = 'No OAT tool pack is installed, so there is no OAT tools guidance block to add to AGENTS.md. Install a pack first, for example `oat tools install <pack> --project-guidance`.';
|
|
35
|
+
if (context.json) {
|
|
36
|
+
context.logger.json({
|
|
37
|
+
status: 'no-packs',
|
|
38
|
+
sectionKey: 'tools',
|
|
39
|
+
target: 'AGENTS.md',
|
|
40
|
+
packs,
|
|
41
|
+
otherProjectSkills,
|
|
42
|
+
managedBlock: null,
|
|
43
|
+
message,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
context.logger.warn(message);
|
|
48
|
+
}
|
|
49
|
+
process.exitCode = 0;
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
const managedBlock = renderToolPacksManagedBlock(packs, {
|
|
53
|
+
otherProjectSkills,
|
|
54
|
+
});
|
|
55
|
+
if (context.json) {
|
|
56
|
+
context.logger.json({
|
|
57
|
+
status: 'ok',
|
|
58
|
+
sectionKey: 'tools',
|
|
59
|
+
target: 'AGENTS.md',
|
|
60
|
+
packs,
|
|
61
|
+
otherProjectSkills,
|
|
62
|
+
managedBlock,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
context.logger.info(managedBlock);
|
|
67
|
+
}
|
|
68
|
+
process.exitCode = 0;
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
72
|
+
if (context.json) {
|
|
73
|
+
context.logger.json({ status: 'error', message });
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
context.logger.error(message);
|
|
77
|
+
}
|
|
78
|
+
process.exitCode = 1;
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,wBAAgB,kBAAkB,IAAI,OAAO,CAgB5C"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
|
+
import { createToolsGuidanceCommand } from './guidance/index.js';
|
|
2
3
|
import { createToolsHasCommand } from './has/index.js';
|
|
3
4
|
import { createToolsInfoCommand } from './info/index.js';
|
|
4
5
|
import { createToolsInstallCommand } from './install/index.js';
|
|
@@ -13,6 +14,7 @@ export function createToolsCommand() {
|
|
|
13
14
|
cmd.addCommand(createToolsOutdatedCommand());
|
|
14
15
|
cmd.addCommand(createToolsInfoCommand());
|
|
15
16
|
cmd.addCommand(createToolsHasCommand());
|
|
17
|
+
cmd.addCommand(createToolsGuidanceCommand());
|
|
16
18
|
cmd.addCommand(createToolsUpdateCommand());
|
|
17
19
|
cmd.addCommand(createToolsMigrateCommand());
|
|
18
20
|
cmd.addCommand(createToolsRemoveCommand());
|
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
import { type WorkflowDispatchProviderValue } from './dispatch-matrix.js';
|
|
2
2
|
export { VALID_DISPATCH_MATRIX_TIERS, isCodexMaterializedRouteTarget, isWorkflowDispatchCandidateLadder, isWorkflowDispatchFallbackRoute, toWorkflowDispatchCandidateLadder, validateDispatchRouteTarget, type DispatchRouteTargetValidation, type WorkflowDispatchCandidate, type WorkflowDispatchCandidateLadder, type WorkflowDispatchFallbackRoute, type WorkflowDispatchLegacyMatrixCell, type WorkflowDispatchMatrixCell, type WorkflowDispatchMatrixTier, type WorkflowDispatchProviderValue, type WorkflowDispatchRoute, type WorkflowDispatchRouteEntry, type WorkflowDispatchRouteTarget, } from './dispatch-matrix.js';
|
|
3
|
+
/**
|
|
4
|
+
* The CLAUDE.md strategies `oat instructions sync` and
|
|
5
|
+
* `oat instructions validate` understand, and the values
|
|
6
|
+
* `instructions.claude.shims` accepts. `none` keeps no CLAUDE.md
|
|
7
|
+
* shims at all; the other three are the shim strategies.
|
|
8
|
+
*
|
|
9
|
+
* Declared here rather than in the instructions command so the config
|
|
10
|
+
* normalizer, the `oat config set` validator, and the commands share one list:
|
|
11
|
+
* a value the normalizer accepted but the commands did not understand would
|
|
12
|
+
* silently fall through to the built-in default.
|
|
13
|
+
*/
|
|
14
|
+
export declare const INSTRUCTION_SYNC_STRATEGIES: readonly ['none', 'pointer', 'symlink', 'copy'];
|
|
15
|
+
export type InstructionSyncStrategy = (typeof INSTRUCTION_SYNC_STRATEGIES)[number];
|
|
16
|
+
/**
|
|
17
|
+
* The strategy used when neither `--strategy` nor
|
|
18
|
+
* `instructions.claude.shims` names one.
|
|
19
|
+
*
|
|
20
|
+
* `none` (DR-260927-claude-md-shims-are-opt): Claude Code reads AGENTS.md
|
|
21
|
+
* itself through its `agents-md` plugin, which stands down for the whole
|
|
22
|
+
* project while any CLAUDE.md exists, so shims are opt-in.
|
|
23
|
+
*/
|
|
24
|
+
export declare const DEFAULT_INSTRUCTION_SYNC_STRATEGY: InstructionSyncStrategy;
|
|
25
|
+
export declare function isInstructionSyncStrategy(value: unknown): value is InstructionSyncStrategy;
|
|
3
26
|
export interface OatDocumentationConfig {
|
|
4
27
|
root?: string;
|
|
5
28
|
tooling?: string;
|
|
@@ -12,13 +35,28 @@ export interface OatDocumentationConfig {
|
|
|
12
35
|
* and order-preserving.
|
|
13
36
|
*/
|
|
14
37
|
excludes?: string[];
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* How `oat instructions sync` and `oat instructions validate` treat Claude
|
|
41
|
+
* Code's CLAUDE.md files (`instructions.claude.*`).
|
|
42
|
+
*/
|
|
43
|
+
export interface OatInstructionsClaudeConfig {
|
|
44
|
+
/**
|
|
45
|
+
* How `oat instructions sync` keeps a CLAUDE.md beside each AGENTS.md. The
|
|
46
|
+
* `--strategy` flag overrides it for one run; when both are absent the
|
|
47
|
+
* built-in `DEFAULT_INSTRUCTION_SYNC_STRATEGY` applies.
|
|
48
|
+
*/
|
|
49
|
+
shims?: InstructionSyncStrategy;
|
|
15
50
|
/**
|
|
16
51
|
* Repo-relative directories `oat instructions sync` and
|
|
17
52
|
* `oat instructions validate` must not treat as pointer sites, additive to
|
|
18
53
|
* the derived documentation content root they skip by default. Trimmed,
|
|
19
54
|
* de-duplicated, and order-preserving.
|
|
20
55
|
*/
|
|
21
|
-
|
|
56
|
+
excludes?: string[];
|
|
57
|
+
}
|
|
58
|
+
export interface OatInstructionsConfig {
|
|
59
|
+
claude?: OatInstructionsClaudeConfig;
|
|
22
60
|
}
|
|
23
61
|
export interface OatGitConfig {
|
|
24
62
|
defaultBranch?: string;
|
|
@@ -203,6 +241,7 @@ export interface OatConfig {
|
|
|
203
241
|
tools?: OatToolsConfig;
|
|
204
242
|
pjm?: OatPjmConfig;
|
|
205
243
|
documentation?: OatDocumentationConfig;
|
|
244
|
+
instructions?: OatInstructionsConfig;
|
|
206
245
|
localPaths?: string[];
|
|
207
246
|
autoReviewAtCheckpoints?: boolean;
|
|
208
247
|
workflow?: OatWorkflowConfig;
|
|
@@ -280,8 +319,8 @@ export declare function resolveDocumentationContentRoot(repoRoot: string, config
|
|
|
280
319
|
*/
|
|
281
320
|
export declare function readOatConfigForDocumentationExcludesRepair(repoRoot: string): Promise<OatConfig>;
|
|
282
321
|
/**
|
|
283
|
-
* Read the shared config with a malformed
|
|
284
|
-
*
|
|
322
|
+
* Read the shared config with a malformed `instructions.claude.excludes`
|
|
323
|
+
* dropped.
|
|
285
324
|
*
|
|
286
325
|
* The sibling of `readOatConfigForDocumentationExcludesRepair`, and it exists
|
|
287
326
|
* for the same reason: this key's own validation error now names
|
|
@@ -289,6 +328,13 @@ export declare function readOatConfigForDocumentationExcludesRepair(repoRoot: st
|
|
|
289
328
|
* very value the operator is trying to replace or remove.
|
|
290
329
|
*/
|
|
291
330
|
export declare function readOatConfigForInstructionPointerExcludesRepair(repoRoot: string): Promise<OatConfig>;
|
|
331
|
+
/**
|
|
332
|
+
* Read the shared config with a malformed `instructions.claude.shims`
|
|
333
|
+
* dropped, so the
|
|
334
|
+
* `oat config set`/`unset` repair its validation error names can load the file
|
|
335
|
+
* it is repairing.
|
|
336
|
+
*/
|
|
337
|
+
export declare function readOatConfigForInstructionSyncStrategyRepair(repoRoot: string): Promise<OatConfig>;
|
|
292
338
|
export declare function readOatLocalConfig(repoRoot: string): Promise<OatLocalConfig>;
|
|
293
339
|
/**
|
|
294
340
|
* Writes the shared config, preserving the existing file's key order and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oat-config.d.ts","sourceRoot":"","sources":["../../src/config/oat-config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oat-config.d.ts","sourceRoot":"","sources":["../../src/config/oat-config.ts"],"names":[],"mappings":"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"}
|