@poolzin/pool-bot 2026.4.29 → 2026.4.31
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/build-info.json +3 -3
- package/dist/cli/config-cli.d.ts.map +1 -1
- package/dist/cli/config-cli.js +56 -0
- package/dist/control-ui/assets/{index-1DWuMa4l.js → index-CAx-3zc2.js} +532 -545
- package/dist/control-ui/assets/index-CAx-3zc2.js.map +1 -0
- package/dist/control-ui/index.html +1 -1
- package/dist/infra/heartbeat-runner.d.ts.map +1 -1
- package/dist/infra/heartbeat-runner.js +10 -2
- package/dist/infra/skill-evolution.d.ts +57 -0
- package/dist/infra/skill-evolution.d.ts.map +1 -0
- package/dist/infra/skill-evolution.js +183 -0
- package/dist/process/command-queue.d.ts +7 -0
- package/dist/process/command-queue.d.ts.map +1 -1
- package/dist/process/command-queue.js +26 -1
- package/package.json +1 -1
- package/dist/control-ui/assets/index-1DWuMa4l.js.map +0 -1
package/dist/build-info.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-cli.d.ts","sourceRoot":"","sources":["../../src/cli/config-cli.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,OAAO,EAAE,KAAK,UAAU,EAAkB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"config-cli.d.ts","sourceRoot":"","sources":["../../src/cli/config-cli.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,OAAO,EAAE,KAAK,UAAU,EAAkB,MAAM,eAAe,CAAC;AA6XhE,wBAAsB,YAAY,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,UAAU,CAAA;CAAE,iBA4B9F;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,UAAU,CAAA;CAAE,iBAqBhF;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,QAkSjD"}
|
package/dist/cli/config-cli.js
CHANGED
|
@@ -6,6 +6,10 @@ import { formatDocsLink } from "../terminal/links.js";
|
|
|
6
6
|
import { formatCliCommand } from "./command-format.js";
|
|
7
7
|
import { theme } from "../terminal/theme.js";
|
|
8
8
|
import { shortenHomePath } from "../utils.js";
|
|
9
|
+
import { evolveSkill, findSkill } from "../infra/skill-evolution.js";
|
|
10
|
+
import { resolveAgentWorkspaceDir, resolveDefaultAgentId } from "../agents/agent-scope.js";
|
|
11
|
+
import { callGatewayFromCli } from "./gateway-rpc.js";
|
|
12
|
+
import { loadConfig } from "../config/config.js";
|
|
9
13
|
function generateConfigJsonSchema() {
|
|
10
14
|
return {
|
|
11
15
|
$schema: "http://json-schema.org/draft-07/schema#",
|
|
@@ -633,4 +637,56 @@ export function registerConfigCli(program) {
|
|
|
633
637
|
defaultRuntime.exit(1);
|
|
634
638
|
}
|
|
635
639
|
});
|
|
640
|
+
cmd
|
|
641
|
+
.command("evolve-skill")
|
|
642
|
+
.description("Evolve a skill file using LLM-based optimization (GEPA-inspired)")
|
|
643
|
+
.argument("<skill>", "Skill name or path to evolve")
|
|
644
|
+
.option("-n, --iterations <n>", "Number of optimization iterations", "5")
|
|
645
|
+
.option("--dry-run", "Show improvements without writing", false)
|
|
646
|
+
.action(async (skillName, opts) => {
|
|
647
|
+
try {
|
|
648
|
+
const cfg = loadConfig();
|
|
649
|
+
const agentId = resolveDefaultAgentId(cfg);
|
|
650
|
+
const workspaceDir = resolveAgentWorkspaceDir(cfg, agentId);
|
|
651
|
+
const skillsDir = `${workspaceDir}/skills`;
|
|
652
|
+
let skillPath = null;
|
|
653
|
+
// Check if it's a direct path
|
|
654
|
+
if (skillName.includes("/") || skillName.includes("\\")) {
|
|
655
|
+
skillPath = skillName;
|
|
656
|
+
}
|
|
657
|
+
else {
|
|
658
|
+
skillPath = findSkill(skillName, skillsDir);
|
|
659
|
+
}
|
|
660
|
+
if (!skillPath) {
|
|
661
|
+
defaultRuntime.error(danger(`Skill '${skillName}' not found in ${skillsDir}`));
|
|
662
|
+
defaultRuntime.exit(1);
|
|
663
|
+
return;
|
|
664
|
+
}
|
|
665
|
+
const iterations = parseInt(opts.iterations, 10) || 5;
|
|
666
|
+
const dryRun = opts.dryRun === true;
|
|
667
|
+
defaultRuntime.log(info(`Evolving skill: ${skillPath}`));
|
|
668
|
+
defaultRuntime.log(info(`Iterations: ${iterations}, Dry run: ${dryRun}`));
|
|
669
|
+
// LLM call via gateway
|
|
670
|
+
const llmCall = async (prompt, systemPrompt) => {
|
|
671
|
+
const result = await callGatewayFromCli("agent.chat", {}, {
|
|
672
|
+
message: prompt,
|
|
673
|
+
systemPrompt,
|
|
674
|
+
model: cfg.agents?.defaults?.model?.primary,
|
|
675
|
+
});
|
|
676
|
+
return result?.reply ?? "";
|
|
677
|
+
};
|
|
678
|
+
const result = await evolveSkill({ skillPath, llmCall, config: { iterations, dryRun } });
|
|
679
|
+
if (result.improved && result.bestCandidate) {
|
|
680
|
+
defaultRuntime.log(info(`✅ Improved! ${result.original.name}: ${result.bestCandidate.score.toFixed(3)} (was baseline)`));
|
|
681
|
+
}
|
|
682
|
+
else {
|
|
683
|
+
defaultRuntime.log(info(`No improvement found for ${result.original.name}`));
|
|
684
|
+
}
|
|
685
|
+
defaultRuntime.exit(0);
|
|
686
|
+
}
|
|
687
|
+
catch (err) {
|
|
688
|
+
defaultRuntime.error(danger(String(err)));
|
|
689
|
+
defaultRuntime.exit(1);
|
|
690
|
+
}
|
|
691
|
+
});
|
|
636
692
|
}
|