@mohanscodex/spectra-code 0.4.5 → 0.4.7
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/dist/package.json +1 -1
- package/dist/src/agents/definitions.d.ts +2 -2
- package/dist/src/agents/definitions.d.ts.map +1 -1
- package/dist/src/agents/definitions.js +18 -18
- package/dist/src/agents/definitions.js.map +1 -1
- package/dist/src/agents/registry.d.ts +1 -1
- package/dist/src/agents/registry.d.ts.map +1 -1
- package/dist/src/agents/registry.js.map +1 -1
- package/dist/src/cli.js +117 -115
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/agent.d.ts +1 -1
- package/dist/src/commands/agent.d.ts.map +1 -1
- package/dist/src/commands/agent.js +14 -14
- package/dist/src/commands/agent.js.map +1 -1
- package/dist/src/commands/db.d.ts +1 -1
- package/dist/src/commands/db.d.ts.map +1 -1
- package/dist/src/commands/db.js +11 -11
- package/dist/src/commands/db.js.map +1 -1
- package/dist/src/commands/doctor.d.ts.map +1 -1
- package/dist/src/commands/doctor.js +33 -30
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/mcp.d.ts +1 -1
- package/dist/src/commands/mcp.d.ts.map +1 -1
- package/dist/src/commands/mcp.js +39 -39
- package/dist/src/commands/mcp.js.map +1 -1
- package/dist/src/commands/plugin.d.ts +1 -1
- package/dist/src/commands/plugin.d.ts.map +1 -1
- package/dist/src/commands/plugin.js +13 -13
- package/dist/src/commands/plugin.js.map +1 -1
- package/dist/src/commands/session.d.ts +1 -1
- package/dist/src/commands/session.d.ts.map +1 -1
- package/dist/src/commands/session.js +12 -12
- package/dist/src/commands/session.js.map +1 -1
- package/dist/src/index.d.ts +18 -18
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +16 -16
- package/dist/src/index.js.map +1 -1
- package/dist/src/integrations/acp/index.d.ts +1 -1
- package/dist/src/integrations/acp/index.js +1 -1
- package/dist/src/integrations/acp/server.d.ts.map +1 -1
- package/dist/src/integrations/acp/server.js +89 -79
- package/dist/src/integrations/acp/server.js.map +1 -1
- package/dist/src/integrations/custom-tools/index.d.ts +2 -2
- package/dist/src/integrations/custom-tools/index.js +1 -1
- package/dist/src/integrations/custom-tools/loader.d.ts +2 -2
- package/dist/src/integrations/custom-tools/loader.d.ts.map +1 -1
- package/dist/src/integrations/custom-tools/loader.js +19 -18
- package/dist/src/integrations/custom-tools/loader.js.map +1 -1
- package/dist/src/integrations/mcp/client.d.ts +5 -5
- package/dist/src/integrations/mcp/client.d.ts.map +1 -1
- package/dist/src/integrations/mcp/client.js +7 -7
- package/dist/src/integrations/mcp/client.js.map +1 -1
- package/dist/src/integrations/mcp/index.d.ts +2 -2
- package/dist/src/integrations/mcp/index.d.ts.map +1 -1
- package/dist/src/integrations/mcp/index.js +1 -1
- package/dist/src/integrations/mcp/index.js.map +1 -1
- package/dist/src/security/doom-loop.d.ts +1 -1
- package/dist/src/security/doom-loop.d.ts.map +1 -1
- package/dist/src/security/doom-loop.js +4 -4
- package/dist/src/security/doom-loop.js.map +1 -1
- package/dist/src/security/index.d.ts +10 -10
- package/dist/src/security/index.d.ts.map +1 -1
- package/dist/src/security/index.js +116 -69
- package/dist/src/security/index.js.map +1 -1
- package/dist/src/security/path-safety.d.ts +1 -1
- package/dist/src/security/path-safety.d.ts.map +1 -1
- package/dist/src/security/path-safety.js +19 -19
- package/dist/src/security/path-safety.js.map +1 -1
- package/dist/src/security/permissions.d.ts +1 -1
- package/dist/src/security/permissions.d.ts.map +1 -1
- package/dist/src/security/permissions.js +12 -10
- package/dist/src/security/permissions.js.map +1 -1
- package/dist/src/security/read-tracker.d.ts +2 -2
- package/dist/src/security/read-tracker.d.ts.map +1 -1
- package/dist/src/security/read-tracker.js +15 -13
- package/dist/src/security/read-tracker.js.map +1 -1
- package/dist/src/security/ssrf-guard.d.ts +1 -1
- package/dist/src/security/ssrf-guard.d.ts.map +1 -1
- package/dist/src/security/ssrf-guard.js +11 -11
- package/dist/src/security/ssrf-guard.js.map +1 -1
- package/dist/src/security/types.d.ts +4 -4
- package/dist/src/security/types.d.ts.map +1 -1
- package/dist/src/security/wildcard.d.ts.map +1 -1
- package/dist/src/security/wildcard.js +14 -16
- package/dist/src/security/wildcard.js.map +1 -1
- package/dist/src/services/auth-store.d.ts +3 -3
- package/dist/src/services/auth-store.d.ts.map +1 -1
- package/dist/src/services/auth-store.js +7 -7
- package/dist/src/services/auth-store.js.map +1 -1
- package/dist/src/services/config.d.ts +3 -3
- package/dist/src/services/config.d.ts.map +1 -1
- package/dist/src/services/config.js +17 -21
- package/dist/src/services/config.js.map +1 -1
- package/dist/src/services/context.d.ts.map +1 -1
- package/dist/src/services/context.js +5 -8
- package/dist/src/services/context.js.map +1 -1
- package/dist/src/services/custom-providers.d.ts +2 -2
- package/dist/src/services/custom-providers.d.ts.map +1 -1
- package/dist/src/services/custom-providers.js +108 -49
- package/dist/src/services/custom-providers.js.map +1 -1
- package/dist/src/services/session-store.d.ts +1 -1
- package/dist/src/services/session-store.d.ts.map +1 -1
- package/dist/src/services/session-store.js +32 -24
- package/dist/src/services/session-store.js.map +1 -1
- package/dist/src/services/snapshot-manager.d.ts.map +1 -1
- package/dist/src/services/snapshot-manager.js +14 -15
- package/dist/src/services/snapshot-manager.js.map +1 -1
- package/dist/src/tools/edit.d.ts +1 -1
- package/dist/src/tools/edit.js +18 -16
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/glob.d.ts +1 -1
- package/dist/src/tools/glob.d.ts.map +1 -1
- package/dist/src/tools/glob.js +20 -16
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/grep.d.ts +1 -1
- package/dist/src/tools/grep.d.ts.map +1 -1
- package/dist/src/tools/grep.js +18 -18
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/index.d.ts +4 -4
- package/dist/src/tools/index.d.ts.map +1 -1
- package/dist/src/tools/index.js +40 -32
- package/dist/src/tools/index.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +2 -2
- package/dist/src/tools/mcp-tool.d.ts.map +1 -1
- package/dist/src/tools/mcp-tool.js +28 -25
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/read.d.ts +1 -1
- package/dist/src/tools/read.d.ts.map +1 -1
- package/dist/src/tools/read.js +15 -13
- package/dist/src/tools/read.js.map +1 -1
- package/dist/src/tools/shell.d.ts +1 -1
- package/dist/src/tools/shell.d.ts.map +1 -1
- package/dist/src/tools/shell.js +71 -62
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/task.d.ts +1 -1
- package/dist/src/tools/task.js +22 -22
- package/dist/src/tools/task.js.map +1 -1
- package/dist/src/tools/types.d.ts +3 -3
- package/dist/src/tools/types.d.ts.map +1 -1
- package/dist/src/tools/utils.d.ts +1 -1
- package/dist/src/tools/utils.js +2 -2
- package/dist/src/tools/utils.js.map +1 -1
- package/dist/src/tools/web-fetch.d.ts +1 -1
- package/dist/src/tools/web-fetch.js +31 -31
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/write.d.ts +1 -1
- package/dist/src/tools/write.js +9 -9
- package/dist/src/tools/write.js.map +1 -1
- package/dist/src/tui/app-constants.d.ts.map +1 -1
- package/dist/src/tui/app-constants.js +11 -2
- package/dist/src/tui/app-constants.js.map +1 -1
- package/dist/src/tui/app.d.ts +1 -1
- package/dist/src/tui/app.d.ts.map +1 -1
- package/dist/src/tui/app.js +293 -121
- package/dist/src/tui/app.js.map +1 -1
- package/dist/src/tui/commands.d.ts +14 -14
- package/dist/src/tui/commands.d.ts.map +1 -1
- package/dist/src/tui/commands.js +242 -49
- package/dist/src/tui/commands.js.map +1 -1
- package/dist/src/tui/components/chat-area.d.ts +2 -2
- package/dist/src/tui/components/chat-area.d.ts.map +1 -1
- package/dist/src/tui/components/chat-area.js +5 -5
- package/dist/src/tui/components/chat-area.js.map +1 -1
- package/dist/src/tui/components/command-palette.d.ts.map +1 -1
- package/dist/src/tui/components/command-palette.js +7 -5
- package/dist/src/tui/components/command-palette.js.map +1 -1
- package/dist/src/tui/components/message.d.ts +2 -2
- package/dist/src/tui/components/message.d.ts.map +1 -1
- package/dist/src/tui/components/message.js +63 -50
- package/dist/src/tui/components/message.js.map +1 -1
- package/dist/src/tui/components/slash-autocomplete.d.ts +2 -2
- package/dist/src/tui/components/slash-autocomplete.d.ts.map +1 -1
- package/dist/src/tui/components/slash-autocomplete.js +6 -8
- package/dist/src/tui/components/slash-autocomplete.js.map +1 -1
- package/dist/src/tui/components/toast.d.ts +2 -2
- package/dist/src/tui/components/toast.d.ts.map +1 -1
- package/dist/src/tui/components/toast.js +10 -5
- package/dist/src/tui/components/toast.js.map +1 -1
- package/dist/src/tui/hooks/use-agent.d.ts +3 -3
- package/dist/src/tui/hooks/use-agent.d.ts.map +1 -1
- package/dist/src/tui/hooks/use-agent.js +22 -29
- package/dist/src/tui/hooks/use-agent.js.map +1 -1
- package/dist/src/tui/hooks/use-app-keyboard.d.ts +3 -3
- package/dist/src/tui/hooks/use-app-keyboard.d.ts.map +1 -1
- package/dist/src/tui/hooks/use-app-keyboard.js +28 -29
- package/dist/src/tui/hooks/use-app-keyboard.js.map +1 -1
- package/dist/src/tui/hooks/use-chat-submit.d.ts +6 -6
- package/dist/src/tui/hooks/use-chat-submit.d.ts.map +1 -1
- package/dist/src/tui/hooks/use-chat-submit.js +115 -54
- package/dist/src/tui/hooks/use-chat-submit.js.map +1 -1
- package/dist/src/tui/hooks/use-permission-queue.d.ts +2 -2
- package/dist/src/tui/hooks/use-permission-queue.d.ts.map +1 -1
- package/dist/src/tui/hooks/use-permission-queue.js +1 -1
- package/dist/src/tui/hooks/use-permission-queue.js.map +1 -1
- package/dist/src/tui/hooks/use-revert.d.ts +4 -4
- package/dist/src/tui/hooks/use-revert.d.ts.map +1 -1
- package/dist/src/tui/hooks/use-revert.js +22 -13
- package/dist/src/tui/hooks/use-revert.js.map +1 -1
- package/dist/src/tui/index.d.ts.map +1 -1
- package/dist/src/tui/index.js +11 -11
- package/dist/src/tui/index.js.map +1 -1
- package/dist/src/tui/prompt-bar.d.ts +1 -1
- package/dist/src/tui/prompt-bar.d.ts.map +1 -1
- package/dist/src/tui/prompt-bar.js +14 -11
- package/dist/src/tui/prompt-bar.js.map +1 -1
- package/dist/src/tui/slash-commands.d.ts +2 -2
- package/dist/src/tui/slash-commands.d.ts.map +1 -1
- package/dist/src/tui/slash-commands.js +9 -9
- package/dist/src/tui/slash-commands.js.map +1 -1
- package/dist/src/tui/theme.d.ts +1 -1
- package/dist/src/tui/theme.d.ts.map +1 -1
- package/dist/src/tui/theme.js +46 -38
- package/dist/src/tui/theme.js.map +1 -1
- package/dist/src/tui/tips.d.ts.map +1 -1
- package/dist/src/tui/tips.js +14 -14
- package/dist/src/tui/tips.js.map +1 -1
- package/dist/src/tui/types.d.ts +5 -5
- package/dist/src/tui/types.d.ts.map +1 -1
- package/dist/src/tui/ui/about-dialog.d.ts.map +1 -1
- package/dist/src/tui/ui/about-dialog.js +5 -4
- package/dist/src/tui/ui/about-dialog.js.map +1 -1
- package/dist/src/tui/ui/agent-switcher.d.ts.map +1 -1
- package/dist/src/tui/ui/agent-switcher.js +16 -14
- package/dist/src/tui/ui/agent-switcher.js.map +1 -1
- package/dist/src/tui/ui/debug-dialog.d.ts +1 -1
- package/dist/src/tui/ui/debug-dialog.d.ts.map +1 -1
- package/dist/src/tui/ui/debug-dialog.js +26 -25
- package/dist/src/tui/ui/debug-dialog.js.map +1 -1
- package/dist/src/tui/ui/doctor-dialog.d.ts +2 -2
- package/dist/src/tui/ui/doctor-dialog.d.ts.map +1 -1
- package/dist/src/tui/ui/doctor-dialog.js +10 -8
- package/dist/src/tui/ui/doctor-dialog.js.map +1 -1
- package/dist/src/tui/ui/manage-providers-dialog.d.ts +1 -1
- package/dist/src/tui/ui/manage-providers-dialog.d.ts.map +1 -1
- package/dist/src/tui/ui/manage-providers-dialog.js +102 -86
- package/dist/src/tui/ui/manage-providers-dialog.js.map +1 -1
- package/dist/src/tui/ui/mcp-toggle-dialog.d.ts.map +1 -1
- package/dist/src/tui/ui/mcp-toggle-dialog.js +17 -14
- package/dist/src/tui/ui/mcp-toggle-dialog.js.map +1 -1
- package/dist/src/tui/ui/message-controls.d.ts +1 -1
- package/dist/src/tui/ui/message-controls.d.ts.map +1 -1
- package/dist/src/tui/ui/message-controls.js +40 -28
- package/dist/src/tui/ui/message-controls.js.map +1 -1
- package/dist/src/tui/ui/model-switcher.d.ts.map +1 -1
- package/dist/src/tui/ui/model-switcher.js +40 -25
- package/dist/src/tui/ui/model-switcher.js.map +1 -1
- package/dist/src/tui/ui/permission-dialog.d.ts +1 -1
- package/dist/src/tui/ui/permission-dialog.d.ts.map +1 -1
- package/dist/src/tui/ui/permission-dialog.js +11 -11
- package/dist/src/tui/ui/permission-dialog.js.map +1 -1
- package/dist/src/tui/ui/provider-dialog.d.ts.map +1 -1
- package/dist/src/tui/ui/provider-dialog.js +75 -64
- package/dist/src/tui/ui/provider-dialog.js.map +1 -1
- package/dist/src/tui/ui/session-list.d.ts +3 -3
- package/dist/src/tui/ui/session-list.d.ts.map +1 -1
- package/dist/src/tui/ui/session-list.js +44 -32
- package/dist/src/tui/ui/session-list.js.map +1 -1
- package/dist/src/tui/ui/thinking-effort-dialog.d.ts.map +1 -1
- package/dist/src/tui/ui/thinking-effort-dialog.js +19 -19
- package/dist/src/tui/ui/thinking-effort-dialog.js.map +1 -1
- package/dist/src/tui/utils/model-config.d.ts.map +1 -1
- package/dist/src/tui/utils/model-config.js +13 -13
- package/dist/src/tui/utils/model-config.js.map +1 -1
- package/dist/src/tui/utils/session-messages.d.ts +2 -2
- package/dist/src/tui/utils/session-messages.d.ts.map +1 -1
- package/dist/src/tui/utils/session-messages.js +35 -22
- package/dist/src/tui/utils/session-messages.js.map +1 -1
- package/dist/src/tui/utils/version.d.ts +2 -0
- package/dist/src/tui/utils/version.d.ts.map +1 -0
- package/dist/src/tui/utils/version.js +24 -0
- package/dist/src/tui/utils/version.js.map +1 -0
- package/dist/src/tui/utils.d.ts +2 -2
- package/dist/src/tui/utils.d.ts.map +1 -1
- package/dist/src/tui/utils.js +7 -7
- package/dist/src/tui/utils.js.map +1 -1
- package/dist/src/tui/variant-cycle.d.ts.map +1 -1
- package/dist/src/tui/variant-cycle.js +23 -23
- package/dist/src/tui/variant-cycle.js.map +1 -1
- package/dist/src/utils/paths.d.ts.map +1 -1
- package/dist/src/utils/paths.js +25 -25
- package/dist/src/utils/paths.js.map +1 -1
- package/dist/src/utils/platform.d.ts.map +1 -1
- package/dist/src/utils/platform.js +15 -17
- package/dist/src/utils/platform.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
export const pluginCommand = {
|
|
2
|
-
command: [
|
|
3
|
-
describe:
|
|
2
|
+
command: ['plugin', 'plug'],
|
|
3
|
+
describe: 'Manage plugins',
|
|
4
4
|
builder: (yargs) => yargs
|
|
5
5
|
.command({
|
|
6
|
-
command:
|
|
7
|
-
describe:
|
|
6
|
+
command: 'list',
|
|
7
|
+
describe: 'List installed plugins',
|
|
8
8
|
handler: () => {
|
|
9
|
-
console.log(
|
|
9
|
+
console.log('Installed plugins:');
|
|
10
10
|
const configDir = process.env.XDG_CONFIG_HOME
|
|
11
11
|
? `${process.env.XDG_CONFIG_HOME}/spectra`
|
|
12
|
-
: `${process.env.HOME ||
|
|
12
|
+
: `${process.env.HOME || '~'}/.config/spectra`;
|
|
13
13
|
console.log(` (No plugins installed. Add plugins via 'spectra plugin install <name>')`);
|
|
14
14
|
console.log(` Plugin directory: ${configDir}/plugins`);
|
|
15
15
|
},
|
|
16
16
|
})
|
|
17
17
|
.command({
|
|
18
|
-
command:
|
|
19
|
-
describe:
|
|
18
|
+
command: 'install <name>',
|
|
19
|
+
describe: 'Install a plugin',
|
|
20
20
|
handler: (argv) => {
|
|
21
21
|
console.log(`Installing plugin "${argv.name}"...`);
|
|
22
|
-
console.log(
|
|
22
|
+
console.log('(Plugin system loading — feature in development)');
|
|
23
23
|
},
|
|
24
24
|
})
|
|
25
25
|
.command({
|
|
26
|
-
command:
|
|
27
|
-
describe:
|
|
26
|
+
command: 'remove <name>',
|
|
27
|
+
describe: 'Remove a plugin',
|
|
28
28
|
handler: (argv) => {
|
|
29
29
|
console.log(`Removing plugin "${argv.name}"...`);
|
|
30
|
-
console.log(
|
|
30
|
+
console.log('(Plugin system loading — feature in development)');
|
|
31
31
|
},
|
|
32
32
|
})
|
|
33
|
-
.demandCommand(1,
|
|
33
|
+
.demandCommand(1, 'Please specify a subcommand'),
|
|
34
34
|
handler: () => { },
|
|
35
35
|
};
|
|
36
36
|
//# sourceMappingURL=plugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/commands/plugin.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,aAAa,GAAkB;
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/commands/plugin.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC3C,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,gBAAgB;IAC1B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,KAAK;SACH,OAAO,CAAC;QACR,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,wBAAwB;QAClC,OAAO,EAAE,GAAG,EAAE;YACb,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe;gBAC5C,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,UAAU;gBAC1C,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,kBAAkB,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC;YACzF,OAAO,CAAC,GAAG,CAAC,uBAAuB,SAAS,UAAU,CAAC,CAAC;QACzD,CAAC;KACD,CAAC;SACD,OAAO,CAAC;QACR,OAAO,EAAE,gBAAgB;QACzB,QAAQ,EAAE,kBAAkB;QAC5B,OAAO,EAAE,CAAC,IAA6B,EAAE,EAAE;YAC1C,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QACjE,CAAC;KACD,CAAC;SACD,OAAO,CAAC;QACR,OAAO,EAAE,eAAe;QACxB,QAAQ,EAAE,iBAAiB;QAC3B,OAAO,EAAE,CAAC,IAA6B,EAAE,EAAE;YAC1C,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QACjE,CAAC;KACD,CAAC;SACD,aAAa,CAAC,CAAC,EAAE,6BAA6B,CAAC;IAClD,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;CACjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/commands/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/commands/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,eAAO,MAAM,cAAc,EAAE,aA6C5B,CAAC"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { SessionStore } from
|
|
1
|
+
import { SessionStore } from '../services/session-store.js';
|
|
2
2
|
export const sessionCommand = {
|
|
3
|
-
command:
|
|
4
|
-
describe:
|
|
3
|
+
command: 'session',
|
|
4
|
+
describe: 'Manage sessions',
|
|
5
5
|
builder: (yargs) => yargs
|
|
6
6
|
.command({
|
|
7
|
-
command:
|
|
8
|
-
describe:
|
|
7
|
+
command: 'list',
|
|
8
|
+
describe: 'List all sessions',
|
|
9
9
|
handler: () => {
|
|
10
10
|
const store = new SessionStore();
|
|
11
11
|
const sessions = store.list();
|
|
12
12
|
if (sessions.length === 0) {
|
|
13
|
-
console.log(
|
|
13
|
+
console.log('No sessions found.');
|
|
14
14
|
return;
|
|
15
15
|
}
|
|
16
16
|
for (const s of sessions) {
|
|
@@ -20,8 +20,8 @@ export const sessionCommand = {
|
|
|
20
20
|
},
|
|
21
21
|
})
|
|
22
22
|
.command({
|
|
23
|
-
command:
|
|
24
|
-
describe:
|
|
23
|
+
command: 'delete <id>',
|
|
24
|
+
describe: 'Delete a session',
|
|
25
25
|
handler: (argv) => {
|
|
26
26
|
const store = new SessionStore();
|
|
27
27
|
const ok = store.delete(argv.id);
|
|
@@ -33,17 +33,17 @@ export const sessionCommand = {
|
|
|
33
33
|
},
|
|
34
34
|
})
|
|
35
35
|
.command({
|
|
36
|
-
command:
|
|
37
|
-
describe:
|
|
36
|
+
command: 'load <id>',
|
|
37
|
+
describe: 'Load a session into the TUI',
|
|
38
38
|
handler: (argv) => {
|
|
39
39
|
console.log(`Loading session ${argv.id}...`);
|
|
40
40
|
(async () => {
|
|
41
|
-
const { launchTui } = await import(
|
|
41
|
+
const { launchTui } = await import('../tui/index.js');
|
|
42
42
|
await launchTui({ sessionId: argv.id });
|
|
43
43
|
})();
|
|
44
44
|
},
|
|
45
45
|
})
|
|
46
|
-
.demandCommand(1,
|
|
46
|
+
.demandCommand(1, 'Please specify a subcommand'),
|
|
47
47
|
handler: () => { },
|
|
48
48
|
};
|
|
49
49
|
//# sourceMappingURL=session.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/commands/session.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,MAAM,CAAC,MAAM,cAAc,GAAkB;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/commands/session.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC5C,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,iBAAiB;IAC3B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,KAAK;SACH,OAAO,CAAC;QACR,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,mBAAmB;QAC7B,OAAO,EAAE,GAAG,EAAE;YACb,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC9B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBAClC,OAAO;YACR,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC1B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACpG,CAAC;QACF,CAAC;KACD,CAAC;SACD,OAAO,CAAC;QACR,OAAO,EAAE,aAAa;QACtB,QAAQ,EAAE,kBAAkB;QAC5B,OAAO,EAAE,CAAC,IAA6B,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAY,CAAC,CAAC;YAC3C,IAAI,EAAE;gBAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;;gBAC9C,OAAO,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;KACD,CAAC;SACD,OAAO,CAAC;QACR,OAAO,EAAE,WAAW;QACpB,QAAQ,EAAE,6BAA6B;QACvC,OAAO,EAAE,CAAC,IAA6B,EAAE,EAAE;YAC1C,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7C,CAAC,KAAK,IAAI,EAAE;gBACX,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;gBACtD,MAAM,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAY,EAAE,CAAC,CAAC;YACnD,CAAC,CAAC,EAAE,CAAC;QACN,CAAC;KACD,CAAC;SACD,aAAa,CAAC,CAAC,EAAE,6BAA6B,CAAC;IAClD,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;CACjB,CAAC"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
export { launchTui } from
|
|
2
|
-
export { loadConfig } from
|
|
3
|
-
export { loadContext } from
|
|
4
|
-
export { SessionStore } from
|
|
5
|
-
export type { SpectraConfig, AgentConfig, McpConfig } from
|
|
6
|
-
export { connectServer, disconnectServer, listConnectedServers, listServerTools, callMcpTool, connectAllServers, shutdownAllServers, sanitizeToolName, formatMcpToolName, } from
|
|
7
|
-
export type { SpectraTool } from
|
|
8
|
-
export { builtinTools, createAllTools, createAllToolsWithMcp, createAllToolsWithExtensions, getToolStats, spectraToolToAgentTool } from
|
|
9
|
-
export { shellTool } from
|
|
10
|
-
export { readTool } from
|
|
11
|
-
export { writeTool } from
|
|
12
|
-
export { editTool } from
|
|
13
|
-
export { grepTool } from
|
|
14
|
-
export { globTool } from
|
|
15
|
-
export { webFetchTool } from
|
|
16
|
-
export { createMcpAgentTool, createMcpAgentTools } from
|
|
17
|
-
export { getPlatformInfo, getSystemPrompt } from
|
|
18
|
-
export { getGlobalConfigDir, getGlobalDataDir, getGlobalCacheDir, discoverConfigDirs } from
|
|
1
|
+
export { launchTui } from './tui/index.js';
|
|
2
|
+
export { loadConfig } from './services/config.js';
|
|
3
|
+
export { loadContext } from './services/context.js';
|
|
4
|
+
export { SessionStore } from './services/session-store.js';
|
|
5
|
+
export type { SpectraConfig, AgentConfig, McpConfig } from './services/config.js';
|
|
6
|
+
export { connectServer, disconnectServer, listConnectedServers, listServerTools, callMcpTool, connectAllServers, shutdownAllServers, sanitizeToolName, formatMcpToolName, } from './integrations/mcp/index.js';
|
|
7
|
+
export type { SpectraTool } from './tools/types.js';
|
|
8
|
+
export { builtinTools, createAllTools, createAllToolsWithMcp, createAllToolsWithExtensions, getToolStats, spectraToolToAgentTool, } from './tools/index.js';
|
|
9
|
+
export { shellTool } from './tools/shell.js';
|
|
10
|
+
export { readTool } from './tools/read.js';
|
|
11
|
+
export { writeTool } from './tools/write.js';
|
|
12
|
+
export { editTool } from './tools/edit.js';
|
|
13
|
+
export { grepTool } from './tools/grep.js';
|
|
14
|
+
export { globTool } from './tools/glob.js';
|
|
15
|
+
export { webFetchTool } from './tools/web-fetch.js';
|
|
16
|
+
export { createMcpAgentTool, createMcpAgentTools } from './tools/mcp-tool.js';
|
|
17
|
+
export { getPlatformInfo, getSystemPrompt } from './utils/platform.js';
|
|
18
|
+
export { getGlobalConfigDir, getGlobalDataDir, getGlobalCacheDir, discoverConfigDirs } from './utils/paths.js';
|
|
19
19
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EACN,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,GACjB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACN,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,4BAA4B,EAC5B,YAAY,EACZ,sBAAsB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export { launchTui } from
|
|
2
|
-
export { loadConfig } from
|
|
3
|
-
export { loadContext } from
|
|
4
|
-
export { SessionStore } from
|
|
5
|
-
export { connectServer, disconnectServer, listConnectedServers, listServerTools, callMcpTool, connectAllServers, shutdownAllServers, sanitizeToolName, formatMcpToolName, } from
|
|
6
|
-
export { builtinTools, createAllTools, createAllToolsWithMcp, createAllToolsWithExtensions, getToolStats, spectraToolToAgentTool } from
|
|
7
|
-
export { shellTool } from
|
|
8
|
-
export { readTool } from
|
|
9
|
-
export { writeTool } from
|
|
10
|
-
export { editTool } from
|
|
11
|
-
export { grepTool } from
|
|
12
|
-
export { globTool } from
|
|
13
|
-
export { webFetchTool } from
|
|
14
|
-
export { createMcpAgentTool, createMcpAgentTools } from
|
|
15
|
-
export { getPlatformInfo, getSystemPrompt } from
|
|
16
|
-
export { getGlobalConfigDir, getGlobalDataDir, getGlobalCacheDir, discoverConfigDirs } from
|
|
1
|
+
export { launchTui } from './tui/index.js';
|
|
2
|
+
export { loadConfig } from './services/config.js';
|
|
3
|
+
export { loadContext } from './services/context.js';
|
|
4
|
+
export { SessionStore } from './services/session-store.js';
|
|
5
|
+
export { connectServer, disconnectServer, listConnectedServers, listServerTools, callMcpTool, connectAllServers, shutdownAllServers, sanitizeToolName, formatMcpToolName, } from './integrations/mcp/index.js';
|
|
6
|
+
export { builtinTools, createAllTools, createAllToolsWithMcp, createAllToolsWithExtensions, getToolStats, spectraToolToAgentTool, } from './tools/index.js';
|
|
7
|
+
export { shellTool } from './tools/shell.js';
|
|
8
|
+
export { readTool } from './tools/read.js';
|
|
9
|
+
export { writeTool } from './tools/write.js';
|
|
10
|
+
export { editTool } from './tools/edit.js';
|
|
11
|
+
export { grepTool } from './tools/grep.js';
|
|
12
|
+
export { globTool } from './tools/glob.js';
|
|
13
|
+
export { webFetchTool } from './tools/web-fetch.js';
|
|
14
|
+
export { createMcpAgentTool, createMcpAgentTools } from './tools/mcp-tool.js';
|
|
15
|
+
export { getPlatformInfo, getSystemPrompt } from './utils/platform.js';
|
|
16
|
+
export { getGlobalConfigDir, getGlobalDataDir, getGlobalCacheDir, discoverConfigDirs } from './utils/paths.js';
|
|
17
17
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EACN,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,GACjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACN,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,4BAA4B,EAC5B,YAAY,EACZ,sBAAsB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { ACPAdapter } from
|
|
1
|
+
export { ACPAdapter } from './server.js';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { ACPAdapter } from
|
|
1
|
+
export { ACPAdapter } from './server.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../../src/integrations/acp/server.ts"],"names":[],"mappings":"AAiDA,qBAAa,UAAU;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../../src/integrations/acp/server.ts"],"names":[],"mappings":"AAiDA,qBAAa,UAAU;IACtB,OAAO,CAAC,QAAQ,CAAiC;IAEjD,KAAK,IAAI,IAAI;YAwBC,MAAM;IAiBpB,OAAO,CAAC,YAAY;YAQN,YAAY;YA8DZ,eAAe;IAqC7B,OAAO,CAAC,SAAS;IA+DjB,OAAO,CAAC,eAAe;CASvB"}
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
import { createInterface } from
|
|
2
|
-
import { Agent } from
|
|
3
|
-
import { initProviders } from
|
|
4
|
-
import { loadContext } from
|
|
5
|
-
import { loadConfig } from
|
|
6
|
-
import { AgentRegistry } from
|
|
7
|
-
import { AGENT_DEFINITIONS, filterToolsByAgent } from
|
|
8
|
-
import { createAllToolsWithExtensions } from
|
|
9
|
-
import { connectAllServers } from
|
|
10
|
-
import { readAll } from
|
|
11
|
-
import { getSystemPrompt } from
|
|
12
|
-
const PKG_VERSION =
|
|
1
|
+
import { createInterface } from 'readline';
|
|
2
|
+
import { Agent } from '@mohanscodex/spectra-agent';
|
|
3
|
+
import { initProviders } from '@mohanscodex/spectra-ai';
|
|
4
|
+
import { loadContext } from '../../services/context.js';
|
|
5
|
+
import { loadConfig } from '../../services/config.js';
|
|
6
|
+
import { AgentRegistry } from '../../agents/registry.js';
|
|
7
|
+
import { AGENT_DEFINITIONS, filterToolsByAgent } from '../../agents/definitions.js';
|
|
8
|
+
import { createAllToolsWithExtensions } from '../../tools/index.js';
|
|
9
|
+
import { connectAllServers } from '../mcp/index.js';
|
|
10
|
+
import { readAll } from '../../services/auth-store.js';
|
|
11
|
+
import { getSystemPrompt } from '../../utils/platform.js';
|
|
12
|
+
const PKG_VERSION = '0.4.0';
|
|
13
13
|
function send(id, result) {
|
|
14
|
-
const msg = { jsonrpc:
|
|
15
|
-
process.stdout.write(JSON.stringify(msg) +
|
|
14
|
+
const msg = { jsonrpc: '2.0', id, result };
|
|
15
|
+
process.stdout.write(JSON.stringify(msg) + '\n');
|
|
16
16
|
}
|
|
17
17
|
function error(id, code, message) {
|
|
18
|
-
const msg = { jsonrpc:
|
|
19
|
-
process.stdout.write(JSON.stringify(msg) +
|
|
18
|
+
const msg = { jsonrpc: '2.0', id, error: { code, message } };
|
|
19
|
+
process.stdout.write(JSON.stringify(msg) + '\n');
|
|
20
20
|
}
|
|
21
21
|
function notify(method, params) {
|
|
22
|
-
const msg = { jsonrpc:
|
|
23
|
-
process.stdout.write(JSON.stringify(msg) +
|
|
22
|
+
const msg = { jsonrpc: '2.0', method, params };
|
|
23
|
+
process.stdout.write(JSON.stringify(msg) + '\n');
|
|
24
24
|
}
|
|
25
25
|
export class ACPAdapter {
|
|
26
26
|
sessions = new Map();
|
|
27
27
|
start() {
|
|
28
|
-
process.stderr.write(
|
|
28
|
+
process.stderr.write('ACP server starting...\n');
|
|
29
29
|
const rl = createInterface({ input: process.stdin });
|
|
30
|
-
rl.on(
|
|
30
|
+
rl.on('line', (line) => {
|
|
31
31
|
const trimmed = line.trim();
|
|
32
32
|
if (!trimmed)
|
|
33
33
|
return;
|
|
@@ -38,9 +38,11 @@ export class ACPAdapter {
|
|
|
38
38
|
error(req.id, -32603, err instanceof Error ? err.message : String(err));
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
|
-
catch {
|
|
41
|
+
catch {
|
|
42
|
+
/* malformed JSON — ignore */
|
|
43
|
+
}
|
|
42
44
|
});
|
|
43
|
-
rl.on(
|
|
45
|
+
rl.on('close', () => {
|
|
44
46
|
for (const s of this.sessions.values())
|
|
45
47
|
s.agent.abort();
|
|
46
48
|
this.sessions.clear();
|
|
@@ -49,11 +51,16 @@ export class ACPAdapter {
|
|
|
49
51
|
}
|
|
50
52
|
async handle(req) {
|
|
51
53
|
switch (req.method) {
|
|
52
|
-
case
|
|
53
|
-
|
|
54
|
-
case
|
|
55
|
-
|
|
56
|
-
case
|
|
54
|
+
case 'initialize':
|
|
55
|
+
return this.onInitialize(req);
|
|
56
|
+
case 'session/new':
|
|
57
|
+
return this.onSessionNew(req);
|
|
58
|
+
case 'session/prompt':
|
|
59
|
+
return this.onSessionPrompt(req);
|
|
60
|
+
case 'session/cancel':
|
|
61
|
+
return this.onSessionCancel(req);
|
|
62
|
+
case 'shutdown':
|
|
63
|
+
process.exit(0);
|
|
57
64
|
default:
|
|
58
65
|
if (req.id !== undefined)
|
|
59
66
|
error(req.id, -32601, `Method not found: ${req.method}`);
|
|
@@ -61,8 +68,8 @@ export class ACPAdapter {
|
|
|
61
68
|
}
|
|
62
69
|
onInitialize(req) {
|
|
63
70
|
send(req.id, {
|
|
64
|
-
protocolVersion:
|
|
65
|
-
serverInfo: { name:
|
|
71
|
+
protocolVersion: '0.1.0',
|
|
72
|
+
serverInfo: { name: 'Spectra Code', version: PKG_VERSION },
|
|
66
73
|
capabilities: {},
|
|
67
74
|
});
|
|
68
75
|
}
|
|
@@ -72,40 +79,36 @@ export class ACPAdapter {
|
|
|
72
79
|
try {
|
|
73
80
|
await initProviders();
|
|
74
81
|
const config = loadConfig();
|
|
75
|
-
const agentName = config.agent ||
|
|
82
|
+
const agentName = config.agent || 'build';
|
|
76
83
|
const def = AGENT_DEFINITIONS[agentName];
|
|
77
84
|
if (!def) {
|
|
78
85
|
error(req.id, -32603, `Unknown agent: ${agentName}`);
|
|
79
86
|
return;
|
|
80
87
|
}
|
|
81
|
-
const providerModel = config.model ||
|
|
82
|
-
const provider = providerModel.includes(
|
|
83
|
-
const modelId = providerModel.includes(
|
|
88
|
+
const providerModel = config.model || 'anthropic/claude-sonnet-4-20250514';
|
|
89
|
+
const provider = providerModel.includes('/') ? providerModel.split('/')[0] : 'anthropic';
|
|
90
|
+
const modelId = providerModel.includes('/') ? providerModel.split('/').slice(1).join('/') : providerModel;
|
|
84
91
|
if (config.mcp?.length) {
|
|
85
92
|
await connectAllServers(config.mcp).catch(() => { });
|
|
86
93
|
}
|
|
87
94
|
const toolResult = await createAllToolsWithExtensions();
|
|
88
95
|
const agentTools = def ? filterToolsByAgent(toolResult.all, agentName) : toolResult.all;
|
|
89
96
|
const context = loadContext();
|
|
90
|
-
let agentsMd =
|
|
97
|
+
let agentsMd = '';
|
|
91
98
|
try {
|
|
92
|
-
const { readFileSync, existsSync } = await import(
|
|
99
|
+
const { readFileSync, existsSync } = await import('fs');
|
|
93
100
|
const p = `${process.cwd()}/AGENTS.md`;
|
|
94
101
|
if (existsSync(p))
|
|
95
|
-
agentsMd = readFileSync(p,
|
|
102
|
+
agentsMd = readFileSync(p, 'utf-8');
|
|
96
103
|
}
|
|
97
104
|
catch { }
|
|
98
|
-
const systemPrompt = [
|
|
99
|
-
getSystemPrompt(),
|
|
100
|
-
agentsMd,
|
|
101
|
-
def.prompt,
|
|
102
|
-
].filter(Boolean).join("\n\n");
|
|
105
|
+
const systemPrompt = [getSystemPrompt(), agentsMd, def.prompt].filter(Boolean).join('\n\n');
|
|
103
106
|
const agent = new Agent({
|
|
104
107
|
model: { id: modelId, name: modelId, provider, api: provider },
|
|
105
108
|
systemPrompt,
|
|
106
109
|
getApiKey: (p) => {
|
|
107
110
|
const cred = readAll()[p];
|
|
108
|
-
return cred?.type ===
|
|
111
|
+
return cred?.type === 'api' ? cred.key : undefined;
|
|
109
112
|
},
|
|
110
113
|
tools: agentTools,
|
|
111
114
|
maxTurns: def.maxTurns ?? 10,
|
|
@@ -114,11 +117,11 @@ export class ACPAdapter {
|
|
|
114
117
|
model: { id: modelId, name: modelId, provider, api: provider },
|
|
115
118
|
getApiKey: (p) => {
|
|
116
119
|
const cred = readAll()[p];
|
|
117
|
-
return cred?.type ===
|
|
120
|
+
return cred?.type === 'api' ? cred.key : undefined;
|
|
118
121
|
},
|
|
119
122
|
});
|
|
120
123
|
this.sessions.set(sessionId, { id: sessionId, agent });
|
|
121
|
-
send(req.id, { sessionId, serverInfo: { name:
|
|
124
|
+
send(req.id, { sessionId, serverInfo: { name: 'Spectra Code', version: PKG_VERSION } });
|
|
122
125
|
}
|
|
123
126
|
catch (err) {
|
|
124
127
|
error(req.id, -32603, err instanceof Error ? err.message : String(err));
|
|
@@ -131,27 +134,27 @@ export class ACPAdapter {
|
|
|
131
134
|
error(req.id, -32602, `Session not found: ${params.sessionId}`);
|
|
132
135
|
return;
|
|
133
136
|
}
|
|
134
|
-
const text = typeof params.message?.content ===
|
|
137
|
+
const text = typeof params.message?.content === 'string'
|
|
135
138
|
? params.message.content
|
|
136
|
-
: JSON.stringify(params.message?.content ??
|
|
137
|
-
send(req.id, { status:
|
|
139
|
+
: JSON.stringify(params.message?.content ?? '');
|
|
140
|
+
send(req.id, { status: 'accepted' });
|
|
138
141
|
try {
|
|
139
|
-
notify(
|
|
142
|
+
notify('session/update', { sessionId: params.sessionId, status: 'running' });
|
|
140
143
|
for await (const event of session.agent.run({
|
|
141
|
-
role:
|
|
144
|
+
role: 'user',
|
|
142
145
|
content: text,
|
|
143
146
|
timestamp: Date.now(),
|
|
144
147
|
})) {
|
|
145
148
|
this.emitEvent(params.sessionId, event);
|
|
146
|
-
if (event.type ===
|
|
149
|
+
if (event.type === 'agent_end')
|
|
147
150
|
break;
|
|
148
151
|
}
|
|
149
152
|
}
|
|
150
153
|
catch (err) {
|
|
151
154
|
if (!session.agent.isStreaming) {
|
|
152
|
-
notify(
|
|
155
|
+
notify('session/update', {
|
|
153
156
|
sessionId: params.sessionId,
|
|
154
|
-
status:
|
|
157
|
+
status: 'error',
|
|
155
158
|
error: err instanceof Error ? err.message : String(err),
|
|
156
159
|
});
|
|
157
160
|
}
|
|
@@ -159,48 +162,55 @@ export class ACPAdapter {
|
|
|
159
162
|
}
|
|
160
163
|
emitEvent(sessionId, event) {
|
|
161
164
|
switch (event.type) {
|
|
162
|
-
case
|
|
163
|
-
notify(
|
|
165
|
+
case 'turn_start':
|
|
166
|
+
notify('session/update', { sessionId, status: 'thinking' });
|
|
164
167
|
break;
|
|
165
|
-
case
|
|
168
|
+
case 'message_update': {
|
|
166
169
|
const ae = event.assistantMessageEvent;
|
|
167
170
|
switch (ae.type) {
|
|
168
|
-
case
|
|
169
|
-
notify(
|
|
171
|
+
case 'text_delta':
|
|
172
|
+
notify('session/update', { sessionId, content: { type: 'text', text: ae.delta } });
|
|
170
173
|
break;
|
|
171
|
-
case
|
|
172
|
-
notify(
|
|
174
|
+
case 'thinking_delta':
|
|
175
|
+
notify('session/update', { sessionId, content: { type: 'thought', text: ae.delta } });
|
|
173
176
|
break;
|
|
174
|
-
case
|
|
175
|
-
notify(
|
|
177
|
+
case 'toolcall_delta':
|
|
178
|
+
notify('session/update', { sessionId, content: { type: 'toolcall', text: ae.delta } });
|
|
176
179
|
break;
|
|
177
180
|
}
|
|
178
181
|
break;
|
|
179
182
|
}
|
|
180
|
-
case
|
|
181
|
-
notify(
|
|
183
|
+
case 'tool_execution_start':
|
|
184
|
+
notify('session/update', {
|
|
182
185
|
sessionId,
|
|
183
|
-
status:
|
|
184
|
-
toolCall: { id: event.toolCallId, name: event.toolName, args: event.args, status:
|
|
186
|
+
status: 'running',
|
|
187
|
+
toolCall: { id: event.toolCallId, name: event.toolName, args: event.args, status: 'running' },
|
|
185
188
|
});
|
|
186
189
|
break;
|
|
187
|
-
case
|
|
188
|
-
notify(
|
|
190
|
+
case 'tool_execution_end':
|
|
191
|
+
notify('session/update', {
|
|
189
192
|
sessionId,
|
|
190
|
-
status:
|
|
191
|
-
toolCall: {
|
|
193
|
+
status: 'running',
|
|
194
|
+
toolCall: {
|
|
195
|
+
id: event.toolCallId,
|
|
196
|
+
name: event.toolName,
|
|
197
|
+
result: event.result,
|
|
198
|
+
status: event.isError ? 'error' : 'completed',
|
|
199
|
+
},
|
|
192
200
|
});
|
|
193
201
|
break;
|
|
194
|
-
case
|
|
195
|
-
const lastAssistant = [...event.messages].reverse().find((m) => m.role ===
|
|
196
|
-
notify(
|
|
202
|
+
case 'agent_end': {
|
|
203
|
+
const lastAssistant = [...event.messages].reverse().find((m) => m.role === 'assistant');
|
|
204
|
+
notify('session/update', {
|
|
197
205
|
sessionId,
|
|
198
|
-
status:
|
|
199
|
-
message: lastAssistant
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
206
|
+
status: 'done',
|
|
207
|
+
message: lastAssistant
|
|
208
|
+
? {
|
|
209
|
+
role: 'assistant',
|
|
210
|
+
content: lastAssistant.content,
|
|
211
|
+
stopReason: lastAssistant.stopReason,
|
|
212
|
+
}
|
|
213
|
+
: undefined,
|
|
204
214
|
});
|
|
205
215
|
break;
|
|
206
216
|
}
|
|
@@ -214,7 +224,7 @@ export class ACPAdapter {
|
|
|
214
224
|
this.sessions.delete(params.sessionId);
|
|
215
225
|
}
|
|
216
226
|
if (req.id !== undefined)
|
|
217
|
-
send(req.id, { status:
|
|
227
|
+
send(req.id, { status: 'cancelled' });
|
|
218
228
|
}
|
|
219
229
|
}
|
|
220
230
|
//# sourceMappingURL=server.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../src/integrations/acp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAmB,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAsB,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,WAAW,GAAG,OAAO,CAAC;AAqB5B,SAAS,IAAI,CAAC,EAAmB,EAAE,MAAe;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../src/integrations/acp/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { loadCustomTools, loadCustomTool, discoverCustomToolFiles } from
|
|
2
|
-
export type { CustomToolModule, CustomToolContext } from
|
|
1
|
+
export { loadCustomTools, loadCustomTool, discoverCustomToolFiles } from './loader.js';
|
|
2
|
+
export type { CustomToolModule, CustomToolContext } from './loader.js';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { loadCustomTools, loadCustomTool, discoverCustomToolFiles } from
|
|
1
|
+
export { loadCustomTools, loadCustomTool, discoverCustomToolFiles } from './loader.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { z } from
|
|
2
|
-
import type { AgentTool, ToolResult } from
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { AgentTool, ToolResult } from '@mohanscodex/spectra-agent';
|
|
3
3
|
export interface CustomToolModule {
|
|
4
4
|
description: string;
|
|
5
5
|
args?: Record<string, z.ZodType>;
|