kyro-ai 3.2.0 → 3.2.2
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/.claude-plugin/plugin.json +1 -1
- package/README.md +46 -39
- package/WORKFLOW.yaml +1 -1
- package/commands/forge.md +22 -44
- package/commands/status.md +21 -79
- package/commands/wrap-up.md +18 -74
- package/dist/cli/adapters/codex.js +3 -3
- package/dist/cli/adapters/codex.js.map +1 -1
- package/dist/cli/adapters/command-skills.js +1 -1
- package/dist/cli/adapters/command-skills.js.map +1 -1
- package/dist/cli/adapters/opencode.d.ts +0 -2
- package/dist/cli/adapters/opencode.d.ts.map +1 -1
- package/dist/cli/adapters/opencode.js +2 -10
- package/dist/cli/adapters/opencode.js.map +1 -1
- package/dist/cli/adapters/registry.d.ts.map +1 -1
- package/dist/cli/adapters/registry.js +3 -1
- package/dist/cli/adapters/registry.js.map +1 -1
- package/dist/cli/adapters/standard.d.ts +5 -0
- package/dist/cli/adapters/standard.d.ts.map +1 -0
- package/dist/cli/adapters/standard.js +41 -0
- package/dist/cli/adapters/standard.js.map +1 -0
- package/dist/cli/app.js +1 -1
- package/dist/cli/app.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts +2 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +27 -18
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +8 -7
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/token-audit.d.ts +3 -0
- package/dist/cli/commands/token-audit.d.ts.map +1 -0
- package/dist/cli/commands/token-audit.js +141 -0
- package/dist/cli/commands/token-audit.js.map +1 -0
- package/dist/cli/commands/tui.d.ts.map +1 -1
- package/dist/cli/commands/tui.js +10 -6
- package/dist/cli/commands/tui.js.map +1 -1
- package/dist/cli/commands/uninstall.d.ts.map +1 -1
- package/dist/cli/commands/uninstall.js +9 -9
- package/dist/cli/commands/uninstall.js.map +1 -1
- package/dist/cli/constants.d.ts +12 -7
- package/dist/cli/constants.d.ts.map +1 -1
- package/dist/cli/constants.js +13 -5
- package/dist/cli/constants.js.map +1 -1
- package/dist/cli/fs.d.ts +3 -0
- package/dist/cli/fs.d.ts.map +1 -1
- package/dist/cli/fs.js +30 -5
- package/dist/cli/fs.js.map +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +6 -4
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/install-plan.d.ts.map +1 -1
- package/dist/cli/install-plan.js +27 -20
- package/dist/cli/install-plan.js.map +1 -1
- package/dist/cli/options.d.ts.map +1 -1
- package/dist/cli/options.js +8 -1
- package/dist/cli/options.js.map +1 -1
- package/dist/cli/state.js +1 -1
- package/dist/cli/state.js.map +1 -1
- package/dist/cli/types.d.ts +4 -1
- package/dist/cli/types.d.ts.map +1 -1
- package/docs/HOW-TO-USE-CODEX.md +28 -60
- package/docs/HOW-TO-USE-OPENCODE.md +26 -72
- package/docs/agent-adapters.md +40 -118
- package/docs/architecture.md +7 -2
- package/docs/cli.md +93 -29
- package/docs/commands-reference.md +22 -32
- package/docs/getting-started.md +65 -115
- package/package.json +1 -1
- package/skills/sprint-forge/SKILL.md +9 -8
- package/skills/sprint-forge/assets/README.md +27 -17
- package/skills/sprint-forge/assets/helpers/metrics.md +4 -4
- package/skills/sprint-forge/assets/helpers/reentry-generator.md +4 -4
- package/skills/sprint-forge/assets/modes/INIT.md +68 -169
- package/skills/sprint-forge/assets/modes/SPRINT.md +20 -246
- package/skills/sprint-forge/assets/modes/STATUS.md +46 -128
- package/skills/sprint-forge/assets/modes/close-sprint.md +29 -0
- package/skills/sprint-forge/assets/modes/execute-task.md +26 -0
- package/skills/sprint-forge/assets/modes/plan-sprint.md +29 -0
- package/skills/sprint-forge/assets/modes/recover.md +23 -0
- package/skills/sprint-forge/assets/modes/review-task.md +25 -0
- package/skills/sprint-forge/assets/templates/DEBT.summary.json +12 -0
- package/skills/sprint-forge/assets/templates/ROADMAP.summary.json +15 -0
- package/skills/sprint-forge/assets/templates/SPRINT.summary.json +16 -0
- package/skills/sprint-forge/assets/templates/index.json +15 -0
- package/skills/sprint-forge/assets/templates/state.json +11 -0
package/dist/cli/fs.d.ts
CHANGED
|
@@ -6,7 +6,10 @@ export declare function addCopyFilePlan(plan: OperationPlan[], source: string, t
|
|
|
6
6
|
export declare function listRelativeFiles(sourceDir: string): string[];
|
|
7
7
|
export declare function readJsonFromPackage<T>(file: string): T;
|
|
8
8
|
export declare function readJsonFromWorkspace<T>(file: string): T | null;
|
|
9
|
+
export declare function readJsonFromManagedPath<T>(file: string): T | null;
|
|
9
10
|
export declare function readPackageText(file: string): string;
|
|
10
11
|
export declare function workspaceFileExists(file: string): boolean;
|
|
12
|
+
export declare function managedPathExists(file: string): boolean;
|
|
13
|
+
export declare function resolveManagedPath(file: string): string;
|
|
11
14
|
export declare function hasManagedBlock(file: string, blockName: string): boolean;
|
|
12
15
|
//# sourceMappingURL=fs.d.ts.map
|
package/dist/cli/fs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/cli/fs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/cli/fs.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAgCrD;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,IAAI,CAOpE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAItG;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAE3F;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAK7D;AAaD,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,CAEtD;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAE/D;AAED,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAIjE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIvD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAKxE"}
|
package/dist/cli/fs.js
CHANGED
|
@@ -7,15 +7,19 @@ exports.addCopyFilePlan = addCopyFilePlan;
|
|
|
7
7
|
exports.listRelativeFiles = listRelativeFiles;
|
|
8
8
|
exports.readJsonFromPackage = readJsonFromPackage;
|
|
9
9
|
exports.readJsonFromWorkspace = readJsonFromWorkspace;
|
|
10
|
+
exports.readJsonFromManagedPath = readJsonFromManagedPath;
|
|
10
11
|
exports.readPackageText = readPackageText;
|
|
11
12
|
exports.workspaceFileExists = workspaceFileExists;
|
|
13
|
+
exports.managedPathExists = managedPathExists;
|
|
14
|
+
exports.resolveManagedPath = resolveManagedPath;
|
|
12
15
|
exports.hasManagedBlock = hasManagedBlock;
|
|
13
16
|
const node_fs_1 = require("node:fs");
|
|
17
|
+
const node_os_1 = require("node:os");
|
|
14
18
|
const node_path_1 = require("node:path");
|
|
15
19
|
const constants_1 = require("./constants");
|
|
16
20
|
function applyPlan(plan) {
|
|
17
21
|
for (const operation of plan) {
|
|
18
|
-
const target = (
|
|
22
|
+
const target = resolveManagedPath(operation.path);
|
|
19
23
|
if (operation.action === 'mkdir') {
|
|
20
24
|
(0, node_fs_1.mkdirSync)(target, { recursive: true });
|
|
21
25
|
}
|
|
@@ -32,6 +36,13 @@ function applyPlan(plan) {
|
|
|
32
36
|
else if (operation.action === 'remove') {
|
|
33
37
|
(0, node_fs_1.rmSync)(target, { recursive: true, force: true });
|
|
34
38
|
}
|
|
39
|
+
else if (operation.action === 'symlink') {
|
|
40
|
+
if (!operation.source)
|
|
41
|
+
throw new Error(`Symlink operation missing source for ${operation.path}`);
|
|
42
|
+
(0, node_fs_1.mkdirSync)((0, node_path_1.dirname)(target), { recursive: true });
|
|
43
|
+
(0, node_fs_1.rmSync)(target, { recursive: true, force: true });
|
|
44
|
+
(0, node_fs_1.symlinkSync)(resolveManagedPath(operation.source), target, 'dir');
|
|
45
|
+
}
|
|
35
46
|
else if (operation.action === 'upsert-block') {
|
|
36
47
|
if (!operation.blockName)
|
|
37
48
|
throw new Error(`Block operation missing blockName for ${operation.path}`);
|
|
@@ -86,7 +97,10 @@ function readJsonFromPackage(file) {
|
|
|
86
97
|
return JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.resolve)(constants_1.PACKAGE_ROOT, file), 'utf-8'));
|
|
87
98
|
}
|
|
88
99
|
function readJsonFromWorkspace(file) {
|
|
89
|
-
|
|
100
|
+
return readJsonFromManagedPath(file);
|
|
101
|
+
}
|
|
102
|
+
function readJsonFromManagedPath(file) {
|
|
103
|
+
const path = resolveManagedPath(file);
|
|
90
104
|
if (!(0, node_fs_1.existsSync)(path))
|
|
91
105
|
return null;
|
|
92
106
|
return JSON.parse((0, node_fs_1.readFileSync)(path, 'utf-8'));
|
|
@@ -95,13 +109,24 @@ function readPackageText(file) {
|
|
|
95
109
|
return (0, node_fs_1.readFileSync)((0, node_path_1.resolve)(constants_1.PACKAGE_ROOT, file), 'utf-8');
|
|
96
110
|
}
|
|
97
111
|
function workspaceFileExists(file) {
|
|
98
|
-
return (0, node_fs_1.existsSync)((
|
|
112
|
+
return (0, node_fs_1.existsSync)(resolveManagedPath(file));
|
|
113
|
+
}
|
|
114
|
+
function managedPathExists(file) {
|
|
115
|
+
return (0, node_fs_1.existsSync)(resolveManagedPath(file));
|
|
116
|
+
}
|
|
117
|
+
function resolveManagedPath(file) {
|
|
118
|
+
if (file === '~')
|
|
119
|
+
return (0, node_os_1.homedir)();
|
|
120
|
+
if (file.startsWith('~/'))
|
|
121
|
+
return (0, node_path_1.resolve)((0, node_os_1.homedir)(), file.slice(2));
|
|
122
|
+
return (0, node_path_1.resolve)(constants_1.WORKSPACE_ROOT, file);
|
|
99
123
|
}
|
|
100
124
|
function hasManagedBlock(file, blockName) {
|
|
101
|
-
const path = (
|
|
125
|
+
const path = resolveManagedPath(file);
|
|
102
126
|
if (!(0, node_fs_1.existsSync)(path))
|
|
103
127
|
return false;
|
|
104
|
-
|
|
128
|
+
const text = (0, node_fs_1.readFileSync)(path, 'utf-8');
|
|
129
|
+
return text.includes(startMarker(blockName)) && text.includes(endMarker(blockName));
|
|
105
130
|
}
|
|
106
131
|
function upsertManagedBlock(existing, blockName, content) {
|
|
107
132
|
const block = formatManagedBlock(blockName, content);
|
package/dist/cli/fs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/cli/fs.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/cli/fs.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/help.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAEA,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,wBAAgB,SAAS,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAEA,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,wBAAgB,SAAS,IAAI,IAAI,CAEhC;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAYtD"}
|
package/dist/cli/help.js
CHANGED
|
@@ -8,15 +8,17 @@ function readPackageVersion() {
|
|
|
8
8
|
return (0, fs_1.readJsonFromPackage)('package.json').version;
|
|
9
9
|
}
|
|
10
10
|
function printHelp() {
|
|
11
|
-
console.log(`Kyro — Multi-Agent Harness\n\nUsage:\n kyro Open interactive TUI\n kyro install
|
|
12
|
-
kyro install --agent codex --scope workspace --yes\n kyro doctor\n`);
|
|
11
|
+
console.log(`Kyro — Multi-Agent Harness\n\nUsage:\n kyro Open interactive TUI\n kyro install Install Kyro standard .agents assets\n kyro doctor Check package/workspace health\n kyro sync [options] Refresh managed workspace assets\n kyro uninstall [options] Remove managed workspace assets\n\nOptions:\n --agent <name> Agent adapter: standard, opencode, codex\n --scope <scope> Install scope: workspace (default)\n --dry-run Preview changes\n --yes, -y Skip confirmation prompts where available\n --help, -h Show help\n --version, -v Show version\n\nExamples:\n kyro install --scope workspace --dry-run\n kyro install --agent opencode --scope workspace --yes\n kyro doctor\n`);
|
|
13
12
|
}
|
|
14
13
|
function printCommandHelp(command) {
|
|
15
14
|
if (command === 'install') {
|
|
16
|
-
console.log('Usage: kyro install --agent opencode --scope workspace [--dry-run] [--yes]');
|
|
15
|
+
console.log('Usage: kyro install [--agent standard|opencode|codex] --scope workspace [--dry-run] [--yes]');
|
|
16
|
+
}
|
|
17
|
+
else if (command === 'doctor') {
|
|
18
|
+
console.log('Usage: kyro doctor [--tokens]');
|
|
17
19
|
}
|
|
18
20
|
else if (command === 'sync') {
|
|
19
|
-
console.log('Usage: kyro sync [--agent opencode] [--dry-run]');
|
|
21
|
+
console.log('Usage: kyro sync [--agent standard|opencode|codex] [--dry-run]');
|
|
20
22
|
}
|
|
21
23
|
else if (command === 'uninstall') {
|
|
22
24
|
console.log('Usage: kyro uninstall [--dry-run] [--yes]');
|
package/dist/cli/help.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":";;AAEA,gDAEC;AAED,
|
|
1
|
+
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":";;AAEA,gDAEC;AAED,8BAEC;AAED,4CAYC;AAtBD,6BAA2C;AAE3C,SAAgB,kBAAkB;IAChC,OAAO,IAAA,wBAAmB,EAAsB,cAAc,CAAC,CAAC,OAAO,CAAC;AAC1E,CAAC;AAED,SAAgB,SAAS;IACvB,OAAO,CAAC,GAAG,CAAC,40BAA40B,CAAC,CAAC;AAC51B,CAAC;AAED,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,6FAA6F,CAAC,CAAC;IAC7G,CAAC;SAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;SAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;IAChF,CAAC;SAAM,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,SAAS,EAAE,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-plan.d.ts","sourceRoot":"","sources":["../../src/cli/install-plan.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install-plan.d.ts","sourceRoot":"","sources":["../../src/cli/install-plan.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAkC,aAAa,EAAE,MAAM,SAAS,CAAC;AAElG,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,GAAG,aAAa,EAAE,CAwCtF"}
|
package/dist/cli/install-plan.js
CHANGED
|
@@ -9,10 +9,11 @@ const state_1 = require("./state");
|
|
|
9
9
|
function buildInstallPlan(agents, scope) {
|
|
10
10
|
const now = new Date().toISOString();
|
|
11
11
|
const packageVersion = (0, help_1.readPackageVersion)();
|
|
12
|
-
const
|
|
12
|
+
const runtimeRoot = (0, constants_1.getKyroRuntimeRoot)(packageVersion);
|
|
13
|
+
const state = mergeProjectState(agents, scope, now, packageVersion);
|
|
13
14
|
const manifestAgents = state.installedAdapters.map((adapter) => adapter.agent);
|
|
14
15
|
const adapters = state.installedAdapters;
|
|
15
|
-
const managedFiles = buildManagedFiles(manifestAgents);
|
|
16
|
+
const managedFiles = buildManagedFiles(manifestAgents, runtimeRoot);
|
|
16
17
|
const managedBlocks = buildManagedBlocks(manifestAgents);
|
|
17
18
|
const manifest = {
|
|
18
19
|
schemaVersion: 1,
|
|
@@ -27,27 +28,30 @@ function buildInstallPlan(agents, scope) {
|
|
|
27
28
|
const plan = [
|
|
28
29
|
{ action: 'mkdir', path: constants_1.ARTIFACT_ROOT },
|
|
29
30
|
{ action: 'write', path: constants_1.KYRO_STATE_PATH, content: `${JSON.stringify(state, null, 2)}\n` },
|
|
30
|
-
{ action: 'mkdir', path:
|
|
31
|
-
{ action: 'write', path:
|
|
32
|
-
{ action: 'write', path: `${
|
|
31
|
+
{ action: 'mkdir', path: runtimeRoot },
|
|
32
|
+
{ action: 'write', path: `${runtimeRoot}/manifest.json`, content: `${JSON.stringify(manifest, null, 2)}\n` },
|
|
33
|
+
{ action: 'write', path: `${runtimeRoot}/KYRO.md`, content: buildKyroBootstrap(runtimeRoot) },
|
|
33
34
|
];
|
|
34
|
-
(0, fs_1.addCopyDirectoryPlan)(plan, 'agents', `${
|
|
35
|
-
(0, fs_1.addCopyDirectoryPlan)(plan, 'commands',
|
|
36
|
-
(0, fs_1.addCopyDirectoryPlan)(plan, 'skills',
|
|
37
|
-
(0, fs_1.addCopyFilePlan)(plan, 'config.json', `${
|
|
38
|
-
(0, fs_1.addCopyFilePlan)(plan, 'WORKFLOW.yaml', `${
|
|
35
|
+
(0, fs_1.addCopyDirectoryPlan)(plan, 'agents', `${runtimeRoot}/core/agents`);
|
|
36
|
+
(0, fs_1.addCopyDirectoryPlan)(plan, 'commands', `${runtimeRoot}/commands`);
|
|
37
|
+
(0, fs_1.addCopyDirectoryPlan)(plan, 'skills', `${runtimeRoot}/skills`);
|
|
38
|
+
(0, fs_1.addCopyFilePlan)(plan, 'config.json', `${runtimeRoot}/core/config.json`);
|
|
39
|
+
(0, fs_1.addCopyFilePlan)(plan, 'WORKFLOW.yaml', `${runtimeRoot}/core/WORKFLOW.yaml`);
|
|
40
|
+
plan.push({ action: 'symlink', path: constants_1.KYRO_ROOT, source: runtimeRoot });
|
|
39
41
|
for (const adapter of (0, registry_1.getInstalledAdapterDefinitions)(manifestAgents)) {
|
|
40
42
|
adapter.buildProjection(plan);
|
|
41
43
|
}
|
|
42
44
|
return plan;
|
|
43
45
|
}
|
|
44
|
-
function mergeProjectState(agents, scope, installedAt) {
|
|
46
|
+
function mergeProjectState(agents, scope, installedAt, runtimeVersion) {
|
|
45
47
|
const existing = (0, state_1.readProjectState)();
|
|
46
48
|
const base = existing ?? {
|
|
47
49
|
schemaVersion: 1,
|
|
48
50
|
artifactRoot: constants_1.ARTIFACT_ROOT,
|
|
49
51
|
scopes: [],
|
|
50
52
|
activeScope: null,
|
|
53
|
+
runtimeVersion,
|
|
54
|
+
runtimePath: constants_1.KYRO_ROOT,
|
|
51
55
|
installedAdapters: [],
|
|
52
56
|
};
|
|
53
57
|
const adaptersByAgent = new Map();
|
|
@@ -62,26 +66,29 @@ function mergeProjectState(agents, scope, installedAt) {
|
|
|
62
66
|
artifactRoot: constants_1.ARTIFACT_ROOT,
|
|
63
67
|
scopes: [...base.scopes],
|
|
64
68
|
activeScope: base.activeScope,
|
|
69
|
+
runtimeVersion,
|
|
70
|
+
runtimePath: constants_1.KYRO_ROOT,
|
|
65
71
|
installedAdapters: [...adaptersByAgent.values()].sort((a, b) => a.agent.localeCompare(b.agent)),
|
|
66
72
|
};
|
|
67
73
|
}
|
|
68
|
-
function buildManagedFiles(agents) {
|
|
74
|
+
function buildManagedFiles(agents, runtimeRoot) {
|
|
69
75
|
const files = [
|
|
70
76
|
constants_1.KYRO_MANIFEST_PATH,
|
|
71
|
-
`${
|
|
72
|
-
`${
|
|
73
|
-
`${
|
|
77
|
+
`${runtimeRoot}/manifest.json`,
|
|
78
|
+
`${runtimeRoot}/KYRO.md`,
|
|
79
|
+
`${runtimeRoot}/core/config.json`,
|
|
80
|
+
`${runtimeRoot}/core/WORKFLOW.yaml`,
|
|
74
81
|
];
|
|
75
|
-
files.push(...(0, fs_1.listRelativeFiles)('agents').map((file) => `${
|
|
76
|
-
files.push(...(0, fs_1.listRelativeFiles)('commands').map((file) => `${
|
|
77
|
-
files.push(...(0, fs_1.listRelativeFiles)('skills').map((file) => `${
|
|
82
|
+
files.push(...(0, fs_1.listRelativeFiles)('agents').map((file) => `${runtimeRoot}/core/agents/${file}`));
|
|
83
|
+
files.push(...(0, fs_1.listRelativeFiles)('commands').map((file) => `${runtimeRoot}/commands/${file}`));
|
|
84
|
+
files.push(...(0, fs_1.listRelativeFiles)('skills').map((file) => `${runtimeRoot}/skills/${file}`));
|
|
78
85
|
for (const adapter of (0, registry_1.getInstalledAdapterDefinitions)(agents)) {
|
|
79
86
|
files.push(...adapter.buildManagedFiles());
|
|
80
87
|
}
|
|
81
88
|
return [...new Set(files)].sort();
|
|
82
89
|
}
|
|
83
|
-
function buildKyroBootstrap() {
|
|
84
|
-
return `# Kyro
|
|
90
|
+
function buildKyroBootstrap(runtimeRoot) {
|
|
91
|
+
return `# Kyro Global Runtime\n\nThis directory is managed by Kyro.\n\n- Runtime version path: \`${runtimeRoot}/\`\n- Current runtime: \`${constants_1.KYRO_ROOT}/\`\n- Core assets: \`${constants_1.KYRO_CORE_ROOT}/\`\n- Commands: \`${constants_1.KYRO_COMMANDS_ROOT}/\`\n- Skills: \`${constants_1.KYRO_SKILLS_ROOT}/\`\n- Global command skills: \`${constants_1.AGENT_SKILLS_ROOT}/\`\n- Project state: \`${constants_1.KYRO_STATE_PATH}\` in the active project\n\nUse installed global command skills when available. Do not require users to invoke Kyro workflows through natural-language fallbacks unless the host agent has no native command or skill mechanism.\n`;
|
|
85
92
|
}
|
|
86
93
|
function buildManagedBlocks(agents) {
|
|
87
94
|
const blocks = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-plan.js","sourceRoot":"","sources":["../../src/cli/install-plan.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"install-plan.js","sourceRoot":"","sources":["../../src/cli/install-plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE/D,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE/D,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CA+CvD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAQ/C;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAItD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAErD;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAI9D;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAK7D"}
|
package/dist/cli/options.js
CHANGED
|
@@ -14,6 +14,7 @@ function parseOptions(args) {
|
|
|
14
14
|
let dryRun = false;
|
|
15
15
|
let yes = false;
|
|
16
16
|
let help = false;
|
|
17
|
+
let tokens = false;
|
|
17
18
|
for (let i = 0; i < args.length; i += 1) {
|
|
18
19
|
const arg = args[i];
|
|
19
20
|
if (arg === '--dry-run') {
|
|
@@ -25,6 +26,9 @@ function parseOptions(args) {
|
|
|
25
26
|
else if (arg === '--help' || arg === '-h') {
|
|
26
27
|
help = true;
|
|
27
28
|
}
|
|
29
|
+
else if (arg === '--tokens') {
|
|
30
|
+
tokens = true;
|
|
31
|
+
}
|
|
28
32
|
else if (arg === '--agent' || arg === '--agents') {
|
|
29
33
|
const value = args[i + 1];
|
|
30
34
|
if (!value)
|
|
@@ -53,15 +57,18 @@ function parseOptions(args) {
|
|
|
53
57
|
}
|
|
54
58
|
}
|
|
55
59
|
return {
|
|
56
|
-
agents: uniqueAgents(agents
|
|
60
|
+
agents: uniqueAgents(agents),
|
|
57
61
|
scope,
|
|
58
62
|
dryRun,
|
|
59
63
|
yes,
|
|
60
64
|
help,
|
|
65
|
+
tokens,
|
|
61
66
|
};
|
|
62
67
|
}
|
|
63
68
|
function parseAgent(value) {
|
|
64
69
|
const normalized = value.toLowerCase();
|
|
70
|
+
if (normalized === 'standard' || normalized === 'agents' || normalized === '.agents' || normalized === 'default')
|
|
71
|
+
return constants_1.AGENT.STANDARD;
|
|
65
72
|
if (normalized === 'opencode')
|
|
66
73
|
return constants_1.AGENT.OPENCODE;
|
|
67
74
|
if (normalized === 'claude' || normalized === 'claude-code')
|
package/dist/cli/options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":";;AAIA,
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/cli/options.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/state.js
CHANGED
|
@@ -8,6 +8,6 @@ function readProjectState() {
|
|
|
8
8
|
return (0, fs_1.readJsonFromWorkspace)(constants_1.KYRO_STATE_PATH);
|
|
9
9
|
}
|
|
10
10
|
function readManifest() {
|
|
11
|
-
return (0, fs_1.
|
|
11
|
+
return (0, fs_1.readJsonFromManagedPath)(constants_1.KYRO_MANIFEST_PATH);
|
|
12
12
|
}
|
|
13
13
|
//# sourceMappingURL=state.js.map
|
package/dist/cli/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/cli/state.ts"],"names":[],"mappings":";;AAIA,4CAEC;AAED,oCAEC;AAVD,2CAAkE;AAClE,
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/cli/state.ts"],"names":[],"mappings":";;AAIA,4CAEC;AAED,oCAEC;AAVD,2CAAkE;AAClE,6BAAsE;AAGtE,SAAgB,gBAAgB;IAC9B,OAAO,IAAA,0BAAqB,EAAmB,2BAAe,CAAC,CAAC;AAClE,CAAC;AAED,SAAgB,YAAY;IAC1B,OAAO,IAAA,4BAAuB,EAAe,8BAAkB,CAAC,CAAC;AACnE,CAAC"}
|
package/dist/cli/types.d.ts
CHANGED
|
@@ -15,6 +15,8 @@ export interface KyroProjectState {
|
|
|
15
15
|
artifactRoot: string;
|
|
16
16
|
scopes: string[];
|
|
17
17
|
activeScope: string | null;
|
|
18
|
+
runtimeVersion: string;
|
|
19
|
+
runtimePath: string;
|
|
18
20
|
installedAdapters: KyroInstalledAdapter[];
|
|
19
21
|
}
|
|
20
22
|
export interface KyroManifest {
|
|
@@ -33,9 +35,10 @@ export interface CliOptions {
|
|
|
33
35
|
dryRun: boolean;
|
|
34
36
|
yes: boolean;
|
|
35
37
|
help: boolean;
|
|
38
|
+
tokens: boolean;
|
|
36
39
|
}
|
|
37
40
|
export interface OperationPlan {
|
|
38
|
-
action: 'write' | 'copy' | 'mkdir' | 'remove' | 'upsert-block' | 'remove-block';
|
|
41
|
+
action: 'write' | 'copy' | 'mkdir' | 'remove' | 'upsert-block' | 'remove-block' | 'symlink';
|
|
39
42
|
path: string;
|
|
40
43
|
source?: string;
|
|
41
44
|
content?: string;
|
package/dist/cli/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cli/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE/D,MAAM,MAAM,KAAK,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;AACvD,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;AAC9D,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,YAAY,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,CAAC,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iBAAiB,EAAE,oBAAoB,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,CAAC,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cli/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE/D,MAAM,MAAM,KAAK,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;AACvD,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;AAC9D,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,YAAY,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,CAAC,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,oBAAoB,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,CAAC,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,cAAc,GAAG,SAAS,CAAC;IAC5F,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
package/docs/HOW-TO-USE-CODEX.md
CHANGED
|
@@ -1,82 +1,50 @@
|
|
|
1
1
|
# Codex Adapter Guide
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
---
|
|
3
|
+
Codex should use the installed Kyro command skills and root `AGENTS.md` bootstrap. Do not load the whole runtime manually.
|
|
6
4
|
|
|
7
5
|
## Setup
|
|
8
6
|
|
|
9
7
|
```bash
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
cp -r kyro-ai/skills/sprint-forge .skills/
|
|
13
|
-
cp -r kyro-ai/skills/qa-review .skills/
|
|
14
|
-
cp kyro-ai/agents/orchestrator.md .agents/
|
|
8
|
+
npx kyro-ai install --agent codex --scope workspace --yes
|
|
15
9
|
```
|
|
16
10
|
|
|
17
|
-
|
|
11
|
+
This installs:
|
|
18
12
|
|
|
19
|
-
|
|
13
|
+
- global runtime: `~/.agents/kyro/current/`
|
|
14
|
+
- global command skills: `~/.agents/skills/kyro-*`
|
|
15
|
+
- project state: `.agents/kyro/kyro.json`
|
|
16
|
+
- a small Kyro managed block in root `AGENTS.md`
|
|
20
17
|
|
|
21
|
-
|
|
22
|
-
Use Kyro for this project.
|
|
18
|
+
## Usage
|
|
23
19
|
|
|
24
|
-
|
|
25
|
-
- .agents/orchestrator.md
|
|
26
|
-
- .skills/sprint-forge/SKILL.md
|
|
27
|
-
- .skills/qa-review/SKILL.md
|
|
20
|
+
Invoke the command-like skills:
|
|
28
21
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
-
|
|
32
|
-
- status = read artifacts and report progress/debt
|
|
33
|
-
- wrap-up = close the session and update re-entry prompts
|
|
34
|
-
```
|
|
22
|
+
- `kyro-forge` — route analyze/plan/execute/review/close
|
|
23
|
+
- `kyro-status` — summary-first progress and debt report
|
|
24
|
+
- `kyro-wrap-up` — close session and refresh handoff context
|
|
35
25
|
|
|
36
|
-
|
|
26
|
+
The skills read command routers from `~/.agents/kyro/current/commands/` and then load only the routed mode/helper/template.
|
|
37
27
|
|
|
38
|
-
##
|
|
28
|
+
## Artifacts
|
|
39
29
|
|
|
40
|
-
|
|
30
|
+
Persist scope artifacts under:
|
|
41
31
|
|
|
42
32
|
```text
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
-
|
|
50
|
-
-
|
|
33
|
+
.agents/kyro/scopes/{scope}/
|
|
34
|
+
├── state.json
|
|
35
|
+
├── index.json
|
|
36
|
+
├── ROADMAP.md
|
|
37
|
+
├── ROADMAP.summary.json
|
|
38
|
+
└── phases/
|
|
39
|
+
├── SPRINT-N-*.md
|
|
40
|
+
└── SPRINT-N-*.summary.json
|
|
51
41
|
```
|
|
52
42
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
```text
|
|
56
|
-
@file .agents/orchestrator.md
|
|
57
|
-
@file .skills/sprint-forge/SKILL.md
|
|
58
|
-
@file .skills/qa-review/SKILL.md
|
|
43
|
+
Markdown is human evidence. JSON files are the fast routing index.
|
|
59
44
|
|
|
60
|
-
|
|
61
|
-
Use .agents/kyro/scopes/{scope}/ for findings, roadmap, phases,
|
|
62
|
-
handoffs, and re-entry prompts.
|
|
63
|
-
```
|
|
45
|
+
## Verify
|
|
64
46
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
@file .skills/sprint-forge/SKILL.md
|
|
69
|
-
|
|
70
|
-
Run the status intent for .agents/kyro/scopes/{scope}/.
|
|
71
|
-
Report sprint progress, open debt, aged debt, blockers, and next action.
|
|
47
|
+
```bash
|
|
48
|
+
kyro doctor
|
|
49
|
+
kyro doctor --tokens
|
|
72
50
|
```
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## Limitations
|
|
77
|
-
|
|
78
|
-
- Codex environments may not register Kyro slash commands automatically.
|
|
79
|
-
- Artifact persistence depends on the agent writing files correctly.
|
|
80
|
-
- Learned rules work through `.agents/kyro/scopes/rules.md`, not through a runtime service.
|
|
81
|
-
|
|
82
|
-
For generic setup and Cursor/OpenCode notes, see [Agent Adapters](agent-adapters.md).
|