Agent Skillsfcakyon/claude-codex-settings › polar-local-environment

polar-local-environment

GitHub

管理Polar本地开发环境的Docker技能,支持启动、停止、调试及多工作树实例隔离配置。

plugins/polar-skills/skills/polar-local-environment/SKILL.md fcakyon/claude-codex-settings

Trigger Scenarios

设置或重置本地Docker开发环境 查看服务日志或排查容器启动错误 并行运行多个隔离的开发实例

Install

npx skills add fcakyon/claude-codex-settings --skill polar-local-environment -g -y
More Options

Non-standard path

npx skills add https://github.com/fcakyon/claude-codex-settings/tree/main/plugins/polar-skills/skills/polar-local-environment -g -y

Use without installing

npx skills use fcakyon/claude-codex-settings@polar-local-environment

指定 Agent (Claude Code)

npx skills add fcakyon/claude-codex-settings --skill polar-local-environment -a claude-code -g -y

安装 repo 全部 skill

npx skills add fcakyon/claude-codex-settings --all -g -y

预览 repo 内 skill

npx skills add fcakyon/claude-codex-settings --list

SKILL.md

Frontmatter
{
    "name": "polar-local-environment",
    "license": "MIT",
    "metadata": {
        "author": "polar",
        "version": "1.1.0"
    },
    "description": "This skill should be used when setting up or managing Polar local development environment with Docker."
}

Local Environment Skill

Helps manage the Polar local development environment through the dev docker CLI. Use it to start, stop, debug, or reason about the local stack.

The two-part model

dev docker deliberately splits the stack so many worktrees can share one set of heavy infra:

  • Shared infra — one copy per machine, Docker project polar-shared: postgres, redis, minio, tinybird, and optional prometheus/grafana. Postgres and redis publish no host ports; MinIO exposes 9000/9001 for browser uploads. Use dev docker exec <service> ... for services without host ports.
  • Per-instance app stack — one per worktree, project polar-app-<N>: api, worker, web. Only api and web publish host ports, offset per instance so worktrees don't collide.

Knowing this prevents the most common confusion: there is no localhost:5432 for the database (it lives in the shared stack and is reached through dev docker exec db ...). MinIO does expose ports 9000/9001 for browser uploads and console access.

Instance auto-detection

dev docker auto-detects the instance for the current worktree, so -i is rarely needed. Priority:

  1. POLAR_DOCKER_INSTANCE pinned in dev/docker/.env.docker (dev docker set-instance N)
  2. CONDUCTOR_PORT env var → (port - 55000) / 10 + 1
  3. The cross-worktree registry (~/.config/polar/docker-instances.json)
  4. Otherwise the lowest free number, then registered

Run dev docker ports to see the resolved instance and its URLs (add --json for tooling). To wire this worktree into Claude Code's preview, run dev docker launch-json, which writes a per-instance .claude/launch.json with the correct ports (it's gitignored, so regenerate after set-instance).

When to use

  • Start / stop / restart the local environment
  • View logs or debug a service that won't come up
  • Run several isolated worktree instances in parallel
  • Understand the service architecture or find a service's real port
  • Diagnose container or first-boot errors

Quick reference

Task Command
Start full stack (background) dev docker up -d
Start and block until healthy dev docker up -d --wait
Start in foreground (stream logs) dev docker up --no-detach
Rebuild with fresh base images dev docker up -b --pull -d
Show this instance's ports/URLs dev docker ports (--json for tooling)
Write Claude Code preview config dev docker launch-json
Stop app stack dev docker down
Stop app and shared infra dev docker down --all
Follow logs dev docker logs -f [service]
Print logs and exit dev docker logs --no-follow [service]
Status dev docker ps
Restart a service dev docker restart <service>
Shell into a service dev docker shell <service>
One-off command in a service dev docker exec <service> <cmd>
Reset this instance dev docker cleanup -f
Wipe ALL shared data dev docker cleanup --all -f
List every instance dev docker list
With monitoring dev docker up --monitoring -d

Services

Service Project Host port (instance 0 / N) Notes
api polar-app-<N> 8000 / 8100+N FastAPI; /healthz healthcheck
web polar-app-<N> 3000 / 3100+N Next.js; healthchecked
worker polar-app-<N> none Background jobs
db polar-shared none (exec) PostgreSQL; DB polar_dev_<N>
redis polar-shared none (exec) Redis DB index = N
minio polar-shared 9000, 9001 S3; buckets polar-s3-<N>; console at 9001
tinybird polar-shared none (exec) Analytics
prometheus / grafana polar-shared none (exec) --monitoring only

Discover the exact host ports for the current worktree with dev docker ports.

Instance port mapping

