@vikasitai/vikasit-code 2.0.7 → 2.0.9
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/package.json +19 -168
- package/AGENTS.md +0 -69
- package/BUN_SHELL_MIGRATION_PLAN.md +0 -136
- package/Dockerfile +0 -18
- package/README.md +0 -15
- package/bunfig.toml +0 -7
- package/drizzle.config.ts +0 -10
- package/git +0 -0
- package/migration/20260127222353_familiar_lady_ursula/migration.sql +0 -90
- package/migration/20260127222353_familiar_lady_ursula/snapshot.json +0 -796
- package/migration/20260211171708_add_project_commands/migration.sql +0 -1
- package/migration/20260211171708_add_project_commands/snapshot.json +0 -806
- package/migration/20260213144116_wakeful_the_professor/migration.sql +0 -11
- package/migration/20260213144116_wakeful_the_professor/snapshot.json +0 -897
- package/migration/20260225215848_workspace/migration.sql +0 -7
- package/migration/20260225215848_workspace/snapshot.json +0 -959
- package/migration/20260227213759_add_session_workspace_id/migration.sql +0 -2
- package/migration/20260227213759_add_session_workspace_id/snapshot.json +0 -983
- package/migration/20260228203230_blue_harpoon/migration.sql +0 -17
- package/migration/20260228203230_blue_harpoon/snapshot.json +0 -1102
- package/migration/20260303231226_add_workspace_fields/migration.sql +0 -5
- package/migration/20260303231226_add_workspace_fields/snapshot.json +0 -1013
- package/migration/20260309230000_move_org_to_state/migration.sql +0 -3
- package/migration/20260309230000_move_org_to_state/snapshot.json +0 -1156
- package/migration/20260312043431_session_message_cursor/migration.sql +0 -4
- package/migration/20260312043431_session_message_cursor/snapshot.json +0 -1168
- package/migration/20260323234822_events/migration.sql +0 -13
- package/migration/20260323234822_events/snapshot.json +0 -1271
- package/parsers-config.ts +0 -290
- package/script/build-all.sh +0 -40
- package/script/build-node.ts +0 -54
- package/script/build.ts +0 -281
- package/script/check-migrations.ts +0 -16
- package/script/fetch-models.ts +0 -101
- package/script/publish.ts +0 -184
- package/script/schema.ts +0 -63
- package/script/seed-e2e.ts +0 -75
- package/script/upgrade-opentui.ts +0 -64
- package/specs/claude-code-integration.md +0 -563
- package/specs/effect-migration.md +0 -291
- package/specs/tui-plugins.md +0 -410
- package/src/account/account.sql.ts +0 -39
- package/src/account/index.ts +0 -397
- package/src/account/repo.ts +0 -163
- package/src/account/schema.ts +0 -91
- package/src/acp/README.md +0 -174
- package/src/acp/agent.ts +0 -1743
- package/src/acp/session.ts +0 -116
- package/src/acp/types.ts +0 -24
- package/src/agent/agent-display.ts +0 -82
- package/src/agent/agent.ts +0 -475
- package/src/agent/extract-names.cjs +0 -42
- package/src/agent/generate.txt +0 -75
- package/src/agent/mailbox.ts +0 -124
- package/src/agent/orchestrator.ts +0 -170
- package/src/agent/prompt/code-reviewer.txt +0 -11
- package/src/agent/prompt/compaction.txt +0 -14
- package/src/agent/prompt/explore.txt +0 -18
- package/src/agent/prompt/general.txt +0 -17
- package/src/agent/prompt/summary.txt +0 -11
- package/src/agent/prompt/title.txt +0 -44
- package/src/agent/prompt/verification.txt +0 -11
- package/src/auth/index.ts +0 -109
- package/src/bun/index.ts +0 -129
- package/src/bun/registry.ts +0 -50
- package/src/bus/bus-event.ts +0 -40
- package/src/bus/global.ts +0 -10
- package/src/bus/index.ts +0 -184
- package/src/cli/bootstrap.ts +0 -17
- package/src/cli/cmd/account.ts +0 -257
- package/src/cli/cmd/acp.ts +0 -70
- package/src/cli/cmd/agent.ts +0 -245
- package/src/cli/cmd/auto-updater.ts +0 -71
- package/src/cli/cmd/cmd.ts +0 -7
- package/src/cli/cmd/db.ts +0 -119
- package/src/cli/cmd/debug/agent.ts +0 -167
- package/src/cli/cmd/debug/config.ts +0 -16
- package/src/cli/cmd/debug/file.ts +0 -97
- package/src/cli/cmd/debug/index.ts +0 -48
- package/src/cli/cmd/debug/lsp.ts +0 -53
- package/src/cli/cmd/debug/ripgrep.ts +0 -87
- package/src/cli/cmd/debug/scrap.ts +0 -16
- package/src/cli/cmd/debug/skill.ts +0 -16
- package/src/cli/cmd/debug/snapshot.ts +0 -52
- package/src/cli/cmd/export.ts +0 -89
- package/src/cli/cmd/generate.ts +0 -38
- package/src/cli/cmd/github.ts +0 -1646
- package/src/cli/cmd/import.ts +0 -207
- package/src/cli/cmd/mcp.ts +0 -754
- package/src/cli/cmd/models.ts +0 -78
- package/src/cli/cmd/plug.ts +0 -231
- package/src/cli/cmd/pr.ts +0 -127
- package/src/cli/cmd/providers.ts +0 -484
- package/src/cli/cmd/run.ts +0 -676
- package/src/cli/cmd/search.ts +0 -137
- package/src/cli/cmd/serve.ts +0 -24
- package/src/cli/cmd/session.ts +0 -159
- package/src/cli/cmd/stats.ts +0 -405
- package/src/cli/cmd/tui/app.tsx +0 -996
- package/src/cli/cmd/tui/attach.ts +0 -88
- package/src/cli/cmd/tui/component/border.tsx +0 -21
- package/src/cli/cmd/tui/component/dialog-agent.tsx +0 -31
- package/src/cli/cmd/tui/component/dialog-command.tsx +0 -171
- package/src/cli/cmd/tui/component/dialog-login.tsx +0 -156
- package/src/cli/cmd/tui/component/dialog-mcp.tsx +0 -86
- package/src/cli/cmd/tui/component/dialog-model.tsx +0 -179
- package/src/cli/cmd/tui/component/dialog-provider.tsx +0 -329
- package/src/cli/cmd/tui/component/dialog-session-list.tsx +0 -108
- package/src/cli/cmd/tui/component/dialog-session-rename.tsx +0 -31
- package/src/cli/cmd/tui/component/dialog-skill.tsx +0 -36
- package/src/cli/cmd/tui/component/dialog-stash.tsx +0 -87
- package/src/cli/cmd/tui/component/dialog-status.tsx +0 -168
- package/src/cli/cmd/tui/component/dialog-tag.tsx +0 -44
- package/src/cli/cmd/tui/component/dialog-theme-list.tsx +0 -50
- package/src/cli/cmd/tui/component/dialog-variant.tsx +0 -39
- package/src/cli/cmd/tui/component/dialog-workspace-list.tsx +0 -320
- package/src/cli/cmd/tui/component/error-component.tsx +0 -91
- package/src/cli/cmd/tui/component/login-gate.tsx +0 -125
- package/src/cli/cmd/tui/component/logo.tsx +0 -85
- package/src/cli/cmd/tui/component/plugin-route-missing.tsx +0 -14
- package/src/cli/cmd/tui/component/prompt/autocomplete.tsx +0 -667
- package/src/cli/cmd/tui/component/prompt/frecency.tsx +0 -90
- package/src/cli/cmd/tui/component/prompt/history.tsx +0 -108
- package/src/cli/cmd/tui/component/prompt/index.tsx +0 -1224
- package/src/cli/cmd/tui/component/prompt/part.ts +0 -16
- package/src/cli/cmd/tui/component/prompt/stash.tsx +0 -101
- package/src/cli/cmd/tui/component/spinner.tsx +0 -24
- package/src/cli/cmd/tui/component/startup-loading.tsx +0 -63
- package/src/cli/cmd/tui/component/status-bar.ts +0 -54
- package/src/cli/cmd/tui/component/textarea-keybindings.ts +0 -73
- package/src/cli/cmd/tui/component/todo-item.tsx +0 -32
- package/src/cli/cmd/tui/component/workspace/dialog-session-list.tsx +0 -151
- package/src/cli/cmd/tui/context/args.tsx +0 -15
- package/src/cli/cmd/tui/context/directory.ts +0 -13
- package/src/cli/cmd/tui/context/exit.tsx +0 -60
- package/src/cli/cmd/tui/context/helper.tsx +0 -25
- package/src/cli/cmd/tui/context/keybind.tsx +0 -105
- package/src/cli/cmd/tui/context/kv.tsx +0 -52
- package/src/cli/cmd/tui/context/local.tsx +0 -412
- package/src/cli/cmd/tui/context/plugin-keybinds.ts +0 -41
- package/src/cli/cmd/tui/context/prompt.tsx +0 -18
- package/src/cli/cmd/tui/context/route.tsx +0 -52
- package/src/cli/cmd/tui/context/sdk.tsx +0 -128
- package/src/cli/cmd/tui/context/sync.tsx +0 -504
- package/src/cli/cmd/tui/context/theme/aura.json +0 -69
- package/src/cli/cmd/tui/context/theme/ayu.json +0 -80
- package/src/cli/cmd/tui/context/theme/carbonfox.json +0 -248
- package/src/cli/cmd/tui/context/theme/catppuccin-frappe.json +0 -233
- package/src/cli/cmd/tui/context/theme/catppuccin-macchiato.json +0 -233
- package/src/cli/cmd/tui/context/theme/catppuccin.json +0 -112
- package/src/cli/cmd/tui/context/theme/cobalt2.json +0 -228
- package/src/cli/cmd/tui/context/theme/cursor.json +0 -249
- package/src/cli/cmd/tui/context/theme/dracula.json +0 -219
- package/src/cli/cmd/tui/context/theme/everforest.json +0 -241
- package/src/cli/cmd/tui/context/theme/flexoki.json +0 -237
- package/src/cli/cmd/tui/context/theme/github.json +0 -233
- package/src/cli/cmd/tui/context/theme/gruvbox.json +0 -242
- package/src/cli/cmd/tui/context/theme/kanagawa.json +0 -77
- package/src/cli/cmd/tui/context/theme/lucent-orng.json +0 -237
- package/src/cli/cmd/tui/context/theme/material.json +0 -235
- package/src/cli/cmd/tui/context/theme/matrix.json +0 -77
- package/src/cli/cmd/tui/context/theme/mercury.json +0 -252
- package/src/cli/cmd/tui/context/theme/monokai.json +0 -221
- package/src/cli/cmd/tui/context/theme/nightowl.json +0 -221
- package/src/cli/cmd/tui/context/theme/nord.json +0 -223
- package/src/cli/cmd/tui/context/theme/one-dark.json +0 -84
- package/src/cli/cmd/tui/context/theme/orng.json +0 -249
- package/src/cli/cmd/tui/context/theme/osaka-jade.json +0 -93
- package/src/cli/cmd/tui/context/theme/palenight.json +0 -222
- package/src/cli/cmd/tui/context/theme/rosepine.json +0 -234
- package/src/cli/cmd/tui/context/theme/solarized.json +0 -223
- package/src/cli/cmd/tui/context/theme/synthwave84.json +0 -226
- package/src/cli/cmd/tui/context/theme/tokyonight.json +0 -243
- package/src/cli/cmd/tui/context/theme/vercel.json +0 -245
- package/src/cli/cmd/tui/context/theme/vesper.json +0 -218
- package/src/cli/cmd/tui/context/theme/vikasit.json +0 -245
- package/src/cli/cmd/tui/context/theme/zenburn.json +0 -223
- package/src/cli/cmd/tui/context/theme.tsx +0 -1236
- package/src/cli/cmd/tui/context/tui-config.tsx +0 -9
- package/src/cli/cmd/tui/event.ts +0 -52
- package/src/cli/cmd/tui/feature-plugins/home/footer.tsx +0 -93
- package/src/cli/cmd/tui/feature-plugins/home/tips-view.tsx +0 -152
- package/src/cli/cmd/tui/feature-plugins/home/tips.tsx +0 -50
- package/src/cli/cmd/tui/feature-plugins/sidebar/context.tsx +0 -63
- package/src/cli/cmd/tui/feature-plugins/sidebar/files.tsx +0 -62
- package/src/cli/cmd/tui/feature-plugins/sidebar/footer.tsx +0 -99
- package/src/cli/cmd/tui/feature-plugins/sidebar/lsp.tsx +0 -66
- package/src/cli/cmd/tui/feature-plugins/sidebar/mcp.tsx +0 -96
- package/src/cli/cmd/tui/feature-plugins/sidebar/todo.tsx +0 -48
- package/src/cli/cmd/tui/feature-plugins/system/invite.tsx +0 -148
- package/src/cli/cmd/tui/feature-plugins/system/plugins.tsx +0 -270
- package/src/cli/cmd/tui/plugin/api.tsx +0 -420
- package/src/cli/cmd/tui/plugin/index.ts +0 -3
- package/src/cli/cmd/tui/plugin/internal.ts +0 -29
- package/src/cli/cmd/tui/plugin/runtime.ts +0 -998
- package/src/cli/cmd/tui/plugin/slots.tsx +0 -61
- package/src/cli/cmd/tui/routes/home.tsx +0 -84
- package/src/cli/cmd/tui/routes/session/dialog-fork-from-timeline.tsx +0 -65
- package/src/cli/cmd/tui/routes/session/dialog-message.tsx +0 -110
- package/src/cli/cmd/tui/routes/session/dialog-subagent.tsx +0 -26
- package/src/cli/cmd/tui/routes/session/dialog-timeline.tsx +0 -47
- package/src/cli/cmd/tui/routes/session/footer.tsx +0 -91
- package/src/cli/cmd/tui/routes/session/index.tsx +0 -2259
- package/src/cli/cmd/tui/routes/session/permission.tsx +0 -685
- package/src/cli/cmd/tui/routes/session/question.tsx +0 -467
- package/src/cli/cmd/tui/routes/session/sidebar.tsx +0 -68
- package/src/cli/cmd/tui/routes/session/subagent-footer.tsx +0 -124
- package/src/cli/cmd/tui/thread.ts +0 -232
- package/src/cli/cmd/tui/ui/dialog-alert.tsx +0 -59
- package/src/cli/cmd/tui/ui/dialog-confirm.tsx +0 -89
- package/src/cli/cmd/tui/ui/dialog-export-options.tsx +0 -208
- package/src/cli/cmd/tui/ui/dialog-help.tsx +0 -40
- package/src/cli/cmd/tui/ui/dialog-prompt.tsx +0 -106
- package/src/cli/cmd/tui/ui/dialog-select.tsx +0 -402
- package/src/cli/cmd/tui/ui/dialog.tsx +0 -192
- package/src/cli/cmd/tui/ui/link.tsx +0 -28
- package/src/cli/cmd/tui/ui/spinner.ts +0 -368
- package/src/cli/cmd/tui/ui/toast.tsx +0 -100
- package/src/cli/cmd/tui/util/clipboard.ts +0 -192
- package/src/cli/cmd/tui/util/editor.ts +0 -37
- package/src/cli/cmd/tui/util/selection.ts +0 -25
- package/src/cli/cmd/tui/util/signal.ts +0 -7
- package/src/cli/cmd/tui/util/terminal.ts +0 -114
- package/src/cli/cmd/tui/util/transcript.ts +0 -98
- package/src/cli/cmd/tui/win32.ts +0 -129
- package/src/cli/cmd/tui/worker.ts +0 -172
- package/src/cli/cmd/uninstall.ts +0 -353
- package/src/cli/cmd/upgrade.ts +0 -73
- package/src/cli/cmd/web.ts +0 -81
- package/src/cli/effect/prompt.ts +0 -25
- package/src/cli/error.ts +0 -46
- package/src/cli/logo.ts +0 -20
- package/src/cli/network.ts +0 -60
- package/src/cli/ui.ts +0 -116
- package/src/cli/upgrade.ts +0 -31
- package/src/command/index.ts +0 -251
- package/src/command/template/branch.txt +0 -1
- package/src/command/template/commit.txt +0 -7
- package/src/command/template/diff.txt +0 -1
- package/src/command/template/initialize.txt +0 -10
- package/src/command/template/memory.txt +0 -1
- package/src/command/template/review.txt +0 -101
- package/src/command/template/summary.txt +0 -1
- package/src/config/config.ts +0 -1619
- package/src/config/markdown.ts +0 -99
- package/src/config/migrate-tui-config.ts +0 -155
- package/src/config/paths.ts +0 -174
- package/src/config/tui-schema.ts +0 -36
- package/src/config/tui.ts +0 -222
- package/src/context/contextOptimizer.ts +0 -277
- package/src/control-plane/adaptors/index.ts +0 -20
- package/src/control-plane/adaptors/worktree.ts +0 -38
- package/src/control-plane/schema.ts +0 -17
- package/src/control-plane/sse.ts +0 -66
- package/src/control-plane/types.ts +0 -21
- package/src/control-plane/workspace.sql.ts +0 -17
- package/src/control-plane/workspace.ts +0 -154
- package/src/cost/index.ts +0 -173
- package/src/cost/schema.ts +0 -43
- package/src/cron/index.ts +0 -200
- package/src/effect/cross-spawn-spawner.ts +0 -479
- package/src/effect/instance-registry.ts +0 -12
- package/src/effect/instance-state.ts +0 -47
- package/src/effect/run-service.ts +0 -19
- package/src/effect/runner.ts +0 -216
- package/src/env/index.ts +0 -28
- package/src/file/ignore.ts +0 -82
- package/src/file/index.ts +0 -698
- package/src/file/protected.ts +0 -59
- package/src/file/ripgrep.ts +0 -376
- package/src/file/time.ts +0 -128
- package/src/file/watcher.ts +0 -171
- package/src/filesystem/index.ts +0 -226
- package/src/flag/flag.ts +0 -175
- package/src/format/formatter.ts +0 -396
- package/src/format/index.ts +0 -199
- package/src/global/index.ts +0 -54
- package/src/hook/index.ts +0 -132
- package/src/hook/schema.ts +0 -31
- package/src/id/id.ts +0 -85
- package/src/ide/index.ts +0 -74
- package/src/index.ts +0 -249
- package/src/installation/index.ts +0 -363
- package/src/lsp/client.ts +0 -252
- package/src/lsp/index.ts +0 -558
- package/src/lsp/language.ts +0 -120
- package/src/lsp/launch.ts +0 -21
- package/src/lsp/server.ts +0 -2093
- package/src/mcp/auth.ts +0 -181
- package/src/mcp/index.ts +0 -926
- package/src/mcp/oauth-callback.ts +0 -215
- package/src/mcp/oauth-provider.ts +0 -185
- package/src/memory/memory.ts +0 -140
- package/src/node.ts +0 -1
- package/src/patch/index.ts +0 -680
- package/src/permission/arity.ts +0 -163
- package/src/permission/auto-classify.ts +0 -114
- package/src/permission/evaluate.ts +0 -15
- package/src/permission/index.ts +0 -322
- package/src/permission/schema.ts +0 -17
- package/src/plugin/codex.ts +0 -596
- package/src/plugin/copilot.ts +0 -343
- package/src/plugin/index.ts +0 -322
- package/src/plugin/install.ts +0 -417
- package/src/plugin/loader.ts +0 -137
- package/src/plugin/meta.ts +0 -188
- package/src/plugin/shared.ts +0 -272
- package/src/project/bootstrap.ts +0 -31
- package/src/project/instance.ts +0 -167
- package/src/project/project.sql.ts +0 -16
- package/src/project/project.ts +0 -519
- package/src/project/schema.ts +0 -16
- package/src/project/state.ts +0 -70
- package/src/project/vcs.ts +0 -124
- package/src/provider/auth.ts +0 -252
- package/src/provider/error.ts +0 -197
- package/src/provider/github-models.ts +0 -53
- package/src/provider/models.ts +0 -139
- package/src/provider/provider.ts +0 -1650
- package/src/provider/schema.ts +0 -38
- package/src/provider/sdk/copilot/README.md +0 -5
- package/src/provider/sdk/copilot/chat/convert-to-openai-compatible-chat-messages.ts +0 -170
- package/src/provider/sdk/copilot/chat/get-response-metadata.ts +0 -15
- package/src/provider/sdk/copilot/chat/map-openai-compatible-finish-reason.ts +0 -19
- package/src/provider/sdk/copilot/chat/openai-compatible-api-types.ts +0 -64
- package/src/provider/sdk/copilot/chat/openai-compatible-chat-language-model.ts +0 -815
- package/src/provider/sdk/copilot/chat/openai-compatible-chat-options.ts +0 -28
- package/src/provider/sdk/copilot/chat/openai-compatible-metadata-extractor.ts +0 -44
- package/src/provider/sdk/copilot/chat/openai-compatible-prepare-tools.ts +0 -83
- package/src/provider/sdk/copilot/copilot-provider.ts +0 -100
- package/src/provider/sdk/copilot/index.ts +0 -2
- package/src/provider/sdk/copilot/openai-compatible-error.ts +0 -27
- package/src/provider/sdk/copilot/responses/convert-to-openai-responses-input.ts +0 -335
- package/src/provider/sdk/copilot/responses/map-openai-responses-finish-reason.ts +0 -22
- package/src/provider/sdk/copilot/responses/openai-config.ts +0 -18
- package/src/provider/sdk/copilot/responses/openai-error.ts +0 -22
- package/src/provider/sdk/copilot/responses/openai-responses-api-types.ts +0 -214
- package/src/provider/sdk/copilot/responses/openai-responses-language-model.ts +0 -1769
- package/src/provider/sdk/copilot/responses/openai-responses-prepare-tools.ts +0 -173
- package/src/provider/sdk/copilot/responses/openai-responses-settings.ts +0 -1
- package/src/provider/sdk/copilot/responses/tool/code-interpreter.ts +0 -87
- package/src/provider/sdk/copilot/responses/tool/file-search.ts +0 -127
- package/src/provider/sdk/copilot/responses/tool/image-generation.ts +0 -114
- package/src/provider/sdk/copilot/responses/tool/local-shell.ts +0 -64
- package/src/provider/sdk/copilot/responses/tool/web-search-preview.ts +0 -103
- package/src/provider/sdk/copilot/responses/tool/web-search.ts +0 -102
- package/src/provider/transform.ts +0 -1045
- package/src/pty/index.ts +0 -397
- package/src/pty/schema.ts +0 -17
- package/src/question/index.ts +0 -221
- package/src/question/schema.ts +0 -17
- package/src/server/error.ts +0 -36
- package/src/server/event.ts +0 -7
- package/src/server/instance.ts +0 -285
- package/src/server/mdns.ts +0 -60
- package/src/server/middleware.ts +0 -33
- package/src/server/projectors.ts +0 -28
- package/src/server/router.ts +0 -99
- package/src/server/routes/config.ts +0 -92
- package/src/server/routes/event.ts +0 -83
- package/src/server/routes/experimental.ts +0 -271
- package/src/server/routes/file.ts +0 -197
- package/src/server/routes/global.ts +0 -312
- package/src/server/routes/instance/httpapi/app.ts +0 -21
- package/src/server/routes/mcp.ts +0 -225
- package/src/server/routes/permission.ts +0 -69
- package/src/server/routes/project.ts +0 -118
- package/src/server/routes/provider.ts +0 -171
- package/src/server/routes/pty.ts +0 -211
- package/src/server/routes/question.ts +0 -99
- package/src/server/routes/session.ts +0 -1031
- package/src/server/routes/tui.ts +0 -379
- package/src/server/routes/workspace.ts +0 -94
- package/src/server/server.ts +0 -314
- package/src/session/compaction.ts +0 -432
- package/src/session/index.ts +0 -885
- package/src/session/instruction.ts +0 -192
- package/src/session/llm.ts +0 -365
- package/src/session/memory.ts +0 -126
- package/src/session/message-v2.ts +0 -1030
- package/src/session/message.ts +0 -191
- package/src/session/overflow.ts +0 -22
- package/src/session/processor.ts +0 -697
- package/src/session/projectors.ts +0 -135
- package/src/session/prompt/anthropic.txt +0 -125
- package/src/session/prompt/beast.txt +0 -161
- package/src/session/prompt/build-switch.txt +0 -5
- package/src/session/prompt/codex.txt +0 -90
- package/src/session/prompt/copilot-gpt-5.txt +0 -143
- package/src/session/prompt/default.txt +0 -116
- package/src/session/prompt/gemini.txt +0 -173
- package/src/session/prompt/gpt.txt +0 -120
- package/src/session/prompt/kimi.txt +0 -131
- package/src/session/prompt/max-steps.txt +0 -16
- package/src/session/prompt/plan-reminder-anthropic.txt +0 -67
- package/src/session/prompt/plan.txt +0 -26
- package/src/session/prompt/trinity.txt +0 -109
- package/src/session/prompt.ts +0 -1898
- package/src/session/rate-limit.ts +0 -176
- package/src/session/retry.ts +0 -107
- package/src/session/revert.ts +0 -135
- package/src/session/schema.ts +0 -38
- package/src/session/session.sql.ts +0 -103
- package/src/session/status.ts +0 -102
- package/src/session/summary.ts +0 -169
- package/src/session/system.ts +0 -76
- package/src/session/todo.ts +0 -57
- package/src/share/share-next.ts +0 -287
- package/src/share/share.sql.ts +0 -13
- package/src/shell/shell.ts +0 -110
- package/src/skill/discovery.ts +0 -116
- package/src/skill/index.ts +0 -277
- package/src/snapshot/index.ts +0 -489
- package/src/sql.d.ts +0 -4
- package/src/storage/db.bun.ts +0 -8
- package/src/storage/db.node.ts +0 -8
- package/src/storage/db.ts +0 -177
- package/src/storage/json-migration.ts +0 -425
- package/src/storage/schema.sql.ts +0 -10
- package/src/storage/schema.ts +0 -5
- package/src/storage/storage.ts +0 -353
- package/src/sync/README.md +0 -179
- package/src/sync/event.sql.ts +0 -16
- package/src/sync/index.ts +0 -263
- package/src/sync/schema.ts +0 -14
- package/src/task/index.ts +0 -89
- package/src/task/schema.ts +0 -39
- package/src/tool/apply_patch.ts +0 -281
- package/src/tool/apply_patch.txt +0 -33
- package/src/tool/bash-security.ts +0 -214
- package/src/tool/bash.ts +0 -526
- package/src/tool/bash.txt +0 -129
- package/src/tool/batch.ts +0 -183
- package/src/tool/batch.txt +0 -24
- package/src/tool/codesearch.ts +0 -132
- package/src/tool/codesearch.txt +0 -12
- package/src/tool/cron-create.ts +0 -38
- package/src/tool/cron-create.txt +0 -10
- package/src/tool/cron-delete.ts +0 -29
- package/src/tool/cron-delete.txt +0 -1
- package/src/tool/cron-list.ts +0 -37
- package/src/tool/cron-list.txt +0 -1
- package/src/tool/edit.ts +0 -667
- package/src/tool/edit.txt +0 -10
- package/src/tool/external-directory.ts +0 -37
- package/src/tool/glob.ts +0 -78
- package/src/tool/glob.txt +0 -6
- package/src/tool/grep.ts +0 -156
- package/src/tool/grep.txt +0 -8
- package/src/tool/invalid.ts +0 -17
- package/src/tool/ls.ts +0 -121
- package/src/tool/ls.txt +0 -1
- package/src/tool/lsp.ts +0 -97
- package/src/tool/lsp.txt +0 -19
- package/src/tool/multiedit.ts +0 -46
- package/src/tool/multiedit.txt +0 -41
- package/src/tool/notebook-edit.ts +0 -136
- package/src/tool/notebook-edit.txt +0 -10
- package/src/tool/plan-enter.txt +0 -14
- package/src/tool/plan-exit.txt +0 -13
- package/src/tool/plan.ts +0 -130
- package/src/tool/question.ts +0 -33
- package/src/tool/question.txt +0 -10
- package/src/tool/read.ts +0 -296
- package/src/tool/read.txt +0 -14
- package/src/tool/registry.ts +0 -333
- package/src/tool/schema.ts +0 -17
- package/src/tool/sendmessage.ts +0 -57
- package/src/tool/sendmessage.txt +0 -6
- package/src/tool/skill.ts +0 -105
- package/src/tool/task-create.ts +0 -25
- package/src/tool/task-create.txt +0 -1
- package/src/tool/task-get.ts +0 -27
- package/src/tool/task-get.txt +0 -1
- package/src/tool/task-list.ts +0 -45
- package/src/tool/task-list.txt +0 -1
- package/src/tool/task-output.ts +0 -28
- package/src/tool/task-output.txt +0 -1
- package/src/tool/task-stop.ts +0 -27
- package/src/tool/task-stop.txt +0 -1
- package/src/tool/task-update.ts +0 -38
- package/src/tool/task-update.txt +0 -1
- package/src/tool/task.ts +0 -246
- package/src/tool/task.txt +0 -65
- package/src/tool/todo.ts +0 -31
- package/src/tool/todowrite.txt +0 -167
- package/src/tool/tool.ts +0 -98
- package/src/tool/toolsearch.ts +0 -117
- package/src/tool/toolsearch.txt +0 -10
- package/src/tool/truncate.ts +0 -144
- package/src/tool/truncation-dir.ts +0 -4
- package/src/tool/webfetch.ts +0 -206
- package/src/tool/webfetch.txt +0 -13
- package/src/tool/websearch.ts +0 -150
- package/src/tool/websearch.txt +0 -14
- package/src/tool/worktree-enter.ts +0 -38
- package/src/tool/worktree-enter.txt +0 -8
- package/src/tool/worktree-exit.ts +0 -43
- package/src/tool/worktree-exit.txt +0 -3
- package/src/tool/write.ts +0 -84
- package/src/tool/write.txt +0 -8
- package/src/util/abort.ts +0 -35
- package/src/util/archive.ts +0 -17
- package/src/util/color.ts +0 -19
- package/src/util/context.ts +0 -25
- package/src/util/data-url.ts +0 -9
- package/src/util/defer.ts +0 -12
- package/src/util/effect-http-client.ts +0 -11
- package/src/util/effect-zod.ts +0 -98
- package/src/util/error.ts +0 -77
- package/src/util/filesystem.ts +0 -220
- package/src/util/flock.ts +0 -333
- package/src/util/fn.ts +0 -21
- package/src/util/format.ts +0 -20
- package/src/util/git.ts +0 -35
- package/src/util/glob.ts +0 -34
- package/src/util/hash.ts +0 -7
- package/src/util/iife.ts +0 -3
- package/src/util/keybind.ts +0 -103
- package/src/util/lazy.ts +0 -23
- package/src/util/locale.ts +0 -81
- package/src/util/lock.ts +0 -98
- package/src/util/log.ts +0 -182
- package/src/util/network.ts +0 -9
- package/src/util/process.ts +0 -172
- package/src/util/queue.ts +0 -32
- package/src/util/record.ts +0 -3
- package/src/util/rpc.ts +0 -66
- package/src/util/schema.ts +0 -53
- package/src/util/scrap.ts +0 -10
- package/src/util/signal.ts +0 -12
- package/src/util/timeout.ts +0 -14
- package/src/util/token.ts +0 -7
- package/src/util/update-schema.ts +0 -13
- package/src/util/which.ts +0 -14
- package/src/util/wildcard.ts +0 -59
- package/src/vim/agent-namer.ts +0 -86
- package/src/vim/types.ts +0 -29
- package/src/worktree/index.ts +0 -638
- package/sst-env.d.ts +0 -10
- package/test/AGENTS.md +0 -81
- package/test/account/repo.test.ts +0 -326
- package/test/account/service.test.ts +0 -282
- package/test/acp/agent-interface.test.ts +0 -51
- package/test/acp/event-subscription.test.ts +0 -685
- package/test/agent/agent.test.ts +0 -717
- package/test/auth/auth.test.ts +0 -58
- package/test/bun.test.ts +0 -137
- package/test/bus/bus-effect.test.ts +0 -164
- package/test/bus/bus-integration.test.ts +0 -87
- package/test/bus/bus.test.ts +0 -219
- package/test/cli/account.test.ts +0 -26
- package/test/cli/cmd/tui/prompt-part.test.ts +0 -47
- package/test/cli/github-action.test.ts +0 -198
- package/test/cli/github-remote.test.ts +0 -80
- package/test/cli/import.test.ts +0 -54
- package/test/cli/plugin-auth-picker.test.ts +0 -120
- package/test/cli/tui/keybind-plugin.test.ts +0 -90
- package/test/cli/tui/plugin-add.test.ts +0 -61
- package/test/cli/tui/plugin-install.test.ts +0 -89
- package/test/cli/tui/plugin-lifecycle.test.ts +0 -225
- package/test/cli/tui/plugin-loader-entrypoint.test.ts +0 -492
- package/test/cli/tui/plugin-loader-pure.test.ts +0 -72
- package/test/cli/tui/plugin-loader.test.ts +0 -752
- package/test/cli/tui/plugin-toggle.test.ts +0 -159
- package/test/cli/tui/theme-store.test.ts +0 -51
- package/test/cli/tui/thread.test.ts +0 -128
- package/test/cli/tui/transcript.test.ts +0 -322
- package/test/config/agent-color.test.ts +0 -71
- package/test/config/config.test.ts +0 -2218
- package/test/config/fixtures/empty-frontmatter.md +0 -4
- package/test/config/fixtures/frontmatter.md +0 -28
- package/test/config/fixtures/markdown-header.md +0 -11
- package/test/config/fixtures/no-frontmatter.md +0 -1
- package/test/config/fixtures/weird-model-id.md +0 -13
- package/test/config/markdown.test.ts +0 -228
- package/test/config/tui.test.ts +0 -673
- package/test/control-plane/sse.test.ts +0 -56
- package/test/effect/cross-spawn-spawner.test.ts +0 -402
- package/test/effect/instance-state.test.ts +0 -384
- package/test/effect/run-service.test.ts +0 -46
- package/test/effect/runner.test.ts +0 -523
- package/test/file/fsmonitor.test.ts +0 -62
- package/test/file/ignore.test.ts +0 -10
- package/test/file/index.test.ts +0 -946
- package/test/file/path-traversal.test.ts +0 -198
- package/test/file/ripgrep.test.ts +0 -54
- package/test/file/time.test.ts +0 -354
- package/test/file/watcher.test.ts +0 -247
- package/test/filesystem/filesystem.test.ts +0 -319
- package/test/fixture/db.ts +0 -11
- package/test/fixture/fixture.test.ts +0 -26
- package/test/fixture/fixture.ts +0 -141
- package/test/fixture/flock-worker.ts +0 -72
- package/test/fixture/lsp/fake-lsp-server.js +0 -77
- package/test/fixture/plug-worker.ts +0 -93
- package/test/fixture/plugin-meta-worker.ts +0 -26
- package/test/fixture/skills/agents-sdk/SKILL.md +0 -152
- package/test/fixture/skills/agents-sdk/references/callable.md +0 -92
- package/test/fixture/skills/cloudflare/SKILL.md +0 -211
- package/test/fixture/skills/index.json +0 -6
- package/test/fixture/tui-plugin.ts +0 -335
- package/test/fixture/tui-runtime.ts +0 -27
- package/test/format/format.test.ts +0 -179
- package/test/ide/ide.test.ts +0 -82
- package/test/installation/installation.test.ts +0 -151
- package/test/keybind.test.ts +0 -421
- package/test/lib/effect.ts +0 -37
- package/test/lib/filesystem.ts +0 -10
- package/test/lsp/client.test.ts +0 -95
- package/test/lsp/index.test.ts +0 -55
- package/test/lsp/launch.test.ts +0 -22
- package/test/lsp/lifecycle.test.ts +0 -147
- package/test/mcp/headers.test.ts +0 -153
- package/test/mcp/lifecycle.test.ts +0 -750
- package/test/mcp/oauth-auto-connect.test.ts +0 -199
- package/test/mcp/oauth-browser.test.ts +0 -249
- package/test/memory/abort-leak.test.ts +0 -137
- package/test/patch/patch.test.ts +0 -348
- package/test/permission/arity.test.ts +0 -33
- package/test/permission/next.test.ts +0 -1148
- package/test/permission-task.test.ts +0 -323
- package/test/plugin/auth-override.test.ts +0 -74
- package/test/plugin/codex.test.ts +0 -123
- package/test/plugin/install-concurrency.test.ts +0 -140
- package/test/plugin/install.test.ts +0 -531
- package/test/plugin/loader-shared.test.ts +0 -836
- package/test/plugin/meta.test.ts +0 -137
- package/test/plugin/trigger.test.ts +0 -111
- package/test/preload.ts +0 -90
- package/test/project/migrate-global.test.ts +0 -140
- package/test/project/project.test.ts +0 -459
- package/test/project/state.test.ts +0 -115
- package/test/project/vcs.test.ts +0 -116
- package/test/project/worktree-remove.test.ts +0 -96
- package/test/project/worktree.test.ts +0 -173
- package/test/provider/amazon-bedrock.test.ts +0 -447
- package/test/provider/copilot/convert-to-copilot-messages.test.ts +0 -523
- package/test/provider/copilot/copilot-chat-model.test.ts +0 -592
- package/test/provider/gitlab-duo.test.ts +0 -412
- package/test/provider/provider.test.ts +0 -2284
- package/test/provider/transform.test.ts +0 -2758
- package/test/pty/pty-output-isolation.test.ts +0 -141
- package/test/pty/pty-session.test.ts +0 -92
- package/test/pty/pty-shell.test.ts +0 -59
- package/test/question/question.test.ts +0 -453
- package/test/server/global-session-list.test.ts +0 -89
- package/test/server/project-init-git.test.ts +0 -121
- package/test/server/session-actions.test.ts +0 -83
- package/test/server/session-list.test.ts +0 -98
- package/test/server/session-messages.test.ts +0 -159
- package/test/server/session-select.test.ts +0 -84
- package/test/session/compaction.test.ts +0 -1202
- package/test/session/instruction.test.ts +0 -170
- package/test/session/llm.test.ts +0 -1098
- package/test/session/message-v2.test.ts +0 -957
- package/test/session/messages-pagination.test.ts +0 -115
- package/test/session/processor-effect.test.ts +0 -872
- package/test/session/prompt-concurrency.test.ts +0 -247
- package/test/session/prompt-effect.test.ts +0 -1206
- package/test/session/prompt.test.ts +0 -518
- package/test/session/retry.test.ts +0 -232
- package/test/session/revert-compact.test.ts +0 -286
- package/test/session/session.test.ts +0 -142
- package/test/session/structured-output-integration.test.ts +0 -233
- package/test/session/structured-output.test.ts +0 -391
- package/test/session/system.test.ts +0 -59
- package/test/share/share-next.test.ts +0 -76
- package/test/shell/shell.test.ts +0 -73
- package/test/skill/discovery.test.ts +0 -116
- package/test/skill/skill.test.ts +0 -392
- package/test/snapshot/snapshot.test.ts +0 -1235
- package/test/storage/db.test.ts +0 -14
- package/test/storage/json-migration.test.ts +0 -849
- package/test/storage/storage.test.ts +0 -295
- package/test/sync/index.test.ts +0 -191
- package/test/tool/__snapshots__/tool.test.ts.snap +0 -9
- package/test/tool/apply_patch.test.ts +0 -567
- package/test/tool/bash.test.ts +0 -984
- package/test/tool/edit.test.ts +0 -681
- package/test/tool/external-directory.test.ts +0 -198
- package/test/tool/fixtures/large-image.png +0 -0
- package/test/tool/fixtures/models-api.json +0 -65179
- package/test/tool/grep.test.ts +0 -111
- package/test/tool/question.test.ts +0 -108
- package/test/tool/read.test.ts +0 -546
- package/test/tool/registry.test.ts +0 -126
- package/test/tool/skill.test.ts +0 -167
- package/test/tool/task.test.ts +0 -49
- package/test/tool/truncation.test.ts +0 -161
- package/test/tool/webfetch.test.ts +0 -101
- package/test/tool/write.test.ts +0 -353
- package/test/util/data-url.test.ts +0 -14
- package/test/util/effect-zod.test.ts +0 -61
- package/test/util/error.test.ts +0 -38
- package/test/util/filesystem.test.ts +0 -567
- package/test/util/flock.test.ts +0 -383
- package/test/util/format.test.ts +0 -59
- package/test/util/glob.test.ts +0 -164
- package/test/util/iife.test.ts +0 -36
- package/test/util/lazy.test.ts +0 -50
- package/test/util/lock.test.ts +0 -72
- package/test/util/module.test.ts +0 -59
- package/test/util/process.test.ts +0 -128
- package/test/util/timeout.test.ts +0 -21
- package/test/util/which.test.ts +0 -100
- package/test/util/wildcard.test.ts +0 -90
- package/tsconfig.json +0 -23
- package/vikasitai-vikasit-code-2.0.5.tgz +0 -0
- /package/{script/postinstall.mjs → postinstall.mjs} +0 -0
|
@@ -1,563 +0,0 @@
|
|
|
1
|
-
# Claude Code Integration Plan
|
|
2
|
-
|
|
3
|
-
This document outlines the integration of Claude Code components into Vikasit Code, excluding the UI layer (React components, hooks, Ink rendering).
|
|
4
|
-
|
|
5
|
-
## Architecture Mapping
|
|
6
|
-
|
|
7
|
-
| Claude Code Pattern | Vikasit Equivalent | Integration Approach |
|
|
8
|
-
| -------------------- | ---------------------- | ----------------------- |
|
|
9
|
-
| `Effect.gen()` | `Effect.gen()` | Direct compatibility |
|
|
10
|
-
| `Command` module | `src/command/index.ts` | Expand command registry |
|
|
11
|
-
| `Tool.ts` | `src/tool/tool.ts` | Extend tool definitions |
|
|
12
|
-
| `services/mcp/*` | `src/mcp/*` | MCP service expansion |
|
|
13
|
-
| `remote/*` | New module | Create remote sessions |
|
|
14
|
-
| `skills/*` | `src/skill/*` | Expand skill system |
|
|
15
|
-
| `utils/*` (331 dirs) | `src/util/*` | selective adoption |
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## 1. Commands System
|
|
20
|
-
|
|
21
|
-
**Current Vikasit:** 2 commands (init, review) via template system
|
|
22
|
-
**Claude Code:** ~100 commands across 103 subdirectories
|
|
23
|
-
|
|
24
|
-
### Integration Steps
|
|
25
|
-
|
|
26
|
-
```typescript
|
|
27
|
-
// src/command/index.ts - Expand command registry
|
|
28
|
-
export const CommandRegistry = {
|
|
29
|
-
// Existing
|
|
30
|
-
INIT: "init",
|
|
31
|
-
REVIEW: "review",
|
|
32
|
-
|
|
33
|
-
// New commands to add
|
|
34
|
-
LOGIN: "login", // Auth management
|
|
35
|
-
LOGOUT: "logout",
|
|
36
|
-
CONFIG: "config", // Configuration
|
|
37
|
-
MCP: "mcp", // MCP server management
|
|
38
|
-
SKILLS: "skills", // Skill discovery/installation
|
|
39
|
-
TELEPORT: "teleport", // Session migration
|
|
40
|
-
SESSION: "session", // Session management
|
|
41
|
-
MEMORY: "memory", // Memory operations
|
|
42
|
-
COST: "cost", // Cost tracking
|
|
43
|
-
STATUS: "status", // System status
|
|
44
|
-
THEME: "theme", // Theme configuration
|
|
45
|
-
VIM: "vim", // Vim mode toggle
|
|
46
|
-
WORKTREE: "worktree", // Git worktree management
|
|
47
|
-
// ... 80+ more
|
|
48
|
-
}
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### Files to Create/Copy
|
|
52
|
-
|
|
53
|
-
```
|
|
54
|
-
src/command/
|
|
55
|
-
login.ts # OAuth/API key auth
|
|
56
|
-
logout.ts
|
|
57
|
-
config.ts # Config management
|
|
58
|
-
mcp.ts # MCP enable/disable/list
|
|
59
|
-
skills.ts # Skill install/list/remove
|
|
60
|
-
teleport.ts # Session migration
|
|
61
|
-
session.ts # Session list/archive/delete
|
|
62
|
-
memory.ts # Memory extract/view
|
|
63
|
-
cost.ts # Cost display
|
|
64
|
-
status.ts # System status
|
|
65
|
-
theme.ts # Theme switch
|
|
66
|
-
worktree.ts # Worktree create/list
|
|
67
|
-
// ... more
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
**Estimated effort:** 2-3 days for core commands
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
## 2. Remote Sessions
|
|
75
|
-
|
|
76
|
-
**Current Vikasit:** Local sessions only
|
|
77
|
-
**Claude Code:** RemoteSessionManager, SessionsWebSocket, permission bridge
|
|
78
|
-
|
|
79
|
-
### Integration Steps
|
|
80
|
-
|
|
81
|
-
```typescript
|
|
82
|
-
// src/remote/RemoteSessionManager.ts (new)
|
|
83
|
-
import { Effect, ServiceMap } from "effect"
|
|
84
|
-
import { SessionID } from "@/session/schema"
|
|
85
|
-
|
|
86
|
-
export namespace RemoteSessionManager {
|
|
87
|
-
export interface Interface {
|
|
88
|
-
readonly connect: (url: string) => Effect.Effect<void>
|
|
89
|
-
readonly disconnect: () => Effect.Effect<void>
|
|
90
|
-
readonly share: (sessionID: SessionID) => Effect.Effect<string>
|
|
91
|
-
readonly receive: () => Effect.Effect<RemoteMessage>
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
export class Service extends ServiceMap.Service<Service, Interface>()("@opencode/RemoteSessionManager") {}
|
|
95
|
-
}
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
```typescript
|
|
99
|
-
// src/remote/SessionsWebSocket.ts (new)
|
|
100
|
-
import { Instance.bind } from "@/project/instance"
|
|
101
|
-
import { Bus } from "@/bus"
|
|
102
|
-
|
|
103
|
-
export function createWebSocketSession(url: string) {
|
|
104
|
-
const ws = new WebSocket(url)
|
|
105
|
-
|
|
106
|
-
// Use Instance.bind for callback context restoration
|
|
107
|
-
const onMessage = Instance.bind((data) => {
|
|
108
|
-
Bus.publish(RemotionEvent, JSON.parse(data))
|
|
109
|
-
})
|
|
110
|
-
|
|
111
|
-
ws.onmessage = onMessage
|
|
112
|
-
return ws
|
|
113
|
-
}
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
### Files to Create
|
|
117
|
-
|
|
118
|
-
```
|
|
119
|
-
src/remote/
|
|
120
|
-
RemoteSessionManager.ts
|
|
121
|
-
SessionsWebSocket.ts
|
|
122
|
-
remotePermissionBridge.ts
|
|
123
|
-
sdkMessageAdapter.ts
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
**Estimated effort:** 3-4 days
|
|
127
|
-
|
|
128
|
-
---
|
|
129
|
-
|
|
130
|
-
## 3. MCP Expansion
|
|
131
|
-
|
|
132
|
-
**Current Vikasit:** Basic auth + OAuth provider (4 files)
|
|
133
|
-
**Claude Code:** 22 MCP service files + 4 MCP tools
|
|
134
|
-
|
|
135
|
-
### Integration Steps
|
|
136
|
-
|
|
137
|
-
```typescript
|
|
138
|
-
// src/mcp/index.ts - Expand MCP module
|
|
139
|
-
export namespace MCP {
|
|
140
|
-
// Existing
|
|
141
|
-
export const auth = ...
|
|
142
|
-
|
|
143
|
-
// New additions
|
|
144
|
-
export const client = ... // MCP client wrapper
|
|
145
|
-
export const connectionManager = ... // Connection lifecycle
|
|
146
|
-
export const elicitation = ... // MCP elicitation handling
|
|
147
|
-
export const resources = ... // Resource listing/reading
|
|
148
|
-
export const tools = ... // MCP tool invocation
|
|
149
|
-
export const oauth = ... // OAuth flow
|
|
150
|
-
export const transport = ... // Stdio/SSE/HTTP/WebSocket
|
|
151
|
-
}
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
### Files to Create/Copy
|
|
155
|
-
|
|
156
|
-
```
|
|
157
|
-
src/mcp/
|
|
158
|
-
client.ts # MCP Client wrapper (3.3KB Claude Code)
|
|
159
|
-
MCPConnectionManager.ts # Connection lifecycle
|
|
160
|
-
elicitationHandler.ts # MCP elicitation
|
|
161
|
-
oauth.ts # OAuth flow
|
|
162
|
-
transport.ts # Transport adapters
|
|
163
|
-
resources.ts # Resource operations
|
|
164
|
-
tools.ts # MCP tool invocation
|
|
165
|
-
config.ts # MCP configuration
|
|
166
|
-
types.ts # MCP type definitions
|
|
167
|
-
utils.ts # MCP utilities
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
**Estimated effort:** 4-5 days
|
|
171
|
-
|
|
172
|
-
---
|
|
173
|
-
|
|
174
|
-
## 4. Plugin Architecture
|
|
175
|
-
|
|
176
|
-
**Current Vikasit:** Basic plugin module exists
|
|
177
|
-
**Claude Code:** Full plugin system with CLI commands
|
|
178
|
-
|
|
179
|
-
### Integration Steps
|
|
180
|
-
|
|
181
|
-
```typescript
|
|
182
|
-
// src/plugin/index.ts - Expand
|
|
183
|
-
export namespace Plugin {
|
|
184
|
-
export interface Interface {
|
|
185
|
-
readonly install: (name: string) => Effect.Effect<void>
|
|
186
|
-
readonly uninstall: (name: string) => Effect.Effect<void>
|
|
187
|
-
readonly list: () => Effect.Effect<Plugin.Info[]>
|
|
188
|
-
readonly enable: (name: string) => Effect.Effect<void>
|
|
189
|
-
readonly disable: (name: string) => Effect.Effect<void>
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
// Plugin lifecycle hooks
|
|
193
|
-
export const hooks = {
|
|
194
|
-
onInstall: ...,
|
|
195
|
-
onUninstall: ...,
|
|
196
|
-
onEnable: ...,
|
|
197
|
-
onDisable: ...,
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
```
|
|
201
|
-
|
|
202
|
-
### Files to Create
|
|
203
|
-
|
|
204
|
-
```
|
|
205
|
-
src/plugin/
|
|
206
|
-
cli.ts # Plugin CLI commands
|
|
207
|
-
registry.ts # Plugin registry
|
|
208
|
-
lifecycle.ts # Plugin lifecycle
|
|
209
|
-
validation.ts # Plugin validation
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
**Estimated effort:** 2-3 days
|
|
213
|
-
|
|
214
|
-
---
|
|
215
|
-
|
|
216
|
-
## 5. Memory System
|
|
217
|
-
|
|
218
|
-
**Current Vikasit:** Basic skill discovery
|
|
219
|
-
**Claude Code:** SessionMemory, teamMemorySync, extractMemories
|
|
220
|
-
|
|
221
|
-
### Integration Steps
|
|
222
|
-
|
|
223
|
-
```typescript
|
|
224
|
-
// src/service/SessionMemory.ts (new)
|
|
225
|
-
import { Effect, ServiceMap } from "effect"
|
|
226
|
-
import { SessionID } from "@/session/schema"
|
|
227
|
-
|
|
228
|
-
export namespace SessionMemory {
|
|
229
|
-
export interface Interface {
|
|
230
|
-
readonly init: (sessionID: SessionID) => Effect.Effect<void>
|
|
231
|
-
readonly extract: () => Effect.Effect<Memory[]>
|
|
232
|
-
readonly sync: () => Effect.Effect<void>
|
|
233
|
-
readonly clear: () => Effect.Effect<void>
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
export class Service extends ServiceMap.Service<Service, Interface>()("@opencode/SessionMemory") {}
|
|
237
|
-
|
|
238
|
-
export const layer = Layer.effect(
|
|
239
|
-
Service,
|
|
240
|
-
Effect.gen(function* () {
|
|
241
|
-
const db = yield* Database.Service
|
|
242
|
-
const session = yield* Session.Service
|
|
243
|
-
|
|
244
|
-
return {
|
|
245
|
-
init: Effect.fn("SessionMemory.init")(function* (sessionID) {
|
|
246
|
-
// Initialize memory for session
|
|
247
|
-
}),
|
|
248
|
-
extract: Effect.fn("SessionMemory.extract")(function* () {
|
|
249
|
-
// Extract memories from session
|
|
250
|
-
}),
|
|
251
|
-
// ...
|
|
252
|
-
}
|
|
253
|
-
}),
|
|
254
|
-
)
|
|
255
|
-
}
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
### Files to Create
|
|
259
|
-
|
|
260
|
-
```
|
|
261
|
-
src/service/
|
|
262
|
-
SessionMemory.ts # Session memory management
|
|
263
|
-
teamMemorySync.ts # Team memory synchronization
|
|
264
|
-
extractMemories.ts # Memory extraction logic
|
|
265
|
-
```
|
|
266
|
-
|
|
267
|
-
**Estimated effort:** 2-3 days
|
|
268
|
-
|
|
269
|
-
---
|
|
270
|
-
|
|
271
|
-
## 6. Swarm/Coordinator
|
|
272
|
-
|
|
273
|
-
**Current Vikasit:** Single agent model
|
|
274
|
-
**Claude Code:** coordinator mode, teammate, swarm backends
|
|
275
|
-
|
|
276
|
-
### Integration Steps
|
|
277
|
-
|
|
278
|
-
```typescript
|
|
279
|
-
// src/coordinator/coordinatorMode.ts (new)
|
|
280
|
-
import { Effect, ServiceMap } from "effect"
|
|
281
|
-
import { AgentID } from "@/agent/schema"
|
|
282
|
-
|
|
283
|
-
export namespace CoordinatorMode {
|
|
284
|
-
export interface Interface {
|
|
285
|
-
readonly enable: () => Effect.Effect<void>
|
|
286
|
-
readonly disable: () => Effect.Effect<void>
|
|
287
|
-
readonly createTeammate: (config: TeammateConfig) => Effect.Effect<TeammateID>
|
|
288
|
-
readonly assignTask: (teammateID: TeammateID, task: string) => Effect.Effect<void>
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
export class Service extends ServiceMap.Service<Service, Interface>()("@opencode/CoordinatorMode") {}
|
|
292
|
-
}
|
|
293
|
-
```
|
|
294
|
-
|
|
295
|
-
### Files to Create
|
|
296
|
-
|
|
297
|
-
```
|
|
298
|
-
src/coordinator/
|
|
299
|
-
coordinatorMode.ts # Coordinator mode
|
|
300
|
-
teammate.ts # Teammate management
|
|
301
|
-
swarmBackend.ts # Swarm orchestration
|
|
302
|
-
reconnection.ts # Swarm reconnection
|
|
303
|
-
```
|
|
304
|
-
|
|
305
|
-
**Estimated effort:** 5-7 days (complex feature)
|
|
306
|
-
|
|
307
|
-
---
|
|
308
|
-
|
|
309
|
-
## 7. Query Engine
|
|
310
|
-
|
|
311
|
-
**Current Vikasit:** No query engine
|
|
312
|
-
**Claude Code:** QueryEngine.ts (46KB), query.ts (68KB)
|
|
313
|
-
|
|
314
|
-
### Integration Steps
|
|
315
|
-
|
|
316
|
-
```typescript
|
|
317
|
-
// src/query/QueryEngine.ts (new)
|
|
318
|
-
import { Effect, ServiceMap } from "effect"
|
|
319
|
-
|
|
320
|
-
export namespace QueryEngine {
|
|
321
|
-
export interface Interface {
|
|
322
|
-
readonly execute: (query: string) => Effect.Effect<QueryResult>
|
|
323
|
-
readonly parse: (query: string) => Effect.Effect<ParsedQuery>
|
|
324
|
-
readonly optimize: (query: ParsedQuery) => Effect.Effect<ParsedQuery>
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
export class Service extends ServiceMap.Service<Service, Interface>()("@opencode/QueryEngine") {}
|
|
328
|
-
}
|
|
329
|
-
```
|
|
330
|
-
|
|
331
|
-
### Files to Create
|
|
332
|
-
|
|
333
|
-
```
|
|
334
|
-
src/query/
|
|
335
|
-
QueryEngine.ts # Query execution engine
|
|
336
|
-
query.ts # Query DSL
|
|
337
|
-
parser.ts # Query parser
|
|
338
|
-
optimizer.ts # Query optimizer
|
|
339
|
-
```
|
|
340
|
-
|
|
341
|
-
**Estimated effort:** 5-7 days (complex feature)
|
|
342
|
-
|
|
343
|
-
---
|
|
344
|
-
|
|
345
|
-
## 8. Cost Tracking
|
|
346
|
-
|
|
347
|
-
**Current Vikasit:** No cost tracking
|
|
348
|
-
**Claude Code:** cost-tracker.ts (10KB), costHook.ts
|
|
349
|
-
|
|
350
|
-
### Integration Steps
|
|
351
|
-
|
|
352
|
-
```typescript
|
|
353
|
-
// src/service/CostTracker.ts (new)
|
|
354
|
-
import { Effect, ServiceMap } from "effect"
|
|
355
|
-
import { Decimal } from "decimal.js"
|
|
356
|
-
|
|
357
|
-
export namespace CostTracker {
|
|
358
|
-
export interface Interface {
|
|
359
|
-
readonly track: (usage: Usage) => Effect.Effect<void>
|
|
360
|
-
readonly getTotal: () => Effect.Effect<Decimal>
|
|
361
|
-
readonly getRemaining: () => Effect.Effect<Decimal>
|
|
362
|
-
readonly checkThreshold: () => Effect.Effect<boolean>
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
export class Service extends ServiceMap.Service<Service, Interface>()("@opencode/CostTracker") {}
|
|
366
|
-
}
|
|
367
|
-
```
|
|
368
|
-
|
|
369
|
-
### Files to Create
|
|
370
|
-
|
|
371
|
-
```
|
|
372
|
-
src/service/
|
|
373
|
-
CostTracker.ts # Cost tracking
|
|
374
|
-
quotaManager.ts # Quota management
|
|
375
|
-
limits.ts # Cost limits
|
|
376
|
-
```
|
|
377
|
-
|
|
378
|
-
**Estimated effort:** 1-2 days
|
|
379
|
-
|
|
380
|
-
---
|
|
381
|
-
|
|
382
|
-
## 9. Policy Limits
|
|
383
|
-
|
|
384
|
-
**Current Vikasit:** No policy system
|
|
385
|
-
**Claude Code:** policyLimits, remoteManagedSettings
|
|
386
|
-
|
|
387
|
-
### Integration Steps
|
|
388
|
-
|
|
389
|
-
```typescript
|
|
390
|
-
// src/service/PolicyLimits.ts (new)
|
|
391
|
-
import { Effect, ServiceMap } from "effect"
|
|
392
|
-
|
|
393
|
-
export namespace PolicyLimits {
|
|
394
|
-
export interface Interface {
|
|
395
|
-
readonly load: () => Effect.Effect<Policy>
|
|
396
|
-
readonly check: (action: string) => Effect.Effect<boolean>
|
|
397
|
-
readonly isAllowed: (tool: string, path: string) => Effect.Effect<boolean>
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
export class Service extends ServiceMap.Service<Service, Interface>()("@opencode/PolicyLimits") {}
|
|
401
|
-
}
|
|
402
|
-
```
|
|
403
|
-
|
|
404
|
-
### Files to Create
|
|
405
|
-
|
|
406
|
-
```
|
|
407
|
-
src/service/
|
|
408
|
-
PolicyLimits.ts # Policy enforcement
|
|
409
|
-
remoteManagedSettings.ts # Remote settings
|
|
410
|
-
```
|
|
411
|
-
|
|
412
|
-
**Estimated effort:** 2-3 days
|
|
413
|
-
|
|
414
|
-
---
|
|
415
|
-
|
|
416
|
-
## 10. Migration System
|
|
417
|
-
|
|
418
|
-
**Current Vikasit:** Drizzle migrations only
|
|
419
|
-
**Claude Code:** 13 migration modules
|
|
420
|
-
|
|
421
|
-
### Integration Steps
|
|
422
|
-
|
|
423
|
-
Vikasit already has Drizzle migrations. Additional migrations needed:
|
|
424
|
-
|
|
425
|
-
```typescript
|
|
426
|
-
// src/migrations/
|
|
427
|
-
resetProToOpusDefault.ts # Model defaults
|
|
428
|
-
// ... more data migrations
|
|
429
|
-
```
|
|
430
|
-
|
|
431
|
-
**Estimated effort:** 1 day
|
|
432
|
-
|
|
433
|
-
---
|
|
434
|
-
|
|
435
|
-
## 11. Worktree/tmux
|
|
436
|
-
|
|
437
|
-
**Current Vikasit:** Basic worktree module exists
|
|
438
|
-
**Claude Code:** worktree creation, tmux integration
|
|
439
|
-
|
|
440
|
-
### Integration Steps
|
|
441
|
-
|
|
442
|
-
```typescript
|
|
443
|
-
// src/worktree/index.ts - Expand
|
|
444
|
-
export namespace Worktree {
|
|
445
|
-
export const create = Effect.fn("Worktree.create")(function* (name: string) {
|
|
446
|
-
// Create git worktree
|
|
447
|
-
// Create tmux session
|
|
448
|
-
})
|
|
449
|
-
|
|
450
|
-
export const list = Effect.fn("Worktree.list")(function* () {
|
|
451
|
-
// List worktrees
|
|
452
|
-
})
|
|
453
|
-
|
|
454
|
-
export const tmuxSession = Effect.fn("Worktree.tmux")(function* (name: string) {
|
|
455
|
-
// Create tmux session
|
|
456
|
-
})
|
|
457
|
-
}
|
|
458
|
-
```
|
|
459
|
-
|
|
460
|
-
### Files to Create
|
|
461
|
-
|
|
462
|
-
```
|
|
463
|
-
src/worktree/
|
|
464
|
-
tmux.ts # tmux integration
|
|
465
|
-
```
|
|
466
|
-
|
|
467
|
-
**Estimated effort:** 1-2 days
|
|
468
|
-
|
|
469
|
-
---
|
|
470
|
-
|
|
471
|
-
## 12. Analytics Gates
|
|
472
|
-
|
|
473
|
-
**Current Vikasit:** No analytics
|
|
474
|
-
**Claude Code:** GrowthBook, telemetry, event tracking
|
|
475
|
-
|
|
476
|
-
### Integration Steps
|
|
477
|
-
|
|
478
|
-
```typescript
|
|
479
|
-
// src/service/Analytics.ts (new)
|
|
480
|
-
import { Effect, ServiceMap } from "effect"
|
|
481
|
-
|
|
482
|
-
export namespace Analytics {
|
|
483
|
-
export interface Interface {
|
|
484
|
-
readonly logEvent: (event: string, data: Record<string, any>) => Effect.Effect<void>
|
|
485
|
-
readonly initializeGates: () => Effect.Effect<void>
|
|
486
|
-
readonly getFeatureValue: (feature: string) => Effect.Effect<string>
|
|
487
|
-
}
|
|
488
|
-
|
|
489
|
-
export class Service extends ServiceMap.Service<Service, Interface>()("@opencode/Analytics") {}
|
|
490
|
-
}
|
|
491
|
-
```
|
|
492
|
-
|
|
493
|
-
### Files to Create
|
|
494
|
-
|
|
495
|
-
```
|
|
496
|
-
src/service/
|
|
497
|
-
Analytics.ts # Analytics service
|
|
498
|
-
growthbook.ts # Feature gates
|
|
499
|
-
telemetry.ts # Telemetry
|
|
500
|
-
eventTracking.ts # Event tracking
|
|
501
|
-
```
|
|
502
|
-
|
|
503
|
-
**Estimated effort:** 2-3 days
|
|
504
|
-
|
|
505
|
-
---
|
|
506
|
-
|
|
507
|
-
## Integration Timeline
|
|
508
|
-
|
|
509
|
-
| Phase | Components | Estimated Time |
|
|
510
|
-
| --------- | -------------------------------------------- | -------------- |
|
|
511
|
-
| 1 | Commands, MCP expansion, Cost tracking | 2 weeks |
|
|
512
|
-
| 2 | Remote sessions, Plugin architecture, Memory | 2 weeks |
|
|
513
|
-
| 3 | Query Engine, Policy limits | 2 weeks |
|
|
514
|
-
| 4 | Swarm/Coordinator, Analytics | 3 weeks |
|
|
515
|
-
| 5 | Worktree/tmux, Migration system | 1 week |
|
|
516
|
-
| **Total** | **All components** | **10 weeks** |
|
|
517
|
-
|
|
518
|
-
---
|
|
519
|
-
|
|
520
|
-
## Architecture Compatibility Notes
|
|
521
|
-
|
|
522
|
-
1. **Effect Compatibility:** Claude Code uses Effect.gen() pattern - direct compatibility ✓
|
|
523
|
-
2. **Instance.bind:** Required for native callbacks (fs.watch, @parcel/watcher)
|
|
524
|
-
3. **InstanceState:** Use for per-project state (Claude Code uses different pattern)
|
|
525
|
-
4. **ServiceMap:** Vikasit's service pattern - wrap Claude Code services
|
|
526
|
-
5. **Zod schemas:** Both use Zod - direct compatibility ✓
|
|
527
|
-
6. **Bun shell:** Vikasit uses Bun - adapt Claude Code's bash calls
|
|
528
|
-
|
|
529
|
-
---
|
|
530
|
-
|
|
531
|
-
## Files to Copy (Selective)
|
|
532
|
-
|
|
533
|
-
From Claude Code SRC, copy these non-UI files:
|
|
534
|
-
|
|
535
|
-
```
|
|
536
|
-
commands/ # All command implementations (100+ files)
|
|
537
|
-
services/mcp/* # MCP services (22 files)
|
|
538
|
-
remote/* # Remote session (4 files)
|
|
539
|
-
utils/mcp* # MCP utilities (10 files)
|
|
540
|
-
utils/auth.ts # Auth utilities
|
|
541
|
-
utils/worktree.ts # Worktree utilities
|
|
542
|
-
utils/proxy.ts # Proxy utilities
|
|
543
|
-
skills/* # Skill system (5 files)
|
|
544
|
-
coordinator/* # Coordinator mode (if needed)
|
|
545
|
-
query/* # Query engine (6 files)
|
|
546
|
-
```
|
|
547
|
-
|
|
548
|
-
**Do NOT copy:**
|
|
549
|
-
|
|
550
|
-
- components/\* (React UI - 146 dirs)
|
|
551
|
-
- hooks/\* (React hooks - 87 dirs)
|
|
552
|
-
- ink/\* (Terminal rendering - 50 dirs)
|
|
553
|
-
- screens/\* (UI screens)
|
|
554
|
-
|
|
555
|
-
---
|
|
556
|
-
|
|
557
|
-
## Next Steps
|
|
558
|
-
|
|
559
|
-
1. Create integration branches for each component
|
|
560
|
-
2. Start with Commands + MCP (highest value)
|
|
561
|
-
3. Test each component independently
|
|
562
|
-
4. Merge incrementally
|
|
563
|
-
5. Run Vikasit tests after each integration
|