Claude Code Usage
Check Claude Code OAuth usage limits.
- Rating
- 4.4 (443 reviews)
- Downloads
- 32,985 downloads
- Version
- 1.0.0
Overview
Check Claude Code OAuth usage limits.
โจKey Features
๐ Session limit (5-hour window) - Short-term rate limit
๐ Weekly limit (7-day window) - Long-term rate limit
โก Smart caching - 60-second cache to avoid API spam
๐จ Beautiful output - Progress bars, emojis, color-coded status
๐ Force refresh - --fresh flag to bypass cache
๐ค JSON output - Machine-readable format
๐ Automated monitoring - Get notified when quotas reset
Complete Documentation
View Source โ
Claude Code Usage
Check your Claude Code OAuth API usage limits for both session (5-hour) and weekly (7-day) windows.
Quick Start
cd {baseDir}
./scripts/claude-usage.sh
Usage
# Default: show cached usage (if fresh)
./scripts/claude-usage.sh
# Force refresh from API
./scripts/claude-usage.sh --fresh
# JSON output
./scripts/claude-usage.sh --json
# Custom cache TTL
./scripts/claude-usage.sh --cache-ttl 300
Output
Text format (default):
๐ฆ Claude Code Usage
โฑ๏ธ Session (5h): ๐ข โโโโโโโโโโ 40%
Resets in: 2h 15m
๐
Weekly (7d): ๐ก โโโโโโโโโโ 60%
Resets in: 3d 8h
JSON format (--json):
{
"session": {
"utilization": 40,
"resets_in": "2h 15m",
"resets_at": "2026-01-19T22:15:00Z"
},
"weekly": {
"utilization": 60,
"resets_in": "3d 8h",
"resets_at": "2026-01-22T04:00:00Z"
},
"cached_at": "2026-01-19T20:00:00Z"
}
Features
- ๐ Session limit (5-hour window) - Short-term rate limit
- ๐ Weekly limit (7-day window) - Long-term rate limit
- โก Smart caching - 60-second cache to avoid API spam
- ๐จ Beautiful output - Progress bars, emojis, color-coded status
- ๐ Force refresh -
--freshflag to bypass cache - ๐ค JSON output - Machine-readable format
- ๐ Automated monitoring - Get notified when quotas reset
Status Indicators
- ๐ข Green - 0-50% usage (healthy)
- ๐ก Yellow - 51-80% usage (moderate)
- ๐ด Red - 81-100% usage (high/critical)
Requirements
- macOS: Uses Keychain to access Claude Code credentials
- Linux: Uses
secret-toolfor credential storage - Credentials: Must have Claude Code CLI authenticated
How It Works
- Retrieves OAuth token from system keychain
- Queries
api.anthropic.com/api/oauth/usagewith OAuth bearer token - Parses
five_hourandseven_dayutilization metrics - Calculates time remaining until reset
- Formats output with progress bars and status indicators
- Caches result for 60 seconds (configurable)
Cache
Default cache: /tmp/claude-usage-cache (60s TTL)
Override:
CACHE_FILE=/tmp/my-cache CACHE_TTL=300 ./scripts/claude-usage.sh
Examples
Check usage before starting work:
./scripts/claude-usage.sh --fresh
Integrate with statusline:
usage=$(./scripts/claude-usage.sh | grep "Session" | awk '{print $NF}')
echo "Session: $usage"
Get JSON for monitoring:
./scripts/claude-usage.sh --json | jq '.session.utilization'
Automated Monitoring
Session Refresh Reminders (Recommended)
Get notified exactly when your 5-hour session quota refreshes!
Quick Setup:
./scripts/session-reminder.sh
This creates a self-scheduling chain of cron jobs that:
- Checks your current session expiry time
- Schedules the next reminder for when your session refreshes
- Notifies you with current usage stats
- Auto-removes itself (the new cron takes over)
๐ Claude Code Session Status
โฑ๏ธ Current usage: 44%
โฐ Next refresh: 2h 15m
Your 5-hour quota will reset soon! ๐ฆ
โ
Next reminder scheduled for: Jan 22 at 01:22 AM
How It Works:
- Each reminder runs
claude-usage.shto find the exact session reset time - Schedules a one-time cron for that exact moment
- Repeats every 5 hours automatically
- Self-correcting if session times ever drift
- โ Accurate to the minute
- โ No manual scheduling needed
- โ Adapts to your actual usage patterns
- โ Minimal API calls (only when needed)
Reset Detection Monitor (Alternative)
Get automatic notifications when your Claude Code quotas reset by polling usage.
Quick Setup:
# Test once
./scripts/monitor-usage.sh
# Setup automated monitoring (runs every 30 minutes)
./scripts/setup-monitoring.sh
Or add via Clawdbot directly:
# Check every 30 minutes
clawdbot cron add --cron "*/30 * * * *" \
--message "cd /Users/ali/clawd/skills/claude-code-usage && ./scripts/monitor-usage.sh" \
--name "Claude Code Usage Monitor" \
--session isolated --deliver --channel telegram
What You'll Get:
๐ Claude Code Session Reset!
โฑ๏ธ Your 5-hour quota has reset
๐ Usage: 2%
โฐ Next reset: 4h 58m
Fresh usage available! ๐ฆ
How It Works:
- Monitors usage every 30 minutes (configurable)
- Detects resets when usage drops significantly (>10% or <5%)
- Sends notifications via Telegram when resets occur
- Tracks state in
/tmp/claude-usage-state.json
# Change check interval
clawdbot cron add --cron "*/15 * * * *" ... # Every 15 minutes
clawdbot cron add --cron "0 * * * *" ... # Every hour
# Custom state file location
STATE_FILE=/path/to/state.json ./scripts/monitor-usage.sh
Which Monitoring Method?
| Feature | Session Reminder | Reset Detection |
|---|---|---|
| Accuracy | โ Exact minute | ~30min window |
| API calls | Minimal | Every check |
| Notification timing | Right on reset | Up to 30min delay |
| Setup | One command | One command |
| Maintenance | Self-scheduling | Cron runs forever |
Troubleshooting
No credentials found:
- Ensure Claude Code CLI is installed and authenticated
- Run
claudeonce to trigger OAuth flow
- Check internet connection
- Verify OAuth token hasn't expired
- Try
--freshto force new request
libsecret for credential storage:
# Debian/Ubuntu
sudo apt install libsecret-tools
# Fedora/RHEL
sudo dnf install libsecret
Installation
openclaw install claude-code-usage
๐ปCode Examples
./scripts/claude-usage.sh --cache-ttl 300
## Output
**Text format** (default):}
## Features
- ๐ **Session limit** (5-hour window) - Short-term rate limit
- ๐
**Weekly limit** (7-day window) - Long-term rate limit
- โก **Smart caching** - 60-second cache to avoid API spam
- ๐จ **Beautiful output** - Progress bars, emojis, color-coded status
- ๐ **Force refresh** - `--fresh` flag to bypass cache
- ๐ค **JSON output** - Machine-readable format
- ๐ **Automated monitoring** - Get notified when quotas reset
## Status Indicators
- ๐ข **Green** - 0-50% usage (healthy)
- ๐ก **Yellow** - 51-80% usage (moderate)
- ๐ด **Red** - 81-100% usage (high/critical)
## Requirements
- **macOS**: Uses Keychain to access Claude Code credentials
- **Linux**: Uses `secret-tool` for credential storage
- **Credentials**: Must have Claude Code CLI authenticated
## How It Works
1. Retrieves OAuth token from system keychain
2. Queries `api.anthropic.com/api/oauth/usage` with OAuth bearer token
3. Parses `five_hour` and `seven_day` utilization metrics
4. Calculates time remaining until reset
5. Formats output with progress bars and status indicators
6. Caches result for 60 seconds (configurable)
## Cache
Default cache: `/tmp/claude-usage-cache` (60s TTL)
Override:CACHE_FILE=/tmp/my-cache CACHE_TTL=300 ./scripts/claude-usage.sh
## Examples
**Check usage before starting work:**./scripts/claude-usage.sh --json | jq '.session.utilization'
## Automated Monitoring
### Session Refresh Reminders (Recommended)
Get notified exactly when your 5-hour session quota refreshes!
**Quick Setup:**./scripts/session-reminder.sh
This creates a **self-scheduling chain** of cron jobs that:
1. Checks your current session expiry time
2. Schedules the next reminder for when your session refreshes
3. Notifies you with current usage stats
4. Auto-removes itself (the new cron takes over)
**What You'll Get:**โ Next reminder scheduled for: Jan 22 at 01:22 AM
**How It Works:**
- Each reminder runs `claude-usage.sh` to find the exact session reset time
- Schedules a one-time cron for that exact moment
- Repeats every 5 hours automatically
- Self-correcting if session times ever drift
**Benefits:**
- โ
Accurate to the minute
- โ
No manual scheduling needed
- โ
Adapts to your actual usage patterns
- โ
Minimal API calls (only when needed)
### Reset Detection Monitor (Alternative)
Get automatic notifications when your Claude Code quotas reset by polling usage.
**Quick Setup:**Fresh usage available! ๐ฆ
**How It Works:**
1. **Monitors usage** every 30 minutes (configurable)
2. **Detects resets** when usage drops significantly (>10% or <5%)
3. **Sends notifications** via Telegram when resets occur
4. **Tracks state** in `/tmp/claude-usage-state.json`
**Customization:**STATE_FILE=/path/to/state.json ./scripts/monitor-usage.sh
### Which Monitoring Method?
| Feature | Session Reminder | Reset Detection |
|---------|-----------------|-----------------|
| Accuracy | โ
Exact minute | ~30min window |
| API calls | Minimal | Every check |
| Notification timing | Right on reset | Up to 30min delay |
| Setup | One command | One command |
| Maintenance | Self-scheduling | Cron runs forever |
**Recommendation:** Use **Session Reminder** for precise, real-time notifications.
## Troubleshooting
**No credentials found:**
- Ensure Claude Code CLI is installed and authenticated
- Run `claude` once to trigger OAuth flow
**API request failed:**
- Check internet connection
- Verify OAuth token hasn't expired
- Try `--fresh` to force new request
**Linux users:**
Install `libsecret` for credential storage:# Default: show cached usage (if fresh)
./scripts/claude-usage.sh
# Force refresh from API
./scripts/claude-usage.sh --fresh
# JSON output
./scripts/claude-usage.sh --json
# Custom cache TTL
./scripts/claude-usage.sh --cache-ttl 300๐ฆ Claude Code Usage
โฑ๏ธ Session (5h): ๐ข โโโโโโโโโโ 40%
Resets in: 2h 15m
๐
Weekly (7d): ๐ก โโโโโโโโโโ 60%
Resets in: 3d 8hTags
Quick Info
Ready to Install?
Get started with this skill in seconds
Related Skills
4claw
4claw โ a moderated imageboard for AI agents.
Aap Passport
Agent Attestation Protocol - The Reverse Turing Test.
Acestep Lyrics Transcription
Transcribe audio to timestamped lyrics using OpenAI Whisper or ElevenLabs Scribe API.
Adaptive Suite
A continuously adaptive skill suite that empowers Clawdbot.