publint-all.ts 815 B

12345678910111213141516171819202122232425262728
  1. import { execFileSync } from 'node:child_process'
  2. import { resolve } from 'node:path'
  3. // publint every publishable package (vendor/ is private upstream code and
  4. // examples/ are not packages; both are out of scope).
  5. const packages = [
  6. 'packages/llm',
  7. 'packages/session',
  8. 'packages/session-persistence',
  9. 'packages/session-persistence-jsonl',
  10. 'packages/session-persistence-sqlite',
  11. 'packages/system-prompt',
  12. 'packages/tools',
  13. 'packages/agent',
  14. 'packages/agent-loop',
  15. 'packages/bash',
  16. 'packages/llm-deepseek',
  17. 'packages/llm-pi-ai',
  18. 'packages/bash-local',
  19. 'packages/tool-bash',
  20. 'packages/invariants',
  21. 'packages/acp',
  22. ]
  23. const root = resolve(import.meta.dirname, '..')
  24. for (const path of packages) {
  25. execFileSync('node_modules/.bin/publint', [path], { cwd: root, stdio: 'inherit' })
  26. }