Files
deepseek-harness/scripts/build.ts
Tianyi Cui ae2e08b4d6 Set up monorepo infra: Yarn 4 workspaces, tsc -b + dumble build, vitest
Workspaces are vendor/* (Cordis framework vendored as source) and
packages/* (@deepseek-ai/dsh-* harness packages). Dev/test/demo run
unbuilt via tsx + root tsconfig paths; build = tsc -b (declarations)
+ dumble (JS bundles); tests = vitest + vite-tsconfig-paths.
2026-06-11 10:52:45 +08:00

30 lines
846 B
TypeScript

import { execFileSync } from 'node:child_process'
import { existsSync } from 'node:fs'
import { resolve } from 'node:path'
// Bundle JS for every workspace package with dumble (tsc -b has already
// produced the .d.ts files; dumble reads each package's tsconfig/package.json).
const packages = [
'vendor/cosmokit',
'vendor/schemastery',
'vendor/cordis',
'vendor/loader',
'vendor/include',
'vendor/group',
'vendor/timer',
'vendor/hmr',
'vendor/logger-console',
'packages/llm',
'packages/session',
'packages/system-prompt',
'packages/tools',
'packages/agent',
'packages/agent-loop',
]
const root = resolve(import.meta.dirname, '..')
for (const path of packages) {
if (!existsSync(resolve(root, path, 'tsconfig.json'))) continue
execFileSync('node_modules/.bin/dumble', [path], { cwd: root, stdio: 'inherit' })
}