@tyvm/knowhow 0.0.108-dev.879609c → 0.0.108-dev.99ad788

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 (142) hide show
  1. package/package.json +2 -3
  2. package/src/agents/tools/index.ts +0 -1
  3. package/src/agents/tools/list.ts +0 -2
  4. package/src/chat/CliChatService.ts +3 -0
  5. package/src/cli.ts +91 -664
  6. package/src/clients/index.ts +6 -5
  7. package/src/commands/agent.ts +246 -0
  8. package/src/commands/misc.ts +174 -0
  9. package/src/commands/modules.ts +182 -0
  10. package/src/commands/services.ts +77 -0
  11. package/src/commands/workers.ts +160 -0
  12. package/src/config.ts +37 -0
  13. package/src/index.ts +1 -0
  14. package/src/logger.ts +200 -0
  15. package/src/plugins/plugins.ts +0 -21
  16. package/src/processors/JsonCompressor.ts +3 -3
  17. package/src/services/EventService.ts +57 -1
  18. package/src/services/modules/index.ts +67 -49
  19. package/src/services/modules/types.ts +4 -0
  20. package/src/tunnel.ts +216 -0
  21. package/src/types.ts +0 -1
  22. package/src/worker.ts +65 -336
  23. package/src/workers/auth/WsMiddleware.ts +99 -0
  24. package/src/workers/auth/authMiddleware.ts +104 -0
  25. package/src/workers/auth/types.ts +14 -2
  26. package/tests/unit/commands/github-credentials.test.ts +211 -0
  27. package/tests/unit/modules/moduleLoading.test.ts +39 -37
  28. package/tests/unit/plugins/pluginLoading.test.ts +0 -85
  29. package/ts_build/package.json +2 -3
  30. package/ts_build/src/agents/tools/index.d.ts +0 -1
  31. package/ts_build/src/agents/tools/index.js +0 -1
  32. package/ts_build/src/agents/tools/index.js.map +1 -1
  33. package/ts_build/src/agents/tools/list.js +0 -2
  34. package/ts_build/src/agents/tools/list.js.map +1 -1
  35. package/ts_build/src/chat/CliChatService.js +3 -0
  36. package/ts_build/src/chat/CliChatService.js.map +1 -1
  37. package/ts_build/src/cli.js +47 -525
  38. package/ts_build/src/cli.js.map +1 -1
  39. package/ts_build/src/clients/index.js +2 -4
  40. package/ts_build/src/clients/index.js.map +1 -1
  41. package/ts_build/src/commands/agent.d.ts +6 -0
  42. package/ts_build/src/commands/agent.js +229 -0
  43. package/ts_build/src/commands/agent.js.map +1 -0
  44. package/ts_build/src/commands/misc.d.ts +10 -0
  45. package/ts_build/src/commands/misc.js +197 -0
  46. package/ts_build/src/commands/misc.js.map +1 -0
  47. package/ts_build/src/commands/modules.d.ts +3 -0
  48. package/ts_build/src/commands/modules.js +160 -0
  49. package/ts_build/src/commands/modules.js.map +1 -0
  50. package/ts_build/src/commands/services.d.ts +5 -0
  51. package/ts_build/src/commands/services.js +87 -0
  52. package/ts_build/src/commands/services.js.map +1 -0
  53. package/ts_build/src/commands/workers.d.ts +6 -0
  54. package/ts_build/src/commands/workers.js +163 -0
  55. package/ts_build/src/commands/workers.js.map +1 -0
  56. package/ts_build/src/config.d.ts +1 -0
  57. package/ts_build/src/config.js +32 -0
  58. package/ts_build/src/config.js.map +1 -1
  59. package/ts_build/src/index.d.ts +1 -0
  60. package/ts_build/src/index.js +3 -1
  61. package/ts_build/src/index.js.map +1 -1
  62. package/ts_build/src/logger.d.ts +21 -0
  63. package/ts_build/src/logger.js +109 -0
  64. package/ts_build/src/logger.js.map +1 -0
  65. package/ts_build/src/plugins/plugins.d.ts +0 -2
  66. package/ts_build/src/plugins/plugins.js +0 -11
  67. package/ts_build/src/plugins/plugins.js.map +1 -1
  68. package/ts_build/src/processors/JsonCompressor.js +1 -1
  69. package/ts_build/src/services/EventService.d.ts +6 -1
  70. package/ts_build/src/services/EventService.js +28 -0
  71. package/ts_build/src/services/EventService.js.map +1 -1
  72. package/ts_build/src/services/modules/index.d.ts +33 -0
  73. package/ts_build/src/services/modules/index.js +44 -44
  74. package/ts_build/src/services/modules/index.js.map +1 -1
  75. package/ts_build/src/services/modules/types.d.ts +4 -0
  76. package/ts_build/src/tunnel.d.ts +27 -0
  77. package/ts_build/src/tunnel.js +112 -0
  78. package/ts_build/src/tunnel.js.map +1 -0
  79. package/ts_build/src/types.d.ts +0 -1
  80. package/ts_build/src/types.js.map +1 -1
  81. package/ts_build/src/worker.d.ts +1 -4
  82. package/ts_build/src/worker.js +38 -244
  83. package/ts_build/src/worker.js.map +1 -1
  84. package/ts_build/src/workers/auth/WsMiddleware.d.ts +8 -0
  85. package/ts_build/src/workers/auth/WsMiddleware.js +65 -0
  86. package/ts_build/src/workers/auth/WsMiddleware.js.map +1 -0
  87. package/ts_build/src/workers/auth/authMiddleware.d.ts +3 -0
  88. package/ts_build/src/workers/auth/authMiddleware.js +60 -0
  89. package/ts_build/src/workers/auth/authMiddleware.js.map +1 -0
  90. package/ts_build/src/workers/auth/types.d.ts +8 -1
  91. package/ts_build/tests/unit/commands/github-credentials.test.d.ts +1 -0
  92. package/ts_build/tests/unit/commands/github-credentials.test.js +146 -0
  93. package/ts_build/tests/unit/commands/github-credentials.test.js.map +1 -0
  94. package/ts_build/tests/unit/modules/moduleLoading.test.js +20 -26
  95. package/ts_build/tests/unit/modules/moduleLoading.test.js.map +1 -1
  96. package/ts_build/tests/unit/plugins/pluginLoading.test.js +0 -65
  97. package/ts_build/tests/unit/plugins/pluginLoading.test.js.map +1 -1
  98. package/src/agents/tools/executeScript/README.md +0 -94
  99. package/src/agents/tools/executeScript/definition.ts +0 -79
  100. package/src/agents/tools/executeScript/examples/dependency-injection-validation.ts +0 -272
  101. package/src/agents/tools/executeScript/examples/quick-test.ts +0 -74
  102. package/src/agents/tools/executeScript/examples/serialization-test.ts +0 -321
  103. package/src/agents/tools/executeScript/examples/test-runner.ts +0 -197
  104. package/src/agents/tools/executeScript/index.ts +0 -98
  105. package/src/services/script-execution/SandboxContext.ts +0 -282
  106. package/src/services/script-execution/ScriptExecutor.ts +0 -441
  107. package/src/services/script-execution/ScriptPolicy.ts +0 -194
  108. package/src/services/script-execution/ScriptTracer.ts +0 -249
  109. package/src/services/script-execution/types.ts +0 -134
  110. package/ts_build/src/agents/tools/executeScript/definition.d.ts +0 -2
  111. package/ts_build/src/agents/tools/executeScript/definition.js +0 -76
  112. package/ts_build/src/agents/tools/executeScript/definition.js.map +0 -1
  113. package/ts_build/src/agents/tools/executeScript/examples/dependency-injection-validation.d.ts +0 -18
  114. package/ts_build/src/agents/tools/executeScript/examples/dependency-injection-validation.js +0 -192
  115. package/ts_build/src/agents/tools/executeScript/examples/dependency-injection-validation.js.map +0 -1
  116. package/ts_build/src/agents/tools/executeScript/examples/quick-test.d.ts +0 -3
  117. package/ts_build/src/agents/tools/executeScript/examples/quick-test.js +0 -64
  118. package/ts_build/src/agents/tools/executeScript/examples/quick-test.js.map +0 -1
  119. package/ts_build/src/agents/tools/executeScript/examples/serialization-test.d.ts +0 -15
  120. package/ts_build/src/agents/tools/executeScript/examples/serialization-test.js +0 -266
  121. package/ts_build/src/agents/tools/executeScript/examples/serialization-test.js.map +0 -1
  122. package/ts_build/src/agents/tools/executeScript/examples/test-runner.d.ts +0 -4
  123. package/ts_build/src/agents/tools/executeScript/examples/test-runner.js +0 -208
  124. package/ts_build/src/agents/tools/executeScript/examples/test-runner.js.map +0 -1
  125. package/ts_build/src/agents/tools/executeScript/index.d.ts +0 -28
  126. package/ts_build/src/agents/tools/executeScript/index.js +0 -72
  127. package/ts_build/src/agents/tools/executeScript/index.js.map +0 -1
  128. package/ts_build/src/services/script-execution/SandboxContext.d.ts +0 -34
  129. package/ts_build/src/services/script-execution/SandboxContext.js +0 -189
  130. package/ts_build/src/services/script-execution/SandboxContext.js.map +0 -1
  131. package/ts_build/src/services/script-execution/ScriptExecutor.d.ts +0 -19
  132. package/ts_build/src/services/script-execution/ScriptExecutor.js +0 -269
  133. package/ts_build/src/services/script-execution/ScriptExecutor.js.map +0 -1
  134. package/ts_build/src/services/script-execution/ScriptPolicy.d.ts +0 -28
  135. package/ts_build/src/services/script-execution/ScriptPolicy.js +0 -115
  136. package/ts_build/src/services/script-execution/ScriptPolicy.js.map +0 -1
  137. package/ts_build/src/services/script-execution/ScriptTracer.d.ts +0 -19
  138. package/ts_build/src/services/script-execution/ScriptTracer.js +0 -186
  139. package/ts_build/src/services/script-execution/ScriptTracer.js.map +0 -1
  140. package/ts_build/src/services/script-execution/types.d.ts +0 -108
  141. package/ts_build/src/services/script-execution/types.js +0 -3
  142. package/ts_build/src/services/script-execution/types.js.map +0 -1
