Convert all shared library packages from CommonJS to ESM for consistency
with apps/server and modern JavaScript standards.
Changes:
- Add "type": "module" to package.json for all libs
- Update tsconfig.json to use "NodeNext" module/moduleResolution
- Add .js extensions to all relative imports
Packages migrated:
- @automaker/dependency-resolver (already ESM, added .js extension)
- @automaker/git-utils (CommonJS → ESM)
- @automaker/model-resolver (CommonJS → ESM)
- @automaker/platform (CommonJS → ESM)
- @automaker/utils (CommonJS → ESM)
Benefits:
✅ Consistent module system across all packages
✅ Better tree-shaking and modern bundling support
✅ Native browser support (future-proof)
✅ Fixes E2E CI server startup issues
All tests passing: 632/632 server tests
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Added author information as "AutoMaker Team" to all package.json files.
- Set license to "SEE LICENSE IN LICENSE" for consistency across the project.
- Added README.md for all 6 shared packages:
- @automaker/types: Type definitions and interfaces
- @automaker/utils: Utility functions (logger, error handling, images)
- @automaker/platform: Platform utilities (paths, subprocess, security)
- @automaker/model-resolver: Claude model resolution
- @automaker/dependency-resolver: Feature dependency ordering
- @automaker/git-utils: Git operations and diff generation
- Removed MIT license from all package.json files (using custom dual license)
- Created comprehensive LLM guide (docs/llm-shared-packages.md):
- When to use each package
- Import patterns and examples
- Common usage patterns
- Migration checklist
- Do's and don'ts for LLMs
Documentation helps developers and AI assistants understand package purpose,
usage, and best practices.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>