Files
2026-07-13 12:22:33 +08:00

184 lines
6.0 KiB
Markdown

---
summary: "Augment provider notes: cookie auth, keepalive, and credits parsing."
read_when:
- Debugging Augment cookie import or keepalive
- Updating Augment usage or credits parsing
- Adjusting Augment menu labels or settings
---
# Augment Provider
The Augment provider tracks your Augment Code usage and credits through browser cookie-based authentication.
## Features
- **Credits Tracking**: Monitor your remaining credits and monthly limits
- **Usage Monitoring**: Track credits consumed in the current billing cycle
- **Plan Information**: Display your current subscription plan
- **CLI Integration**: Uses `auggie account status` when the Auggie CLI is installed (falls back to web)
- **Automatic Session Keepalive**: Prevents cookie expiration with proactive refresh
- **Multi-Browser Support**: Chrome, Chrome Beta, Chrome Canary, Arc, Safari
## Setup
### 1. Enable the Provider
1. Open **Settings → Providers**
2. Enable **Augment**
3. The app will automatically import cookies from your browser
### 2. Cookie Source Options
**Automatic (Recommended)**
- Automatically imports cookies from your browser
- Supports Chrome, Chrome Beta, Chrome Canary, Arc, and Safari
- Browser priority: Chrome Beta → Chrome → Chrome Canary → Arc → Safari
**Manual**
- Paste a cookie header from your browser's developer tools
- Useful for troubleshooting or custom browser configurations
**Off**
- Disables Augment provider entirely
### 3. Verify Connection
1. Check the menu bar for the Augment icon
2. Click the icon to see your current usage
3. If you see "Log in to Augment", visit [app.augmentcode.com](https://app.augmentcode.com) and sign in
## How It Works
### Cookie Import
The provider searches for Augment session cookies in this order:
1. **Chrome Beta** (if installed)
2. **Chrome** (if installed)
3. **Chrome Canary** (if installed)
4. **Arc** (if installed)
5. **Safari** (if installed)
Recognized cookie names:
- `_session` (legacy)
- `auth0`, `auth0.is.authenticated`, `a0.spajs.txs` (Auth0)
- `__Secure-next-auth.session-token`, `next-auth.session-token` (NextAuth)
- `__Host-authjs.csrf-token`, `authjs.session-token` (AuthJS)
- `session`, `web_rpc_proxy_session` (Augment-specific)
Cached cookies:
- Keychain cache `com.steipete.codexbar.cache` (account `cookie.augment`, source + timestamp). Reused before re-importing
from browsers.
### Auggie CLI Integration
If the `auggie` CLI is installed, CodexBar will prefer `auggie account status` for usage data and avoid browser prompts.
When the CLI is unavailable or not authenticated, CodexBar falls back to browser cookies.
### Automatic Session Keepalive
The provider includes an automatic session keepalive system:
- **Check Interval**: Every 1 minute
- **Refresh Buffer**: Refreshes 5 minutes before cookie expiration
- **Rate Limiting**: Minimum 1 minute between refresh attempts
- **Session Cookies**: Refreshed every 30 minutes (no expiration date)
This ensures your session stays active without manual intervention.
### API Endpoints
The provider fetches data from:
- **Credits**: `https://app.augmentcode.com/api/credits`
- **Subscription**: `https://app.augmentcode.com/api/subscription`
## Troubleshooting
### "No session cookie found"
**Cause**: You're not logged into Augment in any supported browser.
**Solution**:
1. Open [app.augmentcode.com](https://app.augmentcode.com) in Chrome, Chrome Beta, or Arc
2. Sign in to your Augment account
3. Return to CodexBar and click "Refresh" in the menu
### "Session has expired"
**Cause**: Your browser session expired and automatic refresh failed.
**Solution**:
1. Visit [app.augmentcode.com](https://app.augmentcode.com)
2. Log out and log back in
3. Return to CodexBar - it will automatically import fresh cookies
4. If needed, use the menu action **Refresh Session** to force a re-import
### Cookies not importing from Chrome Beta
**Cause**: Chrome Beta might not be in the browser search order.
**Solution**: This fork includes Chrome Beta support by default. If issues persist:
1. Check that Chrome Beta is installed at `/Applications/Google Chrome Beta.app`
2. Verify you're logged into Augment in Chrome Beta
3. Try switching to regular Chrome temporarily
### Manual Cookie Import
If automatic import fails, you can manually paste cookies:
1. Open Chrome DevTools (⌘⌥I)
2. Go to **Application → Cookies → https://app.augmentcode.com**
3. Copy all cookie values
4. Format as: `cookie1=value1; cookie2=value2; ...`
5. In CodexBar: **Settings → Providers → Augment → Cookie Source → Manual**
6. Paste the cookie header
## Debug Mode
To see detailed cookie import logs:
1. Open **Settings → Debug**
2. Find **Augment** in the provider list
3. Click **Show Debug Info**
This displays:
- Cookie import attempts and results
- API request/response details
- Session keepalive activity
- Error messages with timestamps
## Privacy & Security
- Cookies are stored securely in macOS Keychain
- Only cookies for `*.augmentcode.com` domains are imported
- Cookies are filtered by domain before sending to API endpoints
- No cookies are sent to third-party services
- Session keepalive only runs when Augment is enabled
## Technical Details
### Cookie Domain Filtering
The provider implements RFC 6265 cookie semantics:
- ✅ Exact match: `app.augmentcode.com``app.augmentcode.com`
- ✅ Parent domain: `augmentcode.com``app.augmentcode.com`
- ✅ Wildcard: `.augmentcode.com``app.augmentcode.com`
- ❌ Different subdomain: `auth.augmentcode.com` ❌→ `app.augmentcode.com`
This prevents cookies from other subdomains being sent to the API.
### Session Refresh Mechanism
1. Keepalive checks cookie expiration every 1 minute
2. If expiration is within 5 minutes, triggers refresh
3. Pings `/api/auth/session` to trigger cookie update
4. Waits 1 second for browser to update cookies
5. Re-imports fresh cookies from browser
6. Logs success/failure for debugging
## Related Documentation
- [Provider Authoring Guide](provider.md) - How to create new providers
- [Development Guide](DEVELOPMENT.md) - Build and test instructions