// Analyze project structure to detect languages, frameworks, and generate containerized execution plans. Supports Node.js, Python, Java, Go, PHP, Ruby, Deno, Rust, Shell, and static files.
| name | analyzing-projects |
| description | Analyze project structure to detect languages, frameworks, and generate containerized execution plans. Supports Node.js, Python, Java, Go, PHP, Ruby, Deno, Rust, Shell, and static files. |
Analyze project structure to detect languages, frameworks, and generate containerized execution plans.
📖 For detailed examples and usage patterns, see EXAMPLES.md
Node.js, Python, Java, Go, PHP, Ruby, Deno, Rust, Shell, Static Files
Generate output matching the exact Go implementation structure:
{
"provider": "node",
"base": {
"name": "node:20-slim",
"platform": "linux/amd64"
},
"runtime": {
"language": "javascript",
"version": "20",
"tools": ["npm"],
"environment": {
"NODE_ENV": "development"
}
},
"apt": ["curl", "git"],
"commands": {
"dev": ["npm install", "npm run dev -- --host 0.0.0.0 --port ${PORT}"],
"build": ["npm install", "npm run build"],
"start": ["npm start -- --host 0.0.0.0 --port ${PORT}"]
},
"port": 3000,
"evidence": {
"files": ["package.json", "package-lock.json"],
"reason": "Detected Node.js project based on package.json and npm lock file"
}
}
{
"matched": true,
"provider": "node",
"confidence": 0.90,
"evidence": {
"files": ["package.json", "package-lock.json", "tsconfig.json"],
"reason": "Node.js project with TypeScript configuration"
},
"language": "javascript",
"framework": "react",
"version": "18.2.0",
"packageManager": {
"name": "npm",
"lockFile": "package-lock.json",
"configFile": "package.json",
"useCorepack": false
},
"buildTools": ["webpack", "typescript"],
"metadata": {
"hasTypeScript": true,
"scripts": ["dev", "build", "start"]
}
}
name and optional platformlanguage, optional version, tools array, optional environment mapdev, build, start arraysfiles array and reason stringname, optional lockFile, configFile, useCorepackPhase 1: Source Code Acquisition
Phase 2: Provider Detection
Phase 3: Plan Generation
Phase 4: Output Generation
Lower number = higher priority:
MANDATORY 0.0.0.0 Binding:
0.0.0.0 (never localhost/127.0.0.1)${PORT} environment variable with framework defaultsCommand Structure:
Language-Specific 0.0.0.0 Binding Examples:
npm run dev -- --host 0.0.0.0 --port ${PORT}python manage.py runserver 0.0.0.0:8000uvicorn main:app --host 0.0.0.0 --port ${PORT}php -S 0.0.0.0:8000bundle exec rails server -b 0.0.0.0 -p ${PORT}bundle exec rackup -o 0.0.0.0 -p ${PORT}