Configure General Settings from VS Code Preferences → Settings → Extensions → Power Claude, or edit your settings.json directly.
Auto-generated from the extension's package.json. 59 settings in this category.
| Setting | Description |
|---|---|
powerClaude.autoNudge.enabledboolean · default: true | Auto-Resume Nudges (Pro). When ON, the Stop hook scans the model's last message and automatically re-issues the turn if it stopped for a 'trivial' reason — asking permission to continue, offering a multi-choice menu when one option is obvious, telling YOU to run a command Claude could run itself, etc. Each individual nudge is a separate toggle below. A hard-stop veto list ensures genuine blockers (auth failure, missing credential, approval gate) always stop. Requires Power Mode. |
powerClaude.autoNudge.fallback.effortstring · default: fast | Effort budget for the LLM fallback. 'fast' caps the response at ~128 tokens; 'thorough' raises to ~256 and is recommended only when shadowMode tells you fast misclassifies.Allowed values (3)
|
powerClaude.autoNudge.fallback.enabledboolean · default: false | Optional LLM fallback. When ON, and no deterministic nudge pattern matched, call the configured model with a terse classifier prompt to decide whether to resume anyway. Off by default — the deterministic catalog covers the high-confidence ~17% of stops; the fallback handles the long tail at extra cost. Requires ANTHROPIC_API_KEY in the environment that runs the Stop hook. |
powerClaude.autoNudge.fallback.modelstring · default: claude-haiku-4-5-20251001 | Model used for the optional LLM fallback classifier. Haiku 4.5 is the default — cheapest, fastest, adequate for a binary trivial-vs-real classification. Bump to a stronger model if you see the fallback over-firing or missing cases. |
powerClaude.autoNudge.featureDiscovery.enabledboolean · default: true | Suggest enabling off-by-default Auto-Resume nudges after Power Claude observes they would have helped. When a disabled nudge with a shadow-on-disable flag matches N times within the rolling window, a one-shot toast offers Enable / Not now / Don't ask again. |
powerClaude.autoNudge.featureDiscovery.thresholdnumber · default: 3 | How many would-have-fired observations of the same nudge must accrue within the window before the discovery toast appears. |
powerClaude.autoNudge.featureDiscovery.windowDaysnumber · default: 14 | Rolling window in days over which would-have-fired observations are counted toward the discovery threshold. |
powerClaude.autoNudge.loopGuardMaxnumber · default: 3 | Max consecutive auto-nudges per session before the loop guard lets the next Stop be a real stop. Prevents Claude+nudge from ping-ponging on a stubborn pattern. Default 3 — covers the common 'asked permission three times' tic without letting a misfire loop forever. |
powerClaude.autoNudge.nudgesobject · default: {"ask-permission-to-continue":true,"offer-multi-choice":true,"tell-user-to-do-work":true,"pseudo-checkpoint":true,"multi-session-defer":false,"ask-to-verify":false,"sample-instead-of-all":false,"restate-then-stop":false,"complete-remaining-tasks":false} | Per-nudge on/off toggles. Each key matches an entry in ~/.power-claude/config/nudges.json. Defaults match the conservative ship: 4 ON (high-confidence patterns), 4 OFF (opt-in for the more aggressive ones). |
powerClaude.autoNudge.shadowModeboolean · default: false | Shadow mode — log every would-fire decision to ~/.power-claude/logs/events.jsonl but do NOT actually resume. Use this for a week before flipping enabled=true to audit which nudges fire and tune your toggles. |
powerClaude.autoResume.crossEnvironmentboolean · default: false | When OFF (default), auto-resume only opens sessions that were started in THIS environment — same machine (hostname), same client surface (desktop/Remote-SSH VS Code vs browser code-server), AND same launcher (VS Code vs CLI). A session you started on another computer, in a different VS Code client surface on the SAME machine (e.g. a browser code-server instance when you're in desktop VS Code), or in a CLI terminal will NOT pop open as a tab here on startup or after a rate-limit recovery; resume those manually from the Session Explorer if you want them. Turn ON only if you deliberately want sessions from other machines/surfaces/launchers to auto-open as tabs in every Power Claude instance — useful if you treat all your devices as one shared workspace, but for most users this produces noisy unwanted tabs (the original 'desktop sessions opening on my phone code-server' complaint). The launcher axis is always enforced (CLI-started sessions never auto-open as VS Code tabs regardless of this setting); this setting gates the machine AND client-surface axes together. Legacy note: sessions created before host/client stamping shipped don't have those records yet, so they're allowed (same-environment assumed) until restarted — a single Claude Code reload stamps host + client on the next session-start. |
powerClaude.autoResumeOnRateLimitboolean · default: false | Automatically resume the stopped Claude session after the rate-limit handler rotates to a fresh account. When ON, the extension watches ~/.power-claude/state/pending-recovery.json (written by the bash handler after every rotation) and immediately resumes the interrupted session. NOTE: Even when this is ON, the dev-mode master gate `powerClaude.devMode.autoOpenSessions` must also be ON for auto-open to actually happen. Defaults to OFF — manual resume from the dashboard is the production-supported flow. |
powerClaude.autoResumeSessionsboolean · default: false | Automatically reveal the dashboard on VS Code startup so its inline 'Resume Claude Sessions' panel is visible. (Behavior change 2026-04-30: this no longer pops a QuickPick — picking is manual from the UI.) Defaults to OFF. The dev-mode master gate `powerClaude.devMode.autoOpenSessions` does not affect this setting since no tab actually auto-opens; this only chooses whether to focus the dashboard at activation. |
powerClaude.autoResumeSilentlyboolean · default: true | When autoResumeSessions is ON, skip the QuickPick on startup and resume every candidate session immediately. Off by default so you can deselect tabs you don't want re-opened (e.g. one-off explorations from yesterday). |
powerClaude.autoSelectSoonestboolean · default: true | When all accounts are exhausted (none healthy), automatically switch the active account to the one with the soonest 5-hour recovery time. This ensures Claude Code's 'resets in X' message matches the rotator dashboard's next-recovery countdown so both timelines agree. |
powerClaude.autoSnapshotSessionsboolean · default: true | Automatically refresh the saved-sessions snapshot every 60s and on extension shutdown. When ON, you never need to click 'Snapshot sessions' before reloading VS Code — clicking 'Resume sessions now' after a reload just works. Disable only if you want to manage the snapshot file by hand. |
powerClaude.devMode.autoOpenSessionsboolean · default: false | DEV-ONLY master gate for automatic tab opening. When OFF (default), Power Claude will NEVER auto-open Claude Code session tabs — not on startup, not after a rate-limit recovery, not when the watchdog detects a stalled session. You can still launch and resume sessions manually from the dashboard / Sessions Explorer UI. Turn ON only if you are developing the extension and want to exercise the auto-open code paths. Auto-open shipped buggy (opened tabs in the wrong workspace context, repeatedly); this gate is the kill-switch until the underlying context-detection is reworked. |
powerClaude.fileStats.enabledboolean · default: true | When ON, a status-bar item shows session activity for the active editor's file (count + active span). Click to pick from a list of sessions that touched the file. Requires the Session Explorer index to be populated. |
powerClaude.licenseKeystring · default: | Your Power Claude license key from [neural-llm.com](https://neural-llm.com/power-claude). Leave blank to run your free trial; a key is required to keep paid features active after the trial ends. The key is validated against `neural-llm.com/license/validate` and cached locally for 24 hours — no external calls on every keystroke. Run **Power Claude: Refresh License** from the command palette to clear the cache and re-validate immediately (e.g. after a subscription renewal). |
powerClaude.logExport.includeHandlerLogsboolean · default: true | Include the rate-limit handler decision-trail and combined logs in the exported bundle (sanitized). |
powerClaude.logExport.includeRateLimitLogsboolean · default: true | Include ~/.power-claude/logs/*.log and events.jsonl in the exported bundle (sanitized). |
powerClaude.logExport.outputDirstring · default: | Default directory for 'Power Claude: Export Logs (Sanitized)'. Leave blank to be prompted each time. |
powerClaude.logLevelstring · default: info | Verbosity of the extension's local diagnostic output channel and rate-limit handler logs. 'debug' is the most verbose — recommended when reproducing an issue. The extension writes the chosen level to ~/.power-claude/config/ so the rate-limit handler shell scripts can pick it up at runtime.Allowed values (6)
|
powerClaude.promptInstallLifecycleHooksboolean · default: true | On activation, prompt to install Power Claude's session lifecycle hooks (session-start.sh / heartbeat.sh / session-end.sh) into ~/.power-claude/hooks/lifecycle/ and register them in ~/.claude/settings.json. Without these hooks, the resilience watchdog can still detect dead sessions but loses precision — no heartbeat signal, no final task-progress snapshot on session end. The prompt is dismissible per-day per-workspace and never auto-modifies your home dir without explicit consent. Manual install: 'Power Claude: Install Session Lifecycle Hooks' from the command palette. |
powerClaude.promptInstallRateLimitHookboolean · default: true | On activation, prompt to install the rate-limit anchor-emit hook into ~/.power-claude/hooks/rate-limit/handler.sh when it's missing. The hook is what populates the Anchors panel — without it, anchor data stays empty even when accounts hit caps. The prompt is dismissible per-day per-workspace and never auto-modifies your home dir without explicit consent. |
powerClaude.proxy.autoStartboolean · default: true | Auto-start the Power Claude proxy when the extension activates. The proxy routes Claude API calls through a local HTTP server so the extension can track quota utilization per account and rotate on exhaustion. |
powerClaude.proxy.hideFallbackBannerboolean · default: false | Hide the 'Running in fallback mode' banner that appears on the Overview tab when the proxy is not active. The banner explains that account rotation is happening reactively (post-429) via the rate-limit-handler hook chain instead of proactively via the proxy. Set to true to suppress the banner (e.g. if you intentionally run without the proxy). |
powerClaude.proxy.pinnedAccountsarray · default: [ ] | Restrict account selection to these named profiles. Empty array = no name filter (all healthy accounts are eligible). Takes precedence over proxy.pinnedTiers when both are set. |
powerClaude.proxy.pinnedTiersarray · default: [ ] | Restrict account selection to accounts whose subscription tier matches one of these values (e.g. ["max", "pro"]). Empty array = no tier filter. |
powerClaude.proxy.portnumber · default: 3456 | TCP port the Power Claude proxy listens on. Set CLAUDE_API_URL=http://127.0.0.1:<port> in your terminal (injected automatically when proxy.autoStart is true). |
powerClaude.proxy.switchThresholdnumber · default: 0.98 | Quota utilization fraction (0.0–1.0) at which the proxy pre-emptively rotates to the next account. Default 0.98 = rotate when 98% of the 5h window is consumed, before hitting the hard cap. |
powerClaude.recommender.maxHitsPerWeeknumber · default: 1 | Maximum acceptable rate-limit cap-hits per week before the LLM-usage recommender suggests an upgrade. Lower = recommend upgrades sooner; higher = tolerate more throttling before upgrading. Wired into the Usage tab to display your current tolerance and into recommend.json generation when the recommender CLI runs. |
powerClaude.refreshIntervalMsnumber · default: 0 | Optional auto-refresh interval (milliseconds). 0 = disabled (file watcher already detects changes). |
powerClaude.resumePromptstring · default: Continue from where you left off. | Prompt injected into resumed Claude Code sessions to wake them up. Without this, resumed tabs sit dormant — the user has to type something to make the session continue processing. Passed as the second argument to `claude-vscode.editor.open(sessionId, prompt, viewColumn)`. Customize for your workflow (e.g. 'Continue your remaining tasks.', 'Resume the most recent task.'). Empty string disables prompt injection (sessions will reveal but stay dormant). |
powerClaude.session.activeWindowMinnumber · default: 15 | Minutes after a session's last turn that it still reads as "active" in the Session Explorer. Lower = sessions drop to "completed" sooner after you stop typing; higher = they stay flagged active longer across short breaks. Clamped to a 1-minute floor. Takes effect immediately on change (triggers a session re-classification). |
powerClaude.session.longRunningMinnumber · default: 120 | Minutes of total session duration above which a session earns the "long-running" auto-tag (filterable in the Session Explorer). Lower = more sessions flagged as marathons; higher = only the longest. Clamped to a 1-minute floor. Takes effect immediately on change (triggers a session re-classification). |
powerClaude.session.snapshotRetentionDaysnumber · default: 7 | Days a saved session lingers in the resume list before the next auto-snapshot prunes it. Power Claude keeps a dual backup of your work — git snapshot refs plus this resume snapshot — so a longer retention means more abandoned sessions stay one click away from resuming. Lower = a tidier resume list; higher = a longer safety net. Clamped to a 1-day floor; applies on the next auto-snapshot. |
powerClaude.session.staleAfterDaysnumber · default: 7 | Days of inactivity after which an idle (non-abandoned) session ages out to "stale" in the Session Explorer. Lower = sessions go stale faster; higher = they stay in the active groups longer. Clamped to a 1-day floor. Takes effect immediately on change (triggers a session re-classification). |
powerClaude.sessionBlame.enabledboolean · default: true | Master toggle for Session Trail — Power Claude's inline AI-session attribution on every line of code (gutter âš¡, current-line annotation, hover with diff hunk, CodeLens, status bar). Legacy setting key kept for backward compatibility; equivalent to powerClaude.sessionTrail.lineLevel. When git is available, attribution is line-level; without git, falls back to file-level automatically. |
powerClaude.sessionExplorer.archivedGroupVisibleboolean · default: true | When ON, the Session Explorer tree shows an 'Archived' group containing every session marked archived (auto or manual). Turn OFF to hide the Archived group entirely and rely on tags/search to find old sessions. |
powerClaude.sessionExplorer.autoArchiveAfterDaysnumber · default: 30 | Sessions older than this many days are automatically marked archived (hidden from the main tree groups, surfaced under the 'Archived' group). Set to 0 to disable auto-archiving. User-applied tags, notes, and ratings persist regardless. Manual Archive / Unarchive context-menu actions always work and override this setting on a per-session basis. |
powerClaude.sessionExplorer.rememberResumeChoiceboolean · default: true | When ON, the Session Explorer remembers your most recent answer to 'Continue with prompt' vs 'Resume silently' and reuses it for subsequent right-click → Resume actions in the same VS Code window. Reset by switching VS Code window or clearing the global state. |
powerClaude.sessionTrail.codeLensboolean · default: true | When ON, Power Claude adds a CodeLens (⚡ N sessions · last X ago) above any function or class that contains AI-edited lines. Click → opens the Edit History side panel for the file. |
powerClaude.sessionTrail.gutterboolean · default: true | When ON, Power Claude renders a ⚡ icon in the editor gutter for every AI-edited line in the visible viewport. Click → opens the contributing session in the Session Detail panel. Disable for a cleaner gutter; the current-line annotation and hover remain active independently. |
powerClaude.sessionTrail.lineLevelboolean · default: true | When ON, Session Trail computes line-level attribution by diffing Power Claude's session snapshot refs (refs/power-claude/sessions/<id>/start..end) and projecting through git blame. Requires git on PATH. Falls back to file-level if git is unavailable. Suppress to force file-level even when git is present. |
powerClaude.sessionTrail.modelFilterstring | null · default: none | When set to a model name (e.g., 'claude-opus-4-7'), Session Trail surfaces (gutter, annotation, CodeLens) show only edits made by that model. Set via the 'Power Claude: Filter Session Trail by model…' command. |
powerClaude.statusBarboolean · default: true | Show a status-bar item summarising healthy/cooling/blocked counts. |
powerClaude.telemetry.enabledboolean · default: true | Send anonymized event telemetry to Power Claude so we can debug issues you report. No prompt content, no credentials, no file paths — events pass through a sanitizer that redacts API keys, OAuth tokens, JWTs, emails, phone numbers, home-directory paths, and any string matching prompt-injection patterns. Requires a configured endpoint below. |
powerClaude.telemetry.endpointstring · default: https://api.neural-llm.com/telemetry | HTTPS endpoint that receives sanitized telemetry batches. Leave blank to disable transport even if the toggle above is on. |
powerClaude.telemetry.minLevelstring · default: warn | Minimum event severity to capture for telemetry. 'warn' = only warnings + errors, 'error' = errors only. Higher (debug) captures more; lower (error) captures less.Allowed values (4)
|
powerClaude.timelineTracking.enabledboolean · default: true | When true, Power Claude's Timeline provider surfaces Claude Code edits in VS Code's Timeline view. Requires installing the PostToolUse hook via 'Power Claude: Install Timeline Hook'. |
powerClaude.usageTab.defaultActiveboolean · default: false | When ON, the dashboard opens with the LLM Usage tab visible by default (otherwise the Rotator tab is shown first). The selection persists for the session via the webview's view state. |
powerClaude.watchdog.compactThrashAutoRecoverboolean · default: false | When ON, the watchdog automatically recovers sessions that hit Claude Code's "Autocompact is thrashing" failure mode by running the Context Trim + Fresh Resume strategy (export a trimmed summary, open a fresh Claude session seeded with it). A naive --resume just re-thrashes, so this is the only correct recovery path. NOTE: Even when ON, the dev-mode master gate `powerClaude.devMode.autoOpenSessions` must also be ON for the recovery tab to actually open. Defaults to OFF — when a thrash is detected, you'll get a notification and can run recovery manually from the Sessions tab. |
powerClaude.watchdog.enabledboolean · default: true | Enable the session-resilience watchdog. When ON, Power Claude polls active sessions every 30s and detects deaths that the rate-limit recovery system can't see (process kill, OOM, IDE crash, network drop mid-tool, sessions ended with task items still pending) and silently auto-resumes. Requires lifecycle hooks to be installed for heartbeat baselines. |
powerClaude.watchdog.flagIncompleteOnStopboolean · default: true | When ON, flag sessions that ended cleanly via the Stop hook BUT left task items in pending or in_progress status. The Sessions UI surfaces these with a yellow badge and the watchdog offers (but does not silently auto-resume) a recovery QuickPick — these are intentional pauses, not deaths. Turn OFF to ignore unfinished-task signals on cleanly-stopped sessions. |
powerClaude.watchdog.heartbeatStaleSecnumber · default: 120 | Heartbeat-stale threshold in seconds. The watchdog fires when no `lifecycle:heartbeat` record has appeared in this many seconds AND the session's JSONL has been idle for the same period. Lifecycle hooks at ~/.power-claude/hooks/lifecycle/heartbeat.sh (PostToolUse) write these markers. Lower = faster detection but more false-positives on long-running tools. |
powerClaude.watchdog.maxResumeAgeHoursnumber · default: 24 | Max session age (hours) for watchdog auto-resume. Sessions older than this are skipped — the user has likely moved on. Default 24h covers overnight gaps; raise if you want week-old sessions to still be recoverable. |
powerClaude.watchdog.pollIntervalSecnumber · default: 30 | How often (seconds) the watchdog scans active sessions for deaths. Lower = faster crash detection at slightly more CPU per scan; higher = laxer detection. Clamped to 10–300s. Default 30s. Takes effect immediately on change (the watchdog is rebuilt with the new interval). |
powerClaude.watchdog.toolTruncationStaleSecnumber · default: 60 | Tool-truncation threshold in seconds. The watchdog fires when the most recent assistant record has stop_reason=tool_use AND no follow-up tool_result user record has arrived within this many seconds. Catches network drops and process kills that occurred mid-tool-call. |