devlog-tracker 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  *English | [繁體中文](README.zh-TW.md)*
4
4
 
5
- **Version** 1.1.0
5
+ **Version** 1.1.1
6
6
 
7
7
  Maintains a `.devlog/devlog.md` in your project, turning each conversation round's requests, decisions, and outcomes into a permanent record. A conversation disappears the moment you `/clear` or switch sessions; this file fills that gap so work can pause and resume. Nothing is touched until you explicitly run `/devlog-tracker:start` — installing the plugin alone doesn't create or modify any files.
8
8
 
package/README.zh-TW.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  *[English](README.md) | 繁體中文*
4
4
 
5
- **版本** 1.1.0
5
+ **版本** 1.1.1
6
6
 
7
7
  在專案中維護一份 `.devlog/devlog.md`,把每一輪對話的請求、決策與結果寫成永久紀錄。對話一 `/clear` 或換 session 就沒了;這份檔案取代那個缺口,讓工作可以中斷再接。沒下過 `/devlog-tracker:start` 時,裝著也不會動任何檔案。
8
8
 
@@ -36,6 +36,28 @@ SCRIPT_DIR="$(cd "${_src%/*}" && pwd)"
36
36
  # shellcheck source=handoff-fields.sh
37
37
  . "$SCRIPT_DIR/handoff-fields.sh"
38
38
 
39
+ # 擋下時附上的最小格式:agent 在 /clear 之後通常沒載入 skill,只寫「依
40
+ # SKILL.md」會讓它每輪去 grep/sed 整份 SKILL.md,輸出攤在使用者面前。
41
+ # 這裡給夠填完一輪的骨架;細節錯誤由後面各道檢查的訊息各自說明。
42
+ round_format_hint() {
43
+ cat <<'EOF'
44
+ 格式如下,不用另外讀 SKILL.md(Status 只留一個值):
45
+ ### Summary
46
+ 2–4 句結論
47
+ ### Reply
48
+ 對使用者說了什麼
49
+ ### Handoff
50
+ <handoff>
51
+ <state>
52
+ 做到哪、卡在哪
53
+ </state>
54
+ </handoff>
55
+ ### Status
56
+ DONE
57
+ IN_PROGRESS/BLOCKED 另需:<handoff> 內依序 decisions→files→workspace→state→done-when→next,必寫 <workspace>(git 快照,如 `main @ a1b2c3d,工作樹乾淨`)、<done-when>、<next>;再加 ### Session Handoff,內含 <session-handoff> 包 <decisions>/<open-questions>/<failed-attempts>(沒有寫 - (無))。標籤各佔一行。
58
+ EOF
59
+ }
60
+
39
61
  # --- loop guard -------------------------------------------------------
40
62
  # 有 jq 就用 jq 精準解析;沒有 jq 就退化成字串比對(沒有更嚴謹的 parse,但
41
63
  # 足以涵蓋 Claude Code 實際送出的 stop_hook_active 欄位形狀),兩種環境都要生效。
@@ -132,9 +154,9 @@ fi
132
154
 
133
155
  if [ "$CURRENT_HASH" = "$TURN_START_HASH" ]; then
134
156
  if [ "$SPAN_VALID" -eq 1 ]; then
135
- echo "這一輪尚未寫入。請依 skills/devlog-tracker/SKILL.md 在 .devlog/${ROUND_CURRENT##*/} 建立一個新的 ## Round(編號接在 devlog.md 目前最後一輪之後),包含 User Input / Summary / Reply / Handoff / Status;收尾成功後 hook 會自動併回 devlog.md,不要自己直接寫進 devlog.md。" >&2
157
+ { echo "這一輪尚未寫入。請在 .devlog/${ROUND_CURRENT##*/} 建立一個新的 ## Round(編號接在 devlog.md 目前最後一輪之後),包含 User Input / Summary / Reply / Handoff / Status;收尾成功後 hook 會自動併回 devlog.md,不要自己直接寫進 devlog.md。"; round_format_hint; } >&2
136
158
  else
137
- echo "這一輪的 Round 只有 hook 寫的 User Input skeleton,還沒有收尾。請依 skills/devlog-tracker/SKILL.md 編輯最後一個 Round,補上 User Input / Summary / Reply / Handoff / Status。不要再新增一個 ## Round。" >&2
159
+ { echo "這一輪的 Round 只有 hook 寫的 User Input skeleton,還沒有收尾。請在 .devlog/${ROUND_CURRENT##*/} 裡編輯最後一個 Round,補上 User Input / Summary / Reply / Handoff / Status。不要再新增一個 ## Round。"; round_format_hint; } >&2
138
160
  fi
139
161
  exit 2
140
162
  fi
@@ -171,7 +193,7 @@ if [ -n "$LAST_ROUND" ]; then
171
193
  printf '%s\n' "$LAST_ROUND" | grep -q '^### Reply' && HAS_REPLY=1
172
194
  printf '%s\n' "$LAST_ROUND" | grep -q '^### Handoff' && HAS_HANDOFF=1
173
195
  if [ "$HAS_SUMMARY" -eq 0 ] || [ "$HAS_REPLY" -eq 0 ] || [ "$HAS_HANDOFF" -eq 0 ]; then
174
- echo "最後一個 Round 缺少 \`### Summary\`、\`### Reply\` 或 \`### Handoff\`。請依 skills/devlog-tracker/SKILL.md 補上這三個標題(Summary 給人掃、Reply 記對使用者說過的話、Handoff 給下一輪接續),寫在同一個 Round 裡,不要再新增一個 ## Round。" >&2
196
+ { echo "最後一個 Round 缺少 \`### Summary\`、\`### Reply\` 或 \`### Handoff\`。請補上這三個標題(Summary 給人掃、Reply 記對使用者說過的話、Handoff 給下一輪接續),寫在同一個 Round 裡,不要再新增一個 ## Round。"; round_format_hint; } >&2
175
197
  exit 2
176
198
  fi
177
199
 
@@ -224,7 +246,7 @@ if [ -n "$LAST_ROUND" ]; then
224
246
  nonempty_body '^### Reply' && REPLY_BODY_OK=1
225
247
  nonempty_body '^### Handoff' && HAN_BODY_OK=1
226
248
  if [ "$SUM_BODY_OK" -eq 0 ] || [ "$REPLY_BODY_OK" -eq 0 ] || [ "$HAN_BODY_OK" -eq 0 ]; then
227
- echo "最後一個 Round 的 ### Summary、### Reply 或 ### Handoff 是空的。請依 skills/devlog-tracker/SKILL.md 寫上內容(不要只留標題),寫在同一個 Round 裡,不要再新增一個 ## Round。" >&2
249
+ { echo "最後一個 Round 的 ### Summary、### Reply 或 ### Handoff 是空的。請寫上內容(不要只留標題),寫在同一個 Round 裡,不要再新增一個 ## Round。"; round_format_hint; } >&2
228
250
  exit 2
229
251
  fi
230
252
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devlog-tracker",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "npx installer for devlog-tracker's Claude Code, Cursor and Codex adapters.",
5
5
  "bin": {
6
6
  "devlog-tracker": "bin/devlog-tracker.js"