@promptctl/cc-candybar 1.87.1 → 1.89.0

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promptctl/cc-candybar",
3
- "version": "1.87.1",
3
+ "version": "1.89.0",
4
4
  "description": "Statusline renderer for Claude Code — a JSON5-configurable DSL with daemon-cached data sources, byte-clean palette-aware composition, and OSC8 click verbs.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.mjs",
@@ -91,9 +91,9 @@
91
91
  "mobx": "^6.15.0"
92
92
  },
93
93
  "optionalDependencies": {
94
- "@promptctl/cc-candybar-darwin-arm64": "1.87.1",
95
- "@promptctl/cc-candybar-darwin-x64": "1.87.1",
96
- "@promptctl/cc-candybar-linux-x64": "1.87.1",
97
- "@promptctl/cc-candybar-linux-arm64": "1.87.1"
94
+ "@promptctl/cc-candybar-darwin-arm64": "1.89.0",
95
+ "@promptctl/cc-candybar-darwin-x64": "1.89.0",
96
+ "@promptctl/cc-candybar-linux-x64": "1.89.0",
97
+ "@promptctl/cc-candybar-linux-arm64": "1.89.0"
98
98
  }
99
99
  }
@@ -19,7 +19,7 @@ readonly TEMPLATE="${PLUGIN_ROOT}/templates/config.json"
19
19
  readonly THEMES=(dark light nord tokyo-night rose-pine gruvbox catppuccin-mocha dracula solarized-dark monokai)
20
20
  readonly STYLES=(powerline capsule plain)
21
21
  readonly CHARSETS=(unicode ascii)
22
- readonly PRESETS=(default compact verbose)
22
+ readonly PRESETS=(default compact verbose zen git usage dense)
23
23
 
24
24
  THEME="${THEMES[0]}"
25
25
  STYLE="${STYLES[0]}"
@@ -153,16 +153,19 @@ Tell the user the previews are in the bash output above, then display:
153
153
  1. **default** -- Two rows: an identity row (directory, git) over a status row (model, context window, cache timer, 5-hour block usage, weekly usage). Good default.
154
154
  2. **compact** -- One row (directory, git, context window) with no cell padding. For narrow terminals and split panes.
155
155
  3. **verbose** -- The default's two rows plus pull-request, burn-rate, token-speed and token-sparkline segments. Maximum information.
156
+ 4. **zen** -- One quiet row (directory, context window) in plain style under the dim look, so it replaces the style picked in Step 4. For heads-down work.
157
+ 5. **git** -- The open pull request beside the git state, over a status row cut to model, context window and activity. For branch-and-review work.
158
+ 6. **usage** -- Every cost and limit segment, one concern per row: context and cache, the rate-limit windows and burn rate, then session and today spend and token speed. For watching a budget.
159
+ 7. **dense** -- The default's segments plus session spend on one row with no cell padding, wrapped only where the terminal runs out. For wide terminals.
156
160
  ````
157
161
 
158
162
  Then ask:
159
163
 
160
- - **Question**: "Which preset?"
164
+ - **Question**: "Which preset? Pick one or type any name from the list."
161
165
  - **Header**: "Preset"
162
- - **Options**:
163
- - "default" -> Set `preset=default`
164
- - "compact" -> Set `preset=compact`
165
- - "verbose" -> Set `preset=verbose`
166
+ - **Options**: the first four presets in the list above, each -> Set `preset=<that name>`
167
+
168
+ If the user types a name in the free text field, accept it only if the list above names it; otherwise show the list again and re-ask. Set `preset`.
166
169
 
167
170
  ## Step 6: Existing config
168
171
 
@@ -203,7 +206,7 @@ stamp=$(date -u +%Y%m%dT%H%M%SZ)
203
206
  | `replace:THEME` | `theme` (the name chosen in Step 3) |
204
207
  | `replace:STYLE` | `style` (`powerline`, `capsule`, or `plain`) |
205
208
  | `replace:CHARSET` | `charset` (`unicode` or `ascii`) |
206
- | `replace:PRESET` | `preset` (`default`, `compact`, or `verbose`) |
209
+ | `replace:PRESET` | `preset` (a name from Step 5's list) |
207
210
 
208
211
  3. Write the result to `~/.config/cc-candybar/config.json5` with the Write tool (create the directory if needed). Do NOT read or merge with any existing config; the file is replaced whole.
209
212
 
@@ -2005,6 +2005,71 @@
2005
2005
  }
2006
2006
  ]
2007
2007
  }
