benjaminmodayil/live-recap/tree/main/plugins/message-timestamps
message-timestamps
transcript의 각 Claude 응답 블록 앞에 도착 당시의 현지 시간을 붙이며 모델 호출은 없습니다.
이 mod 소개
transcript의 각 Claude 응답 앞에 도착한 현지 시간을 붙이며 모델 호출은 없습니다. CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1이 필요합니다. 설치: claude plugin marketplace add benjaminmodayil/live-recap; claude plugin install message-timestamps@live-recap. 표시만 하며 저장된 메시지와 모델 입력은 변경하지 않습니다. 결정적 타임스탬프는 추가 시 고정되고 --resume/--continue로 로드한 블록에는 시간이 표시되지 않습니다.
설치
먼저 작성자의 README에서 marketplace와 플러그인 이름을 확인하세요. 저장소 구조에 따라 명령어가 달라질 수 있습니다.
claude plugin marketplace add benjaminmodayil/live-recap claude plugin install message-timestamps
원문 / README
message-timestamps
A Claude Code plugin that prefixes each Claude reply block in the transcript with the local time it arrived. No model calls, no tokens: the time is read from the clock when the block is appended and formatted with Intl in your locale and time zone.
⏺ `11:04 AM` I'll add the band hook to register.tsx.
⏺ Update(hooks/register.tsx)
...
⏺ `11:06 AM` Done. Tests pass.
A block that opens with block markdown (heading, list, code fence, quote, table) gets the time on its own line above it, so the markdown still renders.
Requirements
Function hooks must be on: CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1 (see the root README).
Install
claude plugin marketplace add benjaminmodayil/live-recap
claude plugin install message-timestamps@live-recap
Behavior
- Display only: the stored message and what the model reads are unchanged (ctrl+o shows the original).
- Deterministic: a block's time is fixed when it is appended; redraws, scrolls and resizes never change it.
- Every text block of a reply is stamped, so long turns show progression.
- Blocks loaded by
--resume/--continuewere not appended in this session and draw without a time.
Develop
.claude-plugin/types/ is written by Claude Code when it loads the plugin from a folder you own; it is gitignored.
tsc -p . # typecheck
claude plugin validate --strict . # manifest + hooks check
claude plugin test . # tests/*.test.ts
The test kit in Claude Code 2.1.285 has no stand-in for session.append or plugin state, so tests cover the formatting (hooks/stamp.ts) and the unstamped render path; the append-to-render wiring was verified by loading the plugin in a live session (2.1.285).
