tarsk 0.4.4 → 0.4.6
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/index.js +447375 -37
- package/package.json +2 -2
- package/dist/agent/agent.error-utils.d.ts +0 -14
- package/dist/agent/agent.error-utils.js +0 -52
- package/dist/agent/agent.event-transformer.d.ts +0 -55
- package/dist/agent/agent.event-transformer.js +0 -175
- package/dist/agent/agent.executor.d.ts +0 -26
- package/dist/agent/agent.executor.js +0 -286
- package/dist/agent/agent.model-resolver.d.ts +0 -22
- package/dist/agent/agent.model-resolver.js +0 -67
- package/dist/agent/agent.process-manager.d.ts +0 -57
- package/dist/agent/agent.process-manager.js +0 -262
- package/dist/agent/agent.processing-state-manager.d.ts +0 -74
- package/dist/agent/agent.processing-state-manager.js +0 -87
- package/dist/agent/agent.prompt-loader.d.ts +0 -16
- package/dist/agent/agent.prompt-loader.js +0 -227
- package/dist/agent/agent.subagent-executor.d.ts +0 -35
- package/dist/agent/agent.subagent-executor.js +0 -135
- package/dist/bun/index.d.ts +0 -2
- package/dist/bun/index.js +0 -165
- package/dist/cli.d.ts +0 -3
- package/dist/cli.js +0 -22
- package/dist/core/crypto.d.ts +0 -29
- package/dist/core/crypto.js +0 -166
- package/dist/core/dev-server-cache.d.ts +0 -46
- package/dist/core/dev-server-cache.js +0 -59
- package/dist/core/env-manager.d.ts +0 -3
- package/dist/core/env-manager.js +0 -60
- package/dist/core/error-responses.d.ts +0 -61
- package/dist/core/error-responses.js +0 -64
- package/dist/core/logger.d.ts +0 -10
- package/dist/core/logger.js +0 -47
- package/dist/core/paths.d.ts +0 -22
- package/dist/core/paths.js +0 -26
- package/dist/core/random-words.d.ts +0 -18
- package/dist/core/random-words.js +0 -135
- package/dist/core/response-builder.d.ts +0 -50
- package/dist/core/response-builder.js +0 -56
- package/dist/core/route-helpers.d.ts +0 -47
- package/dist/core/route-helpers.js +0 -54
- package/dist/core/run-command-detector.d.ts +0 -26
- package/dist/core/run-command-detector.js +0 -98
- package/dist/core/stream-helper.d.ts +0 -44
- package/dist/core/stream-helper.js +0 -50
- package/dist/core/utils.d.ts +0 -43
- package/dist/core/utils.js +0 -113
- package/dist/core/validation.d.ts +0 -10
- package/dist/core/validation.js +0 -20
- package/dist/database/database.d.ts +0 -40
- package/dist/database/database.encryption.d.ts +0 -33
- package/dist/database/database.encryption.js +0 -62
- package/dist/database/database.js +0 -480
- package/dist/database/database.state.d.ts +0 -52
- package/dist/database/database.state.js +0 -119
- package/dist/database/database.test-utils.d.ts +0 -22
- package/dist/database/database.test-utils.js +0 -39
- package/dist/database/database.types.d.ts +0 -3
- package/dist/database/database.types.js +0 -2
- package/dist/features/agents/agents.manager.d.ts +0 -24
- package/dist/features/agents/agents.manager.js +0 -200
- package/dist/features/ask-user/ask-user.routes.d.ts +0 -9
- package/dist/features/ask-user/ask-user.routes.js +0 -35
- package/dist/features/chat/chat-delete.route.d.ts +0 -15
- package/dist/features/chat/chat-delete.route.js +0 -36
- package/dist/features/chat/chat-post.route.d.ts +0 -11
- package/dist/features/chat/chat-post.route.js +0 -270
- package/dist/features/chat/chat-stop.route.d.ts +0 -21
- package/dist/features/chat/chat-stop.route.js +0 -22
- package/dist/features/chat/chat-subscribe.route.d.ts +0 -9
- package/dist/features/chat/chat-subscribe.route.js +0 -71
- package/dist/features/chat/chat.routes.d.ts +0 -22
- package/dist/features/chat/chat.routes.js +0 -29
- package/dist/features/conversations/conversations-delete.route.d.ts +0 -16
- package/dist/features/conversations/conversations-delete.route.js +0 -34
- package/dist/features/conversations/conversations-get-all.route.d.ts +0 -16
- package/dist/features/conversations/conversations-get-all.route.js +0 -39
- package/dist/features/conversations/conversations-get-by-id.route.d.ts +0 -16
- package/dist/features/conversations/conversations-get-by-id.route.js +0 -38
- package/dist/features/conversations/conversations-get-deleted.route.d.ts +0 -15
- package/dist/features/conversations/conversations-get-deleted.route.js +0 -34
- package/dist/features/conversations/conversations-get-messages.route.d.ts +0 -16
- package/dist/features/conversations/conversations-get-messages.route.js +0 -49
- package/dist/features/conversations/conversations.content.d.ts +0 -28
- package/dist/features/conversations/conversations.content.js +0 -142
- package/dist/features/conversations/conversations.database.d.ts +0 -108
- package/dist/features/conversations/conversations.database.js +0 -373
- package/dist/features/conversations/conversations.manager.d.ts +0 -130
- package/dist/features/conversations/conversations.manager.js +0 -162
- package/dist/features/conversations/conversations.routes.d.ts +0 -21
- package/dist/features/conversations/conversations.routes.js +0 -38
- package/dist/features/conversations/token-usage.route.d.ts +0 -41
- package/dist/features/conversations/token-usage.route.js +0 -419
- package/dist/features/git/git-commit.route.d.ts +0 -12
- package/dist/features/git/git-commit.route.js +0 -39
- package/dist/features/git/git-create-branch.route.d.ts +0 -28
- package/dist/features/git/git-create-branch.route.js +0 -119
- package/dist/features/git/git-create-pr.route.d.ts +0 -13
- package/dist/features/git/git-create-pr.route.js +0 -50
- package/dist/features/git/git-create-repo.route.d.ts +0 -14
- package/dist/features/git/git-create-repo.route.js +0 -108
- package/dist/features/git/git-diff.route.d.ts +0 -30
- package/dist/features/git/git-diff.route.js +0 -189
- package/dist/features/git/git-fetch.route.d.ts +0 -12
- package/dist/features/git/git-fetch.route.js +0 -31
- package/dist/features/git/git-generate-commit-message.route.d.ts +0 -12
- package/dist/features/git/git-generate-commit-message.route.js +0 -76
- package/dist/features/git/git-generate-pr-info.route.d.ts +0 -13
- package/dist/features/git/git-generate-pr-info.route.js +0 -147
- package/dist/features/git/git-github-status.route.d.ts +0 -16
- package/dist/features/git/git-github-status.route.js +0 -68
- package/dist/features/git/git-log.route.d.ts +0 -17
- package/dist/features/git/git-log.route.js +0 -33
- package/dist/features/git/git-pr-status.route.d.ts +0 -15
- package/dist/features/git/git-pr-status.route.js +0 -33
- package/dist/features/git/git-pull.route.d.ts +0 -12
- package/dist/features/git/git-pull.route.js +0 -35
- package/dist/features/git/git-push.route.d.ts +0 -12
- package/dist/features/git/git-push.route.js +0 -46
- package/dist/features/git/git-status-cache.database.d.ts +0 -7
- package/dist/features/git/git-status-cache.database.js +0 -53
- package/dist/features/git/git-status.route.d.ts +0 -15
- package/dist/features/git/git-status.route.js +0 -62
- package/dist/features/git/git-sync-branch.route.d.ts +0 -4
- package/dist/features/git/git-sync-branch.route.js +0 -208
- package/dist/features/git/git-unified-status.route.d.ts +0 -30
- package/dist/features/git/git-unified-status.route.js +0 -165
- package/dist/features/git/git-username.route.d.ts +0 -3
- package/dist/features/git/git-username.route.js +0 -24
- package/dist/features/git/git.manager.d.ts +0 -139
- package/dist/features/git/git.manager.js +0 -352
- package/dist/features/git/git.routes.d.ts +0 -4
- package/dist/features/git/git.routes.js +0 -116
- package/dist/features/git/git.utils.d.ts +0 -82
- package/dist/features/git/git.utils.js +0 -1040
- package/dist/features/mcp/mcp.config.d.ts +0 -27
- package/dist/features/mcp/mcp.config.js +0 -148
- package/dist/features/mcp/mcp.manager.d.ts +0 -61
- package/dist/features/mcp/mcp.manager.js +0 -254
- package/dist/features/mcp/mcp.popular.json +0 -103
- package/dist/features/mcp/mcp.routes.d.ts +0 -13
- package/dist/features/mcp/mcp.routes.js +0 -159
- package/dist/features/mcp/mcp.types.d.ts +0 -80
- package/dist/features/mcp/mcp.types.js +0 -8
- package/dist/features/metadata/metadata.manager.d.ts +0 -126
- package/dist/features/metadata/metadata.manager.js +0 -423
- package/dist/features/models/model-info-aihubmix.d.ts +0 -25
- package/dist/features/models/model-info-aihubmix.js +0 -117
- package/dist/features/models/model-info-openrouter.d.ts +0 -25
- package/dist/features/models/model-info-openrouter.js +0 -104
- package/dist/features/models/model-info.d.ts +0 -37
- package/dist/features/models/model-info.js +0 -39
- package/dist/features/models/models-catalog.d.ts +0 -49
- package/dist/features/models/models-catalog.js +0 -80
- package/dist/features/models/models-catalog.route.d.ts +0 -43
- package/dist/features/models/models-catalog.route.js +0 -15
- package/dist/features/models/models-get-available.route.d.ts +0 -36
- package/dist/features/models/models-get-available.route.js +0 -66
- package/dist/features/models/models-get-enabled.route.d.ts +0 -33
- package/dist/features/models/models-get-enabled.route.js +0 -45
- package/dist/features/models/models-get-model-info.route.d.ts +0 -31
- package/dist/features/models/models-get-model-info.route.js +0 -84
- package/dist/features/models/models-model-disable.route.d.ts +0 -15
- package/dist/features/models/models-model-disable.route.js +0 -20
- package/dist/features/models/models-model-enable.route.d.ts +0 -13
- package/dist/features/models/models-model-enable.route.js +0 -20
- package/dist/features/models/models-provider-refresh.route.d.ts +0 -17
- package/dist/features/models/models-provider-refresh.route.js +0 -20
- package/dist/features/models/models.manager.d.ts +0 -58
- package/dist/features/models/models.manager.js +0 -138
- package/dist/features/models/models.routes.d.ts +0 -18
- package/dist/features/models/models.routes.js +0 -83
- package/dist/features/models/open-router-models.d.ts +0 -38
- package/dist/features/models/open-router-models.js +0 -73
- package/dist/features/models/openai-models.d.ts +0 -63
- package/dist/features/models/openai-models.js +0 -150
- package/dist/features/onboarding/onboarding-get-git-check.route.d.ts +0 -11
- package/dist/features/onboarding/onboarding-get-git-check.route.js +0 -28
- package/dist/features/onboarding/onboarding-get-status.route.d.ts +0 -12
- package/dist/features/onboarding/onboarding-get-status.route.js +0 -15
- package/dist/features/onboarding/onboarding-post-complete.route.d.ts +0 -12
- package/dist/features/onboarding/onboarding-post-complete.route.js +0 -15
- package/dist/features/onboarding/onboarding-post-reset.route.d.ts +0 -12
- package/dist/features/onboarding/onboarding-post-reset.route.js +0 -15
- package/dist/features/onboarding/onboarding.routes.d.ts +0 -18
- package/dist/features/onboarding/onboarding.routes.js +0 -28
- package/dist/features/project-todos/project-todos.database.d.ts +0 -38
- package/dist/features/project-todos/project-todos.database.js +0 -91
- package/dist/features/project-todos/project-todos.routes.d.ts +0 -4
- package/dist/features/project-todos/project-todos.routes.js +0 -94
- package/dist/features/projects/projects-ai-files.route.d.ts +0 -148
- package/dist/features/projects/projects-ai-files.route.js +0 -425
- package/dist/features/projects/projects-commands.route.d.ts +0 -27
- package/dist/features/projects/projects-commands.route.js +0 -39
- package/dist/features/projects/projects-create.route.d.ts +0 -19
- package/dist/features/projects/projects-create.route.js +0 -37
- package/dist/features/projects/projects-delete.route.d.ts +0 -24
- package/dist/features/projects/projects-delete.route.js +0 -34
- package/dist/features/projects/projects-get.route.d.ts +0 -47
- package/dist/features/projects/projects-get.route.js +0 -36
- package/dist/features/projects/projects-list.route.d.ts +0 -58
- package/dist/features/projects/projects-list.route.js +0 -59
- package/dist/features/projects/projects-open-folder.route.d.ts +0 -10
- package/dist/features/projects/projects-open-folder.route.js +0 -11
- package/dist/features/projects/projects-open.route.d.ts +0 -26
- package/dist/features/projects/projects-open.route.js +0 -49
- package/dist/features/projects/projects-package-scripts.route.d.ts +0 -15
- package/dist/features/projects/projects-package-scripts.route.js +0 -96
- package/dist/features/projects/projects-run-command.route.d.ts +0 -8
- package/dist/features/projects/projects-run-command.route.js +0 -21
- package/dist/features/projects/projects-run.route.d.ts +0 -51
- package/dist/features/projects/projects-run.route.js +0 -74
- package/dist/features/projects/projects-update.route.d.ts +0 -24
- package/dist/features/projects/projects-update.route.js +0 -81
- package/dist/features/projects/projects.creator.d.ts +0 -33
- package/dist/features/projects/projects.creator.js +0 -555
- package/dist/features/projects/projects.database.d.ts +0 -61
- package/dist/features/projects/projects.database.js +0 -212
- package/dist/features/projects/projects.manager.d.ts +0 -291
- package/dist/features/projects/projects.manager.js +0 -426
- package/dist/features/projects/projects.open-with.d.ts +0 -27
- package/dist/features/projects/projects.open-with.js +0 -156
- package/dist/features/projects/projects.routes.d.ts +0 -20
- package/dist/features/projects/projects.routes.js +0 -255
- package/dist/features/projects/terminal-session-manager.d.ts +0 -55
- package/dist/features/projects/terminal-session-manager.js +0 -90
- package/dist/features/providers/provider-resolver.d.ts +0 -13
- package/dist/features/providers/provider-resolver.js +0 -22
- package/dist/features/providers/providers-get-credits.route.d.ts +0 -15
- package/dist/features/providers/providers-get-credits.route.js +0 -51
- package/dist/features/providers/providers-get.route.d.ts +0 -16
- package/dist/features/providers/providers-get.route.js +0 -32
- package/dist/features/providers/providers-open-external.route.d.ts +0 -15
- package/dist/features/providers/providers-open-external.route.js +0 -49
- package/dist/features/providers/providers-post-bulk-keys.route.d.ts +0 -14
- package/dist/features/providers/providers-post-bulk-keys.route.js +0 -31
- package/dist/features/providers/providers-post-keys.route.d.ts +0 -14
- package/dist/features/providers/providers-post-keys.route.js +0 -25
- package/dist/features/providers/providers.routes.d.ts +0 -19
- package/dist/features/providers/providers.routes.js +0 -31
- package/dist/features/rules/rules-post.route.d.ts +0 -43
- package/dist/features/rules/rules-post.route.js +0 -89
- package/dist/features/rules/rules.manager.d.ts +0 -36
- package/dist/features/rules/rules.manager.js +0 -203
- package/dist/features/rules/rules.routes.d.ts +0 -12
- package/dist/features/rules/rules.routes.js +0 -13
- package/dist/features/run/run-get-running.route.d.ts +0 -15
- package/dist/features/run/run-get-running.route.js +0 -21
- package/dist/features/run/run-post-start.route.d.ts +0 -8
- package/dist/features/run/run-post-start.route.js +0 -21
- package/dist/features/run/run-post-stop.route.d.ts +0 -15
- package/dist/features/run/run-post-stop.route.js +0 -24
- package/dist/features/run/run-post-suggest.route.d.ts +0 -15
- package/dist/features/run/run-post-suggest.route.js +0 -21
- package/dist/features/run/run-put-command.route.d.ts +0 -15
- package/dist/features/run/run-put-command.route.js +0 -24
- package/dist/features/run/run.routes.d.ts +0 -19
- package/dist/features/run/run.routes.js +0 -31
- package/dist/features/scaffold/index.d.ts +0 -7
- package/dist/features/scaffold/index.js +0 -5
- package/dist/features/scaffold/scaffold-get-templates.route.d.ts +0 -27
- package/dist/features/scaffold/scaffold-get-templates.route.js +0 -17
- package/dist/features/scaffold/scaffold-post.route.d.ts +0 -8
- package/dist/features/scaffold/scaffold-post.route.js +0 -30
- package/dist/features/scaffold/scaffold.routes.d.ts +0 -10
- package/dist/features/scaffold/scaffold.routes.js +0 -16
- package/dist/features/scaffold/scaffold.runner.d.ts +0 -48
- package/dist/features/scaffold/scaffold.runner.js +0 -475
- package/dist/features/scaffold/scaffold.types.d.ts +0 -26
- package/dist/features/scaffold/scaffold.types.js +0 -5
- package/dist/features/skills/skills.activation.d.ts +0 -31
- package/dist/features/skills/skills.activation.js +0 -155
- package/dist/features/skills/skills.manager.d.ts +0 -35
- package/dist/features/skills/skills.manager.js +0 -251
- package/dist/features/slash-commands/slash-commands-delete.route.d.ts +0 -23
- package/dist/features/slash-commands/slash-commands-delete.route.js +0 -36
- package/dist/features/slash-commands/slash-commands-get.route.d.ts +0 -53
- package/dist/features/slash-commands/slash-commands-get.route.js +0 -54
- package/dist/features/slash-commands/slash-commands-post.route.d.ts +0 -39
- package/dist/features/slash-commands/slash-commands-post.route.js +0 -70
- package/dist/features/slash-commands/slash-commands-put.route.d.ts +0 -23
- package/dist/features/slash-commands/slash-commands-put.route.js +0 -36
- package/dist/features/slash-commands/slash-commands.manager.d.ts +0 -46
- package/dist/features/slash-commands/slash-commands.manager.js +0 -265
- package/dist/features/slash-commands/slash-commands.routes.d.ts +0 -13
- package/dist/features/slash-commands/slash-commands.routes.js +0 -20
- package/dist/features/threads/threads-ai-files.route.d.ts +0 -153
- package/dist/features/threads/threads-ai-files.route.js +0 -287
- package/dist/features/threads/threads-conversation-folder-path.route.d.ts +0 -14
- package/dist/features/threads/threads-conversation-folder-path.route.js +0 -23
- package/dist/features/threads/threads-create.route.d.ts +0 -22
- package/dist/features/threads/threads-create.route.js +0 -60
- package/dist/features/threads/threads-delete.route.d.ts +0 -25
- package/dist/features/threads/threads-delete.route.js +0 -35
- package/dist/features/threads/threads-files.route.d.ts +0 -15
- package/dist/features/threads/threads-files.route.js +0 -20
- package/dist/features/threads/threads-fix-comments.route.d.ts +0 -26
- package/dist/features/threads/threads-fix-comments.route.js +0 -45
- package/dist/features/threads/threads-get.route.d.ts +0 -30
- package/dist/features/threads/threads-get.route.js +0 -38
- package/dist/features/threads/threads-list.route.d.ts +0 -56
- package/dist/features/threads/threads-list.route.js +0 -58
- package/dist/features/threads/threads-messages.route.d.ts +0 -28
- package/dist/features/threads/threads-messages.route.js +0 -110
- package/dist/features/threads/threads-open.route.d.ts +0 -26
- package/dist/features/threads/threads-open.route.js +0 -62
- package/dist/features/threads/threads-select.route.d.ts +0 -25
- package/dist/features/threads/threads-select.route.js +0 -35
- package/dist/features/threads/threads-update.route.d.ts +0 -15
- package/dist/features/threads/threads-update.route.js +0 -30
- package/dist/features/threads/threads.database.d.ts +0 -68
- package/dist/features/threads/threads.database.js +0 -215
- package/dist/features/threads/threads.manager.d.ts +0 -204
- package/dist/features/threads/threads.manager.js +0 -505
- package/dist/features/threads/threads.routes.d.ts +0 -20
- package/dist/features/threads/threads.routes.js +0 -230
- package/dist/features/todos/todos.database.d.ts +0 -14
- package/dist/features/todos/todos.database.js +0 -31
- package/dist/features/updates/updates.routes.d.ts +0 -13
- package/dist/features/updates/updates.routes.js +0 -40
- package/dist/index.d.ts +0 -3
- package/dist/project-analyzer.d.ts +0 -26
- package/dist/project-analyzer.js +0 -307
- package/dist/server.d.ts +0 -12
- package/dist/server.js +0 -142
- package/dist/tools/agent-tool.d.ts +0 -49
- package/dist/tools/agent-tool.js +0 -131
- package/dist/tools/ask-user.d.ts +0 -25
- package/dist/tools/ask-user.js +0 -74
- package/dist/tools/ast-grep.d.ts +0 -28
- package/dist/tools/ast-grep.js +0 -273
- package/dist/tools/bash.d.ts +0 -33
- package/dist/tools/bash.js +0 -186
- package/dist/tools/edit-diff.d.ts +0 -24
- package/dist/tools/edit-diff.js +0 -136
- package/dist/tools/edit.d.ts +0 -28
- package/dist/tools/edit.js +0 -78
- package/dist/tools/find.d.ts +0 -31
- package/dist/tools/find.js +0 -117
- package/dist/tools/grep.d.ts +0 -37
- package/dist/tools/grep.js +0 -231
- package/dist/tools/index.d.ts +0 -93
- package/dist/tools/index.js +0 -110
- package/dist/tools/ls.d.ts +0 -31
- package/dist/tools/ls.js +0 -108
- package/dist/tools/mcp-tools.d.ts +0 -31
- package/dist/tools/mcp-tools.js +0 -59
- package/dist/tools/path-utils.d.ts +0 -14
- package/dist/tools/path-utils.js +0 -87
- package/dist/tools/read.d.ts +0 -27
- package/dist/tools/read.js +0 -86
- package/dist/tools/resolve-bin.d.ts +0 -5
- package/dist/tools/resolve-bin.js +0 -28
- package/dist/tools/shell.d.ts +0 -7
- package/dist/tools/shell.js +0 -143
- package/dist/tools/skill-reference-tool.d.ts +0 -30
- package/dist/tools/skill-reference-tool.js +0 -171
- package/dist/tools/skill-tool.d.ts +0 -33
- package/dist/tools/skill-tool.js +0 -213
- package/dist/tools/todo.d.ts +0 -20
- package/dist/tools/todo.js +0 -168
- package/dist/tools/tool-helpers.d.ts +0 -78
- package/dist/tools/tool-helpers.js +0 -109
- package/dist/tools/truncate.d.ts +0 -31
- package/dist/tools/truncate.js +0 -164
- package/dist/tools/write.d.ts +0 -21
- package/dist/tools/write.js +0 -65
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/providers/keys
|
|
3
|
-
* Save a provider API key
|
|
4
|
-
*/
|
|
5
|
-
import type { Context } from "hono";
|
|
6
|
-
import type { MetadataManager } from "../metadata/metadata.manager.js";
|
|
7
|
-
export declare function postProviderKeys(c: Context, metadataManager: MetadataManager): Promise<(Response & import("hono").TypedResponse<{
|
|
8
|
-
error: string;
|
|
9
|
-
}, 400, "json">) | (Response & import("hono").TypedResponse<{
|
|
10
|
-
success: true;
|
|
11
|
-
}, import("hono/utils/http-status").ContentfulStatusCode, "json">) | (Response & import("hono").TypedResponse<{
|
|
12
|
-
error: string;
|
|
13
|
-
}, 500, "json">)>;
|
|
14
|
-
//# sourceMappingURL=providers-post-keys.route.d.ts.map
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/providers/keys
|
|
3
|
-
* Save a provider API key
|
|
4
|
-
*/
|
|
5
|
-
import { updateEnvFile } from "../../core/env-manager.js";
|
|
6
|
-
import { resolveProviderKeyName } from "./provider-resolver.js";
|
|
7
|
-
export async function postProviderKeys(c, metadataManager) {
|
|
8
|
-
try {
|
|
9
|
-
const { providerName, apiKey } = await c.req.json();
|
|
10
|
-
if (!providerName) {
|
|
11
|
-
return c.json({ error: "providerName is required" }, 400);
|
|
12
|
-
}
|
|
13
|
-
await metadataManager.saveProviderKey(providerName, apiKey);
|
|
14
|
-
// Also update .env if provider has a keyName (from catalog or hardcoded)
|
|
15
|
-
const keyName = await resolveProviderKeyName(providerName);
|
|
16
|
-
if (keyName) {
|
|
17
|
-
await updateEnvFile({ [keyName]: apiKey });
|
|
18
|
-
}
|
|
19
|
-
return c.json({ success: true });
|
|
20
|
-
}
|
|
21
|
-
catch (error) {
|
|
22
|
-
return c.json({ error: `Failed to save provider key: ${String(error)}` }, 500);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=providers-post-keys.route.js.map
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Provider routes for the REST API
|
|
3
|
-
*
|
|
4
|
-
* Handles all provider-related operations:
|
|
5
|
-
* - GET /api/providers - List all built-in providers
|
|
6
|
-
* - POST /api/providers/keys - Save a provider API key
|
|
7
|
-
* - POST /api/providers/bulk-keys - Save all provider API keys at once
|
|
8
|
-
* - GET /api/providers/:name/credits - Get current balance for a provider
|
|
9
|
-
* - POST /api/providers/open-external - Open an external URL
|
|
10
|
-
*/
|
|
11
|
-
import { Hono } from "hono";
|
|
12
|
-
import type { MetadataManager } from "../metadata/metadata.manager.js";
|
|
13
|
-
/**
|
|
14
|
-
* Creates provider routes
|
|
15
|
-
* @param metadataManager - Manager for metadata persistence
|
|
16
|
-
* @returns Hono router with provider routes
|
|
17
|
-
*/
|
|
18
|
-
export declare function createProviderRoutes(metadataManager: MetadataManager): Hono;
|
|
19
|
-
//# sourceMappingURL=providers.routes.d.ts.map
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Provider routes for the REST API
|
|
3
|
-
*
|
|
4
|
-
* Handles all provider-related operations:
|
|
5
|
-
* - GET /api/providers - List all built-in providers
|
|
6
|
-
* - POST /api/providers/keys - Save a provider API key
|
|
7
|
-
* - POST /api/providers/bulk-keys - Save all provider API keys at once
|
|
8
|
-
* - GET /api/providers/:name/credits - Get current balance for a provider
|
|
9
|
-
* - POST /api/providers/open-external - Open an external URL
|
|
10
|
-
*/
|
|
11
|
-
import { Hono } from "hono";
|
|
12
|
-
import { getProviders } from "./providers-get.route.js";
|
|
13
|
-
import { postProviderKeys } from "./providers-post-keys.route.js";
|
|
14
|
-
import { postProviderBulkKeys } from "./providers-post-bulk-keys.route.js";
|
|
15
|
-
import { getProviderCredits } from "./providers-get-credits.route.js";
|
|
16
|
-
import { openExternalUrl } from "./providers-open-external.route.js";
|
|
17
|
-
/**
|
|
18
|
-
* Creates provider routes
|
|
19
|
-
* @param metadataManager - Manager for metadata persistence
|
|
20
|
-
* @returns Hono router with provider routes
|
|
21
|
-
*/
|
|
22
|
-
export function createProviderRoutes(metadataManager) {
|
|
23
|
-
const router = new Hono();
|
|
24
|
-
router.get("/", (c) => getProviders(c, metadataManager));
|
|
25
|
-
router.post("/keys", (c) => postProviderKeys(c, metadataManager));
|
|
26
|
-
router.post("/bulk-keys", (c) => postProviderBulkKeys(c, metadataManager));
|
|
27
|
-
router.get("/:name/credits", (c) => getProviderCredits(c, metadataManager));
|
|
28
|
-
router.post("/open-external", (c) => openExternalUrl(c));
|
|
29
|
-
return router;
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=providers.routes.js.map
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/rules
|
|
3
|
-
* Create a new rule
|
|
4
|
-
* Body: { projectId, name, description, alwaysApply, scope }
|
|
5
|
-
*/
|
|
6
|
-
import type { Context } from "hono";
|
|
7
|
-
import type { ProjectManager } from "../projects/projects.manager.js";
|
|
8
|
-
export declare function createRule(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
|
|
9
|
-
error: {
|
|
10
|
-
code: string;
|
|
11
|
-
message: string;
|
|
12
|
-
timestamp: string;
|
|
13
|
-
};
|
|
14
|
-
}, 400, "json">) | (Response & import("hono").TypedResponse<{
|
|
15
|
-
error: {
|
|
16
|
-
code: string;
|
|
17
|
-
message: string;
|
|
18
|
-
timestamp: string;
|
|
19
|
-
};
|
|
20
|
-
}, 501, "json">) | (Response & import("hono").TypedResponse<{
|
|
21
|
-
error: {
|
|
22
|
-
code: string;
|
|
23
|
-
message: string;
|
|
24
|
-
timestamp: string;
|
|
25
|
-
};
|
|
26
|
-
}, 404, "json">) | (Response & import("hono").TypedResponse<{
|
|
27
|
-
success: true;
|
|
28
|
-
rule: {
|
|
29
|
-
name: any;
|
|
30
|
-
path: string;
|
|
31
|
-
alwaysApply: any;
|
|
32
|
-
scope: any;
|
|
33
|
-
description: any;
|
|
34
|
-
};
|
|
35
|
-
}, 201, "json">) | (Response & import("hono").TypedResponse<{
|
|
36
|
-
error: {
|
|
37
|
-
code: string;
|
|
38
|
-
message: string;
|
|
39
|
-
details: import("hono/utils/types").JSONValue;
|
|
40
|
-
timestamp: string;
|
|
41
|
-
};
|
|
42
|
-
}, 500, "json">)>;
|
|
43
|
-
//# sourceMappingURL=rules-post.route.d.ts.map
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/rules
|
|
3
|
-
* Create a new rule
|
|
4
|
-
* Body: { projectId, name, description, alwaysApply, scope }
|
|
5
|
-
*/
|
|
6
|
-
import { promises as fs } from "fs";
|
|
7
|
-
import path from "path";
|
|
8
|
-
export async function createRule(c, projectManager) {
|
|
9
|
-
try {
|
|
10
|
-
const body = await c.req.json();
|
|
11
|
-
const { projectId, name, description, alwaysApply, scope } = body;
|
|
12
|
-
if (!projectId || !name || !description) {
|
|
13
|
-
return c.json({
|
|
14
|
-
error: {
|
|
15
|
-
code: "MISSING_FIELDS",
|
|
16
|
-
message: "projectId, name, and description are required",
|
|
17
|
-
timestamp: new Date().toISOString(),
|
|
18
|
-
},
|
|
19
|
-
}, 400);
|
|
20
|
-
}
|
|
21
|
-
if (scope !== "local" && scope !== "global") {
|
|
22
|
-
return c.json({
|
|
23
|
-
error: {
|
|
24
|
-
code: "INVALID_SCOPE",
|
|
25
|
-
message: 'scope must be either "local" or "global"',
|
|
26
|
-
timestamp: new Date().toISOString(),
|
|
27
|
-
},
|
|
28
|
-
}, 400);
|
|
29
|
-
}
|
|
30
|
-
// For now, only support local scope
|
|
31
|
-
if (scope === "global") {
|
|
32
|
-
return c.json({
|
|
33
|
-
error: {
|
|
34
|
-
code: "NOT_IMPLEMENTED",
|
|
35
|
-
message: "Global scope is not yet implemented",
|
|
36
|
-
timestamp: new Date().toISOString(),
|
|
37
|
-
},
|
|
38
|
-
}, 501);
|
|
39
|
-
}
|
|
40
|
-
// Get project information to find repository path
|
|
41
|
-
const project = await projectManager.getProject(projectId);
|
|
42
|
-
if (!project) {
|
|
43
|
-
return c.json({
|
|
44
|
-
error: {
|
|
45
|
-
code: "PROJECT_NOT_FOUND",
|
|
46
|
-
message: `Project not found: ${projectId}`,
|
|
47
|
-
timestamp: new Date().toISOString(),
|
|
48
|
-
},
|
|
49
|
-
}, 404);
|
|
50
|
-
}
|
|
51
|
-
// Use the project's repository path
|
|
52
|
-
const projectPath = project.path;
|
|
53
|
-
// Create .agents/rules directory if it doesn't exist
|
|
54
|
-
const rulesDir = path.join(projectPath, ".agents", "rules");
|
|
55
|
-
await fs.mkdir(rulesDir, { recursive: true });
|
|
56
|
-
// Create rule file content with front matter
|
|
57
|
-
const ruleContent = `---
|
|
58
|
-
description: ${description.replace(/"/g, '\\"')}
|
|
59
|
-
alwaysApply: ${alwaysApply}
|
|
60
|
-
---
|
|
61
|
-
|
|
62
|
-
Describe your rules here as markdown which will be used when Tarsk sees is prompted with a request that is related to the description of this rule.`;
|
|
63
|
-
// Write rule file
|
|
64
|
-
const ruleFilePath = path.join(rulesDir, `${name}.md`);
|
|
65
|
-
await fs.writeFile(ruleFilePath, ruleContent, "utf-8");
|
|
66
|
-
return c.json({
|
|
67
|
-
success: true,
|
|
68
|
-
rule: {
|
|
69
|
-
name,
|
|
70
|
-
path: `.agents/rules/${name}.md`,
|
|
71
|
-
alwaysApply,
|
|
72
|
-
scope,
|
|
73
|
-
description,
|
|
74
|
-
},
|
|
75
|
-
}, 201);
|
|
76
|
-
}
|
|
77
|
-
catch (error) {
|
|
78
|
-
console.error("Failed to create rule:", error);
|
|
79
|
-
return c.json({
|
|
80
|
-
error: {
|
|
81
|
-
code: "CREATE_FAILED",
|
|
82
|
-
message: error instanceof Error ? error.message : "Failed to create rule",
|
|
83
|
-
details: error,
|
|
84
|
-
timestamp: new Date().toISOString(),
|
|
85
|
-
},
|
|
86
|
-
}, 500);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
//# sourceMappingURL=rules-post.route.js.map
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Rule Manager
|
|
3
|
-
*
|
|
4
|
-
* Loads and manages agent rules from .md/.mdc files with frontmatter.
|
|
5
|
-
* Rules can be stored in:
|
|
6
|
-
* - Project-specific: ./.agents/rules/ (relative to thread path)
|
|
7
|
-
* - Global: ~/.agents/rules/
|
|
8
|
-
*
|
|
9
|
-
* Rules with alwaysApply: true are loaded in full into the context.
|
|
10
|
-
* Rules with alwaysApply: false or missing are loaded as references.
|
|
11
|
-
*/
|
|
12
|
-
import type { Rule } from "@tarsk/shared";
|
|
13
|
-
/**
|
|
14
|
-
* RuleManager handles loading and managing agent rules
|
|
15
|
-
*/
|
|
16
|
-
export declare class RuleManager {
|
|
17
|
-
/**
|
|
18
|
-
* Load all available rules for a given thread
|
|
19
|
-
* Project rules override global ones with the same name
|
|
20
|
-
*/
|
|
21
|
-
loadRules(threadPath: string): Promise<Rule[]>;
|
|
22
|
-
/**
|
|
23
|
-
* Load rules from a specific directory (recursive)
|
|
24
|
-
*/
|
|
25
|
-
private loadRulesFromDir;
|
|
26
|
-
/**
|
|
27
|
-
* Get a specific rule by name
|
|
28
|
-
*/
|
|
29
|
-
getRule(name: string, threadPath: string): Promise<Rule | null>;
|
|
30
|
-
/**
|
|
31
|
-
* Format rules for inclusion in system prompt
|
|
32
|
-
* Returns formatted string with alwaysApply rules in full and others as references
|
|
33
|
-
*/
|
|
34
|
-
formatRulesForPrompt(rules: Rule[]): string;
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=rules.manager.d.ts.map
|
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Rule Manager
|
|
3
|
-
*
|
|
4
|
-
* Loads and manages agent rules from .md/.mdc files with frontmatter.
|
|
5
|
-
* Rules can be stored in:
|
|
6
|
-
* - Project-specific: ./.agents/rules/ (relative to thread path)
|
|
7
|
-
* - Global: ~/.agents/rules/
|
|
8
|
-
*
|
|
9
|
-
* Rules with alwaysApply: true are loaded in full into the context.
|
|
10
|
-
* Rules with alwaysApply: false or missing are loaded as references.
|
|
11
|
-
*/
|
|
12
|
-
import { readdir, readFile } from "fs/promises";
|
|
13
|
-
import { join, relative } from "path";
|
|
14
|
-
import { existsSync } from "fs";
|
|
15
|
-
import { homedir } from "os";
|
|
16
|
-
/**
|
|
17
|
-
* Parse frontmatter from rule markdown content
|
|
18
|
-
* Returns { metadata, content } where content is the body after frontmatter
|
|
19
|
-
*/
|
|
20
|
-
function parseRuleFrontmatter(markdown) {
|
|
21
|
-
const lines = markdown.split("\n");
|
|
22
|
-
// Check if file starts with ---
|
|
23
|
-
if (lines[0]?.trim() !== "---") {
|
|
24
|
-
return {
|
|
25
|
-
metadata: {},
|
|
26
|
-
content: markdown.trim(),
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
// Find the closing ---
|
|
30
|
-
let endIndex = -1;
|
|
31
|
-
for (let i = 1; i < lines.length; i++) {
|
|
32
|
-
if (lines[i]?.trim() === "---") {
|
|
33
|
-
endIndex = i;
|
|
34
|
-
break;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
// No closing --- found
|
|
38
|
-
if (endIndex === -1) {
|
|
39
|
-
return {
|
|
40
|
-
metadata: {},
|
|
41
|
-
content: markdown.trim(),
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
// Parse frontmatter
|
|
45
|
-
const frontmatterLines = lines.slice(1, endIndex);
|
|
46
|
-
const metadata = {};
|
|
47
|
-
for (const line of frontmatterLines) {
|
|
48
|
-
const colonIndex = line.indexOf(":");
|
|
49
|
-
if (colonIndex === -1)
|
|
50
|
-
continue;
|
|
51
|
-
const key = line.slice(0, colonIndex).trim();
|
|
52
|
-
let value = line.slice(colonIndex + 1).trim();
|
|
53
|
-
// Remove surrounding quotes if present
|
|
54
|
-
if ((value.startsWith('"') && value.endsWith('"')) ||
|
|
55
|
-
(value.startsWith("'") && value.endsWith("'"))) {
|
|
56
|
-
value = value.slice(1, -1);
|
|
57
|
-
}
|
|
58
|
-
// Map YAML keys to TypeScript property names
|
|
59
|
-
if (key === "description") {
|
|
60
|
-
metadata.description = value;
|
|
61
|
-
}
|
|
62
|
-
else if (key === "alwaysApply") {
|
|
63
|
-
// Parse boolean value
|
|
64
|
-
metadata.alwaysApply = value.toLowerCase() === "true";
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
// Content is everything after the closing ---
|
|
68
|
-
const content = lines
|
|
69
|
-
.slice(endIndex + 1)
|
|
70
|
-
.join("\n")
|
|
71
|
-
.trim();
|
|
72
|
-
return { metadata, content };
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Get the global rules directory path
|
|
76
|
-
*/
|
|
77
|
-
function getGlobalRulesDir() {
|
|
78
|
-
return join(homedir(), ".agents", "rules");
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Get the project-specific rules directory path
|
|
82
|
-
*/
|
|
83
|
-
function getProjectRulesDir(threadPath) {
|
|
84
|
-
return join(threadPath, ".agents", "rules");
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* RuleManager handles loading and managing agent rules
|
|
88
|
-
*/
|
|
89
|
-
export class RuleManager {
|
|
90
|
-
/**
|
|
91
|
-
* Load all available rules for a given thread
|
|
92
|
-
* Project rules override global ones with the same name
|
|
93
|
-
*/
|
|
94
|
-
async loadRules(threadPath) {
|
|
95
|
-
const rules = new Map();
|
|
96
|
-
// Load global rules first
|
|
97
|
-
const globalDir = getGlobalRulesDir();
|
|
98
|
-
if (existsSync(globalDir)) {
|
|
99
|
-
const globalRules = await this.loadRulesFromDir(globalDir, threadPath, "global");
|
|
100
|
-
for (const rule of globalRules) {
|
|
101
|
-
rules.set(rule.name, rule);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
// Load project rules (override global)
|
|
105
|
-
const projectDir = getProjectRulesDir(threadPath);
|
|
106
|
-
if (existsSync(projectDir)) {
|
|
107
|
-
const projectRules = await this.loadRulesFromDir(projectDir, threadPath, "project");
|
|
108
|
-
for (const rule of projectRules) {
|
|
109
|
-
rules.set(rule.name, rule);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return Array.from(rules.values());
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* Load rules from a specific directory (recursive)
|
|
116
|
-
*/
|
|
117
|
-
async loadRulesFromDir(dir, threadPath, scope) {
|
|
118
|
-
const rules = [];
|
|
119
|
-
try {
|
|
120
|
-
const entries = await readdir(dir, { withFileTypes: true });
|
|
121
|
-
for (const entry of entries) {
|
|
122
|
-
const fullPath = join(dir, entry.name);
|
|
123
|
-
if (entry.isDirectory()) {
|
|
124
|
-
// Recursively load from subdirectories
|
|
125
|
-
const subRules = await this.loadRulesFromDir(fullPath, threadPath, scope);
|
|
126
|
-
rules.push(...subRules);
|
|
127
|
-
}
|
|
128
|
-
else if (entry.isFile() && (entry.name.endsWith(".md") || entry.name.endsWith(".mdc"))) {
|
|
129
|
-
try {
|
|
130
|
-
// Read and parse rule file
|
|
131
|
-
const fileContent = await readFile(fullPath, "utf-8");
|
|
132
|
-
const { metadata, content } = parseRuleFrontmatter(fileContent);
|
|
133
|
-
// Generate rule name from filename (without extension)
|
|
134
|
-
const ruleName = entry.name.replace(/\.(md|mdc)$/, "");
|
|
135
|
-
// Calculate relative path from thread root
|
|
136
|
-
const relativePath = relative(threadPath, fullPath);
|
|
137
|
-
// Create rule object
|
|
138
|
-
const rule = {
|
|
139
|
-
name: ruleName,
|
|
140
|
-
content,
|
|
141
|
-
metadata: {
|
|
142
|
-
description: metadata.description,
|
|
143
|
-
alwaysApply: metadata.alwaysApply ?? false, // Default to false
|
|
144
|
-
},
|
|
145
|
-
scope,
|
|
146
|
-
filePath: fullPath,
|
|
147
|
-
relativePath,
|
|
148
|
-
};
|
|
149
|
-
rules.push(rule);
|
|
150
|
-
}
|
|
151
|
-
catch (error) {
|
|
152
|
-
console.error(`Failed to load rule from ${entry.name}:`, error);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
catch (error) {
|
|
158
|
-
// Directory doesn't exist or can't be read - that's okay
|
|
159
|
-
console.error(`Failed to load rules from ${dir}:`, error);
|
|
160
|
-
}
|
|
161
|
-
return rules;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Get a specific rule by name
|
|
165
|
-
*/
|
|
166
|
-
async getRule(name, threadPath) {
|
|
167
|
-
const rules = await this.loadRules(threadPath);
|
|
168
|
-
return rules.find((rule) => rule.name === name) ?? null;
|
|
169
|
-
}
|
|
170
|
-
/**
|
|
171
|
-
* Format rules for inclusion in system prompt
|
|
172
|
-
* Returns formatted string with alwaysApply rules in full and others as references
|
|
173
|
-
*/
|
|
174
|
-
formatRulesForPrompt(rules) {
|
|
175
|
-
if (rules.length === 0) {
|
|
176
|
-
return "";
|
|
177
|
-
}
|
|
178
|
-
let rulesSection = "\n\n# Rules\n\n";
|
|
179
|
-
const alwaysApplyRules = rules.filter((rule) => rule.metadata.alwaysApply);
|
|
180
|
-
const conditionalRules = rules.filter((rule) => !rule.metadata.alwaysApply);
|
|
181
|
-
if (alwaysApplyRules.length > 0) {
|
|
182
|
-
rulesSection += "## Always-Applicable Rules\n\n";
|
|
183
|
-
for (const rule of alwaysApplyRules) {
|
|
184
|
-
rulesSection += `### ${rule.name}\n\n`;
|
|
185
|
-
if (rule.metadata.description) {
|
|
186
|
-
rulesSection += `**Description**: ${rule.metadata.description}\n\n`;
|
|
187
|
-
}
|
|
188
|
-
rulesSection += rule.content;
|
|
189
|
-
rulesSection += "\n\n---\n\n";
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
if (conditionalRules.length > 0) {
|
|
193
|
-
rulesSection += "## Conditional Rules\n\n";
|
|
194
|
-
for (const rule of conditionalRules) {
|
|
195
|
-
const description = rule.metadata.description ?? "various guidelines";
|
|
196
|
-
rulesSection += `- Follow rules from ${rule.relativePath} if the user asks about ${description}\n`;
|
|
197
|
-
}
|
|
198
|
-
rulesSection += "\n";
|
|
199
|
-
}
|
|
200
|
-
return rulesSection;
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
//# sourceMappingURL=rules.manager.js.map
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Rules API Routes
|
|
3
|
-
*
|
|
4
|
-
* Endpoints for managing and querying rules
|
|
5
|
-
*/
|
|
6
|
-
import { Hono } from "hono";
|
|
7
|
-
import type { ProjectManager } from "../projects/projects.manager.js";
|
|
8
|
-
/**
|
|
9
|
-
* Create rule routes
|
|
10
|
-
*/
|
|
11
|
-
export declare function createRuleRoutes(router: Hono, projectManager: ProjectManager): void;
|
|
12
|
-
//# sourceMappingURL=rules.routes.d.ts.map
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Rules API Routes
|
|
3
|
-
*
|
|
4
|
-
* Endpoints for managing and querying rules
|
|
5
|
-
*/
|
|
6
|
-
import { createRule } from "./rules-post.route.js";
|
|
7
|
-
/**
|
|
8
|
-
* Create rule routes
|
|
9
|
-
*/
|
|
10
|
-
export function createRuleRoutes(router, projectManager) {
|
|
11
|
-
router.post("/api/rules", (c) => createRule(c, projectManager));
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=rules.routes.js.map
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* GET /api/projects/:id/running
|
|
3
|
-
* Check if a process is running for a project
|
|
4
|
-
*/
|
|
5
|
-
import type { Context } from "hono";
|
|
6
|
-
import type { ProjectManager } from "../projects/projects.manager.js";
|
|
7
|
-
export declare function getRunning(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
|
|
8
|
-
error: {
|
|
9
|
-
code: string;
|
|
10
|
-
message: string;
|
|
11
|
-
details?: import("hono/utils/types").JSONValue | undefined;
|
|
12
|
-
timestamp: string;
|
|
13
|
-
};
|
|
14
|
-
}, any, "json">) | (Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">)>;
|
|
15
|
-
//# sourceMappingURL=run-get-running.route.d.ts.map
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* GET /api/projects/:id/running
|
|
3
|
-
* Check if a process is running for a project
|
|
4
|
-
*/
|
|
5
|
-
import { errorResponse, successResponse } from "../../core/route-helpers.js";
|
|
6
|
-
import { ErrorCodes } from "../../core/error-responses.js";
|
|
7
|
-
export async function getRunning(c, projectManager) {
|
|
8
|
-
try {
|
|
9
|
-
const projectId = c.req.param("id");
|
|
10
|
-
if (!projectId) {
|
|
11
|
-
return errorResponse(c, ErrorCodes.INVALID_REQUEST, "Project ID is required", 400);
|
|
12
|
-
}
|
|
13
|
-
const isRunning = await projectManager.isProcessRunning(projectId);
|
|
14
|
-
return successResponse(c, { isRunning });
|
|
15
|
-
}
|
|
16
|
-
catch (error) {
|
|
17
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
18
|
-
return errorResponse(c, ErrorCodes.CHECK_RUNNING_ERROR, "Failed to check running status", 500, errorMessage);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=run-get-running.route.js.map
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/projects/:id/run
|
|
3
|
-
* Starts the dev server process
|
|
4
|
-
*/
|
|
5
|
-
import type { Context } from "hono";
|
|
6
|
-
import type { ProjectManager } from "../projects/projects.manager.js";
|
|
7
|
-
export declare function postRunStart(c: Context, projectManager: ProjectManager): Promise<Response>;
|
|
8
|
-
//# sourceMappingURL=run-post-start.route.d.ts.map
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/projects/:id/run
|
|
3
|
-
* Starts the dev server process
|
|
4
|
-
*/
|
|
5
|
-
import { streamAsyncGenerator } from "../../core/stream-helper.js";
|
|
6
|
-
import { errorResponse } from "../../core/route-helpers.js";
|
|
7
|
-
import { ErrorCodes } from "../../core/error-responses.js";
|
|
8
|
-
export async function postRunStart(c, projectManager) {
|
|
9
|
-
try {
|
|
10
|
-
const projectId = c.req.param("id");
|
|
11
|
-
if (!projectId) {
|
|
12
|
-
return errorResponse(c, ErrorCodes.INVALID_REQUEST, "Project ID is required", 400);
|
|
13
|
-
}
|
|
14
|
-
return streamAsyncGenerator(c, projectManager.startRunningProcess(projectId));
|
|
15
|
-
}
|
|
16
|
-
catch (error) {
|
|
17
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
18
|
-
return errorResponse(c, ErrorCodes.RUN_PROCESS_ERROR, "Failed to start process", 500, errorMessage);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=run-post-start.route.js.map
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/projects/:id/stop
|
|
3
|
-
* Stops the dev server process
|
|
4
|
-
*/
|
|
5
|
-
import type { Context } from "hono";
|
|
6
|
-
import type { ProjectManager } from "../projects/projects.manager.js";
|
|
7
|
-
export declare function postRunStop(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
|
|
8
|
-
error: {
|
|
9
|
-
code: string;
|
|
10
|
-
message: string;
|
|
11
|
-
details?: import("hono/utils/types").JSONValue | undefined;
|
|
12
|
-
timestamp: string;
|
|
13
|
-
};
|
|
14
|
-
}, any, "json">) | (Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">)>;
|
|
15
|
-
//# sourceMappingURL=run-post-stop.route.d.ts.map
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/projects/:id/stop
|
|
3
|
-
* Stops the dev server process
|
|
4
|
-
*/
|
|
5
|
-
import { errorResponse, successResponse } from "../../core/route-helpers.js";
|
|
6
|
-
import { ErrorCodes } from "../../core/error-responses.js";
|
|
7
|
-
export async function postRunStop(c, projectManager) {
|
|
8
|
-
try {
|
|
9
|
-
const projectId = c.req.param("id");
|
|
10
|
-
if (!projectId) {
|
|
11
|
-
return errorResponse(c, ErrorCodes.INVALID_REQUEST, "Project ID is required", 400);
|
|
12
|
-
}
|
|
13
|
-
const stopped = await projectManager.stopRunningProcess(projectId);
|
|
14
|
-
if (!stopped) {
|
|
15
|
-
return errorResponse(c, ErrorCodes.NO_PROCESS_RUNNING, "No process running for this project", 400);
|
|
16
|
-
}
|
|
17
|
-
return successResponse(c, { success: true, message: "Process stopped" });
|
|
18
|
-
}
|
|
19
|
-
catch (error) {
|
|
20
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
21
|
-
return errorResponse(c, ErrorCodes.STOP_PROCESS_ERROR, "Failed to stop process", 500, errorMessage);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=run-post-stop.route.js.map
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/projects/:id/run-suggest
|
|
3
|
-
* Suggests a run command based on package.json
|
|
4
|
-
*/
|
|
5
|
-
import type { Context } from "hono";
|
|
6
|
-
import type { ProjectManager } from "../projects/projects.manager.js";
|
|
7
|
-
export declare function postRunSuggest(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
|
|
8
|
-
error: {
|
|
9
|
-
code: string;
|
|
10
|
-
message: string;
|
|
11
|
-
details?: import("hono/utils/types").JSONValue | undefined;
|
|
12
|
-
timestamp: string;
|
|
13
|
-
};
|
|
14
|
-
}, any, "json">) | (Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">)>;
|
|
15
|
-
//# sourceMappingURL=run-post-suggest.route.d.ts.map
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* POST /api/projects/:id/run-suggest
|
|
3
|
-
* Suggests a run command based on package.json
|
|
4
|
-
*/
|
|
5
|
-
import { errorResponse, successResponse } from "../../core/route-helpers.js";
|
|
6
|
-
import { ErrorCodes } from "../../core/error-responses.js";
|
|
7
|
-
export async function postRunSuggest(c, projectManager) {
|
|
8
|
-
try {
|
|
9
|
-
const projectId = c.req.param("id");
|
|
10
|
-
if (!projectId) {
|
|
11
|
-
return errorResponse(c, ErrorCodes.INVALID_REQUEST, "Project ID is required", 400);
|
|
12
|
-
}
|
|
13
|
-
const runCommand = await projectManager.suggestRunCommand(projectId);
|
|
14
|
-
return successResponse(c, { runCommand });
|
|
15
|
-
}
|
|
16
|
-
catch (error) {
|
|
17
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
18
|
-
return errorResponse(c, ErrorCodes.SUGGEST_RUN_COMMAND_ERROR, "Failed to suggest run command", 500, errorMessage);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=run-post-suggest.route.js.map
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PUT /api/projects/:id/run-command
|
|
3
|
-
* Update the run command for a project
|
|
4
|
-
*/
|
|
5
|
-
import type { Context } from "hono";
|
|
6
|
-
import type { ProjectManager } from "../projects/projects.manager.js";
|
|
7
|
-
export declare function putRunCommand(c: Context, projectManager: ProjectManager): Promise<(Response & import("hono").TypedResponse<{
|
|
8
|
-
error: {
|
|
9
|
-
code: string;
|
|
10
|
-
message: string;
|
|
11
|
-
details?: import("hono/utils/types").JSONValue | undefined;
|
|
12
|
-
timestamp: string;
|
|
13
|
-
};
|
|
14
|
-
}, any, "json">) | (Response & import("hono").TypedResponse<import("hono/utils/types").JSONValue, any, "json">)>;
|
|
15
|
-
//# sourceMappingURL=run-put-command.route.d.ts.map
|