@involvex/super-agent-cli 0.0.39

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 (143) hide show
  1. package/.grok/settings.json +3 -0
  2. package/.prettierignore +11 -0
  3. package/.super-agent/settings.json +23 -0
  4. package/LICENSE +21 -0
  5. package/README.md +366 -0
  6. package/assets/splash.png +0 -0
  7. package/dist/agent/grok-agent.d.ts +54 -0
  8. package/dist/agent/grok-agent.js +638 -0
  9. package/dist/agent/grok-agent.js.map +1 -0
  10. package/dist/agent/index.d.ts +14 -0
  11. package/dist/agent/index.js +139 -0
  12. package/dist/agent/index.js.map +1 -0
  13. package/dist/agent/super-agent.d.ts +54 -0
  14. package/dist/agent/super-agent.js +638 -0
  15. package/dist/agent/super-agent.js.map +1 -0
  16. package/dist/commands/mcp.d.ts +2 -0
  17. package/dist/commands/mcp.js +247 -0
  18. package/dist/commands/mcp.js.map +1 -0
  19. package/dist/core/client.d.ts +49 -0
  20. package/dist/core/client.js +81 -0
  21. package/dist/core/client.js.map +1 -0
  22. package/dist/core/tools.d.ts +8 -0
  23. package/dist/core/tools.js +351 -0
  24. package/dist/core/tools.js.map +1 -0
  25. package/dist/grok/client.d.ts +49 -0
  26. package/dist/grok/client.js +81 -0
  27. package/dist/grok/client.js.map +1 -0
  28. package/dist/grok/tools.d.ts +8 -0
  29. package/dist/grok/tools.js +351 -0
  30. package/dist/grok/tools.js.map +1 -0
  31. package/dist/hooks/use-enhanced-input.d.ts +37 -0
  32. package/dist/hooks/use-enhanced-input.js +228 -0
  33. package/dist/hooks/use-enhanced-input.js.map +1 -0
  34. package/dist/hooks/use-input-handler.d.ts +34 -0
  35. package/dist/hooks/use-input-handler.js +607 -0
  36. package/dist/hooks/use-input-handler.js.map +1 -0
  37. package/dist/hooks/use-input-history.d.ts +9 -0
  38. package/dist/hooks/use-input-history.js +62 -0
  39. package/dist/hooks/use-input-history.js.map +1 -0
  40. package/dist/index.d.ts +2 -0
  41. package/dist/index.js +6591 -0
  42. package/dist/index.js.map +1 -0
  43. package/dist/mcp/client.d.ts +29 -0
  44. package/dist/mcp/client.js +127 -0
  45. package/dist/mcp/client.js.map +1 -0
  46. package/dist/mcp/config.d.ts +13 -0
  47. package/dist/mcp/config.js +45 -0
  48. package/dist/mcp/config.js.map +1 -0
  49. package/dist/mcp/transports.d.ts +51 -0
  50. package/dist/mcp/transports.js +229 -0
  51. package/dist/mcp/transports.js.map +1 -0
  52. package/dist/tools/bash.d.ts +10 -0
  53. package/dist/tools/bash.js +76 -0
  54. package/dist/tools/bash.js.map +1 -0
  55. package/dist/tools/confirmation-tool.d.ts +16 -0
  56. package/dist/tools/confirmation-tool.js +77 -0
  57. package/dist/tools/confirmation-tool.js.map +1 -0
  58. package/dist/tools/index.d.ts +6 -0
  59. package/dist/tools/index.js +7 -0
  60. package/dist/tools/index.js.map +1 -0
  61. package/dist/tools/morph-editor.d.ts +36 -0
  62. package/dist/tools/morph-editor.js +324 -0
  63. package/dist/tools/morph-editor.js.map +1 -0
  64. package/dist/tools/search.d.ts +69 -0
  65. package/dist/tools/search.js +307 -0
  66. package/dist/tools/search.js.map +1 -0
  67. package/dist/tools/text-editor.d.ts +26 -0
  68. package/dist/tools/text-editor.js +583 -0
  69. package/dist/tools/text-editor.js.map +1 -0
  70. package/dist/tools/todo-tool.d.ts +20 -0
  71. package/dist/tools/todo-tool.js +134 -0
  72. package/dist/tools/todo-tool.js.map +1 -0
  73. package/dist/types/index.d.ts +30 -0
  74. package/dist/types/index.js +2 -0
  75. package/dist/types/index.js.map +1 -0
  76. package/dist/ui/app.d.ts +6 -0
  77. package/dist/ui/app.js +76 -0
  78. package/dist/ui/app.js.map +1 -0
  79. package/dist/ui/components/api-key-input.d.ts +6 -0
  80. package/dist/ui/components/api-key-input.js +70 -0
  81. package/dist/ui/components/api-key-input.js.map +1 -0
  82. package/dist/ui/components/chat-history.d.ts +7 -0
  83. package/dist/ui/components/chat-history.js +136 -0
  84. package/dist/ui/components/chat-history.js.map +1 -0
  85. package/dist/ui/components/chat-input.d.ts +8 -0
  86. package/dist/ui/components/chat-input.js +47 -0
  87. package/dist/ui/components/chat-input.js.map +1 -0
  88. package/dist/ui/components/chat-interface.d.ts +7 -0
  89. package/dist/ui/components/chat-interface.js +213 -0
  90. package/dist/ui/components/chat-interface.js.map +1 -0
  91. package/dist/ui/components/command-suggestions.d.ts +16 -0
  92. package/dist/ui/components/command-suggestions.js +18 -0
  93. package/dist/ui/components/command-suggestions.js.map +1 -0
  94. package/dist/ui/components/confirmation-dialog.d.ts +10 -0
  95. package/dist/ui/components/confirmation-dialog.js +70 -0
  96. package/dist/ui/components/confirmation-dialog.js.map +1 -0
  97. package/dist/ui/components/diff-renderer.d.ts +13 -0
  98. package/dist/ui/components/diff-renderer.js +200 -0
  99. package/dist/ui/components/diff-renderer.js.map +1 -0
  100. package/dist/ui/components/loading-spinner.d.ts +7 -0
  101. package/dist/ui/components/loading-spinner.js +52 -0
  102. package/dist/ui/components/loading-spinner.js.map +1 -0
  103. package/dist/ui/components/mcp-status.d.ts +4 -0
  104. package/dist/ui/components/mcp-status.js +37 -0
  105. package/dist/ui/components/mcp-status.js.map +1 -0
  106. package/dist/ui/components/model-selection.d.ts +11 -0
  107. package/dist/ui/components/model-selection.js +9 -0
  108. package/dist/ui/components/model-selection.js.map +1 -0
  109. package/dist/ui/shared/max-sized-box.d.ts +8 -0
  110. package/dist/ui/shared/max-sized-box.js +6 -0
  111. package/dist/ui/shared/max-sized-box.js.map +1 -0
  112. package/dist/ui/utils/code-colorizer.d.ts +2 -0
  113. package/dist/ui/utils/code-colorizer.js +7 -0
  114. package/dist/ui/utils/code-colorizer.js.map +1 -0
  115. package/dist/ui/utils/colors.d.ts +14 -0
  116. package/dist/ui/utils/colors.js +15 -0
  117. package/dist/ui/utils/colors.js.map +1 -0
  118. package/dist/ui/utils/markdown-renderer.d.ts +3 -0
  119. package/dist/ui/utils/markdown-renderer.js +23 -0
  120. package/dist/ui/utils/markdown-renderer.js.map +1 -0
  121. package/dist/utils/confirmation-service.d.ts +33 -0
  122. package/dist/utils/confirmation-service.js +110 -0
  123. package/dist/utils/confirmation-service.js.map +1 -0
  124. package/dist/utils/custom-instructions.d.ts +1 -0
  125. package/dist/utils/custom-instructions.js +23 -0
  126. package/dist/utils/custom-instructions.js.map +1 -0
  127. package/dist/utils/model-config.d.ts +28 -0
  128. package/dist/utils/model-config.js +42 -0
  129. package/dist/utils/model-config.js.map +1 -0
  130. package/dist/utils/settings-manager.d.ts +99 -0
  131. package/dist/utils/settings-manager.js +286 -0
  132. package/dist/utils/settings-manager.js.map +1 -0
  133. package/dist/utils/settings.d.ts +1 -0
  134. package/dist/utils/settings.js +4 -0
  135. package/dist/utils/settings.js.map +1 -0
  136. package/dist/utils/text-utils.d.ts +80 -0
  137. package/dist/utils/text-utils.js +191 -0
  138. package/dist/utils/text-utils.js.map +1 -0
  139. package/dist/utils/token-counter.d.ts +33 -0
  140. package/dist/utils/token-counter.js +79 -0
  141. package/dist/utils/token-counter.js.map +1 -0
  142. package/eslint.config.mjs +33 -0
  143. package/package.json +87 -0
