[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71Q35JY2AVM00VX10VGRA7W":3,"skill-same:01M71Q35JY2AVM00VX10VGRA7W":73},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":41,"linkOnly":42,"markdownContent":43,"markdownBody":44,"frontMatter":45,"refName":53,"commitSha":54,"skillDirectory":55,"forksCount":13,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":58,"install":59,"resources":72},"01M71Q35JY2AVM00VX10VGRA7W","docker-management",null,"Manage Docker containers, images, volumes, networks, and Compose stacks — lifecycle ops, debugging, cleanup, and Dockerfile optimization.","gjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN","gjbvsjjvgm-sketch","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F278511911?v=4","01M71F3JXKZQ70H2KCHHTXKZDA","01M71PENEVFN19DBZFNHJPCHQ7",0,"MIT","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Foptional-skills\u002Fdevops\u002Fdocker-management\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000011","运维与部署","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40],"docker management","management","docker","infrastructure","terminal","devops","stacks","debugging","ops","cleanup","dockerfile","lifecycle","networks","manage","containers","Optimization","compose","images","2026-11-10 13:02:02",false,"---\nname: docker-management\ndescription: Manage Docker containers, images, volumes, networks, and Compose stacks — lifecycle ops, debugging, cleanup, and Dockerfile optimization.\nversion: 1.0.0\nauthor: sprmn24\nlicense: MIT\nmetadata:\n  hermes:\n    tags: [docker, containers, devops, infrastructure, compose, images, volumes, networks, debugging]\n    category: devops\n    requires_toolsets: [terminal]\n---\n\n# Docker Management\n\nManage Docker containers, images, volumes, networks, and Compose stacks using standard Docker CLI commands. No additional dependencies beyond Docker itself.\n\n## When to Use\n\n- Run, stop, restart, remove, or inspect containers\n- Build, pull, push, tag, or clean up Docker images\n- Work with Docker Compose (multi-service stacks)\n- Manage volumes or networks\n- Debug a crashing container or analyze logs\n- Check Docker disk usage or free up space\n- Review or optimize a Dockerfile\n\n## Prerequisites\n\n- Docker Engine installed and running\n- User added to the `docker` group (or use `sudo`)\n- Docker Compose v2 (included with modern Docker installations)\n\nQuick check:\n\n```bash\ndocker --version && docker compose version\n```\n\n## Quick Reference\n\n| Task | Command |\n|------|---------|\n| Run container (background) | `docker run -d --name NAME IMAGE` |\n| Stop + remove | `docker stop NAME && docker rm NAME` |\n| View logs (follow) | `docker logs --tail 50 -f NAME` |\n| Shell into container | `docker exec -it NAME \u002Fbin\u002Fsh` |\n| List all containers | `docker ps -a` |\n| Build image | `docker build -t TAG .` |\n| Compose up | `docker compose up -d` |\n| Compose down | `docker compose down` |\n| Disk usage | `docker system df` |\n| Cleanup dangling | `docker image prune && docker container prune` |\n\n## Procedure\n\n### 1. Identify the domain\n\nFigure out which area the request falls into:\n\n- **Container lifecycle** → run, stop, start, restart, rm, pause\u002Funpause\n- **Container interaction** → exec, cp, logs, inspect, stats\n- **Image management** → build, pull, push, tag, rmi, save\u002Fload\n- **Docker Compose** → up, down, ps, logs, exec, build, config\n- **Volumes & networks** → create, inspect, rm, prune, connect\n- **Troubleshooting** → log analysis, exit codes, resource issues\n\n### 2. Container operations\n\n**Run a new container:**\n\n```bash\n# Detached service with port mapping\ndocker run -d --name web -p 8080:80 nginx\n\n# With environment variables\ndocker run -d -e POSTGRES_PASSWORD=secret -e POSTGRES_DB=mydb --name db postgres:16\n\n# With persistent data (named volume)\ndocker run -d -v pgdata:\u002Fvar\u002Flib\u002Fpostgresql\u002Fdata --name db postgres:16\n\n# For development (bind mount source code)\ndocker run -d -v $(pwd)\u002Fsrc:\u002Fapp\u002Fsrc -p 3000:3000 --name dev my-app\n\n# Interactive debugging (auto-remove on exit)\ndocker run -it --rm ubuntu:22.04 \u002Fbin\u002Fbash\n\n# With resource limits and restart policy\ndocker run -d --memory=512m --cpus=1.5 --restart=unless-stopped --name app my-app\n```\n\nKey flags: `-d` detached, `-it` interactive+tty, `--rm` auto-remove, `-p` port (host:container), `-e` env var, `-v` volume, `--name` name, `--restart` restart policy.\n\n**Manage running containers:**\n\n```bash\ndocker ps                        # running containers\ndocker ps -a                     # all (including stopped)\ndocker stop NAME                 # graceful stop\ndocker start NAME                # start stopped container\ndocker restart NAME              # stop + start\ndocker rm NAME                   # remove stopped container\ndocker rm -f NAME                # force remove running container\ndocker container prune           # remove ALL stopped containers\n```\n\n**Interact with containers:**\n\n```bash\ndocker exec -it NAME \u002Fbin\u002Fsh          # shell access (use \u002Fbin\u002Fbash if available)\ndocker exec NAME env                   # view environment variables\ndocker exec -u root NAME apt update    # run as specific user\ndocker logs --tail 100 -f NAME         # follow last 100 lines\ndocker logs --since 2h NAME            # logs from last 2 hours\ndocker cp NAME:\u002Fpath\u002Ffile .\u002Flocal      # copy file from container\ndocker cp .\u002Ffile NAME:\u002Fpath\u002F           # copy file to container\ndocker inspect NAME                    # full container details (JSON)\ndocker stats --no-stream               # resource usage snapshot\ndocker top NAME                        # running processes\n```\n\n### 3. Image management\n\n```bash\n# Build\ndocker build -t my-app:latest .\ndocker build -t my-app:prod -f Dockerfile.prod .\ndocker build --no-cache -t my-app .              # clean rebuild\nDOCKER_BUILDKIT=1 docker build -t my-app .       # faster with BuildKit\n\n# Pull and push\ndocker pull node:20-alpine\ndocker login ghcr.io\ndocker tag my-app:latest registry\u002Fmy-app:v1.0\ndocker push registry\u002Fmy-app:v1.0\n\n# Inspect\ndocker images                          # list local images\ndocker history IMAGE                   # see layers\ndocker inspect IMAGE                   # full details\n\n# Cleanup\ndocker image prune                     # remove dangling (untagged) images\ndocker image prune -a                  # remove ALL unused images (careful!)\ndocker image prune -a --filter \"until=168h\"   # unused images older than 7 days\n```\n\n### 4. Docker Compose\n\n```bash\n# Start\u002Fstop\ndocker compose up -d                   # start all services detached\ndocker compose up -d --build           # rebuild images before starting\ndocker compose down                    # stop and remove containers\ndocker compose down -v                 # also remove volumes (DESTROYS DATA)\n\n# Monitoring\ndocker compose ps                      # list services\ndocker compose logs -f api             # follow logs for specific service\ndocker compose logs --tail 50          # last 50 lines all services\n\n# Interaction\ndocker compose exec api \u002Fbin\u002Fsh        # shell into running service\ndocker compose run --rm api npm test   # one-off command (new container)\ndocker compose restart api             # restart specific service\n\n# Validation\ndocker compose config                  # validate and view resolved config\n```\n\n**Minimal compose.yml example:**\n\n```yaml\nservices:\n  api:\n    build: .\n    ports:\n      - \"3000:3000\"\n    environment:\n      - DATABASE_URL=postgres:\u002F\u002Fuser:pass@db:5432\u002Fmydb\n    depends_on:\n      db:\n        condition: service_healthy\n\n  db:\n    image: postgres:16-alpine\n    environment:\n      POSTGRES_USER: user\n      POSTGRES_PASSWORD: pass\n      POSTGRES_DB: mydb\n    volumes:\n      - pgdata:\u002Fvar\u002Flib\u002Fpostgresql\u002Fdata\n    healthcheck:\n      test: [\"CMD-SHELL\", \"pg_isready -U user\"]\n      interval: 10s\n      timeout: 5s\n      retries: 5\n\nvolumes:\n  pgdata:\n```\n\n### 5. Volumes and networks\n\n```bash\n# Volumes\ndocker volume ls                       # list volumes\ndocker volume create mydata            # create named volume\ndocker volume inspect mydata           # details (mount point, etc.)\ndocker volume rm mydata                # remove (fails if in use)\ndocker volume prune                    # remove unused volumes\n\n# Networks\ndocker network ls                      # list networks\ndocker network create mynet            # create bridge network\ndocker network inspect mynet           # details (connected containers)\ndocker network connect mynet NAME      # attach container to network\ndocker network disconnect mynet NAME   # detach container\ndocker network rm mynet                # remove network\ndocker network prune                   # remove unused networks\n```\n\n### 6. Disk usage and cleanup\n\nAlways start with a diagnostic before cleaning:\n\n```bash\n# Check what's using space\ndocker system df                       # summary\ndocker system df -v                    # detailed breakdown\n\n# Targeted cleanup (safe)\ndocker container prune                 # stopped containers\ndocker image prune                     # dangling images\ndocker volume prune                    # unused volumes\ndocker network prune                   # unused networks\n\n# Aggressive cleanup (confirm with user first!)\ndocker system prune                    # containers + images + networks\ndocker system prune -a                 # also unused images\ndocker system prune -a --volumes       # EVERYTHING — named volumes too\n```\n\n**Warning:** Never run `docker system prune -a --volumes` without confirming with the user. This removes named volumes with potentially important data.\n\n## Pitfalls\n\n| Problem | Cause | Fix |\n|---------|-------|-----|\n| Container exits immediately | Main process finished or crashed | Check `docker logs NAME`, try `docker run -it --entrypoint \u002Fbin\u002Fsh IMAGE` |\n| \"port is already allocated\" | Another process using that port | `docker ps` or `lsof -i :PORT` to find it |\n| \"no space left on device\" | Docker disk full | `docker system df` then targeted prune |\n| Can't connect to container | App binds to 127.0.0.1 inside container | App must bind to `0.0.0.0`, check `-p` mapping |\n| Permission denied on volume | UID\u002FGID mismatch host vs container | Use `--user $(id -u):$(id -g)` or fix permissions |\n| Compose services can't reach each other | Wrong network or service name | Services use service name as hostname, check `docker compose config` |\n| Build cache not working | Layer order wrong in Dockerfile | Put rarely-changing layers first (deps before source code) |\n| Image too large | No multi-stage build, no .dockerignore | Use multi-stage builds, add `.dockerignore` |\n\n## Verification\n\nAfter any Docker operation, verify the result:\n\n- **Container started?** → `docker ps` (check status is \"Up\")\n- **Logs clean?** → `docker logs --tail 20 NAME` (no errors)\n- **Port accessible?** → `curl -s http:\u002F\u002Flocalhost:PORT` or `docker port NAME`\n- **Image built?** → `docker images | grep TAG`\n- **Compose stack healthy?** → `docker compose ps` (all services \"running\" or \"healthy\")\n- **Disk freed?** → `docker system df` (compare before\u002Fafter)\n\n## Dockerfile Optimization Tips\n\nWhen reviewing or creating a Dockerfile, suggest these improvements:\n\n1. **Multi-stage builds** — separate build environment from runtime to reduce final image size\n2. **Layer ordering** — put dependencies before source code so changes don't invalidate cached layers\n3. **Combine RUN commands** — fewer layers, smaller image\n4. **Use .dockerignore** — exclude `node_modules`, `.git`, `__pycache__`, etc.\n5. **Pin base image versions** — `node:20-alpine` not `node:latest`\n6. **Run as non-root** — add `USER` instruction for security\n7. **Use slim\u002Falpine bases** — `python:3.12-slim` not `python:3.12`\n","# Docker Management\n\nManage Docker containers, images, volumes, networks, and Compose stacks using standard Docker CLI commands. No additional dependencies beyond Docker itself.\n\n## When to Use\n\n- Run, stop, restart, remove, or inspect containers\n- Build, pull, push, tag, or clean up Docker images\n- Work with Docker Compose (multi-service stacks)\n- Manage volumes or networks\n- Debug a crashing container or analyze logs\n- Check Docker disk usage or free up space\n- Review or optimize a Dockerfile\n\n## Prerequisites\n\n- Docker Engine installed and running\n- User added to the `docker` group (or use `sudo`)\n- Docker Compose v2 (included with modern Docker installations)\n\nQuick check:\n\n```bash\ndocker --version && docker compose version\n```\n\n## Quick Reference\n\n| Task | Command |\n|------|---------|\n| Run container (background) | `docker run -d --name NAME IMAGE` |\n| Stop + remove | `docker stop NAME && docker rm NAME` |\n| View logs (follow) | `docker logs --tail 50 -f NAME` |\n| Shell into container | `docker exec -it NAME \u002Fbin\u002Fsh` |\n| List all containers | `docker ps -a` |\n| Build image | `docker build -t TAG .` |\n| Compose up | `docker compose up -d` |\n| Compose down | `docker compose down` |\n| Disk usage | `docker system df` |\n| Cleanup dangling | `docker image prune && docker container prune` |\n\n## Procedure\n\n### 1. Identify the domain\n\nFigure out which area the request falls into:\n\n- **Container lifecycle** → run, stop, start, restart, rm, pause\u002Funpause\n- **Container interaction** → exec, cp, logs, inspect, stats\n- **Image management** → build, pull, push, tag, rmi, save\u002Fload\n- **Docker Compose** → up, down, ps, logs, exec, build, config\n- **Volumes & networks** → create, inspect, rm, prune, connect\n- **Troubleshooting** → log analysis, exit codes, resource issues\n\n### 2. Container operations\n\n**Run a new container:**\n\n```bash\n# Detached service with port mapping\ndocker run -d --name web -p 8080:80 nginx\n\n# With environment variables\ndocker run -d -e POSTGRES_PASSWORD=secret -e POSTGRES_DB=mydb --name db postgres:16\n\n# With persistent data (named volume)\ndocker run -d -v pgdata:\u002Fvar\u002Flib\u002Fpostgresql\u002Fdata --name db postgres:16\n\n# For development (bind mount source code)\ndocker run -d -v $(pwd)\u002Fsrc:\u002Fapp\u002Fsrc -p 3000:3000 --name dev my-app\n\n# Interactive debugging (auto-remove on exit)\ndocker run -it --rm ubuntu:22.04 \u002Fbin\u002Fbash\n\n# With resource limits and restart policy\ndocker run -d --memory=512m --cpus=1.5 --restart=unless-stopped --name app my-app\n```\n\nKey flags: `-d` detached, `-it` interactive+tty, `--rm` auto-remove, `-p` port (host:container), `-e` env var, `-v` volume, `--name` name, `--restart` restart policy.\n\n**Manage running containers:**\n\n```bash\ndocker ps                        # running containers\ndocker ps -a                     # all (including stopped)\ndocker stop NAME                 # graceful stop\ndocker start NAME                # start stopped container\ndocker restart NAME              # stop + start\ndocker rm NAME                   # remove stopped container\ndocker rm -f NAME                # force remove running container\ndocker container prune           # remove ALL stopped containers\n```\n\n**Interact with containers:**\n\n```bash\ndocker exec -it NAME \u002Fbin\u002Fsh          # shell access (use \u002Fbin\u002Fbash if available)\ndocker exec NAME env                   # view environment variables\ndocker exec -u root NAME apt update    # run as specific user\ndocker logs --tail 100 -f NAME         # follow last 100 lines\ndocker logs --since 2h NAME            # logs from last 2 hours\ndocker cp NAME:\u002Fpath\u002Ffile .\u002Flocal      # copy file from container\ndocker cp .\u002Ffile NAME:\u002Fpath\u002F           # copy file to container\ndocker inspect NAME                    # full container details (JSON)\ndocker stats --no-stream               # resource usage snapshot\ndocker top NAME                        # running processes\n```\n\n### 3. Image management\n\n```bash\n# Build\ndocker build -t my-app:latest .\ndocker build -t my-app:prod -f Dockerfile.prod .\ndocker build --no-cache -t my-app .              # clean rebuild\nDOCKER_BUILDKIT=1 docker build -t my-app .       # faster with BuildKit\n\n# Pull and push\ndocker pull node:20-alpine\ndocker login ghcr.io\ndocker tag my-app:latest registry\u002Fmy-app:v1.0\ndocker push registry\u002Fmy-app:v1.0\n\n# Inspect\ndocker images                          # list local images\ndocker history IMAGE                   # see layers\ndocker inspect IMAGE                   # full details\n\n# Cleanup\ndocker image prune                     # remove dangling (untagged) images\ndocker image prune -a                  # remove ALL unused images (careful!)\ndocker image prune -a --filter \"until=168h\"   # unused images older than 7 days\n```\n\n### 4. Docker Compose\n\n```bash\n# Start\u002Fstop\ndocker compose up -d                   # start all services detached\ndocker compose up -d --build           # rebuild images before starting\ndocker compose down                    # stop and remove containers\ndocker compose down -v                 # also remove volumes (DESTROYS DATA)\n\n# Monitoring\ndocker compose ps                      # list services\ndocker compose logs -f api             # follow logs for specific service\ndocker compose logs --tail 50          # last 50 lines all services\n\n# Interaction\ndocker compose exec api \u002Fbin\u002Fsh        # shell into running service\ndocker compose run --rm api npm test   # one-off command (new container)\ndocker compose restart api             # restart specific service\n\n# Validation\ndocker compose config                  # validate and view resolved config\n```\n\n**Minimal compose.yml example:**\n\n```yaml\nservices:\n  api:\n    build: .\n    ports:\n      - \"3000:3000\"\n    environment:\n      - DATABASE_URL=postgres:\u002F\u002Fuser:pass@db:5432\u002Fmydb\n    depends_on:\n      db:\n        condition: service_healthy\n\n  db:\n    image: postgres:16-alpine\n    environment:\n      POSTGRES_USER: user\n      POSTGRES_PASSWORD: pass\n      POSTGRES_DB: mydb\n    volumes:\n      - pgdata:\u002Fvar\u002Flib\u002Fpostgresql\u002Fdata\n    healthcheck:\n      test: [\"CMD-SHELL\", \"pg_isready -U user\"]\n      interval: 10s\n      timeout: 5s\n      retries: 5\n\nvolumes:\n  pgdata:\n```\n\n### 5. Volumes and networks\n\n```bash\n# Volumes\ndocker volume ls                       # list volumes\ndocker volume create mydata            # create named volume\ndocker volume inspect mydata           # details (mount point, etc.)\ndocker volume rm mydata                # remove (fails if in use)\ndocker volume prune                    # remove unused volumes\n\n# Networks\ndocker network ls                      # list networks\ndocker network create mynet            # create bridge network\ndocker network inspect mynet           # details (connected containers)\ndocker network connect mynet NAME      # attach container to network\ndocker network disconnect mynet NAME   # detach container\ndocker network rm mynet                # remove network\ndocker network prune                   # remove unused networks\n```\n\n### 6. Disk usage and cleanup\n\nAlways start with a diagnostic before cleaning:\n\n```bash\n# Check what's using space\ndocker system df                       # summary\ndocker system df -v                    # detailed breakdown\n\n# Targeted cleanup (safe)\ndocker container prune                 # stopped containers\ndocker image prune                     # dangling images\ndocker volume prune                    # unused volumes\ndocker network prune                   # unused networks\n\n# Aggressive cleanup (confirm with user first!)\ndocker system prune                    # containers + images + networks\ndocker system prune -a                 # also unused images\ndocker system prune -a --volumes       # EVERYTHING — named volumes too\n```\n\n**Warning:** Never run `docker system prune -a --volumes` without confirming with the user. This removes named volumes with potentially important data.\n\n## Pitfalls\n\n| Problem | Cause | Fix |\n|---------|-------|-----|\n| Container exits immediately | Main process finished or crashed | Check `docker logs NAME`, try `docker run -it --entrypoint \u002Fbin\u002Fsh IMAGE` |\n| \"port is already allocated\" | Another process using that port | `docker ps` or `lsof -i :PORT` to find it |\n| \"no space left on device\" | Docker disk full | `docker system df` then targeted prune |\n| Can't connect to container | App binds to 127.0.0.1 inside container | App must bind to `0.0.0.0`, check `-p` mapping |\n| Permission denied on volume | UID\u002FGID mismatch host vs container | Use `--user $(id -u):$(id -g)` or fix permissions |\n| Compose services can't reach each other | Wrong network or service name | Services use service name as hostname, check `docker compose config` |\n| Build cache not working | Layer order wrong in Dockerfile | Put rarely-changing layers first (deps before source code) |\n| Image too large | No multi-stage build, no .dockerignore | Use multi-stage builds, add `.dockerignore` |\n\n## Verification\n\nAfter any Docker operation, verify the result:\n\n- **Container started?** → `docker ps` (check status is \"Up\")\n- **Logs clean?** → `docker logs --tail 20 NAME` (no errors)\n- **Port accessible?** → `curl -s http:\u002F\u002Flocalhost:PORT` or `docker port NAME`\n- **Image built?** → `docker images | grep TAG`\n- **Compose stack healthy?** → `docker compose ps` (all services \"running\" or \"healthy\")\n- **Disk freed?** → `docker system df` (compare before\u002Fafter)\n\n## Dockerfile Optimization Tips\n\nWhen reviewing or creating a Dockerfile, suggest these improvements:\n\n1. **Multi-stage builds** — separate build environment from runtime to reduce final image size\n2. **Layer ordering** — put dependencies before source code so changes don't invalidate cached layers\n3. **Combine RUN commands** — fewer layers, smaller image\n4. **Use .dockerignore** — exclude `node_modules`, `.git`, `__pycache__`, etc.\n5. **Pin base image versions** — `node:20-alpine` not `node:latest`\n6. **Run as non-root** — add `USER` instruction for security\n7. **Use slim\u002Falpine bases** — `python:3.12-slim` not `python:3.12`\n",{"name":5,"author":46,"license":14,"version":47,"metadata":48,"description":7},"sprmn24","1.0.0",{"hermes":49},{"tags":50,"category":28,"requires_toolsets":52},[25,37,28,26,39,40,51,35,30],"volumes",[27],"main","6746276ba18cb774853eb61b3b9399658bc9bc5c","core\u002Foptional-skills\u002Fdevops\u002Fdocker-management","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch","2026-04-28 17:01:03",{"source":8,"skillName":5,"commands":60,"prompt":70,"zipAvailable":71},[61,64,67],{"tool":62,"command":63},"npx","npx skills add gjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN --skill docker-management",{"tool":65,"command":66},"bunx","bunx skills add gjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN --skill docker-management",{"tool":68,"command":69},"pnpm","pnpm dlx skills add gjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN --skill docker-management","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Foptional-skills\u002Fdevops\u002Fdocker-management\u002FSKILL.md",true,[],[74,115,139,156,175,194],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":94,"publishedAt":41},"01M71QG27G1R2H2ZWEG4S0WTZT","writing-plans","Write implementation plans: bite-sized tasks, paths, code.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Fwriting-plans\u002FSKILL.md",[80,83,86,91],{"categoryNo":81,"categoryName":82,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":84,"categoryName":85,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":87,"categoryName":88,"taxonomyType":89,"taxonomyTypeDesc":90},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",{"categoryNo":92,"categoryName":93,"taxonomyType":89,"taxonomyTypeDesc":90},"01JBSEEDCAT000000000000036","内容创作者",[95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114],"writing","writing plans","plans","test-driven","test-driven-development","superpowers","design","workflow","code","tasks","subagent","code-review","review","documentation","write","paths","planning","development","test","implementation",{"skillNo":116,"name":99,"nameZh":6,"description":117,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":118,"categories":119,"keywords":126,"publishedAt":41},"01M71QFZYRTJXMAE551MRAKZ14","TDD: enforce RED-GREEN-REFACTOR, tests before code.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Ftest-driven-development\u002FSKILL.md",[120,123],{"categoryNo":121,"categoryName":122,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":124,"categoryName":125,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000008","测试与质量",[127,112,113,128,129,130,131,100,95,30,103,105,132,133,134,135,136,97,137,138],"test driven development","driven","green","red-green-refactor","testing","systematic","refactor","systematic-debugging","enforce","tests","tdd","quality",{"skillNo":140,"name":134,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":145,"publishedAt":41},"01M71QFWR5Q8EYEQ6MCS3SM6MC","4-phase root cause debugging: understand bugs before fixing.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Fsystematic-debugging\u002FSKILL.md",[144],{"categoryNo":124,"categoryName":125,"taxonomyType":20,"taxonomyTypeDesc":21},[146,30,132,98,147,148,99,100,95,105,149,150,112,151,97,152,113,153,154,155],"systematic debugging","problem","problem-solving","phase","bugs","root cause","root-cause","investigation","understand","hermes",{"skillNo":157,"name":158,"nameZh":6,"description":159,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":160,"categories":161,"keywords":167,"publishedAt":41},"01M71QFS9S04MD8JP747W5WM0N","subagent-driven-development","Execute plans via delegate_task subagents (2-stage review).","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Fsubagent-driven-development\u002FSKILL.md",[162,163,166],{"categoryNo":84,"categoryName":85,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":164,"categoryName":165,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":92,"categoryName":93,"taxonomyType":89,"taxonomyTypeDesc":90},[168,105,112,128,98,99,169,170,100,95,102,103,106,107,171,172,97,173,174,113],"subagent driven development","delegate","delegation","subagents","parallel","stage","task",{"skillNo":176,"name":177,"nameZh":6,"description":178,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":179,"categories":180,"keywords":183,"publishedAt":41},"01M71QFQ1DBCVAZ511MXFE6T2V","requesting-code-review","Pre-commit review: security scan, quality gates, auto-fix.","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Frequesting-code-review\u002FSKILL.md",[181,182],{"categoryNo":121,"categoryName":122,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":87,"categoryName":88,"taxonomyType":89,"taxonomyTypeDesc":90},[184,185,103,107,98,99,186,187,100,188,95,189,190,105,106,191,192,112,193,97],"code review","requesting code review","fix","auto-fix","auto","security scan","commit","verification","security","scan",{"skillNo":195,"name":196,"nameZh":6,"description":197,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":198,"categories":199,"keywords":201,"publishedAt":41},"01M71QFM7KWM540YR67FRN807Q","python-debugpy","Debug Python: pdb REPL + debugpy remote (DAP).","https:\u002F\u002Fgithub.com\u002Fgjbvsjjvgm-sketch\u002FWORM_V2_SOVEREIGN\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fsoftware-development\u002Fpython-debugpy\u002FSKILL.md",[200],{"categoryNo":87,"categoryName":88,"taxonomyType":89,"taxonomyTypeDesc":90},[202,203,204,205,206,207,208,209,30,132,210,211,212,134,213,214,215,216,155,217],"debugpy","python debugpy","python","dap","inspect","post-mortem","pdb","remote","debugger","node","commands","debug","post","breakpoints","node-inspect","tui"]