claudekit-cli 3.40.2-dev.1 → 3.40.3-dev.1

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.
Files changed (2) hide show
  1. package/dist/index.js +259 -7
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -42376,7 +42376,7 @@ function normalizeCkConfigInput(value) {
42376
42376
  }
42377
42377
  return normalized;
42378
42378
  }
42379
- var PlanValidationModeSchema, PlanFocusAreaSchema, PlanResolutionOrderSchema, ProjectTypeSchema, PackageManagerSchema, FrameworkSchema, GEMINI_MODEL_VALUES, LEGACY_GEMINI_MODEL_ALIASES, GeminiModelSchema, StatuslineModeSchema, CodingLevelSchema, PlanResolutionSchema, PlanValidationSchema, CkPlanConfigSchema, CkDocsConfigSchema, CkPathsConfigSchema, CkLocaleConfigSchema, CkTrustConfigSchema, CkProjectConfigSchema, CkGeminiConfigSchema, CkSkillsConfigSchema, UpdatePipelineSchema, ResolvedModelConfigSchema, ModelTierMapSchema, CkModelTaxonomySchema, CkAssertionSchema, CkHooksConfigSchema, CkConfigSchema, DEFAULT_CK_CONFIG, CK_HOOK_NAMES;
42379
+ var PlanValidationModeSchema, PlanFocusAreaSchema, PlanResolutionOrderSchema, ProjectTypeSchema, PackageManagerSchema, FrameworkSchema, GEMINI_MODEL_VALUES, LEGACY_GEMINI_MODEL_ALIASES, GeminiModelSchema, StatuslineModeSchema, StatuslineSectionIdSchema, StatuslineSectionSchema, StatuslineThemeSchema, StatuslineLayoutSchema, CodingLevelSchema, PlanResolutionSchema, PlanValidationSchema, CkPlanConfigSchema, CkDocsConfigSchema, CkPathsConfigSchema, CkLocaleConfigSchema, CkTrustConfigSchema, CkProjectConfigSchema, CkGeminiConfigSchema, CkSkillsConfigSchema, UpdatePipelineSchema, ResolvedModelConfigSchema, ModelTierMapSchema, CkModelTaxonomySchema, CkAssertionSchema, CkHooksConfigSchema, CkConfigSchema, DEFAULT_CK_CONFIG, CK_HOOK_NAMES;
42380
42380
  var init_ck_config = __esm(() => {
42381
42381
  init_zod();
42382
42382
  PlanValidationModeSchema = exports_external.enum(["prompt", "auto", "strict", "none"]);
@@ -42429,6 +42429,45 @@ var init_ck_config = __esm(() => {
42429
42429
  };
42430
42430
  GeminiModelSchema = exports_external.enum(GEMINI_MODEL_VALUES);
42431
42431
  StatuslineModeSchema = exports_external.enum(["full", "compact", "minimal", "none"]);
42432
+ StatuslineSectionIdSchema = exports_external.enum([
42433
+ "model",
42434
+ "context",
42435
+ "quota",
42436
+ "directory",
42437
+ "git",
42438
+ "cost",
42439
+ "changes",
42440
+ "agents",
42441
+ "todos"
42442
+ ]);
42443
+ StatuslineSectionSchema = exports_external.object({
42444
+ id: StatuslineSectionIdSchema,
42445
+ enabled: exports_external.boolean().default(true),
42446
+ order: exports_external.number().int().min(0).max(99),
42447
+ icon: exports_external.string().max(20).optional(),
42448
+ label: exports_external.string().max(50).optional(),
42449
+ color: exports_external.string().max(30).regex(/^[a-zA-Z]+$/).optional(),
42450
+ maxWidth: exports_external.number().int().min(10).max(500).optional()
42451
+ });
42452
+ StatuslineThemeSchema = exports_external.object({
42453
+ name: exports_external.string().max(50).optional(),
42454
+ contextLow: exports_external.string().max(30).regex(/^[a-zA-Z]+$/).default("green"),
42455
+ contextMid: exports_external.string().max(30).regex(/^[a-zA-Z]+$/).default("yellow"),
42456
+ contextHigh: exports_external.string().max(30).regex(/^[a-zA-Z]+$/).default("red"),
42457
+ accent: exports_external.string().max(30).regex(/^[a-zA-Z]+$/).default("cyan"),
42458
+ muted: exports_external.string().max(30).regex(/^[a-zA-Z]+$/).default("dim"),
42459
+ separator: exports_external.string().max(30).regex(/^[a-zA-Z]+$/).default("dim")
42460
+ });
42461
+ StatuslineLayoutSchema = exports_external.object({
42462
+ baseMode: StatuslineModeSchema.default("full"),
42463
+ sections: exports_external.array(StatuslineSectionSchema).max(9).refine((arr) => new Set(arr.map((s) => s.id)).size === arr.length, {
42464
+ message: "Section IDs must be unique"
42465
+ }).optional(),
42466
+ theme: StatuslineThemeSchema.optional(),
42467
+ responsiveBreakpoint: exports_external.number().min(0.5).max(1).default(0.85),
42468
+ maxAgentRows: exports_external.number().int().min(1).max(10).default(4),
42469
+ todoTruncation: exports_external.number().int().min(20).max(100).default(50)
42470
+ });
42432
42471
  CodingLevelSchema = exports_external.number().int().min(-1).max(5);
42433
42472
  PlanResolutionSchema = exports_external.object({
42434
42473
  order: exports_external.array(PlanResolutionOrderSchema).optional(),
@@ -42513,6 +42552,7 @@ var init_ck_config = __esm(() => {
42513
42552
  statusline: StatuslineModeSchema.optional(),
42514
42553
  statuslineColors: exports_external.boolean().optional(),
42515
42554
  statuslineQuota: exports_external.boolean().optional(),
42555
+ statuslineLayout: StatuslineLayoutSchema.optional(),
42516
42556
  privacyBlock: exports_external.boolean().optional(),
42517
42557
  docs: CkDocsConfigSchema.optional(),
42518
42558
  plan: CkPlanConfigSchema.optional(),
@@ -42532,6 +42572,7 @@ var init_ck_config = __esm(() => {
42532
42572
  statusline: "full",
42533
42573
  statuslineColors: true,
42534
42574
  statuslineQuota: true,
42575
+ statuslineLayout: undefined,
42535
42576
  privacyBlock: true,
42536
42577
  docs: {
42537
42578
  maxLoc: 800
@@ -42608,6 +42649,44 @@ var init_ck_config = __esm(() => {
42608
42649
  ];
42609
42650
  });
42610
42651
 
42652
+ // src/types/statusline-section-defaults.ts
42653
+ var DEFAULT_STATUSLINE_SECTIONS, SECTION_LABELS, SECTION_DESCRIPTIONS;
42654
+ var init_statusline_section_defaults = __esm(() => {
42655
+ DEFAULT_STATUSLINE_SECTIONS = [
42656
+ { id: "model", enabled: true, order: 0, icon: "\uD83E\uDD16" },
42657
+ { id: "context", enabled: true, order: 1 },
42658
+ { id: "quota", enabled: true, order: 2, icon: "⌛" },
42659
+ { id: "directory", enabled: true, order: 3, icon: "\uD83D\uDCC1" },
42660
+ { id: "git", enabled: true, order: 4, icon: "\uD83C\uDF3F" },
42661
+ { id: "cost", enabled: true, order: 5, icon: "\uD83D\uDCB0" },
42662
+ { id: "changes", enabled: true, order: 6, icon: "\uD83D\uDCDD" },
42663
+ { id: "agents", enabled: true, order: 7, icon: "\uD83D\uDD04" },
42664
+ { id: "todos", enabled: true, order: 8, icon: "✅" }
42665
+ ];
42666
+ SECTION_LABELS = {
42667
+ model: "Model",
42668
+ context: "Context Window",
42669
+ quota: "Usage Quota",
42670
+ directory: "Directory",
42671
+ git: "Git Status",
42672
+ cost: "Cost",
42673
+ changes: "Changes",
42674
+ agents: "Agents",
42675
+ todos: "Tasks"
42676
+ };
42677
+ SECTION_DESCRIPTIONS = {
42678
+ model: "AI model name and provider",
42679
+ context: "Context window usage bar",
42680
+ quota: "5-hour and weekly usage quota",
42681
+ directory: "Current working directory",
42682
+ git: "Git branch, staged/unstaged changes",
42683
+ cost: "Session cost estimate",
42684
+ changes: "Lines added and removed",
42685
+ agents: "Recent agent activity",
42686
+ todos: "Current task progress"
42687
+ };
42688
+ });
42689
+
42611
42690
  // src/types/index.ts
42612
42691
  var exports_types = {};
42613
42692
  __export(exports_types, {
@@ -42622,11 +42701,17 @@ __export(exports_types, {
42622
42701
  UninstallCommandOptionsSchema: () => UninstallCommandOptionsSchema,
42623
42702
  USER_CONFIG_PATTERNS: () => USER_CONFIG_PATTERNS,
42624
42703
  TrackedFileSchema: () => TrackedFileSchema,
42704
+ StatuslineThemeSchema: () => StatuslineThemeSchema,
42705
+ StatuslineSectionSchema: () => StatuslineSectionSchema,
42706
+ StatuslineSectionIdSchema: () => StatuslineSectionIdSchema,
42625
42707
  StatuslineModeSchema: () => StatuslineModeSchema,
42708
+ StatuslineLayoutSchema: () => StatuslineLayoutSchema,
42626
42709
  SkillsMigrationError: () => SkillsMigrationError,
42627
42710
  SkillsManifestSchema: () => SkillsManifestSchema,
42628
42711
  ServicesListSchema: () => ServicesListSchema,
42629
42712
  ServiceSchema: () => ServiceSchema,
42713
+ SECTION_LABELS: () => SECTION_LABELS,
42714
+ SECTION_DESCRIPTIONS: () => SECTION_DESCRIPTIONS,
42630
42715
  ReviewwebOptionsSchema: () => ReviewwebOptionsSchema,
42631
42716
  RegisteredProjectSchema: () => RegisteredProjectSchema,
42632
42717
  RateLimitInfoSchema: () => RateLimitInfoSchema,
@@ -42659,6 +42744,7 @@ __export(exports_types, {
42659
42744
  ExtractionError: () => ExtractionError,
42660
42745
  ExcludePatternSchema: () => ExcludePatternSchema,
42661
42746
  DownloadError: () => DownloadError,
42747
+ DEFAULT_STATUSLINE_SECTIONS: () => DEFAULT_STATUSLINE_SECTIONS,
42662
42748
  DEFAULT_PROJECTS_REGISTRY: () => DEFAULT_PROJECTS_REGISTRY,
42663
42749
  DEFAULT_FOLDERS: () => DEFAULT_FOLDERS,
42664
42750
  DEFAULT_CK_CONFIG: () => DEFAULT_CK_CONFIG,
@@ -42695,6 +42781,7 @@ var init_types3 = __esm(() => {
42695
42781
  init_claudekit_data();
42696
42782
  init_claudekit_api();
42697
42783
  init_ck_config();
42784
+ init_statusline_section_defaults();
42698
42785
  });
42699
42786
 
42700
42787
  // src/domains/config/config-manager.ts
@@ -48554,6 +48641,154 @@ var init_ck_config_schema = __esm(() => {
48554
48641
  default: true,
48555
48642
  description: "Show the cosmetic 5h / wk quota chips in the statusline. Disable to keep the statusline layout without usage-window percentages."
48556
48643
  },
48644
+ statuslineLayout: {
48645
+ type: "object",
48646
+ description: "Advanced statusline layout config for the visual builder. When absent, uses hardcoded defaults (backward compatible). Takes precedence over the statusline field when both are set.",
48647
+ properties: {
48648
+ baseMode: {
48649
+ type: "string",
48650
+ enum: ["full", "compact", "minimal", "none"],
48651
+ default: "full",
48652
+ description: "Starting template mode for the layout"
48653
+ },
48654
+ sections: {
48655
+ type: "array",
48656
+ description: "Ordered section configurations. Section IDs must be unique (enforced at runtime by the Zod schema, not JSON Schema).",
48657
+ items: {
48658
+ type: "object",
48659
+ required: ["id", "order"],
48660
+ properties: {
48661
+ id: {
48662
+ type: "string",
48663
+ enum: [
48664
+ "model",
48665
+ "context",
48666
+ "quota",
48667
+ "directory",
48668
+ "git",
48669
+ "cost",
48670
+ "changes",
48671
+ "agents",
48672
+ "todos"
48673
+ ],
48674
+ description: "Section identifier"
48675
+ },
48676
+ enabled: {
48677
+ type: "boolean",
48678
+ default: true,
48679
+ description: "Whether this section is visible"
48680
+ },
48681
+ order: {
48682
+ type: "integer",
48683
+ minimum: 0,
48684
+ description: "Display position (0-indexed)",
48685
+ maximum: 99
48686
+ },
48687
+ icon: {
48688
+ type: "string",
48689
+ description: "Custom emoji/icon override",
48690
+ maxLength: 20
48691
+ },
48692
+ label: {
48693
+ type: "string",
48694
+ description: "Custom label override",
48695
+ maxLength: 50
48696
+ },
48697
+ color: {
48698
+ type: "string",
48699
+ description: "ANSI named color (e.g. red, cyan, green). Hex codes not supported.",
48700
+ maxLength: 30,
48701
+ pattern: "^[a-zA-Z]+$"
48702
+ },
48703
+ maxWidth: {
48704
+ type: "integer",
48705
+ minimum: 10,
48706
+ description: "Maximum character width for this section",
48707
+ maximum: 500
48708
+ }
48709
+ },
48710
+ additionalProperties: false
48711
+ },
48712
+ maxItems: 9
48713
+ },
48714
+ theme: {
48715
+ type: "object",
48716
+ description: "Color theme overrides",
48717
+ properties: {
48718
+ name: {
48719
+ type: "string",
48720
+ description: "Theme name (informational)",
48721
+ maxLength: 50
48722
+ },
48723
+ contextLow: {
48724
+ type: "string",
48725
+ default: "green",
48726
+ description: "Context bar color when usage <50%",
48727
+ maxLength: 30,
48728
+ pattern: "^[a-zA-Z]+$"
48729
+ },
48730
+ contextMid: {
48731
+ type: "string",
48732
+ default: "yellow",
48733
+ description: "Context bar color when usage 50-75%",
48734
+ maxLength: 30,
48735
+ pattern: "^[a-zA-Z]+$"
48736
+ },
48737
+ contextHigh: {
48738
+ type: "string",
48739
+ default: "red",
48740
+ description: "Context bar color when usage >75%",
48741
+ maxLength: 30,
48742
+ pattern: "^[a-zA-Z]+$"
48743
+ },
48744
+ accent: {
48745
+ type: "string",
48746
+ default: "cyan",
48747
+ description: "Accent color for highlights",
48748
+ maxLength: 30,
48749
+ pattern: "^[a-zA-Z]+$"
48750
+ },
48751
+ muted: {
48752
+ type: "string",
48753
+ default: "dim",
48754
+ description: "Muted text color",
48755
+ maxLength: 30,
48756
+ pattern: "^[a-zA-Z]+$"
48757
+ },
48758
+ separator: {
48759
+ type: "string",
48760
+ default: "dim",
48761
+ description: "Separator color",
48762
+ maxLength: 30,
48763
+ pattern: "^[a-zA-Z]+$"
48764
+ }
48765
+ },
48766
+ additionalProperties: false
48767
+ },
48768
+ responsiveBreakpoint: {
48769
+ type: "number",
48770
+ minimum: 0.5,
48771
+ maximum: 1,
48772
+ default: 0.85,
48773
+ description: "Terminal width fraction at which compact mode activates"
48774
+ },
48775
+ maxAgentRows: {
48776
+ type: "integer",
48777
+ minimum: 1,
48778
+ maximum: 10,
48779
+ default: 4,
48780
+ description: "Maximum rows to show in agents section"
48781
+ },
48782
+ todoTruncation: {
48783
+ type: "integer",
48784
+ minimum: 20,
48785
+ maximum: 100,
48786
+ default: 50,
48787
+ description: "Max characters before truncating todo text"
48788
+ }
48789
+ },
48790
+ additionalProperties: false
48791
+ },
48557
48792
  hooks: {
48558
48793
  type: "object",
48559
48794
  description: "Toggle individual hooks on/off. Default: all enabled.",
@@ -48622,8 +48857,16 @@ var init_ck_config_schema = __esm(() => {
48622
48857
  },
48623
48858
  migrateProviders: {
48624
48859
  oneOf: [
48625
- { type: "string", const: "auto" },
48626
- { type: "array", items: { type: "string" } }
48860
+ {
48861
+ type: "string",
48862
+ const: "auto"
48863
+ },
48864
+ {
48865
+ type: "array",
48866
+ items: {
48867
+ type: "string"
48868
+ }
48869
+ }
48627
48870
  ],
48628
48871
  default: "auto",
48629
48872
  description: "Which providers to auto-migrate. 'auto' scans filesystem."
@@ -48640,7 +48883,10 @@ var init_ck_config_schema = __esm(() => {
48640
48883
  heavy: {
48641
48884
  type: "object",
48642
48885
  properties: {
48643
- model: { type: "string", description: "Target model name" },
48886
+ model: {
48887
+ type: "string",
48888
+ description: "Target model name"
48889
+ },
48644
48890
  effort: {
48645
48891
  type: "string",
48646
48892
  description: "Effort/reasoning level (provider-specific)"
@@ -48651,7 +48897,10 @@ var init_ck_config_schema = __esm(() => {
48651
48897
  balanced: {
48652
48898
  type: "object",
48653
48899
  properties: {
48654
- model: { type: "string", description: "Target model name" },
48900
+ model: {
48901
+ type: "string",
48902
+ description: "Target model name"
48903
+ },
48655
48904
  effort: {
48656
48905
  type: "string",
48657
48906
  description: "Effort/reasoning level (provider-specific)"
@@ -48662,7 +48911,10 @@ var init_ck_config_schema = __esm(() => {
48662
48911
  light: {
48663
48912
  type: "object",
48664
48913
  properties: {
48665
- model: { type: "string", description: "Target model name" },
48914
+ model: {
48915
+ type: "string",
48916
+ description: "Target model name"
48917
+ },
48666
48918
  effort: {
48667
48919
  type: "string",
48668
48920
  description: "Effort/reasoning level (provider-specific)"
@@ -57329,7 +57581,7 @@ var package_default;
57329
57581
  var init_package = __esm(() => {
57330
57582
  package_default = {
57331
57583
  name: "claudekit-cli",
57332
- version: "3.40.2-dev.1",
57584
+ version: "3.40.3-dev.1",
57333
57585
  description: "CLI tool for bootstrapping and updating ClaudeKit projects",
57334
57586
  type: "module",
57335
57587
  repository: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claudekit-cli",
3
- "version": "3.40.2-dev.1",
3
+ "version": "3.40.3-dev.1",
4
4
  "description": "CLI tool for bootstrapping and updating ClaudeKit projects",
5
5
  "type": "module",
6
6
  "repository": {