vibestats

Troubleshooting

Solutions to the most common vibestats issues.

Token expiry fix

If vibestats status reports an authentication error, your GitHub OAuth token has expired or been revoked.

Fix: Re-authenticate by running:

vibestats auth

This launches the gh auth login flow and saves the new token to ~/.config/vibestats/config.toml.

Hook not firing

If your stats are not updating after Claude Code sessions, the Stop or SessionStart hooks may be missing from ~/.claude/settings.json.

Fix: Check that your ~/.claude/settings.json contains both hooks:

If either hook is missing, re-run the installer:

curl -sSf https://vibestats.dev/install.sh | bash

Or add the hooks manually by editing ~/.claude/settings.json to include the required hook configuration.

Missing machine data

If a machine's data is not appearing in your dashboard, it may not have synced yet.

Fix: First, check the machine's status:

vibestats status

If the machine appears in the list but data is stale, force an immediate sync:

vibestats sync

If the machine is not listed at all, ensure vibestats is installed on that machine and that the hooks are configured correctly (see Hook not firing above).

How to trigger a manual backfill

If historical data is missing — for example, after a fresh install or if data was accidentally deleted — you can push your full Claude Code history to vibestats-data with a backfill:

vibestats sync --backfill

This walks all JSONL files under ~/.claude/projects/ and pushes complete history. It is safe to run multiple times; existing data is not duplicated.