一键导入
sync-compose-config
When new environment variables or configuration options are added, sync compose.advanced.yaml and .env.example
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
When new environment variables or configuration options are added, sync compose.advanced.yaml and .env.example
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | sync-compose-config |
| description | When new environment variables or configuration options are added, sync compose.advanced.yaml and .env.example |
| compatibility | opencode |
| metadata | {"workflow":"compose-config"} |
When a PR introduces new environment variables, config options, or feature flags to the SleepLab codebase (e.g. in server.py, api/, docker/entrypoint.sh, docker-compose.yml or any backend module). This skill ensures the compose configuration files stay in sync.
Search the PR diff for new environment variable reads. Common patterns:
os.environ.get("VAR_NAME"
os.getenv("VAR_NAME"
os.environ["VAR_NAME"]
${VAR_NAME:-}
${VAR_NAME:?error}
Also check for new feature flags or configuration that might need env var support.
compose.advanced.yamlAdd the new env var under the appropriate section in app.environment:
| Var type | How to add |
|---|---|
| Required secret | ${VAR_NAME:?error} with a comment explaining how to generate the value |
| Optional with default | ${VAR_NAME:-default} with a comment explaining what it controls |
| Optional, no default | ${VAR_NAME:-} with a comment |
| Optional, disabled by default | ${VAR_NAME:-false} with a comment |
Section ordering (maintain this order in the file):
# --- Database ---# --- Security ---# --- API / Networking ---# --- Optional: OpenAI ---# --- Optional: SleepHQ cloud import ---# --- Optional: Import webhook ---# --- Optional: Wearable data integration ---# --- Time zones ---.env.exampleAdd the matching entry under the correct section with:
# Required section, empty value, comment describing how to generateCheck that:
.env.example matches the ${VAR_NAME:-default} fallback in compose.advanced.yaml${VAR_NAME:?error} in the compose file and are empty in .env.example under # Requiredcompose.yaml does NOT need updating — it intentionally has hardcoded defaults for zero-config startup.compose.advanced.yaml and .env.example.openssl rand -hex 32 for key generation).