← Back to Kontasks
Claude Account Selector Testing Guide
Expected behaviors when testing the Claude account selector in dashboard
Output
🔐 Claude Account Selector - Testing Guide
What You'll See in the Navbar
The account selector appears as a dropdown showing:
- ● Rate tier — "Max 20×" or "Max 5×"
- ● Time remaining — e.g., "7h 30m" until token expires
- ● Status indicator — green/yellow/red dot
- ● Checkmark — ✓ on the currently active account
Configured Accounts
| Account | Rate | Purpose |
|---|---|---|
| max20x | 20× rate | Primary (default) |
| max5x | 5× rate | Quick Turn / backup |
Expected Behaviors
✅ On Page Load
- Dropdown fetches accounts from
/api/konsole/accounts - Shows "Loading..." briefly, then populates with accounts
- Active account marked with ✓ checkmark
- Each option shows:
● Max 20× · 7h 30m
🔄 When Switching Accounts
- Select different account from dropdown
- Request sent to
POST /api/konsole/accounts/switch - Symlink
~/.claudeupdated to point to new account - Dropdown refreshes to show new active state
- ⚠️ Only works when no Claude sessions are running!
⚡ Status Indicators
| ● | Valid | Token has plenty of time remaining |
| ● | Expiring | Less than 1 hour remaining (pulses) |
| ✗ | Expired | Token has expired, needs refresh |
⚠️ Potential Issues to Watch For
- Dropdown shows "Loading..." forever — konsole not running or not accessible
- Switch fails silently — Claude session may be running
- Time remaining shows "expired" — need to re-auth via
claude login - No accounts shown — check
KONSOLE_CLAUDE_ACCOUNTSin .env
💡 Testing Steps
- Refresh the dashboard page
- Look for account dropdown in navbar (right side)
- Verify it shows both accounts with metadata
- Try switching to max5x (ensure no active session)
- Send a test prompt, verify it uses the new account
- Switch back to max20x
Quick Actions
Original Request
No layout configured
Details
Type
General
Status
Completed
Scope
vibetools
Tags
konsoleuiauth
Created
8 Jan 2026, 8:19 am
Updated
8 Jan 2026, 8:19 am
Timing
⏱️ 134.9s
0 tools
● TTFE 0%
● Thinking 100%
● Tools 0%
Created By
claude
Raw Data
{
"id": "329dd6b3-6b8c-44d7-bef8-34672458438f",
"type": "general",
"status": "completed",
"title": "Claude Account Selector Testing Guide",
"description": "Expected behaviors when testing the Claude account selector in dashboard",
"context": {
"output": "<div style=\"background:#1e1e1e;color:#e0e0e0;padding:20px;border-radius:8px;font-family:sans-serif;\"><h2 style=\"color:#fff;margin:0 0 20px 0;\">🔐 Claude Account Selector - Testing Guide</h2><div style=\"background:#2d2d2d;padding:16px;border-radius:6px;margin-bottom:16px;\"><h3 style=\"color:#f59e0b;margin:0 0 12px 0;\">What You'll See in the Navbar</h3><p style=\"color:#9ca3af;margin:0 0 12px 0;\">The account selector appears as a dropdown showing:</p><ul style=\"margin:0;padding-left:20px;line-height:1.8;\"><li><span style=\"color:#22c55e;\">●</span> <strong>Rate tier</strong> — \"Max 20×\" or \"Max 5×\"</li><li><span style=\"color:#22c55e;\">●</span> <strong>Time remaining</strong> — e.g., \"7h 30m\" until token expires</li><li><span style=\"color:#22c55e;\">●</span> <strong>Status indicator</strong> — green/yellow/red dot</li><li><span style=\"color:#22c55e;\">●</span> <strong>Checkmark</strong> — ✓ on the currently active account</li></ul></div><div style=\"background:#2d2d2d;padding:16px;border-radius:6px;margin-bottom:16px;\"><h3 style=\"color:#3b82f6;margin:0 0 12px 0;\">Configured Accounts</h3><table style=\"width:100%;border-collapse:collapse;\"><tr style=\"border-bottom:1px solid #4b5563;\"><th style=\"text-align:left;padding:8px;color:#9ca3af;\">Account</th><th style=\"text-align:left;padding:8px;color:#9ca3af;\">Rate</th><th style=\"text-align:left;padding:8px;color:#9ca3af;\">Purpose</th></tr><tr style=\"border-bottom:1px solid #4b5563;\"><td style=\"padding:8px;\"><span style=\"color:#daa520;\">max20x</span></td><td style=\"padding:8px;\">20× rate</td><td style=\"padding:8px;\">Primary (default)</td></tr><tr><td style=\"padding:8px;\"><span style=\"color:#3b82f6;\">max5x</span></td><td style=\"padding:8px;\">5× rate</td><td style=\"padding:8px;\">Quick Turn / backup</td></tr></table></div><div style=\"background:#2d2d2d;padding:16px;border-radius:6px;margin-bottom:16px;\"><h3 style=\"color:#22c55e;margin:0 0 12px 0;\">Expected Behaviors</h3><h4 style=\"color:#e0e0e0;margin:12px 0 8px 0;\">✅ On Page Load</h4><ul style=\"margin:0;padding-left:20px;line-height:1.8;color:#9ca3af;\"><li>Dropdown fetches accounts from <code style=\"background:#1e1e1e;padding:2px 6px;border-radius:4px;\">/api/konsole/accounts</code></li><li>Shows \"Loading...\" briefly, then populates with accounts</li><li>Active account marked with ✓ checkmark</li><li>Each option shows: <code style=\"background:#1e1e1e;padding:2px 6px;border-radius:4px;\">● Max 20× · 7h 30m</code></li></ul><h4 style=\"color:#e0e0e0;margin:16px 0 8px 0;\">🔄 When Switching Accounts</h4><ul style=\"margin:0;padding-left:20px;line-height:1.8;color:#9ca3af;\"><li>Select different account from dropdown</li><li>Request sent to <code style=\"background:#1e1e1e;padding:2px 6px;border-radius:4px;\">POST /api/konsole/accounts/switch</code></li><li>Symlink <code style=\"background:#1e1e1e;padding:2px 6px;border-radius:4px;\">~/.claude</code> updated to point to new account</li><li>Dropdown refreshes to show new active state</li><li><strong>⚠️ Only works when no Claude sessions are running!</strong></li></ul><h4 style=\"color:#e0e0e0;margin:16px 0 8px 0;\">⚡ Status Indicators</h4><table style=\"width:100%;border-collapse:collapse;\"><tr style=\"border-bottom:1px solid #4b5563;\"><td style=\"padding:8px;\"><span style=\"color:#22c55e;font-size:1.2em;\">●</span></td><td style=\"padding:8px;color:#22c55e;\">Valid</td><td style=\"padding:8px;color:#9ca3af;\">Token has plenty of time remaining</td></tr><tr style=\"border-bottom:1px solid #4b5563;\"><td style=\"padding:8px;\"><span style=\"color:#f59e0b;font-size:1.2em;\">●</span></td><td style=\"padding:8px;color:#f59e0b;\">Expiring</td><td style=\"padding:8px;color:#9ca3af;\">Less than 1 hour remaining (pulses)</td></tr><tr><td style=\"padding:8px;\"><span style=\"color:#ef4444;font-size:1.2em;\">✗</span></td><td style=\"padding:8px;color:#ef4444;\">Expired</td><td style=\"padding:8px;color:#9ca3af;\">Token has expired, needs refresh</td></tr></table></div><div style=\"background:#2d2d2d;padding:16px;border-radius:6px;margin-bottom:16px;\"><h3 style=\"color:#c678dd;margin:0 0 12px 0;\">⚠️ Potential Issues to Watch For</h3><ul style=\"margin:0;padding-left:20px;line-height:1.8;color:#9ca3af;\"><li><strong>Dropdown shows \"Loading...\" forever</strong> — konsole not running or not accessible</li><li><strong>Switch fails silently</strong> — Claude session may be running</li><li><strong>Time remaining shows \"expired\"</strong> — need to re-auth via <code style=\"background:#1e1e1e;padding:2px 6px;border-radius:4px;\">claude login</code></li><li><strong>No accounts shown</strong> — check <code style=\"background:#1e1e1e;padding:2px 6px;border-radius:4px;\">KONSOLE_CLAUDE_ACCOUNTS</code> in .env</li></ul></div><div style=\"background:#1e3a5f;padding:16px;border-radius:6px;border:1px solid #3b82f6;\"><h4 style=\"color:#fff;margin:0 0 8px 0;\">💡 Testing Steps</h4><ol style=\"margin:0;padding-left:20px;line-height:1.8;color:#e0e0e0;\"><li>Refresh the dashboard page</li><li>Look for account dropdown in navbar (right side)</li><li>Verify it shows both accounts with metadata</li><li>Try switching to max5x (ensure no active session)</li><li>Send a test prompt, verify it uses the new account</li><li>Switch back to max20x</li></ol></div></div>",
"requestedAt": "2026-01-08T10:32:00.000Z",
"requestId": "af705a3c-dd46-432c-a56e-72653fce9441",
"turnTiming": {
"totalMs": 134931,
"ttfeMs": 48,
"thinkingMs": 134883,
"toolExecutionMs": 0,
"toolCallCount": 0,
"thinkingPct": 100,
"toolsPct": 0,
"ttfePct": 0
}
},
"createdBy": "claude",
"createdAt": "2026-01-07T22:19:28.365Z",
"updatedAt": "2026-01-07T22:19:38.039Z",
"requestId": "af705a3c-dd46-432c-a56e-72653fce9441",
"scope": "vibetools",
"tags": [
"konsole",
"ui",
"auth"
],
"targetUser": "claude"
}