@kody-ade/kody-engine 0.4.604 → 0.4.605
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/bin/kody.js +37 -1
- package/package.json +1 -1
- package/templates/kody.yml +1 -0
package/dist/bin/kody.js
CHANGED
|
@@ -15,7 +15,7 @@ var init_package = __esm({
|
|
|
15
15
|
"package.json"() {
|
|
16
16
|
package_default = {
|
|
17
17
|
name: "@kody-ade/kody-engine",
|
|
18
|
-
version: "0.4.
|
|
18
|
+
version: "0.4.605",
|
|
19
19
|
description: "kody \u2014 autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative implementation profiles.",
|
|
20
20
|
license: "MIT",
|
|
21
21
|
type: "module",
|
|
@@ -18481,6 +18481,36 @@ async function saveAccountRepositoryAuth(targetUrl, cookie, auth) {
|
|
|
18481
18481
|
});
|
|
18482
18482
|
if (!response.ok) throw new Error(`app repository setup returned ${response.status}`);
|
|
18483
18483
|
}
|
|
18484
|
+
async function prepareAccountCredentials(ctx, profile, input) {
|
|
18485
|
+
const cookie = browserSessionCookieHeader(profile, input.targetUrl);
|
|
18486
|
+
if (!cookie) {
|
|
18487
|
+
appendAuthMessage(ctx, "Auth: QA account credentials could not be prepared because the app session is missing.");
|
|
18488
|
+
return false;
|
|
18489
|
+
}
|
|
18490
|
+
const origin = browserOrigin(input.targetUrl);
|
|
18491
|
+
for (const name of input.names) {
|
|
18492
|
+
if (!/^[A-Z][A-Z0-9_]{0,127}$/.test(name)) {
|
|
18493
|
+
appendAuthMessage(ctx, "Auth: QA account credentials contain an invalid credential name.");
|
|
18494
|
+
return false;
|
|
18495
|
+
}
|
|
18496
|
+
const credential = await resolveRuntimeSecret(name, ctx);
|
|
18497
|
+
if (!credential.value) {
|
|
18498
|
+
appendAuthMessage(ctx, `Auth: QA account setup is incomplete because no \`${name}\` secret was found.`);
|
|
18499
|
+
return false;
|
|
18500
|
+
}
|
|
18501
|
+
const response = await fetch(`${origin}/api/kody/account/credentials`, {
|
|
18502
|
+
method: "PUT",
|
|
18503
|
+
headers: { "content-type": "application/json", cookie, origin },
|
|
18504
|
+
body: JSON.stringify({ name, value: credential.value })
|
|
18505
|
+
});
|
|
18506
|
+
if (!response.ok) {
|
|
18507
|
+
appendAuthMessage(ctx, `Auth: QA account credential setup returned ${response.status}.`);
|
|
18508
|
+
return false;
|
|
18509
|
+
}
|
|
18510
|
+
}
|
|
18511
|
+
appendAuthMessage(ctx, "Auth: the QA account's required model credentials are already prepared by the engine.");
|
|
18512
|
+
return true;
|
|
18513
|
+
}
|
|
18484
18514
|
function mergeStorageStates(existingPath, nextPath) {
|
|
18485
18515
|
if (existingPath === nextPath || !fs48.existsSync(existingPath)) return;
|
|
18486
18516
|
const existing = JSON.parse(fs48.readFileSync(existingPath, "utf-8"));
|
|
@@ -18872,6 +18902,12 @@ var init_prepareSimpleCapabilityRuntime = __esm({
|
|
|
18872
18902
|
login: String(ctx.data.qaLogin ?? ""),
|
|
18873
18903
|
targetUrl
|
|
18874
18904
|
});
|
|
18905
|
+
if (requirements.qaAccountCredentials?.length) {
|
|
18906
|
+
await prepareAccountCredentials(ctx, profile, {
|
|
18907
|
+
names: requirements.qaAccountCredentials,
|
|
18908
|
+
targetUrl
|
|
18909
|
+
});
|
|
18910
|
+
}
|
|
18875
18911
|
}
|
|
18876
18912
|
if (requirements.githubTestToken) {
|
|
18877
18913
|
const capabilityInput = ctx.data.capabilityInput && typeof ctx.data.capabilityInput === "object" && !Array.isArray(ctx.data.capabilityInput) ? ctx.data.capabilityInput : {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kody-ade/kody-engine",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.605",
|
|
4
4
|
"description": "kody — autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative implementation profiles.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
package/templates/kody.yml
CHANGED
|
@@ -82,6 +82,7 @@ jobs:
|
|
|
82
82
|
GH_PAT: ${{ secrets.GH_PAT }}
|
|
83
83
|
KODY_TOKEN: ${{ secrets.KODY_TOKEN }}
|
|
84
84
|
E2E_GITHUB_TOKEN: ${{ secrets.E2E_GITHUB_TOKEN }}
|
|
85
|
+
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
|
|
85
86
|
KODY_APP_ID: ${{ secrets.KODY_APP_ID }}
|
|
86
87
|
KODY_APP_PRIVATE_KEY: ${{ secrets.KODY_APP_PRIVATE_KEY }}
|
|
87
88
|
SESSION_ID: ${{ inputs.sessionId }}
|