Skip to main content

Docs Settings Reference

General Settings

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.

SettingDescription
powerClaude.autoNudge.enabled
boolean · 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.effort
string · 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)
  • fast
  • balanced
  • thorough
powerClaude.autoNudge.fallback.enabled
boolean · 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.model
string · 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.enabled
boolean · 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.threshold
number · 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.windowDays
number · default: 14
Rolling window in days over which would-have-fired observations are counted toward the discovery threshold.
powerClaude.autoNudge.loopGuardMax
number · 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.nudges
object · 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.shadowMode
boolean · 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.crossEnvironment
boolean · 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.autoResumeOnRateLimit
boolean · 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.autoResumeSessions
boolean · 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.autoResumeSilently
boolean · 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.autoSelectSoonest
boolean · 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.autoSnapshotSessions
boolean · 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.autoOpenSessions
boolean · 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.enabled
boolean · 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.licenseKey
string · 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.includeHandlerLogs
boolean · default: true
Include the rate-limit handler decision-trail and combined logs in the exported bundle (sanitized).
powerClaude.logExport.includeRateLimitLogs
boolean · default: true
Include ~/.power-claude/logs/*.log and events.jsonl in the exported bundle (sanitized).
powerClaude.logExport.outputDir
string · default:
Default directory for 'Power Claude: Export Logs (Sanitized)'. Leave blank to be prompted each time.
powerClaude.logLevel
string · 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)
  • trace — TRACE — every poll/heartbeat tick (auto-resume probes, sub-second loops). Highest volume; for diagnosing 'is this code path even running'.
  • debug — DEBUG — granular execution path tracing (state-change ticks, decision branches). Off in normal use; on while reproducing a bug.
  • verbose — VERBOSE — extended state mutations and intermediate steps; quieter than DEBUG, noisier than INFO.
  • info — INFO — significant events (rotations, OAuth refreshes, proxy lifecycle, user actions). DEFAULT — read this in normal operation.
  • warn — WARN — recoverable issues (fallback used, throttle deferred, file not found).
  • error — ERROR — failures that impact functionality.
powerClaude.promptInstallLifecycleHooks
boolean · 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.promptInstallRateLimitHook
boolean · 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.autoStart
boolean · 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.hideFallbackBanner
boolean · 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.pinnedAccounts
array · 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.pinnedTiers
array · 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.port
number · 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.switchThreshold
number · 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.maxHitsPerWeek
number · 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.refreshIntervalMs
number · default: 0
Optional auto-refresh interval (milliseconds). 0 = disabled (file watcher already detects changes).
powerClaude.resumePrompt
string · 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.activeWindowMin
number · 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.longRunningMin
number · 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.snapshotRetentionDays
number · 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.staleAfterDays
number · 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.enabled
boolean · 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.archivedGroupVisible
boolean · 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.autoArchiveAfterDays
number · 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.rememberResumeChoice
boolean · 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.codeLens
boolean · 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.gutter
boolean · 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.lineLevel
boolean · 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.modelFilter
string | 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.statusBar
boolean · default: true
Show a status-bar item summarising healthy/cooling/blocked counts.
powerClaude.telemetry.enabled
boolean · 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.endpoint
string · 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.minLevel
string · 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)
  • debug
  • info
  • warn
  • error
powerClaude.timelineTracking.enabled
boolean · 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.defaultActive
boolean · 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.compactThrashAutoRecover
boolean · 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.enabled
boolean · 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.flagIncompleteOnStop
boolean · 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.heartbeatStaleSec
number · 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.maxResumeAgeHours
number · 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.pollIntervalSec
number · 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.toolTruncationStaleSec
number · 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.