Something went wrong. Try again.
snapcompact for prime agent
Something went wrong. Try again.
1.6 kB · 37 lines
JavaScript
at main
1234567891011121314151617181920212223242526272829303132333435363738import { mkdtempSync, readFileSync, rmSync, writeFileSync } from "node:fs";import { tmpdir } from "node:os";import { join } from "node:path";import { spawnSync } from "node:child_process";import { fileURLToPath } from "node:url";import { resolvePrimeRoot } from "./prime-root.mjs";
const projectRoot = fileURLToPath(new URL("..", import.meta.url));const primeRoot = resolvePrimeRoot();const config = JSON.parse(readFileSync(join(projectRoot, "tsconfig.json"), "utf8"));config.compilerOptions.baseUrl = projectRoot;config.compilerOptions.typeRoots = [join(projectRoot, "node_modules/@types")];config.compilerOptions.paths = { "@earendil-works/pi-coding-agent": [join(primeRoot, "dist/index.d.ts")], "@earendil-works/pi-agent-core": [ join(primeRoot, "node_modules/@earendil-works/pi-agent-core/dist/index.d.ts"), ], "@earendil-works/pi-ai": [ join(primeRoot, "node_modules/@earendil-works/pi-ai/dist/index.d.ts"), ],};config.include = [join(projectRoot, "index.ts"), join(projectRoot, "worker.ts")];
const temporaryDirectory = mkdtempSync(join(tmpdir(), "prime-snapcompact-tsconfig-"));const configPath = join(temporaryDirectory, "tsconfig.json");writeFileSync(configPath, JSON.stringify(config));try { const result = spawnSync( process.execPath, [join(projectRoot, "node_modules/typescript/bin/tsc"), "--project", configPath], { stdio: "inherit" }, ); if (result.error) throw result.error; process.exitCode = result.status ?? 1;} finally { rmSync(temporaryDirectory, { recursive: true, force: true });}