AgentSkillsCN

local-dev-evaluator

评估任意栈的本地开发体验。适用于用户询问本地开发设置、docker-compose 与 Kubernetes 的对比,或某项技术栈的开发者体验时使用。

SKILL.md
--- frontmatter
name: local-dev-evaluator
description: Evaluate local development experience for any stack. Use when user asks about local dev setup, docker-compose vs kubernetes, or developer experience for a technology stack.

Local Dev Experience Evaluator

Evaluate and recommend the best local development approach for any stack.

Standalone Usage

Can be invoked directly:

  • "How do I run this stack locally?"
  • "Should I use docker-compose or local k8s?"
  • "Evaluate local dev experience for Next.js + Supabase"

Assumptions

  • Docker Desktop is available
  • Local Kubernetes is available (Docker Desktop K8s, minikube, kind, or k3s)

Available Approaches

ApproachWhen to UseComplexity
docker-composeSimple apps, all deps containerizedLow
local-k8sK8s-native apps, need K8s featuresMedium
hybridComplex apps: deps in compose, services in k8sMedium-High
aspire.NET distributed appsMedium
nativeSimple apps, few depsVery Low

When to Use Each

docker-compose:

  • Web app + database + cache
  • Microservices with < 5 services
  • No K8s-specific features needed
  • Team familiar with Docker

local-k8s:

  • Using K8s-specific features (ConfigMaps, Services, Ingress)
  • Deploying to K8s in production
  • Need to test K8s manifests locally
  • Using Helm charts

hybrid:

  • Complex microservices architecture
  • Heavy stateful deps (databases) in compose
  • Stateless services in K8s
  • Need both simplicity and K8s testing

aspire:

  • .NET distributed applications
  • Need unified observability dashboard
  • Code-first infrastructure definition
  • Multiple .NET services

native:

  • Single service with minimal deps
  • Using local SQLite or in-memory
  • Frontend-only development
  • Rapid iteration priority

Evaluation Criteria

Time to First Run

RatingTimeDescription
Excellent< 5 mingit clone && docker-compose up
Good5-15 minMultiple steps, some build time
Fair15-30 minComplex setup, many deps
Poor> 30 minManual steps, external deps

Dependency Complexity

LevelContainersDescription
Low1-3Standard images (postgres, redis)
Medium4-6Some custom config
High7+Complex networking, custom builds

Production Parity

AreaFullPartialNone
AuthSame providerMock/simplifiedDisabled
DataSame DB + migrationsSame DB + seedDifferent DB
AsyncSame queue/eventsLocal queueSync only
ConfigSame config system.env filesHardcoded

Output Contract

yaml
local_dev_evaluation:
  stack: "<stack description>"

  recommended_approach: "<docker-compose|local-k8s|hybrid|aspire|native>"

  time_to_first_run: "<excellent|good|fair|poor>"
  estimated_minutes: <N>

  dependency_complexity: "<low|medium|high>"
  container_count: <N>

  prod_parity:
    auth: "<full|partial|none>"
    data: "<full|partial|none>"
    async: "<full|partial|none>"
    config: "<full|partial|none>"
    overall: "<high|medium|low>"

  debugging_support: "<excellent|good|fair|poor>"
  dev_observability: "<excellent|good|fair|poor>"

  dx_score: <1-5>

  setup_steps:
    - step: "<step name>"
      command: "<command>"

  files_needed:
    - "<file 1>"
    - "<file 2>"

  notes:
    - "<important consideration>"

  recommendations:
    - "<recommendation>"

Example: Next.js + Supabase

yaml
local_dev_evaluation:
  stack: "Next.js + Supabase"

  recommended_approach: "native"

  time_to_first_run: "excellent"
  estimated_minutes: 3

  dependency_complexity: "low"
  container_count: 1  # Supabase CLI runs all-in-one

  prod_parity:
    auth: "full"
    data: "full"
    async: "full"
    config: "partial"
    overall: "high"

  debugging_support: "excellent"
  dev_observability: "good"

  dx_score: 5

  setup_steps:
    - step: "Install Supabase CLI"
      command: "brew install supabase/tap/supabase"
    - step: "Start local Supabase"
      command: "supabase start"
    - step: "Start Next.js"
      command: "npm run dev"

  notes:
    - "Supabase CLI includes: PostgreSQL, Auth, Storage, Edge Functions"
    - "Studio UI available at localhost:54323"

Example: EKS + Aurora

yaml
local_dev_evaluation:
  stack: "React + Node.js API + Aurora PostgreSQL"

  recommended_approach: "docker-compose"

  time_to_first_run: "good"
  estimated_minutes: 10

  dependency_complexity: "medium"
  container_count: 4  # frontend, api, postgres, redis

  prod_parity:
    auth: "partial"  # Local JWT vs Cognito
    data: "full"     # Same PostgreSQL
    async: "partial" # Local Redis vs ElastiCache
    config: "partial"
    overall: "medium"

  dx_score: 4

  setup_steps:
    - step: "Copy environment"
      command: "cp .env.example .env.local"
    - step: "Start services"
      command: "docker-compose up -d"
    - step: "Run migrations"
      command: "npm run db:migrate"
    - step: "Start dev server"
      command: "npm run dev"

  files_needed:
    - "docker-compose.yml"
    - ".env.example"
    - "docker-compose.override.yml (optional)"

Scoring Guide

DX ScoreCriteria
5< 5 min, low complexity, high parity, excellent debugging
45-15 min, low-medium complexity, good parity
315-30 min, medium complexity, partial parity
2> 30 min, high complexity, limited parity
1Complex manual setup, poor parity, difficult debugging