Only api and web get host ports: Port = Base + Instance (Base 8100 for api, 3100 for web) for instances 1–99. Instance 0 uses the legacy 8000 / 3000.

Instance API Web
0 8000 3000
1 8101 3101
2 8102 3102
5 8105 3105

Everything else is per-instance but not on a host port: database polar_dev_<N>, redis DB index <N>, buckets polar-s3-<N> / polar-s3-public-<N>. Reach them via dev docker exec <service> or docker exec polar-shared-<service>-1.

Rules index

Rule Category Description
service-architecture Reference Service details, ports, healthchecks
start-environment Operations Starting the stack (flags, --wait, --pull)
stop-environment Operations Stopping and cleanup (app vs shared)
manage-instances Operations Parallel worktree instances
view-logs Debugging Viewing service logs
shell-and-workflows Operations Shell access and common dev workflows
troubleshooting Debugging Common errors and fixes
payment-testing Operations Login codes, Stripe webhooks, backoffice

Version History

  • 9d0ce8b Current 2026-07-25 10:35

Same Skill Collection

plugins/adhd-output-style/skills/adhd-output-style/SKILL.md
plugins/anthropic-office-skills/skills/pdf/SKILL.md
plugins/azure-tools/skills/azure-usage/SKILL.md
plugins/azure-tools/skills/setup/SKILL.md
plugins/cloudflare-skills/skills/cloudflare-deploy/SKILL.md
plugins/codex-advisor/skills/codex-advisor/SKILL.md
plugins/dokploy-skills/skills/dokploy-deploy/SKILL.md
plugins/fable-advisor/skills/fable-advisor/SKILL.md
plugins/frontend-design-skills/skills/anthropic-frontend-design/SKILL.md
plugins/frontend-design-skills/skills/openai-frontend-design/SKILL.md
plugins/gcloud-tools/skills/gcloud-usage/SKILL.md
plugins/gcloud-tools/skills/setup/SKILL.md
plugins/github-dev/skills/clean-gone-branches/SKILL.md
plugins/github-dev/skills/commit-staged/SKILL.md
plugins/github-dev/skills/create-pr/SKILL.md
plugins/github-dev/skills/resolve-pr-comments/SKILL.md
plugins/github-dev/skills/review-pr/SKILL.md
plugins/github-dev/skills/setup/SKILL.md
plugins/github-dev/skills/update-pr-summary/SKILL.md
plugins/hetzner-skills/skills/hetzner-deploy/SKILL.md
plugins/humanize/skills/humanize/SKILL.md
plugins/livekit-skills/skills/livekit-skills/SKILL.md
plugins/mongodb-skills/skills/mongodb-atlas-stream-processing/SKILL.md
plugins/mongodb-skills/skills/mongodb-mcp-setup/SKILL.md
plugins/mongodb-skills/skills/mongodb-query-optimizer/SKILL.md
plugins/openai-office-skills/skills/doc/SKILL.md
plugins/openai-office-skills/skills/pdf/SKILL.md
plugins/openai-office-skills/skills/slides/SKILL.md
plugins/openai-office-skills/skills/spreadsheet/SKILL.md
plugins/openobserve-skills/skills/openobserve-api/SKILL.md
plugins/overleaf-skills/skills/review-overleaf/SKILL.md
plugins/overleaf-skills/skills/setup/SKILL.md
plugins/paper-search-tools/skills/paper-search-usage/SKILL.md
plugins/paper-search-tools/skills/setup/SKILL.md
plugins/polar-skills/skills/polar-billing/SKILL.md
plugins/python-skills/skills/python-guidelines/SKILL.md
plugins/react-skills/skills/composition-patterns/SKILL.md
plugins/react-skills/skills/react-best-practices/SKILL.md
plugins/react-skills/skills/react-native-skills/SKILL.md
plugins/react-skills/skills/web-design-guidelines/SKILL.md
plugins/simplify/skills/simplify/SKILL.md
plugins/supabase-skills/skills/supabase-cli/SKILL.md
plugins/supabase-skills/skills/supabase-js/SKILL.md
plugins/tavily-tools/skills/setup/SKILL.md
plugins/tavily-tools/skills/tavily-usage/SKILL.md
plugins/ultralytics-branding/skills/ultralytics-branding/SKILL.md
plugins/ultralytics-dev/skills/ultralytics-platform/SKILL.md
plugins/ultralytics-dev/skills/yolo-training/SKILL.md
plugins/web-performance-skills/skills/web-performance-optimization/SKILL.md

Metadata

Files
0
Version
c4b9424
Hash
7ed58d5f
Indexed
2026-07-25 10:35

Главная - Вики-сайт
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-20 10:19
浙ICP备14020137号-1 $Гость$