gaunt-sloth-assistant 0.6.5 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/assets/release-notes/v0_7_0.md +7 -0
  2. package/dist/commands/codeCommand.js +1 -1
  3. package/dist/commands/codeCommand.js.map +1 -1
  4. package/dist/config.d.ts +13 -9
  5. package/dist/config.js +43 -10
  6. package/dist/config.js.map +1 -1
  7. package/dist/consoleUtils.js +1 -1
  8. package/dist/consoleUtils.js.map +1 -1
  9. package/dist/core/AgentInterface.d.ts +36 -0
  10. package/dist/core/AgentInterface.js +2 -0
  11. package/dist/core/AgentInterface.js.map +1 -0
  12. package/dist/core/HuggingFaceAgentWrapper.d.ts +20 -0
  13. package/dist/core/HuggingFaceAgentWrapper.js +148 -0
  14. package/dist/core/HuggingFaceAgentWrapper.js.map +1 -0
  15. package/dist/core/Invocation.d.ts +9 -4
  16. package/dist/core/Invocation.js +74 -69
  17. package/dist/core/Invocation.js.map +1 -1
  18. package/dist/core/LangChainAgentWrapper.d.ts +17 -0
  19. package/dist/core/LangChainAgentWrapper.js +70 -0
  20. package/dist/core/LangChainAgentWrapper.js.map +1 -0
  21. package/dist/core/types.d.ts +1 -0
  22. package/dist/modules/interactiveSessionModule.js +5 -4
  23. package/dist/modules/interactiveSessionModule.js.map +1 -1
  24. package/dist/modules/questionAnsweringModule.js +1 -1
  25. package/dist/modules/questionAnsweringModule.js.map +1 -1
  26. package/dist/modules/reviewModule.js +1 -1
  27. package/dist/modules/reviewModule.js.map +1 -1
  28. package/dist/tools/GthFileSystemToolkit.d.ts +23 -0
  29. package/dist/tools/GthFileSystemToolkit.js +606 -0
  30. package/dist/tools/GthFileSystemToolkit.js.map +1 -0
  31. package/dist/utils.d.ts +19 -0
  32. package/dist/utils.js +58 -8
  33. package/dist/utils.js.map +1 -1
  34. package/examples/huggingface/gth_2025-06-29_01-11-51_ASK.md +1 -0
  35. package/examples/huggingface/gth_2025-06-29_01-17-11_CHAT.md +16 -0
  36. package/package.json +5 -3
  37. package/src/commands/codeCommand.ts +1 -1
  38. package/src/config.ts +71 -20
  39. package/src/consoleUtils.ts +1 -1
  40. package/src/core/Invocation.ts +83 -88
  41. package/src/core/types.ts +1 -0
  42. package/src/modules/interactiveSessionModule.ts +5 -4
  43. package/src/modules/questionAnsweringModule.ts +1 -1
  44. package/src/modules/reviewModule.ts +1 -1
  45. package/src/tools/GthFileSystemToolkit.ts +833 -0
  46. package/src/utils.ts +71 -8
  47. package/.gsloth.config_.json +0 -21
@@ -0,0 +1,7 @@
1
+ # v0.7.0
2
+
3
+ - Improved user experience for code command functionality
4
+ - Enhanced chat and code interaction experience
5
+ - Fixed streaming issue with Anthropic API integration
6
+ - Extracted tool filtering logic from Invocation to configuration layer for better modularity
7
+ - Replaced File System MCP with local tools implementation for better performance and reliability
@@ -1,4 +1,4 @@
1
- import { createInteractiveSession } from '../modules/interactiveSessionModule.js';
1
+ import { createInteractiveSession } from '#src/modules/interactiveSessionModule.js';
2
2
  import { readCodePrompt } from '#src/prompt.js';
