A powerful command-line interface for automating development workflows, following Node.js CLI best practices.
- ✅ POSIX-compliant command line arguments
- ✅ Empathic CLI with interactive prompts and helpful error messages
- ✅ Colorful output with graceful degradation
- ✅ Rich interactions with progress spinners and prompts
- ✅ STDIN support for piping data
- ✅ Structured output in JSON format
- ✅ Cross-platform compatibility
- ✅ Configuration precedence (CLI args > env vars > config files)
- ✅ Containerized distribution via Docker
- ✅ Analytics with strict opt-in
- ✅ Proper error handling with error codes
- ✅ Debug mode for troubleshooting
npm install -g @auto-engineer/clidocker pull auto-engineer/cli
docker run --rm auto-engineer/cli --help-
Initialize your project:
auto-engineer init
-
Generate code templates:
auto-engineer generate --type code
-
Analyze your code:
auto-engineer analyze --format json
Initialize auto-engineer configuration for your project.
auto-engineer init [options]Options:
-y, --yes- Skip prompts and use defaults-p, --path <path>- Project path (default: current directory)
Examples:
# Interactive initialization
auto-engineer init
# Quick initialization with defaults
auto-engineer init --yes
# Initialize in specific directory
auto-engineer init --path ./my-projectGenerate code, documentation, or other artifacts.
auto-engineer generate [options]Options:
-t, --type <type>- Type of generation (code, docs, tests)-o, --output <path>- Output path for generated files-f, --force- Overwrite existing files--stdin- Read input from STDIN
Examples:
# Generate code templates
auto-engineer generate --type code
# Generate with custom output path
auto-engineer generate --type docs --output ./docs
# Generate from STDIN
echo "component" | auto-engineer generate --stdinAnalyze code quality and provide insights.
auto-engineer analyze [options]Options:
-p, --path <path>- Path to analyze (default: current directory)-f, --format <format>- Output format (text, json)--stdin- Analyze content from STDIN
Examples:
# Analyze current directory
auto-engineer analyze
# Analyze specific path in JSON format
auto-engineer analyze --path ./src --format json
# Analyze content from STDIN
cat file.js | auto-engineer analyze --stdin-v, --version- Show version number-d, --debug- Enable debug mode--no-color- Disable colored output--json- Output in JSON format--api-token <token>- API token for external services--project-path <path>- Project path to work with
DEBUG=auto-engineer- Enable debug modeNO_COLOR=1- Disable colored outputOUTPUT_FORMAT=json- Set output formatAUTO_ENGINEER_API_TOKEN=<token>- Set API tokenAUTO_ENGINEER_ANALYTICS=false- Disable analytics (enabled by default)
Auto-engineer follows configuration precedence:
- Command line arguments (highest priority)
- Environment variables
- Project configuration (
.auto-engineer.json) - User configuration (
~/.auto-engineer.json) - System configuration (defaults)
Create .auto-engineer.json in your project root:
{
"projectType": "node-ts",
"packageManager": "npm",
"testFramework": "vitest",
"enableLinting": true,
"enableGitHooks": true
}Auto-engineer uses standardized error codes for easy troubleshooting:
E4001- Validation errorE4002- Configuration errorE4003- Invalid API tokenE4004- Invalid project pathE4005- Missing generation typeE4006- Missing output pathE4007- Invalid path typeE4008- Path does not existE5001- Runtime errorE9999- Unknown error
Auto-engineer collects anonymous usage analytics to improve the tool. Analytics are:
- Enabled by default - Analytics are collected to help improve the tool
- Anonymous - No personal information is collected
- Transparent - You can see what data is collected in debug mode
- Controllable - You can disable anytime
To disable analytics:
export AUTO_ENGINEER_ANALYTICS=falseAnalytics data includes:
- Command usage (which commands are run)
- Success/failure rates
- Error codes (for debugging)
- Platform information (Node.js version, OS)
- Tool version
This data helps us understand usage patterns and improve the tool's reliability and features.
- Node.js 18.0.0 or higher
- npm, yarn, or pnpm
# Install dependencies
npm install
# Build the project
npm run build
# Run in development mode
npm run dev
# Run tests
npm test
# Run with coverage
npm run test:coveragesrc/
├── commands/ # Command implementations
│ ├── generate.ts
│ ├── analyze.ts
│ └── init.ts
├── utils/ # Utility functions
│ ├── config.ts # Configuration management
│ ├── errors.ts # Error handling
│ ├── terminal.ts # Terminal utilities
│ └── analytics.ts # Analytics
└── index.ts # Main entry point
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Run the test suite
- Submit a pull request
MIT License - see LICENSE file for details.
- Documentation: GitHub Wiki
- Issues: GitHub Issues
- Discussions: GitHub Discussions