@@ -0,0 +1,14 @@
1
+ import { ToolResult, AgentState } from "../types/index";
2
+ export declare class Agent {
3
+ private textEditor;
4
+ private bash;
5
+ private state;
6
+ constructor();
7
+ processCommand(input: string): Promise<ToolResult>;
8
+ private parseViewCommand;
9
+ private parseStrReplaceCommand;
10
+ private parseCreateCommand;
11
+ private parseInsertCommand;
12
+ private getHelp;
13
+ getCurrentState(): AgentState;
14
+ }
@@ -0,0 +1,139 @@
1
+ import { TextEditorTool, BashTool } from "../tools/index";
2
+ export class Agent {
3
+ textEditor;
4
+ bash;
5
+ state;
6
+ constructor() {
7
+ this.textEditor = new TextEditorTool();
8
+ this.bash = new BashTool();
9
+ this.state = {
10
+ currentDirectory: process.cwd(),
11
+ editHistory: [],
12
+ tools: [],
13
+ };
14
+ }
15
+ async processCommand(input) {
16
+ const trimmedInput = input.trim();
17
+ if (trimmedInput.startsWith("view ")) {
18
+ const args = this.parseViewCommand(trimmedInput);
19
+ return this.textEditor.view(args.path, args.range);
20
+ }
21
+ if (trimmedInput.startsWith("str_replace ")) {
22
+ const args = this.parseStrReplaceCommand(trimmedInput);
23
+ if (!args) {
24
+ return { success: false, error: "Invalid str_replace command format" };
25
+ }
26
+ return this.textEditor.strReplace(args.path, args.oldStr, args.newStr);
27
+ }
28
+ if (trimmedInput.startsWith("create ")) {
29
+ const args = this.parseCreateCommand(trimmedInput);
30
+ if (!args) {
31
+ return { success: false, error: "Invalid create command format" };
32
+ }
33
+ return this.textEditor.create(args.path, args.content);
34
+ }
35
+ if (trimmedInput.startsWith("insert ")) {
36
+ const args = this.parseInsertCommand(trimmedInput);
37
+ if (!args) {
38
+ return { success: false, error: "Invalid insert command format" };
39
+ }
40
+ return this.textEditor.insert(args.path, args.line, args.content);
41
+ }
42
+ if (trimmedInput === "undo_edit") {
43
+ return this.textEditor.undoEdit();
44
+ }
45
+ if (trimmedInput.startsWith("bash ") || trimmedInput.startsWith("$ ")) {
46
+ const command = trimmedInput.startsWith("bash ")
47
+ ? trimmedInput.substring(5)
48
+ : trimmedInput.substring(2);
49
+ return this.bash.execute(command);
50
+ }
51
+ if (trimmedInput === "pwd") {
52
+ return {
53
+ success: true,
54
+ output: this.bash.getCurrentDirectory(),
55
+ };
56
+ }
57
+ if (trimmedInput === "history") {
58
+ const history = this.textEditor.getEditHistory();
59
+ return {
60
+ success: true,
61
+ output: history.length > 0
62
+ ? JSON.stringify(history, null, 2)
63
+ : "No edit history",
64
+ };
65
+ }
66
+ if (trimmedInput === "help") {
67
+ return this.getHelp();
68
+ }
69
+ return this.bash.execute(trimmedInput);
70
+ }
71
+ parseViewCommand(input) {
72
+ const parts = input.split(" ");
73
+ const path = parts[1];
74
+ if (parts.length > 2) {
75
+ const rangePart = parts[2];
76
+ if (rangePart.includes("-")) {
77
+ const [start, end] = rangePart.split("-").map(Number);
78
+ return { path, range: [start, end] };
79
+ }
80
+ }
81
+ return { path };
82
+ }
83
+ parseStrReplaceCommand(input) {
84
+ const match = input.match(/str_replace\s+(\S+)\s+"([^"]+)"\s+"([^"]*)"/);
85
+ if (!match) {
86
+ return null;
87
+ }
88
+ return {
89
+ path: match[1],
90
+ oldStr: match[2],
91
+ newStr: match[3],
92
+ };
93
+ }
94
+ parseCreateCommand(input) {
95
+ const match = input.match(/create\s+(\S+)\s+"([^"]*)"/);
96
+ if (!match) {
97
+ return null;
98
+ }
99
+ return {
100
+ path: match[1],
101
+ content: match[2],
102
+ };
103
+ }
104
+ parseInsertCommand(input) {
105
+ const match = input.match(/insert\s+(\S+)\s+(\d+)\s+"([^"]*)"/);
106
+ if (!match) {
107
+ return null;
108
+ }
109
+ return {
110
+ path: match[1],
111
+ line: parseInt(match[2]),
112
+ content: match[3],
113
+ };
114
+ }
115
+ getHelp() {
116
+ return {
117
+ success: true,
118
+ output: `Available commands:
119
+ view <path> [start-end] - View file contents or directory
120
+ str_replace <path> "old" "new" - Replace text in file
121
+ create <path> "content" - Create new file with content
122
+ insert <path> <line> "text" - Insert text at specific line
123
+ undo_edit - Undo last edit operation
124
+ bash <command> - Execute bash command
125
+ $ <command> - Execute bash command (shorthand)
126
+ pwd - Show current directory
127
+ history - Show edit history
128
+ help - Show this help message`,
129
+ };
130
+ }
131
+ getCurrentState() {
132
+ return {
133
+ ...this.state,
134
+ currentDirectory: this.bash.getCurrentDirectory(),
135
+ editHistory: this.textEditor.getEditHistory(),
136
+ };
137
+ }
138
+ }
139
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import { SuperAgentToolCall } from "../core/client";
2
+ import { ToolResult } from "../types";
3
+ import { EventEmitter } from "events";
4
+ export interface ChatEntry {
5
+ type: "user" | "assistant" | "tool_result" | "tool_call";
6
+ content: string;
7
+ timestamp: Date;
8
+ toolCalls?: SuperAgentToolCall[];
9
+ toolCall?: SuperAgentToolCall;
10
+ toolResult?: {
11
+ success: boolean;
12
+ output?: string;
13
+ error?: string;
14
+ };
15
+ isStreaming?: boolean;
16
+ }
17
+ export interface StreamingChunk {
18
+ type: "content" | "tool_calls" | "tool_result" | "done" | "token_count";
19
+ content?: string;
20
+ toolCalls?: SuperAgentToolCall[];
21
+ toolCall?: SuperAgentToolCall;
22
+ toolResult?: ToolResult;
23
+ tokenCount?: number;
24
+ }
25
+ export declare class SuperAgent extends EventEmitter {
26
+ private superAgentClient;
27
+ private textEditor;
28
+ private morphEditor;
29
+ private bash;
30
+ private todoTool;
31
+ private confirmationTool;
32
+ private search;
33
+ private chatHistory;
34
+ private messages;
35
+ private tokenCounter;
36
+ private abortController;
37
+ private mcpInitialized;
38
+ private maxToolRounds;
39
+ constructor(apiKey: string, baseURL?: string, model?: string, maxToolRounds?: number);
40
+ private initializeMCP;
41
+ private isGrokModel;
42
+ private shouldUseSearchFor;
43
+ processUserMessage(message: string): Promise<ChatEntry[]>;
44
+ private messageReducer;
45
+ processUserMessageStream(message: string): AsyncGenerator<StreamingChunk, void, unknown>;
46
+ private executeTool;
47
+ private executeMCPTool;
48
+ getChatHistory(): ChatEntry[];
49
+ getCurrentDirectory(): string;
50
+ executeBashCommand(command: string): Promise<ToolResult>;
51
+ getCurrentModel(): string;
52
+ setModel(model: string): void;
53
+ abortCurrentOperation(): void;
54
+ }