@madebywild/agent-harness-framework 0.9.1
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/adapters/commander.d.ts +14 -0
- package/dist/cli/adapters/commander.d.ts.map +1 -0
- package/dist/cli/adapters/commander.js +348 -0
- package/dist/cli/adapters/commander.js.map +1 -0
- package/dist/cli/adapters/interactive.d.ts +11 -0
- package/dist/cli/adapters/interactive.d.ts.map +1 -0
- package/dist/cli/adapters/interactive.js +375 -0
- package/dist/cli/adapters/interactive.js.map +1 -0
- package/dist/cli/command-registry.d.ts +27 -0
- package/dist/cli/command-registry.d.ts.map +1 -0
- package/dist/cli/command-registry.js +470 -0
- package/dist/cli/command-registry.js.map +1 -0
- package/dist/cli/contracts.d.ts +122 -0
- package/dist/cli/contracts.d.ts.map +1 -0
- package/dist/cli/contracts.js +2 -0
- package/dist/cli/contracts.js.map +1 -0
- package/dist/cli/handlers/apply.d.ts +3 -0
- package/dist/cli/handlers/apply.d.ts.map +1 -0
- package/dist/cli/handlers/apply.js +17 -0
- package/dist/cli/handlers/apply.js.map +1 -0
- package/dist/cli/handlers/doctor.d.ts +3 -0
- package/dist/cli/handlers/doctor.d.ts.map +1 -0
- package/dist/cli/handlers/doctor.js +16 -0
- package/dist/cli/handlers/doctor.js.map +1 -0
- package/dist/cli/handlers/entities.d.ts +22 -0
- package/dist/cli/handlers/entities.d.ts.map +1 -0
- package/dist/cli/handlers/entities.js +92 -0
- package/dist/cli/handlers/entities.js.map +1 -0
- package/dist/cli/handlers/init.d.ts +5 -0
- package/dist/cli/handlers/init.d.ts.map +1 -0
- package/dist/cli/handlers/init.js +17 -0
- package/dist/cli/handlers/init.js.map +1 -0
- package/dist/cli/handlers/migrate.d.ts +6 -0
- package/dist/cli/handlers/migrate.d.ts.map +1 -0
- package/dist/cli/handlers/migrate.js +22 -0
- package/dist/cli/handlers/migrate.js.map +1 -0
- package/dist/cli/handlers/plan.d.ts +5 -0
- package/dist/cli/handlers/plan.d.ts.map +1 -0
- package/dist/cli/handlers/plan.js +18 -0
- package/dist/cli/handlers/plan.js.map +1 -0
- package/dist/cli/handlers/provider.d.ts +8 -0
- package/dist/cli/handlers/provider.d.ts.map +1 -0
- package/dist/cli/handlers/provider.js +37 -0
- package/dist/cli/handlers/provider.js.map +1 -0
- package/dist/cli/handlers/registry.d.ts +27 -0
- package/dist/cli/handlers/registry.d.ts.map +1 -0
- package/dist/cli/handlers/registry.js +133 -0
- package/dist/cli/handlers/registry.js.map +1 -0
- package/dist/cli/handlers/validate.d.ts +3 -0
- package/dist/cli/handlers/validate.d.ts.map +1 -0
- package/dist/cli/handlers/validate.js +16 -0
- package/dist/cli/handlers/validate.js.map +1 -0
- package/dist/cli/handlers/watch.d.ts +6 -0
- package/dist/cli/handlers/watch.d.ts.map +1 -0
- package/dist/cli/handlers/watch.js +46 -0
- package/dist/cli/handlers/watch.js.map +1 -0
- package/dist/cli/main.d.ts +6 -0
- package/dist/cli/main.d.ts.map +1 -0
- package/dist/cli/main.js +90 -0
- package/dist/cli/main.js.map +1 -0
- package/dist/cli/renderers/json.d.ts +10 -0
- package/dist/cli/renderers/json.d.ts.map +1 -0
- package/dist/cli/renderers/json.js +17 -0
- package/dist/cli/renderers/json.js.map +1 -0
- package/dist/cli/renderers/text.d.ts +3 -0
- package/dist/cli/renderers/text.d.ts.map +1 -0
- package/dist/cli/renderers/text.js +155 -0
- package/dist/cli/renderers/text.js.map +1 -0
- package/dist/cli/utils/runtime.d.ts +26 -0
- package/dist/cli/utils/runtime.d.ts.map +1 -0
- package/dist/cli/utils/runtime.js +158 -0
- package/dist/cli/utils/runtime.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +14 -0
- package/dist/cli.js.map +1 -0
- package/dist/engine/entities.d.ts +33 -0
- package/dist/engine/entities.d.ts.map +1 -0
- package/dist/engine/entities.js +461 -0
- package/dist/engine/entities.js.map +1 -0
- package/dist/engine/state.d.ts +19 -0
- package/dist/engine/state.d.ts.map +1 -0
- package/dist/engine/state.js +70 -0
- package/dist/engine/state.js.map +1 -0
- package/dist/engine/utils.d.ts +28 -0
- package/dist/engine/utils.d.ts.map +1 -0
- package/dist/engine/utils.js +157 -0
- package/dist/engine/utils.js.map +1 -0
- package/dist/engine.d.ts +59 -0
- package/dist/engine.d.ts.map +1 -0
- package/dist/engine.js +398 -0
- package/dist/engine.js.map +1 -0
- package/dist/entity-registries.d.ts +40 -0
- package/dist/entity-registries.d.ts.map +1 -0
- package/dist/entity-registries.js +257 -0
- package/dist/entity-registries.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -0
- package/dist/loader.d.ts +6 -0
- package/dist/loader.d.ts.map +1 -0
- package/dist/loader.js +552 -0
- package/dist/loader.js.map +1 -0
- package/dist/paths.d.ts +23 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +40 -0
- package/dist/paths.js.map +1 -0
- package/dist/planner.d.ts +5 -0
- package/dist/planner.d.ts.map +1 -0
- package/dist/planner.js +316 -0
- package/dist/planner.js.map +1 -0
- package/dist/provider-adapters/claude.d.ts +4 -0
- package/dist/provider-adapters/claude.d.ts.map +1 -0
- package/dist/provider-adapters/claude.js +36 -0
- package/dist/provider-adapters/claude.js.map +1 -0
- package/dist/provider-adapters/codex.d.ts +4 -0
- package/dist/provider-adapters/codex.d.ts.map +1 -0
- package/dist/provider-adapters/codex.js +93 -0
- package/dist/provider-adapters/codex.js.map +1 -0
- package/dist/provider-adapters/constants.d.ts +21 -0
- package/dist/provider-adapters/constants.d.ts.map +1 -0
- package/dist/provider-adapters/constants.js +21 -0
- package/dist/provider-adapters/constants.js.map +1 -0
- package/dist/provider-adapters/copilot.d.ts +4 -0
- package/dist/provider-adapters/copilot.d.ts.map +1 -0
- package/dist/provider-adapters/copilot.js +37 -0
- package/dist/provider-adapters/copilot.js.map +1 -0
- package/dist/provider-adapters/create-adapter.d.ts +4 -0
- package/dist/provider-adapters/create-adapter.d.ts.map +1 -0
- package/dist/provider-adapters/create-adapter.js +67 -0
- package/dist/provider-adapters/create-adapter.js.map +1 -0
- package/dist/provider-adapters/mcp.d.ts +4 -0
- package/dist/provider-adapters/mcp.d.ts.map +1 -0
- package/dist/provider-adapters/mcp.js +40 -0
- package/dist/provider-adapters/mcp.js.map +1 -0
- package/dist/provider-adapters/registry.d.ts +4 -0
- package/dist/provider-adapters/registry.d.ts.map +1 -0
- package/dist/provider-adapters/registry.js +11 -0
- package/dist/provider-adapters/registry.js.map +1 -0
- package/dist/provider-adapters/renderers.d.ts +3 -0
- package/dist/provider-adapters/renderers.d.ts.map +1 -0
- package/dist/provider-adapters/renderers.js +10 -0
- package/dist/provider-adapters/renderers.js.map +1 -0
- package/dist/provider-adapters/subagents.d.ts +19 -0
- package/dist/provider-adapters/subagents.d.ts.map +1 -0
- package/dist/provider-adapters/subagents.js +58 -0
- package/dist/provider-adapters/subagents.js.map +1 -0
- package/dist/provider-adapters/types.d.ts +18 -0
- package/dist/provider-adapters/types.d.ts.map +1 -0
- package/dist/provider-adapters/types.js +2 -0
- package/dist/provider-adapters/types.js.map +1 -0
- package/dist/providers.d.ts +6 -0
- package/dist/providers.d.ts.map +1 -0
- package/dist/providers.js +15 -0
- package/dist/providers.js.map +1 -0
- package/dist/registry-validator.d.ts +3 -0
- package/dist/registry-validator.d.ts.map +1 -0
- package/dist/registry-validator.js +222 -0
- package/dist/registry-validator.js.map +1 -0
- package/dist/repository.d.ts +36 -0
- package/dist/repository.d.ts.map +1 -0
- package/dist/repository.js +314 -0
- package/dist/repository.js.map +1 -0
- package/dist/types.d.ts +190 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +11 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +16 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +115 -0
- package/dist/utils.js.map +1 -0
- package/dist/versioning/doctor.d.ts +6 -0
- package/dist/versioning/doctor.d.ts.map +1 -0
- package/dist/versioning/doctor.js +284 -0
- package/dist/versioning/doctor.js.map +1 -0
- package/dist/versioning/migrate.d.ts +9 -0
- package/dist/versioning/migrate.d.ts.map +1 -0
- package/dist/versioning/migrate.js +362 -0
- package/dist/versioning/migrate.js.map +1 -0
- package/dist/versioning/registry.d.ts +18 -0
- package/dist/versioning/registry.d.ts.map +1 -0
- package/dist/versioning/registry.js +63 -0
- package/dist/versioning/registry.js.map +1 -0
- package/package.json +52 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { HarnessEngine } from "../../engine.js";
|
|
2
|
+
export async function handleDoctor(context) {
|
|
3
|
+
const engine = new HarnessEngine(context.cwd);
|
|
4
|
+
const result = await engine.doctor();
|
|
5
|
+
return {
|
|
6
|
+
family: "doctor",
|
|
7
|
+
command: "doctor",
|
|
8
|
+
ok: result.healthy,
|
|
9
|
+
diagnostics: result.diagnostics,
|
|
10
|
+
exitCode: result.healthy ? 0 : 1,
|
|
11
|
+
data: {
|
|
12
|
+
result,
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=doctor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/handlers/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAA2B;IAC5D,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;IAErC,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,QAAQ;QACjB,EAAE,EAAE,MAAM,CAAC,OAAO;QAClB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,EAAE;YACJ,MAAM;SACP;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { CliResolvedContext, EntityMutationOutput } from "../contracts.js";
|
|
2
|
+
export declare function handleAddPrompt(input: {
|
|
3
|
+
registry?: string;
|
|
4
|
+
}, context: CliResolvedContext): Promise<EntityMutationOutput>;
|
|
5
|
+
export declare function handleAddSkill(input: {
|
|
6
|
+
skillId: string;
|
|
7
|
+
registry?: string;
|
|
8
|
+
}, context: CliResolvedContext): Promise<EntityMutationOutput>;
|
|
9
|
+
export declare function handleAddMcp(input: {
|
|
10
|
+
configId: string;
|
|
11
|
+
registry?: string;
|
|
12
|
+
}, context: CliResolvedContext): Promise<EntityMutationOutput>;
|
|
13
|
+
export declare function handleAddSubagent(input: {
|
|
14
|
+
subagentId: string;
|
|
15
|
+
registry?: string;
|
|
16
|
+
}, context: CliResolvedContext): Promise<EntityMutationOutput>;
|
|
17
|
+
export declare function handleRemoveEntity(input: {
|
|
18
|
+
entityType: string;
|
|
19
|
+
id: string;
|
|
20
|
+
deleteSource: boolean;
|
|
21
|
+
}, context: CliResolvedContext): Promise<EntityMutationOutput>;
|
|
22
|
+
//# sourceMappingURL=entities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/entities.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,wBAAsB,eAAe,CACnC,KAAK,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EAC5B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAiB/B;AAED,wBAAsB,cAAc,CAClC,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EAC7C,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAiB/B;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EAC9C,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAiB/B;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EAChD,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAiB/B;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,OAAO,CAAA;CAAE,EAChE,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAsB/B"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { HarnessEngine } from "../../engine.js";
|
|
2
|
+
import { CLI_ENTITY_TYPES, isCliEntityType } from "../../types.js";
|
|
3
|
+
export async function handleAddPrompt(input, context) {
|
|
4
|
+
const engine = new HarnessEngine(context.cwd);
|
|
5
|
+
await engine.addPrompt({ registry: input.registry });
|
|
6
|
+
return {
|
|
7
|
+
family: "entity-mutation",
|
|
8
|
+
command: "add.prompt",
|
|
9
|
+
ok: true,
|
|
10
|
+
diagnostics: [],
|
|
11
|
+
exitCode: 0,
|
|
12
|
+
data: {
|
|
13
|
+
operation: "add",
|
|
14
|
+
entityType: "prompt",
|
|
15
|
+
id: "system",
|
|
16
|
+
message: "Added prompt entity 'system'.",
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export async function handleAddSkill(input, context) {
|
|
21
|
+
const engine = new HarnessEngine(context.cwd);
|
|
22
|
+
await engine.addSkill(input.skillId, { registry: input.registry });
|
|
23
|
+
return {
|
|
24
|
+
family: "entity-mutation",
|
|
25
|
+
command: "add.skill",
|
|
26
|
+
ok: true,
|
|
27
|
+
diagnostics: [],
|
|
28
|
+
exitCode: 0,
|
|
29
|
+
data: {
|
|
30
|
+
operation: "add",
|
|
31
|
+
entityType: "skill",
|
|
32
|
+
id: input.skillId,
|
|
33
|
+
message: `Added skill '${input.skillId}'.`,
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
export async function handleAddMcp(input, context) {
|
|
38
|
+
const engine = new HarnessEngine(context.cwd);
|
|
39
|
+
await engine.addMcp(input.configId, { registry: input.registry });
|
|
40
|
+
return {
|
|
41
|
+
family: "entity-mutation",
|
|
42
|
+
command: "add.mcp",
|
|
43
|
+
ok: true,
|
|
44
|
+
diagnostics: [],
|
|
45
|
+
exitCode: 0,
|
|
46
|
+
data: {
|
|
47
|
+
operation: "add",
|
|
48
|
+
entityType: "mcp",
|
|
49
|
+
id: input.configId,
|
|
50
|
+
message: `Added MCP config '${input.configId}'.`,
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export async function handleAddSubagent(input, context) {
|
|
55
|
+
const engine = new HarnessEngine(context.cwd);
|
|
56
|
+
await engine.addSubagent(input.subagentId, { registry: input.registry });
|
|
57
|
+
return {
|
|
58
|
+
family: "entity-mutation",
|
|
59
|
+
command: "add.subagent",
|
|
60
|
+
ok: true,
|
|
61
|
+
diagnostics: [],
|
|
62
|
+
exitCode: 0,
|
|
63
|
+
data: {
|
|
64
|
+
operation: "add",
|
|
65
|
+
entityType: "subagent",
|
|
66
|
+
id: input.subagentId,
|
|
67
|
+
message: `Added subagent '${input.subagentId}'.`,
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
export async function handleRemoveEntity(input, context) {
|
|
72
|
+
if (!isCliEntityType(input.entityType)) {
|
|
73
|
+
throw new Error(`entity-type must be one of: ${CLI_ENTITY_TYPES.join(", ")}`);
|
|
74
|
+
}
|
|
75
|
+
const engine = new HarnessEngine(context.cwd);
|
|
76
|
+
const removed = await engine.remove(input.entityType, input.id, input.deleteSource);
|
|
77
|
+
return {
|
|
78
|
+
family: "entity-mutation",
|
|
79
|
+
command: "remove",
|
|
80
|
+
ok: true,
|
|
81
|
+
diagnostics: [],
|
|
82
|
+
exitCode: 0,
|
|
83
|
+
data: {
|
|
84
|
+
operation: "remove",
|
|
85
|
+
entityType: removed.entityType,
|
|
86
|
+
id: removed.id,
|
|
87
|
+
removed,
|
|
88
|
+
message: `Removed ${removed.entityType} '${removed.id}'.`,
|
|
89
|
+
},
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=entities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../../src/cli/handlers/entities.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/init.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEtE,wBAAsB,UAAU,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,CAe5G"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { HarnessEngine } from "../../engine.js";
|
|
2
|
+
export async function handleInit(input, context) {
|
|
3
|
+
const engine = new HarnessEngine(context.cwd);
|
|
4
|
+
await engine.init({ force: input.force });
|
|
5
|
+
return {
|
|
6
|
+
family: "init",
|
|
7
|
+
command: "init",
|
|
8
|
+
ok: true,
|
|
9
|
+
diagnostics: [],
|
|
10
|
+
exitCode: 0,
|
|
11
|
+
data: {
|
|
12
|
+
force: input.force,
|
|
13
|
+
message: "Initialized .harness workspace.",
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/handlers/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAyB,EAAE,OAA2B;IACrF,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAE1C,OAAO;QACL,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,MAAM;QACf,EAAE,EAAE,IAAI;QACR,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,iCAAiC;SAC3C;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/migrate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEzE,wBAAsB,aAAa,CACjC,KAAK,EAAE;IACL,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,OAAO,CAAC;CACjB,EACD,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAqBxB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { HarnessEngine } from "../../engine.js";
|
|
2
|
+
export async function handleMigrate(input, context) {
|
|
3
|
+
if (input.to !== "latest") {
|
|
4
|
+
throw new Error("--to currently supports only 'latest'");
|
|
5
|
+
}
|
|
6
|
+
const engine = new HarnessEngine(context.cwd);
|
|
7
|
+
const result = await engine.migrate({
|
|
8
|
+
to: "latest",
|
|
9
|
+
dryRun: input.dryRun,
|
|
10
|
+
});
|
|
11
|
+
return {
|
|
12
|
+
family: "migrate",
|
|
13
|
+
command: "migrate",
|
|
14
|
+
ok: result.success,
|
|
15
|
+
diagnostics: result.diagnostics,
|
|
16
|
+
exitCode: result.success ? 0 : 1,
|
|
17
|
+
data: {
|
|
18
|
+
result,
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=migrate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/cli/handlers/migrate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAGC,EACD,OAA2B;IAE3B,IAAI,KAAK,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAClC,EAAE,EAAE,QAAQ;QACZ,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC,CAAC;IAEH,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,SAAS;QAClB,EAAE,EAAE,MAAM,CAAC,OAAO;QAClB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,EAAE;YACJ,MAAM;SACP;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/plan.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEtE,wBAAsB,UAAU,CAC9B,KAAK,EAAE;IAAE,iBAAiB,EAAE,OAAO,CAAA;CAAE,EACrC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,UAAU,CAAC,CAgBrB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { HarnessEngine } from "../../engine.js";
|
|
2
|
+
export async function handlePlan(input, context) {
|
|
3
|
+
const engine = new HarnessEngine(context.cwd);
|
|
4
|
+
const result = await engine.plan();
|
|
5
|
+
const hasErrors = result.diagnostics.some((diagnostic) => diagnostic.severity === "error");
|
|
6
|
+
return {
|
|
7
|
+
family: "plan",
|
|
8
|
+
command: input.defaultInvocation ? "default.plan" : "plan",
|
|
9
|
+
ok: !hasErrors,
|
|
10
|
+
diagnostics: result.diagnostics,
|
|
11
|
+
exitCode: hasErrors ? 1 : 0,
|
|
12
|
+
data: {
|
|
13
|
+
result,
|
|
14
|
+
defaultInvocation: input.defaultInvocation,
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=plan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../src/cli/handlers/plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAqC,EACrC,OAA2B;IAE3B,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;IAE3F,OAAO;QACL,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM;QAC1D,EAAE,EAAE,CAAC,SAAS;QACd,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,EAAE;YACJ,MAAM;YACN,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;SAC3C;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CliResolvedContext, ProviderOutput } from "../contracts.js";
|
|
2
|
+
export declare function handleProviderEnable(input: {
|
|
3
|
+
provider: string;
|
|
4
|
+
}, context: CliResolvedContext): Promise<ProviderOutput>;
|
|
5
|
+
export declare function handleProviderDisable(input: {
|
|
6
|
+
provider: string;
|
|
7
|
+
}, context: CliResolvedContext): Promise<ProviderOutput>;
|
|
8
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE1E,wBAAsB,oBAAoB,CACxC,KAAK,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,EAC3B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAiBzB;AAED,wBAAsB,qBAAqB,CACzC,KAAK,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,EAC3B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAiBzB"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { providerIdSchema } from "@madebywild/agent-harness-manifest";
|
|
2
|
+
import { HarnessEngine } from "../../engine.js";
|
|
3
|
+
export async function handleProviderEnable(input, context) {
|
|
4
|
+
const parsed = providerIdSchema.parse(input.provider);
|
|
5
|
+
const engine = new HarnessEngine(context.cwd);
|
|
6
|
+
await engine.enableProvider(parsed);
|
|
7
|
+
return {
|
|
8
|
+
family: "provider",
|
|
9
|
+
command: "provider.enable",
|
|
10
|
+
ok: true,
|
|
11
|
+
diagnostics: [],
|
|
12
|
+
exitCode: 0,
|
|
13
|
+
data: {
|
|
14
|
+
action: "enable",
|
|
15
|
+
provider: parsed,
|
|
16
|
+
message: `Enabled provider '${parsed}'.`,
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export async function handleProviderDisable(input, context) {
|
|
21
|
+
const parsed = providerIdSchema.parse(input.provider);
|
|
22
|
+
const engine = new HarnessEngine(context.cwd);
|
|
23
|
+
await engine.disableProvider(parsed);
|
|
24
|
+
return {
|
|
25
|
+
family: "provider",
|
|
26
|
+
command: "provider.disable",
|
|
27
|
+
ok: true,
|
|
28
|
+
diagnostics: [],
|
|
29
|
+
exitCode: 0,
|
|
30
|
+
data: {
|
|
31
|
+
action: "disable",
|
|
32
|
+
provider: parsed,
|
|
33
|
+
message: `Disabled provider '${parsed}'.`,
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/cli/handlers/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAA2B,EAC3B,OAA2B;IAE3B,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAEpC,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,iBAAiB;QAC1B,EAAE,EAAE,IAAI;QACR,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE;YACJ,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,qBAAqB,MAAM,IAAI;SACzC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAA2B,EAC3B,OAA2B;IAE3B,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAErC,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,kBAAkB;QAC3B,EAAE,EAAE,IAAI;QACR,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE;YACJ,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,sBAAsB,MAAM,IAAI;SAC1C;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { CliResolvedContext, RegistryOutput } from "../contracts.js";
|
|
2
|
+
export declare function handleRegistryList(context: CliResolvedContext): Promise<RegistryOutput>;
|
|
3
|
+
export declare function handleRegistryValidate(input: {
|
|
4
|
+
path?: string;
|
|
5
|
+
root?: string;
|
|
6
|
+
}, context: CliResolvedContext): Promise<RegistryOutput>;
|
|
7
|
+
export declare function handleRegistryAdd(input: {
|
|
8
|
+
name: string;
|
|
9
|
+
gitUrl: string;
|
|
10
|
+
ref?: string;
|
|
11
|
+
root?: string;
|
|
12
|
+
tokenEnv?: string;
|
|
13
|
+
}, context: CliResolvedContext): Promise<RegistryOutput>;
|
|
14
|
+
export declare function handleRegistryRemove(input: {
|
|
15
|
+
name: string;
|
|
16
|
+
}, context: CliResolvedContext): Promise<RegistryOutput>;
|
|
17
|
+
export declare function handleRegistryDefaultShow(context: CliResolvedContext): Promise<RegistryOutput>;
|
|
18
|
+
export declare function handleRegistryDefaultSet(input: {
|
|
19
|
+
name: string;
|
|
20
|
+
}, context: CliResolvedContext): Promise<RegistryOutput>;
|
|
21
|
+
export declare function handleRegistryPull(input: {
|
|
22
|
+
entityType?: string;
|
|
23
|
+
id?: string;
|
|
24
|
+
registry?: string;
|
|
25
|
+
force?: boolean;
|
|
26
|
+
}, context: CliResolvedContext): Promise<RegistryOutput>;
|
|
27
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/registry.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE1E,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC,CAe7F;AAED,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,EACvC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAiBzB;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,EACvF,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAqBzB;AAED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EACvB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAgBzB;AAED,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC,CAepG;AAED,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EACvB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAgBzB;AAcD,wBAAsB,kBAAkB,CACtC,KAAK,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EAC/E,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC,CAoBzB"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { HarnessEngine } from "../../engine.js";
|
|
2
|
+
import { validateRegistryRepo } from "../../registry-validator.js";
|
|
3
|
+
import { CLI_ENTITY_TYPES, isCliEntityType } from "../../types.js";
|
|
4
|
+
export async function handleRegistryList(context) {
|
|
5
|
+
const engine = new HarnessEngine(context.cwd);
|
|
6
|
+
const registries = await engine.listRegistries();
|
|
7
|
+
return {
|
|
8
|
+
family: "registry",
|
|
9
|
+
command: "registry.list",
|
|
10
|
+
ok: true,
|
|
11
|
+
diagnostics: [],
|
|
12
|
+
exitCode: 0,
|
|
13
|
+
data: {
|
|
14
|
+
operation: "list",
|
|
15
|
+
registries,
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export async function handleRegistryValidate(input, context) {
|
|
20
|
+
const result = await validateRegistryRepo({
|
|
21
|
+
repoPath: input.path ?? context.cwd,
|
|
22
|
+
rootPath: input.root,
|
|
23
|
+
});
|
|
24
|
+
return {
|
|
25
|
+
family: "registry",
|
|
26
|
+
command: "registry.validate",
|
|
27
|
+
ok: result.valid,
|
|
28
|
+
diagnostics: result.diagnostics,
|
|
29
|
+
exitCode: result.valid ? 0 : 1,
|
|
30
|
+
data: {
|
|
31
|
+
operation: "validate",
|
|
32
|
+
result,
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export async function handleRegistryAdd(input, context) {
|
|
37
|
+
const engine = new HarnessEngine(context.cwd);
|
|
38
|
+
await engine.addRegistry(input.name, {
|
|
39
|
+
gitUrl: input.gitUrl,
|
|
40
|
+
ref: input.ref,
|
|
41
|
+
rootPath: input.root,
|
|
42
|
+
tokenEnvVar: input.tokenEnv,
|
|
43
|
+
});
|
|
44
|
+
return {
|
|
45
|
+
family: "registry",
|
|
46
|
+
command: "registry.add",
|
|
47
|
+
ok: true,
|
|
48
|
+
diagnostics: [],
|
|
49
|
+
exitCode: 0,
|
|
50
|
+
data: {
|
|
51
|
+
operation: "add",
|
|
52
|
+
name: input.name,
|
|
53
|
+
message: `Added registry '${input.name}'.`,
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export async function handleRegistryRemove(input, context) {
|
|
58
|
+
const engine = new HarnessEngine(context.cwd);
|
|
59
|
+
await engine.removeRegistry(input.name);
|
|
60
|
+
return {
|
|
61
|
+
family: "registry",
|
|
62
|
+
command: "registry.remove",
|
|
63
|
+
ok: true,
|
|
64
|
+
diagnostics: [],
|
|
65
|
+
exitCode: 0,
|
|
66
|
+
data: {
|
|
67
|
+
operation: "remove",
|
|
68
|
+
name: input.name,
|
|
69
|
+
message: `Removed registry '${input.name}'.`,
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
export async function handleRegistryDefaultShow(context) {
|
|
74
|
+
const engine = new HarnessEngine(context.cwd);
|
|
75
|
+
const registry = await engine.getDefaultRegistry();
|
|
76
|
+
return {
|
|
77
|
+
family: "registry",
|
|
78
|
+
command: "registry.default.show",
|
|
79
|
+
ok: true,
|
|
80
|
+
diagnostics: [],
|
|
81
|
+
exitCode: 0,
|
|
82
|
+
data: {
|
|
83
|
+
operation: "default.show",
|
|
84
|
+
registry,
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
export async function handleRegistryDefaultSet(input, context) {
|
|
89
|
+
const engine = new HarnessEngine(context.cwd);
|
|
90
|
+
await engine.setDefaultRegistry(input.name);
|
|
91
|
+
return {
|
|
92
|
+
family: "registry",
|
|
93
|
+
command: "registry.default.set",
|
|
94
|
+
ok: true,
|
|
95
|
+
diagnostics: [],
|
|
96
|
+
exitCode: 0,
|
|
97
|
+
data: {
|
|
98
|
+
operation: "default.set",
|
|
99
|
+
name: input.name,
|
|
100
|
+
message: `Default registry set to '${input.name}'.`,
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
function parseOptionalEntityType(entityType) {
|
|
105
|
+
if (!entityType) {
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
108
|
+
if (!isCliEntityType(entityType)) {
|
|
109
|
+
throw new Error(`entity-type must be one of: ${CLI_ENTITY_TYPES.join(", ")}`);
|
|
110
|
+
}
|
|
111
|
+
return entityType;
|
|
112
|
+
}
|
|
113
|
+
export async function handleRegistryPull(input, context) {
|
|
114
|
+
const engine = new HarnessEngine(context.cwd);
|
|
115
|
+
const result = await engine.pullRegistry({
|
|
116
|
+
entityType: parseOptionalEntityType(input.entityType),
|
|
117
|
+
id: input.id,
|
|
118
|
+
registry: input.registry,
|
|
119
|
+
force: input.force,
|
|
120
|
+
});
|
|
121
|
+
return {
|
|
122
|
+
family: "registry",
|
|
123
|
+
command: "registry.pull",
|
|
124
|
+
ok: true,
|
|
125
|
+
diagnostics: [],
|
|
126
|
+
exitCode: 0,
|
|
127
|
+
data: {
|
|
128
|
+
operation: "pull",
|
|
129
|
+
result,
|
|
130
|
+
},
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/cli/handlers/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/validate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE5E,wBAAsB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAc3F"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { HarnessEngine } from "../../engine.js";
|
|
2
|
+
export async function handleValidate(context) {
|
|
3
|
+
const engine = new HarnessEngine(context.cwd);
|
|
4
|
+
const result = await engine.validate();
|
|
5
|
+
return {
|
|
6
|
+
family: "validation",
|
|
7
|
+
command: "validate",
|
|
8
|
+
ok: result.valid,
|
|
9
|
+
diagnostics: result.diagnostics,
|
|
10
|
+
exitCode: result.valid ? 0 : 1,
|
|
11
|
+
data: {
|
|
12
|
+
result,
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=validate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/cli/handlers/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA2B;IAC9D,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;IAEvC,OAAO;QACL,MAAM,EAAE,YAAY;QACpB,OAAO,EAAE,UAAU;QACnB,EAAE,EAAE,MAAM,CAAC,KAAK;QAChB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,EAAE;YACJ,MAAM;SACP;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/watch.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEvE,wBAAsB,WAAW,CAC/B,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,EAC5C,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,WAAW,CAAC,CA8CtB"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { HarnessEngine } from "../../engine.js";
|
|
2
|
+
export async function handleWatch(input, context) {
|
|
3
|
+
if (!Number.isFinite(input.debounceMs) || input.debounceMs < 0) {
|
|
4
|
+
throw new Error("--debounce must be a non-negative number");
|
|
5
|
+
}
|
|
6
|
+
const engine = new HarnessEngine(context.cwd);
|
|
7
|
+
let startupSettled = false;
|
|
8
|
+
let resolveStartup = () => { };
|
|
9
|
+
let rejectStartup = () => { };
|
|
10
|
+
const startup = new Promise((resolve, reject) => {
|
|
11
|
+
resolveStartup = () => {
|
|
12
|
+
if (startupSettled) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
startupSettled = true;
|
|
16
|
+
resolve();
|
|
17
|
+
};
|
|
18
|
+
rejectStartup = (error) => {
|
|
19
|
+
if (startupSettled) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
startupSettled = true;
|
|
23
|
+
reject(error);
|
|
24
|
+
};
|
|
25
|
+
});
|
|
26
|
+
const watchTask = engine.watch(input.debounceMs, { onReady: resolveStartup });
|
|
27
|
+
watchTask.catch((error) => {
|
|
28
|
+
rejectStartup(error);
|
|
29
|
+
});
|
|
30
|
+
await startup;
|
|
31
|
+
return {
|
|
32
|
+
family: "watch",
|
|
33
|
+
command: "watch",
|
|
34
|
+
ok: true,
|
|
35
|
+
diagnostics: [],
|
|
36
|
+
exitCode: 0,
|
|
37
|
+
data: {
|
|
38
|
+
debounceMs: input.debounceMs,
|
|
39
|
+
started: true,
|
|
40
|
+
},
|
|
41
|
+
runtime: {
|
|
42
|
+
blockUntilExit: watchTask,
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=watch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.js","sourceRoot":"","sources":["../../../src/cli/handlers/watch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAA4C,EAC5C,OAA2B;IAE3B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,cAAc,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;IAC1C,IAAI,aAAa,GAA6B,GAAG,EAAE,GAAE,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACpD,cAAc,GAAG,GAAG,EAAE;YACpB,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO;YACT,CAAC;YACD,cAAc,GAAG,IAAI,CAAC;YACtB,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QACF,aAAa,GAAG,CAAC,KAAc,EAAE,EAAE;YACjC,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO;YACT,CAAC;YACD,cAAc,GAAG,IAAI,CAAC;YACtB,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;IAC9E,SAAS,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACjC,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,CAAC;IAEd,OAAO;QACL,MAAM,EAAE,OAAO;QACf,OAAO,EAAE,OAAO;QAChB,EAAE,EAAE,IAAI;QACR,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE,CAAC;QACX,IAAI,EAAE;YACJ,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,OAAO,EAAE,IAAI;SACd;QACD,OAAO,EAAE;YACP,cAAc,EAAE,SAAS;SAC1B;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CliExecutionContext, CommandInput, CommandOutput } from "./contracts.js";
|
|
2
|
+
export declare function runCliCommand(input: CommandInput, context?: CliExecutionContext): Promise<CommandOutput>;
|
|
3
|
+
export declare function runCliArgv(argv: readonly string[], context?: CliExecutionContext): Promise<{
|
|
4
|
+
exitCode: number;
|
|
5
|
+
}>;
|
|
6
|
+
//# sourceMappingURL=main.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAsB,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAkC3G,wBAAsB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,CAG9G;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CA6E/B"}
|