build.ts 846 B

1234567891011121314151617181920212223242526272829
  1. import { execFileSync } from 'node:child_process'
  2. import { existsSync } from 'node:fs'
  3. import { resolve } from 'node:path'
  4. // Bundle JS for every workspace package with dumble (tsc -b has already
  5. // produced the .d.ts files; dumble reads each package's tsconfig/package.json).
  6. const packages = [
  7. 'vendor/cosmokit',
  8. 'vendor/schemastery',
  9. 'vendor/cordis',
  10. 'vendor/loader',
  11. 'vendor/include',
  12. 'vendor/group',
  13. 'vendor/timer',
  14. 'vendor/hmr',
  15. 'vendor/logger-console',
  16. 'packages/llm',
  17. 'packages/session',
  18. 'packages/system-prompt',
  19. 'packages/tools',
  20. 'packages/agent',
  21. 'packages/agent-loop',
  22. ]
  23. const root = resolve(import.meta.dirname, '..')
  24. for (const path of packages) {
  25. if (!existsSync(resolve(root, path, 'tsconfig.json'))) continue
  26. execFileSync('node_modules/.bin/dumble', [path], { cwd: root, stdio: 'inherit' })
  27. }