Files
doc/skills/docker/SKILL.md
T
JefferyandClaude Opus 5 67106b22c3 refactor(plugin 命名空間): plugin 更名 jsc-doc、hooks 只註冊自己擁有的 worklog
- 五份 manifest 的 name 由 jsc 改為 jsc-doc
- skill 目錄去掉重複的 doc- 前綴共 5 個(doc-funcs → funcs 等),worklog 名稱不變,frontmatter name 同步
- hooks/hooks.json 由合併超集改為只註冊 Stop(worklog):role 的 hook 交還 jsc-generic,避免改名後重複執行
- hook 腳本搜尋路徑與文件內 cache 路徑改指 jsc-doc
- 指令引用改為 /jsc-doc: 前綴;跨 plugin 引用指向 /jsc-code:、/jsc-generic:
- 保留 .docs/doc-funcs-index.md 等產物檔名不變(非 skill 識別名)
- 版號 0.2.6 → 0.2.7

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 17:07:14 +08:00

57 lines
1.9 KiB
Markdown

---
name: docker
description: 整理並對齊 docker-compose.yaml 的行內註解與標題區塊。當使用者要對齊 docker-compose 註解、整理 compose 檔註解欄位、更新 compose 標題日期,或提到 docker-compose、dc-tidy、align_comments、註解對齊時使用此 skill。
---
# 對齊 docker-compose 註解
整理並對齊 `docker-compose.yaml` 的行內註解與標題。請優先使用自動化腳本執行。
以下範例中的 `skill_dir` 是本 skill 所在目錄,也就是包含此 `SKILL.md``scripts/` 的資料夾。不要假設目標專案內存在 `plugins/skills/docker/`
## 全專案批次處理(未指定檔案時)
```bash
bash "${skill_dir}/scripts/align_comments.sh" --yes
```
## 單一檔案處理(指定檔案時)
`${file}` 為使用者指定的目標檔案:
```bash
bash "${skill_dir}/scripts/align_comments.sh" "${file}" --yes
```
## 手動執行流程參考
1. **[步驟 0] 還原空白基準**:移除既有對齊用空白,回到可重新計算的狀態。
```bash
tmp="$(mktemp "${file}.tmp.XXXXXX")" && awk -f "${skill_dir}/scripts/awk/strip_col.awk" "${file}" > "$tmp" && mv -- "$tmp" "${file}"
```
2. **[步驟 1] 校閱註解**:修正註解文字與數值正確性。
3. **[步驟 2] 計算對齊欄位**:取得對齊欄位。
```bash
awk -f "${skill_dir}/scripts/awk/find_col.awk" "${file}"
```
取得 `TARGET=XX`。
4. **[步驟 3] 執行對齊**:依 `TARGET` 欄位對齊註解。
```bash
tmp="$(mktemp "${file}.tmp.XXXXXX")" && awk -v TARGET=<TARGET> -f "${skill_dir}/scripts/awk/align_col.awk" "${file}" > "$tmp" && mv -- "$tmp" "${file}"
```
5. **[步驟 4] 驗證對齊**:驗證對齊結果。
```bash
awk -v TARGET=<TARGET> -f "${skill_dir}/scripts/awk/verify_col.awk" "${file}"
```
6. **[步驟 5] 更新日期**:更新標題區塊的 `更新日期` 為今日。