openbotgate 1.0.0
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/LICENSE +21 -0
- package/README.md +293 -0
- package/bin/openbotgate.js +31 -0
- package/dist/config/config.d.ts +56 -0
- package/dist/config/config.d.ts.map +1 -0
- package/dist/config/config.js +136 -0
- package/dist/config/config.js.map +1 -0
- package/dist/debug.d.ts +2 -0
- package/dist/debug.d.ts.map +1 -0
- package/dist/debug.js +33 -0
- package/dist/debug.js.map +1 -0
- package/dist/gateway/bluebubbles.d.ts +12 -0
- package/dist/gateway/bluebubbles.d.ts.map +1 -0
- package/dist/gateway/bluebubbles.js +80 -0
- package/dist/gateway/bluebubbles.js.map +1 -0
- package/dist/gateway/catalog.d.ts +10 -0
- package/dist/gateway/catalog.d.ts.map +1 -0
- package/dist/gateway/catalog.js +28 -0
- package/dist/gateway/catalog.js.map +1 -0
- package/dist/gateway/discord.d.ts +12 -0
- package/dist/gateway/discord.d.ts.map +1 -0
- package/dist/gateway/discord.js +83 -0
- package/dist/gateway/discord.js.map +1 -0
- package/dist/gateway/feishu.d.ts +35 -0
- package/dist/gateway/feishu.d.ts.map +1 -0
- package/dist/gateway/feishu.js +290 -0
- package/dist/gateway/feishu.js.map +1 -0
- package/dist/gateway/googlechat.d.ts +11 -0
- package/dist/gateway/googlechat.d.ts.map +1 -0
- package/dist/gateway/googlechat.js +92 -0
- package/dist/gateway/googlechat.js.map +1 -0
- package/dist/gateway/imessage.d.ts +12 -0
- package/dist/gateway/imessage.d.ts.map +1 -0
- package/dist/gateway/imessage.js +84 -0
- package/dist/gateway/imessage.js.map +1 -0
- package/dist/gateway/index.d.ts +9 -0
- package/dist/gateway/index.d.ts.map +1 -0
- package/dist/gateway/index.js +27 -0
- package/dist/gateway/index.js.map +1 -0
- package/dist/gateway/line.d.ts +13 -0
- package/dist/gateway/line.d.ts.map +1 -0
- package/dist/gateway/line.js +80 -0
- package/dist/gateway/line.js.map +1 -0
- package/dist/gateway/matrix.d.ts +12 -0
- package/dist/gateway/matrix.d.ts.map +1 -0
- package/dist/gateway/matrix.js +105 -0
- package/dist/gateway/matrix.js.map +1 -0
- package/dist/gateway/mattermost.d.ts +14 -0
- package/dist/gateway/mattermost.d.ts.map +1 -0
- package/dist/gateway/mattermost.js +92 -0
- package/dist/gateway/mattermost.js.map +1 -0
- package/dist/gateway/msteams.d.ts +12 -0
- package/dist/gateway/msteams.d.ts.map +1 -0
- package/dist/gateway/msteams.js +119 -0
- package/dist/gateway/msteams.js.map +1 -0
- package/dist/gateway/nextcloud-talk.d.ts +11 -0
- package/dist/gateway/nextcloud-talk.d.ts.map +1 -0
- package/dist/gateway/nextcloud-talk.js +93 -0
- package/dist/gateway/nextcloud-talk.js.map +1 -0
- package/dist/gateway/nostr.d.ts +15 -0
- package/dist/gateway/nostr.d.ts.map +1 -0
- package/dist/gateway/nostr.js +95 -0
- package/dist/gateway/nostr.js.map +1 -0
- package/dist/gateway/qq-guild.d.ts +14 -0
- package/dist/gateway/qq-guild.d.ts.map +1 -0
- package/dist/gateway/qq-guild.js +121 -0
- package/dist/gateway/qq-guild.js.map +1 -0
- package/dist/gateway/qq.d.ts +14 -0
- package/dist/gateway/qq.d.ts.map +1 -0
- package/dist/gateway/qq.js +121 -0
- package/dist/gateway/qq.js.map +1 -0
- package/dist/gateway/registry.d.ts +4 -0
- package/dist/gateway/registry.d.ts.map +1 -0
- package/dist/gateway/registry.js +38 -0
- package/dist/gateway/registry.js.map +1 -0
- package/dist/gateway/signal.d.ts +12 -0
- package/dist/gateway/signal.d.ts.map +1 -0
- package/dist/gateway/signal.js +80 -0
- package/dist/gateway/signal.js.map +1 -0
- package/dist/gateway/slack.d.ts +12 -0
- package/dist/gateway/slack.d.ts.map +1 -0
- package/dist/gateway/slack.js +83 -0
- package/dist/gateway/slack.js.map +1 -0
- package/dist/gateway/stub.d.ts +7 -0
- package/dist/gateway/stub.d.ts.map +1 -0
- package/dist/gateway/stub.js +23 -0
- package/dist/gateway/stub.js.map +1 -0
- package/dist/gateway/telegram.d.ts +12 -0
- package/dist/gateway/telegram.d.ts.map +1 -0
- package/dist/gateway/telegram.js +61 -0
- package/dist/gateway/telegram.js.map +1 -0
- package/dist/gateway/tlon.d.ts +12 -0
- package/dist/gateway/tlon.d.ts.map +1 -0
- package/dist/gateway/tlon.js +105 -0
- package/dist/gateway/tlon.js.map +1 -0
- package/dist/gateway/types.d.ts +21 -0
- package/dist/gateway/types.d.ts.map +1 -0
- package/dist/gateway/types.js +3 -0
- package/dist/gateway/types.js.map +1 -0
- package/dist/gateway/whatsapp.d.ts +12 -0
- package/dist/gateway/whatsapp.d.ts.map +1 -0
- package/dist/gateway/whatsapp.js +81 -0
- package/dist/gateway/whatsapp.js.map +1 -0
- package/dist/gateway/zalo.d.ts +12 -0
- package/dist/gateway/zalo.d.ts.map +1 -0
- package/dist/gateway/zalo.js +77 -0
- package/dist/gateway/zalo.js.map +1 -0
- package/dist/gateway/zalouser.d.ts +12 -0
- package/dist/gateway/zalouser.d.ts.map +1 -0
- package/dist/gateway/zalouser.js +85 -0
- package/dist/gateway/zalouser.js.map +1 -0
- package/dist/handler/code/agent.d.ts +10 -0
- package/dist/handler/code/agent.d.ts.map +1 -0
- package/dist/handler/code/agent.js +63 -0
- package/dist/handler/code/agent.js.map +1 -0
- package/dist/handler/code/code.d.ts +15 -0
- package/dist/handler/code/code.d.ts.map +1 -0
- package/dist/handler/code/code.js +129 -0
- package/dist/handler/code/code.js.map +1 -0
- package/dist/handler/code/model.d.ts +10 -0
- package/dist/handler/code/model.d.ts.map +1 -0
- package/dist/handler/code/model.js +63 -0
- package/dist/handler/code/model.js.map +1 -0
- package/dist/handler/code/new.d.ts +7 -0
- package/dist/handler/code/new.d.ts.map +1 -0
- package/dist/handler/code/new.js +27 -0
- package/dist/handler/code/new.js.map +1 -0
- package/dist/handler/code/opencode.d.ts +12 -0
- package/dist/handler/code/opencode.d.ts.map +1 -0
- package/dist/handler/code/opencode.js +88 -0
- package/dist/handler/code/opencode.js.map +1 -0
- package/dist/handler/code/session.d.ts +9 -0
- package/dist/handler/code/session.d.ts.map +1 -0
- package/dist/handler/code/session.js +55 -0
- package/dist/handler/code/session.js.map +1 -0
- package/dist/handler/code/workspace.d.ts +10 -0
- package/dist/handler/code/workspace.d.ts.map +1 -0
- package/dist/handler/code/workspace.js +80 -0
- package/dist/handler/code/workspace.js.map +1 -0
- package/dist/handler/commands/agent.d.ts +10 -0
- package/dist/handler/commands/agent.d.ts.map +1 -0
- package/dist/handler/commands/agent.js +63 -0
- package/dist/handler/commands/agent.js.map +1 -0
- package/dist/handler/commands/async.d.ts +3 -0
- package/dist/handler/commands/async.d.ts.map +1 -0
- package/dist/handler/commands/async.js +30 -0
- package/dist/handler/commands/async.js.map +1 -0
- package/dist/handler/commands/claude.d.ts +3 -0
- package/dist/handler/commands/claude.d.ts.map +1 -0
- package/dist/handler/commands/claude.js +19 -0
- package/dist/handler/commands/claude.js.map +1 -0
- package/dist/handler/commands/code.d.ts +15 -0
- package/dist/handler/commands/code.d.ts.map +1 -0
- package/dist/handler/commands/code.js +133 -0
- package/dist/handler/commands/code.js.map +1 -0
- package/dist/handler/commands/git.d.ts +3 -0
- package/dist/handler/commands/git.d.ts.map +1 -0
- package/dist/handler/commands/git.js +25 -0
- package/dist/handler/commands/git.js.map +1 -0
- package/dist/handler/commands/help.d.ts +3 -0
- package/dist/handler/commands/help.d.ts.map +1 -0
- package/dist/handler/commands/help.js +49 -0
- package/dist/handler/commands/help.js.map +1 -0
- package/dist/handler/commands/index.d.ts +10 -0
- package/dist/handler/commands/index.d.ts.map +1 -0
- package/dist/handler/commands/index.js +43 -0
- package/dist/handler/commands/index.js.map +1 -0
- package/dist/handler/commands/model.d.ts +10 -0
- package/dist/handler/commands/model.d.ts.map +1 -0
- package/dist/handler/commands/model.js +63 -0
- package/dist/handler/commands/model.js.map +1 -0
- package/dist/handler/commands/new.d.ts +3 -0
- package/dist/handler/commands/new.d.ts.map +1 -0
- package/dist/handler/commands/new.js +25 -0
- package/dist/handler/commands/new.js.map +1 -0
- package/dist/handler/commands/opencode.d.ts +12 -0
- package/dist/handler/commands/opencode.d.ts.map +1 -0
- package/dist/handler/commands/opencode.js +131 -0
- package/dist/handler/commands/opencode.js.map +1 -0
- package/dist/handler/commands/session.d.ts +9 -0
- package/dist/handler/commands/session.d.ts.map +1 -0
- package/dist/handler/commands/session.js +55 -0
- package/dist/handler/commands/session.js.map +1 -0
- package/dist/handler/commands/shell.d.ts +11 -0
- package/dist/handler/commands/shell.d.ts.map +1 -0
- package/dist/handler/commands/shell.js +142 -0
- package/dist/handler/commands/shell.js.map +1 -0
- package/dist/handler/commands/status.d.ts +3 -0
- package/dist/handler/commands/status.d.ts.map +1 -0
- package/dist/handler/commands/status.js +21 -0
- package/dist/handler/commands/status.js.map +1 -0
- package/dist/handler/commands/sync.d.ts +3 -0
- package/dist/handler/commands/sync.d.ts.map +1 -0
- package/dist/handler/commands/sync.js +26 -0
- package/dist/handler/commands/sync.js.map +1 -0
- package/dist/handler/commands/tasks.d.ts +10 -0
- package/dist/handler/commands/tasks.d.ts.map +1 -0
- package/dist/handler/commands/tasks.js +58 -0
- package/dist/handler/commands/tasks.js.map +1 -0
- package/dist/handler/commands/utils.d.ts +10 -0
- package/dist/handler/commands/utils.d.ts.map +1 -0
- package/dist/handler/commands/utils.js +63 -0
- package/dist/handler/commands/utils.js.map +1 -0
- package/dist/handler/commands/workspace.d.ts +10 -0
- package/dist/handler/commands/workspace.d.ts.map +1 -0
- package/dist/handler/commands/workspace.js +80 -0
- package/dist/handler/commands/workspace.js.map +1 -0
- package/dist/handler/dedup.d.ts +3 -0
- package/dist/handler/dedup.d.ts.map +1 -0
- package/dist/handler/dedup.js +29 -0
- package/dist/handler/dedup.js.map +1 -0
- package/dist/handler/index.d.ts +21 -0
- package/dist/handler/index.d.ts.map +1 -0
- package/dist/handler/index.js +189 -0
- package/dist/handler/index.js.map +1 -0
- package/dist/handler/parse.d.ts +30 -0
- package/dist/handler/parse.d.ts.map +1 -0
- package/dist/handler/parse.js +57 -0
- package/dist/handler/parse.js.map +1 -0
- package/dist/handler/session/agent.d.ts +10 -0
- package/dist/handler/session/agent.d.ts.map +1 -0
- package/dist/handler/session/agent.js +63 -0
- package/dist/handler/session/agent.js.map +1 -0
- package/dist/handler/session/model.d.ts +10 -0
- package/dist/handler/session/model.d.ts.map +1 -0
- package/dist/handler/session/model.js +63 -0
- package/dist/handler/session/model.js.map +1 -0
- package/dist/handler/session/new.d.ts +3 -0
- package/dist/handler/session/new.d.ts.map +1 -0
- package/dist/handler/session/new.js +25 -0
- package/dist/handler/session/new.js.map +1 -0
- package/dist/handler/session/session.d.ts +9 -0
- package/dist/handler/session/session.d.ts.map +1 -0
- package/dist/handler/session/session.js +55 -0
- package/dist/handler/session/session.js.map +1 -0
- package/dist/handler/session/workspace.d.ts +10 -0
- package/dist/handler/session/workspace.d.ts.map +1 -0
- package/dist/handler/session/workspace.js +80 -0
- package/dist/handler/session/workspace.js.map +1 -0
- package/dist/handler/shell/git.d.ts +3 -0
- package/dist/handler/shell/git.d.ts.map +1 -0
- package/dist/handler/shell/git.js +25 -0
- package/dist/handler/shell/git.js.map +1 -0
- package/dist/handler/shell/runShell.d.ts +7 -0
- package/dist/handler/shell/runShell.d.ts.map +1 -0
- package/dist/handler/shell/runShell.js +42 -0
- package/dist/handler/shell/runShell.js.map +1 -0
- package/dist/handler/shell/utils.d.ts +10 -0
- package/dist/handler/shell/utils.d.ts.map +1 -0
- package/dist/handler/shell/utils.js +63 -0
- package/dist/handler/shell/utils.js.map +1 -0
- package/dist/handler/streamHandler.d.ts +9 -0
- package/dist/handler/streamHandler.d.ts.map +1 -0
- package/dist/handler/streamHandler.js +49 -0
- package/dist/handler/streamHandler.js.map +1 -0
- package/dist/handler/types.d.ts +36 -0
- package/dist/handler/types.d.ts.map +1 -0
- package/dist/handler/types.js +3 -0
- package/dist/handler/types.js.map +1 -0
- package/dist/handlers/messageHandler.d.ts +3 -0
- package/dist/handlers/messageHandler.d.ts.map +1 -0
- package/dist/handlers/messageHandler.js +249 -0
- package/dist/handlers/messageHandler.js.map +1 -0
- package/dist/handlers/messageHandlerOfficial.d.ts +2 -0
- package/dist/handlers/messageHandlerOfficial.d.ts.map +1 -0
- package/dist/handlers/messageHandlerOfficial.js +302 -0
- package/dist/handlers/messageHandlerOfficial.js.map +1 -0
- package/dist/handlers/messageHandlerV2.d.ts +2 -0
- package/dist/handlers/messageHandlerV2.d.ts.map +1 -0
- package/dist/handlers/messageHandlerV2.js +250 -0
- package/dist/handlers/messageHandlerV2.js.map +1 -0
- package/dist/helloWorld.d.ts +5 -0
- package/dist/helloWorld.d.ts.map +1 -0
- package/dist/helloWorld.js +19 -0
- package/dist/helloWorld.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +25 -0
- package/dist/index.js.map +1 -0
- package/dist/indexOfficial.d.ts +4 -0
- package/dist/indexOfficial.d.ts.map +1 -0
- package/dist/indexOfficial.js +92 -0
- package/dist/indexOfficial.js.map +1 -0
- package/dist/indexV2.d.ts +4 -0
- package/dist/indexV2.d.ts.map +1 -0
- package/dist/indexV2.js +109 -0
- package/dist/indexV2.js.map +1 -0
- package/dist/runtime/cliTools.d.ts +17 -0
- package/dist/runtime/cliTools.d.ts.map +1 -0
- package/dist/runtime/cliTools.js +97 -0
- package/dist/runtime/cliTools.js.map +1 -0
- package/dist/runtime/executor.d.ts +27 -0
- package/dist/runtime/executor.d.ts.map +1 -0
- package/dist/runtime/executor.js +108 -0
- package/dist/runtime/executor.js.map +1 -0
- package/dist/runtime/sessionManager.d.ts +42 -0
- package/dist/runtime/sessionManager.d.ts.map +1 -0
- package/dist/runtime/sessionManager.js +161 -0
- package/dist/runtime/sessionManager.js.map +1 -0
- package/dist/runtime/streamHandler.d.ts +9 -0
- package/dist/runtime/streamHandler.d.ts.map +1 -0
- package/dist/runtime/streamHandler.js +49 -0
- package/dist/runtime/streamHandler.js.map +1 -0
- package/dist/runtime/taskManager.d.ts +26 -0
- package/dist/runtime/taskManager.d.ts.map +1 -0
- package/dist/runtime/taskManager.js +153 -0
- package/dist/runtime/taskManager.js.map +1 -0
- package/dist/runtime/tools/base.d.ts +81 -0
- package/dist/runtime/tools/base.d.ts.map +1 -0
- package/dist/runtime/tools/base.js +100 -0
- package/dist/runtime/tools/base.js.map +1 -0
- package/dist/runtime/tools/claudecode.d.ts +19 -0
- package/dist/runtime/tools/claudecode.d.ts.map +1 -0
- package/dist/runtime/tools/claudecode.js +59 -0
- package/dist/runtime/tools/claudecode.js.map +1 -0
- package/dist/runtime/tools/codex.d.ts +19 -0
- package/dist/runtime/tools/codex.d.ts.map +1 -0
- package/dist/runtime/tools/codex.js +68 -0
- package/dist/runtime/tools/codex.js.map +1 -0
- package/dist/runtime/tools/cursor.d.ts +15 -0
- package/dist/runtime/tools/cursor.d.ts.map +1 -0
- package/dist/runtime/tools/cursor.js +33 -0
- package/dist/runtime/tools/cursor.js.map +1 -0
- package/dist/runtime/tools/cursorcode.d.ts +20 -0
- package/dist/runtime/tools/cursorcode.d.ts.map +1 -0
- package/dist/runtime/tools/cursorcode.js +99 -0
- package/dist/runtime/tools/cursorcode.js.map +1 -0
- package/dist/runtime/tools/geminicode.d.ts +20 -0
- package/dist/runtime/tools/geminicode.d.ts.map +1 -0
- package/dist/runtime/tools/geminicode.js +65 -0
- package/dist/runtime/tools/geminicode.js.map +1 -0
- package/dist/runtime/tools/index.d.ts +11 -0
- package/dist/runtime/tools/index.d.ts.map +1 -0
- package/dist/runtime/tools/index.js +36 -0
- package/dist/runtime/tools/index.js.map +1 -0
- package/dist/runtime/tools/kimi.d.ts +16 -0
- package/dist/runtime/tools/kimi.d.ts.map +1 -0
- package/dist/runtime/tools/kimi.js +32 -0
- package/dist/runtime/tools/kimi.js.map +1 -0
- package/dist/runtime/tools/kimicode.d.ts +16 -0
- package/dist/runtime/tools/kimicode.d.ts.map +1 -0
- package/dist/runtime/tools/kimicode.js +43 -0
- package/dist/runtime/tools/kimicode.js.map +1 -0
- package/dist/runtime/tools/nanobot.d.ts +19 -0
- package/dist/runtime/tools/nanobot.d.ts.map +1 -0
- package/dist/runtime/tools/nanobot.js +94 -0
- package/dist/runtime/tools/nanobot.js.map +1 -0
- package/dist/runtime/tools/openaicodex.d.ts +17 -0
- package/dist/runtime/tools/openaicodex.d.ts.map +1 -0
- package/dist/runtime/tools/openaicodex.js +54 -0
- package/dist/runtime/tools/openaicodex.js.map +1 -0
- package/dist/runtime/tools/openclaw.d.ts +24 -0
- package/dist/runtime/tools/openclaw.d.ts.map +1 -0
- package/dist/runtime/tools/openclaw.js +88 -0
- package/dist/runtime/tools/openclaw.js.map +1 -0
- package/dist/runtime/tools/opencode.d.ts +23 -0
- package/dist/runtime/tools/opencode.d.ts.map +1 -0
- package/dist/runtime/tools/opencode.js +82 -0
- package/dist/runtime/tools/opencode.js.map +1 -0
- package/dist/runtime/tools/qwencode.d.ts +17 -0
- package/dist/runtime/tools/qwencode.d.ts.map +1 -0
- package/dist/runtime/tools/qwencode.js +49 -0
- package/dist/runtime/tools/qwencode.js.map +1 -0
- package/dist/runtime/tools/registerAll.d.ts +9 -0
- package/dist/runtime/tools/registerAll.d.ts.map +1 -0
- package/dist/runtime/tools/registerAll.js +29 -0
- package/dist/runtime/tools/registerAll.js.map +1 -0
- package/dist/runtime/tools/registry.d.ts +21 -0
- package/dist/runtime/tools/registry.d.ts.map +1 -0
- package/dist/runtime/tools/registry.js +41 -0
- package/dist/runtime/tools/registry.js.map +1 -0
- package/dist/runtime/tools/types.d.ts +67 -0
- package/dist/runtime/tools/types.d.ts.map +1 -0
- package/dist/runtime/tools/types.js +3 -0
- package/dist/runtime/tools/types.js.map +1 -0
- package/dist/services/cliTools.d.ts +32 -0
- package/dist/services/cliTools.d.ts.map +1 -0
- package/dist/services/cliTools.js +149 -0
- package/dist/services/cliTools.js.map +1 -0
- package/dist/services/commandExecutor.d.ts +29 -0
- package/dist/services/commandExecutor.d.ts.map +1 -0
- package/dist/services/commandExecutor.js +125 -0
- package/dist/services/commandExecutor.js.map +1 -0
- package/dist/services/commandExecutor.test.d.ts +2 -0
- package/dist/services/commandExecutor.test.d.ts.map +1 -0
- package/dist/services/commandExecutor.test.js +54 -0
- package/dist/services/commandExecutor.test.js.map +1 -0
- package/dist/services/feishuService.d.ts +14 -0
- package/dist/services/feishuService.d.ts.map +1 -0
- package/dist/services/feishuService.js +103 -0
- package/dist/services/feishuService.js.map +1 -0
- package/dist/services/feishuServiceOfficial.d.ts +15 -0
- package/dist/services/feishuServiceOfficial.d.ts.map +1 -0
- package/dist/services/feishuServiceOfficial.js +167 -0
- package/dist/services/feishuServiceOfficial.js.map +1 -0
- package/dist/services/feishuServiceV2.d.ts +20 -0
- package/dist/services/feishuServiceV2.d.ts.map +1 -0
- package/dist/services/feishuServiceV2.js +222 -0
- package/dist/services/feishuServiceV2.js.map +1 -0
- package/dist/services/taskManager.d.ts +25 -0
- package/dist/services/taskManager.d.ts.map +1 -0
- package/dist/services/taskManager.js +129 -0
- package/dist/services/taskManager.js.map +1 -0
- package/dist/services/taskManagerSimple.d.ts +25 -0
- package/dist/services/taskManagerSimple.d.ts.map +1 -0
- package/dist/services/taskManagerSimple.js +147 -0
- package/dist/services/taskManagerSimple.js.map +1 -0
- package/dist/testHelloWorld.d.ts +2 -0
- package/dist/testHelloWorld.d.ts.map +1 -0
- package/dist/testHelloWorld.js +18 -0
- package/dist/testHelloWorld.js.map +1 -0
- package/dist/utils/encoding.d.ts +3 -0
- package/dist/utils/encoding.d.ts.map +1 -0
- package/dist/utils/encoding.js +110 -0
- package/dist/utils/encoding.js.map +1 -0
- package/dist/utils/logger.d.ts +19 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +192 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/shellEncoding.d.ts +5 -0
- package/dist/utils/shellEncoding.d.ts.map +1 -0
- package/dist/utils/shellEncoding.js +117 -0
- package/dist/utils/shellEncoding.js.map +1 -0
- package/openbotgate.example.yml +60 -0
- package/package.json +81 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ClaudeCodeAdapter = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
/**
|
|
6
|
+
* Adapter for Claude Code CLI.
|
|
7
|
+
* - Execute: claude -p "prompt"
|
|
8
|
+
* - Session: -r <session> / -c (continue)
|
|
9
|
+
* - Model: --model name
|
|
10
|
+
* - Agent: --agent name
|
|
11
|
+
*/
|
|
12
|
+
class ClaudeCodeAdapter extends base_1.BaseToolAdapter {
|
|
13
|
+
constructor() {
|
|
14
|
+
super(...arguments);
|
|
15
|
+
this.name = 'claudecode';
|
|
16
|
+
this.commandName = 'claude';
|
|
17
|
+
this.displayName = 'Claude Code';
|
|
18
|
+
this.capabilities = {
|
|
19
|
+
session: true,
|
|
20
|
+
model: true,
|
|
21
|
+
agent: true,
|
|
22
|
+
compact: false,
|
|
23
|
+
listModels: false,
|
|
24
|
+
listSessions: false,
|
|
25
|
+
listAgents: false,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
buildCommand(prompt, options) {
|
|
29
|
+
const parts = [this.getExecutable(), '-p'];
|
|
30
|
+
if (!options.newSession) {
|
|
31
|
+
if (options.sessionId) {
|
|
32
|
+
parts.push('-r', options.sessionId);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
parts.push('-c'); // continue last session by default
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
// newSession: don't pass -r or -c (start fresh)
|
|
39
|
+
if (options.model)
|
|
40
|
+
parts.push('--model', options.model);
|
|
41
|
+
if (options.agent)
|
|
42
|
+
parts.push('--agent', options.agent);
|
|
43
|
+
parts.push(`"${this.escapePrompt(prompt)}"`);
|
|
44
|
+
return parts.join(' ');
|
|
45
|
+
}
|
|
46
|
+
async listModels() {
|
|
47
|
+
// Claude Code has a preset list
|
|
48
|
+
return [
|
|
49
|
+
'claude-sonnet-4-20250514',
|
|
50
|
+
'claude-opus-4-20250514',
|
|
51
|
+
'claude-haiku-3.5',
|
|
52
|
+
];
|
|
53
|
+
}
|
|
54
|
+
async listAgents() {
|
|
55
|
+
return ['plan', 'build'];
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
exports.ClaudeCodeAdapter = ClaudeCodeAdapter;
|
|
59
|
+
//# sourceMappingURL=claudecode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claudecode.js","sourceRoot":"","sources":["../../../src/runtime/tools/claudecode.ts"],"names":[],"mappings":";;;AAAA,iCAAyC;AAGzC;;;;;;GAMG;AACH,MAAa,iBAAkB,SAAQ,sBAAe;IAAtD;;QACW,SAAI,GAAG,YAAY,CAAC;QACpB,gBAAW,GAAG,QAAQ,CAAC;QACvB,gBAAW,GAAG,aAAa,CAAC;QAC5B,iBAAY,GAAqB;YACxC,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;SAClB,CAAC;IAiCJ,CAAC;IA/BC,YAAY,CAAC,MAAc,EAAE,OAAmB;QAC9C,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,CAAC;QAE3C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACxB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAmC;YACvD,CAAC;QACH,CAAC;QACD,gDAAgD;QAEhD,IAAI,OAAO,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACxD,IAAI,OAAO,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE7C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,gCAAgC;QAChC,OAAO;YACL,0BAA0B;YAC1B,wBAAwB;YACxB,kBAAkB;SACnB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3B,CAAC;CACF;AA7CD,8CA6CC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseToolAdapter } from './base';
|
|
2
|
+
import type { RunOptions, ToolCapabilities } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Adapter for OpenAI Codex CLI.
|
|
5
|
+
* - Execute: codex exec "prompt"
|
|
6
|
+
* - Resume: codex exec resume <id> "prompt"
|
|
7
|
+
* - Model: -m model
|
|
8
|
+
* - JSON output: --json
|
|
9
|
+
*/
|
|
10
|
+
export declare class CodexAdapter extends BaseToolAdapter {
|
|
11
|
+
readonly name = "codex";
|
|
12
|
+
readonly commandName = "codex";
|
|
13
|
+
readonly displayName = "Codex";
|
|
14
|
+
readonly capabilities: ToolCapabilities;
|
|
15
|
+
buildCommand(prompt: string, options: RunOptions): string;
|
|
16
|
+
protected parseSessionId(output: string): string | undefined;
|
|
17
|
+
listModels(): Promise<string[]>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=codex.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/runtime/tools/codex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE5D;;;;;;GAMG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC/C,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,WAAW,WAAW;IAC/B,QAAQ,CAAC,WAAW,WAAW;IAC/B,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAQrC;IAEF,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM;IAczD,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAiBtD,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAOtC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CodexAdapter = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
/**
|
|
6
|
+
* Adapter for OpenAI Codex CLI.
|
|
7
|
+
* - Execute: codex exec "prompt"
|
|
8
|
+
* - Resume: codex exec resume <id> "prompt"
|
|
9
|
+
* - Model: -m model
|
|
10
|
+
* - JSON output: --json
|
|
11
|
+
*/
|
|
12
|
+
class CodexAdapter extends base_1.BaseToolAdapter {
|
|
13
|
+
constructor() {
|
|
14
|
+
super(...arguments);
|
|
15
|
+
this.name = 'codex';
|
|
16
|
+
this.commandName = 'codex';
|
|
17
|
+
this.displayName = 'Codex';
|
|
18
|
+
this.capabilities = {
|
|
19
|
+
session: true,
|
|
20
|
+
model: true,
|
|
21
|
+
agent: false,
|
|
22
|
+
compact: false,
|
|
23
|
+
listModels: false,
|
|
24
|
+
listSessions: false,
|
|
25
|
+
listAgents: false,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
buildCommand(prompt, options) {
|
|
29
|
+
const parts = ['codex', 'exec'];
|
|
30
|
+
if (options.sessionId) {
|
|
31
|
+
parts.push('resume', options.sessionId);
|
|
32
|
+
}
|
|
33
|
+
if (options.model)
|
|
34
|
+
parts.push('-m', options.model);
|
|
35
|
+
parts.push('--full-auto');
|
|
36
|
+
parts.push(`"${this.escapePrompt(prompt)}"`);
|
|
37
|
+
return parts.join(' ');
|
|
38
|
+
}
|
|
39
|
+
parseSessionId(output) {
|
|
40
|
+
// Codex JSONL output may contain session/conversation ID
|
|
41
|
+
try {
|
|
42
|
+
const lines = output.split('\n');
|
|
43
|
+
for (const line of lines) {
|
|
44
|
+
const trimmed = line.trim();
|
|
45
|
+
if (!trimmed.startsWith('{'))
|
|
46
|
+
continue;
|
|
47
|
+
const obj = JSON.parse(trimmed);
|
|
48
|
+
if (obj.conversation_id)
|
|
49
|
+
return obj.conversation_id;
|
|
50
|
+
if (obj.session_id)
|
|
51
|
+
return obj.session_id;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
// ignore
|
|
56
|
+
}
|
|
57
|
+
return undefined;
|
|
58
|
+
}
|
|
59
|
+
async listModels() {
|
|
60
|
+
return [
|
|
61
|
+
'o4-mini',
|
|
62
|
+
'o3',
|
|
63
|
+
'gpt-4.1',
|
|
64
|
+
];
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
exports.CodexAdapter = CodexAdapter;
|
|
68
|
+
//# sourceMappingURL=codex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/runtime/tools/codex.ts"],"names":[],"mappings":";;;AAAA,iCAAyC;AAGzC;;;;;;GAMG;AACH,MAAa,YAAa,SAAQ,sBAAe;IAAjD;;QACW,SAAI,GAAG,OAAO,CAAC;QACf,gBAAW,GAAG,OAAO,CAAC;QACtB,gBAAW,GAAG,OAAO,CAAC;QACtB,iBAAY,GAAqB;YACxC,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;SAClB,CAAC;IAwCJ,CAAC;IAtCC,YAAY,CAAC,MAAc,EAAE,OAAmB;QAC9C,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEhC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,OAAO,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE7C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAES,cAAc,CAAC,MAAc;QACrC,yDAAyD;QACzD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC5B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAS;gBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAChC,IAAI,GAAG,CAAC,eAAe;oBAAE,OAAO,GAAG,CAAC,eAAe,CAAC;gBACpD,IAAI,GAAG,CAAC,UAAU;oBAAE,OAAO,GAAG,CAAC,UAAU,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO;YACL,SAAS;YACT,IAAI;YACJ,SAAS;SACV,CAAC;IACJ,CAAC;CACF;AApDD,oCAoDC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { BaseToolAdapter } from './base';
|
|
2
|
+
import type { RunOptions, ToolCapabilities } from './base';
|
|
3
|
+
/**
|
|
4
|
+
* Adapter for Cursor Agent CLI (headless).
|
|
5
|
+
* - Execute: agent -p "prompt"
|
|
6
|
+
* - Non-interactive / print mode; optional --force for file modifications.
|
|
7
|
+
*/
|
|
8
|
+
export declare class CursorAdapter extends BaseToolAdapter {
|
|
9
|
+
readonly name = "cursor";
|
|
10
|
+
readonly commandName = "cursor";
|
|
11
|
+
readonly displayName = "Cursor";
|
|
12
|
+
readonly capabilities: ToolCapabilities;
|
|
13
|
+
buildCommand(prompt: string, options: RunOptions): string;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=cursor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../src/runtime/tools/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE3D;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,eAAe;IAChD,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,WAAW,YAAY;IAChC,QAAQ,CAAC,WAAW,YAAY;IAChC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAQrC;IAEF,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM;CAK1D"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CursorAdapter = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
/**
|
|
6
|
+
* Adapter for Cursor Agent CLI (headless).
|
|
7
|
+
* - Execute: agent -p "prompt"
|
|
8
|
+
* - Non-interactive / print mode; optional --force for file modifications.
|
|
9
|
+
*/
|
|
10
|
+
class CursorAdapter extends base_1.BaseToolAdapter {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this.name = 'cursor';
|
|
14
|
+
this.commandName = 'cursor';
|
|
15
|
+
this.displayName = 'Cursor';
|
|
16
|
+
this.capabilities = {
|
|
17
|
+
session: false,
|
|
18
|
+
model: false,
|
|
19
|
+
agent: false,
|
|
20
|
+
compact: false,
|
|
21
|
+
listModels: false,
|
|
22
|
+
listSessions: false,
|
|
23
|
+
listAgents: false,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
buildCommand(prompt, options) {
|
|
27
|
+
const parts = ['agent', '-p'];
|
|
28
|
+
parts.push(`"${this.escapePrompt(prompt)}"`);
|
|
29
|
+
return parts.join(' ');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.CursorAdapter = CursorAdapter;
|
|
33
|
+
//# sourceMappingURL=cursor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../../src/runtime/tools/cursor.ts"],"names":[],"mappings":";;;AAAA,iCAAyC;AAGzC;;;;GAIG;AACH,MAAa,aAAc,SAAQ,sBAAe;IAAlD;;QACW,SAAI,GAAG,QAAQ,CAAC;QAChB,gBAAW,GAAG,QAAQ,CAAC;QACvB,gBAAW,GAAG,QAAQ,CAAC;QACvB,iBAAY,GAAqB;YACxC,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;SAClB,CAAC;IAOJ,CAAC;IALC,YAAY,CAAC,MAAc,EAAE,OAAmB;QAC9C,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACF;AAnBD,sCAmBC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BaseToolAdapter } from './base';
|
|
2
|
+
import type { RunOptions, ToolCapabilities, ToolResult, SessionInfo } from './base';
|
|
3
|
+
/**
|
|
4
|
+
* Adapter for Cursor Agent CLI (headless).
|
|
5
|
+
* - Execute: agent -p "prompt"
|
|
6
|
+
* - Session: --resume <chatId>. When no sessionId, we run `agent ls` to get latest chat id then resume it.
|
|
7
|
+
*/
|
|
8
|
+
export declare class CursorCodeAdapter extends BaseToolAdapter {
|
|
9
|
+
readonly name = "cursorcode";
|
|
10
|
+
readonly commandName = "cursor";
|
|
11
|
+
readonly displayName = "Cursor";
|
|
12
|
+
readonly capabilities: ToolCapabilities;
|
|
13
|
+
/** Cursor 实际调用的是 agent 命令,非 commandName(cursor) */
|
|
14
|
+
protected getDefaultExecutable(): string;
|
|
15
|
+
buildCommand(prompt: string, options: RunOptions): string;
|
|
16
|
+
listSessions(): Promise<SessionInfo[]>;
|
|
17
|
+
/** When no sessionId and not newSession, resolve latest chat via agent ls then run with --resume. */
|
|
18
|
+
execute(prompt: string, options: RunOptions): Promise<ToolResult>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=cursorcode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cursorcode.d.ts","sourceRoot":"","sources":["../../../src/runtime/tools/cursorcode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEzC,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAKpF;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,eAAe;IACpD,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,WAAW,YAAY;IAChC,QAAQ,CAAC,WAAW,YAAY;IAChC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAQrC;IAEF,mDAAmD;IACnD,SAAS,CAAC,oBAAoB,IAAI,MAAM;IAIxC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM;IAWnD,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAgC5C,qGAAqG;IAC/F,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAyBxE"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CursorCodeAdapter = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
const config_1 = require("../../config/config");
|
|
6
|
+
/** UUID pattern for Cursor chat ids */
|
|
7
|
+
const UUID_RE = /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi;
|
|
8
|
+
/**
|
|
9
|
+
* Adapter for Cursor Agent CLI (headless).
|
|
10
|
+
* - Execute: agent -p "prompt"
|
|
11
|
+
* - Session: --resume <chatId>. When no sessionId, we run `agent ls` to get latest chat id then resume it.
|
|
12
|
+
*/
|
|
13
|
+
class CursorCodeAdapter extends base_1.BaseToolAdapter {
|
|
14
|
+
constructor() {
|
|
15
|
+
super(...arguments);
|
|
16
|
+
this.name = 'cursorcode';
|
|
17
|
+
this.commandName = 'cursor';
|
|
18
|
+
this.displayName = 'Cursor';
|
|
19
|
+
this.capabilities = {
|
|
20
|
+
session: true,
|
|
21
|
+
model: false,
|
|
22
|
+
agent: false,
|
|
23
|
+
compact: false,
|
|
24
|
+
listModels: false,
|
|
25
|
+
listSessions: true,
|
|
26
|
+
listAgents: false,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/** Cursor 实际调用的是 agent 命令,非 commandName(cursor) */
|
|
30
|
+
getDefaultExecutable() {
|
|
31
|
+
return 'agent';
|
|
32
|
+
}
|
|
33
|
+
buildCommand(prompt, options) {
|
|
34
|
+
const parts = [this.getExecutable()];
|
|
35
|
+
if (!options.newSession && options.sessionId) {
|
|
36
|
+
parts.push('--resume', options.sessionId);
|
|
37
|
+
}
|
|
38
|
+
parts.push('-p', `"${this.escapePrompt(prompt)}"`);
|
|
39
|
+
return parts.join(' ');
|
|
40
|
+
}
|
|
41
|
+
async listSessions() {
|
|
42
|
+
const output = await this.runHelper(`${this.getExecutable()} ls`, undefined);
|
|
43
|
+
if (!output)
|
|
44
|
+
return [];
|
|
45
|
+
const sessions = [];
|
|
46
|
+
const lines = output.split('\n').map(l => l.trim()).filter(Boolean);
|
|
47
|
+
for (const line of lines) {
|
|
48
|
+
const ids = line.match(UUID_RE);
|
|
49
|
+
if (ids && ids.length > 0) {
|
|
50
|
+
const id = ids[0];
|
|
51
|
+
const rest = line.replace(new RegExp(id, 'gi'), '').trim();
|
|
52
|
+
const parts = rest.split(/\s{2,}/).map(p => p.trim()).filter(Boolean);
|
|
53
|
+
sessions.push({
|
|
54
|
+
id,
|
|
55
|
+
title: parts[0] || rest || '',
|
|
56
|
+
updatedAt: parts[1] || '',
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
const cols = line.split(/\s{2,}|\t/).map(p => p.trim()).filter(Boolean);
|
|
61
|
+
if (cols.length >= 1 && cols[0].length >= 10 && !cols[0].match(/^(id|chat|session)$/i)) {
|
|
62
|
+
sessions.push({
|
|
63
|
+
id: cols[0],
|
|
64
|
+
title: cols[1] || '',
|
|
65
|
+
updatedAt: cols[2] || '',
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
return sessions;
|
|
71
|
+
}
|
|
72
|
+
/** When no sessionId and not newSession, resolve latest chat via agent ls then run with --resume. */
|
|
73
|
+
async execute(prompt, options) {
|
|
74
|
+
if (!config_1.config.allowedCodeTools.includes(this.name)) {
|
|
75
|
+
return {
|
|
76
|
+
tool: this.name,
|
|
77
|
+
success: false,
|
|
78
|
+
output: '',
|
|
79
|
+
error: `${this.displayName} is not in allowed code tools`,
|
|
80
|
+
duration: 0,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
let runOpts = options;
|
|
84
|
+
if (!options.newSession && !options.sessionId) {
|
|
85
|
+
try {
|
|
86
|
+
const list = await this.listSessions();
|
|
87
|
+
if (list.length > 0) {
|
|
88
|
+
runOpts = { ...options, sessionId: list[0].id };
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
// keep runOpts unchanged (no resume)
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return super.execute(prompt, runOpts);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
exports.CursorCodeAdapter = CursorCodeAdapter;
|
|
99
|
+
//# sourceMappingURL=cursorcode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cursorcode.js","sourceRoot":"","sources":["../../../src/runtime/tools/cursorcode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BaseToolAdapter } from './base';
|
|
2
|
+
import type { RunOptions, ToolCapabilities, SessionInfo } from './base';
|
|
3
|
+
/**
|
|
4
|
+
* Adapter for Gemini CLI (Gemini Code) headless mode.
|
|
5
|
+
* - Execute: gemini -p "prompt" (headless)
|
|
6
|
+
* - Model: -m / --model
|
|
7
|
+
* - Session: --resume (latest) / --resume <index|UUID>
|
|
8
|
+
* - List sessions: gemini --list-sessions
|
|
9
|
+
* @see https://google-gemini.github.io/gemini-cli/docs/cli/headless.html
|
|
10
|
+
* @see https://geminicli.com/docs/cli/session-management/
|
|
11
|
+
*/
|
|
12
|
+
export declare class GeminiCodeAdapter extends BaseToolAdapter {
|
|
13
|
+
readonly name = "geminicode";
|
|
14
|
+
readonly commandName = "gemini";
|
|
15
|
+
readonly displayName = "Gemini Code";
|
|
16
|
+
readonly capabilities: ToolCapabilities;
|
|
17
|
+
buildCommand(prompt: string, options: RunOptions): string;
|
|
18
|
+
listSessions(): Promise<SessionInfo[]>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=geminicode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geminicode.d.ts","sourceRoot":"","sources":["../../../src/runtime/tools/geminicode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAExE;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,SAAQ,eAAe;IACpD,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,WAAW,YAAY;IAChC,QAAQ,CAAC,WAAW,iBAAiB;IACrC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAQrC;IAEF,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM;IAgBnD,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;CAoB7C"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GeminiCodeAdapter = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
/**
|
|
6
|
+
* Adapter for Gemini CLI (Gemini Code) headless mode.
|
|
7
|
+
* - Execute: gemini -p "prompt" (headless)
|
|
8
|
+
* - Model: -m / --model
|
|
9
|
+
* - Session: --resume (latest) / --resume <index|UUID>
|
|
10
|
+
* - List sessions: gemini --list-sessions
|
|
11
|
+
* @see https://google-gemini.github.io/gemini-cli/docs/cli/headless.html
|
|
12
|
+
* @see https://geminicli.com/docs/cli/session-management/
|
|
13
|
+
*/
|
|
14
|
+
class GeminiCodeAdapter extends base_1.BaseToolAdapter {
|
|
15
|
+
constructor() {
|
|
16
|
+
super(...arguments);
|
|
17
|
+
this.name = 'geminicode';
|
|
18
|
+
this.commandName = 'gemini';
|
|
19
|
+
this.displayName = 'Gemini Code';
|
|
20
|
+
this.capabilities = {
|
|
21
|
+
session: true,
|
|
22
|
+
model: true,
|
|
23
|
+
agent: false,
|
|
24
|
+
compact: false,
|
|
25
|
+
listModels: false,
|
|
26
|
+
listSessions: true,
|
|
27
|
+
listAgents: false,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
buildCommand(prompt, options) {
|
|
31
|
+
const parts = [this.getExecutable(), '-p', `"${this.escapePrompt(prompt)}"`];
|
|
32
|
+
if (options.model)
|
|
33
|
+
parts.push('-m', options.model);
|
|
34
|
+
if (!options.newSession) {
|
|
35
|
+
if (options.sessionId) {
|
|
36
|
+
parts.push('--resume', options.sessionId);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
parts.push('--resume'); // latest session
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return parts.join(' ');
|
|
43
|
+
}
|
|
44
|
+
async listSessions() {
|
|
45
|
+
const output = await this.runHelper(`${this.getExecutable()} --list-sessions`);
|
|
46
|
+
if (!output)
|
|
47
|
+
return [];
|
|
48
|
+
// "Available sessions for this project (3):\n1. Fix bug in auth (2 days ago) [a1b2c3d4]\n..."
|
|
49
|
+
const lines = output.split('\n').filter(l => l.trim());
|
|
50
|
+
const sessions = [];
|
|
51
|
+
for (const line of lines) {
|
|
52
|
+
const match = line.match(/^\s*(\d+)\.\s+(.+?)\s+\(([^)]+)\)\s*(?:\[([^\]]+)\])?/);
|
|
53
|
+
if (match) {
|
|
54
|
+
sessions.push({
|
|
55
|
+
id: match[1],
|
|
56
|
+
title: match[2].trim(),
|
|
57
|
+
updatedAt: match[3].trim(),
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return sessions;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
exports.GeminiCodeAdapter = GeminiCodeAdapter;
|
|
65
|
+
//# sourceMappingURL=geminicode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geminicode.js","sourceRoot":"","sources":["../../../src/runtime/tools/geminicode.ts"],"names":[],"mappings":";;;AAAA,iCAAyC;AAGzC;;;;;;;;GAQG;AACH,MAAa,iBAAkB,SAAQ,sBAAe;IAAtD;;QACW,SAAI,GAAG,YAAY,CAAC;QACpB,gBAAW,GAAG,QAAQ,CAAC;QACvB,gBAAW,GAAG,aAAa,CAAC;QAC5B,iBAAY,GAAqB;YACxC,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;SAClB,CAAC;IAsCJ,CAAC;IApCC,YAAY,CAAC,MAAc,EAAE,OAAmB;QAC9C,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE7E,IAAI,OAAO,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAEnD,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACxB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB;YAC3C,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;QAC/E,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAEvB,8FAA8F;QAC9F,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAkB,EAAE,CAAC;QAEnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;YAClF,IAAI,KAAK,EAAE,CAAC;gBACV,QAAQ,CAAC,IAAI,CAAC;oBACZ,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;oBACZ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;oBACtB,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;iBAC3B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAlDD,8CAkDC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ToolAdapter } from './base';
|
|
2
|
+
/**
|
|
3
|
+
* Register all built-in tool adapters with the registry.
|
|
4
|
+
* Add new adapters here when extending the gateway.
|
|
5
|
+
*/
|
|
6
|
+
export declare function registerAll(registry: {
|
|
7
|
+
register(adapter: ToolAdapter): void;
|
|
8
|
+
}): void;
|
|
9
|
+
export type { ToolAdapter, ToolResult, RunOptions, SessionInfo, ToolCapabilities } from './base';
|
|
10
|
+
export { toolRegistry } from './registry';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAuB1C;;;GAGG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE;IAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAIpF;AAED,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toolRegistry = void 0;
|
|
4
|
+
exports.registerAll = registerAll;
|
|
5
|
+
const opencode_1 = require("./opencode");
|
|
6
|
+
const claudecode_1 = require("./claudecode");
|
|
7
|
+
const openaicodex_1 = require("./openaicodex");
|
|
8
|
+
const qwencode_1 = require("./qwencode");
|
|
9
|
+
const kimicode_1 = require("./kimicode");
|
|
10
|
+
const openclaw_1 = require("./openclaw");
|
|
11
|
+
const nanobot_1 = require("./nanobot");
|
|
12
|
+
const cursorcode_1 = require("./cursorcode");
|
|
13
|
+
const geminicode_1 = require("./geminicode");
|
|
14
|
+
const ALL_ADAPTERS = [
|
|
15
|
+
new opencode_1.OpenCodeAdapter(),
|
|
16
|
+
new claudecode_1.ClaudeCodeAdapter(),
|
|
17
|
+
new openaicodex_1.CodexAdapter(),
|
|
18
|
+
new qwencode_1.QwenCodeAdapter(),
|
|
19
|
+
new kimicode_1.KimiAdapter(),
|
|
20
|
+
new openclaw_1.OpenClawAdapter(),
|
|
21
|
+
new nanobot_1.NanobotAdapter(),
|
|
22
|
+
new cursorcode_1.CursorCodeAdapter(),
|
|
23
|
+
new geminicode_1.GeminiCodeAdapter(),
|
|
24
|
+
];
|
|
25
|
+
/**
|
|
26
|
+
* Register all built-in tool adapters with the registry.
|
|
27
|
+
* Add new adapters here when extending the gateway.
|
|
28
|
+
*/
|
|
29
|
+
function registerAll(registry) {
|
|
30
|
+
for (const adapter of ALL_ADAPTERS) {
|
|
31
|
+
registry.register(adapter);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
var registry_1 = require("./registry");
|
|
35
|
+
Object.defineProperty(exports, "toolRegistry", { enumerable: true, get: function () { return registry_1.toolRegistry; } });
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/tools/index.ts"],"names":[],"mappings":";;;AA2BA,kCAIC;AA9BD,yCAA6C;AAC7C,6CAAiD;AACjD,+CAA6C;AAC7C,yCAA6C;AAC7C,yCAAyC;AACzC,yCAA6C;AAC7C,uCAA2C;AAC3C,6CAAiD;AACjD,6CAAiD;AAEjD,MAAM,YAAY,GAAkB;IAClC,IAAI,0BAAe,EAAE;IACrB,IAAI,8BAAiB,EAAE;IACvB,IAAI,0BAAY,EAAE;IAClB,IAAI,0BAAe,EAAE;IACrB,IAAI,sBAAW,EAAE;IACjB,IAAI,0BAAe,EAAE;IACrB,IAAI,wBAAc,EAAE;IACpB,IAAI,8BAAiB,EAAE;IACvB,IAAI,8BAAiB,EAAE;CACxB,CAAC;AAEF;;;GAGG;AACH,SAAgB,WAAW,CAAC,QAAkD;IAC5E,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;QACnC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC;AAGD,uCAA0C;AAAjC,wGAAA,YAAY,OAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseToolAdapter } from './base';
|
|
2
|
+
import type { RunOptions, ToolCapabilities } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Adapter for Kimi CLI (kimiai-cli).
|
|
5
|
+
* Simple AI assistant, no session/model/agent management.
|
|
6
|
+
* - Execute: kimi ask "prompt"
|
|
7
|
+
* - Requires OpenRouter API key (kimi config set-key)
|
|
8
|
+
*/
|
|
9
|
+
export declare class KimiAdapter extends BaseToolAdapter {
|
|
10
|
+
readonly name = "kimi";
|
|
11
|
+
readonly commandName = "kimi";
|
|
12
|
+
readonly displayName = "Kimi";
|
|
13
|
+
readonly capabilities: ToolCapabilities;
|
|
14
|
+
buildCommand(prompt: string, _options: RunOptions): string;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=kimi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kimi.d.ts","sourceRoot":"","sources":["../../../src/runtime/tools/kimi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE5D;;;;;GAKG;AACH,qBAAa,WAAY,SAAQ,eAAe;IAC9C,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,WAAW,UAAU;IAC9B,QAAQ,CAAC,WAAW,UAAU;IAC9B,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAQrC;IAEF,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,MAAM;CAG3D"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KimiAdapter = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
/**
|
|
6
|
+
* Adapter for Kimi CLI (kimiai-cli).
|
|
7
|
+
* Simple AI assistant, no session/model/agent management.
|
|
8
|
+
* - Execute: kimi ask "prompt"
|
|
9
|
+
* - Requires OpenRouter API key (kimi config set-key)
|
|
10
|
+
*/
|
|
11
|
+
class KimiAdapter extends base_1.BaseToolAdapter {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.name = 'kimi';
|
|
15
|
+
this.commandName = 'kimi';
|
|
16
|
+
this.displayName = 'Kimi';
|
|
17
|
+
this.capabilities = {
|
|
18
|
+
session: false,
|
|
19
|
+
model: false,
|
|
20
|
+
agent: false,
|
|
21
|
+
compact: false,
|
|
22
|
+
listModels: false,
|
|
23
|
+
listSessions: false,
|
|
24
|
+
listAgents: false,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
buildCommand(prompt, _options) {
|
|
28
|
+
return `kimi ask "${this.escapePrompt(prompt)}"`;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.KimiAdapter = KimiAdapter;
|
|
32
|
+
//# sourceMappingURL=kimi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kimi.js","sourceRoot":"","sources":["../../../src/runtime/tools/kimi.ts"],"names":[],"mappings":";;;AAAA,iCAAyC;AAGzC;;;;;GAKG;AACH,MAAa,WAAY,SAAQ,sBAAe;IAAhD;;QACW,SAAI,GAAG,MAAM,CAAC;QACd,gBAAW,GAAG,MAAM,CAAC;QACrB,gBAAW,GAAG,MAAM,CAAC;QACrB,iBAAY,GAAqB;YACxC,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;SAClB,CAAC;IAKJ,CAAC;IAHC,YAAY,CAAC,MAAc,EAAE,QAAoB;QAC/C,OAAO,aAAa,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC;IACnD,CAAC;CACF;AAjBD,kCAiBC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseToolAdapter } from './base';
|
|
2
|
+
import type { RunOptions, ToolCapabilities } from './base';
|
|
3
|
+
/**
|
|
4
|
+
* Adapter for Kimi CLI (kimiai-cli or MoonshotAI kimi-cli).
|
|
5
|
+
* - Execute: kimi ask "prompt"
|
|
6
|
+
* - Session: --session <id> / --continue (continue last, MoonshotAI kimi-cli)
|
|
7
|
+
* - Requires OpenRouter API key for kimiai-cli (kimi config set-key)
|
|
8
|
+
*/
|
|
9
|
+
export declare class KimiAdapter extends BaseToolAdapter {
|
|
10
|
+
readonly name = "kimicode";
|
|
11
|
+
readonly commandName = "kimi";
|
|
12
|
+
readonly displayName = "Kimi";
|
|
13
|
+
readonly capabilities: ToolCapabilities;
|
|
14
|
+
buildCommand(prompt: string, options: RunOptions): string;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=kimicode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kimicode.d.ts","sourceRoot":"","sources":["../../../src/runtime/tools/kimicode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE3D;;;;;GAKG;AACH,qBAAa,WAAY,SAAQ,eAAe;IAC9C,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,WAAW,UAAU;IAC9B,QAAQ,CAAC,WAAW,UAAU;IAC9B,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAQrC;IAEF,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM;CAa1D"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KimiAdapter = void 0;
|
|
4
|
+
const base_1 = require("./base");
|
|
5
|
+
/**
|
|
6
|
+
* Adapter for Kimi CLI (kimiai-cli or MoonshotAI kimi-cli).
|
|
7
|
+
* - Execute: kimi ask "prompt"
|
|
8
|
+
* - Session: --session <id> / --continue (continue last, MoonshotAI kimi-cli)
|
|
9
|
+
* - Requires OpenRouter API key for kimiai-cli (kimi config set-key)
|
|
10
|
+
*/
|
|
11
|
+
class KimiAdapter extends base_1.BaseToolAdapter {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.name = 'kimicode';
|
|
15
|
+
this.commandName = 'kimi';
|
|
16
|
+
this.displayName = 'Kimi';
|
|
17
|
+
this.capabilities = {
|
|
18
|
+
session: true,
|
|
19
|
+
model: false,
|
|
20
|
+
agent: false,
|
|
21
|
+
compact: false,
|
|
22
|
+
listModels: false,
|
|
23
|
+
listSessions: false,
|
|
24
|
+
listAgents: false,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
buildCommand(prompt, options) {
|
|
28
|
+
const parts = [this.getExecutable(), 'ask'];
|
|
29
|
+
if (!options.newSession) {
|
|
30
|
+
if (options.sessionId) {
|
|
31
|
+
parts.push('--session', options.sessionId);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
parts.push('--continue'); // continue last session (MoonshotAI kimi-cli)
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// newSession: don't pass --session or --continue (start fresh)
|
|
38
|
+
parts.push(`"${this.escapePrompt(prompt)}"`);
|
|
39
|
+
return parts.join(' ');
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.KimiAdapter = KimiAdapter;
|
|
43
|
+
//# sourceMappingURL=kimicode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kimicode.js","sourceRoot":"","sources":["../../../src/runtime/tools/kimicode.ts"],"names":[],"mappings":";;;AAAA,iCAAyC;AAGzC;;;;;GAKG;AACH,MAAa,WAAY,SAAQ,sBAAe;IAAhD;;QACW,SAAI,GAAG,UAAU,CAAC;QAClB,gBAAW,GAAG,MAAM,CAAC;QACrB,gBAAW,GAAG,MAAM,CAAC;QACrB,iBAAY,GAAqB;YACxC,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;SAClB,CAAC;IAeJ,CAAC;IAbC,YAAY,CAAC,MAAc,EAAE,OAAmB;QAC9C,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACxB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,8CAA8C;YAC1E,CAAC;QACH,CAAC;QACD,+DAA+D;QAC/D,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;CACF;AA3BD,kCA2BC"}
|