@soddong/agentic-runtime 0.16.0
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/.tbls.yml +103 -0
- package/CHANGELOG.md +229 -0
- package/README.md +707 -0
- package/dist/agent-router.d.ts +39 -0
- package/dist/agent-router.d.ts.map +1 -0
- package/dist/agent-router.js +175 -0
- package/dist/agent-router.js.map +1 -0
- package/dist/bundle-installer.d.ts +25 -0
- package/dist/bundle-installer.d.ts.map +1 -0
- package/dist/bundle-installer.js +149 -0
- package/dist/bundle-installer.js.map +1 -0
- package/dist/bundle-registry.d.ts +30 -0
- package/dist/bundle-registry.d.ts.map +1 -0
- package/dist/bundle-registry.js +102 -0
- package/dist/bundle-registry.js.map +1 -0
- package/dist/claude-code-adapter.d.ts +27 -0
- package/dist/claude-code-adapter.d.ts.map +1 -0
- package/dist/claude-code-adapter.js +177 -0
- package/dist/claude-code-adapter.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +1731 -0
- package/dist/cli.js.map +1 -0
- package/dist/codex-adapter.d.ts +23 -0
- package/dist/codex-adapter.d.ts.map +1 -0
- package/dist/codex-adapter.js +264 -0
- package/dist/codex-adapter.js.map +1 -0
- package/dist/database.d.ts +22 -0
- package/dist/database.d.ts.map +1 -0
- package/dist/database.js +184 -0
- package/dist/database.js.map +1 -0
- package/dist/execution-projects.d.ts +71 -0
- package/dist/execution-projects.d.ts.map +1 -0
- package/dist/execution-projects.js +333 -0
- package/dist/execution-projects.js.map +1 -0
- package/dist/execution-query.d.ts +73 -0
- package/dist/execution-query.d.ts.map +1 -0
- package/dist/execution-query.js +370 -0
- package/dist/execution-query.js.map +1 -0
- package/dist/execution.d.ts +47 -0
- package/dist/execution.d.ts.map +1 -0
- package/dist/execution.js +153 -0
- package/dist/execution.js.map +1 -0
- package/dist/hook-command.d.ts +3 -0
- package/dist/hook-command.d.ts.map +1 -0
- package/dist/hook-command.js +13 -0
- package/dist/hook-command.js.map +1 -0
- package/dist/hook-record.d.ts +16 -0
- package/dist/hook-record.d.ts.map +1 -0
- package/dist/hook-record.js +427 -0
- package/dist/hook-record.js.map +1 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/kiro-adapter.d.ts +38 -0
- package/dist/kiro-adapter.d.ts.map +1 -0
- package/dist/kiro-adapter.js +374 -0
- package/dist/kiro-adapter.js.map +1 -0
- package/dist/module-registry.d.ts +21 -0
- package/dist/module-registry.d.ts.map +1 -0
- package/dist/module-registry.js +75 -0
- package/dist/module-registry.js.map +1 -0
- package/dist/runtime-info.d.ts +8 -0
- package/dist/runtime-info.d.ts.map +1 -0
- package/dist/runtime-info.js +15 -0
- package/dist/runtime-info.js.map +1 -0
- package/dist/seed-importer.d.ts +77 -0
- package/dist/seed-importer.d.ts.map +1 -0
- package/dist/seed-importer.js +570 -0
- package/dist/seed-importer.js.map +1 -0
- package/docs/build.md +129 -0
- package/docs/configuration.md +61 -0
- package/docs/delivery.md +90 -0
- package/docs/operations.md +112 -0
- package/docs/publishing.md +196 -0
- package/docs/schema/generated/README.md +31 -0
- package/docs/schema/generated/agentic_execution_logs.md +90 -0
- package/docs/schema/generated/agentic_execution_logs.svg +52 -0
- package/docs/schema/generated/agentic_execution_outputs.md +85 -0
- package/docs/schema/generated/agentic_execution_outputs.svg +52 -0
- package/docs/schema/generated/agentic_execution_project_activities.md +83 -0
- package/docs/schema/generated/agentic_execution_project_activities.svg +71 -0
- package/docs/schema/generated/agentic_execution_project_stages.md +69 -0
- package/docs/schema/generated/agentic_execution_project_stages.svg +71 -0
- package/docs/schema/generated/agentic_execution_projects.md +82 -0
- package/docs/schema/generated/agentic_execution_projects.svg +92 -0
- package/docs/schema/generated/agentic_execution_runs.md +111 -0
- package/docs/schema/generated/agentic_execution_runs.svg +92 -0
- package/docs/schema/generated/agentic_project_bundles.md +106 -0
- package/docs/schema/generated/agentic_project_bundles.svg +91 -0
- package/docs/schema/generated/agentic_project_modules.md +77 -0
- package/docs/schema/generated/agentic_project_modules.svg +49 -0
- package/docs/schema/generated/agentic_runtime_metadata.md +62 -0
- package/docs/schema/generated/agentic_runtime_metadata.svg +28 -0
- package/docs/schema/generated/agentic_schema_migrations.md +65 -0
- package/docs/schema/generated/agentic_schema_migrations.svg +32 -0
- package/docs/schema/generated/agentic_seed_import_items.md +85 -0
- package/docs/schema/generated/agentic_seed_import_items.svg +47 -0
- package/docs/schema/generated/agentic_seed_import_runs.md +103 -0
- package/docs/schema/generated/agentic_seed_import_runs.svg +68 -0
- package/docs/schema/generated/agentic_user_requests.md +66 -0
- package/docs/schema/generated/agentic_user_requests.svg +52 -0
- package/docs/schema/generated/schema.json +1976 -0
- package/docs/schema/generated/schema.mmd +167 -0
- package/docs/schema/generated/schema.svg +266 -0
- package/docs/schema/migrations.md +163 -0
- package/docs/usage.md +774 -0
- package/package.json +32 -0
- package/src/database/migrations/0001_runtime_base.sql +231 -0
- package/src/database/migrations/0002_runtime_bundles.sql +61 -0
- package/src/database/migrations/0003_runtime_seed_imports.sql +121 -0
- package/src/database/migrations/0004_runtime_seed_apply_status.sql +76 -0
- package/src/database/migrations/0005_runtime_execution_projects.sql +92 -0
|
@@ -0,0 +1,374 @@
|
|
|
1
|
+
import { spawnSync } from "node:child_process";
|
|
2
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
import { getProjectHookCommand } from "./hook-command.js";
|
|
5
|
+
import { getRuntimeInfo } from "./runtime-info.js";
|
|
6
|
+
const ADAPTER_NAME = "agentic-runtime-kiro";
|
|
7
|
+
const AGENT_NAME = "kiro_with_hooks";
|
|
8
|
+
const V2_PROMPT_EVENT = "userPromptSubmit";
|
|
9
|
+
const V2_STOP_EVENT = "stop";
|
|
10
|
+
const V3_PROMPT_TRIGGER = "UserPromptSubmit";
|
|
11
|
+
const V3_STOP_TRIGGER = "Stop";
|
|
12
|
+
const PROMPT_COMMAND = getProjectHookCommand("kiro", "PromptSubmit");
|
|
13
|
+
const STOP_COMMAND = getProjectHookCommand("kiro", "AgentStop");
|
|
14
|
+
function writeFile(path, content, force, filesWritten) {
|
|
15
|
+
if (existsSync(path) && !force) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
mkdirSync(join(path, ".."), { recursive: true });
|
|
19
|
+
writeFileSync(path, content, "utf8");
|
|
20
|
+
filesWritten.push(path);
|
|
21
|
+
}
|
|
22
|
+
function runKiroCli(args, cwd) {
|
|
23
|
+
const result = spawnSync("kiro-cli", [...args], {
|
|
24
|
+
cwd,
|
|
25
|
+
encoding: "utf8",
|
|
26
|
+
stdio: "pipe"
|
|
27
|
+
});
|
|
28
|
+
return result.status === 0;
|
|
29
|
+
}
|
|
30
|
+
function hasKiroCli(cwd) {
|
|
31
|
+
return runKiroCli(["--version"], cwd);
|
|
32
|
+
}
|
|
33
|
+
function setDefaultKiroAgent(cwd) {
|
|
34
|
+
return runKiroCli(["agent", "set-default", AGENT_NAME], cwd);
|
|
35
|
+
}
|
|
36
|
+
function readJsonObject(path) {
|
|
37
|
+
if (!existsSync(path)) {
|
|
38
|
+
return {};
|
|
39
|
+
}
|
|
40
|
+
const parsed = JSON.parse(readFileSync(path, "utf8"));
|
|
41
|
+
if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
42
|
+
throw new Error(`${path} must contain a JSON object`);
|
|
43
|
+
}
|
|
44
|
+
return parsed;
|
|
45
|
+
}
|
|
46
|
+
function readAgentConfig(agentConfigPath) {
|
|
47
|
+
const parsed = readJsonObject(agentConfigPath);
|
|
48
|
+
return {
|
|
49
|
+
name: typeof parsed.name === "string" ? parsed.name : AGENT_NAME,
|
|
50
|
+
description: typeof parsed.description === "string"
|
|
51
|
+
? parsed.description
|
|
52
|
+
: "Kiro CLI agent configured with agentic-runtime execution hooks.",
|
|
53
|
+
...parsed
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
function hasCliHook(config, eventName, command) {
|
|
57
|
+
const hooks = config.hooks?.[eventName] ?? [];
|
|
58
|
+
return hooks.some((hook) => hook.command === command);
|
|
59
|
+
}
|
|
60
|
+
function addCliHook(config, eventName, command) {
|
|
61
|
+
if (hasCliHook(config, eventName, command)) {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
config.hooks = config.hooks ?? {};
|
|
65
|
+
config.hooks[eventName] = config.hooks[eventName] ?? [];
|
|
66
|
+
config.hooks[eventName].push({
|
|
67
|
+
command
|
|
68
|
+
});
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
71
|
+
function readV3HookFile(path) {
|
|
72
|
+
const parsed = readJsonObject(path);
|
|
73
|
+
return {
|
|
74
|
+
version: typeof parsed.version === "string" ? parsed.version : "v1",
|
|
75
|
+
...parsed,
|
|
76
|
+
hooks: Array.isArray(parsed.hooks) ? parsed.hooks : []
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
function hasV3Hook(config, trigger, command) {
|
|
80
|
+
return (config.hooks ?? []).some((hook) => hook.trigger === trigger && hook.action?.type === "command" && hook.action.command === command);
|
|
81
|
+
}
|
|
82
|
+
function addV3Hook(config, name, trigger, command) {
|
|
83
|
+
if (hasV3Hook(config, trigger, command)) {
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
config.version = config.version ?? "v1";
|
|
87
|
+
config.hooks = config.hooks ?? [];
|
|
88
|
+
config.hooks.push({
|
|
89
|
+
name,
|
|
90
|
+
trigger,
|
|
91
|
+
action: {
|
|
92
|
+
type: "command",
|
|
93
|
+
command
|
|
94
|
+
},
|
|
95
|
+
enabled: true
|
|
96
|
+
});
|
|
97
|
+
return true;
|
|
98
|
+
}
|
|
99
|
+
function steeringMarkdown() {
|
|
100
|
+
return `---
|
|
101
|
+
inclusion: always
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
# Agentic Runtime for Kiro
|
|
105
|
+
|
|
106
|
+
이 프로젝트는 \`agentic-runtime\`을 사용해 사용자 지시, Agent 실행 상태, 로그, 결과를 \`.agentic/platform.sqlite\`에 기록합니다.
|
|
107
|
+
|
|
108
|
+
## Execution Recording Policy
|
|
109
|
+
|
|
110
|
+
- Kiro CLI V2에서는 \`.kiro/agents/${AGENT_NAME}.json\`의 hooks 필드를 통해 사용자 prompt와 turn 종료를 기록합니다.
|
|
111
|
+
- Kiro CLI V2에서는 \`${AGENT_NAME}\` agent를 사용해야 embedded hook이 적용됩니다.
|
|
112
|
+
- Kiro CLI V3에서는 \`.kiro/hooks/agentic-runtime.json\` standalone hook 파일을 통해 사용자 prompt와 turn 종료를 기록합니다.
|
|
113
|
+
- Kiro IDE에서는 \`.kiro/hooks/*.kiro.hook\` 파일을 통해 사용자 prompt와 turn 종료를 기록할 수 있습니다.
|
|
114
|
+
- 이전 지시, 작업 이력, 최근 결과, 실패 이력, 작업 현황을 질문받으면 현재 대화 기억에만 의존하지 말고 execution DB를 먼저 조회합니다.
|
|
115
|
+
|
|
116
|
+
## Execution Query Commands
|
|
117
|
+
|
|
118
|
+
\`\`\`bash
|
|
119
|
+
npx agentic execution latest --source kiro --format json
|
|
120
|
+
npx agentic execution list --range 7d --source kiro --format json
|
|
121
|
+
npx agentic execution summary --range today --source kiro --format json
|
|
122
|
+
npx agentic execution show <run-id> --format json
|
|
123
|
+
\`\`\`
|
|
124
|
+
|
|
125
|
+
조회 결과가 있으면 \`agentic_user_requests\`, \`agentic_execution_runs\`, \`agentic_execution_logs\`, \`agentic_execution_outputs\` 기록을 기준으로 답변합니다.
|
|
126
|
+
|
|
127
|
+
## Agent Resource Context Policy
|
|
128
|
+
|
|
129
|
+
- 사용자가 문서 작성, 산출물 작성, 검증, 가이드 기반 작업을 요청하면 설치된 Agent package의 resource context를 먼저 확인합니다.
|
|
130
|
+
- 처음 사용하는 package는 한 번 등록합니다.
|
|
131
|
+
|
|
132
|
+
\`\`\`bash
|
|
133
|
+
npx agentic agent register agentic-domain-document
|
|
134
|
+
\`\`\`
|
|
135
|
+
|
|
136
|
+
- 요청별 context 확인 명령은 다음과 같습니다.
|
|
137
|
+
|
|
138
|
+
\`\`\`bash
|
|
139
|
+
npx agentic agent context "<사용자 지시문>"
|
|
140
|
+
npx agentic agent context "<사용자 지시문>" --format json
|
|
141
|
+
\`\`\`
|
|
142
|
+
|
|
143
|
+
- 조회된 context가 있으면 해당 instruction, guide, example, validation rule을 우선 적용합니다.
|
|
144
|
+
`;
|
|
145
|
+
}
|
|
146
|
+
function cliGuideMarkdown() {
|
|
147
|
+
const runtimeInfo = getRuntimeInfo();
|
|
148
|
+
return `# Agentic Runtime Kiro Adapter
|
|
149
|
+
|
|
150
|
+
adapter: \`${ADAPTER_NAME}\`
|
|
151
|
+
runtime: \`${runtimeInfo.name}@${runtimeInfo.version}\`
|
|
152
|
+
|
|
153
|
+
## Kiro CLI V3 Early Access
|
|
154
|
+
|
|
155
|
+
Kiro CLI V3는 standalone hook 파일을 사용합니다.
|
|
156
|
+
|
|
157
|
+
생성 또는 병합되는 파일:
|
|
158
|
+
|
|
159
|
+
\`\`\`text
|
|
160
|
+
.kiro/hooks/agentic-runtime.json
|
|
161
|
+
\`\`\`
|
|
162
|
+
|
|
163
|
+
등록되는 hook:
|
|
164
|
+
|
|
165
|
+
| Kiro CLI V3 trigger | Command |
|
|
166
|
+
| --- | --- |
|
|
167
|
+
| \`${V3_PROMPT_TRIGGER}\` | \`${PROMPT_COMMAND}\` |
|
|
168
|
+
| \`${V3_STOP_TRIGGER}\` | \`${STOP_COMMAND}\` |
|
|
169
|
+
|
|
170
|
+
## Kiro CLI V2
|
|
171
|
+
|
|
172
|
+
Kiro CLI V2는 agent config의 embedded \`hooks\` 필드를 사용합니다.
|
|
173
|
+
|
|
174
|
+
생성 또는 병합되는 파일:
|
|
175
|
+
|
|
176
|
+
\`\`\`text
|
|
177
|
+
.kiro/agents/${AGENT_NAME}.json
|
|
178
|
+
\`\`\`
|
|
179
|
+
|
|
180
|
+
V2에서 hook을 적용하려면 다음 중 하나를 사용합니다.
|
|
181
|
+
|
|
182
|
+
\`\`\`bash
|
|
183
|
+
kiro-cli --agent ${AGENT_NAME}
|
|
184
|
+
kiro-cli agent set-default ${AGENT_NAME}
|
|
185
|
+
\`\`\`
|
|
186
|
+
|
|
187
|
+
등록되는 hook:
|
|
188
|
+
|
|
189
|
+
| Kiro CLI V2 event | Command |
|
|
190
|
+
| --- | --- |
|
|
191
|
+
| \`${V2_PROMPT_EVENT}\` | \`${PROMPT_COMMAND}\` |
|
|
192
|
+
| \`${V2_STOP_EVENT}\` | \`${STOP_COMMAND}\` |
|
|
193
|
+
|
|
194
|
+
Kiro CLI에서 \`/hooks\`를 실행해 hook 인식 여부를 확인합니다.
|
|
195
|
+
|
|
196
|
+
## Kiro IDE
|
|
197
|
+
|
|
198
|
+
Kiro IDE 호환을 위해 다음 파일도 함께 생성합니다.
|
|
199
|
+
|
|
200
|
+
\`\`\`text
|
|
201
|
+
.kiro/hooks/agentic-runtime-prompt-submit.kiro.hook
|
|
202
|
+
.kiro/hooks/agentic-runtime-agent-stop.kiro.hook
|
|
203
|
+
\`\`\`
|
|
204
|
+
|
|
205
|
+
Kiro CLI 검증이 우선이며, IDE hook 파일은 IDE 사용 시 보조 호환 산출물입니다.
|
|
206
|
+
|
|
207
|
+
## 검증 명령
|
|
208
|
+
|
|
209
|
+
\`\`\`bash
|
|
210
|
+
npx agentic execution latest --source kiro --format json
|
|
211
|
+
npx agentic execution list --range today --source kiro
|
|
212
|
+
npx agentic execution summary --range today --source kiro
|
|
213
|
+
\`\`\`
|
|
214
|
+
`;
|
|
215
|
+
}
|
|
216
|
+
function idePromptHookJson() {
|
|
217
|
+
return `${JSON.stringify({
|
|
218
|
+
name: "agentic-runtime-prompt-submit",
|
|
219
|
+
enabled: true,
|
|
220
|
+
when: {
|
|
221
|
+
type: "promptSubmit"
|
|
222
|
+
},
|
|
223
|
+
then: {
|
|
224
|
+
type: "runCommand",
|
|
225
|
+
command: PROMPT_COMMAND
|
|
226
|
+
}
|
|
227
|
+
}, null, 2)}\n`;
|
|
228
|
+
}
|
|
229
|
+
function ideStopHookJson() {
|
|
230
|
+
return `${JSON.stringify({
|
|
231
|
+
name: "agentic-runtime-agent-stop",
|
|
232
|
+
enabled: true,
|
|
233
|
+
when: {
|
|
234
|
+
type: "agentStop"
|
|
235
|
+
},
|
|
236
|
+
then: {
|
|
237
|
+
type: "runCommand",
|
|
238
|
+
command: STOP_COMMAND
|
|
239
|
+
}
|
|
240
|
+
}, null, 2)}\n`;
|
|
241
|
+
}
|
|
242
|
+
function readmeMarkdown() {
|
|
243
|
+
return `# Agentic Runtime Kiro Adapter
|
|
244
|
+
|
|
245
|
+
이 디렉터리는 \`agentic-runtime\`이 생성한 Kiro adapter 보조 파일을 담습니다.
|
|
246
|
+
|
|
247
|
+
## 생성 파일
|
|
248
|
+
|
|
249
|
+
| 파일 | 역할 |
|
|
250
|
+
| --- | --- |
|
|
251
|
+
| \`.kiro/steering/agentic-runtime.md\` | Kiro가 참고할 runtime execution 지침 |
|
|
252
|
+
| \`.kiro/hooks/agentic-runtime.json\` | Kiro CLI V3 standalone hook 설정 |
|
|
253
|
+
| \`.kiro/agents/${AGENT_NAME}.json\` | Kiro CLI V2 embedded hook 설정 |
|
|
254
|
+
| \`.kiro/hooks/*.kiro.hook\` | Kiro IDE hook 호환 파일 |
|
|
255
|
+
| \`plugins/agentic-runtime-kiro/hooks/kiro-hook-guide.md\` | Kiro CLI/IDE hook 설정 가이드 |
|
|
256
|
+
|
|
257
|
+
Kiro CLI V3를 사용할 때는 \`.kiro/hooks/agentic-runtime.json\`, Kiro CLI V2를 사용할 때는 \`.kiro/agents/${AGENT_NAME}.json\`과 \`--agent ${AGENT_NAME}\` 또는 \`kiro-cli agent set-default ${AGENT_NAME}\` 적용 여부가 핵심입니다.
|
|
258
|
+
`;
|
|
259
|
+
}
|
|
260
|
+
export function installKiroAdapter(projectRoot = process.cwd(), options = {}) {
|
|
261
|
+
const filesWritten = [];
|
|
262
|
+
const messages = [];
|
|
263
|
+
const force = options.force ?? false;
|
|
264
|
+
const setDefault = options.setDefault ?? false;
|
|
265
|
+
const adapterRoot = join(projectRoot, "plugins", ADAPTER_NAME);
|
|
266
|
+
const steeringPath = join(projectRoot, ".kiro", "steering", "agentic-runtime.md");
|
|
267
|
+
const v2AgentConfigPath = join(projectRoot, ".kiro", "agents", `${AGENT_NAME}.json`);
|
|
268
|
+
const v3HookPath = join(projectRoot, ".kiro", "hooks", "agentic-runtime.json");
|
|
269
|
+
const idePromptHookPath = join(projectRoot, ".kiro", "hooks", "agentic-runtime-prompt-submit.kiro.hook");
|
|
270
|
+
const ideStopHookPath = join(projectRoot, ".kiro", "hooks", "agentic-runtime-agent-stop.kiro.hook");
|
|
271
|
+
const kiroCliAvailable = hasKiroCli(projectRoot);
|
|
272
|
+
writeFile(steeringPath, steeringMarkdown(), force, filesWritten);
|
|
273
|
+
writeFile(join(adapterRoot, "README.md"), readmeMarkdown(), force, filesWritten);
|
|
274
|
+
writeFile(join(adapterRoot, "hooks", "kiro-hook-guide.md"), cliGuideMarkdown(), force, filesWritten);
|
|
275
|
+
writeFile(idePromptHookPath, idePromptHookJson(), force, filesWritten);
|
|
276
|
+
writeFile(ideStopHookPath, ideStopHookJson(), force, filesWritten);
|
|
277
|
+
mkdirSync(join(v2AgentConfigPath, ".."), { recursive: true });
|
|
278
|
+
const agentConfig = readAgentConfig(v2AgentConfigPath);
|
|
279
|
+
const changedV2Prompt = addCliHook(agentConfig, V2_PROMPT_EVENT, PROMPT_COMMAND);
|
|
280
|
+
const changedV2Stop = addCliHook(agentConfig, V2_STOP_EVENT, STOP_COMMAND);
|
|
281
|
+
if (changedV2Prompt || changedV2Stop || !existsSync(v2AgentConfigPath) || force) {
|
|
282
|
+
writeFileSync(v2AgentConfigPath, `${JSON.stringify(agentConfig, null, 2)}\n`, "utf8");
|
|
283
|
+
filesWritten.push(v2AgentConfigPath);
|
|
284
|
+
}
|
|
285
|
+
mkdirSync(join(v3HookPath, ".."), { recursive: true });
|
|
286
|
+
const v3HookFile = readV3HookFile(v3HookPath);
|
|
287
|
+
const changedV3Prompt = addV3Hook(v3HookFile, "agentic-runtime-prompt-submit", V3_PROMPT_TRIGGER, PROMPT_COMMAND);
|
|
288
|
+
const changedV3Stop = addV3Hook(v3HookFile, "agentic-runtime-agent-stop", V3_STOP_TRIGGER, STOP_COMMAND);
|
|
289
|
+
if (changedV3Prompt || changedV3Stop || !existsSync(v3HookPath) || force) {
|
|
290
|
+
writeFileSync(v3HookPath, `${JSON.stringify(v3HookFile, null, 2)}\n`, "utf8");
|
|
291
|
+
filesWritten.push(v3HookPath);
|
|
292
|
+
}
|
|
293
|
+
if (!kiroCliAvailable) {
|
|
294
|
+
messages.push("Kiro CLI was not found. V2/V3 hook files, steering, and IDE hook files were still generated.");
|
|
295
|
+
}
|
|
296
|
+
const defaultAgentConfigured = setDefault && kiroCliAvailable ? setDefaultKiroAgent(projectRoot) : false;
|
|
297
|
+
messages.push("Kiro CLI V3 hooks were configured in .kiro/hooks/agentic-runtime.json.");
|
|
298
|
+
messages.push(`Kiro CLI V2 hooks were configured in .kiro/agents/${AGENT_NAME}.json.`);
|
|
299
|
+
if (setDefault && defaultAgentConfigured) {
|
|
300
|
+
messages.push(`Kiro CLI default agent was set to ${AGENT_NAME}.`);
|
|
301
|
+
}
|
|
302
|
+
else if (setDefault) {
|
|
303
|
+
messages.push(`Kiro CLI default agent could not be set automatically. Retry: kiro-cli agent set-default ${AGENT_NAME}`);
|
|
304
|
+
}
|
|
305
|
+
else {
|
|
306
|
+
messages.push(`For Kiro CLI V2, run with --agent ${AGENT_NAME} or set it as default with: kiro-cli agent set-default ${AGENT_NAME}`);
|
|
307
|
+
}
|
|
308
|
+
messages.push("Kiro IDE hook files were also prepared under .kiro/hooks for IDE compatibility.");
|
|
309
|
+
return {
|
|
310
|
+
adapterRoot,
|
|
311
|
+
steeringPath,
|
|
312
|
+
v2AgentConfigPath,
|
|
313
|
+
v3HookPath,
|
|
314
|
+
idePromptHookPath,
|
|
315
|
+
ideStopHookPath,
|
|
316
|
+
filesWritten,
|
|
317
|
+
kiroCliAvailable,
|
|
318
|
+
v2HooksConfigured: hasCliHook(agentConfig, V2_PROMPT_EVENT, PROMPT_COMMAND) && hasCliHook(agentConfig, V2_STOP_EVENT, STOP_COMMAND),
|
|
319
|
+
v3HooksConfigured: hasV3Hook(v3HookFile, V3_PROMPT_TRIGGER, PROMPT_COMMAND) && hasV3Hook(v3HookFile, V3_STOP_TRIGGER, STOP_COMMAND),
|
|
320
|
+
ideHookFilesPrepared: existsSync(idePromptHookPath) && existsSync(ideStopHookPath),
|
|
321
|
+
setDefaultRequested: setDefault,
|
|
322
|
+
defaultAgentConfigured,
|
|
323
|
+
messages
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
export function getKiroAdapterStatus(projectRoot = process.cwd()) {
|
|
327
|
+
const adapterRoot = join(projectRoot, "plugins", ADAPTER_NAME);
|
|
328
|
+
const steeringPath = join(projectRoot, ".kiro", "steering", "agentic-runtime.md");
|
|
329
|
+
const v2AgentConfigPath = join(projectRoot, ".kiro", "agents", `${AGENT_NAME}.json`);
|
|
330
|
+
const v3HookPath = join(projectRoot, ".kiro", "hooks", "agentic-runtime.json");
|
|
331
|
+
const idePromptHookPath = join(projectRoot, ".kiro", "hooks", "agentic-runtime-prompt-submit.kiro.hook");
|
|
332
|
+
const ideStopHookPath = join(projectRoot, ".kiro", "hooks", "agentic-runtime-agent-stop.kiro.hook");
|
|
333
|
+
const notes = [];
|
|
334
|
+
const kiroCliAvailable = hasKiroCli(projectRoot);
|
|
335
|
+
let agentConfig = {};
|
|
336
|
+
let v3HookFile = {};
|
|
337
|
+
if (existsSync(v2AgentConfigPath)) {
|
|
338
|
+
try {
|
|
339
|
+
agentConfig = readAgentConfig(v2AgentConfigPath);
|
|
340
|
+
}
|
|
341
|
+
catch (error) {
|
|
342
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
343
|
+
notes.push(`V2 agent config is invalid: ${message}`);
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
if (existsSync(v3HookPath)) {
|
|
347
|
+
try {
|
|
348
|
+
v3HookFile = readV3HookFile(v3HookPath);
|
|
349
|
+
}
|
|
350
|
+
catch (error) {
|
|
351
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
352
|
+
notes.push(`V3 hook file is invalid: ${message}`);
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
if (!kiroCliAvailable) {
|
|
356
|
+
notes.push("Kiro CLI was not found.");
|
|
357
|
+
}
|
|
358
|
+
return {
|
|
359
|
+
adapterRootExists: existsSync(adapterRoot),
|
|
360
|
+
steeringExists: existsSync(steeringPath),
|
|
361
|
+
v2AgentConfigExists: existsSync(v2AgentConfigPath),
|
|
362
|
+
v2PromptHookConfigured: hasCliHook(agentConfig, V2_PROMPT_EVENT, PROMPT_COMMAND),
|
|
363
|
+
v2StopHookConfigured: hasCliHook(agentConfig, V2_STOP_EVENT, STOP_COMMAND),
|
|
364
|
+
v3HookExists: existsSync(v3HookPath),
|
|
365
|
+
v3PromptHookConfigured: hasV3Hook(v3HookFile, V3_PROMPT_TRIGGER, PROMPT_COMMAND),
|
|
366
|
+
v3StopHookConfigured: hasV3Hook(v3HookFile, V3_STOP_TRIGGER, STOP_COMMAND),
|
|
367
|
+
idePromptHookExists: existsSync(idePromptHookPath),
|
|
368
|
+
ideStopHookExists: existsSync(ideStopHookPath),
|
|
369
|
+
kiroCliAvailable,
|
|
370
|
+
v2AgentName: AGENT_NAME,
|
|
371
|
+
notes
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
//# sourceMappingURL=kiro-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kiro-adapter.js","sourceRoot":"","sources":["../src/kiro-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type AgenticModuleLayer = "runtime" | "domain" | "capability" | "application" | "support";
|
|
2
|
+
export interface RegisterProjectModuleInput {
|
|
3
|
+
readonly packageName: string;
|
|
4
|
+
readonly packageVersion: string;
|
|
5
|
+
readonly moduleLayer?: AgenticModuleLayer;
|
|
6
|
+
readonly manifest?: unknown;
|
|
7
|
+
readonly enabled?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface ProjectModule {
|
|
10
|
+
readonly packageName: string;
|
|
11
|
+
readonly packageVersion: string;
|
|
12
|
+
readonly moduleLayer?: AgenticModuleLayer;
|
|
13
|
+
readonly manifest: unknown;
|
|
14
|
+
readonly enabled: boolean;
|
|
15
|
+
readonly registeredAt: string;
|
|
16
|
+
readonly updatedAt: string;
|
|
17
|
+
}
|
|
18
|
+
export declare function parseModuleLayer(value: string | undefined): AgenticModuleLayer | undefined;
|
|
19
|
+
export declare function registerProjectModule(input: RegisterProjectModuleInput, projectRoot?: string): ProjectModule;
|
|
20
|
+
export declare function listProjectModules(projectRoot?: string): readonly ProjectModule[];
|
|
21
|
+
//# sourceMappingURL=module-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-registry.d.ts","sourceRoot":"","sources":["../src/module-registry.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,GAAG,SAAS,CAAC;AAEjG,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAkBD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,kBAAkB,GAAG,SAAS,CAU1F;AAuDD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,0BAA0B,EACjC,WAAW,GAAE,MAAsB,GAClC,aAAa,CAOf;AAED,wBAAgB,kBAAkB,CAAC,WAAW,GAAE,MAAsB,GAAG,SAAS,aAAa,EAAE,CAehG"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { openRuntimeDatabase } from "./database.js";
|
|
2
|
+
const MODULE_LAYERS = ["runtime", "domain", "capability", "application", "support"];
|
|
3
|
+
function isModuleLayer(value) {
|
|
4
|
+
return MODULE_LAYERS.includes(value);
|
|
5
|
+
}
|
|
6
|
+
export function parseModuleLayer(value) {
|
|
7
|
+
if (value === undefined) {
|
|
8
|
+
return undefined;
|
|
9
|
+
}
|
|
10
|
+
if (!isModuleLayer(value)) {
|
|
11
|
+
throw new Error(`Unsupported module layer: ${value}`);
|
|
12
|
+
}
|
|
13
|
+
return value;
|
|
14
|
+
}
|
|
15
|
+
function defaultManifest(input) {
|
|
16
|
+
return {
|
|
17
|
+
packageName: input.packageName,
|
|
18
|
+
packageVersion: input.packageVersion,
|
|
19
|
+
moduleLayer: input.moduleLayer
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
function mapProjectModuleRow(row) {
|
|
23
|
+
return {
|
|
24
|
+
packageName: row.package_name,
|
|
25
|
+
packageVersion: row.package_version,
|
|
26
|
+
moduleLayer: row.module_layer ?? undefined,
|
|
27
|
+
manifest: JSON.parse(row.manifest_json),
|
|
28
|
+
enabled: row.is_enabled === 1,
|
|
29
|
+
registeredAt: row.registered_at,
|
|
30
|
+
updatedAt: row.updated_at
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
function upsertProjectModule(db, input) {
|
|
34
|
+
const manifest = input.manifest ?? defaultManifest(input);
|
|
35
|
+
const enabled = input.enabled ?? true;
|
|
36
|
+
db.prepare(`INSERT INTO agentic_project_modules
|
|
37
|
+
(package_name, package_version, module_layer, manifest_json, is_enabled, registered_at, updated_at)
|
|
38
|
+
VALUES (?, ?, ?, ?, ?, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP)
|
|
39
|
+
ON CONFLICT(package_name) DO UPDATE SET
|
|
40
|
+
package_version = excluded.package_version,
|
|
41
|
+
module_layer = excluded.module_layer,
|
|
42
|
+
manifest_json = excluded.manifest_json,
|
|
43
|
+
is_enabled = excluded.is_enabled,
|
|
44
|
+
updated_at = excluded.updated_at`).run(input.packageName, input.packageVersion, input.moduleLayer ?? null, JSON.stringify(manifest), enabled ? 1 : 0);
|
|
45
|
+
const row = db
|
|
46
|
+
.prepare(`SELECT package_name, package_version, module_layer, manifest_json, is_enabled, registered_at, updated_at
|
|
47
|
+
FROM agentic_project_modules
|
|
48
|
+
WHERE package_name = ?`)
|
|
49
|
+
.get(input.packageName);
|
|
50
|
+
return mapProjectModuleRow(row);
|
|
51
|
+
}
|
|
52
|
+
export function registerProjectModule(input, projectRoot = process.cwd()) {
|
|
53
|
+
const db = openRuntimeDatabase(projectRoot);
|
|
54
|
+
try {
|
|
55
|
+
return upsertProjectModule(db, input);
|
|
56
|
+
}
|
|
57
|
+
finally {
|
|
58
|
+
db.close();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
export function listProjectModules(projectRoot = process.cwd()) {
|
|
62
|
+
const db = openRuntimeDatabase(projectRoot);
|
|
63
|
+
try {
|
|
64
|
+
const rows = db
|
|
65
|
+
.prepare(`SELECT package_name, package_version, module_layer, manifest_json, is_enabled, registered_at, updated_at
|
|
66
|
+
FROM agentic_project_modules
|
|
67
|
+
ORDER BY package_name`)
|
|
68
|
+
.all();
|
|
69
|
+
return rows.map(mapProjectModuleRow);
|
|
70
|
+
}
|
|
71
|
+
finally {
|
|
72
|
+
db.close();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=module-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-registry.js","sourceRoot":"","sources":["../src/module-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface RuntimeInfo {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
readonly version: string;
|
|
4
|
+
readonly binaryName: string;
|
|
5
|
+
}
|
|
6
|
+
export declare const runtimeInfo: RuntimeInfo;
|
|
7
|
+
export declare function getRuntimeInfo(): RuntimeInfo;
|
|
8
|
+
//# sourceMappingURL=runtime-info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-info.d.ts","sourceRoot":"","sources":["../src/runtime-info.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAeD,eAAO,MAAM,WAAW,EAAE,WAIzB,CAAC;AAEF,wBAAgB,cAAc,IAAI,WAAW,CAE5C"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
function readPackageJson() {
|
|
3
|
+
const packageJsonUrl = new URL("../package.json", import.meta.url);
|
|
4
|
+
return JSON.parse(readFileSync(packageJsonUrl, "utf8"));
|
|
5
|
+
}
|
|
6
|
+
const packageJson = readPackageJson();
|
|
7
|
+
export const runtimeInfo = {
|
|
8
|
+
name: packageJson.name ?? "@soddong/agentic-runtime",
|
|
9
|
+
version: packageJson.version ?? "0.0.0",
|
|
10
|
+
binaryName: packageJson.bin !== undefined ? Object.keys(packageJson.bin)[0] ?? "agentic" : "agentic"
|
|
11
|
+
};
|
|
12
|
+
export function getRuntimeInfo() {
|
|
13
|
+
return runtimeInfo;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=runtime-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-info.js","sourceRoot":"","sources":["../src/runtime-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAcvC,SAAS,eAAe;IACtB,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAgB,CAAC;AACzE,CAAC;AAED,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;AAEtC,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,0BAA0B;IACpD,OAAO,EAAE,WAAW,CAAC,OAAO,IAAI,OAAO;IACvC,UAAU,EAAE,WAAW,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS;CACrG,CAAC;AAEF,MAAM,UAAU,cAAc;IAC5B,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
export type SeedImportRunStatus = "planned" | "blocked" | "failed" | "applied";
|
|
2
|
+
export type SeedImportItemStatus = "planned" | "blocked" | "warning" | "skipped" | "applied" | "failed";
|
|
3
|
+
export interface CreateSeedImportPlanInput {
|
|
4
|
+
readonly bundleCode: string;
|
|
5
|
+
readonly packageName?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface ApplySeedImportPlanInput {
|
|
8
|
+
readonly seedImportRunId?: number;
|
|
9
|
+
readonly bundleCode?: string;
|
|
10
|
+
readonly packageName?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface AgenticSeedApplyInput {
|
|
13
|
+
readonly sourcePackageName: string;
|
|
14
|
+
readonly sourcePackageVersion: string;
|
|
15
|
+
readonly bundleCode: string;
|
|
16
|
+
readonly bundleVersion: string;
|
|
17
|
+
readonly methodologyCode?: string;
|
|
18
|
+
readonly sourceSection: string;
|
|
19
|
+
readonly targetOperation: string;
|
|
20
|
+
readonly itemKey?: string;
|
|
21
|
+
readonly itemPayload?: unknown;
|
|
22
|
+
readonly mode: "apply";
|
|
23
|
+
}
|
|
24
|
+
export interface AgenticSeedApplyResult {
|
|
25
|
+
readonly status: "applied" | "skipped" | "blocked" | "failed";
|
|
26
|
+
readonly targetRefs?: readonly string[];
|
|
27
|
+
readonly message?: string;
|
|
28
|
+
readonly diagnostics?: readonly unknown[];
|
|
29
|
+
}
|
|
30
|
+
export interface SeedImportItem {
|
|
31
|
+
readonly seedImportItemId: number;
|
|
32
|
+
readonly seedImportRunId: number;
|
|
33
|
+
readonly itemOrder: number;
|
|
34
|
+
readonly sourceSection: string;
|
|
35
|
+
readonly targetPackage: string;
|
|
36
|
+
readonly targetDomain?: string;
|
|
37
|
+
readonly targetOperation: string;
|
|
38
|
+
readonly itemKey?: string;
|
|
39
|
+
readonly itemCount: number;
|
|
40
|
+
readonly itemStatus: SeedImportItemStatus;
|
|
41
|
+
readonly reasonCode?: string;
|
|
42
|
+
readonly reasonMessage?: string;
|
|
43
|
+
readonly itemPayload?: unknown;
|
|
44
|
+
readonly createdAt: string;
|
|
45
|
+
}
|
|
46
|
+
export interface SeedImportRun {
|
|
47
|
+
readonly seedImportRunId: number;
|
|
48
|
+
readonly bundleId: number;
|
|
49
|
+
readonly packageName: string;
|
|
50
|
+
readonly packageVersion: string;
|
|
51
|
+
readonly bundleCode: string;
|
|
52
|
+
readonly bundleVersion: string;
|
|
53
|
+
readonly methodologyCode?: string;
|
|
54
|
+
readonly importMode: "dry_run" | "apply";
|
|
55
|
+
readonly importStatus: SeedImportRunStatus;
|
|
56
|
+
readonly summary: SeedImportSummary;
|
|
57
|
+
readonly validationResult: unknown;
|
|
58
|
+
readonly createdAt: string;
|
|
59
|
+
readonly updatedAt: string;
|
|
60
|
+
}
|
|
61
|
+
export interface SeedImportSummary {
|
|
62
|
+
readonly totalItems: number;
|
|
63
|
+
readonly plannedItems: number;
|
|
64
|
+
readonly blockedItems: number;
|
|
65
|
+
readonly warningItems: number;
|
|
66
|
+
readonly skippedItems: number;
|
|
67
|
+
readonly appliedItems: number;
|
|
68
|
+
readonly failedItems: number;
|
|
69
|
+
}
|
|
70
|
+
export interface SeedImportPlanResult {
|
|
71
|
+
readonly run: SeedImportRun;
|
|
72
|
+
readonly items: readonly SeedImportItem[];
|
|
73
|
+
}
|
|
74
|
+
export declare function createSeedImportPlan(input: CreateSeedImportPlanInput, projectRoot?: string): Promise<SeedImportPlanResult>;
|
|
75
|
+
export declare function listSeedImportPlans(projectRoot?: string): readonly SeedImportPlanResult[];
|
|
76
|
+
export declare function applySeedImportPlan(input: ApplySeedImportPlanInput, projectRoot?: string): Promise<SeedImportPlanResult>;
|
|
77
|
+
//# sourceMappingURL=seed-importer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seed-importer.d.ts","sourceRoot":"","sources":["../src/seed-importer.ts"],"names":[],"mappings":"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"}
|