본문으로 건너뛰기
cccskills
무료GitHub에 공개

setup-wakatime

Set up WakaTime time-tracking for Claude Code and VS Code.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md6.8 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Setup WakaTime Time Tracking

Автоматическая настройка WakaTime для отслеживания рабочего времени.

Что устанавливается

  1. wakatime-cli — CLI для отправки heartbeat'ов
  2. Хук Claude Code — автоматический трекинг при работе с Claude (категория "AI Coding")
  3. WakaTime Desktop App (опционально) — трекинг фокуса окна (чтение, браузер)

Инструкция для Claude

Выполни шаги последовательно. На каждом шаге проверяй, не сделано ли уже.

Шаг 1: wakatime-cli

# Проверить наличие (маска, не точное имя — issue #1151: расширение VS Code
# на Windows скачивает бинарь как wakatime-cli-windows-amd64.exe)
ls ~/.wakatime/wakatime-cli* 2>/dev/null || wakatime-cli --version 2>/dev/null

Если не установлен — путь зависит от ОС:

macOS:

brew install wakatime-cli
mkdir -p ~/.wakatime
ln -sf $(which wakatime-cli) ~/.wakatime/wakatime-cli

Windows (issue #1151): нет пакетного менеджера для прямой установки CLI. Поставь расширение WakaTime для VS Code (Extensions → WakaTime) — оно само скачивает бинарь в ~/.wakatime/wakatime-cli-windows-amd64.exe при первом запуске. Дальше шаги 2-4 работают как есть: скрипты шаблона ищут файл по маске wakatime-cli*, не по точному имени. Альтернатива без WakaTime вообще: ActivityWatch через extensions/day-close.before.*.md (см. README расширения).

Linux: см. https://wakatime.com/plugins — пакет под дистрибутив или скачать бинарь вручную в ~/.wakatime/wakatime-cli.

Шаг 2: API Key

cat ~/.wakatime.cfg 2>/dev/null

Если файл не существует или нет api_key:

  1. Скажи пользователю: «Нужен WakaTime API-ключ. Получи его на https://wakatime.com/settings/api-key (нужна регистрация). Вставь ключ сюда.»
  2. Дождись ответа
  3. Запиши:
# ~/.wakatime.cfg
[settings]
api_key = <ключ от пользователя>

Шаг 3: Хук-скрипт

Этот хук не входит в поставку шаблона (снят с платформы в v0.34 — user-installed hook only, issue #215): создай файл напрямую с этим содержимым, не копируй из репозитория.

mkdir -p ~/.claude/hooks
cat > ~/.claude/hooks/wakatime-heartbeat.sh << 'EOF'
#!/bin/bash
# Claude Code → WakaTime heartbeat hook
# Sends heartbeats to track AI coding time per project.
# Events: UserPromptSubmit, PostToolUse, Stop

INPUT=$(cat)
CWD=$(echo "$INPUT" | jq -r '.cwd // empty')
EVENT=$(echo "$INPUT" | jq -r '.hook_event_name // empty')
TOOL=$(echo "$INPUT" | jq -r '.tool_name // empty')

# Detect project from git or folder name
if [ -n "$CWD" ] && [ -d "$CWD" ]; then
  PROJECT=$(cd "$CWD" && git config --local remote.origin.url 2>/dev/null | sed 's#.*/\([^.]*\)#\1#;s#\.git$##')
  PROJECT=${PROJECT:-$(basename "$CWD")}
else
  PROJECT="Unknown"
fi

# Category based on event/tool
CATEGORY="ai coding"
if [ "$EVENT" = "PostToolUse" ]; then
  case "$TOOL" in
    WebSearch|WebFetch) CATEGORY="researching" ;;
    Read|Grep|Glob)    CATEGORY="code reviewing" ;;
    Edit|Write)        CATEGORY="coding" ;;
  esac
fi

# Resolve the CLI binary by mask, not exact name — issue #1151: the VS Code
# WakaTime extension on Windows downloads it as wakatime-cli-windows-amd64.exe.
WAKATIME_CLI=$(ls -d "$HOME"/.wakatime/wakatime-cli* 2>/dev/null | head -1)
[ -z "$WAKATIME_CLI" ] && exit 0

# Send heartbeat in background (non-blocking, silent)
("$WAKATIME_CLI" \
  --entity-type app \
  --entity "Claude Code" \
  --category "$CATEGORY" \
  --project "$PROJECT" \
  --plugin "claude-code-wakatime/0.1.0" \
  --write \
  >/dev/null 2>&1 &)

