@involvex/super-agent-cli 0.0.45 → 0.0.47
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.
- package/bunfig.toml +43 -0
- package/dist/index.js +9 -15
- package/dist/super-agent-cli.exe +0 -0
- package/package.json +4 -1
- package/.grok/settings.json +0 -3
- package/.super-agent/settings.json +0 -23
- package/dist/agent/grok-agent.d.ts +0 -54
- package/dist/agent/grok-agent.js +0 -638
- package/dist/agent/grok-agent.js.map +0 -1
- package/dist/agent/index.d.ts +0 -14
- package/dist/agent/index.js +0 -139
- package/dist/agent/index.js.map +0 -1
- package/dist/agent/super-agent.d.ts +0 -54
- package/dist/agent/super-agent.js +0 -638
- package/dist/agent/super-agent.js.map +0 -1
- package/dist/commands/mcp.d.ts +0 -2
- package/dist/commands/mcp.js +0 -247
- package/dist/commands/mcp.js.map +0 -1
- package/dist/core/client.d.ts +0 -49
- package/dist/core/client.js +0 -81
- package/dist/core/client.js.map +0 -1
- package/dist/core/tools.d.ts +0 -8
- package/dist/core/tools.js +0 -351
- package/dist/core/tools.js.map +0 -1
- package/dist/grok/client.d.ts +0 -49
- package/dist/grok/client.js +0 -81
- package/dist/grok/client.js.map +0 -1
- package/dist/grok/tools.d.ts +0 -8
- package/dist/grok/tools.js +0 -351
- package/dist/grok/tools.js.map +0 -1
- package/dist/hooks/use-enhanced-input.d.ts +0 -37
- package/dist/hooks/use-enhanced-input.js +0 -228
- package/dist/hooks/use-enhanced-input.js.map +0 -1
- package/dist/hooks/use-input-handler.d.ts +0 -34
- package/dist/hooks/use-input-handler.js +0 -607
- package/dist/hooks/use-input-handler.js.map +0 -1
- package/dist/hooks/use-input-history.d.ts +0 -9
- package/dist/hooks/use-input-history.js +0 -62
- package/dist/hooks/use-input-history.js.map +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js.map +0 -1
- package/dist/mcp/client.d.ts +0 -29
- package/dist/mcp/client.js +0 -127
- package/dist/mcp/client.js.map +0 -1
- package/dist/mcp/config.d.ts +0 -13
- package/dist/mcp/config.js +0 -45
- package/dist/mcp/config.js.map +0 -1
- package/dist/mcp/transports.d.ts +0 -51
- package/dist/mcp/transports.js +0 -229
- package/dist/mcp/transports.js.map +0 -1
- package/dist/tools/bash.d.ts +0 -10
- package/dist/tools/bash.js +0 -76
- package/dist/tools/bash.js.map +0 -1
- package/dist/tools/confirmation-tool.d.ts +0 -16
- package/dist/tools/confirmation-tool.js +0 -77
- package/dist/tools/confirmation-tool.js.map +0 -1
- package/dist/tools/index.d.ts +0 -6
- package/dist/tools/index.js +0 -7
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/morph-editor.d.ts +0 -36
- package/dist/tools/morph-editor.js +0 -324
- package/dist/tools/morph-editor.js.map +0 -1
- package/dist/tools/search.d.ts +0 -69
- package/dist/tools/search.js +0 -307
- package/dist/tools/search.js.map +0 -1
- package/dist/tools/text-editor.d.ts +0 -26
- package/dist/tools/text-editor.js +0 -583
- package/dist/tools/text-editor.js.map +0 -1
- package/dist/tools/todo-tool.d.ts +0 -20
- package/dist/tools/todo-tool.js +0 -134
- package/dist/tools/todo-tool.js.map +0 -1
- package/dist/types/index.d.ts +0 -30
- package/dist/types/index.js +0 -2
- package/dist/types/index.js.map +0 -1
- package/dist/ui/app.d.ts +0 -6
- package/dist/ui/app.js +0 -76
- package/dist/ui/app.js.map +0 -1
- package/dist/ui/components/api-key-input.d.ts +0 -6
- package/dist/ui/components/api-key-input.js +0 -70
- package/dist/ui/components/api-key-input.js.map +0 -1
- package/dist/ui/components/chat-history.d.ts +0 -7
- package/dist/ui/components/chat-history.js +0 -136
- package/dist/ui/components/chat-history.js.map +0 -1
- package/dist/ui/components/chat-input.d.ts +0 -8
- package/dist/ui/components/chat-input.js +0 -47
- package/dist/ui/components/chat-input.js.map +0 -1
- package/dist/ui/components/chat-interface.d.ts +0 -7
- package/dist/ui/components/chat-interface.js +0 -213
- package/dist/ui/components/chat-interface.js.map +0 -1
- package/dist/ui/components/command-suggestions.d.ts +0 -16
- package/dist/ui/components/command-suggestions.js +0 -18
- package/dist/ui/components/command-suggestions.js.map +0 -1
- package/dist/ui/components/confirmation-dialog.d.ts +0 -10
- package/dist/ui/components/confirmation-dialog.js +0 -70
- package/dist/ui/components/confirmation-dialog.js.map +0 -1
- package/dist/ui/components/diff-renderer.d.ts +0 -13
- package/dist/ui/components/diff-renderer.js +0 -200
- package/dist/ui/components/diff-renderer.js.map +0 -1
- package/dist/ui/components/loading-spinner.d.ts +0 -7
- package/dist/ui/components/loading-spinner.js +0 -52
- package/dist/ui/components/loading-spinner.js.map +0 -1
- package/dist/ui/components/mcp-status.d.ts +0 -4
- package/dist/ui/components/mcp-status.js +0 -37
- package/dist/ui/components/mcp-status.js.map +0 -1
- package/dist/ui/components/model-selection.d.ts +0 -11
- package/dist/ui/components/model-selection.js +0 -9
- package/dist/ui/components/model-selection.js.map +0 -1
- package/dist/ui/shared/max-sized-box.d.ts +0 -8
- package/dist/ui/shared/max-sized-box.js +0 -6
- package/dist/ui/shared/max-sized-box.js.map +0 -1
- package/dist/ui/utils/code-colorizer.d.ts +0 -2
- package/dist/ui/utils/code-colorizer.js +0 -7
- package/dist/ui/utils/code-colorizer.js.map +0 -1
- package/dist/ui/utils/colors.d.ts +0 -14
- package/dist/ui/utils/colors.js +0 -15
- package/dist/ui/utils/colors.js.map +0 -1
- package/dist/ui/utils/markdown-renderer.d.ts +0 -3
- package/dist/ui/utils/markdown-renderer.js +0 -23
- package/dist/ui/utils/markdown-renderer.js.map +0 -1
- package/dist/utils/confirmation-service.d.ts +0 -33
- package/dist/utils/confirmation-service.js +0 -110
- package/dist/utils/confirmation-service.js.map +0 -1
- package/dist/utils/custom-instructions.d.ts +0 -1
- package/dist/utils/custom-instructions.js +0 -23
- package/dist/utils/custom-instructions.js.map +0 -1
- package/dist/utils/model-config.d.ts +0 -28
- package/dist/utils/model-config.js +0 -42
- package/dist/utils/model-config.js.map +0 -1
- package/dist/utils/settings-manager.d.ts +0 -99
- package/dist/utils/settings-manager.js +0 -286
- package/dist/utils/settings-manager.js.map +0 -1
- package/dist/utils/settings.d.ts +0 -1
- package/dist/utils/settings.js +0 -4
- package/dist/utils/settings.js.map +0 -1
- package/dist/utils/text-utils.d.ts +0 -80
- package/dist/utils/text-utils.js +0 -191
- package/dist/utils/text-utils.js.map +0 -1
- package/dist/utils/token-counter.d.ts +0 -33
- package/dist/utils/token-counter.js +0 -79
- package/dist/utils/token-counter.js.map +0 -1
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { formatTokenCount } from "../../utils/token-counter";
|
|
3
|
-
import { useState, useEffect } from "react";
|
|
4
|
-
import { Box, Text } from "ink";
|
|
5
|
-
const loadingTexts = [
|
|
6
|
-
"Thinking...",
|
|
7
|
-
"Computing...",
|
|
8
|
-
"Analyzing...",
|
|
9
|
-
"Processing...",
|
|
10
|
-
"Calculating...",
|
|
11
|
-
"Interfacing...",
|
|
12
|
-
"Optimizing...",
|
|
13
|
-
"Synthesizing...",
|
|
14
|
-
"Decrypting...",
|
|
15
|
-
"Calibrating...",
|
|
16
|
-
"Bootstrapping...",
|
|
17
|
-
"Synchronizing...",
|
|
18
|
-
"Compiling...",
|
|
19
|
-
"Downloading...",
|
|
20
|
-
];
|
|
21
|
-
export function LoadingSpinner({ isActive, processingTime, tokenCount, }) {
|
|
22
|
-
const [spinnerFrame, setSpinnerFrame] = useState(0);
|
|
23
|
-
const [loadingTextIndex, setLoadingTextIndex] = useState(0);
|
|
24
|
-
useEffect(() => {
|
|
25
|
-
if (!isActive) {
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
const spinnerFrames = ["/", "-", "\\", "|"];
|
|
29
|
-
// Reduced frequency: 500ms instead of 250ms to reduce flickering on Windows
|
|
30
|
-
const interval = setInterval(() => {
|
|
31
|
-
setSpinnerFrame(prev => (prev + 1) % spinnerFrames.length);
|
|
32
|
-
}, 500);
|
|
33
|
-
return () => clearInterval(interval);
|
|
34
|
-
}, [isActive]);
|
|
35
|
-
useEffect(() => {
|
|
36
|
-
if (!isActive) {
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
setLoadingTextIndex(Math.floor(Math.random() * loadingTexts.length));
|
|
40
|
-
// Increased interval: 4s instead of 2s to reduce state changes
|
|
41
|
-
const interval = setInterval(() => {
|
|
42
|
-
setLoadingTextIndex(Math.floor(Math.random() * loadingTexts.length));
|
|
43
|
-
}, 4000);
|
|
44
|
-
return () => clearInterval(interval);
|
|
45
|
-
}, [isActive]);
|
|
46
|
-
if (!isActive) {
|
|
47
|
-
return null;
|
|
48
|
-
}
|
|
49
|
-
const spinnerFrames = ["/", "-", "\\", "|"];
|
|
50
|
-
return (_jsxs(Box, { marginTop: 1, children: [_jsxs(Text, { color: "cyan", children: [spinnerFrames[spinnerFrame], " ", loadingTexts[loadingTextIndex], " "] }), _jsxs(Text, { color: "gray", children: ["(", processingTime, "s \u00B7 \u2191 ", formatTokenCount(tokenCount), " tokens \u00B7 esc to interrupt)"] })] }));
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=loading-spinner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loading-spinner.js","sourceRoot":"","sources":["../../../src/ui/components/loading-spinner.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAQhC,MAAM,YAAY,GAAG;IACnB,aAAa;IACb,cAAc;IACd,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,gBAAgB;IAChB,eAAe;IACf,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;IACd,gBAAgB;CACjB,CAAC;AAEF,MAAM,UAAU,cAAc,CAAC,EAC7B,QAAQ,EACR,cAAc,EACd,UAAU,GACU;IACpB,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAC5C,4EAA4E;QAC5E,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7D,CAAC,EAAE,GAAG,CAAC,CAAC;QAER,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAErE,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QACvE,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAE5C,OAAO,CACL,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,aACf,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aACf,aAAa,CAAC,YAAY,CAAC,OAAG,YAAY,CAAC,gBAAgB,CAAC,EAAE,GAAG,IAC7D,EACP,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBACd,cAAc,sBAAQ,gBAAgB,CAAC,UAAU,CAAC,wCAE/C,IACH,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { getMCPManager } from "../../core/tools";
|
|
3
|
-
import { useEffect, useState } from "react";
|
|
4
|
-
import { Box, Text } from "ink";
|
|
5
|
-
export function MCPStatus({}) {
|
|
6
|
-
const [connectedServers, setConnectedServers] = useState([]);
|
|
7
|
-
const [availableTools, setAvailableTools] = useState([]);
|
|
8
|
-
useEffect(() => {
|
|
9
|
-
const updateStatus = () => {
|
|
10
|
-
try {
|
|
11
|
-
const manager = getMCPManager();
|
|
12
|
-
const servers = manager.getServers();
|
|
13
|
-
const tools = manager.getTools();
|
|
14
|
-
setConnectedServers(servers);
|
|
15
|
-
setAvailableTools(tools);
|
|
16
|
-
}
|
|
17
|
-
catch (error) {
|
|
18
|
-
// MCP manager not initialized yet
|
|
19
|
-
setConnectedServers([]);
|
|
20
|
-
setAvailableTools([]);
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
// Initial update with a small delay to allow MCP initialization
|
|
24
|
-
const initialTimer = setTimeout(updateStatus, 2000);
|
|
25
|
-
// Set up polling to check for status changes
|
|
26
|
-
const interval = setInterval(updateStatus, 2000);
|
|
27
|
-
return () => {
|
|
28
|
-
clearTimeout(initialTimer);
|
|
29
|
-
clearInterval(interval);
|
|
30
|
-
};
|
|
31
|
-
}, []);
|
|
32
|
-
if (connectedServers.length === 0) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
return (_jsx(Box, { marginLeft: 1, children: _jsxs(Text, { color: "green", children: ["\u2692 mcps: ", connectedServers.length, " "] }) }));
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=mcp-status.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-status.js","sourceRoot":"","sources":["../../../src/ui/components/mcp-status.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAIhC,MAAM,UAAU,SAAS,CAAC,EAAkB;IAC1C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IACvE,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAY,EAAE,CAAC,CAAC;IAEpE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;gBAChC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;gBACrC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAEjC,mBAAmB,CAAC,OAAO,CAAC,CAAC;gBAC7B,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,kCAAkC;gBAClC,mBAAmB,CAAC,EAAE,CAAC,CAAC;gBACxB,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACxB,CAAC;QACH,CAAC,CAAC;QAEF,gEAAgE;QAChE,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAEpD,6CAA6C;QAC7C,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAEjD,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,YAAY,CAAC,CAAC;YAC3B,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,8BAAU,gBAAgB,CAAC,MAAM,SAAS,GACzD,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
interface ModelOption {
|
|
2
|
-
model: string;
|
|
3
|
-
}
|
|
4
|
-
interface ModelSelectionProps {
|
|
5
|
-
models: ModelOption[];
|
|
6
|
-
selectedIndex: number;
|
|
7
|
-
isVisible: boolean;
|
|
8
|
-
currentModel: string;
|
|
9
|
-
}
|
|
10
|
-
export declare function ModelSelection({ models, selectedIndex, isVisible, currentModel, }: ModelSelectionProps): import("react/jsx-runtime").JSX.Element | null;
|
|
11
|
-
export {};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Box, Text } from "ink";
|
|
3
|
-
export function ModelSelection({ models, selectedIndex, isVisible, currentModel, }) {
|
|
4
|
-
if (!isVisible) {
|
|
5
|
-
return null;
|
|
6
|
-
}
|
|
7
|
-
return (_jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Box, { marginBottom: 1, children: _jsxs(Text, { color: "cyan", children: ["Select Super Agent Model (current: ", currentModel, "):"] }) }), models.map((modelOption, index) => (_jsx(Box, { paddingLeft: 1, children: _jsx(Text, { color: index === selectedIndex ? "black" : "white", backgroundColor: index === selectedIndex ? "cyan" : undefined, children: modelOption.model }) }, index))), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: "gray", dimColor: true, children: "\u2191\u2193 navigate \u2022 Enter/Tab select \u2022 Esc cancel" }) })] }));
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=model-selection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model-selection.js","sourceRoot":"","sources":["../../../src/ui/components/model-selection.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAahC,MAAM,UAAU,cAAc,CAAC,EAC7B,MAAM,EACN,aAAa,EACb,SAAS,EACT,YAAY,GACQ;IACpB,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,aACvC,KAAC,GAAG,IAAC,YAAY,EAAE,CAAC,YAClB,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,oDACoB,YAAY,UAC3C,GACH,EACL,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,CAClC,KAAC,GAAG,IAAa,WAAW,EAAE,CAAC,YAC7B,KAAC,IAAI,IACH,KAAK,EAAE,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAClD,eAAe,EAAE,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,YAE5D,WAAW,CAAC,KAAK,GACb,IANC,KAAK,CAOT,CACP,CAAC,EACF,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,EAAC,QAAQ,sFAEpB,GACH,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Box } from "ink";
|
|
3
|
-
export const MaxSizedBox = ({ maxHeight, maxWidth, children, ...props }) => {
|
|
4
|
-
return (_jsx(Box, { flexDirection: "column", ...props, children: children }));
|
|
5
|
-
};
|
|
6
|
-
//# sourceMappingURL=max-sized-box.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"max-sized-box.js","sourceRoot":"","sources":["../../../src/ui/shared/max-sized-box.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAQ1B,MAAM,CAAC,MAAM,WAAW,GAA+B,CAAC,EACtD,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,EAAE;IACH,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,KAAK,KAAK,YAClC,QAAQ,GACL,CACP,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Text, Box } from "ink";
|
|
3
|
-
export const colorizeCode = (content, language, availableTerminalHeight, terminalWidth) => {
|
|
4
|
-
// Simple plain text rendering - could be enhanced with syntax highlighting later
|
|
5
|
-
return (_jsx(Box, { flexDirection: "column", children: content.split("\n").map((line, index) => (_jsx(Text, { wrap: "wrap", children: line }, index))) }));
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=code-colorizer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"code-colorizer.js","sourceRoot":"","sources":["../../../src/ui/utils/code-colorizer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAGhC,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,OAAe,EACf,QAAuB,EACvB,uBAAgC,EAChC,aAAsB,EACL,EAAE;IACnB,iFAAiF;IACjF,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,YACxB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACxC,KAAC,IAAI,IAAa,IAAI,EAAC,MAAM,YAC1B,IAAI,IADI,KAAK,CAET,CACR,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Color constants for the CLI interface
|
|
3
|
-
*/
|
|
4
|
-
export declare const Colors: {
|
|
5
|
-
readonly AccentYellow: "yellow";
|
|
6
|
-
readonly Gray: "gray";
|
|
7
|
-
readonly Red: "red";
|
|
8
|
-
readonly Green: "green";
|
|
9
|
-
readonly Blue: "blue";
|
|
10
|
-
readonly Cyan: "cyan";
|
|
11
|
-
readonly Magenta: "magenta";
|
|
12
|
-
readonly White: "white";
|
|
13
|
-
readonly Black: "black";
|
|
14
|
-
};
|
package/dist/ui/utils/colors.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Color constants for the CLI interface
|
|
3
|
-
*/
|
|
4
|
-
export const Colors = {
|
|
5
|
-
AccentYellow: "yellow",
|
|
6
|
-
Gray: "gray",
|
|
7
|
-
Red: "red",
|
|
8
|
-
Green: "green",
|
|
9
|
-
Blue: "blue",
|
|
10
|
-
Cyan: "cyan",
|
|
11
|
-
Magenta: "magenta",
|
|
12
|
-
White: "white",
|
|
13
|
-
Black: "black",
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=colors.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"colors.js","sourceRoot":"","sources":["../../../src/ui/utils/colors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,YAAY,EAAE,QAAQ;IACtB,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import TerminalRenderer from "marked-terminal";
|
|
3
|
-
import { marked } from "marked";
|
|
4
|
-
import { Text } from "ink";
|
|
5
|
-
// Configure marked to use the terminal renderer with default settings
|
|
6
|
-
marked.setOptions({
|
|
7
|
-
renderer: new TerminalRenderer(),
|
|
8
|
-
});
|
|
9
|
-
export function MarkdownRenderer({ content }) {
|
|
10
|
-
try {
|
|
11
|
-
// Use marked.parse for synchronous parsing
|
|
12
|
-
const result = marked.parse(content);
|
|
13
|
-
// Handle both sync and async results
|
|
14
|
-
const rendered = typeof result === "string" ? result : content;
|
|
15
|
-
return _jsx(Text, { children: rendered });
|
|
16
|
-
}
|
|
17
|
-
catch (error) {
|
|
18
|
-
// Fallback to plain text if markdown parsing fails
|
|
19
|
-
console.error("Markdown rendering error:", error);
|
|
20
|
-
return _jsx(Text, { children: content });
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=markdown-renderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-renderer.js","sourceRoot":"","sources":["../../../src/ui/utils/markdown-renderer.tsx"],"names":[],"mappings":";AAAA,OAAO,gBAAgB,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAG3B,sEAAsE;AACtE,MAAM,CAAC,UAAU,CAAC;IAChB,QAAQ,EAAE,IAAK,gBAAwB,EAAE;CAC1C,CAAC,CAAC;AAEH,MAAM,UAAU,gBAAgB,CAAC,EAAE,OAAO,EAAuB;IAC/D,IAAI,CAAC;QACH,2CAA2C;QAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrC,qCAAqC;QACrC,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAC/D,OAAO,KAAC,IAAI,cAAE,QAAQ,GAAQ,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,mDAAmD;QACnD,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAClD,OAAO,KAAC,IAAI,cAAE,OAAO,GAAQ,CAAC;IAChC,CAAC;AACH,CAAC"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from "events";
|
|
2
|
-
export interface ConfirmationOptions {
|
|
3
|
-
operation: string;
|
|
4
|
-
filename: string;
|
|
5
|
-
showVSCodeOpen?: boolean;
|
|
6
|
-
content?: string;
|
|
7
|
-
}
|
|
8
|
-
export interface ConfirmationResult {
|
|
9
|
-
confirmed: boolean;
|
|
10
|
-
dontAskAgain?: boolean;
|
|
11
|
-
feedback?: string;
|
|
12
|
-
}
|
|
13
|
-
export declare class ConfirmationService extends EventEmitter {
|
|
14
|
-
private static instance;
|
|
15
|
-
private skipConfirmationThisSession;
|
|
16
|
-
private pendingConfirmation;
|
|
17
|
-
private resolveConfirmation;
|
|
18
|
-
private sessionFlags;
|
|
19
|
-
static getInstance(): ConfirmationService;
|
|
20
|
-
constructor();
|
|
21
|
-
requestConfirmation(options: ConfirmationOptions, operationType?: "file" | "bash"): Promise<ConfirmationResult>;
|
|
22
|
-
confirmOperation(confirmed: boolean, dontAskAgain?: boolean): void;
|
|
23
|
-
rejectOperation(feedback?: string): void;
|
|
24
|
-
private openInVSCode;
|
|
25
|
-
isPending(): boolean;
|
|
26
|
-
resetSession(): void;
|
|
27
|
-
getSessionFlags(): {
|
|
28
|
-
fileOperations: boolean;
|
|
29
|
-
bashCommands: boolean;
|
|
30
|
-
allOperations: boolean;
|
|
31
|
-
};
|
|
32
|
-
setSessionFlag(flagType: "fileOperations" | "bashCommands" | "allOperations", value: boolean): void;
|
|
33
|
-
}
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from "events";
|
|
2
|
-
import { exec } from "child_process";
|
|
3
|
-
import { promisify } from "util";
|
|
4
|
-
const execAsync = promisify(exec);
|
|
5
|
-
export class ConfirmationService extends EventEmitter {
|
|
6
|
-
static instance;
|
|
7
|
-
skipConfirmationThisSession = false;
|
|
8
|
-
pendingConfirmation = null;
|
|
9
|
-
resolveConfirmation = null;
|
|
10
|
-
// Session flags for different operation types
|
|
11
|
-
sessionFlags = {
|
|
12
|
-
fileOperations: false,
|
|
13
|
-
bashCommands: false,
|
|
14
|
-
allOperations: false,
|
|
15
|
-
};
|
|
16
|
-
static getInstance() {
|
|
17
|
-
if (!ConfirmationService.instance) {
|
|
18
|
-
ConfirmationService.instance = new ConfirmationService();
|
|
19
|
-
}
|
|
20
|
-
return ConfirmationService.instance;
|
|
21
|
-
}
|
|
22
|
-
constructor() {
|
|
23
|
-
super();
|
|
24
|
-
}
|
|
25
|
-
async requestConfirmation(options, operationType = "file") {
|
|
26
|
-
// Check session flags
|
|
27
|
-
if (this.sessionFlags.allOperations ||
|
|
28
|
-
(operationType === "file" && this.sessionFlags.fileOperations) ||
|
|
29
|
-
(operationType === "bash" && this.sessionFlags.bashCommands)) {
|
|
30
|
-
return { confirmed: true };
|
|
31
|
-
}
|
|
32
|
-
// If VS Code should be opened, try to open it
|
|
33
|
-
if (options.showVSCodeOpen) {
|
|
34
|
-
try {
|
|
35
|
-
await this.openInVSCode(options.filename);
|
|
36
|
-
}
|
|
37
|
-
catch (error) {
|
|
38
|
-
// If VS Code opening fails, continue without it
|
|
39
|
-
options.showVSCodeOpen = false;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
// Create a promise that will be resolved by the UI component
|
|
43
|
-
this.pendingConfirmation = new Promise(resolve => {
|
|
44
|
-
this.resolveConfirmation = resolve;
|
|
45
|
-
});
|
|
46
|
-
// Emit custom event that the UI can listen to (using setImmediate to ensure the UI updates)
|
|
47
|
-
setImmediate(() => {
|
|
48
|
-
this.emit("confirmation-requested", options);
|
|
49
|
-
});
|
|
50
|
-
const result = await this.pendingConfirmation;
|
|
51
|
-
if (result.dontAskAgain) {
|
|
52
|
-
// Set the appropriate session flag based on operation type
|
|
53
|
-
if (operationType === "file") {
|
|
54
|
-
this.sessionFlags.fileOperations = true;
|
|
55
|
-
}
|
|
56
|
-
else if (operationType === "bash") {
|
|
57
|
-
this.sessionFlags.bashCommands = true;
|
|
58
|
-
}
|
|
59
|
-
// Could also set allOperations for global skip
|
|
60
|
-
}
|
|
61
|
-
return result;
|
|
62
|
-
}
|
|
63
|
-
confirmOperation(confirmed, dontAskAgain) {
|
|
64
|
-
if (this.resolveConfirmation) {
|
|
65
|
-
this.resolveConfirmation({ confirmed, dontAskAgain });
|
|
66
|
-
this.resolveConfirmation = null;
|
|
67
|
-
this.pendingConfirmation = null;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
rejectOperation(feedback) {
|
|
71
|
-
if (this.resolveConfirmation) {
|
|
72
|
-
this.resolveConfirmation({ confirmed: false, feedback });
|
|
73
|
-
this.resolveConfirmation = null;
|
|
74
|
-
this.pendingConfirmation = null;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
async openInVSCode(filename) {
|
|
78
|
-
// Try different VS Code commands
|
|
79
|
-
const commands = ["code", "code-insiders", "codium"];
|
|
80
|
-
for (const cmd of commands) {
|
|
81
|
-
try {
|
|
82
|
-
await execAsync(`which ${cmd}`);
|
|
83
|
-
await execAsync(`${cmd} "${filename}"`);
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
catch (error) {
|
|
87
|
-
// Continue to next command
|
|
88
|
-
continue;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
throw new Error("VS Code not found");
|
|
92
|
-
}
|
|
93
|
-
isPending() {
|
|
94
|
-
return this.pendingConfirmation !== null;
|
|
95
|
-
}
|
|
96
|
-
resetSession() {
|
|
97
|
-
this.sessionFlags = {
|
|
98
|
-
fileOperations: false,
|
|
99
|
-
bashCommands: false,
|
|
100
|
-
allOperations: false,
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
getSessionFlags() {
|
|
104
|
-
return { ...this.sessionFlags };
|
|
105
|
-
}
|
|
106
|
-
setSessionFlag(flagType, value) {
|
|
107
|
-
this.sessionFlags[flagType] = value;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
//# sourceMappingURL=confirmation-service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"confirmation-service.js","sourceRoot":"","sources":["../../src/utils/confirmation-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function loadCustomInstructions(workingDirectory?: string): string | null;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import * as path from "path";
|
|
2
|
-
import * as os from "os";
|
|
3
|
-
import * as fs from "fs";
|
|
4
|
-
export function loadCustomInstructions(workingDirectory = process.cwd()) {
|
|
5
|
-
try {
|
|
6
|
-
let instructionsPath = path.join(workingDirectory, ".super-agent", "SUPER_AGENT.md");
|
|
7
|
-
if (fs.existsSync(instructionsPath)) {
|
|
8
|
-
const customInstructions = fs.readFileSync(instructionsPath, "utf-8");
|
|
9
|
-
return customInstructions.trim();
|
|
10
|
-
}
|
|
11
|
-
instructionsPath = path.join(os.homedir(), ".super-agent", "SUPER_AGENT.md");
|
|
12
|
-
if (fs.existsSync(instructionsPath)) {
|
|
13
|
-
const customInstructions = fs.readFileSync(instructionsPath, "utf-8");
|
|
14
|
-
return customInstructions.trim();
|
|
15
|
-
}
|
|
16
|
-
return null;
|
|
17
|
-
}
|
|
18
|
-
catch (error) {
|
|
19
|
-
console.warn("Failed to load custom instructions:", error);
|
|
20
|
-
return null;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=custom-instructions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"custom-instructions.js","sourceRoot":"","sources":["../../src/utils/custom-instructions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB,MAAM,UAAU,sBAAsB,CACpC,mBAA2B,OAAO,CAAC,GAAG,EAAE;IAExC,IAAI,CAAC;QACH,IAAI,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAC9B,gBAAgB,EAChB,cAAc,EACd,gBAAgB,CACjB,CAAC;QAEF,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACpC,MAAM,kBAAkB,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACtE,OAAO,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACnC,CAAC;QAED,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAC1B,EAAE,CAAC,OAAO,EAAE,EACZ,cAAc,EACd,gBAAgB,CACjB,CAAC;QAEF,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACpC,MAAM,kBAAkB,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACtE,OAAO,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACnC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { UserSettings, ProjectSettings } from "./settings-manager";
|
|
2
|
-
export interface ModelOption {
|
|
3
|
-
model: string;
|
|
4
|
-
}
|
|
5
|
-
export type ModelConfig = string;
|
|
6
|
-
export { UserSettings, ProjectSettings };
|
|
7
|
-
/**
|
|
8
|
-
* Get the effective current model
|
|
9
|
-
* Priority: project current model > user default model > system default
|
|
10
|
-
*/
|
|
11
|
-
export declare function getCurrentModel(): string;
|
|
12
|
-
/**
|
|
13
|
-
* Load model configuration
|
|
14
|
-
* Priority: user-settings.json models > default hardcoded
|
|
15
|
-
*/
|
|
16
|
-
export declare function loadModelConfig(): ModelOption[];
|
|
17
|
-
/**
|
|
18
|
-
* Get default models list
|
|
19
|
-
*/
|
|
20
|
-
export declare function getDefaultModels(): string[];
|
|
21
|
-
/**
|
|
22
|
-
* Update the current model in project settings
|
|
23
|
-
*/
|
|
24
|
-
export declare function updateCurrentModel(modelName: string): void;
|
|
25
|
-
/**
|
|
26
|
-
* Update the user's default model preference
|
|
27
|
-
*/
|
|
28
|
-
export declare function updateDefaultModel(modelName: string): void;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { getSettingsManager, } from "./settings-manager";
|
|
2
|
-
/**
|
|
3
|
-
* Get the effective current model
|
|
4
|
-
* Priority: project current model > user default model > system default
|
|
5
|
-
*/
|
|
6
|
-
export function getCurrentModel() {
|
|
7
|
-
const manager = getSettingsManager();
|
|
8
|
-
return manager.getCurrentModel();
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Load model configuration
|
|
12
|
-
* Priority: user-settings.json models > default hardcoded
|
|
13
|
-
*/
|
|
14
|
-
export function loadModelConfig() {
|
|
15
|
-
const manager = getSettingsManager();
|
|
16
|
-
const models = manager.getAvailableModels();
|
|
17
|
-
return models.map(model => ({
|
|
18
|
-
model: model.trim(),
|
|
19
|
-
}));
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Get default models list
|
|
23
|
-
*/
|
|
24
|
-
export function getDefaultModels() {
|
|
25
|
-
const manager = getSettingsManager();
|
|
26
|
-
return manager.getAvailableModels();
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Update the current model in project settings
|
|
30
|
-
*/
|
|
31
|
-
export function updateCurrentModel(modelName) {
|
|
32
|
-
const manager = getSettingsManager();
|
|
33
|
-
manager.setCurrentModel(modelName);
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Update the user's default model preference
|
|
37
|
-
*/
|
|
38
|
-
export function updateDefaultModel(modelName) {
|
|
39
|
-
const manager = getSettingsManager();
|
|
40
|
-
manager.updateUserSetting("defaultModel", modelName);
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=model-config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model-config.js","sourceRoot":"","sources":["../../src/utils/model-config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAGnB,MAAM,oBAAoB,CAAC;AAW5B;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IACrC,OAAO,OAAO,CAAC,eAAe,EAAE,CAAC;AACnC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAE5C,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1B,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;KACpB,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IACrC,OAAO,OAAO,CAAC,kBAAkB,EAAE,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IACrC,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IACrC,OAAO,CAAC,iBAAiB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC"}
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* User-level settings stored in ~/.super-agent/user-settings.json
|
|
3
|
-
* These are global settings that apply across all projects
|
|
4
|
-
*/
|
|
5
|
-
export interface UserSettings {
|
|
6
|
-
apiKey?: string;
|
|
7
|
-
baseURL?: string;
|
|
8
|
-
defaultModel?: string;
|
|
9
|
-
models?: string[];
|
|
10
|
-
settingsVersion?: number;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Project-level settings stored in .super-agent/settings.json
|
|
14
|
-
* These are project-specific settings
|
|
15
|
-
*/
|
|
16
|
-
export interface ProjectSettings {
|
|
17
|
-
model?: string;
|
|
18
|
-
mcpServers?: Record<string, any>;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Unified settings manager that handles both user-level and project-level settings
|
|
22
|
-
*/
|
|
23
|
-
export declare class SettingsManager {
|
|
24
|
-
private static instance;
|
|
25
|
-
private userSettingsPath;
|
|
26
|
-
private projectSettingsPath;
|
|
27
|
-
private constructor();
|
|
28
|
-
/**
|
|
29
|
-
* Get singleton instance
|
|
30
|
-
*/
|
|
31
|
-
static getInstance(): SettingsManager;
|
|
32
|
-
/**
|
|
33
|
-
* Ensure directory exists for a given file path
|
|
34
|
-
*/
|
|
35
|
-
private ensureDirectoryExists;
|
|
36
|
-
/**
|
|
37
|
-
* Load user settings from ~/.super-agent/user-settings.json
|
|
38
|
-
*/
|
|
39
|
-
loadUserSettings(): UserSettings;
|
|
40
|
-
/**
|
|
41
|
-
* Migrate settings from an older version to the current version
|
|
42
|
-
*/
|
|
43
|
-
private migrateSettings;
|
|
44
|
-
/**
|
|
45
|
-
* Save user settings to ~/.super-agent/user-settings.json
|
|
46
|
-
*/
|
|
47
|
-
saveUserSettings(settings: Partial<UserSettings>): void;
|
|
48
|
-
/**
|
|
49
|
-
* Update a specific user setting
|
|
50
|
-
*/
|
|
51
|
-
updateUserSetting<K extends keyof UserSettings>(key: K, value: UserSettings[K]): void;
|
|
52
|
-
/**
|
|
53
|
-
* Get a specific user setting
|
|
54
|
-
*/
|
|
55
|
-
getUserSetting<K extends keyof UserSettings>(key: K): UserSettings[K];
|
|
56
|
-
/**
|
|
57
|
-
* Load project settings from .super-agent/settings.json
|
|
58
|
-
*/
|
|
59
|
-
loadProjectSettings(): ProjectSettings;
|
|
60
|
-
/**
|
|
61
|
-
* Save project settings to .super-agent/settings.json
|
|
62
|
-
*/
|
|
63
|
-
saveProjectSettings(settings: Partial<ProjectSettings>): void;
|
|
64
|
-
/**
|
|
65
|
-
* Update a specific project setting
|
|
66
|
-
*/
|
|
67
|
-
updateProjectSetting<K extends keyof ProjectSettings>(key: K, value: ProjectSettings[K]): void;
|
|
68
|
-
/**
|
|
69
|
-
* Get a specific project setting
|
|
70
|
-
*/
|
|
71
|
-
getProjectSetting<K extends keyof ProjectSettings>(key: K): ProjectSettings[K];
|
|
72
|
-
/**
|
|
73
|
-
* Get the current model with proper fallback logic:
|
|
74
|
-
* 1. Project-specific model setting
|
|
75
|
-
* 2. User's default model
|
|
76
|
-
* 3. System default
|
|
77
|
-
*/
|
|
78
|
-
getCurrentModel(): string;
|
|
79
|
-
/**
|
|
80
|
-
* Set the current model for the project
|
|
81
|
-
*/
|
|
82
|
-
setCurrentModel(model: string): void;
|
|
83
|
-
/**
|
|
84
|
-
* Get available models list from user settings
|
|
85
|
-
*/
|
|
86
|
-
getAvailableModels(): string[];
|
|
87
|
-
/**
|
|
88
|
-
* Get API key from user settings or environment
|
|
89
|
-
*/
|
|
90
|
-
getApiKey(): string | undefined;
|
|
91
|
-
/**
|
|
92
|
-
* Get base URL from user settings or environment
|
|
93
|
-
*/
|
|
94
|
-
getBaseURL(): string;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Convenience function to get the singleton instance
|
|
98
|
-
*/
|
|
99
|
-
export declare function getSettingsManager(): SettingsManager;
|