AgentSkillsCN

ln-730-devops-setup

通过自动检测,统筹 Docker、CI/CD 以及环境配置的设置

SKILL.md
--- frontmatter
name: ln-730-devops-setup
description: Coordinates Docker, CI/CD, and environment configuration setup via auto-detection

ln-730-devops-setup

Type: L2 Domain Coordinator Category: 7XX Project Bootstrap Parent: ln-700-project-bootstrap

Coordinates DevOps infrastructure setup by delegating to specialized workers.


Purpose & Scope

Orchestrates the complete DevOps setup for a project:

  • Does: Auto-detect stack, delegate to workers, verify configuration
  • Does NOT: Generate files directly (delegates to ln-731, ln-732, ln-733)

Overview

AspectDetails
InputProject directory with source code
OutputDocker, CI/CD, environment configuration
Workersln-731 (Docker), ln-732 (CI/CD), ln-733 (Environment)
ModeAuto-detect (no user prompts)

Supported Stacks

ComponentOption 1Option 2
FrontendReact/Vite + Nginx-
Backend.NET 8/9Python (FastAPI/Django)
DatabasePostgreSQL-
CI/CDGitHub Actions-

Workflow

Phase 1: Pre-flight Validation

Check required tools and project structure:

  • Verify Docker is installed (docker --version)
  • Verify docker-compose is available
  • Check for existing DevOps files (warn if overwriting)

Output: Validation report or STOP with instructions

Phase 2: Project Analysis (Auto-detect)

Detect project stack automatically:

DetectionMethodFiles to Check
FrontendPackage.json presencesrc/frontend/package.json, package.json
Backend .NET.csproj/.sln presence*.sln, src/**/*.csproj
Backend Pythonrequirements.txt/pyproject.tomlrequirements.txt, pyproject.toml
DatabaseConnection strings in codeappsettings.json, .env.example
Existing CI/CDWorkflow files.github/workflows/, azure-pipelines.yml

Version Detection:

  • Node.js: Read from package.json engines or use node -v
  • .NET: Read from *.csproj TargetFramework
  • Python: Read from pyproject.toml or runtime.txt
  • PostgreSQL: Default to latest stable (17)

Output: Stack configuration object with detected versions

Phase 3: Worker Delegation

CRITICAL: All delegations use Task tool with subagent_type: "general-purpose" for context isolation.

Prompt template:

code
Task(description: "DevOps setup via ln-73X",
     prompt: "Execute ln-73X-{worker}. Read skill from ln-73X-{worker}/SKILL.md. Stack: {stackConfig}",
     subagent_type: "general-purpose")

Anti-Patterns:

  • ❌ Direct Skill tool invocation without Task wrapper
  • ❌ Any execution bypassing subagent context isolation

Delegate to workers in parallel (independent tasks):

code
ln-730 (Coordinator)
    |
    +---> ln-731-docker-generator (via Task tool)
    |         Input: stack config, versions
    |         Output: Dockerfile.*, docker-compose.yml, .dockerignore
    |
    +---> ln-732-cicd-generator (via Task tool)
    |         Input: stack config, detected commands
    |         Output: .github/workflows/ci.yml
    |
    +---> ln-733-env-configurator (via Task tool)
              Input: detected environment variables
              Output: .env.example, .env.development, .gitignore updates

Error Handling:

  • If worker fails, log error and continue with others
  • Report all failures at the end
  • Suggest manual fixes for failed components

Phase 4: Configuration Verification

Verify generated configuration:

  • Run docker-compose config to validate syntax
  • Check all referenced files exist
  • Verify no secrets in committed files

Output: Verification report

Phase 5: Completion Report

Generate summary:

  • List all created files
  • Show detected stack configuration
  • Provide next steps for user

Generated Files

Docker (ln-731)

  • Dockerfile.frontend - Multi-stage build for frontend
  • Dockerfile.backend - Multi-stage build for backend
  • docker-compose.yml - Service orchestration
  • docker-compose.override.yml - Development overrides (optional)
  • .dockerignore - Build context exclusions

CI/CD (ln-732)

  • .github/workflows/ci.yml - Main CI pipeline

Environment (ln-733)

  • .env.example - Template with all variables
  • .env.development - Development defaults
  • .env.production - Production template (placeholders)
  • .gitignore updates - Secrets protection

Critical Notes

  1. Auto-detect Only: No interactive prompts. Uses detected values or sensible defaults.
  2. Idempotent: Check file existence before creation. Warn before overwriting.
  3. Parallel Execution: Workers are independent, can run in parallel.
  4. Error Recovery: Continue on partial failures, report all issues at end.
  5. Version Pinning: Use detected versions, not hardcoded values.

Definition of Done

  • Pre-flight validation passed
  • Stack auto-detected successfully
  • All workers completed (or failures documented)
  • docker-compose config validates successfully
  • No secrets in generated files
  • Completion report displayed

Version: 1.1.0 Last Updated: 2026-01-10