클로드 코드에서 훅을 사용하여 클로드의 시간 환각 문제 해결하기

레딧 사용자가 Claude Code의 특정 문제를 파악하고 해결했는데, AI 어시스턴트가 실시간 시계 접근 권한 부족으로 인해 잘못된 시간 기반 제안을 하는 문제였습니다.
문제점
Claude는 실시간 시계에 접근할 수 없습니다. 세션 시작 시 오늘 날짜는 받지만 현재 시간은 받지 않습니다. 이로 인해 Claude가 시간을 추측하게 되는데 종종 틀리게 되어 실제로는 정오인데도 '늦었으니 좀 쉬세요'와 같은 부적절한 제안을 하게 됩니다. 이 해결책은 Claude Code에서만 작동하며 웹이나 데스크톱 버전에서는 작동하지 않습니다.
해결책
해결책은 Claude Code 설정 파일에 단일 훅을 추가하는 것입니다:
- ~/.claude/settings.json 파일을 열거나 생성합니다(또는 Claude Code에게 이 작업을 요청합니다)
- 다음 구성을 붙여넣습니다:
{
"hooks": {
"UserPromptSubmit": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "echo \"Current time: $(date '+%A %Y-%m-%d %I:%M %p %Z')\""
}
]
}
]
}
}이 해결책은 재시작 없이 즉시 작동합니다.
작동 방식
메시지를 보낼 때마다 훅이 date 명령을 실행하고 출력을 Claude의 컨텍스트에 배경에서 주입합니다. 사용자는 이 출력을 보지 못하지만 Claude는 "Current time: Monday 2026-04-06 03:39 AM EDT"와 같은 내용을 보게 됩니다. 훅이 모든 메시지에서 실행되기 때문에 Claude는 메시지 간 시간 차이를 관찰하여 사용자가 자리를 비웠다가 돌아온 시점도 감지할 수 있습니다.
이 접근 방식은 Claude Code의 훅 기능을 활용합니다 - UserPromptSubmit과 같은 특정 이벤트에서 자동으로 실행되는 셸 명령입니다.
📖 전체 소스 읽기: r/ClaudeAI
👀 See Also

OpenClaw 설치 팁: 온보딩 건너뛰기 및 진단 명령어 사용
레딧 사용자가 실용적인 OpenClaw 설치 조언을 공유합니다: 일반적인 문제를 피하기 위해 온보딩 과정을 건너뛰고, 특히 VPS 설정에서는 openclaw doctor와 openclaw status 명령어를 사용하여 구성 문제를 진단하세요.

생각 구조 시각화를 위한 Claude 프롬프트: 의도, 현실, 격차
레딧 사용자가 Claude에게 대화의 구조적 패턴을 인식하고 반영하도록 요청하는 100단어 프롬프트를 공유했습니다. 이는 내용 자체가 아닌 의도(원하는 것), 현실(존재하는 것), 격차(해결되지 않은 것)로 분류된 패턴을 다룹니다.

CLAUDE.md를 사용해 Claude AI 세션 간 프로젝트 규칙 유지하기
프로젝트 루트에 CLAUDE.md 파일을 넣어두면 Claude가 모든 세션이 시작될 때 이를 읽어들여 TypeScript 규칙, default export 금지, 테스트 관례, 아키텍처 컨텍스트를 다시 설명할 필요 없이 기억합니다.

在Claude Code之上构建处理上下文与协调的流程层
한 팀이 Claude Code 위에 프로세스 계층을 구축하여 각 엔지니어링 단계의 입력/출력을 명시하고, 인계 시 맥락 손실을 줄이며, 개인의 규율에 의존하지 않고 생산성 향상이 복합적으로 누적되도록 한 방법을 공유합니다.