@scotthamilton77/sidekick 0.1.32 → 0.1.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,6 +11,7 @@ settings:
11
11
  #
12
12
  # Available placeholders:
13
13
  # {model} - Current model name (e.g., "Opus")
14
+ # {effort} - Model reasoning effort level (e.g., "high"); empty when unsupported
14
15
  # {contextBar} - Visual context usage graph (e.g., "🪙 ▓▓▒|░░░")
15
16
  # {contextWindow} - Total context window size (e.g., "200k")
16
17
  # {tokenUsageActual} - Current tokens without compaction buffer (e.g., "45k")
@@ -60,7 +61,7 @@ settings:
60
61
  # Worktree-aware: "{branchWT,prefix=' | '}" → " | main" or " | feat/auth [wt]"
61
62
  # Project name: "{projectDirShort}" → "claude-code-sidekick"
62
63
  #
63
- format: "{devMode,suffix=' | '}{personaName,prefix='[',suffix='] | '}{model,prefix='[',suffix='] | '}{contextBar} {tokenPercentageActual} | {logs} | {projectDirShort,maxLength=40}: {cwd,maxLength=40,truncateStyle='path'}{branchWT,prefix=' | ',maxLength=40}{title,wrapAt=120,prefix=' | ',wrapPrefix='\\n'}{summary,wrapAt=120,prefix=' | ',wrapPrefix='\\n'}"
64
+ format: "{devMode,suffix=' | '}{personaName,prefix='[',suffix='] | '}{model,prefix='[',suffix=']'}{effort,prefix=' (',suffix=')'} | {contextBar} {tokenPercentageActual} | {logs} | {projectDirShort,maxLength=40}: {cwd,maxLength=40,truncateStyle='path'}{branchWT,prefix=' | ',maxLength=40}{title,wrapAt=120,prefix=' | ',wrapPrefix='\\n'}{summary,wrapAt=120,prefix=' | ',wrapPrefix='\\n'}"
64
65
 
65
66
  # Threshold configuration for visual warnings
66
67
  thresholds:
