Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/Arete-Consortium/ai-skills --skill deployコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
SKILL.md を表示中
| name | deploy |
| description | Deployment Checklist & Setup |
| lifecycle | experimental |
Deployment guides for various platforms.
/deploy # Analyze project, suggest deployment
/deploy systemd # Linux systemd service
/deploy docker # Docker deployment
/deploy cloud # Cloud deployment guide
# /etc/systemd/system/myapp.service
[Unit]
Description=My Application
After=network.target
[Service]
Type=simple
User=myapp
Group=myapp
WorkingDirectory=/opt/myapp
Environment="PATH=/opt/myapp/.venv/bin"
ExecStart=/opt/myapp/.venv/bin/python -m myapp serve
Restart=always
RestartSec=5
# Security hardening
NoNewPrivileges=yes
PrivateTmp=yes
ProtectSystem=strict
ProtectHome=yes
ReadWritePaths=/opt/myapp/data
[Install]
WantedBy=multi-user.target
#!/bin/bash
# deploy.sh
set -e
APP_DIR=/opt/myapp
SERVICE=myapp
echo "Deploying myapp..."
# Stop service
sudo systemctl stop $SERVICE || true
# Update code
cd $APP_DIR
git pull origin main
# Update dependencies
.venv/bin/pip install -e .
# Run migrations (if applicable)
# .venv/bin/python -m myapp migrate
# Start service
sudo systemctl start $SERVICE
sudo systemctl status $SERVICE
echo "Deployment complete!"
version: "3.8"
services:
app:
build: .
ports:
- "8000:8000"
environment:
- DATABASE_URL=${DATABASE_URL}
- SECRET_KEY=${SECRET_KEY}
volumes:
- app-data:/app/data
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 30s
timeout: 10s
retries: 3
db:
image: postgres:15
environment:
- POSTGRES_DB=myapp
- POSTGRES_USER=myapp
- POSTGRES_PASSWORD=${DB_PASSWORD}
volumes:
- db-data:/var/lib/postgresql/data
restart: unless-stopped
volumes:
app-data:
db-data:
# Build and deploy
docker compose build
docker compose up -d
# View logs
docker compose logs -f app
# Update deployment
docker compose pull
docker compose up -d --build
# Rollback
docker compose down
docker compose up -d --no-build # Uses previous image
# Deployment Checklist: [App Name]
## Pre-Deployment
- [ ] All tests passing
- [ ] Version bumped
- [ ] CHANGELOG updated
- [ ] Environment variables documented
- [ ] Database migrations ready
- [ ] Backup taken (if applicable)
## Configuration
- [ ] Production .env file ready
- [ ] Secrets rotated (if needed)
- [ ] SSL certificates valid
- [ ] Domain DNS configured
## Deployment
- [ ] Code deployed
- [ ] Dependencies installed
- [ ] Migrations run
- [ ] Static assets built/deployed
- [ ] Service restarted
## Post-Deployment
- [ ] Health check passing
- [ ] Smoke tests passing
- [ ] Logs checked for errors
- [ ] Monitoring alerts configured
- [ ] Rollback plan tested
## Rollback Plan
1. Stop service: `sudo systemctl stop myapp`
2. Checkout previous version: `git checkout v1.2.3`
3. Reinstall deps: `pip install -e .`
4. Start service: `sudo systemctl start myapp`
# Add to your application
@app.get("/health")
async def health_check():
"""Health check endpoint for monitoring."""
checks = {
"status": "healthy",
"version": __version__,
"checks": {}
}
# Database check
try:
await db.execute("SELECT 1")
checks["checks"]["database"] = "ok"
except Exception as e:
checks["status"] = "unhealthy"
checks["checks"]["database"] = str(e)
# Cache check
try:
await cache.ping()
checks["checks"]["cache"] = "ok"
except Exception as e:
checks["checks"]["cache"] = str(e)
status_code = 200 if checks["status"] == "healthy" else 503
return JSONResponse(checks, status_code=status_code)
When /deploy is invoked: