@zhijiewang/openharness 0.5.0 → 0.6.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.
Files changed (186) hide show
  1. package/README.md +1 -5
  2. package/dist/commands/cybergotchi.d.ts.map +1 -1
  3. package/dist/commands/cybergotchi.js +22 -19
  4. package/dist/commands/cybergotchi.js.map +1 -1
  5. package/dist/components/App.d.ts +1 -1
  6. package/dist/components/App.d.ts.map +1 -1
  7. package/dist/components/App.js +58 -2
  8. package/dist/components/App.js.map +1 -1
  9. package/dist/components/CompanionFooter.d.ts +9 -0
  10. package/dist/components/CompanionFooter.d.ts.map +1 -0
  11. package/dist/components/CompanionFooter.js +13 -0
  12. package/dist/components/CompanionFooter.js.map +1 -0
  13. package/dist/components/CybergotchiBubble.d.ts +2 -1
  14. package/dist/components/CybergotchiBubble.d.ts.map +1 -1
  15. package/dist/components/CybergotchiBubble.js +4 -5
  16. package/dist/components/CybergotchiBubble.js.map +1 -1
  17. package/dist/components/CybergotchiPanel.d.ts +5 -4
  18. package/dist/components/CybergotchiPanel.d.ts.map +1 -1
  19. package/dist/components/CybergotchiPanel.js +4 -2
  20. package/dist/components/CybergotchiPanel.js.map +1 -1
  21. package/dist/components/CybergotchiPanelConnected.js +4 -4
  22. package/dist/components/CybergotchiPanelConnected.js.map +1 -1
  23. package/dist/components/CybergotchiSetup.d.ts.map +1 -1
  24. package/dist/components/CybergotchiSetup.js +25 -61
  25. package/dist/components/CybergotchiSetup.js.map +1 -1
  26. package/dist/components/CybergotchiSprite.d.ts +5 -4
  27. package/dist/components/CybergotchiSprite.d.ts.map +1 -1
  28. package/dist/components/CybergotchiSprite.js +16 -9
  29. package/dist/components/CybergotchiSprite.js.map +1 -1
  30. package/dist/components/DiffView.d.ts +27 -0
  31. package/dist/components/DiffView.d.ts.map +1 -0
  32. package/dist/components/DiffView.js +74 -0
  33. package/dist/components/DiffView.js.map +1 -0
  34. package/dist/components/Messages.js +1 -1
  35. package/dist/components/Messages.js.map +1 -1
  36. package/dist/components/PermissionPrompt.d.ts.map +1 -1
  37. package/dist/components/PermissionPrompt.js +61 -8
  38. package/dist/components/PermissionPrompt.js.map +1 -1
  39. package/dist/components/REPL.d.ts.map +1 -1
  40. package/dist/components/REPL.js +75 -21
  41. package/dist/components/REPL.js.map +1 -1
  42. package/dist/components/TextInput.d.ts +2 -1
  43. package/dist/components/TextInput.d.ts.map +1 -1
  44. package/dist/components/TextInput.js +110 -6
  45. package/dist/components/TextInput.js.map +1 -1
  46. package/dist/cybergotchi/bones.d.ts +12 -0
  47. package/dist/cybergotchi/bones.d.ts.map +1 -0
  48. package/dist/cybergotchi/bones.js +89 -0
  49. package/dist/cybergotchi/bones.js.map +1 -0
  50. package/dist/cybergotchi/config.d.ts +14 -4
  51. package/dist/cybergotchi/config.d.ts.map +1 -1
  52. package/dist/cybergotchi/config.js +62 -9
  53. package/dist/cybergotchi/config.js.map +1 -1
  54. package/dist/cybergotchi/needs.d.ts +4 -4
  55. package/dist/cybergotchi/needs.d.ts.map +1 -1
  56. package/dist/cybergotchi/needs.js.map +1 -1
  57. package/dist/cybergotchi/personality.d.ts +11 -0
  58. package/dist/cybergotchi/personality.d.ts.map +1 -0
  59. package/dist/cybergotchi/personality.js +26 -0
  60. package/dist/cybergotchi/personality.js.map +1 -0
  61. package/dist/cybergotchi/species.d.ts +0 -1
  62. package/dist/cybergotchi/species.d.ts.map +1 -1
  63. package/dist/cybergotchi/species.js +253 -229
  64. package/dist/cybergotchi/species.js.map +1 -1
  65. package/dist/cybergotchi/types.d.ts +45 -7
  66. package/dist/cybergotchi/types.d.ts.map +1 -1
  67. package/dist/cybergotchi/types.js +36 -5
  68. package/dist/cybergotchi/types.js.map +1 -1
  69. package/dist/cybergotchi/useCybergotchi.d.ts +7 -5
  70. package/dist/cybergotchi/useCybergotchi.d.ts.map +1 -1
  71. package/dist/cybergotchi/useCybergotchi.js +27 -16
  72. package/dist/cybergotchi/useCybergotchi.js.map +1 -1
  73. package/dist/git/index.d.ts +9 -0
  74. package/dist/git/index.d.ts.map +1 -1
  75. package/dist/git/index.js +31 -0
  76. package/dist/git/index.js.map +1 -1
  77. package/dist/harness/config.d.ts +5 -0
  78. package/dist/harness/config.d.ts.map +1 -1
  79. package/dist/harness/config.js.map +1 -1
  80. package/dist/harness/credentials.d.ts +24 -0
  81. package/dist/harness/credentials.d.ts.map +1 -0
  82. package/dist/harness/credentials.js +104 -0
  83. package/dist/harness/credentials.js.map +1 -0
  84. package/dist/harness/hooks.d.ts +8 -0
  85. package/dist/harness/hooks.d.ts.map +1 -1
  86. package/dist/harness/hooks.js +98 -22
  87. package/dist/harness/hooks.js.map +1 -1
  88. package/dist/harness/keybindings.d.ts +37 -0
  89. package/dist/harness/keybindings.d.ts.map +1 -0
  90. package/dist/harness/keybindings.js +134 -0
  91. package/dist/harness/keybindings.js.map +1 -0
  92. package/dist/harness/memory.d.ts +35 -0
  93. package/dist/harness/memory.d.ts.map +1 -0
  94. package/dist/harness/memory.js +115 -0
  95. package/dist/harness/memory.js.map +1 -0
  96. package/dist/harness/plugins.d.ts +57 -0
  97. package/dist/harness/plugins.d.ts.map +1 -0
  98. package/dist/harness/plugins.js +142 -0
  99. package/dist/harness/plugins.js.map +1 -0
  100. package/dist/harness/session.d.ts +5 -0
  101. package/dist/harness/session.d.ts.map +1 -1
  102. package/dist/harness/session.js +39 -1
  103. package/dist/harness/session.js.map +1 -1
  104. package/dist/lsp/client.d.ts +58 -0
  105. package/dist/lsp/client.d.ts.map +1 -0
  106. package/dist/lsp/client.js +174 -0
  107. package/dist/lsp/client.js.map +1 -0
  108. package/dist/main.js +161 -1
  109. package/dist/main.js.map +1 -1
  110. package/dist/mcp/DeferredMcpTool.d.ts +30 -0
  111. package/dist/mcp/DeferredMcpTool.d.ts.map +1 -0
  112. package/dist/mcp/DeferredMcpTool.js +75 -0
  113. package/dist/mcp/DeferredMcpTool.js.map +1 -0
  114. package/dist/mcp/client.d.ts +7 -0
  115. package/dist/mcp/client.d.ts.map +1 -1
  116. package/dist/mcp/client.js +56 -8
  117. package/dist/mcp/client.js.map +1 -1
  118. package/dist/mcp/loader.d.ts +9 -0
  119. package/dist/mcp/loader.d.ts.map +1 -1
  120. package/dist/mcp/loader.js +43 -2
  121. package/dist/mcp/loader.js.map +1 -1
  122. package/dist/mcp/schema.d.ts +7 -0
  123. package/dist/mcp/schema.d.ts.map +1 -0
  124. package/dist/mcp/schema.js +41 -0
  125. package/dist/mcp/schema.js.map +1 -0
  126. package/dist/mcp/server.d.ts +16 -0
  127. package/dist/mcp/server.d.ts.map +1 -0
  128. package/dist/mcp/server.js +94 -0
  129. package/dist/mcp/server.js.map +1 -0
  130. package/dist/providers/anthropic.d.ts +1 -1
  131. package/dist/providers/anthropic.d.ts.map +1 -1
  132. package/dist/providers/anthropic.js.map +1 -1
  133. package/dist/providers/base.d.ts +15 -0
  134. package/dist/providers/base.d.ts.map +1 -1
  135. package/dist/providers/base.js +13 -1
  136. package/dist/providers/base.js.map +1 -1
  137. package/dist/providers/openai.d.ts +1 -1
  138. package/dist/providers/openai.d.ts.map +1 -1
  139. package/dist/providers/openai.js.map +1 -1
  140. package/dist/query.d.ts.map +1 -1
  141. package/dist/query.js +91 -14
  142. package/dist/query.js.map +1 -1
  143. package/dist/remote/server.d.ts +31 -0
  144. package/dist/remote/server.d.ts.map +1 -0
  145. package/dist/remote/server.js +163 -0
  146. package/dist/remote/server.js.map +1 -0
  147. package/dist/services/AgentDispatcher.d.ts +42 -0
  148. package/dist/services/AgentDispatcher.d.ts.map +1 -0
  149. package/dist/services/AgentDispatcher.js +181 -0
  150. package/dist/services/AgentDispatcher.js.map +1 -0
  151. package/dist/services/StreamingToolExecutor.d.ts +2 -1
  152. package/dist/services/StreamingToolExecutor.d.ts.map +1 -1
  153. package/dist/services/StreamingToolExecutor.js +11 -2
  154. package/dist/services/StreamingToolExecutor.js.map +1 -1
  155. package/dist/tools/AgentTool/index.d.ts +3 -0
  156. package/dist/tools/AgentTool/index.d.ts.map +1 -1
  157. package/dist/tools/AgentTool/index.js +54 -16
  158. package/dist/tools/AgentTool/index.js.map +1 -1
  159. package/dist/tools/DiagnosticsTool/index.d.ts +21 -0
  160. package/dist/tools/DiagnosticsTool/index.d.ts.map +1 -0
  161. package/dist/tools/DiagnosticsTool/index.js +108 -0
  162. package/dist/tools/DiagnosticsTool/index.js.map +1 -0
  163. package/dist/tools/GrepTool/index.d.ts +2 -2
  164. package/dist/tools/ParallelAgentTool/index.d.ts +37 -0
  165. package/dist/tools/ParallelAgentTool/index.d.ts.map +1 -0
  166. package/dist/tools/ParallelAgentTool/index.js +53 -0
  167. package/dist/tools/ParallelAgentTool/index.js.map +1 -0
  168. package/dist/tools/SkillTool/index.d.ts.map +1 -1
  169. package/dist/tools/SkillTool/index.js +22 -27
  170. package/dist/tools/SkillTool/index.js.map +1 -1
  171. package/dist/tools/ToolSearchTool/index.d.ts +15 -0
  172. package/dist/tools/ToolSearchTool/index.d.ts.map +1 -0
  173. package/dist/tools/ToolSearchTool/index.js +50 -0
  174. package/dist/tools/ToolSearchTool/index.js.map +1 -0
  175. package/dist/tools.d.ts.map +1 -1
  176. package/dist/tools.js +9 -0
  177. package/dist/tools.js.map +1 -1
  178. package/dist/types/message.d.ts +2 -0
  179. package/dist/types/message.d.ts.map +1 -1
  180. package/dist/types/message.js +3 -0
  181. package/dist/types/message.js.map +1 -1
  182. package/dist/types/permissions.d.ts +2 -0
  183. package/dist/types/permissions.d.ts.map +1 -1
  184. package/dist/types/permissions.js +30 -0
  185. package/dist/types/permissions.js.map +1 -1
  186. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"species.js","sourceRoot":"","sources":["../../src/cybergotchi/species.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"species.js","sourceRoot":"","sources":["../../src/cybergotchi/species.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,20 @@
1
- export type Emotion = 'idle' | 'happy' | 'thinking' | 'alarm' | 'snark' | 'cheer';
1
+ export type Emotion = 'idle' | 'happy' | 'alarm';
2
2
  export type Stat = 'DEBUGGING' | 'PATIENCE' | 'CHAOS' | 'WISDOM' | 'SNARK';
3
3
  export type HatKey = 'none' | 'cap' | 'crown' | 'beanie' | 'tophat' | 'halo';
4
+ export type Rarity = 'common' | 'uncommon' | 'rare' | 'epic' | 'legendary';
4
5
  export declare const EYE_STYLES: string[];
5
6
  export declare const HAT_ART: Record<HatKey, string | null>;
7
+ /** Rarity tiers with weights (must sum to 100) and stat floors */
8
+ export declare const RARITY_TIERS: {
9
+ rarity: Rarity;
10
+ weight: number;
11
+ statFloor: number;
12
+ }[];
13
+ /** Hats available per rarity tier and above */
14
+ export declare const RARITY_HATS: Record<Rarity, HatKey[]>;
15
+ /** Color for each rarity tier in terminal */
16
+ export declare const RARITY_COLORS: Record<Rarity, string>;
17
+ export declare const RARITY_STARS: Record<Rarity, string>;
6
18
  export interface Needs {
7
19
  hunger: number;
8
20
  energy: number;
@@ -15,25 +27,51 @@ export interface LifetimeStats {
15
27
  totalTasksCompleted: number;
16
28
  longestStreak: number;
17
29
  }
18
- export interface CybergotchiConfig {
30
+ /** Bones deterministic traits recomputed from seed every session */
31
+ export interface CompanionBones {
19
32
  species: string;
33
+ rarity: Rarity;
34
+ isShiny: boolean;
35
+ baseStats: Record<Stat, number>;
36
+ eyeStyle: number;
37
+ }
38
+ /** Soul — persistent traits generated once at hatch */
39
+ export interface CompanionSoul {
20
40
  name: string;
21
- stats: Record<Stat, number>;
41
+ personality: string;
22
42
  hat: HatKey;
23
- eyeStyle: number;
43
+ }
44
+ /** Persistent config saved to disk */
45
+ export interface CompanionConfig {
46
+ seed: string;
47
+ soul: CompanionSoul;
24
48
  needs: Needs;
25
49
  needsUpdatedAt: number;
26
50
  currentStreak: number;
27
51
  lifetime: LifetimeStats;
28
52
  evolutionStage: 0 | 1 | 2;
29
53
  }
30
- export declare const DEFAULT_NEEDS: Needs;
31
- export declare const DEFAULT_LIFETIME: LifetimeStats;
32
- export interface CybergotchiState {
54
+ /** Runtime state merged from bones + disk config */
55
+ export interface CompanionRuntime {
56
+ bones: CompanionBones;
57
+ soul: CompanionSoul;
58
+ needs: Needs;
59
+ needsUpdatedAt: number;
60
+ currentStreak: number;
61
+ lifetime: LifetimeStats;
62
+ evolutionStage: 0 | 1 | 2;
63
+ }
64
+ export interface CompanionState {
33
65
  emotion: Emotion;
34
66
  frame: number;
35
67
  speech: string | null;
36
68
  speechTtl: number;
37
69
  }
70
+ export type CybergotchiConfig = CompanionConfig & {
71
+ bones?: CompanionBones;
72
+ };
73
+ export type CybergotchiState = CompanionState;
74
+ export declare const DEFAULT_NEEDS: Needs;
75
+ export declare const DEFAULT_LIFETIME: LifetimeStats;
38
76
  export declare const DEFAULT_STATS: Record<Stat, number>;
39
77
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cybergotchi/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAElF,MAAM,MAAM,IAAI,GAAG,WAAW,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3E,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7E,eAAO,MAAM,UAAU,EAAE,MAAM,EAA+C,CAAC;AAE/E,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAOjD,CAAC;AAEF,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,aAAa,CAAC;IACxB,cAAc,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,EAAE,KAI3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,aAM9B,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAM9C,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cybergotchi/types.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,42 @@
1
1
  export const EYE_STYLES = ['o o', '^ ^', '- -', '> <', '* *', '~ ~'];
2
2
  export const HAT_ART = {
3
3
  none: null,
4
- cap: ' [___] ',
5
- crown: ' /\\|/\\ ',
6
- beanie: ' (~~~~) ',
7
- tophat: ' [=====] ',
8
- halo: ' ( o ) ',
4
+ cap: ' [___] ',
5
+ crown: ' /\\|/\\ ',
6
+ beanie: ' (~~~~) ',
7
+ tophat: ' [=====]',
8
+ halo: ' ( o ) ',
9
+ };
10
+ /** Rarity tiers with weights (must sum to 100) and stat floors */
11
+ export const RARITY_TIERS = [
12
+ { rarity: 'common', weight: 60, statFloor: 5 },
13
+ { rarity: 'uncommon', weight: 25, statFloor: 15 },
14
+ { rarity: 'rare', weight: 10, statFloor: 25 },
15
+ { rarity: 'epic', weight: 4, statFloor: 35 },
16
+ { rarity: 'legendary', weight: 1, statFloor: 50 },
17
+ ];
18
+ /** Hats available per rarity tier and above */
19
+ export const RARITY_HATS = {
20
+ common: ['none'],
21
+ uncommon: ['none', 'crown', 'cap'],
22
+ rare: ['none', 'crown', 'cap', 'halo', 'beanie'],
23
+ epic: ['none', 'crown', 'cap', 'halo', 'beanie', 'tophat'],
24
+ legendary: ['none', 'crown', 'cap', 'halo', 'beanie', 'tophat'],
25
+ };
26
+ /** Color for each rarity tier in terminal */
27
+ export const RARITY_COLORS = {
28
+ common: 'cyan',
29
+ uncommon: 'green',
30
+ rare: 'blue',
31
+ epic: 'magenta',
32
+ legendary: 'yellow',
33
+ };
34
+ export const RARITY_STARS = {
35
+ common: '★',
36
+ uncommon: '★★',
37
+ rare: '★★★',
38
+ epic: '★★★★',
39
+ legendary: '★★★★★',
9
40
  };
10
41
  export const DEFAULT_NEEDS = {
11
42
  hunger: 80,
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/cybergotchi/types.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,UAAU,GAAa,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,OAAO,GAAkC;IACpD,IAAI,EAAI,IAAI;IACZ,GAAG,EAAK,aAAa;IACrB,KAAK,EAAG,aAAa;IACrB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAI,aAAa;CACtB,CAAC;AA6BF,MAAM,CAAC,MAAM,aAAa,GAAU;IAClC,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,EAAE;CACd,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAkB;IAC7C,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,CAAC;IACf,WAAW,EAAE,CAAC;IACd,mBAAmB,EAAE,CAAC;IACtB,aAAa,EAAE,CAAC;CACjB,CAAC;AASF,MAAM,CAAC,MAAM,aAAa,GAAyB;IACjD,SAAS,EAAE,EAAE;IACb,QAAQ,EAAG,EAAE;IACb,KAAK,EAAM,EAAE;IACb,MAAM,EAAK,EAAE;IACb,KAAK,EAAM,EAAE;CACd,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/cybergotchi/types.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,UAAU,GAAa,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,OAAO,GAAkC;IACpD,IAAI,EAAI,IAAI;IACZ,GAAG,EAAK,WAAW;IACnB,KAAK,EAAG,YAAY;IACpB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAI,UAAU;CACnB,CAAC;AAEF,kEAAkE;AAClE,MAAM,CAAC,MAAM,YAAY,GAA4D;IACnF,EAAE,MAAM,EAAE,QAAQ,EAAK,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;IACjD,EAAE,MAAM,EAAE,UAAU,EAAG,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAClD,EAAE,MAAM,EAAE,MAAM,EAAO,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAClD,EAAE,MAAM,EAAE,MAAM,EAAO,MAAM,EAAE,CAAC,EAAG,SAAS,EAAE,EAAE,EAAE;IAClD,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,EAAG,SAAS,EAAE,EAAE,EAAE;CACnD,CAAC;AAEF,+CAA+C;AAC/C,MAAM,CAAC,MAAM,WAAW,GAA6B;IACnD,MAAM,EAAK,CAAC,MAAM,CAAC;IACnB,QAAQ,EAAG,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;IACnC,IAAI,EAAO,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC;IACrD,IAAI,EAAO,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;IAC/D,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;CAChE,CAAC;AAEF,6CAA6C;AAC7C,MAAM,CAAC,MAAM,aAAa,GAA2B;IACnD,MAAM,EAAK,MAAM;IACjB,QAAQ,EAAG,OAAO;IAClB,IAAI,EAAO,MAAM;IACjB,IAAI,EAAO,SAAS;IACpB,SAAS,EAAE,QAAQ;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAA2B;IAClD,MAAM,EAAK,GAAG;IACd,QAAQ,EAAG,IAAI;IACf,IAAI,EAAO,KAAK;IAChB,IAAI,EAAO,MAAM;IACjB,SAAS,EAAE,OAAO;CACnB,CAAC;AAiEF,MAAM,CAAC,MAAM,aAAa,GAAU;IAClC,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,EAAE;CACd,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAkB;IAC7C,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,CAAC;IACf,WAAW,EAAE,CAAC;IACd,mBAAmB,EAAE,CAAC;IACtB,aAAa,EAAE,CAAC;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAyB;IACjD,SAAS,EAAE,EAAE;IACb,QAAQ,EAAG,EAAE;IACb,KAAK,EAAM,EAAE;IACb,MAAM,EAAK,EAAE;IACb,KAAK,EAAM,EAAE;CACd,CAAC"}
@@ -1,10 +1,12 @@
1
- import type { CybergotchiConfig, CybergotchiState } from './types.js';
2
- interface UseCybergotchiResult {
3
- config: CybergotchiConfig | null;
4
- state: CybergotchiState;
1
+ import type { CompanionConfig, CompanionRuntime, CompanionState, CompanionBones } from './types.js';
2
+ interface UseCompanionResult {
3
+ config: CompanionConfig | null;
4
+ bones: CompanionBones | null;
5
+ runtime: CompanionRuntime | null;
6
+ state: CompanionState;
5
7
  isSetupNeeded: boolean;
6
8
  reload: () => void;
7
9
  }
8
- export declare function useCybergotchi(): UseCybergotchiResult;
10
+ export declare function useCybergotchi(): UseCompanionResult;
9
11
  export {};
10
12
  //# sourceMappingURL=useCybergotchi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCybergotchi.d.ts","sourceRoot":"","sources":["../../src/cybergotchi/useCybergotchi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAW,MAAM,YAAY,CAAC;AAa/E,UAAU,oBAAoB;IAC5B,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,gBAAgB,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAaD,wBAAgB,cAAc,IAAI,oBAAoB,CA8FrD"}
1
+ {"version":3,"file":"useCybergotchi.d.ts","sourceRoot":"","sources":["../../src/cybergotchi/useCybergotchi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAW,MAAM,YAAY,CAAC;AAc7G,UAAU,kBAAkB;IAC1B,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7B,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,cAAc,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAUD,wBAAgB,cAAc,IAAI,kBAAkB,CAkHnD"}
@@ -1,5 +1,6 @@
1
1
  import { useState, useEffect, useCallback, useRef } from 'react';
2
- import { loadCybergotchiConfig, saveCybergotchiConfig } from './config.js';
2
+ import { loadCompanionConfig, saveCompanionConfig } from './config.js';
3
+ import { roll } from './bones.js';
3
4
  import { cybergotchiEvents } from './events.js';
4
5
  import { getSpeech } from './speech.js';
5
6
  import { getSpecies } from './species.js';
@@ -13,20 +14,16 @@ function emotionFromNeeds(config) {
13
14
  const { hunger, energy, happiness } = config.needs;
14
15
  if (hunger < 20 || happiness < 20)
15
16
  return 'alarm';
16
- if (energy < 20)
17
- return 'thinking';
18
- if (happiness > 80 && hunger > 60 && energy > 60)
19
- return 'cheer';
20
17
  if (happiness > 60 && hunger > 50 && energy > 50)
21
18
  return 'happy';
22
- if (happiness < 40)
23
- return 'snark';
24
19
  return 'idle';
25
20
  }
26
21
  export function useCybergotchi() {
27
- const configRef = useRef(loadCybergotchiConfig());
22
+ const configRef = useRef(loadCompanionConfig());
28
23
  const [config, setConfigState] = useState(configRef.current);
29
24
  const isSetupNeeded = config === null;
25
+ // Compute bones from seed (deterministic, recomputed each session)
26
+ const bonesRef = useRef(config ? roll(config.seed) : null);
30
27
  const [state, setState] = useState({
31
28
  emotion: 'idle',
32
29
  frame: 0,
@@ -37,8 +34,9 @@ export function useCybergotchi() {
37
34
  const idleTicksRef = useRef(0);
38
35
  const saveTicksRef = useRef(0);
39
36
  const reload = useCallback(() => {
40
- const cfg = loadCybergotchiConfig();
37
+ const cfg = loadCompanionConfig();
41
38
  configRef.current = cfg;
39
+ bonesRef.current = cfg ? roll(cfg.seed) : null;
42
40
  setConfigState(cfg);
43
41
  }, []);
44
42
  // Event listener
@@ -51,9 +49,9 @@ export function useCybergotchi() {
51
49
  }, []);
52
50
  // Animation + needs tick
53
51
  useEffect(() => {
54
- if (!config)
52
+ if (!config || !bonesRef.current)
55
53
  return;
56
- const species = getSpecies(config.species);
54
+ const species = getSpecies(bonesRef.current.species);
57
55
  const tick = setInterval(() => {
58
56
  const cfg = configRef.current;
59
57
  if (!cfg)
@@ -64,8 +62,12 @@ export function useCybergotchi() {
64
62
  saveTicksRef.current += 1;
65
63
  if (saveTicksRef.current >= SAVE_INTERVAL_TICKS) {
66
64
  saveTicksRef.current = 0;
67
- saveCybergotchiConfig(cfg);
65
+ saveCompanionConfig(cfg);
68
66
  }
67
+ // Get stats from bones (recomputed deterministically)
68
+ const bones = bonesRef.current;
69
+ if (!bones)
70
+ return;
69
71
  setState(prev => {
70
72
  let { frame, speech, speechTtl } = prev;
71
73
  let emotion = emotionFromNeeds(cfg);
@@ -79,9 +81,9 @@ export function useCybergotchi() {
79
81
  if (speechTtl === 0 && eventQueue.current.length > 0) {
80
82
  const event = eventQueue.current.shift();
81
83
  const milestone = applyEvent(cfg, event.type);
82
- saveCybergotchiConfig(cfg);
84
+ saveCompanionConfig(cfg);
83
85
  emotion = emotionFromNeeds(cfg);
84
- speech = milestone ?? getSpeech(event.type, cfg.stats, event.toolName);
86
+ speech = milestone ?? getSpeech(event.type, bones.baseStats, event.toolName);
85
87
  speechTtl = SPEECH_TTL_TICKS;
86
88
  idleTicksRef.current = 0;
87
89
  }
@@ -90,7 +92,7 @@ export function useCybergotchi() {
90
92
  idleTicksRef.current += 1;
91
93
  if (idleTicksRef.current >= IDLE_INTERVAL_TICKS) {
92
94
  idleTicksRef.current = 0;
93
- speech = getSpeech('idle', cfg.stats);
95
+ speech = getSpeech('idle', bones.baseStats);
94
96
  speechTtl = SPEECH_TTL_TICKS;
95
97
  }
96
98
  }
@@ -102,6 +104,15 @@ export function useCybergotchi() {
102
104
  }, TICK_MS);
103
105
  return () => clearInterval(tick);
104
106
  }, [config]);
105
- return { config, state, isSetupNeeded, reload };
107
+ const runtime = config && bonesRef.current ? {
108
+ bones: bonesRef.current,
109
+ soul: config.soul,
110
+ needs: config.needs,
111
+ needsUpdatedAt: config.needsUpdatedAt,
112
+ currentStreak: config.currentStreak,
113
+ lifetime: config.lifetime,
114
+ evolutionStage: config.evolutionStage,
115
+ } : null;
116
+ return { config, bones: bonesRef.current, runtime, state, isSetupNeeded, reload };
106
117
  }
107
118
  //# sourceMappingURL=useCybergotchi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCybergotchi.js","sourceRoot":"","sources":["../../src/cybergotchi/useCybergotchi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useCybergotchi.js","sourceRoot":"","sources":["../../src/cybergotchi/useCybergotchi.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,15 @@ export declare function gitUndo(cwd?: string): boolean;
40
40
  * Get short log of recent commits.
41
41
  */
42
42
  export declare function gitLog(count?: number, cwd?: string): string;
43
+ /**
44
+ * Create an isolated git worktree for a sub-agent.
45
+ * Returns the worktree path, or null if not in a git repo.
46
+ */
47
+ export declare function createWorktree(cwd?: string): string | null;
48
+ /**
49
+ * Remove a git worktree and clean up.
50
+ */
51
+ export declare function removeWorktree(worktreePath: string, cwd?: string): void;
43
52
  /**
44
53
  * Commit user's dirty files before AI edits (Aider pattern).
45
54
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAM9C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAO3D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CASvD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAM5C;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAQhE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EAAE,EACf,GAAG,CAAC,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAmCf;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAY7C;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,KAAK,GAAE,MAAU,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAM9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAStD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAM9C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAO3D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CASvD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAM5C;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAQhE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EAAE,EACf,GAAG,CAAC,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAmCf;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAY7C;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,KAAK,GAAE,MAAU,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAM9D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY1D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAMvE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAStD"}
package/dist/git/index.js CHANGED
@@ -3,6 +3,7 @@
3
3
  * Inspired by Aider's git-native workflow.
4
4
  */
5
5
  import { execSync, spawnSync } from "node:child_process";
6
+ import { join } from "node:path";
6
7
  /**
7
8
  * Check if we're in a git repository.
8
9
  */
@@ -145,6 +146,36 @@ export function gitLog(count = 5, cwd) {
145
146
  return "";
146
147
  }
147
148
  }
149
+ /**
150
+ * Create an isolated git worktree for a sub-agent.
151
+ * Returns the worktree path, or null if not in a git repo.
152
+ */
153
+ export function createWorktree(cwd) {
154
+ if (!isGitRepo(cwd))
155
+ return null;
156
+ try {
157
+ const id = Date.now().toString(36) + Math.random().toString(36).slice(2, 6);
158
+ const worktreePath = join(cwd ?? process.cwd(), '..', `.oh-worktree-${id}`);
159
+ const branch = `oh-agent-${id}`;
160
+ // Create a detached worktree from HEAD
161
+ execSync(`git worktree add --detach "${worktreePath}"`, { cwd, stdio: 'pipe' });
162
+ return worktreePath;
163
+ }
164
+ catch {
165
+ return null;
166
+ }
167
+ }
168
+ /**
169
+ * Remove a git worktree and clean up.
170
+ */
171
+ export function removeWorktree(worktreePath, cwd) {
172
+ try {
173
+ execSync(`git worktree remove --force "${worktreePath}"`, { cwd, stdio: 'pipe' });
174
+ }
175
+ catch {
176
+ // Best effort cleanup
177
+ }
178
+ }
148
179
  /**
149
180
  * Commit user's dirty files before AI edits (Aider pattern).
150
181
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,10 @@ export type HooksConfig = {
20
20
  preToolUse?: HookDef[];
21
21
  postToolUse?: HookDef[];
22
22
  };
23
+ export type ToolPermissionRule = {
24
+ tool: string;
25
+ action: "allow" | "deny" | "ask";
26
+ };
23
27
  export type OhConfig = {
24
28
  provider: string;
25
29
  model: string;
@@ -28,6 +32,7 @@ export type OhConfig = {
28
32
  baseUrl?: string;
29
33
  mcpServers?: McpServerConfig[];
30
34
  hooks?: HooksConfig;
35
+ toolPermissions?: ToolPermissionRule[];
31
36
  };
32
37
  export declare function readOhConfig(root?: string): OhConfig | null;
33
38
  export declare function writeOhConfig(cfg: OhConfig, root?: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/harness/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AAUF,wBAAgB,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAQ3D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAkChE"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/harness/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,eAAe,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACxC,CAAC;AAUF,wBAAgB,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAQ3D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAkChE"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/harness/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAkCxC,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AAC1C,CAAC;AAED,SAAS,UAAU,CAAC,IAAa;IAC/B,OAAO,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,CAAC;QACH,OAAO,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAa,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAa,EAAE,IAAa;IACxD,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3B,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzD,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC/D,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,KAAK,UAAU,CAAC;QAC/C,MAAM,KAAK,GAAG;YACZ,6BAA6B;YAC7B,aAAa,GAAG,CAAC,QAAQ,EAAE;YAC3B,EAAE;YACF,UAAU;gBACR,CAAC,CAAC,yDAAyD;gBAC3D,CAAC,CAAC,2DAA2D;YAC/D,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,gFAAgF,CAAC,CAAC;YACzG,UAAU,UAAU,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE;YACvC,EAAE;YACF,UAAU;gBACR,CAAC,CAAC,oEAAoE;gBACtE,CAAC,CAAC,0DAA0D;YAC9D,wDAAwD;YACxD,YAAY,UAAU,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE;YACzG,EAAE;YACF,mBAAmB,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;SACpD,CAAC;QACF,IAAI,GAAG,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;YAC3B,2DAA2D;YAC3D,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAC1C,OAAO;IACT,CAAC;IAED,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/harness/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAwCxC,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AAC1C,CAAC;AAED,SAAS,UAAU,CAAC,IAAa;IAC/B,OAAO,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,CAAC;QACH,OAAO,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAa,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAa,EAAE,IAAa;IACxD,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3B,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzD,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC/D,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,KAAK,UAAU,CAAC;QAC/C,MAAM,KAAK,GAAG;YACZ,6BAA6B;YAC7B,aAAa,GAAG,CAAC,QAAQ,EAAE;YAC3B,EAAE;YACF,UAAU;gBACR,CAAC,CAAC,yDAAyD;gBAC3D,CAAC,CAAC,2DAA2D;YAC/D,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,gFAAgF,CAAC,CAAC;YACzG,UAAU,UAAU,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE;YACvC,EAAE;YACF,UAAU;gBACR,CAAC,CAAC,oEAAoE;gBACtE,CAAC,CAAC,0DAA0D;YAC9D,wDAAwD;YACxD,YAAY,UAAU,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE;YACzG,EAAE;YACF,mBAAmB,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;SACpD,CAAC;QACF,IAAI,GAAG,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;YAC3B,2DAA2D;YAC3D,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAC1C,OAAO;IACT,CAAC;IAED,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AACnC,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Secure credential storage — stores API keys encrypted on disk
3
+ * instead of plaintext in config.yaml.
4
+ *
5
+ * Uses AES-256-GCM with a key derived from machine identity.
6
+ * Not bulletproof (key derivation is deterministic from machine info),
7
+ * but far better than plaintext YAML.
8
+ */
9
+ /** Get a stored credential by key (e.g., "anthropic-api-key") */
10
+ export declare function getCredential(key: string): string | undefined;
11
+ /** Store a credential */
12
+ export declare function setCredential(key: string, value: string): void;
13
+ /** Delete a credential */
14
+ export declare function deleteCredential(key: string): void;
15
+ /** List credential keys (not values) */
16
+ export declare function listCredentials(): string[];
17
+ /**
18
+ * Get API key for a provider, checking:
19
+ * 1. Environment variable (highest priority)
20
+ * 2. Encrypted credential store
21
+ * 3. Config file (legacy plaintext, with migration prompt)
22
+ */
23
+ export declare function resolveApiKey(provider: string, configApiKey?: string): string | undefined;
24
+ //# sourceMappingURL=credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/harness/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAwDH,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7D;AAED,yBAAyB;AACzB,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAI9D;AAED,0BAA0B;AAC1B,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAIlD;AAED,wCAAwC;AACxC,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAuBzF"}