package/dist/bin.js CHANGED
@@ -18830,7 +18830,7 @@ var require_hook_input = __commonJS({
18830
18830
  "../types/dist/hook-input.js"(exports2) {
18831
18831
  "use strict";
18832
18832
  Object.defineProperty(exports2, "__esModule", { value: true });
18833
- exports2.HookInputSchema = exports2.StatuslineInputSchema = exports2.StatuslineWorkspaceSchema = exports2.StatuslineCostSchema = exports2.StatuslineContextWindowSchema = exports2.StatuslineModelSchema = exports2.SubagentStopInputSchema = exports2.SubagentStartInputSchema = exports2.NotificationInputSchema = exports2.PostCompactInputSchema = exports2.PreCompactInputSchema = exports2.SessionEndInputSchema = exports2.SessionStartInputSchema = exports2.StopInputSchema = exports2.PostToolUseInputSchema = exports2.PreToolUseInputSchema = exports2.UserPromptSubmitInputSchema = exports2.HookInputBaseSchema = void 0;
18833
+ exports2.HookInputSchema = exports2.StatuslineInputSchema = exports2.StatuslineWorkspaceSchema = exports2.StatuslineCostSchema = exports2.StatuslineContextWindowSchema = exports2.StatuslineEffortSchema = exports2.StatuslineModelSchema = exports2.SubagentStopInputSchema = exports2.SubagentStartInputSchema = exports2.NotificationInputSchema = exports2.PostCompactInputSchema = exports2.PreCompactInputSchema = exports2.SessionEndInputSchema = exports2.SessionStartInputSchema = exports2.StopInputSchema = exports2.PostToolUseInputSchema = exports2.PreToolUseInputSchema = exports2.UserPromptSubmitInputSchema = exports2.HookInputBaseSchema = void 0;
18834
18834
  var zod_1 = require_zod();
18835
18835
  exports2.HookInputBaseSchema = zod_1.z.object({
18836
18836
  /** Unique identifier for the current Claude session */
@@ -18924,6 +18924,10 @@ var require_hook_input = __commonJS({
18924
18924
  /** Human-readable display name (e.g., "Opus") */
18925
18925
  display_name: zod_1.z.string()
18926
18926
  });
18927
+ exports2.StatuslineEffortSchema = zod_1.z.object({
18928
+ /** Active effort level: "low", "medium", "high", "xhigh", or "max" */
18929
+ level: zod_1.z.string()
18930
+ });
18927
18931
  exports2.StatuslineContextWindowSchema = zod_1.z.object({
18928
18932
  /** Total input tokens used in session */
18929
18933
  total_input_tokens: zod_1.z.number(),
@@ -18963,6 +18967,8 @@ var require_hook_input = __commonJS({
18963
18967
  version: zod_1.z.string().optional(),
18964
18968
  /** Model information with id and display_name */
18965
18969
  model: exports2.StatuslineModelSchema,
18970
+ /** Model reasoning effort (present only when the model supports the effort parameter) */
18971
+ effort: exports2.StatuslineEffortSchema.optional(),
18966
18972
  /** Workspace paths */
18967
18973
  workspace: exports2.StatuslineWorkspaceSchema.optional(),
18968
18974
  /** Cost and duration metrics */
@@ -47587,7 +47593,7 @@ var require_build_identity = __commonJS({
47587
47593
  var path_1 = __importDefault2(require("path"));
47588
47594
  var DEV_PREFIX = "dev:";
47589
47595
  var NO_DIST_SENTINEL = "nodist";
47590
- function computeBuildIdentity(injectedVersion = true ? "0.1.32" : void 0, devFingerprint = computeDevFingerprint) {
47596
+ function computeBuildIdentity(injectedVersion = true ? "0.1.33" : void 0, devFingerprint = computeDevFingerprint) {
47591
47597
  return injectedVersion !== void 0 ? injectedVersion : DEV_PREFIX + devFingerprint();
47592
47598
  }
47593
47599
  function computeDevFingerprint() {
@@ -80565,7 +80571,7 @@ var require_types4 = __commonJS({
80565
80571
  });
80566
80572
  exports2.DEFAULT_STATUSLINE_CONFIG = {
80567
80573
  enabled: true,
80568
- format: "{devMode,suffix=' | '}{personaName,prefix='[',suffix='] | '}{model,prefix='[',suffix='] | '}{contextBar} {tokenPercentageActual} | {logs} | {cwd,maxLength=40,truncateStyle='path'}{branchWT,prefix=' | ',maxLength=40}{title,wrapAt=80,prefix=' | ',wrapPrefix='\\n'}\n{summary}",
80574
+ format: "{devMode,suffix=' | '}{personaName,prefix='[',suffix='] | '}{model,prefix='[',suffix=']'}{effort,prefix=' (',suffix=')'} | {contextBar} {tokenPercentageActual} | {logs} | {cwd,maxLength=40,truncateStyle='path'}{branchWT,prefix=' | ',maxLength=40}{title,wrapAt=80,prefix=' | ',wrapPrefix='\\n'}\n{summary}",
80569
80575
  thresholds: {
80570
80576
  tokens: { warning: 1e5, critical: 16e4 },
80571
80577
  cost: { warning: 0.5, critical: 1 },
@@ -81299,6 +81305,7 @@ var require_formatter = __commonJS({
81299
81305
  const convertedTitle = this.convertMarkdown(viewModel.title);
81300
81306
  const rawTokens = {
81301
81307
  model: viewModel.model,
81308
+ effort: viewModel.effort,
81302
81309
  contextWindow: viewModel.contextWindow,
81303
81310
  tokenUsageActual: viewModel.tokenUsageActual,
81304
81311
  tokenUsageEffective: viewModel.tokenUsageEffective,
@@ -81421,6 +81428,8 @@ var require_formatter = __commonJS({
81421
81428
  return this.colorizeByStatus(value, viewModel.logStatus);
81422
81429
  case "model":
81423
81430
  return this.colorize(value, this.theme.colors.model);
81431
+ case "effort":
81432
+ return this.colorize(value, this.theme.colors.effort ?? this.theme.colors.model);
81424
81433
  case "contextWindow":
81425
81434
  return this.colorize(value, this.theme.colors.tokens);
81426
81435
  case "duration":
@@ -81756,6 +81765,7 @@ var require_statusline_service = __commonJS({
81756
81765
  var types_js_1 = require_types4();
81757
81766
  var EMPTY_STATUSLINE_VIEWMODEL = {
81758
81767
  model: "",
81768
+ effort: "",
81759
81769
  contextWindow: "",
81760
81770
  tokenUsageActual: "",
81761
81771
  tokenUsageEffective: "",
@@ -82156,6 +82166,7 @@ var require_statusline_service = __commonJS({
82156
82166
  const costUsd = this.hookInput?.cost.total_cost_usd ?? 0;
82157
82167
  const durationMs = this.hookInput?.cost.total_duration_ms ?? 0;
82158
82168
  const modelName = this.hookInput?.model.display_name ?? "unknown";
82169
+ const effort = this.hookInput?.effort?.level ?? "";
82159
82170
  const totalWithBuffer = effectiveTokens + baseline.autocompactBufferTokens;
82160
82171
  const contextWindowSize = this.hookInput?.context_window.context_window_size ?? 2e5;
82161
82172
  const actualPercentage = Math.round(effectiveTokens / contextWindowSize * 100);
@@ -82170,6 +82181,7 @@ var require_statusline_service = __commonJS({
82170
82181
  const homeShorten = (p) => this.homeDir && p.startsWith(this.homeDir) ? "~" + p.slice(this.homeDir.length) : p;
82171
82182
  return {
82172
82183
  model: this.formatModelName(modelName),
82184
+ effort,
82173
82185
  contextWindow: (0, formatter_js_1.formatTokens)(contextWindowSize),
82174
82186
  tokenUsageActual: isIndeterminate ? "\u27F3 compacted" : (0, formatter_js_1.formatTokens)(effectiveTokens),
82175
82187
  tokenUsageEffective: isIndeterminate ? "\u27F3 compacted" : (0, formatter_js_1.formatTokens)(totalWithBuffer),
@@ -82469,6 +82481,7 @@ Examples:
82469
82481
  if (typeof raw.cwd !== "string")
82470
82482
  return void 0;
82471
82483
  const model = raw.model;
82484
+ const effort = raw.effort;
82472
82485
  const workspace = raw.workspace;
82473
82486
  const outputStyle = raw.output_style;
82474
82487
  const cost = raw.cost;
@@ -82485,6 +82498,8 @@ Examples:
82485
82498
  id: model?.id ?? "unknown",
82486
82499
  display_name: model?.display_name ?? "unknown"
82487
82500
  },
82501
+ // Preserve effort only when present; absent when the model doesn't support the parameter
82502
+ ...typeof effort?.level === "string" && { effort: { level: effort.level } },
82488
82503
  workspace: {
82489
82504
  current_dir: workspace?.current_dir ?? raw.cwd,
82490
82505
  project_dir: workspace?.project_dir ?? raw.cwd
@@ -87521,7 +87536,7 @@ var require_cli = __commonJS({
87521
87536
  var promises_12 = require("node:fs/promises");
87522
87537
  var node_stream_1 = require("node:stream");
87523
87538
  var yargs_parser_1 = __importDefault2(require_build());
87524
- var VERSION = true ? "0.1.32" : "dev";
87539
+ var VERSION = true ? "0.1.33" : "dev";
87525
87540
  var SANDBOX_ERROR_MESSAGE = `Error: Daemon commands cannot run in sandbox mode.
87526
87541
 
87527
87542
  Claude Code's sandbox blocks Unix socket operations required for daemon IPC.
package/dist/daemon.js CHANGED
@@ -17854,7 +17854,7 @@ var require_hook_input = __commonJS({
17854
17854
  "../types/dist/hook-input.js"(exports2) {
17855
17855
  "use strict";
17856
17856
  Object.defineProperty(exports2, "__esModule", { value: true });
17857
- exports2.HookInputSchema = exports2.StatuslineInputSchema = exports2.StatuslineWorkspaceSchema = exports2.StatuslineCostSchema = exports2.StatuslineContextWindowSchema = exports2.StatuslineModelSchema = exports2.SubagentStopInputSchema = exports2.SubagentStartInputSchema = exports2.NotificationInputSchema = exports2.PostCompactInputSchema = exports2.PreCompactInputSchema = exports2.SessionEndInputSchema = exports2.SessionStartInputSchema = exports2.StopInputSchema = exports2.PostToolUseInputSchema = exports2.PreToolUseInputSchema = exports2.UserPromptSubmitInputSchema = exports2.HookInputBaseSchema = void 0;
17857
+ exports2.HookInputSchema = exports2.StatuslineInputSchema = exports2.StatuslineWorkspaceSchema = exports2.StatuslineCostSchema = exports2.StatuslineContextWindowSchema = exports2.StatuslineEffortSchema = exports2.StatuslineModelSchema = exports2.SubagentStopInputSchema = exports2.SubagentStartInputSchema = exports2.NotificationInputSchema = exports2.PostCompactInputSchema = exports2.PreCompactInputSchema = exports2.SessionEndInputSchema = exports2.SessionStartInputSchema = exports2.StopInputSchema = exports2.PostToolUseInputSchema = exports2.PreToolUseInputSchema = exports2.UserPromptSubmitInputSchema = exports2.HookInputBaseSchema = void 0;
17858
17858
  var zod_1 = require_zod();
17859
17859
  exports2.HookInputBaseSchema = zod_1.z.object({
17860
17860
  /** Unique identifier for the current Claude session */
@@ -17948,6 +17948,10 @@ var require_hook_input = __commonJS({
17948
17948
  /** Human-readable display name (e.g., "Opus") */
17949
17949
  display_name: zod_1.z.string()
17950
17950
  });
17951
+ exports2.StatuslineEffortSchema = zod_1.z.object({
17952
+ /** Active effort level: "low", "medium", "high", "xhigh", or "max" */
17953
+ level: zod_1.z.string()
17954
+ });
17951
17955
  exports2.StatuslineContextWindowSchema = zod_1.z.object({
17952
17956
  /** Total input tokens used in session */
17953
17957
  total_input_tokens: zod_1.z.number(),
@@ -17987,6 +17991,8 @@ var require_hook_input = __commonJS({
17987
17991
  version: zod_1.z.string().optional(),
17988
17992
  /** Model information with id and display_name */
17989
17993
  model: exports2.StatuslineModelSchema,
17994
+ /** Model reasoning effort (present only when the model supports the effort parameter) */
17995
+ effort: exports2.StatuslineEffortSchema.optional(),
17990
17996
  /** Workspace paths */
17991
17997
  workspace: exports2.StatuslineWorkspaceSchema.optional(),
17992
17998
  /** Cost and duration metrics */
@@ -46611,7 +46617,7 @@ var require_build_identity = __commonJS({
46611
46617
  var path_1 = __importDefault(require("path"));
46612
46618
  var DEV_PREFIX = "dev:";
46613
46619
  var NO_DIST_SENTINEL = "nodist";
46614
- function computeBuildIdentity(injectedVersion = true ? "0.1.32" : void 0, devFingerprint = computeDevFingerprint) {
46620
+ function computeBuildIdentity(injectedVersion = true ? "0.1.33" : void 0, devFingerprint = computeDevFingerprint) {
46615
46621
  return injectedVersion !== void 0 ? injectedVersion : DEV_PREFIX + devFingerprint();
46616
46622
  }
46617
46623
  function computeDevFingerprint() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scotthamilton77/sidekick",
3
- "version": "0.1.32",
3
+ "version": "0.1.33",
4
4
  "description": "AI pair programming assistant with personas, session tracking, and contextual nudges",
5
5
  "bin": {
6
6
  "sidekick": "dist/bin.js"