exit 0
EOF
chmod +x ~/.claude/hooks/wakatime-heartbeat.sh

Шаг 4: Настройка хуков в settings.json

Прочитай ~/.claude/settings.json. Добавь в секцию hooks (не затирая существующие хуки):

  • UserPromptSubmit — добавь hook group:
    {"hooks": [{"type": "command", "command": "~/.claude/hooks/wakatime-heartbeat.sh"}]}
    
  • PostToolUse — добавь:
    {"hooks": [{"type": "command", "command": "~/.claude/hooks/wakatime-heartbeat.sh", "async": true}]}
    
  • Stop — добавь:
    {"hooks": [{"type": "command", "command": "~/.claude/hooks/wakatime-heartbeat.sh", "async": true}]}
    

Шаг 5: WakaTime Desktop App (только macOS — спроси пользователя)

На Windows/Linux нет brew-эквивалента в этом шаге — пропусти его молча (ActivityWatch из шага 1 уже закрывает трекинг фокуса окна там, где нужен).

Спроси: «Установить WakaTime Desktop App? Он трекает время фокуса окна (когда читаешь ответы, работаешь в браузере). Требует Accessibility-разрешение в macOS.»

Если да:

brew install --cask wakatime
open -a WakaTime

Скажи: «Разреши Accessibility доступ в System Settings → Privacy & Security → Accessibility.»

Шаг 6: Тест

echo '{"cwd": "'$(pwd)'", "hook_event_name": "UserPromptSubmit", "prompt": "test"}' | ~/.claude/hooks/wakatime-heartbeat.sh
sleep 3
WAKA_CLI=$(ls -d ~/.wakatime/wakatime-cli* 2>/dev/null | head -1)
"$WAKA_CLI" --today

Покажи результат пользователю. Скажи: «Хуки подхватятся при следующем запуске Claude Code (хуки загружаются при старте сессии).»

Шаг 7: Итог

Покажи таблицу:

КомпонентСтатус
wakatime-cli✅/❌
API key✅/❌
Хук-скрипт✅/❌
Хуки в settings.json✅/❌
Desktop App✅/❌/пропущен
Тест heartbeat✅/❌

Скажи: «Дашборд: https://wakatime.com/dashboard. Данные появятся через 5-15 минут.»

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Регистрация косяка агента в системе учёта WP-316 L1. Без LLM — детерминированный скрипт без WP Gate.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

TserenTserenov/FMT-exocortex-template632026년 10월 23일 업데이트

Разбор extraction-reports со status pending-review — решение R15 (accept/reject/defer) ЖИВЫМ ПИЛОТОМ, запись в Pack, обновление статуса, коммит. Вызывать при Close при наличии N>0 pending-review отчётов.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

TserenTserenov/FMT-exocortex-template632026년 10월 23일 업데이트

archgate

무료

Оценка архитектурного решения по 7 характеристикам ЭМОГССБ (v3.1 — фильтр допуска, атрибут-сценарии, совет затронутых сторон; профиль без агрегатного балла, conjunctive screening). Используй когда пользователь предлагает архитектурное решение, новый инструмент или системное изменение.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

TserenTserenov/FMT-exocortex-template632026년 10월 23일 업데이트

Classifies raw pilot request → structured JSON {task_type, class, artifact, budget_estimate, confidence, routing_tag, resolution_path, schema_version, result_type, expected_result_kind, result_kind_resolution, hypothesis_relation}. Keyword-fast (<200ms) or Haiku fallback (<60s). Does NOT create WP or call executor.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

TserenTserenov/FMT-exocortex-template632026년 10월 23일 업데이트

Audit repository documentation: detect drift between code and docs, report coverage by category. Run manually or on triggered drift critical.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

TserenTserenov/FMT-exocortex-template632026년 10월 23일 업데이트

Аудит пользовательской инсталляции IWE. Запускает scripts/iwe-audit.sh + MCP healthcheck + smoke-test ритуала через sentinel-механику (контракт dry-run-contract.md), передаёт отчёт subagent'у в роли VR.R.002 Аудитор (context isolation) → verdict ✅/⚠️/❌ по 6 компонентам (Inventory, L1 drift, {{GOVERNANCE_REPO}}, L3 customizations, MCP, ритуал). Используй после restore из бэкапа, после update.sh, или при еженедельной сверке.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

TserenTserenov/FMT-exocortex-template632026년 10월 23일 업데이트

TserenTserenov의 스킬 모두 보기

이 스킬의 문제 신고