VS Code time tracking extension

extension ของเราจะ buffer editor activity แบบ metadata แล้วส่ง heartbeat ผ่าน wakaclock-cli

ข้อมูลที่ติดตาม

  • Metadata ของ file, project, branch, language และ editor
  • กิจกรรม save, debug และ build
  • Keystroke และ character counts
  • AI attribution fields ที่เลือกใช้ได้

สิ่งที่ต้องมี

  • VS Code 1.90 ขึ้นไป
  • มี wakaclock-cli ใน PATH หรือกำหนด path เต็มไว้ที่ wakaclock.cliPath
  • API key ที่บันทึกผ่านคำสั่ง Wakaclock: Set API Key ไม่ใช่เก็บใน settings.json

การติดตั้ง

VS Code
Extensions: install "AtoAxis — Developer Time Tracking"
Command Palette: Wakaclock: Set API Key
Command Palette: Wakaclock: Configure CLI Path   # only if the binary is not on PATH

key จะถูกเก็บใน secret storage ของ VS Code ไม่ใช่ settings.json จึงไม่ถูก sync หรือ commit ไปพร้อมกับ config อื่นของ editor

การทำงาน

  • การพิมพ์จะอัปเดต buffer ในหน่วยความจำของไฟล์ที่กำลังทำงานอยู่
  • การ save จะ flush buffer นั้นทันทีและทำเครื่องหมาย heartbeat เป็น write
  • การสลับไฟล์จะ flush ไฟล์ที่เพิ่งออกมา เวลาของไฟล์นั้นจึงไม่ถูกโอนไปให้ไฟล์ถัดไป
  • มี timer คอยตรวจ buffer ตามรอบคงที่ โดยไม่ข้ามรอบ heartbeat ของไฟล์เดิม
  • ระบบเก็บ timeline กิจกรรมรวมไว้ชุดเดียว การสลับไฟล์จึงไม่ทำให้วินาทีเดียวกันถูกนับซ้ำ

Settings

settings.json
{
  "wakaclock.cliPath": "/usr/local/bin/wakaclock-cli",
  "wakaclock.statusBarEnabled": true,
  "wakaclock.trackDebugSessions": true,
  "wakaclock.trackBuildTasks": true
}
  • wakaclock.cliPath: path เต็มของ binary ถ้าเว้นว่างจะหาใน PATH
  • wakaclock.statusBarEnabled: แสดงยอดรวมของวันนี้บน status bar
  • wakaclock.trackDebugSessions: ส่ง heartbeat ประเภท debugging เมื่อเริ่มและจบ debug session
  • wakaclock.trackBuildTasks: ส่ง heartbeat ประเภท building เมื่อเริ่มและจบ task
  • wakaclock.debugLogging: เปิด log แบบละเอียดใน extension host console

ข้อจำกัด

  • ส่งเฉพาะกิจกรรมกับไฟล์ ไม่มี heartbeat ประเภท app, domain หรือ url
  • AI hook ครอบคลุม Claude Code, Codex CLI และ Gemini CLI ส่วน Cursor และ Copilot ต้องมี adapter เฉพาะของผู้ให้บริการ
  • extension ต้องใช้ wakaclock-cli และไม่ได้ติดต่อ server โดยตรง

หน้าที่เกี่ยวข้อง

คำถามที่พบบ่อย

ข้อมูลที่ติดตาม: คำถามที่พบบ่อย
ดูรายละเอียดในส่วนด้านบนสำหรับพฤติกรรมและขอบเขตข้อมูลปัจจุบัน
สิ่งที่ต้องมี: คำถามที่พบบ่อย
ดูรายละเอียดในส่วนด้านบนสำหรับพฤติกรรมและขอบเขตข้อมูลปัจจุบัน
การติดตั้ง: คำถามที่พบบ่อย
ดูรายละเอียดในส่วนด้านบนสำหรับพฤติกรรมและขอบเขตข้อมูลปัจจุบัน
การทำงาน: คำถามที่พบบ่อย
ดูรายละเอียดในส่วนด้านบนสำหรับพฤติกรรมและขอบเขตข้อมูลปัจจุบัน
Settings: คำถามที่พบบ่อย
ดูรายละเอียดในส่วนด้านบนสำหรับพฤติกรรมและขอบเขตข้อมูลปัจจุบัน
ข้อจำกัด: คำถามที่พบบ่อย
ดูรายละเอียดในส่วนด้านบนสำหรับพฤติกรรมและขอบเขตข้อมูลปัจจุบัน