Phase 1b: Rename all ~94 commands across 12 plugins to /<noun> <action> sub-command pattern. Git-flow consolidated from 8→5 commands (commit variants absorbed into --push/--merge/--sync flags). Dispatch files, name: frontmatter, and cross-reference updates for all plugins. Phase 2: Design documents for 8 new plugins in docs/designs/. Phase 3: Scaffold 8 new plugins — saas-api-platform, saas-db-migrate, saas-react-platform, saas-test-pilot, data-seed, ops-release-manager, ops-deploy-pipeline, debug-mcp. Each with plugin.json, commands, agents, skills, README, and claude-md-integration. Marketplace grows from 12→20. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2.7 KiB
2.7 KiB
name, description
| name | description |
|---|---|
| deploy generate | Generate docker-compose.yml, Caddyfile, and systemd units for a service |
/deploy generate
Generate deployment configuration files from templates and project context.
Skills to Load
skills/visual-header.mdskills/compose-patterns.mdskills/caddy-conventions.mdskills/env-management.md
Agent
Delegate to agents/deploy-planner.md.
Usage
/deploy generate [--target=<compose|caddy|systemd|all>] [--service=<name>]
Targets:
compose- Generate docker-compose.yml onlycaddy- Generate Caddyfile snippet onlysystemd- Generate systemd service unit onlyall- Generate all configuration files (default)
Instructions
Execute skills/visual-header.md with context "Config Generation".
Phase 1: Context Analysis
- Read existing project files to determine:
- Application language/framework (Dockerfile, package.json, requirements.txt, go.mod)
- Required services (database, cache, message queue)
- Exposed ports
- Volume requirements (data persistence, config files)
- Check if
deploy/directory exists from previous/deploy setup - Read
.env.exampleif present for variable names
Phase 2: Docker Compose Generation
Apply patterns from skills/compose-patterns.md:
- Service definition - Image or build context, restart policy, healthcheck
- Network isolation - Create dedicated network for the stack
- Volume management - Named volumes for persistence, bind mounts for config
- Resource limits - Memory and CPU limits appropriate for target platform
- Dependency ordering -
depends_onwithcondition: service_healthy - Environment variables - Reference
env_filerather than inline secrets
Phase 3: Caddyfile Generation
Apply patterns from skills/caddy-conventions.md:
- Subdomain routing -
subdomain.hostnameblock - Reverse proxy - Point to container:port with Docker network DNS
- Headers - Security headers, CORS if needed
- Rate limiting - Default rate limit for API endpoints
Phase 4: Systemd Unit Generation (optional)
Generate systemd/<service>.service for non-Docker services:
- Unit description and dependencies
- ExecStart/ExecStop commands
- Restart policy and watchdog
- User/Group restrictions
Phase 5: Output
- Show generated files with syntax highlighting
- Ask user to confirm before writing
- Write files to appropriate locations
- Display validation summary
Output Format
## Generated Files
### docker-compose.yml
[content with annotations]
### Caddyfile snippet
[content with annotations]
### Summary
- Services: 3 (app, db, redis)
- Networks: 1 (app-network)
- Volumes: 2 (db-data, redis-data)
- Next: /deploy validate
User Request
$ARGUMENTS