workspace-maxxing 0.1.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/.agents/skills/workspace-maxxing/.workspace-templates/CONTEXT.md +44 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/SYSTEM.md +44 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/references/anti-patterns.md +16 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/references/iron-laws.md +26 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/references/reporting-format.md +52 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/scripts/benchmark.ts +171 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/scripts/dispatch.ts +473 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/scripts/generate-tests.ts +158 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/scripts/install-tool.ts +82 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/scripts/iterate.ts +265 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/scripts/orchestrator.ts +539 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/scripts/scaffold.ts +282 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/scripts/validate.ts +452 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/architecture/SKILL.md +95 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/fixer/SKILL.md +109 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/iteration/SKILL.md +89 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/prompt-engineering/SKILL.md +87 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/research/SKILL.md +94 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/testing/SKILL.md +89 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/tooling/SKILL.md +87 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/validation/SKILL.md +103 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/skills/worker/SKILL.md +79 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/workspace/00-meta/CONTEXT.md +6 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/workspace/00-meta/execution-log.md +27 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/workspace/01-input/CONTEXT.md +29 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/workspace/02-process/CONTEXT.md +29 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/workspace/03-output/CONTEXT.md +29 -0
- package/.agents/skills/workspace-maxxing/.workspace-templates/workspace/README.md +14 -0
- package/.agents/skills/workspace-maxxing/SKILL.md +312 -0
- package/.agents/skills/workspace-maxxing/scripts/benchmark.ts +171 -0
- package/.agents/skills/workspace-maxxing/scripts/dispatch.ts +473 -0
- package/.agents/skills/workspace-maxxing/scripts/generate-tests.ts +158 -0
- package/.agents/skills/workspace-maxxing/scripts/install-tool.ts +82 -0
- package/.agents/skills/workspace-maxxing/scripts/iterate.ts +265 -0
- package/.agents/skills/workspace-maxxing/scripts/orchestrator.ts +539 -0
- package/.agents/skills/workspace-maxxing/scripts/scaffold.ts +282 -0
- package/.agents/skills/workspace-maxxing/scripts/validate.ts +452 -0
- package/README.md +144 -0
- package/dist/agent-creator.d.ts +9 -0
- package/dist/agent-creator.d.ts.map +1 -0
- package/dist/agent-creator.js +199 -0
- package/dist/agent-creator.js.map +1 -0
- package/dist/agent-iterator.d.ts +38 -0
- package/dist/agent-iterator.d.ts.map +1 -0
- package/dist/agent-iterator.js +327 -0
- package/dist/agent-iterator.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +197 -0
- package/dist/index.js.map +1 -0
- package/dist/install.d.ts +18 -0
- package/dist/install.d.ts.map +1 -0
- package/dist/install.js +117 -0
- package/dist/install.js.map +1 -0
- package/dist/platforms/claude.d.ts +7 -0
- package/dist/platforms/claude.d.ts.map +1 -0
- package/dist/platforms/claude.js +70 -0
- package/dist/platforms/claude.js.map +1 -0
- package/dist/platforms/copilot.d.ts +7 -0
- package/dist/platforms/copilot.d.ts.map +1 -0
- package/dist/platforms/copilot.js +75 -0
- package/dist/platforms/copilot.js.map +1 -0
- package/dist/platforms/gemini.d.ts +7 -0
- package/dist/platforms/gemini.d.ts.map +1 -0
- package/dist/platforms/gemini.js +81 -0
- package/dist/platforms/gemini.js.map +1 -0
- package/dist/platforms/index.d.ts +8 -0
- package/dist/platforms/index.d.ts.map +1 -0
- package/dist/platforms/index.js +41 -0
- package/dist/platforms/index.js.map +1 -0
- package/dist/platforms/opencode.d.ts +7 -0
- package/dist/platforms/opencode.d.ts.map +1 -0
- package/dist/platforms/opencode.js +70 -0
- package/dist/platforms/opencode.js.map +1 -0
- package/dist/scripts/benchmark.d.ts +20 -0
- package/dist/scripts/benchmark.d.ts.map +1 -0
- package/dist/scripts/benchmark.js +170 -0
- package/dist/scripts/benchmark.js.map +1 -0
- package/dist/scripts/dispatch.d.ts +32 -0
- package/dist/scripts/dispatch.d.ts.map +1 -0
- package/dist/scripts/dispatch.js +386 -0
- package/dist/scripts/dispatch.js.map +1 -0
- package/dist/scripts/generate-tests.d.ts +11 -0
- package/dist/scripts/generate-tests.d.ts.map +1 -0
- package/dist/scripts/generate-tests.js +118 -0
- package/dist/scripts/generate-tests.js.map +1 -0
- package/dist/scripts/install-tool.d.ts +8 -0
- package/dist/scripts/install-tool.d.ts.map +1 -0
- package/dist/scripts/install-tool.js +98 -0
- package/dist/scripts/install-tool.js.map +1 -0
- package/dist/scripts/iterate.d.ts +44 -0
- package/dist/scripts/iterate.d.ts.map +1 -0
- package/dist/scripts/iterate.js +260 -0
- package/dist/scripts/iterate.js.map +1 -0
- package/dist/scripts/orchestrator.d.ts +40 -0
- package/dist/scripts/orchestrator.d.ts.map +1 -0
- package/dist/scripts/orchestrator.js +378 -0
- package/dist/scripts/orchestrator.js.map +1 -0
- package/dist/scripts/scaffold.d.ts +8 -0
- package/dist/scripts/scaffold.d.ts.map +1 -0
- package/dist/scripts/scaffold.js +279 -0
- package/dist/scripts/scaffold.js.map +1 -0
- package/dist/scripts/validate.d.ts +11 -0
- package/dist/scripts/validate.d.ts.map +1 -0
- package/dist/scripts/validate.js +472 -0
- package/dist/scripts/validate.js.map +1 -0
- package/docs/superpowers/plans/2026-04-07-autonomous-iteration-plan.md +1123 -0
- package/docs/superpowers/plans/2026-04-07-autonomous-iteration-sub-agent-batches.md +1923 -0
- package/docs/superpowers/plans/2026-04-07-autonomous-workflow-sub-skill-plan.md +1505 -0
- package/docs/superpowers/plans/2026-04-07-benchmarking-multi-agent-plan.md +854 -0
- package/docs/superpowers/plans/2026-04-07-workspace-builder-logic-plan.md +1426 -0
- package/docs/superpowers/plans/2026-04-07-workspace-maxxing-plan.md +1299 -0
- package/docs/superpowers/plans/2026-04-08-session-294c-subagent-invocation-plan.md +320 -0
- package/docs/superpowers/plans/2026-04-08-workflow-prompt-hardening-plan.md +1025 -0
- package/docs/superpowers/plans/2026-04-12-workspace-agent-creation-plan.md +992 -0
- package/docs/superpowers/specs/2026-04-07-autonomous-iteration-design.md +214 -0
- package/docs/superpowers/specs/2026-04-07-autonomous-iteration-sub-agent-batches-design.md +188 -0
- package/docs/superpowers/specs/2026-04-07-autonomous-workflow-sub-skill-design.md +137 -0
- package/docs/superpowers/specs/2026-04-07-benchmarking-multi-agent-design.md +105 -0
- package/docs/superpowers/specs/2026-04-07-workspace-builder-logic-design.md +179 -0
- package/docs/superpowers/specs/2026-04-07-workspace-maxxing-design.md +227 -0
- package/docs/superpowers/specs/2026-04-08-session-294c-subagent-invocation-design.md +265 -0
- package/docs/superpowers/specs/2026-04-08-workflow-prompt-hardening-design.md +146 -0
- package/docs/superpowers/specs/2026-04-12-workspace-agent-creation-design.md +239 -0
- package/jest.config.js +8 -0
- package/package.json +32 -0
- package/src/agent-creator.ts +180 -0
- package/src/agent-iterator.ts +397 -0
- package/src/index.ts +189 -0
- package/src/install.ts +105 -0
- package/src/platforms/claude.ts +40 -0
- package/src/platforms/copilot.ts +50 -0
- package/src/platforms/gemini.ts +55 -0
- package/src/platforms/index.ts +45 -0
- package/src/platforms/opencode.ts +41 -0
- package/src/scripts/benchmark.ts +171 -0
- package/src/scripts/dispatch.ts +473 -0
- package/src/scripts/generate-tests.ts +112 -0
- package/src/scripts/install-tool.ts +82 -0
- package/src/scripts/iterate.ts +271 -0
- package/src/scripts/orchestrator.ts +539 -0
- package/src/scripts/scaffold.ts +282 -0
- package/src/scripts/validate.ts +516 -0
- package/templates/.workspace-templates/CONTEXT.md +44 -0
- package/templates/.workspace-templates/SYSTEM.md +44 -0
- package/templates/.workspace-templates/references/anti-patterns.md +16 -0
- package/templates/.workspace-templates/references/iron-laws.md +26 -0
- package/templates/.workspace-templates/references/reporting-format.md +52 -0
- package/templates/.workspace-templates/scripts/benchmark.ts +171 -0
- package/templates/.workspace-templates/scripts/dispatch.ts +473 -0
- package/templates/.workspace-templates/scripts/generate-tests.ts +158 -0
- package/templates/.workspace-templates/scripts/install-tool.ts +82 -0
- package/templates/.workspace-templates/scripts/iterate.ts +265 -0
- package/templates/.workspace-templates/scripts/orchestrator.ts +539 -0
- package/templates/.workspace-templates/scripts/scaffold.ts +282 -0
- package/templates/.workspace-templates/scripts/validate.ts +452 -0
- package/templates/.workspace-templates/skills/architecture/SKILL.md +95 -0
- package/templates/.workspace-templates/skills/fixer/SKILL.md +109 -0
- package/templates/.workspace-templates/skills/iteration/SKILL.md +89 -0
- package/templates/.workspace-templates/skills/prompt-engineering/SKILL.md +87 -0
- package/templates/.workspace-templates/skills/research/SKILL.md +94 -0
- package/templates/.workspace-templates/skills/testing/SKILL.md +89 -0
- package/templates/.workspace-templates/skills/tooling/SKILL.md +87 -0
- package/templates/.workspace-templates/skills/validation/SKILL.md +103 -0
- package/templates/.workspace-templates/skills/worker/SKILL.md +79 -0
- package/templates/.workspace-templates/workspace/00-meta/CONTEXT.md +6 -0
- package/templates/.workspace-templates/workspace/00-meta/execution-log.md +27 -0
- package/templates/.workspace-templates/workspace/01-input/CONTEXT.md +29 -0
- package/templates/.workspace-templates/workspace/02-process/CONTEXT.md +29 -0
- package/templates/.workspace-templates/workspace/03-output/CONTEXT.md +29 -0
- package/templates/.workspace-templates/workspace/README.md +14 -0
- package/templates/SKILL.md +347 -0
- package/tests/benchmark.test.ts +158 -0
- package/tests/cli.test.ts +109 -0
- package/tests/dispatch-parallel.test.ts +124 -0
- package/tests/dispatch.test.ts +218 -0
- package/tests/fixer-skill.test.ts +203 -0
- package/tests/generate-tests.test.ts +101 -0
- package/tests/install-tool.test.ts +141 -0
- package/tests/install.test.ts +144 -0
- package/tests/integration.test.ts +324 -0
- package/tests/iterate.test.ts +219 -0
- package/tests/orchestrator.test.ts +710 -0
- package/tests/scaffold.test.ts +238 -0
- package/tests/templates-enhanced.test.ts +208 -0
- package/tests/templates.test.ts +219 -0
- package/tests/validate.test.ts +421 -0
- package/tests/validation-enhanced.test.ts +303 -0
- package/tests/worker-skill.test.ts +88 -0
- package/tsconfig.json +19 -0
- package/workspace/00-meta/CONTEXT.md +3 -0
- package/workspace/00-meta/execution-log.md +17 -0
- package/workspace/00-meta/tools.md +11 -0
- package/workspace/01-input/CONTEXT.md +27 -0
- package/workspace/CONTEXT.md +35 -0
- package/workspace/README.md +14 -0
- package/workspace/SYSTEM.md +36 -0
- package/workspace-maxxing-0.1.0.tgz +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/platforms/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEpE,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACpD,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5C;AAED,wBAAgB,cAAc,IAAI,QAAQ,CAgBzC;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,iBAAiB,CAa1E"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.detectPlatform = detectPlatform;
|
|
4
|
+
exports.getPlatformInstaller = getPlatformInstaller;
|
|
5
|
+
function detectPlatform() {
|
|
6
|
+
// Check for platform-specific env vars or files
|
|
7
|
+
if (process.env.OPENCODE_SESSION || process.env.AGENT_MODE === 'opencode') {
|
|
8
|
+
return 'opencode';
|
|
9
|
+
}
|
|
10
|
+
if (process.env.CLAUDE_CODE || process.env.CLAUDE_SESSION) {
|
|
11
|
+
return 'claude';
|
|
12
|
+
}
|
|
13
|
+
if (process.env.COPILOT_AGENT) {
|
|
14
|
+
return 'copilot';
|
|
15
|
+
}
|
|
16
|
+
if (process.env.GEMINI_CLI) {
|
|
17
|
+
return 'gemini';
|
|
18
|
+
}
|
|
19
|
+
// Default to opencode for now
|
|
20
|
+
return 'opencode';
|
|
21
|
+
}
|
|
22
|
+
function getPlatformInstaller(platform) {
|
|
23
|
+
switch (platform) {
|
|
24
|
+
case 'opencode':
|
|
25
|
+
return new opencode_1.OpenCodeInstaller();
|
|
26
|
+
case 'claude':
|
|
27
|
+
return new claude_1.ClaudeInstaller();
|
|
28
|
+
case 'copilot':
|
|
29
|
+
return new copilot_1.CopilotInstaller();
|
|
30
|
+
case 'gemini':
|
|
31
|
+
return new gemini_1.GeminiInstaller();
|
|
32
|
+
default:
|
|
33
|
+
throw new Error(`Unknown platform: ${platform}`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
// Import and re-export all platform installers
|
|
37
|
+
const opencode_1 = require("./opencode");
|
|
38
|
+
const claude_1 = require("./claude");
|
|
39
|
+
const copilot_1 = require("./copilot");
|
|
40
|
+
const gemini_1 = require("./gemini");
|
|
41
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/platforms/index.ts"],"names":[],"mappings":";;AAOA,wCAgBC;AAED,oDAaC;AA/BD,SAAgB,cAAc;IAC5B,gDAAgD;IAChD,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAC1E,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAC1D,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,8BAA8B;IAC9B,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAgB,oBAAoB,CAAC,QAAkB;IACrD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,UAAU;YACb,OAAO,IAAI,4BAAiB,EAAE,CAAC;QACjC,KAAK,QAAQ;YACX,OAAO,IAAI,wBAAe,EAAE,CAAC;QAC/B,KAAK,SAAS;YACZ,OAAO,IAAI,0BAAgB,EAAE,CAAC;QAChC,KAAK,QAAQ;YACX,OAAO,IAAI,wBAAe,EAAE,CAAC;QAC/B;YACE,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,yCAA+C;AAC/C,qCAA2C;AAC3C,uCAA6C;AAC7C,qCAA2C"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { PlatformInstaller } from './index';
|
|
2
|
+
export declare class OpenCodeInstaller implements PlatformInstaller {
|
|
3
|
+
install(agentPath: string, targetDir: string): void;
|
|
4
|
+
getAgentDir(workspacePath: string): string;
|
|
5
|
+
private copyDir;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=opencode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../src/platforms/opencode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,qBAAa,iBAAkB,YAAW,iBAAiB;IACzD,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAgBnD,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAI1C,OAAO,CAAC,OAAO;CAehB"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.OpenCodeInstaller = void 0;
|
|
37
|
+
const fs = __importStar(require("fs"));
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
class OpenCodeInstaller {
|
|
40
|
+
install(agentPath, targetDir) {
|
|
41
|
+
// OpenCode expects: .agents/skills/@agent-name/SKILL.md
|
|
42
|
+
// Already in correct format from agent-creator
|
|
43
|
+
const agentName = path.basename(agentPath);
|
|
44
|
+
const targetPath = path.join(targetDir, '.agents', 'skills', agentName);
|
|
45
|
+
// Ensure target directory exists
|
|
46
|
+
fs.mkdirSync(path.dirname(targetPath), { recursive: true });
|
|
47
|
+
// Copy entire agent directory
|
|
48
|
+
this.copyDir(agentPath, targetPath);
|
|
49
|
+
console.log(`[OpenCode] Installed @${agentName} at: ${targetPath}`);
|
|
50
|
+
}
|
|
51
|
+
getAgentDir(workspacePath) {
|
|
52
|
+
return path.join(workspacePath, '.agents', 'skills');
|
|
53
|
+
}
|
|
54
|
+
copyDir(src, dest) {
|
|
55
|
+
fs.mkdirSync(dest, { recursive: true });
|
|
56
|
+
const entries = fs.readdirSync(src, { withFileTypes: true });
|
|
57
|
+
for (const entry of entries) {
|
|
58
|
+
const srcPath = path.join(src, entry.name);
|
|
59
|
+
const destPath = path.join(dest, entry.name);
|
|
60
|
+
if (entry.isDirectory()) {
|
|
61
|
+
this.copyDir(srcPath, destPath);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
fs.copyFileSync(srcPath, destPath);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
exports.OpenCodeInstaller = OpenCodeInstaller;
|
|
70
|
+
//# sourceMappingURL=opencode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../src/platforms/opencode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAG7B,MAAa,iBAAiB;IAC5B,OAAO,CAAC,SAAiB,EAAE,SAAiB;QAC1C,wDAAwD;QACxD,+CAA+C;QAE/C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAExE,iCAAiC;QACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE5D,8BAA8B;QAC9B,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAEpC,OAAO,CAAC,GAAG,CAAC,yBAAyB,SAAS,QAAQ,UAAU,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,WAAW,CAAC,aAAqB;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACvD,CAAC;IAEO,OAAO,CAAC,GAAW,EAAE,IAAY;QACvC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAE7C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;CACF;AApCD,8CAoCC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface StageBenchmark {
|
|
2
|
+
name: string;
|
|
3
|
+
raw: number;
|
|
4
|
+
weight: number;
|
|
5
|
+
weighted: number;
|
|
6
|
+
}
|
|
7
|
+
export interface BenchmarkResult {
|
|
8
|
+
workspace: string;
|
|
9
|
+
agent: string;
|
|
10
|
+
timestamp: string;
|
|
11
|
+
rawScore: number;
|
|
12
|
+
weightedScore: number;
|
|
13
|
+
stages: StageBenchmark[];
|
|
14
|
+
fixSuggestions: string[];
|
|
15
|
+
improvementPotential: boolean;
|
|
16
|
+
}
|
|
17
|
+
export declare function calculateBenchmark(workspacePath: string): BenchmarkResult;
|
|
18
|
+
export declare function formatBenchmarkTable(data: BenchmarkResult): string;
|
|
19
|
+
export declare function saveBenchmarkReport(workspacePath: string, data: BenchmarkResult): string;
|
|
20
|
+
//# sourceMappingURL=benchmark.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../src/scripts/benchmark.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAWD,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,eAAe,CAmCzE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAyClE;AAED,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM,CASxF"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.calculateBenchmark = calculateBenchmark;
|
|
37
|
+
exports.formatBenchmarkTable = formatBenchmarkTable;
|
|
38
|
+
exports.saveBenchmarkReport = saveBenchmarkReport;
|
|
39
|
+
const fs = __importStar(require("fs"));
|
|
40
|
+
const path = __importStar(require("path"));
|
|
41
|
+
const STAGE_WEIGHTS = {
|
|
42
|
+
'01-ideation': 1.5,
|
|
43
|
+
'02-research': 1.3,
|
|
44
|
+
'03-architecture': 1.2,
|
|
45
|
+
};
|
|
46
|
+
const DEFAULT_WEIGHT = 1.0;
|
|
47
|
+
const MAX_RAW_SCORE = 45;
|
|
48
|
+
function calculateBenchmark(workspacePath) {
|
|
49
|
+
const ws = path.resolve(workspacePath);
|
|
50
|
+
const stageFolders = getNumberedFolders(ws);
|
|
51
|
+
const stages = [];
|
|
52
|
+
let totalWeighted = 0;
|
|
53
|
+
let totalWeight = 0;
|
|
54
|
+
for (const folder of stageFolders) {
|
|
55
|
+
const weight = STAGE_WEIGHTS[folder] ?? DEFAULT_WEIGHT;
|
|
56
|
+
const raw = calculateStageRawScore(ws, folder);
|
|
57
|
+
const weighted = (raw / MAX_RAW_SCORE) * 100 * weight;
|
|
58
|
+
stages.push({ name: folder, raw, weight, weighted });
|
|
59
|
+
totalWeighted += weighted;
|
|
60
|
+
totalWeight += weight;
|
|
61
|
+
}
|
|
62
|
+
const weightedScore = totalWeight > 0 ? totalWeighted / totalWeight : 0;
|
|
63
|
+
const rawScore = stages.reduce((sum, s) => sum + s.raw, 0);
|
|
64
|
+
const fixSuggestions = stages
|
|
65
|
+
.filter((s) => s.raw < MAX_RAW_SCORE)
|
|
66
|
+
.map((s) => `Improve ${s.name}: current score ${s.raw}/${MAX_RAW_SCORE}`);
|
|
67
|
+
return {
|
|
68
|
+
workspace: path.basename(ws),
|
|
69
|
+
agent: 'unknown',
|
|
70
|
+
timestamp: new Date().toISOString(),
|
|
71
|
+
rawScore,
|
|
72
|
+
weightedScore: Math.min(Math.round(weightedScore), 100),
|
|
73
|
+
stages,
|
|
74
|
+
fixSuggestions,
|
|
75
|
+
improvementPotential: stages.some((s) => s.raw < MAX_RAW_SCORE),
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
function formatBenchmarkTable(data) {
|
|
79
|
+
const lines = [];
|
|
80
|
+
lines.push(`\nBenchmark Report: ${data.workspace}`);
|
|
81
|
+
lines.push(`Agent: ${data.agent} | Timestamp: ${data.timestamp}`);
|
|
82
|
+
lines.push('');
|
|
83
|
+
lines.push(padRight('Stage', 20) +
|
|
84
|
+
padRight('Raw', 8) +
|
|
85
|
+
padRight('Weight', 10) +
|
|
86
|
+
padRight('Weighted', 12));
|
|
87
|
+
lines.push('-'.repeat(50));
|
|
88
|
+
for (const stage of data.stages) {
|
|
89
|
+
lines.push(padRight(stage.name, 20) +
|
|
90
|
+
padRight(String(stage.raw), 8) +
|
|
91
|
+
padRight(stage.weight.toFixed(1) + 'x', 10) +
|
|
92
|
+
padRight(stage.weighted.toFixed(1), 12));
|
|
93
|
+
}
|
|
94
|
+
lines.push('-'.repeat(50));
|
|
95
|
+
lines.push(padRight('TOTAL', 20) +
|
|
96
|
+
padRight(String(data.rawScore), 8) +
|
|
97
|
+
padRight('', 10) +
|
|
98
|
+
padRight(data.weightedScore.toFixed(1), 12));
|
|
99
|
+
lines.push('');
|
|
100
|
+
if (data.fixSuggestions.length > 0) {
|
|
101
|
+
lines.push('Suggestions:');
|
|
102
|
+
for (const suggestion of data.fixSuggestions) {
|
|
103
|
+
lines.push(` - ${suggestion}`);
|
|
104
|
+
}
|
|
105
|
+
lines.push('');
|
|
106
|
+
}
|
|
107
|
+
return lines.join('\n');
|
|
108
|
+
}
|
|
109
|
+
function saveBenchmarkReport(workspacePath, data) {
|
|
110
|
+
const reportDir = path.join(workspacePath, '.workspace-benchmarks');
|
|
111
|
+
fs.mkdirSync(reportDir, { recursive: true });
|
|
112
|
+
const filename = `${data.workspace}-${data.timestamp.replace(/[:.]/g, '-')}.json`;
|
|
113
|
+
const filePath = path.join(reportDir, filename);
|
|
114
|
+
fs.writeFileSync(filePath, JSON.stringify(data, null, 2), 'utf-8');
|
|
115
|
+
return filePath;
|
|
116
|
+
}
|
|
117
|
+
function calculateStageRawScore(ws, folder) {
|
|
118
|
+
const stageContextPath = path.join(ws, folder, 'CONTEXT.md');
|
|
119
|
+
let score = 0;
|
|
120
|
+
if (fs.existsSync(stageContextPath)) {
|
|
121
|
+
const content = fs.readFileSync(stageContextPath, 'utf-8');
|
|
122
|
+
if (content.toLowerCase().includes('purpose') || content.toLowerCase().includes('## purpose'))
|
|
123
|
+
score += 4;
|
|
124
|
+
if (content.toLowerCase().includes('input'))
|
|
125
|
+
score += 4;
|
|
126
|
+
if (content.toLowerCase().includes('output'))
|
|
127
|
+
score += 4;
|
|
128
|
+
if (content.toLowerCase().includes('dependenc'))
|
|
129
|
+
score += 3;
|
|
130
|
+
if (content.toLowerCase().includes('## success criteria') || content.toLowerCase().includes('success criteria'))
|
|
131
|
+
score += 5;
|
|
132
|
+
if (content.toLowerCase().includes('## approach') || content.toLowerCase().includes('approach'))
|
|
133
|
+
score += 5;
|
|
134
|
+
if (content.toLowerCase().includes('## risks') || content.toLowerCase().includes('risks'))
|
|
135
|
+
score += 5;
|
|
136
|
+
if (content.toLowerCase().includes('## timeline') || content.toLowerCase().includes('timeline'))
|
|
137
|
+
score += 5;
|
|
138
|
+
if (content.toLowerCase().includes('## resources') || content.toLowerCase().includes('resources'))
|
|
139
|
+
score += 5;
|
|
140
|
+
if (content.toLowerCase().includes('## validation') || content.toLowerCase().includes('validation'))
|
|
141
|
+
score += 5;
|
|
142
|
+
}
|
|
143
|
+
return Math.min(score, MAX_RAW_SCORE);
|
|
144
|
+
}
|
|
145
|
+
function getNumberedFolders(workspacePath) {
|
|
146
|
+
if (!fs.existsSync(workspacePath))
|
|
147
|
+
return [];
|
|
148
|
+
const entries = fs.readdirSync(workspacePath, { withFileTypes: true });
|
|
149
|
+
return entries
|
|
150
|
+
.filter((e) => e.isDirectory() && /^\d{2}-/.test(e.name) && e.name !== '00-meta')
|
|
151
|
+
.map((e) => e.name);
|
|
152
|
+
}
|
|
153
|
+
function padRight(str, length) {
|
|
154
|
+
return str.padEnd(length);
|
|
155
|
+
}
|
|
156
|
+
if (require.main === module) {
|
|
157
|
+
const args = process.argv.slice(2);
|
|
158
|
+
const parseArg = (flag) => {
|
|
159
|
+
const idx = args.indexOf(flag);
|
|
160
|
+
return idx !== -1 ? args[idx + 1] : undefined;
|
|
161
|
+
};
|
|
162
|
+
const workspace = parseArg('--workspace');
|
|
163
|
+
if (!workspace) {
|
|
164
|
+
console.error('Usage: node benchmark.ts --workspace <path>');
|
|
165
|
+
process.exit(1);
|
|
166
|
+
}
|
|
167
|
+
const result = calculateBenchmark(workspace);
|
|
168
|
+
console.log(formatBenchmarkTable(result));
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=benchmark.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../src/scripts/benchmark.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export interface DispatchReport {
|
|
2
|
+
skill: string;
|
|
3
|
+
status: 'passed' | 'failed' | 'escalated';
|
|
4
|
+
timestamp: string;
|
|
5
|
+
findings: string[];
|
|
6
|
+
recommendations: string[];
|
|
7
|
+
metrics: Record<string, number>;
|
|
8
|
+
nextSkill: string;
|
|
9
|
+
}
|
|
10
|
+
export interface ParallelInvocation {
|
|
11
|
+
skill: string;
|
|
12
|
+
batchId: number;
|
|
13
|
+
testCaseId: string;
|
|
14
|
+
}
|
|
15
|
+
export interface ParallelDispatchResult extends DispatchReport {
|
|
16
|
+
batchId: number;
|
|
17
|
+
testCaseId: string;
|
|
18
|
+
}
|
|
19
|
+
export interface DispatchOptions {
|
|
20
|
+
workspacePath?: string;
|
|
21
|
+
runnerCommand?: string;
|
|
22
|
+
runnerTimeoutSeconds?: number;
|
|
23
|
+
invocation?: ParallelInvocation;
|
|
24
|
+
}
|
|
25
|
+
export interface ParallelDispatchOptions {
|
|
26
|
+
workspacePath?: string;
|
|
27
|
+
runnerCommand?: string;
|
|
28
|
+
runnerTimeoutSeconds?: number;
|
|
29
|
+
}
|
|
30
|
+
export declare function dispatchSkill(skillName: string, skillsDir: string, options?: DispatchOptions): DispatchReport;
|
|
31
|
+
export declare function dispatchParallel(invocations: ParallelInvocation[], skillsDir: string, options?: ParallelDispatchOptions): ParallelDispatchResult[];
|
|
32
|
+
//# sourceMappingURL=dispatch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/scripts/dispatch.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,kBAAkB,CAAC;CACjC;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAsSD,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,cAAc,CAkDjH;AAED,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,kBAAkB,EAAE,EACjC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,uBAA4B,GACpC,sBAAsB,EAAE,CAY1B"}
|