openhorse 0.2.21 → 0.2.22

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 (205) hide show
  1. package/dist/cli.js +25 -0
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/index.d.ts.map +1 -1
  4. package/dist/commands/index.js +189 -49
  5. package/dist/commands/index.js.map +1 -1
  6. package/dist/commands/parser.d.ts.map +1 -1
  7. package/dist/commands/parser.js +8 -3
  8. package/dist/commands/parser.js.map +1 -1
  9. package/dist/commands/types.d.ts +2 -0
  10. package/dist/commands/types.d.ts.map +1 -1
  11. package/dist/commands/types.js.map +1 -1
  12. package/dist/core/cost-tracker.d.ts +45 -5
  13. package/dist/core/cost-tracker.d.ts.map +1 -1
  14. package/dist/core/cost-tracker.js +78 -13
  15. package/dist/core/cost-tracker.js.map +1 -1
  16. package/dist/framework/index.d.ts +1 -1
  17. package/dist/framework/index.d.ts.map +1 -1
  18. package/dist/framework/index.js.map +1 -1
  19. package/dist/framework/query.d.ts +25 -0
  20. package/dist/framework/query.d.ts.map +1 -1
  21. package/dist/framework/query.js +196 -49
  22. package/dist/framework/query.js.map +1 -1
  23. package/dist/framework/store.d.ts +6 -1
  24. package/dist/framework/store.d.ts.map +1 -1
  25. package/dist/framework/store.js +10 -1
  26. package/dist/framework/store.js.map +1 -1
  27. package/dist/harness/ledger.d.ts.map +1 -1
  28. package/dist/harness/ledger.js +6 -2
  29. package/dist/harness/ledger.js.map +1 -1
  30. package/dist/index.d.ts +2 -1
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/ink-ui/components/StatusLine.d.ts.map +1 -1
  33. package/dist/ink-ui/components/StatusLine.js +0 -2
  34. package/dist/ink-ui/components/StatusLine.js.map +1 -1
  35. package/dist/ink-ui/screens/ReplScreen.d.ts.map +1 -1
  36. package/dist/ink-ui/screens/ReplScreen.js +12 -5
  37. package/dist/ink-ui/screens/ReplScreen.js.map +1 -1
  38. package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
  39. package/dist/runtime/agent-runtime-controller.js +11 -1
  40. package/dist/runtime/agent-runtime-controller.js.map +1 -1
  41. package/dist/runtime/chat-controller.d.ts.map +1 -1
  42. package/dist/runtime/chat-controller.js +229 -86
  43. package/dist/runtime/chat-controller.js.map +1 -1
  44. package/dist/runtime/rich-text/ansi-parser.d.ts +1 -1
  45. package/dist/runtime/rich-text/ansi-parser.d.ts.map +1 -1
  46. package/dist/runtime/rich-text/ansi-parser.js +93 -55
  47. package/dist/runtime/rich-text/ansi-parser.js.map +1 -1
  48. package/dist/runtime/rich-text/layout.d.ts +2 -11
  49. package/dist/runtime/rich-text/layout.d.ts.map +1 -1
  50. package/dist/runtime/rich-text/layout.js +280 -245
  51. package/dist/runtime/rich-text/layout.js.map +1 -1
  52. package/dist/runtime/rich-text/markdown-parser.js +31 -24
  53. package/dist/runtime/rich-text/markdown-parser.js.map +1 -1
  54. package/dist/runtime/rich-text/types.d.ts +1 -1
  55. package/dist/runtime/rich-text/types.d.ts.map +1 -1
  56. package/dist/runtime/subagents/production.d.ts.map +1 -1
  57. package/dist/runtime/subagents/production.js +28 -3
  58. package/dist/runtime/subagents/production.js.map +1 -1
  59. package/dist/runtime/subagents/result-parser.d.ts.map +1 -1
  60. package/dist/runtime/subagents/result-parser.js +54 -40
  61. package/dist/runtime/subagents/result-parser.js.map +1 -1
  62. package/dist/runtime/subagents/types.d.ts +2 -0
  63. package/dist/runtime/subagents/types.d.ts.map +1 -1
  64. package/dist/runtime/subagents/types.js +5 -1
  65. package/dist/runtime/subagents/types.js.map +1 -1
  66. package/dist/runtime/ui-events.d.ts +13 -0
  67. package/dist/runtime/ui-events.d.ts.map +1 -1
  68. package/dist/runtime/ui-events.js.map +1 -1
  69. package/dist/runtime/ui-view-model.d.ts +9 -0
  70. package/dist/runtime/ui-view-model.d.ts.map +1 -1
  71. package/dist/runtime/ui-view-model.js +59 -37
  72. package/dist/runtime/ui-view-model.js.map +1 -1
  73. package/dist/services/compact/auto-compact.d.ts +15 -2
  74. package/dist/services/compact/auto-compact.d.ts.map +1 -1
  75. package/dist/services/compact/auto-compact.js +56 -24
  76. package/dist/services/compact/auto-compact.js.map +1 -1
  77. package/dist/services/compact/compact.d.ts +2 -0
  78. package/dist/services/compact/compact.d.ts.map +1 -1
  79. package/dist/services/compact/compact.js +22 -5
  80. package/dist/services/compact/compact.js.map +1 -1
  81. package/dist/services/compact/coordinator.d.ts +26 -0
  82. package/dist/services/compact/coordinator.d.ts.map +1 -0
  83. package/dist/services/compact/coordinator.js +44 -0
  84. package/dist/services/compact/coordinator.js.map +1 -0
  85. package/dist/services/compact/index.d.ts +1 -0
  86. package/dist/services/compact/index.d.ts.map +1 -1
  87. package/dist/services/compact/index.js +3 -1
  88. package/dist/services/compact/index.js.map +1 -1
  89. package/dist/services/compact/summary-generator.d.ts +6 -2
  90. package/dist/services/compact/summary-generator.d.ts.map +1 -1
  91. package/dist/services/compact/summary-generator.js +73 -31
  92. package/dist/services/compact/summary-generator.js.map +1 -1
  93. package/dist/services/config-dir.d.ts +11 -1
  94. package/dist/services/config-dir.d.ts.map +1 -1
  95. package/dist/services/config-dir.js +19 -2
  96. package/dist/services/config-dir.js.map +1 -1
  97. package/dist/services/config.d.ts +4 -2
  98. package/dist/services/config.d.ts.map +1 -1
  99. package/dist/services/config.js +40 -0
  100. package/dist/services/config.js.map +1 -1
  101. package/dist/services/doctor.d.ts +2 -0
  102. package/dist/services/doctor.d.ts.map +1 -1
  103. package/dist/services/doctor.js +8 -1
  104. package/dist/services/doctor.js.map +1 -1
  105. package/dist/services/global-config.d.ts +10 -0
  106. package/dist/services/global-config.d.ts.map +1 -1
  107. package/dist/services/global-config.js.map +1 -1
  108. package/dist/services/llm.d.ts +21 -4
  109. package/dist/services/llm.d.ts.map +1 -1
  110. package/dist/services/llm.js +66 -8
  111. package/dist/services/llm.js.map +1 -1
  112. package/dist/services/model-context.d.ts +36 -0
  113. package/dist/services/model-context.d.ts.map +1 -1
  114. package/dist/services/model-context.js +238 -32
  115. package/dist/services/model-context.js.map +1 -1
  116. package/dist/services/redaction.js +1 -1
  117. package/dist/services/redaction.js.map +1 -1
  118. package/dist/services/session-storage.d.ts +39 -1
  119. package/dist/services/session-storage.d.ts.map +1 -1
  120. package/dist/services/session-storage.js +121 -27
  121. package/dist/services/session-storage.js.map +1 -1
  122. package/dist/services/usage-state.d.ts +55 -5
  123. package/dist/services/usage-state.d.ts.map +1 -1
  124. package/dist/services/usage-state.js +185 -59
  125. package/dist/services/usage-state.js.map +1 -1
  126. package/dist/services/verification-profile.d.ts.map +1 -1
  127. package/dist/services/verification-profile.js +3 -2
  128. package/dist/services/verification-profile.js.map +1 -1
  129. package/dist/services/workspace-diff.d.ts.map +1 -1
  130. package/dist/services/workspace-diff.js +34 -3
  131. package/dist/services/workspace-diff.js.map +1 -1
  132. package/dist/services/yaml-config.js +1 -1
  133. package/dist/skills/runtime.d.ts +9 -5
  134. package/dist/skills/runtime.d.ts.map +1 -1
  135. package/dist/skills/runtime.js +157 -12
  136. package/dist/skills/runtime.js.map +1 -1
  137. package/dist/terminal-ui/launch.d.ts +2 -0
  138. package/dist/terminal-ui/launch.d.ts.map +1 -1
  139. package/dist/terminal-ui/launch.js +65 -21
  140. package/dist/terminal-ui/launch.js.map +1 -1
  141. package/dist/terminal-ui/raw-editor.d.ts +9 -0
  142. package/dist/terminal-ui/raw-editor.d.ts.map +1 -1
  143. package/dist/terminal-ui/raw-editor.js +207 -30
  144. package/dist/terminal-ui/raw-editor.js.map +1 -1
  145. package/dist/tools/bash_security.d.ts.map +1 -1
  146. package/dist/tools/bash_security.js +14 -5
  147. package/dist/tools/bash_security.js.map +1 -1
  148. package/dist/tools/index.d.ts.map +1 -1
  149. package/dist/tools/index.js +48 -20
  150. package/dist/tools/index.js.map +1 -1
  151. package/dist/tools/plan.d.ts.map +1 -1
  152. package/dist/tools/plan.js +7 -0
  153. package/dist/tools/plan.js.map +1 -1
  154. package/dist/tools/web.d.ts +10 -0
  155. package/dist/tools/web.d.ts.map +1 -1
  156. package/dist/tools/web.js +81 -1
  157. package/dist/tools/web.js.map +1 -1
  158. package/dist/tui-core/input-parser.d.ts +1 -1
  159. package/dist/tui-core/input-parser.d.ts.map +1 -1
  160. package/dist/tui-core/input-parser.js +20 -1
  161. package/dist/tui-core/input-parser.js.map +1 -1
  162. package/dist/tui-core/style.d.ts +16 -0
  163. package/dist/tui-core/style.d.ts.map +1 -1
  164. package/dist/tui-core/style.js +22 -1
  165. package/dist/tui-core/style.js.map +1 -1
  166. package/dist/tui-ui/inline-surface.d.ts +62 -11
  167. package/dist/tui-ui/inline-surface.d.ts.map +1 -1
  168. package/dist/tui-ui/inline-surface.js +343 -92
  169. package/dist/tui-ui/inline-surface.js.map +1 -1
  170. package/dist/tui-ui/launch.d.ts +1 -0
  171. package/dist/tui-ui/launch.d.ts.map +1 -1
  172. package/dist/tui-ui/launch.js +185 -41
  173. package/dist/tui-ui/launch.js.map +1 -1
  174. package/dist/tui-ui/layout.d.ts +51 -2
  175. package/dist/tui-ui/layout.d.ts.map +1 -1
  176. package/dist/tui-ui/layout.js +226 -76
  177. package/dist/tui-ui/layout.js.map +1 -1
  178. package/dist/tui-ui/runner.d.ts +69 -8
  179. package/dist/tui-ui/runner.d.ts.map +1 -1
  180. package/dist/tui-ui/runner.js +304 -41
  181. package/dist/tui-ui/runner.js.map +1 -1
  182. package/dist/tui-ui/state.d.ts +5 -4
  183. package/dist/tui-ui/state.d.ts.map +1 -1
  184. package/dist/tui-ui/state.js +65 -19
  185. package/dist/tui-ui/state.js.map +1 -1
  186. package/dist/tui-ui/theme.d.ts +13 -0
  187. package/dist/tui-ui/theme.d.ts.map +1 -0
  188. package/dist/tui-ui/theme.js +20 -0
  189. package/dist/tui-ui/theme.js.map +1 -0
  190. package/dist/tui-ui/transcript-cache.d.ts +5 -3
  191. package/dist/tui-ui/transcript-cache.d.ts.map +1 -1
  192. package/dist/tui-ui/transcript-cache.js +16 -9
  193. package/dist/tui-ui/transcript-cache.js.map +1 -1
  194. package/dist/tui-ui/transcript-layout.d.ts +21 -0
  195. package/dist/tui-ui/transcript-layout.d.ts.map +1 -0
  196. package/dist/tui-ui/transcript-layout.js +398 -0
  197. package/dist/tui-ui/transcript-layout.js.map +1 -0
  198. package/dist/ui/status-bar.d.ts +1 -1
  199. package/dist/ui/status-bar.d.ts.map +1 -1
  200. package/dist/ui/status-bar.js +2 -15
  201. package/dist/ui/status-bar.js.map +1 -1
  202. package/dist/ui-v2/components/shell.d.ts.map +1 -1
  203. package/dist/ui-v2/components/shell.js +0 -8
  204. package/dist/ui-v2/components/shell.js.map +1 -1
  205. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"usage-state.d.ts","sourceRoot":"","sources":["../../src/services/usage-state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,CAAC,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AA4FD,wBAAgB,cAAc,IAAI,UAAU,CAkB3C;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAItD;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,GAAG,UAAU,CAUhG;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAG5C;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAMnE"}
