@aipper/aiws 0.0.44 → 0.0.45
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/dist/cli.js +114 -0
- package/dist/cli.js.map +1 -1
- package/dist/codex-prompts.d.ts +17 -0
- package/dist/codex-prompts.js +49 -0
- package/dist/codex-prompts.js.map +1 -0
- package/dist/codex-skills.d.ts +17 -0
- package/dist/codex-skills.js +75 -0
- package/dist/codex-skills.js.map +1 -0
- package/dist/commands/codex-install-prompts.d.ts +4 -0
- package/dist/commands/codex-install-prompts.js +68 -0
- package/dist/commands/codex-install-prompts.js.map +1 -0
- package/dist/commands/codex-install-skills.d.ts +4 -0
- package/dist/commands/codex-install-skills.js +74 -0
- package/dist/commands/codex-install-skills.js.map +1 -0
- package/dist/commands/codex-status-prompts.d.ts +4 -0
- package/dist/commands/codex-status-prompts.js +44 -0
- package/dist/commands/codex-status-prompts.js.map +1 -0
- package/dist/commands/codex-status-skills.d.ts +4 -0
- package/dist/commands/codex-status-skills.js +54 -0
- package/dist/commands/codex-status-skills.js.map +1 -0
- package/dist/commands/codex-uninstall-prompts.d.ts +4 -0
- package/dist/commands/codex-uninstall-prompts.js +51 -0
- package/dist/commands/codex-uninstall-prompts.js.map +1 -0
- package/dist/commands/codex-uninstall-skills.d.ts +4 -0
- package/dist/commands/codex-uninstall-skills.js +59 -0
- package/dist/commands/codex-uninstall-skills.js.map +1 -0
- package/dist/commands/memory.d.ts +35 -0
- package/dist/commands/memory.js +239 -0
- package/dist/commands/memory.js.map +1 -0
- package/dist/hooks/deploy-claude.d.ts +13 -0
- package/dist/hooks/deploy-claude.js +67 -0
- package/dist/hooks/deploy-claude.js.map +1 -0
- package/dist/memory-bank/disclosure.d.ts +24 -0
- package/dist/memory-bank/disclosure.js +143 -0
- package/dist/memory-bank/disclosure.js.map +1 -0
- package/dist/memory-bank/index.d.ts +24 -0
- package/dist/memory-bank/index.js +137 -0
- package/dist/memory-bank/index.js.map +1 -0
- package/dist/memory-bank/link.d.ts +21 -0
- package/dist/memory-bank/link.js +113 -0
- package/dist/memory-bank/link.js.map +1 -0
- package/dist/memory-bank/search.d.ts +6 -0
- package/dist/memory-bank/search.js +88 -0
- package/dist/memory-bank/search.js.map +1 -0
- package/dist/memory-bank/seed.d.ts +23 -0
- package/dist/memory-bank/seed.js +164 -0
- package/dist/memory-bank/seed.js.map +1 -0
- package/dist/memory-bank/store.d.ts +24 -0
- package/dist/memory-bank/store.js +193 -0
- package/dist/memory-bank/store.js.map +1 -0
- package/dist/memory-bank/types.d.ts +45 -0
- package/dist/memory-bank/types.js +2 -0
- package/dist/memory-bank/types.js.map +1 -0
- package/dist/memory-bank/uri.d.ts +16 -0
- package/dist/memory-bank/uri.js +52 -0
- package/dist/memory-bank/uri.js.map +1 -0
- package/dist/workspace.d.ts +1 -0
- package/dist/workspace.js +13 -0
- package/dist/workspace.js.map +1 -1
- package/package.json +4 -2
package/dist/cli.js
CHANGED
|
@@ -24,6 +24,7 @@ import { opencodeSuperviseCommand } from "./commands/opencode-supervise.js";
|
|
|
24
24
|
import { opencodeStatusCommand } from "./commands/opencode-status.js";
|
|
25
25
|
import { retroRequireCommand } from "./commands/retro-require.js";
|
|
26
26
|
import { dashboardServeCommand } from "./commands/dashboard.js";
|
|
27
|
+
import { memoryReadCommand, memoryWriteCommand, memorySearchCommand, memoryListCommand, memoryLinkCommand, memoryBootCommand, memorySeedCommand, memoryRebuildIndexCommand, } from "./commands/memory.js";
|
|
27
28
|
import { changeArchiveCommand, changeEvidenceCommand, changeFinishCommand, changeListCommand, changeNewCommand, changeNextCommand, changeStateCommand, changeStartCommand, changeStatusCommand, changeSyncCommand, changeTemplatesInitCommand, changeTemplatesWhichCommand, changeValidateCommand, metricsSummaryCommand, } from "./commands/change.js";
|
|
28
29
|
export async function cliMain(argv) {
|
|
29
30
|
const args = argv.slice();
|
|
@@ -47,6 +48,10 @@ export async function cliMain(argv) {
|
|
|
47
48
|
printMetricsHelp();
|
|
48
49
|
return 0;
|
|
49
50
|
}
|
|
51
|
+
if (args[0] === "memory" && (args.includes("-h") || args.includes("--help"))) {
|
|
52
|
+
printMemoryHelp();
|
|
53
|
+
return 0;
|
|
54
|
+
}
|
|
50
55
|
if (args[0] === "delegation" && (args.includes("-h") || args.includes("--help"))) {
|
|
51
56
|
printDelegationHelp();
|
|
52
57
|
return 0;
|
|
@@ -478,6 +483,91 @@ export async function cliMain(argv) {
|
|
|
478
483
|
});
|
|
479
484
|
}
|
|
480
485
|
}
|
|
486
|
+
case "memory": {
|
|
487
|
+
const sub = args.shift();
|
|
488
|
+
if (!sub || sub === "help" || sub === "--help" || sub === "-h") {
|
|
489
|
+
printMemoryHelp();
|
|
490
|
+
return 0;
|
|
491
|
+
}
|
|
492
|
+
switch (sub) {
|
|
493
|
+
case "read": {
|
|
494
|
+
const { positionals } = parseArgs(args, {});
|
|
495
|
+
if (positionals.length < 1)
|
|
496
|
+
throw new UserError("memory read requires <uri>", { details: "Usage: aiws memory read <uri>" });
|
|
497
|
+
await memoryReadCommand({ uri: positionals[0] });
|
|
498
|
+
return 0;
|
|
499
|
+
}
|
|
500
|
+
case "write": {
|
|
501
|
+
const { positionals, options } = parseArgs(args, {
|
|
502
|
+
title: { type: "string" },
|
|
503
|
+
tags: { type: "string" },
|
|
504
|
+
disclosure: { type: "string" },
|
|
505
|
+
});
|
|
506
|
+
if (positionals.length < 2)
|
|
507
|
+
throw new UserError("memory write requires <uri> <text>", { details: "Usage: aiws memory write <uri> <text> [--title <title>] [--tags <tags>] [--disclosure <level>]" });
|
|
508
|
+
await memoryWriteCommand({ uri: positionals[0], text: positionals.slice(1).join(" "), title: options.title, tags: options.tags, disclosure: options.disclosure });
|
|
509
|
+
return 0;
|
|
510
|
+
}
|
|
511
|
+
case "search": {
|
|
512
|
+
const { positionals } = parseArgs(args, {});
|
|
513
|
+
if (positionals.length < 1)
|
|
514
|
+
throw new UserError("memory search requires <query>", { details: "Usage: aiws memory search <query>" });
|
|
515
|
+
await memorySearchCommand({ query: positionals.join(" ") });
|
|
516
|
+
return 0;
|
|
517
|
+
}
|
|
518
|
+
case "list": {
|
|
519
|
+
const { positionals, options } = parseArgs(args, { domain: { type: "string" } });
|
|
520
|
+
await memoryListCommand({ domain: positionals[0] || options.domain });
|
|
521
|
+
return 0;
|
|
522
|
+
}
|
|
523
|
+
case "link": {
|
|
524
|
+
const linkSub = args.shift();
|
|
525
|
+
if (!linkSub || linkSub === "help")
|
|
526
|
+
throw new UserError("memory link requires add|list|rm", { details: "Usage: aiws memory link add|list|rm ..." });
|
|
527
|
+
const { positionals } = parseArgs(args, {});
|
|
528
|
+
if (linkSub === "add") {
|
|
529
|
+
if (positionals.length < 2)
|
|
530
|
+
throw new UserError("memory link add requires <from> <to>", { details: "Usage: aiws memory link add <from-uri> <to-uri>" });
|
|
531
|
+
await memoryLinkCommand({ action: "add", from: positionals[0], to: positionals[1] });
|
|
532
|
+
}
|
|
533
|
+
else if (linkSub === "list") {
|
|
534
|
+
if (positionals.length < 1)
|
|
535
|
+
throw new UserError("memory link list requires <uri>", { details: "Usage: aiws memory link list <uri>" });
|
|
536
|
+
await memoryLinkCommand({ action: "list", uri: positionals[0] });
|
|
537
|
+
}
|
|
538
|
+
else if (linkSub === "rm") {
|
|
539
|
+
if (positionals.length < 2)
|
|
540
|
+
throw new UserError("memory link rm requires <from> <to>", { details: "Usage: aiws memory link rm <from-uri> <to-uri>" });
|
|
541
|
+
await memoryLinkCommand({ action: "rm", from: positionals[0], to: positionals[1] });
|
|
542
|
+
}
|
|
543
|
+
else {
|
|
544
|
+
throw new UserError(`Unknown memory link subcommand: ${linkSub}`, { details: "Use `aiws memory --help` to see available subcommands." });
|
|
545
|
+
}
|
|
546
|
+
return 0;
|
|
547
|
+
}
|
|
548
|
+
case "seed": {
|
|
549
|
+
const { options } = parseArgs(args, {
|
|
550
|
+
"dry-run": { type: "boolean" },
|
|
551
|
+
force: { type: "boolean" },
|
|
552
|
+
});
|
|
553
|
+
await memorySeedCommand({
|
|
554
|
+
"dry-run": options["dry-run"] === true,
|
|
555
|
+
force: options.force === true,
|
|
556
|
+
});
|
|
557
|
+
return 0;
|
|
558
|
+
}
|
|
559
|
+
case "rebuild-index": {
|
|
560
|
+
await memoryRebuildIndexCommand({});
|
|
561
|
+
return 0;
|
|
562
|
+
}
|
|
563
|
+
case "boot": {
|
|
564
|
+
await memoryBootCommand({});
|
|
565
|
+
return 0;
|
|
566
|
+
}
|
|
567
|
+
default:
|
|
568
|
+
throw new UserError(`Unknown memory subcommand: ${sub}`, { details: "Use `aiws memory --help` to see available subcommands." });
|
|
569
|
+
}
|
|
570
|
+
}
|
|
481
571
|
default:
|
|
482
572
|
throw new UserError(`Unknown command: ${cmd}`, { details: "Use --help to see available commands." });
|
|
483
573
|
}
|
|
@@ -507,6 +597,7 @@ Usage:
|
|
|
507
597
|
aiws dashboard <subcommand>
|
|
508
598
|
aiws opencode <subcommand>
|
|
509
599
|
aiws hooks <subcommand>
|
|
600
|
+
aiws memory <subcommand>
|
|
510
601
|
|
|
511
602
|
Options:
|
|
512
603
|
--template <id> Template id (default: workspace)
|
|
@@ -610,6 +701,29 @@ Notes:
|
|
|
610
701
|
- Exit code 0 if JSONL exists with entries, 1 otherwise.
|
|
611
702
|
`);
|
|
612
703
|
}
|
|
704
|
+
function printMemoryHelp() {
|
|
705
|
+
console.log(`aiws memory
|
|
706
|
+
|
|
707
|
+
Usage:
|
|
708
|
+
aiws memory read <uri>
|
|
709
|
+
aiws memory write <uri> <text> [--title <title>] [--tags <tags>] [--disclosure <level>]
|
|
710
|
+
aiws memory search <query>
|
|
711
|
+
aiws memory list [domain]
|
|
712
|
+
aiws memory link add <from-uri> <to-uri>
|
|
713
|
+
aiws memory link list <uri>
|
|
714
|
+
aiws memory link rm <from-uri> <to-uri>
|
|
715
|
+
aiws memory seed [--dry-run] [--force]
|
|
716
|
+
aiws memory rebuild-index
|
|
717
|
+
aiws memory boot
|
|
718
|
+
|
|
719
|
+
Notes:
|
|
720
|
+
- URI format: domain://path (e.g. core://architecture)
|
|
721
|
+
- Storage: .aiws/memory-bank/ as MD files + YAML index
|
|
722
|
+
- seed auto-generates memories from truth files (AI_PROJECT.md, etc.) and artifacts (.aiws/goals/, .aiws/plan/)
|
|
723
|
+
- rebuild-index scans all MD files and rebuilds .index.yaml
|
|
724
|
+
- boot lists memories with disclosure: boot (session startup context)
|
|
725
|
+
`);
|
|
726
|
+
}
|
|
613
727
|
function parseArgs(argv, schema) {
|
|
614
728
|
const positionals = [];
|
|
615
729
|
const options = {};
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare function resolveCodexPromptsDir(dirOption?: string): string;
|
|
2
|
+
export declare function codexBackupStamp(): string;
|
|
3
|
+
export declare function codexBackupPathFor(promptsDir: string, filename: string, stamp?: string): string;
|
|
4
|
+
export interface TemplateCodexPrompt {
|
|
5
|
+
rel: string;
|
|
6
|
+
filename: string;
|
|
7
|
+
name: string;
|
|
8
|
+
blockId: string;
|
|
9
|
+
srcAbs: string;
|
|
10
|
+
templateText: string;
|
|
11
|
+
innerText: string;
|
|
12
|
+
}
|
|
13
|
+
export interface TemplateRef {
|
|
14
|
+
templateId: string;
|
|
15
|
+
templateDir: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function listTemplateCodexPrompts(tpl: TemplateRef): Promise<TemplateCodexPrompt[]>;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import os from "node:os";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { listFilesRecursive, readText } from "./fs.js";
|
|
4
|
+
import { normalizeNewlines } from "./hash.js";
|
|
5
|
+
import { extractTemplateBlock } from "./managed-blocks.js";
|
|
6
|
+
import { UserError } from "./errors.js";
|
|
7
|
+
export function resolveCodexPromptsDir(dirOption) {
|
|
8
|
+
if (dirOption)
|
|
9
|
+
return path.resolve(dirOption);
|
|
10
|
+
const envHome = String(process.env.CODEX_HOME || "").trim();
|
|
11
|
+
if (envHome)
|
|
12
|
+
return path.join(path.resolve(envHome), "prompts");
|
|
13
|
+
return path.join(os.homedir(), ".codex", "prompts");
|
|
14
|
+
}
|
|
15
|
+
function timestamp() {
|
|
16
|
+
const d = new Date();
|
|
17
|
+
return d.toISOString().replace(/[-:]/g, "").replace(/\.\d{3}Z$/, "Z").replace("T", "-");
|
|
18
|
+
}
|
|
19
|
+
export function codexBackupStamp() {
|
|
20
|
+
return timestamp();
|
|
21
|
+
}
|
|
22
|
+
export function codexBackupPathFor(promptsDir, filename, stamp) {
|
|
23
|
+
return path.join(promptsDir, ".aiws", "backups", "codex-prompts", stamp || timestamp(), filename);
|
|
24
|
+
}
|
|
25
|
+
export async function listTemplateCodexPrompts(tpl) {
|
|
26
|
+
const relFiles = await listFilesRecursive(tpl.templateDir, ".codex/prompts");
|
|
27
|
+
const promptFiles = relFiles
|
|
28
|
+
.filter((rel) => rel.startsWith(".codex/prompts/"))
|
|
29
|
+
.filter((rel) => rel.split("/").length === 3)
|
|
30
|
+
.filter((rel) => rel.toLowerCase().endsWith(".md"));
|
|
31
|
+
if (promptFiles.length === 0) {
|
|
32
|
+
throw new UserError(`Template has no Codex prompt files: ${tpl.templateId}`, {
|
|
33
|
+
details: `Missing under: ${path.join(tpl.templateDir, ".codex", "prompts")}`,
|
|
34
|
+
exitCode: 1,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
const out = [];
|
|
38
|
+
for (const rel of promptFiles) {
|
|
39
|
+
const filename = path.posix.basename(rel);
|
|
40
|
+
const name = filename.replace(/\.md$/i, "");
|
|
41
|
+
const blockId = `codex:${name}`;
|
|
42
|
+
const srcAbs = path.join(tpl.templateDir, ...rel.split("/"));
|
|
43
|
+
const templateText = normalizeNewlines(await readText(srcAbs));
|
|
44
|
+
const { innerText } = extractTemplateBlock(templateText, blockId);
|
|
45
|
+
out.push({ rel, filename, name, blockId, srcAbs, templateText, innerText });
|
|
46
|
+
}
|
|
47
|
+
return out;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=codex-prompts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-prompts.js","sourceRoot":"","sources":["../src/codex-prompts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare function resolveCodexSkillsDir(dirOption?: string): string;
|
|
2
|
+
export declare function codexSkillsBackupStamp(): string;
|
|
3
|
+
export declare function codexSkillsBackupPathFor(skillsDir: string, skillName: string, stamp?: string): string;
|
|
4
|
+
export interface TemplateCodexSkill {
|
|
5
|
+
rel: string;
|
|
6
|
+
skillName: string;
|
|
7
|
+
blockId: string;
|
|
8
|
+
srcAbs: string;
|
|
9
|
+
templateText: string;
|
|
10
|
+
managedText: string;
|
|
11
|
+
innerText: string;
|
|
12
|
+
}
|
|
13
|
+
export interface TemplateRef {
|
|
14
|
+
templateId: string;
|
|
15
|
+
templateDir: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function listTemplateCodexSkills(tpl: TemplateRef): Promise<TemplateCodexSkill[]>;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import os from "node:os";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { listFilesRecursive, readText } from "./fs.js";
|
|
4
|
+
import { normalizeNewlines } from "./hash.js";
|
|
5
|
+
import { UserError } from "./errors.js";
|
|
6
|
+
export function resolveCodexSkillsDir(dirOption) {
|
|
7
|
+
if (dirOption)
|
|
8
|
+
return path.resolve(dirOption);
|
|
9
|
+
const envHome = String(process.env.CODEX_HOME || "").trim();
|
|
10
|
+
if (envHome)
|
|
11
|
+
return path.join(path.resolve(envHome), ".agents", "skills");
|
|
12
|
+
return path.join(os.homedir(), ".agents", "skills");
|
|
13
|
+
}
|
|
14
|
+
function timestamp() {
|
|
15
|
+
const d = new Date();
|
|
16
|
+
return d.toISOString().replace(/[-:]/g, "").replace(/\.\d{3}Z$/, "Z").replace("T", "-");
|
|
17
|
+
}
|
|
18
|
+
export function codexSkillsBackupStamp() {
|
|
19
|
+
return timestamp();
|
|
20
|
+
}
|
|
21
|
+
export function codexSkillsBackupPathFor(skillsDir, skillName, stamp) {
|
|
22
|
+
return path.join(skillsDir, ".aiws", "backups", "codex-skills", stamp || timestamp(), skillName, "SKILL.md");
|
|
23
|
+
}
|
|
24
|
+
function splitYamlFrontMatter(text) {
|
|
25
|
+
const t = normalizeNewlines(text);
|
|
26
|
+
const lines = t.split("\n");
|
|
27
|
+
if ((lines[0] ?? "") !== "---") {
|
|
28
|
+
throw new UserError("Invalid SKILL.md: missing YAML front matter at top", { exitCode: 1 });
|
|
29
|
+
}
|
|
30
|
+
let end = -1;
|
|
31
|
+
for (let i = 1; i < lines.length; i++) {
|
|
32
|
+
if ((lines[i] ?? "") === "---") {
|
|
33
|
+
end = i;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
if (end === -1) {
|
|
38
|
+
throw new UserError("Invalid SKILL.md: YAML front matter not closed", { exitCode: 1 });
|
|
39
|
+
}
|
|
40
|
+
const frontMatter = `${lines.slice(0, end + 1).join("\n")}\n`;
|
|
41
|
+
const body = lines.slice(end + 1).join("\n");
|
|
42
|
+
return { frontMatter, body };
|
|
43
|
+
}
|
|
44
|
+
export async function listTemplateCodexSkills(tpl) {
|
|
45
|
+
const relFiles = await listFilesRecursive(tpl.templateDir, ".agents/skills");
|
|
46
|
+
const skillFiles = relFiles
|
|
47
|
+
.filter((rel) => rel.startsWith(".agents/skills/"))
|
|
48
|
+
.filter((rel) => rel.split("/").length === 4)
|
|
49
|
+
.filter((rel) => rel.toLowerCase().endsWith("/skill.md"));
|
|
50
|
+
if (skillFiles.length === 0) {
|
|
51
|
+
throw new UserError(`Template has no Codex skills: ${tpl.templateId}`, {
|
|
52
|
+
details: `Missing under: ${path.join(tpl.templateDir, ".agents", "skills")}`,
|
|
53
|
+
exitCode: 1,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
const out = [];
|
|
57
|
+
for (const rel of skillFiles) {
|
|
58
|
+
const parts = rel.split("/");
|
|
59
|
+
const skillName = parts[2] ?? "";
|
|
60
|
+
if (!skillName)
|
|
61
|
+
continue;
|
|
62
|
+
const blockId = `codex-skill:${skillName}`;
|
|
63
|
+
const srcAbs = path.join(tpl.templateDir, ...rel.split("/"));
|
|
64
|
+
const templateText = normalizeNewlines(await readText(srcAbs));
|
|
65
|
+
const { frontMatter, body } = splitYamlFrontMatter(templateText);
|
|
66
|
+
const innerTextRaw = normalizeNewlines(body);
|
|
67
|
+
const innerText = innerTextRaw.endsWith("\n") ? innerTextRaw : `${innerTextRaw}\n`;
|
|
68
|
+
const begin = `<!-- AIWS_MANAGED_BEGIN:${blockId} -->`;
|
|
69
|
+
const end = `<!-- AIWS_MANAGED_END:${blockId} -->`;
|
|
70
|
+
const managedText = `${frontMatter}\n${begin}\n${innerText}${end}\n`;
|
|
71
|
+
out.push({ rel, skillName, blockId, srcAbs, templateText, managedText, innerText });
|
|
72
|
+
}
|
|
73
|
+
return out;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=codex-skills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-skills.js","sourceRoot":"","sources":["../src/codex-skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { loadTemplate } from "../spec.js";
|
|
3
|
+
import { UserError } from "../errors.js";
|
|
4
|
+
import { copyFile, ensureDir, pathExists, readText, writeText } from "../fs.js";
|
|
5
|
+
import { normalizeNewlines } from "../hash.js";
|
|
6
|
+
import { findManagedBlock, upsertManagedBlock } from "../managed-blocks.js";
|
|
7
|
+
import { codexBackupPathFor, codexBackupStamp, listTemplateCodexPrompts, resolveCodexPromptsDir } from "../codex-prompts.js";
|
|
8
|
+
/**
|
|
9
|
+
* @param {{ templateId: string, promptsDir?: string, force?: boolean, dryRun?: boolean }} options
|
|
10
|
+
*/
|
|
11
|
+
export async function codexInstallPromptsCommand(options) {
|
|
12
|
+
const templateId = String(options.templateId || "workspace");
|
|
13
|
+
const tpl = await loadTemplate(templateId);
|
|
14
|
+
const promptsDir = resolveCodexPromptsDir(options.promptsDir);
|
|
15
|
+
const dryRun = options.dryRun === true;
|
|
16
|
+
if (!dryRun)
|
|
17
|
+
await ensureDir(promptsDir);
|
|
18
|
+
const promptFiles = await listTemplateCodexPrompts(tpl);
|
|
19
|
+
/** @type {string[]} */
|
|
20
|
+
const created = [];
|
|
21
|
+
/** @type {string[]} */
|
|
22
|
+
const updated = [];
|
|
23
|
+
/** @type {string[]} */
|
|
24
|
+
const overwritten = [];
|
|
25
|
+
let backupStamp = "";
|
|
26
|
+
for (const pf of promptFiles) {
|
|
27
|
+
const { filename, blockId, templateText, innerText } = pf;
|
|
28
|
+
const destAbs = path.join(promptsDir, filename);
|
|
29
|
+
if (!(await pathExists(destAbs))) {
|
|
30
|
+
if (!dryRun)
|
|
31
|
+
await writeText(destAbs, templateText);
|
|
32
|
+
created.push(filename);
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
const currentText = normalizeNewlines(await readText(destAbs));
|
|
36
|
+
const existingBlock = findManagedBlock(currentText, blockId);
|
|
37
|
+
if (!existingBlock) {
|
|
38
|
+
if (!options.force) {
|
|
39
|
+
throw new UserError("Codex prompt file exists and is not AIWS-managed; refusing to overwrite.", {
|
|
40
|
+
details: `File: ${destAbs}\nHint: re-run with --force to overwrite (a backup will be created).`,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
if (!backupStamp)
|
|
44
|
+
backupStamp = codexBackupStamp();
|
|
45
|
+
const backup = codexBackupPathFor(promptsDir, filename, backupStamp);
|
|
46
|
+
if (!dryRun) {
|
|
47
|
+
await copyFile(destAbs, backup);
|
|
48
|
+
await writeText(destAbs, templateText);
|
|
49
|
+
}
|
|
50
|
+
overwritten.push(filename);
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
const res = upsertManagedBlock(currentText, blockId, innerText, { insertIfMissing: false });
|
|
54
|
+
if (res.changed) {
|
|
55
|
+
if (!dryRun)
|
|
56
|
+
await writeText(destAbs, res.nextText);
|
|
57
|
+
updated.push(filename);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
console.log(`${dryRun ? "✓ (dry-run)" : "✓"} aiws codex install-prompts: ${promptsDir}`);
|
|
61
|
+
if (created.length > 0)
|
|
62
|
+
console.log(`created: ${created.join(", ")}`);
|
|
63
|
+
if (updated.length > 0)
|
|
64
|
+
console.log(`updated: ${updated.join(", ")}`);
|
|
65
|
+
if (overwritten.length > 0)
|
|
66
|
+
console.log(`overwritten: ${overwritten.join(", ")}`);
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=codex-install-prompts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-install-prompts.js","sourceRoot":"","sources":["../../src/commands/codex-install-prompts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import fs from "node:fs/promises";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { loadTemplate } from "../spec.js";
|
|
4
|
+
import { UserError } from "../errors.js";
|
|
5
|
+
import { copyFile, ensureDir, pathExists, readText, writeText } from "../fs.js";
|
|
6
|
+
import { normalizeNewlines } from "../hash.js";
|
|
7
|
+
import { findManagedBlock, upsertManagedBlock } from "../managed-blocks.js";
|
|
8
|
+
import { codexSkillsBackupPathFor, codexSkillsBackupStamp, listTemplateCodexSkills, resolveCodexSkillsDir } from "../codex-skills.js";
|
|
9
|
+
/**
|
|
10
|
+
* @param {{ templateId: string, skillsDir?: string, force?: boolean, dryRun?: boolean }} options
|
|
11
|
+
*/
|
|
12
|
+
export async function codexInstallSkillsCommand(options) {
|
|
13
|
+
const templateId = String(options.templateId || "workspace");
|
|
14
|
+
const tpl = await loadTemplate(templateId);
|
|
15
|
+
const skillsDir = resolveCodexSkillsDir(options.skillsDir);
|
|
16
|
+
const dryRun = options.dryRun === true;
|
|
17
|
+
if (!dryRun)
|
|
18
|
+
await ensureDir(skillsDir);
|
|
19
|
+
const skillsDirIsSymlink = await fs
|
|
20
|
+
.lstat(skillsDir)
|
|
21
|
+
.then((st) => st.isSymbolicLink())
|
|
22
|
+
.catch(() => false);
|
|
23
|
+
const skillsDirReal = skillsDirIsSymlink ? await fs.realpath(skillsDir).catch(() => skillsDir) : skillsDir;
|
|
24
|
+
const skillFiles = await listTemplateCodexSkills(tpl);
|
|
25
|
+
/** @type {string[]} */
|
|
26
|
+
const created = [];
|
|
27
|
+
/** @type {string[]} */
|
|
28
|
+
const updated = [];
|
|
29
|
+
/** @type {string[]} */
|
|
30
|
+
const overwritten = [];
|
|
31
|
+
let backupStamp = "";
|
|
32
|
+
for (const sf of skillFiles) {
|
|
33
|
+
const destAbs = path.join(skillsDir, sf.skillName, "SKILL.md");
|
|
34
|
+
if (!(await pathExists(destAbs))) {
|
|
35
|
+
if (!dryRun)
|
|
36
|
+
await writeText(destAbs, sf.managedText);
|
|
37
|
+
created.push(sf.skillName);
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
const currentText = normalizeNewlines(await readText(destAbs));
|
|
41
|
+
const existingBlock = findManagedBlock(currentText, sf.blockId);
|
|
42
|
+
if (!existingBlock) {
|
|
43
|
+
if (!options.force) {
|
|
44
|
+
throw new UserError("Codex skill exists and is not AIWS-managed; refusing to overwrite.", {
|
|
45
|
+
details: `File: ${destAbs}\nHint: re-run with --force to overwrite (a backup will be created).`,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
if (!backupStamp)
|
|
49
|
+
backupStamp = codexSkillsBackupStamp();
|
|
50
|
+
const backup = codexSkillsBackupPathFor(skillsDir, sf.skillName, backupStamp);
|
|
51
|
+
if (!dryRun) {
|
|
52
|
+
await copyFile(destAbs, backup);
|
|
53
|
+
await writeText(destAbs, sf.managedText);
|
|
54
|
+
}
|
|
55
|
+
overwritten.push(sf.skillName);
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
const res = upsertManagedBlock(currentText, sf.blockId, sf.innerText, { insertIfMissing: false });
|
|
59
|
+
if (res.changed) {
|
|
60
|
+
if (!dryRun)
|
|
61
|
+
await writeText(destAbs, res.nextText);
|
|
62
|
+
updated.push(sf.skillName);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
const header = skillsDirIsSymlink && skillsDirReal !== skillsDir ? `${skillsDir} -> ${skillsDirReal}` : skillsDir;
|
|
66
|
+
console.log(`${dryRun ? "✓ (dry-run)" : "✓"} aiws codex install-skills: ${header}`);
|
|
67
|
+
if (created.length > 0)
|
|
68
|
+
console.log(`created: ${created.join(", ")}`);
|
|
69
|
+
if (updated.length > 0)
|
|
70
|
+
console.log(`updated: ${updated.join(", ")}`);
|
|
71
|
+
if (overwritten.length > 0)
|
|
72
|
+
console.log(`overwritten: ${overwritten.join(", ")}`);
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=codex-install-skills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-install-skills.js","sourceRoot":"","sources":["../../src/commands/codex-install-skills.ts"],"names":[],"mappings":"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"}
|