2008
+ },
2009
+ "settings": {
2010
+ "type": "object",
2011
+ "propertyNames": {
2012
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
2013
+ },
2014
+ "additionalProperties": {
2015
+ "type": "object",
2016
+ "additionalProperties": false,
2017
+ "required": [
2018
+ "label",
2019
+ "domain",
2020
+ "default"
2021
+ ],
2022
+ "properties": {
2023
+ "label": {
2024
+ "type": "string",
2025
+ "minLength": 1
2026
+ },
2027
+ "domain": {
2028
+ "anyOf": [
2029
+ {
2030
+ "const": "bool"
2031
+ },
2032
+ {
2033
+ "type": "array",
2034
+ "items": {
2035
+ "type": "string"
2036
+ },
2037
+ "minItems": 1,
2038
+ "uniqueItems": true
2039
+ },
2040
+ {
2041
+ "type": "object",
2042
+ "additionalProperties": false,
2043
+ "required": [
2044
+ "min",
2045
+ "max"
2046
+ ],
2047
+ "properties": {
2048
+ "min": {
2049
+ "type": "integer"
2050
+ },
2051
+ "max": {
2052
+ "type": "integer"
2053
+ }
2054
+ }
2055
+ }
2056
+ ]
2057
+ },
2058
+ "default": {
2059
+ "anyOf": [
2060
+ {
2061
+ "type": "boolean"
2062
+ },
2063
+ {
2064
+ "type": "string"
2065
+ },
2066
+ {
2067
+ "type": "integer"
2068
+ }
2069
+ ]
2070
+ }
2071
+ }
2072
+ }
2008
2073
  }
2009
2074
  },
2010
2075
  "required": [
@@ -2647,6 +2712,71 @@
2647
2712
  }
2648
2713
  ]
2649
2714
  }
2715
+ },
2716
+ "settings": {
2717
+ "type": "object",
2718
+ "propertyNames": {
2719
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
2720
+ },
2721
+ "additionalProperties": {
2722
+ "type": "object",
2723
+ "additionalProperties": false,
2724
+ "required": [
2725
+ "label",
2726
+ "domain",
2727
+ "default"
2728
+ ],
2729
+ "properties": {
2730
+ "label": {
2731
+ "type": "string",
2732
+ "minLength": 1
2733
+ },
2734
+ "domain": {
2735
+ "anyOf": [
2736
+ {
2737
+ "const": "bool"
2738
+ },
2739
+ {
2740
+ "type": "array",
2741
+ "items": {
2742
+ "type": "string"
2743
+ },
2744
+ "minItems": 1,
2745
+ "uniqueItems": true
2746
+ },
2747
+ {
2748
+ "type": "object",
2749
+ "additionalProperties": false,
2750
+ "required": [
2751
+ "min",
2752
+ "max"
2753
+ ],
2754
+ "properties": {
2755
+ "min": {
2756
+ "type": "integer"
2757
+ },
2758
+ "max": {
2759
+ "type": "integer"
2760
+ }
2761
+ }
2762
+ }
2763
+ ]
2764
+ },
2765
+ "default": {
2766
+ "anyOf": [
2767
+ {
2768
+ "type": "boolean"
2769
+ },
2770
+ {
2771
+ "type": "string"
2772
+ },
2773
+ {
2774
+ "type": "integer"
2775
+ }
2776
+ ]
2777
+ }
2778
+ }
2779
+ }
2650
2780
  }
2651
2781
  },
2652
2782
  "additionalProperties": false
@@ -2705,6 +2835,30 @@
2705
2835
  },
2706
2836
  "when": {
2707
2837
  "type": "string"
2838
+ },
2839
+ "id": {
2840
+ "type": "string",
2841
+ "minLength": 1,
2842
+ "pattern": "^[^:/]+$"
2843
+ },
2844
+ "settings": {
2845
+ "type": "object",
2846
+ "propertyNames": {
2847
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
2848
+ },
2849
+ "additionalProperties": {
2850
+ "anyOf": [
2851
+ {
2852
+ "type": "boolean"
2853
+ },
2854
+ {
2855
+ "type": "string"
2856
+ },
2857
+ {
2858
+ "type": "integer"
2859
+ }
2860
+ ]
2861
+ }
2708
2862
  }
2709
2863
  },
2710
2864
  "required": [
@@ -2781,6 +2935,30 @@
2781
2935
  },
2782
2936
  "when": {
2783
2937
  "type": "string"
2938
+ },
2939
+ "id": {
2940
+ "type": "string",
2941
+ "minLength": 1,
2942
+ "pattern": "^[^:/]+$"
2943
+ },
2944
+ "settings": {
2945
+ "type": "object",
2946
+ "propertyNames": {
2947
+ "pattern": "^[A-Za-z_][A-Za-z0-9_]*$"
2948
+ },
2949
+ "additionalProperties": {
2950
+ "anyOf": [
2951
+ {
2952
+ "type": "boolean"
2953
+ },
2954
+ {
2955
+ "type": "string"
2956
+ },
2957
+ {
2958
+ "type": "integer"
2959
+ }
2960
+ ]
2961
+ }
2784
2962
  }
2785
2963
  },
2786
2964
  "required": [