1
+ {"version":3,"file":"usage-state.d.ts","sourceRoot":"","sources":["../../src/services/usage-state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEpE,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,CAAC,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,CAAC,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1E;AAgGD,wBAAgB,eAAe,IAAI,gBAAgB,EAAE,CAoBpD;AAED,wBAAgB,oBAAoB,CAAC,OAAO,qBAAoB,GAAG,kBAAkB,CAqBpF;AA0DD,wBAAgB,cAAc,IAAI,UAAU,CAc3C;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAQtD;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,GAClD,UAAU,CAUZ;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAG5C;AAED,8EAA8E;AAC9E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAMnE;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GACzD,gBAAgB,CAqBlB"}
@@ -1,20 +1,25 @@
1
1
  "use strict";
2
2
  /**
3
- * openhorse - runtime usage counters
3
+ * Durable runtime usage accounting.
4
4
  *
5
- * Usage counters are runtime state, not user configuration. They live in
6
- * ~/.openhorse/usage.json so ~/.openhorse/openhorse.json stays focused on
7
- * user-editable provider and behavior settings.
5
+ * Aggregate compatibility counters remain in usage.json. New model calls are
6
+ * written to an append-only JSONL ledger so totals survive sessions and can be
7
+ * audited or rebuilt after an interrupted write.
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.loadUsageLedger = loadUsageLedger;
11
+ exports.summarizeUsageLedger = summarizeUsageLedger;
10
12
  exports.loadUsageState = loadUsageState;
11
13
  exports.saveUsageState = saveUsageState;
12
14
  exports.updateUsageState = updateUsageState;
13
15
  exports.incrementSessionCount = incrementSessionCount;
14
16
  exports.updateTokenStats = updateTokenStats;
17
+ exports.appendUsageRecord = appendUsageRecord;
15
18
  const fs_1 = require("fs");
19
+ const crypto_1 = require("crypto");
20
+ const atomic_write_1 = require("./atomic-write");
16
21
  const config_dir_1 = require("./config-dir");
17
- const USAGE_SCHEMA_VERSION = 1;
22
+ const USAGE_SCHEMA_VERSION = 2;
18
23
  function nowIso() {
19
24
  return new Date().toISOString();
20
25
  }
@@ -23,27 +28,6 @@ function toNonNegativeNumber(value) {
23
28
  return 0;
24
29
  return value;
25
30
  }
26
- function defaultUsageState() {
27
- return {
28
- schemaVersion: USAGE_SCHEMA_VERSION,
29
- totalSessions: 0,
30
- totalTokens: 0,
31
- totalCost: 0,
32
- updatedAt: nowIso(),
33
- };
34
- }
35
- function normalizeUsageState(value) {
36
- if (!value || typeof value !== 'object')
37
- return defaultUsageState();
38
- const parsed = value;
39
- return {
40
- schemaVersion: USAGE_SCHEMA_VERSION,
41
- totalSessions: toNonNegativeNumber(parsed.totalSessions),
42
- totalTokens: toNonNegativeNumber(parsed.totalTokens),
43
- totalCost: toNonNegativeNumber(parsed.totalCost),
44
- updatedAt: typeof parsed.updatedAt === 'string' ? parsed.updatedAt : nowIso(),
45
- };
46
- }
47
31
  function readJsonFile(path) {
48
32
  if (!(0, fs_1.existsSync)(path))
49
33
  return null;
@@ -58,22 +42,139 @@ function hasLegacyUsageFields(value) {
58
42
  if (!value || typeof value !== 'object')
59
43
  return false;
60
44
  const record = value;
61
- return (record.totalSessions !== undefined ||
62
- record.totalTokens !== undefined ||
63
- record.totalCost !== undefined);
45
+ return (record.totalSessions !== undefined
46
+ || record.totalTokens !== undefined
47
+ || record.totalCost !== undefined);
64
48
  }
65
- function readLegacyUsageState() {
66
- const parsed = readJsonFile((0, config_dir_1.getGlobalConfigPath)());
67
- if (!hasLegacyUsageFields(parsed))
49
+ function emptyLedgerSummary() {
50
+ return {
51
+ promptTokens: 0,
52
+ completionTokens: 0,
53
+ totalTokens: 0,
54
+ totalCost: 0,
55
+ providerCost: 0,
56
+ estimatedCost: 0,
57
+ recordCount: 0,
58
+ bySource: {
59
+ provider: { cost: 0, count: 0 },
60
+ configured: { cost: 0, count: 0 },
61
+ builtin: { cost: 0, count: 0 },
62
+ fallback: { cost: 0, count: 0 },
63
+ },
64
+ byModel: {},
65
+ };
66
+ }
67
+ function isCostSource(value) {
68
+ return value === 'provider'
69
+ || value === 'configured'
70
+ || value === 'builtin'
71
+ || value === 'fallback';
72
+ }
73
+ function normalizeLedgerEntry(value) {
74
+ if (!value || typeof value !== 'object')
75
+ return null;
76
+ const entry = value;
77
+ if (typeof entry.model !== 'string' || !isCostSource(entry.costSource))
68
78
  return null;
69
79
  return {
70
- schemaVersion: USAGE_SCHEMA_VERSION,
80
+ schemaVersion: 1,
81
+ id: typeof entry.id === 'string' && entry.id ? entry.id : (0, crypto_1.randomUUID)(),
82
+ timestamp: typeof entry.timestamp === 'string' ? entry.timestamp : nowIso(),
83
+ ...(typeof entry.sessionId === 'string' ? { sessionId: entry.sessionId } : {}),
84
+ ...(typeof entry.projectPath === 'string' ? { projectPath: entry.projectPath } : {}),
85
+ model: entry.model,
86
+ promptTokens: toNonNegativeNumber(entry.promptTokens),
87
+ completionTokens: toNonNegativeNumber(entry.completionTokens),
88
+ cachedPromptTokens: toNonNegativeNumber(entry.cachedPromptTokens),
89
+ totalTokens: toNonNegativeNumber(entry.totalTokens),
90
+ costUsd: toNonNegativeNumber(entry.costUsd),
91
+ costSource: entry.costSource,
92
+ ...(typeof entry.requestId === 'string' ? { requestId: entry.requestId } : {}),
93
+ ...(typeof entry.requestKind === 'string' ? { requestKind: entry.requestKind } : {}),
94
+ ...(typeof entry.agentId === 'string' ? { agentId: entry.agentId } : {}),
95
+ ...(typeof entry.taskId === 'string' ? { taskId: entry.taskId } : {}),
96
+ };
97
+ }
98
+ function loadUsageLedger() {
99
+ const path = (0, config_dir_1.getUsageLedgerPath)();
100
+ if (!(0, fs_1.existsSync)(path))
101
+ return [];
102
+ const entries = [];
103
+ const seen = new Set();
104
+ for (const line of (0, fs_1.readFileSync)(path, 'utf-8').split('\n')) {
105
+ if (!line.trim())
106
+ continue;
107
+ try {
108
+ const entry = normalizeLedgerEntry(JSON.parse(line));
109
+ if (!entry)
110
+ continue;
111
+ const dedupeKey = entry.requestId || entry.id;
112
+ if (seen.has(dedupeKey))
113
+ continue;
114
+ seen.add(dedupeKey);
115
+ entries.push(entry);
116
+ }
117
+ catch {
118
+ // Ignore a corrupt or interrupted trailing line; earlier records remain valid.
119
+ }
120
+ }
121
+ return entries;
122
+ }
123
+ function summarizeUsageLedger(entries = loadUsageLedger()) {
124
+ const summary = emptyLedgerSummary();
125
+ for (const entry of entries) {
126
+ summary.promptTokens += entry.promptTokens;
127
+ summary.completionTokens += entry.completionTokens;
128
+ summary.totalTokens += entry.totalTokens;
129
+ summary.totalCost += entry.costUsd;
130
+ summary.recordCount++;
131
+ summary.bySource[entry.costSource].cost += entry.costUsd;
132
+ summary.bySource[entry.costSource].count++;
133
+ if (entry.costSource === 'provider')
134
+ summary.providerCost += entry.costUsd;
135
+ else
136
+ summary.estimatedCost += entry.costUsd;
137
+ if (!summary.byModel[entry.model]) {
138
+ summary.byModel[entry.model] = { tokens: 0, cost: 0, count: 0 };
139
+ }
140
+ summary.byModel[entry.model].tokens += entry.totalTokens;
141
+ summary.byModel[entry.model].cost += entry.costUsd;
142
+ summary.byModel[entry.model].count++;
143
+ }
144
+ return summary;
145
+ }
146
+ function normalizeStoredUsage(value) {
147
+ if (!value || typeof value !== 'object') {
148
+ return { totalSessions: 0, baselineTokens: 0, baselineCost: 0, updatedAt: nowIso() };
149
+ }
150
+ const parsed = value;
151
+ const isV2 = parsed.schemaVersion === USAGE_SCHEMA_VERSION;
152
+ return {
71
153
  totalSessions: toNonNegativeNumber(parsed.totalSessions),
72
- totalTokens: toNonNegativeNumber(parsed.totalTokens),
73
- totalCost: toNonNegativeNumber(parsed.totalCost),
74
- updatedAt: nowIso(),
154
+ baselineTokens: toNonNegativeNumber(isV2 ? parsed.baselineTokens : parsed.totalTokens),
155
+ baselineCost: toNonNegativeNumber(isV2 ? parsed.baselineCost : parsed.totalCost),
156
+ updatedAt: typeof parsed.updatedAt === 'string' ? parsed.updatedAt : nowIso(),
75
157
  };
76
158
  }
159
+ function buildUsageState(stored) {
160
+ const ledger = summarizeUsageLedger();
161
+ return {
162
+ schemaVersion: USAGE_SCHEMA_VERSION,
163
+ totalSessions: stored.totalSessions,
164
+ totalTokens: stored.baselineTokens + ledger.totalTokens,
165
+ totalCost: stored.baselineCost + ledger.totalCost,
166
+ providerCost: ledger.providerCost,
167
+ estimatedCost: stored.baselineCost + ledger.estimatedCost,
168
+ usageRecords: ledger.recordCount,
169
+ updatedAt: stored.updatedAt,
170
+ baselineTokens: stored.baselineTokens,
171
+ baselineCost: stored.baselineCost,
172
+ };
173
+ }
174
+ function writeUsageState(state) {
175
+ (0, config_dir_1.ensureConfigDir)();
176
+ (0, atomic_write_1.atomicWriteFileSync)((0, config_dir_1.getUsageStatePath)(), JSON.stringify(state, null, 2), { mode: 0o600 });
177
+ }
77
178
  function stripLegacyUsageFields() {
78
179
  const path = (0, config_dir_1.getGlobalConfigPath)();
79
180
  const parsed = readJsonFile(path);
@@ -83,49 +184,74 @@ function stripLegacyUsageFields() {
83
184
  void _totalSessions;
84
185
  void _totalTokens;
85
186
  void _totalCost;
86
- (0, fs_1.writeFileSync)(path, JSON.stringify(config, null, 2), { mode: 0o600 });
187
+ (0, atomic_write_1.atomicWriteFileSync)(path, JSON.stringify(config, null, 2), { mode: 0o600 });
87
188
  }
88
189
  function loadUsageState() {
89
190
  (0, config_dir_1.ensureConfigDir)();
90
- const path = (0, config_dir_1.getUsageStatePath)();
91
- const existing = readJsonFile(path);
92
- if (existing) {
93
- stripLegacyUsageFields();
94
- return normalizeUsageState(existing);
95
- }
96
- const migrated = readLegacyUsageState();
97
- if (migrated) {
98
- saveUsageState(migrated);
99
- stripLegacyUsageFields();
100
- return migrated;
191
+ const existing = readJsonFile((0, config_dir_1.getUsageStatePath)());
192
+ let stored = normalizeStoredUsage(existing);
193
+ if (!existing) {
194
+ const legacy = readJsonFile((0, config_dir_1.getGlobalConfigPath)());
195
+ if (hasLegacyUsageFields(legacy))
196
+ stored = normalizeStoredUsage(legacy);
101
197
  }
102
- return defaultUsageState();
198
+ const state = buildUsageState(stored);
199
+ writeUsageState(state);
200
+ stripLegacyUsageFields();
201
+ return state;
103
202
  }
104
203
  function saveUsageState(state) {
105
- (0, config_dir_1.ensureConfigDir)();
106
- const normalized = normalizeUsageState({ ...state, updatedAt: nowIso() });
107
- (0, fs_1.writeFileSync)((0, config_dir_1.getUsageStatePath)(), JSON.stringify(normalized, null, 2), { mode: 0o600 });
204
+ const normalized = buildUsageState({
205
+ totalSessions: toNonNegativeNumber(state.totalSessions),
206
+ baselineTokens: toNonNegativeNumber(state.baselineTokens),
207
+ baselineCost: toNonNegativeNumber(state.baselineCost),
208
+ updatedAt: nowIso(),
209
+ });
210
+ writeUsageState(normalized);
108
211
  }
109
212
  function updateUsageState(updates) {
110
213
  const current = loadUsageState();
111
- const next = normalizeUsageState({
112
- ...current,
113
- ...updates,
114
- schemaVersion: USAGE_SCHEMA_VERSION,
214
+ const next = buildUsageState({
215
+ totalSessions: toNonNegativeNumber(updates.totalSessions ?? current.totalSessions),
216
+ baselineTokens: toNonNegativeNumber(updates.baselineTokens ?? current.baselineTokens),
217
+ baselineCost: toNonNegativeNumber(updates.baselineCost ?? current.baselineCost),
115
218
  updatedAt: nowIso(),
116
219
  });
117
- saveUsageState(next);
220
+ writeUsageState(next);
118
221
  return next;
119
222
  }
120
223
  function incrementSessionCount() {
121
224
  const state = loadUsageState();
122
225
  updateUsageState({ totalSessions: state.totalSessions + 1 });
123
226
  }
227
+ /** Compatibility API: adds non-ledger counters to the pre-ledger baseline. */
124
228
  function updateTokenStats(tokens, cost) {
125
229
  const state = loadUsageState();
126
230
  updateUsageState({
127
- totalTokens: state.totalTokens + Math.max(0, tokens),
128
- totalCost: state.totalCost + Math.max(0, cost),
231
+ baselineTokens: state.baselineTokens + Math.max(0, tokens),
232
+ baselineCost: state.baselineCost + Math.max(0, cost),
129
233
  });
130
234
  }
235
+ function appendUsageRecord(record, context = {}) {
236
+ (0, config_dir_1.ensureConfigDir)();
237
+ const entry = {
238
+ schemaVersion: 1,
239
+ id: (0, crypto_1.randomUUID)(),
240
+ timestamp: record.timestamp.toISOString(),
241
+ ...context,
242
+ model: record.model,
243
+ promptTokens: record.promptTokens,
244
+ completionTokens: record.completionTokens,
245
+ cachedPromptTokens: record.cachedPromptTokens,
246
+ totalTokens: record.totalTokens,
247
+ costUsd: record.costUsd,
248
+ costSource: record.costSource,
249
+ ...(record.requestId ? { requestId: record.requestId } : {}),
250
+ ...(record.requestKind ? { requestKind: record.requestKind } : {}),
251
+ ...(record.agentId ? { agentId: record.agentId } : {}),
252
+ ...(record.taskId ? { taskId: record.taskId } : {}),
253
+ };
254
+ (0, fs_1.appendFileSync)((0, config_dir_1.getUsageLedgerPath)(), `${JSON.stringify(entry)}\n`, { encoding: 'utf-8', mode: 0o600 });
255
+ return entry;
256
+ }
131
257
  //# sourceMappingURL=usage-state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usage-state.js","sourceRoot":"","sources":["../../src/services/usage-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usage-state.js","sourceRoot":"","sources":["../../src/services/usage-state.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"verification-profile.d.ts","sourceRoot":"","sources":["../../src/services/verification-profile.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAChE,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACxC,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,2BAA2B,CA2DlF;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,SAAI,GAAG,OAAO,CAE1E;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAE1E;AAED,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAuBjF;AAkCD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAS9D;AAED,wBAAgB,gCAAgC,CAAC,MAAM,EAAE;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,yBAAyB,GAAG,IAAI,CAUnC;AA4BD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,yBAAyB,EAAE,GACnC,mBAAmB,CA+BrB;AAwBD,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAiFlG"}
1
+ {"version":3,"file":"verification-profile.d.ts","sourceRoot":"","sources":["../../src/services/verification-profile.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;IAChE,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACxC,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,2BAA2B,CA2DlF;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,SAAI,GAAG,OAAO,CAE1E;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAE1E;AAED,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAuBjF;AAkCD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAS9D;AAED,wBAAgB,gCAAgC,CAAC,MAAM,EAAE;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,yBAAyB,GAAG,IAAI,CAUnC;AA4BD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,yBAAyB,EAAE,GACnC,mBAAmB,CAgCrB;AAwBD,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAiFlG"}
@@ -27,6 +27,7 @@ function classifyCommandSafety(command) {
27
27
  { pattern: /\bkubectl\b/, reason: 'manages Kubernetes resources' },
28
28
  { pattern: /\bcurl\s+.*\|\s*sh\b/, reason: 'pipes remote content to shell' },
29
29
  { pattern: /\beval\b/, reason: 'evaluates arbitrary shell expressions' },
30
+ { pattern: /\bnode\s+-e\b/, reason: 'evaluates arbitrary Node.js code' },
30
31
  ];
31
32
  for (const { pattern, reason } of highRiskPatterns) {
32
33
  if (pattern.test(normalized)) {
@@ -57,7 +58,6 @@ function classifyCommandSafety(command) {
57
58
  { pattern: /\becho\b/, reason: 'prints text to output' },
58
59
  { pattern: /\bgit\s+status\b/, reason: 'shows repository status' },
59
60
  { pattern: /\bgit\s+diff\b/, reason: 'shows file differences' },
60
- { pattern: /\bnode\s+-e\b/, reason: 'evaluates a Node.js expression' },
61
61
  ];
62
62
  for (const { pattern, reason } of lowRiskPatterns) {
63
63
  if (pattern.test(normalized)) {
@@ -200,7 +200,8 @@ function summarizeVerificationState(profile, results) {
200
200
  failedCommands,
201
201
  missingCommands,
202
202
  claimAllowed: !profile.required
203
- || (expectedCommands.length > 0 && missingCommands.length === 0 && failedCommands.length === 0),
203
+ || expectedCommands.length === 0
204
+ || (missingCommands.length === 0 && failedCommands.length === 0),
204
205
  skippedReason,
205
206
  };
206
207
  }
@@ -1 +1 @@
1
- {"version":3,"file":"verification-profile.js","sourceRoot":"","sources":["../../src/services/verification-profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-profile.js","sourceRoot":"","sources":["../../src/services/verification-profile.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-diff.d.ts","sourceRoot":"","sources":["../../src/services/workspace-diff.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAuCD,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,oBAAyB,GAAG,mBAAmB,CA2C5F;AAcD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAoC5G"}
1
+ {"version":3,"file":"workspace-diff.d.ts","sourceRoot":"","sources":["../../src/services/workspace-diff.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAsED,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,oBAAyB,GAAG,mBAAmB,CA2C5F;AAcD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAoC5G"}
@@ -6,7 +6,10 @@ const child_process_1 = require("child_process");
6
6
  const fs_1 = require("fs");
7
7
  const path_1 = require("path");
8
8
  function runGit(args, cwd) {
9
- return (0, child_process_1.execFileSync)('git', args, {
9
+ // core.quotepath=false makes git emit non-ASCII paths as UTF-8 instead of
10
+ // C-style octal-escaped quoted strings (e.g. "uni\346\226\207.txt"), so the
11
+ // returned paths are the real filenames usable on the filesystem.
12
+ return (0, child_process_1.execFileSync)('git', ['-c', 'core.quotepath=false', ...args], {
10
13
  cwd,
11
14
  encoding: 'utf8',
12
15
  stdio: ['ignore', 'pipe', 'pipe'],
@@ -21,6 +24,31 @@ function tryGit(args, cwd) {
21
24
  return '';
22
25
  }
23
26
  }
27
+ /**
28
+ * Unquote a git C-quoted path (e.g. `"a\"b"` -> `a"b`, `"uni\346\226.txt"` ->
29
+ * the UTF-8 string). With core.quotepath=false git emits UTF-8 directly, but
30
+ * paths containing `"`, `\`, or control chars are still C-quoted, so this
31
+ * normalizes any remaining quoted form.
32
+ */
33
+ function unquoteGitPath(path) {
34
+ if (path.length < 2 || path[0] !== '"' || path[path.length - 1] !== '"')
35
+ return path;
36
+ const inner = path.slice(1, -1);
37
+ // Decode octal escapes (\NNN) and standard C escapes.
38
+ return inner.replace(/\\(?:([0-7]{1,3})|(.))/g, (_, oct, ch) => {
39
+ if (oct !== undefined) {
40
+ return Buffer.from([parseInt(oct, 8)]).toString('utf8');
41
+ }
42
+ switch (ch) {
43
+ case 'n': return '\n';
44
+ case 't': return '\t';
45
+ case 'r': return '\r';
46
+ case '"': return '"';
47
+ case '\\': return '\\';
48
+ default: return ch ?? '';
49
+ }
50
+ });
51
+ }
24
52
  function parseNameStatus(output) {
25
53
  if (!output.trim())
26
54
  return [];
@@ -29,7 +57,10 @@ function parseNameStatus(output) {
29
57
  .map(line => {
30
58
  const parts = line.split('\t');
31
59
  const status = parts[0] || '?';
32
- const path = parts.length > 2 ? `${parts[1]} -> ${parts[2]}` : parts[1] || line.slice(status.length).trim();
60
+ const rawPath = parts.length > 2 ? `${parts[1]} -> ${parts[2]}` : parts[1] || line.slice(status.length).trim();
61
+ const path = parts.length > 2
62
+ ? `${unquoteGitPath(parts[1])} -> ${unquoteGitPath(parts[2])}`
63
+ : unquoteGitPath(rawPath);
33
64
  return { status, path };
34
65
  });
35
66
  }
@@ -38,7 +69,7 @@ function parseUntracked(output) {
38
69
  return [];
39
70
  return output.split('\n')
40
71
  .filter(Boolean)
41
- .map(path => ({ status: '??', path }));
72
+ .map(path => ({ status: '??', path: unquoteGitPath(path) }));
42
73
  }
43
74
  function collectWorkspaceDiff(options = {}) {
44
75
  const cwd = (0, path_1.resolve)(options.cwd ?? process.cwd());
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-diff.js","sourceRoot":"","sources":["../../src/services/workspace-diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-diff.js","sourceRoot":"","sources":["../../src/services/workspace-diff.ts"],"names":[],"mappings":"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"}
@@ -154,7 +154,7 @@ openhorse:
154
154
 
155
155
  cli:
156
156
  theme: dark
157
- show_costs: true
157
+ show_costs: false
158
158
  `;
159
159
  return template;
160
160
  }
@@ -30,13 +30,17 @@ export interface SkillResolution {
30
30
  scopedToolNames: string[];
31
31
  toolScopeActive: boolean;
32
32
  }
33
+ export interface ParsedSkillCommandInput {
34
+ skillName?: string;
35
+ skillPath?: string;
36
+ task: string;
37
+ }
38
+ export declare const MAX_EXPLICIT_SKILL_BYTES: number;
33
39
  export declare function resolveSkillsForTurn(context: SkillRuntimeContext): SkillResolution;
34
- export declare function hasMatchingSkill(input: string): boolean;
40
+ export declare function hasMatchingSkill(input: string, cwd?: string): boolean;
35
41
  export declare function resolveSkillResourcePath(skill: AppliedSkill | SkillDefinition, relativePath: string): string;
36
42
  export declare function normalizeRequestedSkillName(input: string): string;
37
- export declare function parseSkillCommandInput(input: string): {
38
- skillName?: string;
39
- task: string;
40
- };
43
+ export declare function parseSkillCommandInput(input: string): ParsedSkillCommandInput;
44
+ export declare function loadExplicitSkillReference(input: string, cwd?: string): SkillDefinition | undefined;
41
45
  export declare function skillActivationNames(skill: Pick<SkillDefinition, 'name' | 'aliases' | 'tags'>): string[];
42
46
  //# sourceMappingURL=runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/skills/runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG/C,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,eAAe,CAqBlF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIvD;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,YAAY,GAAG,eAAe,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAa5G;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOjE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAQ1F;AA0BD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,MAAM,EAAE,CAmBxG"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/skills/runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG/C,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAQD,eAAO,MAAM,wBAAwB,QAAY,CAAC;AAElD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,eAAe,CAwBlF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,OAAO,CAOpF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,YAAY,GAAG,eAAe,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAa5G;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWjE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,uBAAuB,CAwB7E;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,EACb,GAAG,GAAE,MAAsB,GAC1B,eAAe,GAAG,SAAS,CAyC7B;AAgGD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,MAAM,EAAE,CAmBxG"}