3
3
  export function codeCommand(program) {
4
4
  program
@@ -1 +1 @@
1
- {"version":3,"file":"codeCommand.js","sourceRoot":"","sources":["../../src/commands/codeCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAiB,MAAM,wCAAwC,CAAC;AACjG,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,uFAAuF,CACxF;SACA,QAAQ,CAAC,WAAW,EAAE,2CAA2C,CAAC;SAClE,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,EAAE;QAChC,MAAM,aAAa,GAAkB;YACnC,IAAI,EAAE,MAAM;YACZ,cAAc,EAAE,cAAc;YAC9B,WAAW,EACT,uFAAuF;YACzF,YAAY,EAAE,mDAAmD;YACjE,WAAW,EAAE,kDAAkD;SAChE,CAAC;QAEF,MAAM,wBAAwB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"codeCommand.js","sourceRoot":"","sources":["../../src/commands/codeCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAiB,MAAM,0CAA0C,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,uFAAuF,CACxF;SACA,QAAQ,CAAC,WAAW,EAAE,2CAA2C,CAAC;SAClE,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,EAAE;QAChC,MAAM,aAAa,GAAkB;YACnC,IAAI,EAAE,MAAM;YACZ,cAAc,EAAE,cAAc;YAC9B,WAAW,EACT,uFAAuF;YACzF,YAAY,EAAE,mDAAmD;YACjE,WAAW,EAAE,kDAAkD;SAChE,CAAC;QAEF,MAAM,wBAAwB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACP,CAAC"}
package/dist/config.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { BaseChatModel } from '@langchain/core/language_models/chat_models';
2
2
  import type { Connection } from '@langchain/mcp-adapters';
3
- import type { StructuredToolInterface } from '@langchain/core/tools';
3
+ import type { BaseToolkit, StructuredToolInterface } from '@langchain/core/tools';
4
4
  export interface SlothConfig extends BaseSlothConfig {
5
5
  llm: BaseChatModel;
6
6
  contentProvider: string;
@@ -8,8 +8,8 @@ export interface SlothConfig extends BaseSlothConfig {
8
8
  projectGuidelines: string;
9
9
  projectReviewInstructions: string;
10
10
  streamOutput: boolean;
11
- filesystem: string[] | 'all' | 'none';
12
- tools?: StructuredToolInterface[];
11
+ filesystem: string[] | 'all' | 'read' | 'none';
12
+ tools?: StructuredToolInterface[] | BaseToolkit[];
13
13
  }
14
14
  /**
15
15
  * Raw, unprocessed sloth config
@@ -27,26 +27,26 @@ interface BaseSlothConfig {
27
27
  projectGuidelines?: string;
28
28
  projectReviewInstructions?: string;
29
29
  streamOutput?: boolean;
30
- filesystem?: string[] | 'all' | 'none';
30
+ filesystem?: string[] | 'all' | 'read' | 'none';
31
31
  commands?: {
32
32
  pr?: {
33
33
  contentProvider?: string;
34
34
  requirementsProvider?: string;
35
- filesystem?: string[] | 'all' | 'none';
35
+ filesystem?: string[] | 'all' | 'read' | 'none';
36
36
  };
37
37
  review?: {
38
38
  requirementsProvider?: string;
39
39
  contentProvider?: string;
40
- filesystem?: string[] | 'all' | 'none';
40
+ filesystem?: string[] | 'all' | 'read' | 'none';
41
41
  };
42
42
  ask?: {
43
- filesystem?: string[] | 'all' | 'none';
43
+ filesystem?: string[] | 'all' | 'read' | 'none';
44
44
  };
45
45
  chat?: {
46
- filesystem?: string[] | 'all' | 'none';
46
+ filesystem?: string[] | 'all' | 'read' | 'none';
47
47
  };
48
48
  code?: {
49
- filesystem?: string[] | 'all' | 'none';
49
+ filesystem?: string[] | 'all' | 'read' | 'none';
50
50
  };
51
51
  };
52
52
  requirementsProviderConfig?: Record<string, unknown>;
@@ -73,4 +73,8 @@ export declare function initConfig(): Promise<SlothConfig>;
73
73
  export declare function tryJsonConfig(jsonConfig: RawSlothConfig): Promise<SlothConfig>;
74
74
  export declare function createProjectConfig(configType: string): Promise<void>;
75
75
  export declare function writeProjectReviewPreamble(): void;
76
+ /**
77
+ * Get default tools based on filesystem configuration
78
+ */
79
+ export declare function getDefaultTools(filesystemConfig?: string[] | 'all' | 'read' | 'none'): StructuredToolInterface[];
76
80
  export {};
package/dist/config.js CHANGED
@@ -3,7 +3,9 @@ import { importExternalFile, writeFileIfNotExistsWithMessages } from '#src/utils
3
3
  import { existsSync, readFileSync } from 'node:fs';
4
4
  import { error, exit } from '#src/systemUtils.js';
5
5
  import { getGslothConfigReadPath, getGslothConfigWritePath } from '#src/filePathUtils.js';
6
- import { USER_PROJECT_CONFIG_JS, USER_PROJECT_CONFIG_JSON, USER_PROJECT_CONFIG_MJS, PROJECT_GUIDELINES, PROJECT_REVIEW_INSTRUCTIONS, } from '#src/constants.js';
6
+ import { PROJECT_GUIDELINES, PROJECT_REVIEW_INSTRUCTIONS, USER_PROJECT_CONFIG_JS, USER_PROJECT_CONFIG_JSON, USER_PROJECT_CONFIG_MJS, } from '#src/constants.js';
7
+ import { getCurrentDir } from '#src/systemUtils.js';
8
+ import GthFileSystemToolkit from '#src/tools/GthFileSystemToolkit.js';
7
9
  export const availableDefaultConfigs = ['vertexai', 'anthropic', 'groq'];
8
10
  export const DEFAULT_CONFIG = {
9
11
  llm: undefined,
@@ -12,15 +14,7 @@ export const DEFAULT_CONFIG = {
12
14
  projectGuidelines: PROJECT_GUIDELINES,
13
15
  projectReviewInstructions: PROJECT_REVIEW_INSTRUCTIONS,
14
16
  streamOutput: true,
15
- filesystem: [
16
- 'read_file',
17
- 'read_multiple_files',
18
- 'list_directory',
19
- 'directory_tree',
20
- 'search_files',
21
- 'get_file_info',
22
- 'list_allowed_directories',
23
- ],
17
+ filesystem: 'read',
24
18
  commands: {
25
19
  pr: {
26
20
  contentProvider: 'github', // gh pr diff NN
@@ -227,4 +221,43 @@ function mergeConfig(partialConfig) {
227
221
  function mergeRawConfig(config, llm) {
228
222
  return mergeConfig({ ...config, llm });
229
223
  }
224
+ /**
225
+ * Filter filesystem tools based on configuration
226
+ */
227
+ function filterFilesystemTools(toolkit, filesystemConfig) {
228
+ if (filesystemConfig === 'all') {
229
+ return toolkit.getTools();
230
+ }
231
+ if (filesystemConfig === 'none') {
232
+ return [];
233
+ }
234
+ if (filesystemConfig === 'read') {
235
+ // Read-only: only allow read operations
236
+ return toolkit.getFilteredTools(['read']);
237
+ }
238
+ if (!Array.isArray(filesystemConfig)) {
239
+ return toolkit.getTools();
240
+ }
241
+ if (filesystemConfig.includes('all')) {
242
+ return toolkit.getTools();
243
+ }
244
+ // Handle an array of specific tool names or 'read'/'all'
245
+ const allowedTools = filesystemConfig.includes('read')
246
+ ? toolkit.getFilteredTools(['read'])
247
+ : [];
248
+ // Also allow specific tool names
249
+ const allowedToolNames = new Set(filesystemConfig.filter((name) => name !== 'read' && name !== 'all'));
250
+ const specificNamedTools = toolkit.getTools().filter((tool) => {
251
+ return tool.name && allowedToolNames.has(tool.name);
252
+ });
253
+ // Combine and deduplicate
254
+ const allAllowedTools = [...allowedTools, ...specificNamedTools];
255
+ return allAllowedTools.filter((tool, index, arr) => arr.findIndex((t) => t.name === tool.name) === index);
256
+ }
257
+ /**
258
+ * Get default tools based on filesystem configuration
259
+ */
260
+ export function getDefaultTools(filesystemConfig = 'none') {
261
+ return [...filterFilesystemTools(new GthFileSystemToolkit([getCurrentDir()]), filesystemConfig)];
262
+ }
230
263
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export function displaySuccess(message) {
11
11
  systemError(chalk.green(message));
12
12
  }
13
13
  export function displayInfo(message) {
14
- systemError(chalk.blue(message));
14
+ systemError(chalk.dim(message));
15
15
  }
16
16
  export function display(message) {
17
17
  log(message);
@@ -1 +1 @@
1
- {"version":3,"file":"consoleUtils.js","sourceRoot":"","sources":["../src/consoleUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,KAAK,IAAI,WAAW,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAItF,kGAAkG;AAElG,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAe;IACrC,GAAG,CAAC,OAAO,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAmC;IAC9D,oCAAoC;IACpC,IAAI,OAAO,YAAY,KAAK,EAAE,CAAC;QAC7B,WAAW,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC;SAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,gCAAgC;AAChC,MAAM,CAAC,MAAM,sBAAsB,GAAyB,CAC1D,KAAkB,EAClB,OAAe,EACf,EAAE;IACF,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,WAAW,CAAC,OAAO,CAAC,CAAC;YACrB,MAAM;QACR,KAAK,SAAS;YACZ,cAAc,CAAC,OAAO,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,OAAO;YACV,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,MAAM;QACR,KAAK,SAAS;YACZ,cAAc,CAAC,OAAO,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,OAAO;YACV,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,MAAM;QACR,KAAK,SAAS;YACZ,OAAO,CAAC,OAAO,CAAC,CAAC;YACjB,MAAM;QACR,KAAK,QAAQ;YACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9B,MAAM;IACV,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"consoleUtils.js","sourceRoot":"","sources":["../src/consoleUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,KAAK,IAAI,WAAW,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAItF,kGAAkG;AAElG,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAe;IACrC,GAAG,CAAC,OAAO,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAmC;IAC9D,oCAAoC;IACpC,IAAI,OAAO,YAAY,KAAK,EAAE,CAAC;QAC7B,WAAW,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC;SAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,gCAAgC;AAChC,MAAM,CAAC,MAAM,sBAAsB,GAAyB,CAC1D,KAAkB,EAClB,OAAe,EACf,EAAE;IACF,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,WAAW,CAAC,OAAO,CAAC,CAAC;YACrB,MAAM;QACR,KAAK,SAAS;YACZ,cAAc,CAAC,OAAO,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,OAAO;YACV,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,MAAM;QACR,KAAK,SAAS;YACZ,cAAc,CAAC,OAAO,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,OAAO;YACV,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,MAAM;QACR,KAAK,SAAS;YACZ,OAAO,CAAC,OAAO,CAAC,CAAC;YACjB,MAAM;QACR,KAAK,QAAQ;YACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9B,MAAM;IACV,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,36 @@
1
+ import type { Message } from '#src/modules/types.js';
2
+ import type { RunnableConfig } from '@langchain/core/runnables';
3
+ import type { StructuredToolInterface } from '@langchain/core/tools';
4
+ export interface AgentTool {
5
+ name: string;
6
+ description: string;
7
+ parameters?: object;
8
+ callTool?: (args: any) => Promise<any>;
9
+ }
10
+ export interface AgentStreamChunk {
11
+ type: 'text' | 'tool_call' | 'tool_result';
12
+ content: string;
13
+ toolCalls?: AgentTool[];
14
+ }
15
+ export interface AgentResponse {
16
+ content: string;
17
+ toolCalls?: AgentTool[];
18
+ }
19
+ export interface GenericAgent {
20
+ /**
21
+ * Initialize the agent with tools and configuration
22
+ */
23
+ init(tools: StructuredToolInterface[], config?: RunnableConfig): Promise<void>;
24
+ /**
25
+ * Invoke the agent with messages and return the complete response
26
+ */
27
+ invoke(messages: Message[], config?: RunnableConfig): Promise<AgentResponse>;
28
+ /**
29
+ * Stream the agent response
30
+ */
31
+ stream(messages: Message[], config?: RunnableConfig): AsyncGenerator<AgentStreamChunk>;
32
+ /**
33
+ * Cleanup resources
34
+ */
35
+ cleanup(): Promise<void>;
36
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AgentInterface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentInterface.js","sourceRoot":"","sources":["../../src/core/AgentInterface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import type { Message } from '#src/modules/types.js';
2
+ import type { RunnableConfig } from '@langchain/core/runnables';
3
+ import type { StructuredToolInterface } from '@langchain/core/tools';
4
+ import type { GenericAgent, AgentResponse, AgentStreamChunk } from './AgentInterface.js';
5
+ export interface HuggingFaceAgentConfig {
6
+ provider?: string;
7
+ model: string;
8
+ apiKey: string;
9
+ }
10
+ export declare class HuggingFaceAgentWrapper implements GenericAgent {
11
+ private agent;
12
+ private config;
13
+ constructor(config: HuggingFaceAgentConfig);
14
+ init(tools: StructuredToolInterface[], _config?: RunnableConfig): Promise<void>;
15
+ invoke(messages: Message[], _config?: RunnableConfig): Promise<AgentResponse>;
16
+ stream(messages: Message[], _config?: RunnableConfig): AsyncGenerator<AgentStreamChunk>;
17
+ cleanup(): Promise<void>;
18
+ private convertMessagesToPrompt;
19
+ private convertLangChainSchemaToJsonSchema;
20
+ }
@@ -0,0 +1,148 @@
1
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
2
+ // @ts-ignore - No types available for @huggingface/tiny-agents
3
+ import { Agent } from '@huggingface/tiny-agents';
4
+ export class HuggingFaceAgentWrapper {
5
+ agent = null;
6
+ config;
7
+ constructor(config) {
8
+ this.config = config;
9
+ }
10
+ async init(tools, _config) {
11
+ this.agent = new Agent({
12
+ provider: this.config.provider || 'auto',
13
+ model: this.config.model,
14
+ apiKey: this.config.apiKey,
15
+ });
16
+ // Convert LangChain tools to HuggingFace format
17
+ // for (const tool of tools) {
18
+ // this.agent.availableTools.push({
19
+ // type: 'function',
20
+ // function: {
21
+ // name: tool.name,
22
+ // description: tool.description,
23
+ // parameters: this.convertLangChainSchemaToJsonSchema(tool.schema),
24
+ // },
25
+ // });
26
+ //
27
+ // // Set up tool client
28
+ // this.agent.clients.set(tool.name, {
29
+ // // eslint-disable-next-line @typescript-eslint/no-explicit-any
30
+ // callTool: async (opts: any) => {
31
+ // try {
32
+ // const result = await tool.call(opts.arguments);
33
+ // return {
34
+ // content: [
35
+ // {
36
+ // type: 'text',
37
+ // text: typeof result === 'string' ? result : JSON.stringify(result),
38
+ // },
39
+ // ],
40
+ // };
41
+ // } catch (error) {
42
+ // return {
43
+ // content: [
44
+ // {
45
+ // type: 'text',
46
+ // text: `Error calling tool ${tool.name}: ${(error as Error).message}`,
47
+ // },
48
+ // ],
49
+ // };
50
+ // }
51
+ // },
52
+ // });
53
+ // }
54
+ }
55
+ async invoke(messages, _config) {
56
+ if (!this.agent) {
57
+ throw new Error('Agent not initialized. Call init() first.');
58
+ }
59
+ // Convert messages to a single prompt string
60
+ const prompt = this.convertMessagesToPrompt(messages);
61
+ let content = '';
62
+ const toolCalls = [];
63
+ for await (const chunk of this.agent.run(prompt)) {
64
+ if ('choices' in chunk) {
65
+ const delta = chunk.choices[0]?.delta;
66
+ if (delta.content) {
67
+ content += delta.content;
68
+ }
69
+ // Check for tool calls in the response
70
+ if (delta.tool_calls) {
71
+ for (const toolCall of delta.tool_calls) {
72
+ if (toolCall.function) {
73
+ toolCalls.push({
74
+ name: toolCall.function.name,
75
+ description: '',
76
+ parameters: JSON.parse(toolCall.function.arguments || '{}'),
77
+ });
78
+ }
79
+ }
80
+ }
81
+ }
82
+ }
83
+ return {
84
+ content,
85
+ toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
86
+ };
87
+ }
88
+ async *stream(messages, _config) {
89
+ if (!this.agent) {
90
+ throw new Error('Agent not initialized. Call init() first.');
91
+ }
92
+ // Convert messages to a single prompt string
93
+ const prompt = this.convertMessagesToPrompt(messages);
94
+ for await (const chunk of this.agent.run(prompt)) {
95
+ if ('choices' in chunk) {
96
+ const delta = chunk.choices[0]?.delta;
97
+ if (delta.content) {
98
+ yield {
99
+ type: 'text',
100
+ content: delta.content,
101
+ };
102
+ }
103
+ // Check for tool calls in the response
104
+ if (delta.tool_calls) {
105
+ const toolCalls = [];
106
+ for (const toolCall of delta.tool_calls) {
107
+ if (toolCall.function) {
108
+ toolCalls.push({
109
+ name: toolCall.function.name,
110
+ description: '',
111
+ parameters: JSON.parse(toolCall.function.arguments || '{}'),
112
+ });
113
+ }
114
+ }
115
+ if (toolCalls.length > 0) {
116
+ yield {
117
+ type: 'tool_call',
118
+ content: '',
119
+ toolCalls,
120
+ };
121
+ }
122
+ }
123
+ }
124
+ }
125
+ }
126
+ async cleanup() {
127
+ this.agent = null;
128
+ }
129
+ convertMessagesToPrompt(messages) {
130
+ // Simple conversion - in a real implementation you might want more sophisticated handling
131
+ return messages
132
+ .map((msg) => {
133
+ if (typeof msg === 'string')
134
+ return msg;
135
+ if (msg.content)
136
+ return typeof msg.content === 'string' ? msg.content : JSON.stringify(msg.content);
137
+ return JSON.stringify(msg);
138
+ })
139
+ .join('\n');
140
+ }
141
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
142
+ convertLangChainSchemaToJsonSchema(schema) {
143
+ // Simple conversion - LangChain tools should already have JSON schema compatible format
144
+ // This might need more sophisticated handling depending on the actual schema structure
145
+ return schema;
146
+ }
147
+ }
148
+ //# sourceMappingURL=HuggingFaceAgentWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HuggingFaceAgentWrapper.js","sourceRoot":"","sources":["../../src/core/HuggingFaceAgentWrapper.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import type { Message } from '#src/modules/types.js';
2
2
  import { SlothConfig } from '#src/config.js';
3
+ import type { Connection } from '@langchain/mcp-adapters';
3
4
  import { MultiServerMCPClient } from '@langchain/mcp-adapters';
4
5
  import { BaseCheckpointSaver } from '@langchain/langgraph';
5
- import type { StructuredToolInterface } from '@langchain/core/tools';
6
6
  import { type RunnableConfig } from '@langchain/core/runnables';
7
- import { StatusLevel } from '#src/core/types.js';
7
+ import { GthCommand, StatusLevel } from '#src/core/types.js';
8
8
  export type StatusUpdateCallback = (level: StatusLevel, message: string) => void;
9
9
  export declare class Invocation {
10
10
  private statusUpdate;
@@ -14,9 +14,14 @@ export declare class Invocation {
14
14
  private config;
15
15
  constructor(statusUpdate: StatusUpdateCallback);
16
16
  setVerbose(verbose: boolean): void;
17
- init(command: 'ask' | 'pr' | 'review' | 'chat' | 'code' | undefined, config: SlothConfig, checkpointSaver?: BaseCheckpointSaver | undefined): Promise<void>;
17
+ init(command: GthCommand | undefined, config: SlothConfig, checkpointSaver?: BaseCheckpointSaver | undefined): Promise<void>;
18
+ getEffectiveConfig(config: SlothConfig, command: GthCommand | undefined): SlothConfig;
18
19
  invoke(messages: Message[], runConfig?: RunnableConfig): Promise<string>;
19
20
  cleanup(): Promise<void>;
20
- protected filterTools(tools: StructuredToolInterface[], filesystemConfig: string[] | 'all' | 'none'): StructuredToolInterface<import("@langchain/core/tools").ToolSchemaBase, any, any>[];
21
+ /**
22
+ * Extract and flatten tools from toolkits
23
+ */
24
+ private extractAndFlattenTools;
25
+ protected getDefaultMcpServers(): Record<string, Connection>;
21
26
  protected getMcpClient(config: SlothConfig): MultiServerMCPClient | null;
22
27
  }