@@ -2,6 +2,17 @@
2
2
  * Auth message types for the worker WebSocket authentication protocol.
3
3
  */
4
4
 
5
+ // Client → Worker: request a challenge
6
+ export interface AuthGetChallengeMessage {
7
+ type: "auth:getChallenge";
8
+ }
9
+
10
+ // Worker → Client: sent when a non-auth message is received while locked
11
+ export interface AuthLockedMessage {
12
+ type: "auth:locked";
13
+ message: string;
14
+ }
15
+
5
16
  // Worker → Client: challenge
6
17
  export interface AuthChallengeMessage {
7
18
  type: "auth:challenge";
@@ -31,12 +42,13 @@ export interface AuthFailureMessage {
31
42
  type: "auth:failure";
32
43
  reason: "invalid_signature" | "expired" | "unknown_credential";
33
44
  }
34
-
35
45
  export type AuthMessage =
46
+ | AuthGetChallengeMessage
36
47
  | AuthChallengeMessage
37
48
  | AuthResponseMessage
38
49
  | AuthSuccessMessage
39
- | AuthFailureMessage;
50
+ | AuthFailureMessage
51
+ | AuthLockedMessage;
40
52
 
41
53
  // Passkey credential stored in config
42
54
  export interface PasskeyCredential {
@@ -0,0 +1,211 @@
1
+ /**
2
+ * Unit tests for the github-credentials command.
3
+ *
4
+ * Key invariant: running `github-credentials` must NEVER write anything other than
5
+ * the credential lines to stdout. Module loading logs, warnings, etc. must be
6
+ * silenced so the git credential helper protocol is not corrupted.
7
+ */
8
+
9
+ // Mock config before any imports that depend on it
10
+ jest.mock("../../../src/config", () => ({
11
+ getConfig: jest.fn().mockResolvedValue({ modules: [] }),
12
+ getGlobalConfig: jest.fn().mockResolvedValue({ modules: [] }),
13
+ getConfigSync: jest.fn().mockReturnValue({}),
14
+ migrateConfig: jest.fn().mockResolvedValue(undefined),
15
+ }));
16
+
17
+ // Mock clients to avoid openai.ts side-effects
18
+ jest.mock("../../../src/clients", () => ({
19
+ AIClient: jest.fn(),
20
+ Clients: { registerClient: jest.fn(), registerModels: jest.fn() },
21
+ }));
22
+
23
+ // Mock KnowhowSimpleClient so we control what getGitCredential returns
24
+ // without needing a real JWT or network connection
25
+ jest.mock("../../../src/services/KnowhowClient", () => ({
26
+ KnowhowSimpleClient: jest.fn().mockImplementation(() => ({
27
+ getGitCredential: jest.fn().mockResolvedValue({
28
+ protocol: "https",
29
+ host: "github.com",
30
+ username: "x-access-token",
31
+ password: "ghu_TESTTOKEN123",
32
+ }),
33
+ })),
34
+ }));
35
+
36
+ // Mock readline so the 'get' action doesn't hang waiting for stdin
37
+ jest.mock("readline", () => ({
38
+ createInterface: jest.fn().mockReturnValue({
39
+ on: jest.fn().mockImplementation(function (event: string, cb: Function) {
40
+ // Immediately fire 'close' so the readline promise resolves
41
+ if (event === "close") {
42
+ setImmediate(() => cb());
43
+ }
44
+ return this;
45
+ }),
46
+ }),
47
+ }));
48
+
49
+ import { Command } from "commander";
50
+ import { addGithubCredentialsCommand } from "../../../src/commands/misc";
51
+ import { logger } from "../../../src/logger";
52
+
53
+ describe("github-credentials command", () => {
54
+ /**
55
+ * This test verifies the EARLY silencing logic in cli.ts main().
56
+ * The problem: modules load BEFORE parseAsync, so any module that emits
57
+ * warnings (e.g. Terminal module: no TunnelHandler) does so before the
58
+ * action's logger.silence() call can stop it.
59
+ *
60
+ * The fix: cli.ts checks process.argv before module loading and silences early.
61
+ * This test simulates that logic directly.
62
+ */
63
+ describe("early silencing (pre-module-load)", () => {
64
+ beforeEach(() => {
65
+ logger.unsilence();
66
+ logger.installConsoleOverload();
67
+ });
68
+
69
+ afterEach(() => {
70
+ logger.unsilence();
71
+ logger.uninstallConsoleOverload();
72
+ });
73
+
74
+ it("silences before module loading when github-credentials is in argv", () => {
75
+ const originalArgv = process.argv;
76
+ process.argv = ["node", "knowhow", "github-credentials", "get"];
77
+
78
+ // Simulate the exact early-detection logic from cli.ts main()
79
+ const rawArgs = process.argv.slice(2);
80
+ const SILENT_COMMANDS = ["github-credentials"];
81
+ if (rawArgs.some((a) => SILENT_COMMANDS.includes(a))) {
82
+ logger.silence();
83
+ }
84
+
85
+ // Now any module-load-time console.log/warn should be suppressed
86
+ const consoleSpy = jest.spyOn(process.stdout, "write");
87
+ console.warn("⚠️ Terminal module: no TunnelHandler in context — terminal addon not registered");
88
+ console.log("some other module loading noise");
89
+
90
+ expect(consoleSpy).not.toHaveBeenCalled();
91
+ consoleSpy.mockRestore();
92
+ process.argv = originalArgv;
93
+ });
94
+
95
+ it("does NOT silence for other commands", () => {
96
+ const originalArgv = process.argv;
97
+ process.argv = ["node", "knowhow", "chat"];
98
+
99
+ const rawArgs = process.argv.slice(2);
100
+ const SILENT_COMMANDS = ["github-credentials"];
101
+ if (rawArgs.some((a) => SILENT_COMMANDS.includes(a))) {
102
+ logger.silence();
103
+ }
104
+
105
+ expect(logger.isSilenced()).toBe(false);
106
+ process.argv = originalArgv;
107
+ });
108
+ });
109
+
110
+ let program: Command;
111
+ let stdoutSpy: jest.SpyInstance;
112
+ let writtenToStdout: string[];
113
+
114
+ beforeEach(() => {
115
+ jest.clearAllMocks();
116
+
117
+ // Reset logger silence state between tests
118
+ logger.unsilence();
119
+
120
+ // Capture process.stdout.write — this is what the credential helper uses
121
+ writtenToStdout = [];
122
+ stdoutSpy = jest
123
+ .spyOn(process.stdout, "write")
124
+ .mockImplementation((chunk: any) => {
125
+ writtenToStdout.push(typeof chunk === "string" ? chunk : chunk.toString());
126
+ return true;
127
+ });
128
+
129
+ program = new Command();
130
+ program.exitOverride(); // prevent process.exit during tests
131
+ addGithubCredentialsCommand(program);
132
+ });
133
+
134
+ afterEach(() => {
135
+ stdoutSpy.mockRestore();
136
+ logger.unsilence();
137
+ });
138
+
139
+ it("outputs only credential lines to stdout for 'get' action", async () => {
140
+ await program.parseAsync([
141
+ "node", "knowhow", "github-credentials", "get", "--repo", "myorg/myrepo",
142
+ ]);
143
+
144
+ expect(writtenToStdout).toHaveLength(1);
145
+ expect(writtenToStdout[0]).toBe(
146
+ "protocol=https\nhost=github.com\nusername=x-access-token\npassword=ghu_TESTTOKEN123\n"
147
+ );
148
+ });
149
+
150
+ it("silences the logger immediately so module logs don't pollute stdout", async () => {
151
+ await program.parseAsync([
152
+ "node", "knowhow", "github-credentials", "get", "--repo", "myorg/myrepo",
153
+ ]);
154
+
155
+ // The action must have called logger.silence() — state persists after action
156
+ expect(logger.isSilenced()).toBe(true);
157
+ });
158
+
159
+ it("produces exactly 4 credential field lines and nothing else", async () => {
160
+ await program.parseAsync([
161
+ "node", "knowhow", "github-credentials", "get", "--repo", "myorg/myrepo",
162
+ ]);
163
+
164
+ const allOutput = writtenToStdout.join("");
165
+ const lines = allOutput.trim().split("\n");
166
+
167
+ expect(lines).toHaveLength(4);
168
+ expect(lines[0]).toMatch(/^protocol=/);
169
+ expect(lines[1]).toMatch(/^host=/);
170
+ expect(lines[2]).toMatch(/^username=/);
171
+ expect(lines[3]).toMatch(/^password=/);
172
+ });
173
+
174
+ it("exits cleanly for 'store' action without writing credentials", async () => {
175
+ let exitCode: number | undefined;
176
+ // Throw to stop execution after exit() is called — otherwise the mock
177
+ // just sets a flag and the action continues to fetch credentials.
178
+ const exitSpy = jest
179
+ .spyOn(process, "exit")
180
+ .mockImplementation(((code?: number) => {
181
+ exitCode = code ?? 0;
182
+ throw new Error(`process.exit(${exitCode})`);
183
+ }) as any);
184
+
185
+ await expect(
186
+ program.parseAsync(["node", "knowhow", "github-credentials", "store"])
187
+ ).rejects.toThrow("process.exit(0)");
188
+
189
+ expect(exitCode).toBe(0);
190
+ expect(writtenToStdout).toHaveLength(0);
191
+ exitSpy.mockRestore();
192
+ });
193
+
194
+ it("exits cleanly for 'erase' action without writing credentials", async () => {
195
+ let exitCode: number | undefined;
196
+ const exitSpy = jest
197
+ .spyOn(process, "exit")
198
+ .mockImplementation(((code?: number) => {
199
+ exitCode = code ?? 0;
200
+ throw new Error(`process.exit(${exitCode})`);
201
+ }) as any);
202
+
203
+ await expect(
204
+ program.parseAsync(["node", "knowhow", "github-credentials", "erase"])
205
+ ).rejects.toThrow("process.exit(0)");
206
+
207
+ expect(exitCode).toBe(0);
208
+ expect(writtenToStdout).toHaveLength(0);
209
+ exitSpy.mockRestore();
210
+ });
211
+ });
@@ -24,20 +24,27 @@ jest.mock("../../../src/services", () => ({
24
24
  }));
25
25
 
26
26
  import { ModulesService } from "../../../src/services/modules";
27
- import { ModuleContext, KnowhowModule } from "../../../src/services/modules/types";
27
+ import {
28
+ ModuleContext,
29
+ KnowhowModule,
30
+ } from "../../../src/services/modules/types";
28
31
  import { getConfig, getGlobalConfig } from "../../../src/config";
29
32
 
30
33
  const mockGetConfig = getConfig as jest.MockedFunction<typeof getConfig>;
31
- const mockGetGlobalConfig = getGlobalConfig as jest.MockedFunction<typeof getGlobalConfig>;
34
+ const mockGetGlobalConfig = getGlobalConfig as jest.MockedFunction<
35
+ typeof getGlobalConfig
36
+ >;
32
37
 
33
38
  function makeContext(overrides?: Partial<ModuleContext>): ModuleContext {
34
39
  return {
40
+ Events: {
41
+ log: jest.fn(),
42
+ } as any,
35
43
  Agents: {
36
44
  registerAgent: jest.fn(),
37
45
  } as any,
38
46
  Plugins: {
39
47
  registerPlugin: jest.fn(),
40
- loadPluginsFromConfig: jest.fn().mockResolvedValue(undefined),
41
48
  } as any,
42
49
  Clients: {
43
50
  registerClient: jest.fn(),
@@ -87,7 +94,8 @@ describe("ModulesService.loadModulesFromConfig", () => {
87
94
  const context = makeContext();
88
95
 
89
96
  // Mock require used inside loadModulesFromConfig
90
- const requireSpy = jest.spyOn(service as any, "loadModulesFromConfig")
97
+ const requireSpy = jest
98
+ .spyOn(service as any, "loadModulesFromConfig")
91
99
  .mockImplementation(async (ctx?: ModuleContext) => {
92
100
  const resolvedCtx = ctx || context;
93
101
  await mockModule.init({ config: {} as Config, cwd: process.cwd() });
@@ -113,26 +121,35 @@ describe("ModulesService.loadModulesFromConfig", () => {
113
121
  };
114
122
  const mockToolHandler = jest.fn();
115
123
  const mockModule = makeModule({
116
- tools: [{ name: "myTool", handler: mockToolHandler, definition: mockToolDef }],
124
+ tools: [
125
+ { name: "myTool", handler: mockToolHandler, definition: mockToolDef },
126
+ ],
117
127
  });
118
128
 
119
129
  const service = new ModulesService();
120
130
  const context = makeContext();
121
131
 
122
- const spy = jest.spyOn(service as any, "loadModulesFromConfig")
132
+ const spy = jest
133
+ .spyOn(service as any, "loadModulesFromConfig")
123
134
  .mockImplementation(async (ctx?: ModuleContext) => {
124
135
  const resolvedCtx = ctx || context;
125
136
  await mockModule.init({ config: {} as Config, cwd: process.cwd() });
126
137
  for (const tool of mockModule.tools) {
127
138
  resolvedCtx.Tools.addTool(tool.definition);
128
- resolvedCtx.Tools.setFunction(tool.definition.function.name, tool.handler);
139
+ resolvedCtx.Tools.setFunction(
140
+ tool.definition.function.name,
141
+ tool.handler
142
+ );
129
143
  }
130
144
  });
131
145
 
132
146
  await service.loadModulesFromConfig(context);
133
147
 
134
148
  expect(context.Tools.addTool).toHaveBeenCalledWith(mockToolDef);
135
- expect(context.Tools.setFunction).toHaveBeenCalledWith("myTool", mockToolHandler);
149
+ expect(context.Tools.setFunction).toHaveBeenCalledWith(
150
+ "myTool",
151
+ mockToolHandler
152
+ );
136
153
  spy.mockRestore();
137
154
  });
138
155
 
@@ -147,7 +164,9 @@ describe("ModulesService.loadModulesFromConfig", () => {
147
164
  embed: () => Promise.resolve([]),
148
165
  };
149
166
  // ModulePlugin expects a constructor (class), not an instance
150
- const MockPluginClass = jest.fn().mockImplementation(() => mockPluginInstance);
167
+ const MockPluginClass = jest
168
+ .fn()
169
+ .mockImplementation(() => mockPluginInstance);
151
170
  const mockModule = makeModule({
152
171
  plugins: [{ name: "test-plugin", plugin: MockPluginClass as any }],
153
172
  });
@@ -155,7 +174,8 @@ describe("ModulesService.loadModulesFromConfig", () => {
155
174
  const service = new ModulesService();
156
175
  const context = makeContext();
157
176
 
158
- const spy = jest.spyOn(service as any, "loadModulesFromConfig")
177
+ const spy = jest
178
+ .spyOn(service as any, "loadModulesFromConfig")
159
179
  .mockImplementation(async (ctx?: ModuleContext) => {
160
180
  const resolvedCtx = ctx || context;
161
181
  await mockModule.init({ config: {} as Config, cwd: process.cwd() });
@@ -167,36 +187,17 @@ describe("ModulesService.loadModulesFromConfig", () => {
167
187
 
168
188
  await service.loadModulesFromConfig(context);
169
189
 
170
- expect(context.Plugins.registerPlugin).toHaveBeenCalledWith("test-plugin", mockPluginInstance);
190
+ expect(context.Plugins.registerPlugin).toHaveBeenCalledWith(
191
+ "test-plugin",
192
+ mockPluginInstance
193
+ );
171
194
  spy.mockRestore();
172
195
  });
173
196
 
174
- it("should call loadPluginsFromConfig with both global and local configs", async () => {
175
- const localConfig = {
176
- modules: [],
177
- pluginPackages: { asana: "@knowhow/plugin-asana" },
178
- } as unknown as Config;
179
- const globalConfig = {
180
- modules: [],
181
- pluginPackages: { linear: "@knowhow/plugin-linear" },
182
- } as unknown as Config;
183
-
184
- mockGetConfig.mockResolvedValue(localConfig);
185
- mockGetGlobalConfig.mockResolvedValue(globalConfig);
186
-
187
- const service = new ModulesService();
188
- const context = makeContext();
189
-
190
- await service.loadModulesFromConfig(context);
191
-
192
- // pluginService.loadPluginsFromConfig should be called twice: once for local, once for global
193
- expect(context.Plugins.loadPluginsFromConfig).toHaveBeenCalledTimes(2);
194
- expect(context.Plugins.loadPluginsFromConfig).toHaveBeenCalledWith(localConfig);
195
- expect(context.Plugins.loadPluginsFromConfig).toHaveBeenCalledWith(globalConfig);
196
- });
197
-
198
197
  it("should load modules from both global and local config paths", async () => {
199
- const globalModule = makeModule({ agents: [{ name: "GlobalAgent" } as any] });
198
+ const globalModule = makeModule({
199
+ agents: [{ name: "GlobalAgent" } as any],
200
+ });
200
201
  const localModule = makeModule({ agents: [{ name: "LocalAgent" } as any] });
201
202
 
202
203
  mockGetConfig.mockResolvedValue({
@@ -210,7 +211,8 @@ describe("ModulesService.loadModulesFromConfig", () => {
210
211
  const context = makeContext();
211
212
 
212
213
  const loadedPaths: string[] = [];
213
- const spy = jest.spyOn(service as any, "loadModulesFromConfig")
214
+ const spy = jest
215
+ .spyOn(service as any, "loadModulesFromConfig")
214
216
  .mockImplementation(async (ctx?: ModuleContext) => {
215
217
  const resolvedCtx = ctx || context;
216
218
  for (const [path, mod] of [
@@ -1,6 +1,5 @@
1
1
  import { PluginService } from "../../../src/plugins/plugins";
2
2
  import { PluginContext } from "../../../src/plugins/types";
3
- import { Config } from "../../../src/types";
4
3
 
5
4
  // Minimal mock context for PluginService construction
6
5
  // EmbeddingPlugin calls context.Events.on() in its constructor, so we must mock it.
@@ -65,87 +64,3 @@ describe("PluginService.loadPlugin", () => {
65
64
  expect(plugin!.meta.key).toBe(mockKey);
66
65
  });
67
66
  });
68
-
69
- describe("PluginService.loadPluginsFromConfig", () => {
70
- it("should load plugins listed in config.pluginPackages", async () => {
71
- const service = new PluginService(makeContext());
72
- const loadedSpecs: string[] = [];
73
-
74
- service.loadPlugin = jest.fn().mockImplementation(async (spec: string) => {
75
- loadedSpecs.push(spec);
76
- const key = `plugin-from-${spec}`;
77
- const instance = {
78
- meta: { key, name: key },
79
- isEnabled: () => true,
80
- enable: () => {},
81
- disable: () => {},
82
- call: () => Promise.resolve(""),
83
- callMany: () => Promise.resolve(""),
84
- embed: () => Promise.resolve([]),
85
- };
86
- (service as any).pluginMap.set(key, instance);
87
- return key;
88
- });
89
-
90
- const config = {
91
- pluginPackages: {
92
- asana: "@knowhow/plugin-asana",
93
- linear: "@knowhow/plugin-linear",
94
- },
95
- } as unknown as Config;
96
-
97
- await service.loadPluginsFromConfig(config);
98
-
99
- expect(loadedSpecs).toContain("@knowhow/plugin-asana");
100
- expect(loadedSpecs).toContain("@knowhow/plugin-linear");
101
- expect(loadedSpecs.length).toBe(2);
102
- });
103
-
104
- it("should handle empty pluginPackages gracefully", async () => {
105
- const service = new PluginService(makeContext());
106
- service.loadPlugin = jest.fn();
107
-
108
- const config = {} as Config;
109
- await expect(service.loadPluginsFromConfig(config)).resolves.toBeUndefined();
110
- expect(service.loadPlugin).not.toHaveBeenCalled();
111
- });
112
-
113
- it("should log a warning and not crash when a plugin fails to load", async () => {
114
- const context = makeContext();
115
- const service = new PluginService(context);
116
-
117
- service.loadPlugin = jest.fn().mockRejectedValue(new Error("Module not found"));
118
-
119
- const config = {
120
- pluginPackages: {
121
- broken: "non-existent-package",
122
- },
123
- } as unknown as Config;
124
-
125
- await expect(service.loadPluginsFromConfig(config)).resolves.toBeUndefined();
126
- expect(context.Events.log).toHaveBeenCalledWith(
127
- "PluginService",
128
- expect.stringContaining("broken"),
129
- "warn"
130
- );
131
- });
132
-
133
- it("should load each plugin with the correct spec string", async () => {
134
- const service = new PluginService(makeContext());
135
- const loadedSpecs: string[] = [];
136
-
137
- service.loadPlugin = jest.fn().mockImplementation(async (spec: string) => {
138
- loadedSpecs.push(spec);
139
- return spec;
140
- });
141
-
142
- const config = {
143
- pluginPackages: {
144
- valid: "@knowhow/valid-plugin",
145
- },
146
- } as unknown as Config;
147
-
148
- await service.loadPluginsFromConfig(config);
149
- expect(loadedSpecs).toEqual(["@knowhow/valid-plugin"]);
150
- });
151
- });
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyvm/knowhow",
3
- "version": "0.0.108-dev.879609c",
3
+ "version": "0.0.108-dev.99ad788",
4
4
  "description": "ai cli with plugins and agents",
5
5
  "main": "ts_build/src/index.js",
6
6
  "bin": {
@@ -55,13 +55,12 @@
55
55
  "@inquirer/editor": "^4.2.18",
56
56
  "@modelcontextprotocol/sdk": "^1.13.3",
57
57
  "@simplewebauthn/server": "^13.3.0",
58
- "@tyvm/knowhow-tunnel": "0.0.4",
58
+ "@tyvm/knowhow-tunnel": "0.0.5",
59
59
  "commander": "^14.0.0",
60
60
  "diff": "^5.2.0",
61
61
  "express": "^4.19.2",
62
62
  "gitignore-to-glob": "^0.3.0",
63
63
  "glob": "11.1.0",
64
- "isolated-vm": "^5.0.4",
65
64
  "jiti": "^2.6.1",
66
65
  "marked": "^10.0.0",
67
66
  "marked-terminal": "^6.2.0",
@@ -20,7 +20,6 @@ export * from "./askHuman";
20
20
  export * from "./aiClient";
21
21
  export * from "./googleSearch";
22
22
  export * from "./stringReplace";
23
- export * from "./executeScript";
24
23
  export * from "./startAgentTask";
25
24
  export * from "./ycmd";
26
25
  export * from "./mcp";
@@ -36,7 +36,6 @@ __exportStar(require("./askHuman"), exports);
36
36
  __exportStar(require("./aiClient"), exports);
37
37
  __exportStar(require("./googleSearch"), exports);
38
38
  __exportStar(require("./stringReplace"), exports);
39
- __exportStar(require("./executeScript"), exports);
40
39
  __exportStar(require("./startAgentTask"), exports);
41
40
  __exportStar(require("./ycmd"), exports);
42
41
  __exportStar(require("./mcp"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/tools/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,8CAA4B;AAC5B,+CAA6B;AAC7B,oDAAkC;AAClC,gDAA8B;AAC9B,gDAA8B;AAC9B,0CAAwB;AACxB,6CAA2B;AAC3B,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B;AAC7B,6CAA2B;AAC3B,6CAA2B;AAC3B,+CAA6B;AAC7B,+CAA6B;AAC7B,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,6CAA2B;AAC3B,6CAA2B;AAC3B,iDAA+B;AAC/B,kDAAgC;AAChC,kDAAgC;AAChC,mDAAiC;AACjC,yCAAuB;AACvB,wCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/tools/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,8CAA4B;AAC5B,+CAA6B;AAC7B,oDAAkC;AAClC,gDAA8B;AAC9B,gDAA8B;AAC9B,0CAAwB;AACxB,6CAA2B;AAC3B,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B;AAC7B,6CAA2B;AAC3B,6CAA2B;AAC3B,+CAA6B;AAC7B,+CAA6B;AAC7B,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,6CAA2B;AAC3B,6CAA2B;AAC3B,iDAA+B;AAC/B,kDAAgC;AAChC,mDAAiC;AACjC,yCAAuB;AACvB,wCAAsB"}
@@ -39,7 +39,6 @@ const ycmd = __importStar(require("./ycmd/definitions"));
39
39
  const language = __importStar(require("./language/definitions"));
40
40
  const mcp = __importStar(require("./mcp/definitions"));
41
41
  const googleSearch_1 = require("./googleSearch");
42
- const definition_1 = require("./executeScript/definition");
43
42
  const startAgentTask_1 = require("./startAgentTask");
44
43
  function getPluginNames() {
45
44
  try {
@@ -649,7 +648,6 @@ exports.includedTools = [
649
648
  },
650
649
  },
651
650
  },
652
- definition_1.executeScriptDefinition,
653
651
  googleSearch_1.googleSearchDefinition,
654
652
  startAgentTask_1.startAgentTaskDefinition,
655
653
  ...ycmd.definitions,
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/agents/tools/list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/agents/tools/list.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ const editor_1 = __importDefault(require("@inquirer/editor"));
10
10
  const fs_1 = __importDefault(require("fs"));
11
11
  const path_1 = __importDefault(require("path"));
12
12
  const services_1 = require("../services");
13
+ const logger_1 = require("../logger");
13
14
  class CliChatService {
14
15
  context;
15
16
  commands = [];
@@ -195,12 +196,14 @@ class CliChatService {
195
196
  const renderer = this.context.renderer;
196
197
  if (renderer)
197
198
  renderer.pause();
199
+ logger_1.logger.silence();
198
200
  try {
199
201
  value = await (0, editor_1.default)({ message: prompt });
200
202
  }
201
203
  finally {
202
204
  if (renderer)
203
205
  renderer.resume();
206
+ logger_1.logger.unsilence();
204
207
  }
205
208
  this.context.multilineMode = false;
206
209
  }