From a5312e169b13c0f08b93c4b6e0c3076c94785aca Mon Sep 17 00:00:00 2001 From: Dax Date: Mon, 7 Sep 2026 17:19:33 -0400 Subject: [PATCH] refactor(packages): migrate to the opencode npm scope (#47852) --- .changeset/directory-page-heading.md | 2 +- .github/workflows/test.yml | 6 +- .opencode/tool/github-pr-search.ts | 2 +- .opencode/tool/github-triage.ts | 2 +- AGENTS.md | 4 +- bun.lock | 1226 ++++++++--------- bunfig.toml | 2 +- install | 16 +- nix/desktop.nix | 2 +- nix/node_modules.nix | 2 +- package.json | 4 +- packages/ai/AGENTS.md | 4 +- packages/ai/README.md | 82 +- packages/ai/example/tutorial.ts | 6 +- packages/ai/package.json | 6 +- packages/ai/script/publish.ts | 2 +- .../ai/src/protocols/anthropic-messages.ts | 2 +- packages/ai/src/protocols/gemini.ts | 2 +- packages/ai/src/protocols/open-responses.ts | 2 +- packages/ai/src/protocols/openai-chat.ts | 2 +- packages/ai/src/protocols/shared.ts | 2 +- packages/ai/src/schema/errors.ts | 2 +- packages/ai/src/schema/events.ts | 2 +- packages/ai/src/schema/messages.ts | 2 +- packages/ai/src/tool.ts | 2 +- packages/ai/test/exports.test.ts | 16 +- packages/ai/test/provider-package.test.ts | 132 +- .../ai/test/provider/groq.recorded.test.ts | 2 +- .../test/provider/meta-capabilities.test.ts | 2 +- .../ai/test/provider/mistral-chat.test.ts | 2 +- .../ai/test/provider/mistral.recorded.test.ts | 2 +- packages/ai/test/recorded-golden.ts | 2 +- packages/ai/test/recorded-runner.ts | 2 +- packages/ai/test/recorded-test.ts | 2 +- packages/ai/test/tool-runtime.test.ts | 2 +- .../timeline-virtualizer.fixture.tsx | 2 +- .../e2e/performance/devex/desktop-startup.ts | 2 +- .../performance/markdown/lifetime.bench.ts | 2 +- .../e2e/performance/patch-groups/fixture.tsx | 4 +- .../performance/timeline-stability/fixture.ts | 10 +- .../composer-write-batch-benchmark.spec.ts | 2 +- .../provider-memory-benchmark.spec.ts | 2 +- ...session-parent-hydration-benchmark.spec.ts | 2 +- .../timeline/session-tab-switch.fixture.ts | 2 +- .../session-timeline-benchmark.fixture.ts | 4 +- .../session-timeline-stress.fixture.ts | 2 +- .../timeline-projection-benchmark.spec.ts | 2 +- .../timeline/timeline-test-helpers.ts | 2 +- .../unit/timeline-test-helpers.test.ts | 2 +- .../regression/composer-command-draft.spec.ts | 2 +- .../regression/composer-slash-skill.spec.ts | 2 +- .../regression/cross-server-tab-close.spec.ts | 2 +- .../file-browser-sidebar-tab-switch.spec.ts | 2 +- .../regression/mcp-workspace-toggle.spec.ts | 2 +- .../new-session-workspace-pending.spec.ts | 4 +- .../open-file-expand-folder.spec.ts | 2 +- .../regression/prompt-thinking-level.spec.ts | 2 +- .../remote-session-settings.spec.ts | 2 +- .../e2e/regression/remote-tab-busy.spec.ts | 2 +- .../e2e/regression/review-image-flash.spec.ts | 2 +- .../regression/review-line-comment.spec.ts | 2 +- .../e2e/regression/review-open-file.spec.ts | 2 +- .../review-state-persistence.spec.ts | 2 +- .../e2e/regression/review-tab-switch.spec.ts | 2 +- .../regression/review-toggle-position.spec.ts | 2 +- .../regression/session-location-sync.spec.ts | 2 +- .../regression/session-message-revert.spec.ts | 4 +- .../session-notice-truncation.spec.ts | 2 +- .../app/e2e/regression/session-queue.spec.ts | 4 +- .../regression/session-request-docks.spec.ts | 2 +- .../session-shell-completion.spec.ts | 2 +- .../session-timeline-collapse-state.spec.ts | 2 +- .../session-timeline-context-resize.spec.ts | 2 +- .../session-timeline-file-projection.spec.ts | 2 +- .../session-timeline-history-root.spec.ts | 4 +- .../session-timeline-hydration.spec.ts | 2 +- .../session-timeline-lifecycle-state.spec.ts | 2 +- .../regression/session-timeline-mount.spec.ts | 2 +- .../session-timeline-notices.spec.ts | 4 +- .../session-timeline-projection.spec.ts | 2 +- .../session-timeline-shell-outline.spec.ts | 2 +- .../session-timeline-tool-projection.spec.ts | 2 +- .../session-timeline-working.spec.ts | 2 +- .../subagent-child-navigation.spec.ts | 4 +- .../regression/tab-navigate-mousedown.spec.ts | 2 +- .../terminal-composer-focus.spec.ts | 2 +- .../regression/terminal-tab-switch.spec.ts | 2 +- .../e2e/regression/workspace-accent.spec.ts | 4 +- .../app/e2e/smoke/session-timeline.fixture.ts | 2 +- .../app/e2e/smoke/session-timeline.spec.ts | 2 +- packages/app/e2e/utils/command-palette.ts | 2 +- packages/app/e2e/utils/mock-server.ts | 2 +- packages/app/e2e/utils/sse-transport.ts | 2 +- packages/app/e2e/utils/waits.ts | 2 +- packages/app/package.json | 12 +- packages/app/src/app.tsx | 8 +- packages/app/src/composer/adapter.ts | 4 +- packages/app/src/composer/commands.tsx | 2 +- packages/app/src/composer/comments.tsx | 4 +- .../app/src/composer/composer.stories.tsx | 4 +- packages/app/src/composer/composer.tsx | 12 +- packages/app/src/composer/dropzone.tsx | 2 +- .../app/src/composer/editor/actions.test.ts | 2 +- packages/app/src/composer/editor/editor.tsx | 28 +- .../app/src/composer/editor/interaction.ts | 2 +- packages/app/src/composer/model.ts | 8 +- packages/app/src/composer/persistence.tsx | 4 +- packages/app/src/composer/prompt.test.ts | 2 +- packages/app/src/composer/prompt.ts | 4 +- packages/app/src/composer/request.test.ts | 2 +- packages/app/src/composer/request.ts | 2 +- packages/app/src/composer/schema.test.ts | 2 +- packages/app/src/composer/schema.ts | 6 +- packages/app/src/composer/state.test.ts | 2 +- packages/app/src/composer/submit.test.ts | 6 +- packages/app/src/composer/submit.ts | 8 +- packages/app/src/home/model.ts | 2 +- packages/app/src/home/projects/controller.tsx | 4 +- packages/app/src/home/projects/view.tsx | 12 +- packages/app/src/home/route.tsx | 2 +- packages/app/src/home/sessions/archive.ts | 2 +- .../app/src/home/sessions/command-palette.tsx | 2 +- packages/app/src/home/sessions/controller.tsx | 8 +- packages/app/src/home/sessions/index.test.ts | 2 +- packages/app/src/home/sessions/index.ts | 2 +- .../app/src/home/sessions/records.test.ts | 2 +- packages/app/src/home/sessions/records.ts | 2 +- packages/app/src/home/sessions/view.tsx | 18 +- packages/app/src/index.css | 6 +- packages/app/src/new-session/commands.tsx | 2 +- .../app/src/new-session/composer-adapter.ts | 6 +- .../app/src/new-session/project/selector.tsx | 6 +- packages/app/src/new-session/view.tsx | 6 +- packages/app/src/new-session/wordmark.tsx | 2 +- .../src/new-session/workspace/selector.tsx | 8 +- packages/app/src/providers/catalog/plugin.ts | 2 +- .../app/src/providers/connect/controller.ts | 2 +- .../src/providers/connect/dialog.stories.tsx | 4 +- packages/app/src/providers/connect/dialog.tsx | 18 +- .../app/src/providers/connect/mcp-dialog.tsx | 6 +- .../src/providers/connect/usage-exceeded.tsx | 6 +- .../app/src/providers/credentials/dialog.tsx | 12 +- packages/app/src/providers/models/manage.tsx | 18 +- packages/app/src/providers/models/models.tsx | 2 +- .../src/providers/models/select-dialog.tsx | 22 +- .../app/src/providers/models/selection.tsx | 4 +- .../src/providers/models/unpaid.stories.tsx | 4 +- packages/app/src/providers/models/unpaid.tsx | 14 +- packages/app/src/runtime/i18n/language.tsx | 130 +- .../app/src/runtime/persistence/base64.ts | 2 +- .../app/src/runtime/persistence/storage.ts | 2 +- .../app/src/runtime/platform/platform.tsx | 2 +- packages/app/src/runtime/server/api.ts | 2 +- .../app/src/runtime/server/client.test.ts | 2 +- packages/app/src/runtime/server/client.tsx | 4 +- packages/app/src/runtime/server/current.tsx | 2 +- packages/app/src/runtime/server/data.test.ts | 2 +- packages/app/src/runtime/server/data.ts | 4 +- .../app/src/runtime/server/errors.test.ts | 2 +- .../server/global-sync/bootstrap.test.ts | 2 +- .../runtime/server/global-sync/bootstrap.ts | 6 +- .../server/global-sync/child-store.test.ts | 2 +- .../runtime/server/global-sync/child-store.ts | 2 +- .../app/src/runtime/server/global-sync/mcp.ts | 2 +- .../src/runtime/server/global-sync/types.ts | 4 +- .../runtime/server/global-sync/utils.test.ts | 2 +- .../src/runtime/server/global-sync/utils.ts | 4 +- packages/app/src/runtime/server/health.ts | 2 +- packages/app/src/runtime/server/image.ts | 4 +- packages/app/src/runtime/server/registry.tsx | 2 +- packages/app/src/runtime/server/runtime.tsx | 4 +- packages/app/src/runtime/server/sync.tsx | 4 +- packages/app/src/runtime/server/types.ts | 2 +- packages/app/src/servers/connect/dialog.tsx | 10 +- .../app/src/servers/registry/row-menu.tsx | 6 +- packages/app/src/servers/registry/row.tsx | 4 +- packages/app/src/servers/wsl/context.tsx | 2 +- packages/app/src/servers/wsl/dialog.tsx | 14 +- packages/app/src/servers/wsl/settings.tsx | 12 +- .../app/src/session/browser/attachments.ts | 2 +- packages/app/src/session/browser/pane.tsx | 8 +- .../app/src/session/commands/export.test.ts | 2 +- packages/app/src/session/commands/export.ts | 2 +- .../app/src/session/commands/fork-dialog.tsx | 8 +- .../session/commands/use-session-commands.tsx | 4 +- .../app/src/session/composer/queue-panel.tsx | 8 +- .../app/src/session/composer/queue.test.ts | 2 +- packages/app/src/session/composer/queue.ts | 4 +- packages/app/src/session/composer/region.tsx | 8 +- packages/app/src/session/files/file-tabs.tsx | 18 +- .../app/src/session/files/file-tree-v2.tsx | 6 +- .../app/src/session/files/file-tree.test.ts | 8 +- packages/app/src/session/files/file-tree.tsx | 6 +- packages/app/src/session/files/list.tsx | 6 +- .../src/session/files/open-in-app-button.tsx | 12 +- .../src/session/files/session-context-tab.tsx | 18 +- .../files/session-file-browser-tab.tsx | 6 +- .../session/files/session-mobile-files.tsx | 6 +- .../src/session/files/session-side-panel.tsx | 18 +- .../session/files/session-sortable-tab.tsx | 4 +- packages/app/src/session/files/tab.tsx | 6 +- packages/app/src/session/handoff.test.ts | 2 +- packages/app/src/session/handoff.ts | 2 +- .../session/header/session-header-actions.tsx | 8 +- .../app/src/session/header/session-header.tsx | 2 +- .../src/session/incompatible-server-panel.tsx | 4 +- packages/app/src/session/list.test.ts | 2 +- packages/app/src/session/list.ts | 2 +- packages/app/src/session/model.test.ts | 2 +- packages/app/src/session/model.ts | 2 +- .../app/src/session/requests/auto-approve.ts | 4 +- .../app/src/session/requests/background.ts | 2 +- packages/app/src/session/requests/model.ts | 2 +- .../requests/session-permission-dock.tsx | 8 +- .../requests/session-question-dock.tsx | 12 +- .../requests/session-request-tree.test.ts | 2 +- .../session/requests/session-request-tree.ts | 2 +- .../requests/session-websearch-dock.tsx | 6 +- .../src/session/requests/websearch.test.ts | 2 +- .../app/src/session/requests/websearch.ts | 2 +- packages/app/src/session/revert.ts | 2 +- packages/app/src/session/review/model.ts | 8 +- .../app/src/session/review/panel-state.ts | 2 +- packages/app/src/session/review/panel.tsx | 10 +- .../src/session/review/review-diff-kinds.ts | 2 +- .../app/src/session/review/review-tab.tsx | 6 +- packages/app/src/session/review/view.tsx | 14 +- packages/app/src/session/route-error.tsx | 2 +- packages/app/src/session/route.tsx | 6 +- packages/app/src/session/screen.tsx | 2 +- packages/app/src/session/session-domain.ts | 2 +- .../src/session/session-identity-header.tsx | 14 +- packages/app/src/session/session-layout.ts | 2 +- .../src/session/session-screen.stories.tsx | 2 +- packages/app/src/session/story-model.tsx | 14 +- .../app/src/session/terminal/context.test.ts | 2 +- packages/app/src/session/terminal/context.tsx | 4 +- packages/app/src/session/terminal/panel.tsx | 10 +- packages/app/src/session/terminal/surface.tsx | 2 +- packages/app/src/session/terminal/tab.tsx | 4 +- .../app/src/session/terminal/terminal.tsx | 10 +- .../timeline/controller-projection.test.ts | 4 +- .../session/timeline/controller-projection.ts | 2 +- .../app/src/session/timeline/controller.tsx | 10 +- .../app/src/session/timeline/interaction.ts | 2 +- .../src/session/timeline/message-timeline.tsx | 28 +- .../app/src/session/timeline/model.test.ts | 2 +- packages/app/src/session/timeline/model.ts | 2 +- .../app/src/session/timeline/projection.ts | 4 +- .../app/src/session/timeline/search-bar.tsx | 4 +- .../src/session/timeline/search-controller.ts | 2 +- .../timeline/session-context-usage.tsx | 6 +- .../timeline/session-workspace-menu.tsx | 6 +- .../app/src/session/timeline/virtualizer.tsx | 4 +- packages/app/src/session/title.ts | 4 +- .../src/session/usage-exceeded-dialogs.tsx | 4 +- .../src/session/use-session-hash-scroll.ts | 2 +- .../src/settings/appearance/appearance.tsx | 4 +- .../settings/experimental/experimental.tsx | 4 +- .../app/src/settings/general/controllers.ts | 4 +- packages/app/src/settings/general/general.tsx | 8 +- .../app/src/settings/keybinds/keybinds.tsx | 8 +- packages/app/src/settings/model.test.ts | 2 +- packages/app/src/settings/model.tsx | 4 +- packages/app/src/settings/models/models.tsx | 12 +- .../settings/notifications/notifications.tsx | 4 +- .../app/src/settings/providers/extensions.tsx | 6 +- .../app/src/settings/providers/providers.tsx | 8 +- packages/app/src/settings/server-select.tsx | 2 +- packages/app/src/settings/servers/servers.tsx | 10 +- packages/app/src/settings/settings.css | 4 +- packages/app/src/settings/shell.tsx | 10 +- packages/app/src/settings/surface.tsx | 2 +- .../src/settings/timeline-detail.stories.tsx | 4 +- packages/app/src/settings/timeline-detail.tsx | 12 +- .../settings/workspaces/project-dialog.tsx | 16 +- .../workspaces/project-extensions.tsx | 6 +- .../src/settings/workspaces/project-model.ts | 4 +- .../app/src/settings/workspaces/projects.tsx | 6 +- .../src/settings/workspaces/workspaces.tsx | 18 +- packages/app/src/shell/commands/command.tsx | 4 +- packages/app/src/shell/commands/dialog.tsx | 14 +- packages/app/src/shell/commands/palette.ts | 6 +- packages/app/src/shell/debug/debug-bar.tsx | 2 +- packages/app/src/shell/errors/error.tsx | 8 +- packages/app/src/shell/layout/helpers.test.ts | 2 +- packages/app/src/shell/layout/helpers.ts | 4 +- .../app/src/shell/layout/project-icon.tsx | 2 +- .../src/shell/layout/session-tab-avatar.tsx | 4 +- .../app/src/shell/mobile-panel-drawer.tsx | 2 +- .../src/shell/notifications/notification.tsx | 6 +- .../app/src/shell/notifications/toast.tsx | 4 +- packages/app/src/shell/routes/routes.tsx | 2 +- .../src/shell/routes/session-ui-provider.tsx | 4 +- packages/app/src/shell/routes/session.ts | 2 +- packages/app/src/shell/shell.tsx | 2 +- packages/app/src/shell/state/layout.tsx | 4 +- packages/app/src/shell/status/body.tsx | 4 +- packages/app/src/shell/status/indicator.ts | 2 +- .../app/src/shell/status/status-popover.tsx | 6 +- packages/app/src/shell/tabs/tabs.tsx | 4 +- packages/app/src/shell/titlebar/tab-nav.tsx | 10 +- packages/app/src/shell/titlebar/tab-strip.tsx | 4 +- packages/app/src/shell/titlebar/tab-title.ts | 2 +- packages/app/src/shell/titlebar/titlebar.tsx | 10 +- .../app/src/shell/titlebar/windows-menu.tsx | 6 +- packages/app/src/shell/updates/highlights.tsx | 4 +- .../app/src/shell/updates/release-notes.tsx | 6 +- packages/app/src/workspaces/create.test.ts | 4 +- packages/app/src/workspaces/create.ts | 4 +- packages/app/src/workspaces/files/model.tsx | 6 +- .../app/src/workspaces/files/watcher.test.ts | 2 +- packages/app/src/workspaces/files/watcher.ts | 2 +- packages/app/src/workspaces/inventory.test.ts | 2 +- packages/app/src/workspaces/inventory.ts | 2 +- packages/app/src/workspaces/location.tsx | 6 +- packages/app/src/workspaces/paths.test.ts | 2 +- packages/app/src/workspaces/paths.ts | 2 +- .../app/src/workspaces/selection/dialog.tsx | 12 +- .../app/src/workspaces/selection/domain.ts | 2 +- .../app/src/workspaces/selection/picker.tsx | 4 +- packages/app/test-browser/auto-scroll.test.ts | 2 +- .../app/test-browser/command-palette.test.ts | 2 +- .../test-browser/composer-write-batch.test.ts | 2 +- .../app/test-browser/motion-spring.test.ts | 2 +- .../test-browser/review-panel-state.test.ts | 2 +- .../test-browser/session-background.test.ts | 2 +- .../test-browser/timeline-projection.test.ts | 4 +- packages/app/test-browser/toast-owner.test.ts | 2 +- .../test-browser/websearch-request.test.ts | 2 +- packages/app/vite.js | 2 +- packages/cli/AGENTS.md | 2 +- packages/cli/bin/opencode2.cjs | 2 +- packages/cli/package.json | 18 +- packages/cli/script/build-node.ts | 4 +- packages/cli/script/build.ts | 4 +- packages/cli/script/publish.ts | 16 +- packages/cli/script/service-smoke.ts | 4 +- packages/cli/src/acp/agent.ts | 2 +- packages/cli/src/acp/event.ts | 2 +- packages/cli/src/acp/permission.ts | 4 +- packages/cli/src/acp/service.ts | 6 +- packages/cli/src/acp/tool.ts | 2 +- packages/cli/src/commands/handlers/acp.ts | 4 +- packages/cli/src/commands/handlers/api.ts | 2 +- .../cli/src/commands/handlers/auth/form.ts | 2 +- .../cli/src/commands/handlers/auth/login.ts | 2 +- .../cli/src/commands/handlers/auth/logout.ts | 2 +- .../cli/src/commands/handlers/auth/shared.ts | 4 +- .../src/commands/handlers/console/login.ts | 6 +- .../cli/src/commands/handlers/debug/agents.ts | 4 +- .../cli/src/commands/handlers/debug/config.ts | 4 +- .../cli/src/commands/handlers/debug/paths.ts | 2 +- packages/cli/src/commands/handlers/default.ts | 8 +- packages/cli/src/commands/handlers/export.ts | 4 +- packages/cli/src/commands/handlers/import.ts | 8 +- packages/cli/src/commands/handlers/mcp/add.ts | 2 +- .../cli/src/commands/handlers/mcp/auth.ts | 4 +- .../cli/src/commands/handlers/mcp/list.ts | 4 +- .../cli/src/commands/handlers/mcp/logout.ts | 4 +- .../cli/src/commands/handlers/mcp/resolve.ts | 2 +- packages/cli/src/commands/handlers/mini.ts | 4 +- packages/cli/src/commands/handlers/models.ts | 4 +- packages/cli/src/commands/handlers/pair.ts | 4 +- .../cli/src/commands/handlers/plugin/add.ts | 6 +- .../src/commands/handlers/plugin/inventory.ts | 6 +- .../cli/src/commands/handlers/plugin/list.ts | 12 +- .../src/commands/handlers/plugin/remove.ts | 2 +- .../src/commands/handlers/plugin/update.ts | 2 +- .../src/commands/handlers/service/restart.ts | 2 +- .../src/commands/handlers/service/start.ts | 2 +- .../src/commands/handlers/service/status.ts | 2 +- .../cli/src/commands/handlers/service/stop.ts | 2 +- .../src/commands/handlers/session/delete.ts | 4 +- .../cli/src/commands/handlers/session/list.ts | 8 +- packages/cli/src/commands/handlers/stats.ts | 8 +- packages/cli/src/config/config.ts | 4 +- packages/cli/src/config/migrate.ts | 6 +- packages/cli/src/config/schema.ts | 2 +- packages/cli/src/cpu-profile.ts | 2 +- packages/cli/src/framework/runtime.ts | 4 +- packages/cli/src/heap.ts | 2 +- packages/cli/src/index.ts | 10 +- packages/cli/src/mini-host.ts | 6 +- packages/cli/src/mini.ts | 8 +- .../cli/src/node/plugin-runtime.effect.ts | 4 +- .../cli/src/node/plugin-runtime.promise.ts | 2 +- packages/cli/src/node/target.ts | 10 +- packages/cli/src/run/noninteractive.ts | 6 +- packages/cli/src/run/run.ts | 8 +- packages/cli/src/run/v1.ts | 2 +- packages/cli/src/server-process.ts | 12 +- .../cli/src/services/server-connection.ts | 4 +- packages/cli/src/services/service-config.ts | 6 +- .../cli/src/services/service-registration.ts | 2 +- packages/cli/src/services/standalone.ts | 6 +- .../cli/src/services/update-preflight.tsx | 6 +- packages/cli/src/services/updater.ts | 4 +- packages/cli/src/services/web-ui.ts | 2 +- packages/cli/src/session-target.ts | 4 +- packages/cli/src/ui/timeline.tsx | 2 +- packages/cli/test/acp/event-behavior.test.ts | 2 +- packages/cli/test/acp/event.test.ts | 2 +- packages/cli/test/acp/service-fixture.ts | 2 +- packages/cli/test/acp/service.test.ts | 2 +- packages/cli/test/acp/sse-fixture.ts | 2 +- packages/cli/test/config.test.ts | 4 +- packages/cli/test/cors.test.ts | 2 +- packages/cli/test/cpu-profile.test.ts | 2 +- .../cli/test/fixture/config-concurrency.ts | 2 +- packages/cli/test/fixture/standalone-owner.ts | 2 +- packages/cli/test/import-boundaries.test.ts | 10 +- packages/cli/test/mini-config.test.ts | 2 +- packages/cli/test/mini.test.ts | 2 +- packages/cli/test/run/noninteractive.test.ts | 2 +- packages/cli/test/server-connection.test.ts | 2 +- packages/cli/test/service.test.ts | 4 +- packages/cli/test/session-target.test.ts | 2 +- packages/cli/test/stats.test.ts | 2 +- packages/cli/test/updater-install.test.ts | 34 +- packages/cli/vite.node.config.ts | 12 +- packages/client/README.md | 12 +- packages/client/package.json | 8 +- packages/client/script/build.ts | 156 +-- packages/client/script/publish.ts | 2 +- packages/client/src/contract.ts | 2 +- packages/client/src/effect/api/api.ts | 74 +- packages/client/src/effect/client.ts | 2 +- .../client/src/effect/generated/client.ts | 2 +- packages/client/src/effect/index.ts | 58 +- packages/client/src/effect/rpc.ts | 6 +- packages/client/src/effect/service.ts | 2 +- packages/client/src/promise/rpc.ts | 2 +- packages/client/src/pty-handoff.ts | 2 +- packages/client/src/rpc-runtime.ts | 6 +- packages/client/src/solid/data.ts | 8 +- packages/client/test/api.types.ts | 2 +- .../client/test/contract-identity.test.ts | 14 +- .../client/test/import-boundaries.test.ts | 8 +- packages/client/test/worktree.test.ts | 2 +- packages/codemode/AGENTS.md | 2 +- packages/codemode/README.md | 4 +- packages/codemode/package.json | 2 +- packages/codemode/script/publish.ts | 2 +- packages/console/app/package.json | 10 +- packages/console/app/src/app.tsx | 4 +- .../app/src/component/email-signup.tsx | 2 +- .../console/app/src/component/go-referral.tsx | 2 +- packages/console/app/src/context/auth.ts | 8 +- .../console/app/src/context/auth.withActor.ts | 2 +- packages/console/app/src/context/i18n.tsx | 2 +- packages/console/app/src/context/language.tsx | 2 +- .../console/app/src/lib/referral-invite.ts | 4 +- packages/console/app/src/lib/salesforce.ts | 2 +- packages/console/app/src/lib/stats-proxy.ts | 2 +- .../console/app/src/routes/api/enterprise.ts | 4 +- .../api/support/actions/create-referral.ts | 6 +- .../api/support/actions/delete-account.ts | 6 +- .../api/support/actions/unblock-workspace.ts | 6 +- .../console/app/src/routes/bench/[id].tsx | 4 +- .../console/app/src/routes/bench/index.tsx | 4 +- .../app/src/routes/bench/submission.ts | 6 +- .../console/app/src/routes/black/index.tsx | 2 +- .../app/src/routes/black/subscribe/[plan].tsx | 14 +- .../console/app/src/routes/docs/[...path].ts | 2 +- packages/console/app/src/routes/docs/index.ts | 2 +- .../app/src/routes/honeycomb/webhook.ts | 4 +- packages/console/app/src/routes/s/[id].ts | 2 +- .../console/app/src/routes/stripe/webhook.ts | 20 +- .../app/src/routes/workspace-picker.tsx | 10 +- packages/console/app/src/routes/workspace.tsx | 4 +- .../[id]/billing/billing-section.tsx | 2 +- .../workspace/[id]/billing/black-section.tsx | 12 +- .../[id]/billing/monthly-limit-section.tsx | 2 +- .../[id]/billing/payment-section.tsx | 2 +- .../workspace/[id]/billing/redeem-section.tsx | 8 +- .../workspace/[id]/billing/reload-section.tsx | 6 +- .../routes/workspace/[id]/go/lite-section.tsx | 16 +- .../workspace/[id]/keys/key-section.tsx | 4 +- .../workspace/[id]/members/member-section.tsx | 6 +- .../routes/workspace/[id]/model-section.tsx | 4 +- .../workspace/[id]/new-user-section.tsx | 4 +- .../workspace/[id]/provider-section.tsx | 2 +- .../[id]/settings/settings-section.tsx | 6 +- .../workspace/[id]/usage/graph-section.tsx | 10 +- .../workspace/[id]/usage/usage-section.tsx | 2 +- .../app/src/routes/workspace/common.tsx | 12 +- .../app/src/routes/zen/go/v1/models.ts | 2 +- .../app/src/routes/zen/util/handler.ts | 36 +- .../app/src/routes/zen/util/ipRateLimiter.ts | 2 +- .../console/app/src/routes/zen/util/logger.ts | 2 +- .../src/routes/zen/util/modelTpmLimiter.ts | 4 +- .../src/routes/zen/util/modelTpsLimiter.ts | 4 +- .../src/routes/zen/util/provider/provider.ts | 2 +- .../routes/zen/util/providerBudgetTracker.ts | 2 +- .../console/app/src/routes/zen/util/redis.ts | 2 +- .../routes/zen/util/stickyProviderTracker.ts | 4 +- .../app/src/routes/zen/util/trialLimiter.ts | 6 +- .../app/src/routes/zen/util/usageBatcher.ts | 2 +- .../console/app/src/routes/zen/v1/models.ts | 10 +- .../console/app/test/providerUsage.test.ts | 2 +- packages/console/core/package.json | 6 +- .../console/core/script/create-api-key.ts | 2 +- packages/console/core/script/reset-db.ts | 2 +- packages/console/core/src/aws.ts | 2 +- packages/console/core/src/billing.ts | 2 +- packages/console/core/src/black.ts | 2 +- packages/console/core/src/drizzle/index.ts | 2 +- packages/console/core/src/lite.ts | 2 +- packages/console/core/src/model.ts | 2 +- packages/console/core/src/subscription.ts | 2 +- packages/console/core/src/user.ts | 2 +- packages/console/function/package.json | 6 +- packages/console/function/src/auth.ts | 20 +- .../console/function/src/log-processor.ts | 2 +- packages/console/function/src/stat.ts | 4 +- packages/console/mail/package.json | 2 +- packages/console/resource/package.json | 2 +- packages/console/support/package.json | 4 +- packages/console/support/src/lib/lookup.ts | 24 +- packages/core/README.md | 2 +- packages/core/package.json | 14 +- .../core/script/benchmark-location-memory.ts | 4 +- packages/core/script/benchmark-location.ts | 2 +- packages/core/script/publish.ts | 2 +- packages/core/src/agent.ts | 8 +- packages/core/src/aisdk-native.ts | 28 +- packages/core/src/aisdk.ts | 8 +- packages/core/src/app.ts | 2 +- packages/core/src/bus.ts | 16 +- packages/core/src/catalog.ts | 6 +- packages/core/src/codemode/instructions.ts | 2 +- packages/core/src/codemode/tool.ts | 4 +- packages/core/src/command.ts | 12 +- packages/core/src/config.ts | 8 +- packages/core/src/config/discovery.ts | 4 +- packages/core/src/config/normalize.ts | 30 +- packages/core/src/config/plugin/agent.ts | 10 +- packages/core/src/config/plugin/command.ts | 14 +- packages/core/src/config/plugin/compaction.ts | 2 +- .../core/src/config/plugin/entry-observer.ts | 2 +- packages/core/src/config/plugin/formatter.ts | 10 +- packages/core/src/config/plugin/image.ts | 2 +- .../core/src/config/plugin/instruction.ts | 6 +- .../src/config/plugin/location-watcher.ts | 2 +- packages/core/src/config/plugin/mcp.ts | 6 +- packages/core/src/config/plugin/policy.ts | 4 +- packages/core/src/config/plugin/provider.ts | 6 +- packages/core/src/config/plugin/reference.ts | 8 +- packages/core/src/config/plugin/shell.ts | 2 +- packages/core/src/config/plugin/skill.ts | 8 +- packages/core/src/config/plugin/snapshot.ts | 2 +- packages/core/src/config/plugin/source.ts | 10 +- .../core/src/config/plugin/tool-output.ts | 2 +- packages/core/src/config/plugin/websearch.ts | 2 +- packages/core/src/config/plugin/worktree.ts | 4 +- packages/core/src/config/variable.ts | 2 +- packages/core/src/config/watch.ts | 2 +- packages/core/src/credential.ts | 6 +- packages/core/src/database/database.ts | 4 +- packages/core/src/database/drizzle/README.md | 2 +- .../database/drizzle/effect-sqlite/driver.ts | 2 +- packages/core/src/database/migration.ts | 2 +- ...0260805200742_import_legacy_credentials.ts | 8 +- packages/core/src/database/sqlite.bun.ts | 2 +- packages/core/src/database/sqlite.node.ts | 2 +- packages/core/src/database/sqlite.ts | 2 +- packages/core/src/database/sqlite.workerd.ts | 4 +- .../core/src/database/v1-migration.bun.ts | 6 +- packages/core/src/effect/app-node-builder.ts | 4 +- packages/core/src/effect/app-node-platform.ts | 6 +- packages/core/src/environment/environment.ts | 4 +- .../core/src/environment/exec-defaults.ts | 2 +- packages/core/src/event-logger.ts | 2 +- packages/core/src/event/sql.ts | 2 +- packages/core/src/file-access.ts | 6 +- packages/core/src/file-mutation.ts | 6 +- packages/core/src/file-retention.ts | 2 +- packages/core/src/file.ts | 2 +- packages/core/src/filesystem.ts | 8 +- .../src/filesystem/location-watcher-policy.ts | 2 +- .../core/src/filesystem/location-watcher.ts | 6 +- packages/core/src/filesystem/search.ts | 4 +- packages/core/src/filesystem/watcher.ts | 6 +- packages/core/src/form.ts | 6 +- packages/core/src/formatter.ts | 4 +- packages/core/src/formatter/builtins.ts | 6 +- packages/core/src/generate.ts | 4 +- packages/core/src/git.ts | 6 +- packages/core/src/github-copilot/models.ts | 2 +- packages/core/src/id/id.ts | 2 +- packages/core/src/image.ts | 2 +- packages/core/src/instance.ts | 4 +- packages/core/src/instance/service.ts | 6 +- packages/core/src/instruction-discovery.ts | 2 +- packages/core/src/instructions/builtins.ts | 6 +- packages/core/src/instructions/index.ts | 2 +- packages/core/src/integration.ts | 8 +- packages/core/src/integration/connection.ts | 2 +- packages/core/src/job.ts | 2 +- packages/core/src/kv.ts | 2 +- packages/core/src/location-activity.ts | 2 +- packages/core/src/location-service-map.ts | 6 +- packages/core/src/location-services.ts | 2 +- packages/core/src/location.ts | 6 +- packages/core/src/mcp/client.ts | 4 +- packages/core/src/mcp/index.ts | 14 +- packages/core/src/mcp/instructions.ts | 2 +- packages/core/src/mcp/oauth.ts | 4 +- packages/core/src/modal/models.ts | 2 +- packages/core/src/model-resolver.ts | 59 +- packages/core/src/model.ts | 2 +- packages/core/src/models-dev.ts | 14 +- packages/core/src/permission.ts | 8 +- packages/core/src/permission/saved.ts | 6 +- packages/core/src/permission/sql.ts | 2 +- packages/core/src/persistent-pty/daemon.ts | 2 +- packages/core/src/persistent-pty/index.ts | 12 +- .../core/src/persistent-pty/pty-binding.ts | 1 + packages/core/src/plugin.ts | 8 +- packages/core/src/plugin/agent.ts | 2 +- packages/core/src/plugin/command.ts | 2 +- packages/core/src/plugin/hooks.ts | 14 +- packages/core/src/plugin/host.ts | 12 +- packages/core/src/plugin/instance.ts | 4 +- packages/core/src/plugin/internal.ts | 14 +- .../core/src/plugin/mcp-codemode-exclusion.ts | 2 +- packages/core/src/plugin/models-dev.ts | 6 +- packages/core/src/plugin/module.ts | 8 +- packages/core/src/plugin/optimize.ts | 6 +- packages/core/src/plugin/plan.ts | 10 +- packages/core/src/plugin/promise.ts | 2 +- .../src/plugin/provider/amazon-bedrock.ts | 4 +- .../core/src/plugin/provider/anthropic.ts | 2 +- packages/core/src/plugin/provider/azure.ts | 6 +- packages/core/src/plugin/provider/cerebras.ts | 4 +- .../plugin/provider/cloudflare-ai-gateway.ts | 4 +- .../plugin/provider/cloudflare-workers-ai.ts | 4 +- .../core/src/plugin/provider/configured.ts | 2 +- .../core/src/plugin/provider/digitalocean.ts | 4 +- packages/core/src/plugin/provider/dynamic.ts | 4 +- packages/core/src/plugin/provider/factory.ts | 4 +- .../src/plugin/provider/github-copilot.ts | 6 +- packages/core/src/plugin/provider/gitlab.ts | 2 +- .../core/src/plugin/provider/google-vertex.ts | 2 +- packages/core/src/plugin/provider/kilo.ts | 2 +- .../core/src/plugin/provider/llmgateway.ts | 2 +- packages/core/src/plugin/provider/lmstudio.ts | 6 +- packages/core/src/plugin/provider/modal.ts | 2 +- packages/core/src/plugin/provider/nvidia.ts | 2 +- packages/core/src/plugin/provider/ollama.ts | 6 +- .../src/plugin/provider/openai-compatible.ts | 2 +- packages/core/src/plugin/provider/openai.ts | 4 +- packages/core/src/plugin/provider/opencode.ts | 8 +- .../core/src/plugin/provider/openrouter.ts | 2 +- .../core/src/plugin/provider/sap-ai-core.ts | 4 +- .../core/src/plugin/provider/sdk-factory.ts | 4 +- .../src/plugin/provider/snowflake-cortex.ts | 2 +- packages/core/src/plugin/provider/vercel.ts | 2 +- packages/core/src/plugin/provider/vllm.ts | 6 +- packages/core/src/plugin/provider/xai.ts | 4 +- packages/core/src/plugin/provider/zenmux.ts | 2 +- packages/core/src/plugin/sdk.ts | 6 +- packages/core/src/plugin/service.ts | 4 +- packages/core/src/plugin/skill.ts | 4 +- packages/core/src/plugin/skill/opencode.md | 4 +- packages/core/src/plugin/source-directory.ts | 2 +- packages/core/src/plugin/supervisor.ts | 6 +- packages/core/src/plugin/update.ts | 6 +- packages/core/src/plugin/variant.ts | 4 +- packages/core/src/plugin/vcs/git.ts | 8 +- packages/core/src/plugin/vcs/hg.ts | 10 +- packages/core/src/plugin/warming.ts | 4 +- packages/core/src/plugin/websearch/exa.ts | 2 +- .../core/src/plugin/websearch/firecrawl.ts | 2 +- .../core/src/plugin/websearch/parallel.ts | 2 +- packages/core/src/plugin/websearch/tavily.ts | 2 +- packages/core/src/project.ts | 10 +- packages/core/src/project/schema.ts | 2 +- packages/core/src/provider.ts | 87 +- packages/core/src/pty.ts | 6 +- packages/core/src/pty/schema.ts | 2 +- packages/core/src/pty/ticket.ts | 6 +- packages/core/src/reference.ts | 8 +- packages/core/src/reference/instructions.ts | 2 +- packages/core/src/repository-cache.ts | 8 +- packages/core/src/ripgrep.ts | 6 +- packages/core/src/ripgrep/binary.ts | 10 +- packages/core/src/rpc.ts | 14 +- packages/core/src/schema.ts | 2 +- packages/core/src/session.ts | 18 +- packages/core/src/session/command.ts | 6 +- packages/core/src/session/compaction.ts | 8 +- packages/core/src/session/context.ts | 4 +- packages/core/src/session/environment.ts | 2 +- packages/core/src/session/error.ts | 6 +- packages/core/src/session/event.ts | 4 +- packages/core/src/session/execution.ts | 2 +- .../core/src/session/execution/restart.ts | 2 +- packages/core/src/session/generate.ts | 2 +- packages/core/src/session/inbox.ts | 4 +- packages/core/src/session/info.ts | 16 +- .../core/src/session/instruction-entry.ts | 4 +- packages/core/src/session/instructions.ts | 4 +- packages/core/src/session/message.ts | 4 +- packages/core/src/session/model-request.ts | 14 +- packages/core/src/session/model-transport.ts | 8 +- packages/core/src/session/move.ts | 8 +- packages/core/src/session/projector.ts | 16 +- packages/core/src/session/prompt.ts | 12 +- packages/core/src/session/provider-context.ts | 6 +- packages/core/src/session/runner/index.ts | 2 +- packages/core/src/session/runner/llm.ts | 4 +- packages/core/src/session/runner/model.ts | 8 +- .../src/session/runner/publish-llm-event.ts | 14 +- packages/core/src/session/runner/retry.ts | 8 +- packages/core/src/session/runner/step.ts | 6 +- .../core/src/session/runner/to-llm-message.ts | 8 +- packages/core/src/session/schema.ts | 4 +- packages/core/src/session/session.ts | 8 +- packages/core/src/session/shell.ts | 2 +- packages/core/src/session/skill.ts | 2 +- packages/core/src/session/sql.ts | 16 +- packages/core/src/session/stats.ts | 14 +- packages/core/src/session/store.ts | 10 +- packages/core/src/session/title.ts | 8 +- packages/core/src/session/to-session-error.ts | 6 +- packages/core/src/session/transfer.ts | 8 +- packages/core/src/session/usage.ts | 8 +- packages/core/src/shell.ts | 12 +- packages/core/src/shell/result.ts | 2 +- packages/core/src/shell/select.ts | 6 +- packages/core/src/skill.ts | 10 +- packages/core/src/skill/discovery.ts | 10 +- packages/core/src/skill/instructions.ts | 2 +- packages/core/src/snapshot.ts | 10 +- packages/core/src/tool-output.ts | 6 +- packages/core/src/tool.ts | 10 +- packages/core/src/tool/mcp.ts | 6 +- packages/core/src/tool/plugin/edit.ts | 8 +- packages/core/src/tool/plugin/file-diff.ts | 2 +- packages/core/src/tool/plugin/glob.ts | 4 +- packages/core/src/tool/plugin/grep.ts | 4 +- packages/core/src/tool/plugin/opencode.ts | 8 +- packages/core/src/tool/plugin/patch.ts | 10 +- packages/core/src/tool/plugin/question.ts | 6 +- packages/core/src/tool/plugin/read.ts | 6 +- packages/core/src/tool/plugin/shell.ts | 8 +- packages/core/src/tool/plugin/skill.ts | 6 +- packages/core/src/tool/plugin/subagent.ts | 4 +- packages/core/src/tool/plugin/webfetch.ts | 4 +- packages/core/src/tool/plugin/websearch.ts | 4 +- packages/core/src/tool/plugin/write.ts | 6 +- packages/core/src/tool/read-filesystem.ts | 2 +- packages/core/src/tool/runtime.ts | 4 +- packages/core/src/util/identifier.ts | 2 +- packages/core/src/util/process-lock.ts | 2 +- packages/core/src/v1/config/config.ts | 2 +- packages/core/src/v1/config/migrate.ts | 4 +- packages/core/src/v1/permission.ts | 4 +- packages/core/src/vcs.ts | 14 +- packages/core/src/websearch.ts | 10 +- packages/core/src/wellknown.ts | 6 +- packages/core/src/wellknown/plugin.ts | 2 +- packages/core/src/workspace.ts | 4 +- packages/core/src/workspace/driver.ts | 4 +- packages/core/src/workspace/sql.ts | 2 +- packages/core/src/worktree.ts | 12 +- packages/core/src/worktree/directory.ts | 2 +- packages/core/src/worktree/git.ts | 4 +- packages/core/src/worktree/refresh.ts | 2 +- packages/core/test/agent.test.ts | 18 +- packages/core/test/aisdk-native.test.ts | 50 +- packages/core/test/aisdk.test.ts | 16 +- packages/core/test/app.test.ts | 2 +- .../core/test/bus-session-routing.test.ts | 30 +- packages/core/test/bus.test.ts | 22 +- packages/core/test/catalog.test.ts | 28 +- packages/core/test/codemode.test.ts | 8 +- packages/core/test/codemode/catalog.test.ts | 4 +- .../core/test/codemode/instructions.test.ts | 12 +- packages/core/test/command.test.ts | 6 +- packages/core/test/config/agent.test.ts | 28 +- .../core/test/config/command-subagent.test.ts | 30 +- packages/core/test/config/command.test.ts | 46 +- packages/core/test/config/compaction.test.ts | 42 +- packages/core/test/config/config.test.ts | 40 +- .../core/test/config/entry-observer.test.ts | 6 +- packages/core/test/config/image.test.ts | 16 +- packages/core/test/config/model.test.ts | 6 +- .../core/test/config/normalization.test.ts | 4 +- packages/core/test/config/policy.test.ts | 16 +- .../core/test/config/provider-options.test.ts | 2 +- packages/core/test/config/provider.test.ts | 32 +- packages/core/test/config/reload.test.ts | 56 +- packages/core/test/config/shell.test.ts | 18 +- packages/core/test/config/skill.test.ts | 32 +- packages/core/test/config/snapshot.test.ts | 22 +- packages/core/test/config/tool-output.test.ts | 20 +- packages/core/test/config/warming.test.ts | 2 +- packages/core/test/config/watch.test.ts | 6 +- packages/core/test/config/websearch.test.ts | 16 +- packages/core/test/credential.test.ts | 20 +- packages/core/test/database-drizzle.test.ts | 2 +- packages/core/test/database-migration.test.ts | 26 +- .../test/effect-app-node-platform.test.ts | 4 +- .../test/effect/cross-spawn-spawner.test.ts | 4 +- packages/core/test/effect/keyed-mutex.test.ts | 2 +- .../layer-node/layer-node-types.test.ts | 4 +- .../test/effect/layer-node/layer-node.test.ts | 2 +- .../test/effect/layer-node/node-build.test.ts | 16 +- .../core/test/effect/observability.test.ts | 6 +- packages/core/test/environment.test.ts | 4 +- packages/core/test/event-logger.test.ts | 20 +- packages/core/test/file-access-path.test.ts | 12 +- packages/core/test/file-access.test.ts | 16 +- packages/core/test/file-mutation.test.ts | 16 +- .../core/test/filesystem/filesystem.test.ts | 6 +- packages/core/test/filesystem/ignore.test.ts | 2 +- .../location-watcher-policy.test.ts | 6 +- packages/core/test/filesystem/search.test.ts | 16 +- packages/core/test/filesystem/watcher.test.ts | 32 +- packages/core/test/fixture/config-nodes.ts | 6 +- .../test/fixture/durable-object-storage.ts | 2 +- .../core/test/fixture/effect-flock-worker.ts | 6 +- packages/core/test/fixture/environment.ts | 6 +- packages/core/test/fixture/flock-worker.ts | 2 +- packages/core/test/fixture/git.ts | 2 +- packages/core/test/fixture/global.ts | 2 +- packages/core/test/fixture/location.ts | 6 +- packages/core/test/fixture/mcp.ts | 8 +- packages/core/test/fixture/models.ts | 2 +- .../core/test/fixture/process-lock-worker.ts | 2 +- packages/core/test/fixture/prompt-location.ts | 20 +- packages/core/test/form.test.ts | 10 +- packages/core/test/formatter.test.ts | 20 +- packages/core/test/generate.test.ts | 22 +- packages/core/test/git.test.ts | 6 +- .../convert-to-copilot-messages.test.ts | 2 +- .../github-copilot/copilot-chat-model.test.ts | 2 +- .../core/test/github-copilot/models.test.ts | 6 +- .../openai-responses-language-model.test.ts | 4 +- .../openai-responses-prepare-tools.test.ts | 2 +- packages/core/test/instance-vanilla.test.ts | 20 +- .../core/test/instruction-discovery.test.ts | 20 +- packages/core/test/instruction-state.test.ts | 28 +- .../core/test/instructions/builtins.test.ts | 14 +- packages/core/test/instructions/index.test.ts | 2 +- packages/core/test/integration.test.ts | 14 +- packages/core/test/job.test.ts | 10 +- packages/core/test/kv.test.ts | 4 +- .../core/test/lib/environment-conformance.ts | 2 +- packages/core/test/lib/image.ts | 2 +- packages/core/test/lib/instructions.ts | 2 +- packages/core/test/lib/permission.ts | 2 +- packages/core/test/lib/project.ts | 8 +- packages/core/test/lib/tool.ts | 16 +- packages/core/test/lib/websearch.ts | 12 +- packages/core/test/location-activity.test.ts | 38 +- .../core/test/location-filesystem.test.ts | 10 +- packages/core/test/location-layer.test.ts | 40 +- packages/core/test/location.test.ts | 10 +- packages/core/test/logging.test.ts | 4 +- packages/core/test/mcp-instructions.test.ts | 12 +- packages/core/test/mcp-oauth.test.ts | 8 +- packages/core/test/mcp.test.ts | 50 +- packages/core/test/modal/models.test.ts | 10 +- packages/core/test/model-resolver.test.ts | 108 +- packages/core/test/model.test.ts | 4 +- packages/core/test/models.test.ts | 18 +- packages/core/test/network-guard.test.ts | 4 +- packages/core/test/npm-config.test.ts | 2 +- packages/core/test/npm.test.ts | 6 +- packages/core/test/patch.test.ts | 2 +- packages/core/test/permission.test.ts | 32 +- packages/core/test/plugin-failure.test.ts | 10 +- packages/core/test/plugin.test.ts | 18 +- packages/core/test/plugin/command.test.ts | 22 +- packages/core/test/plugin/fixture.ts | 70 +- .../core/test/plugin/fixtures/greeting.ts | 2 +- packages/core/test/plugin/host.ts | 24 +- .../plugin/mcp-codemode-exclusion.test.ts | 4 +- packages/core/test/plugin/models-dev.test.ts | 30 +- packages/core/test/plugin/module.test.ts | 10 +- packages/core/test/plugin/optimize.test.ts | 24 +- packages/core/test/plugin/plan.test.ts | 32 +- .../plugin/provider-amazon-bedrock.test.ts | 14 +- .../test/plugin/provider-anthropic.test.ts | 14 +- .../core/test/plugin/provider-azure.test.ts | 28 +- .../test/plugin/provider-cerebras.test.ts | 12 +- .../provider-cloudflare-ai-gateway.test.ts | 16 +- .../provider-cloudflare-workers-ai.test.ts | 16 +- .../test/plugin/provider-digitalocean.test.ts | 18 +- .../core/test/plugin/provider-dynamic.test.ts | 16 +- .../core/test/plugin/provider-factory.test.ts | 22 +- .../plugin/provider-github-copilot.test.ts | 30 +- .../core/test/plugin/provider-gitlab.test.ts | 12 +- .../plugin/provider-google-vertex.test.ts | 14 +- .../core/test/plugin/provider-kilo.test.ts | 12 +- .../test/plugin/provider-llmgateway.test.ts | 14 +- .../test/plugin/provider-lmstudio.test.ts | 24 +- .../core/test/plugin/provider-nvidia.test.ts | 12 +- .../core/test/plugin/provider-ollama.test.ts | 24 +- .../plugin/provider-openai-compatible.test.ts | 12 +- .../core/test/plugin/provider-openai.test.ts | 40 +- .../test/plugin/provider-opencode.test.ts | 24 +- .../test/plugin/provider-openrouter.test.ts | 14 +- .../test/plugin/provider-sap-ai-core.test.ts | 14 +- .../plugin/provider-snowflake-cortex.test.ts | 14 +- .../core/test/plugin/provider-vercel.test.ts | 14 +- .../core/test/plugin/provider-vllm.test.ts | 24 +- .../core/test/plugin/provider-xai.test.ts | 16 +- .../core/test/plugin/provider-zenmux.test.ts | 12 +- packages/core/test/plugin/skill.test.ts | 10 +- .../test/plugin/supervisor-reload.test.ts | 34 +- packages/core/test/plugin/supervisor.test.ts | 24 +- packages/core/test/plugin/variant.test.ts | 14 +- .../core/test/plugin/websearch-fixture.ts | 16 +- packages/core/test/plugin/websearch.test.ts | 12 +- packages/core/test/plugin/worktree.test.ts | 8 +- packages/core/test/preload.test.ts | 2 +- packages/core/test/process/process.test.ts | 4 +- packages/core/test/project.test.ts | 18 +- packages/core/test/provider.test.ts | 32 +- packages/core/test/pty/info-schema.test.ts | 2 +- packages/core/test/pty/protocol.test.ts | 2 +- packages/core/test/pty/pty-session.test.ts | 16 +- packages/core/test/pty/ticket.test.ts | 8 +- .../core/test/reference-instructions.test.ts | 8 +- packages/core/test/reference.test.ts | 18 +- packages/core/test/repository-cache.test.ts | 14 +- packages/core/test/repository.test.ts | 2 +- packages/core/test/ripgrep.test.ts | 8 +- packages/core/test/rpc-handler-errors.test.ts | 8 +- packages/core/test/session-activation.test.ts | 22 +- .../test/session-checkpoint-transport.test.ts | 8 +- packages/core/test/session-compact.test.ts | 40 +- .../test/session-compaction-transport.test.ts | 12 +- packages/core/test/session-compaction.test.ts | 56 +- packages/core/test/session-create.test.ts | 58 +- .../core/test/session-environment.test.ts | 6 +- packages/core/test/session-error.test.ts | 16 +- packages/core/test/session-execution.test.ts | 46 +- packages/core/test/session-generate.test.ts | 70 +- .../core/test/session-instructions.test.ts | 56 +- packages/core/test/session-log.test.ts | 30 +- .../core/test/session-message-update.test.ts | 38 +- .../test/session-model-request-hooks.test.ts | 24 +- .../core/test/session-model-request.test.ts | 4 +- .../test/session-model-transport-live.test.ts | 12 +- .../core/test/session-model-transport.test.ts | 8 +- packages/core/test/session-move.test.ts | 44 +- .../test/session-native-compaction.test.ts | 50 +- packages/core/test/session-owned.test.ts | 20 +- packages/core/test/session-projector.test.ts | 48 +- packages/core/test/session-prompt.test.ts | 56 +- .../test/session-provider-context.test.ts | 48 +- packages/core/test/session-remove.test.ts | 30 +- packages/core/test/session-revert.test.ts | 38 +- .../core/test/session-run-coordinator.test.ts | 4 +- .../core/test/session-runner-message.test.ts | 22 +- .../core/test/session-runner-recorded.test.ts | 78 +- .../test/session-runner-tool-events.test.ts | 42 +- packages/core/test/session-runner.test.ts | 124 +- packages/core/test/session-shell.test.ts | 22 +- packages/core/test/session-skill.test.ts | 44 +- packages/core/test/session-sql.types.ts | 2 +- packages/core/test/session-stats.test.ts | 32 +- packages/core/test/session-step.test.ts | 42 +- packages/core/test/session-store.test.ts | 26 +- .../core/test/session-system-prompt.test.ts | 2 +- packages/core/test/session-title.test.ts | 54 +- .../core/test/session-tool-progress.test.ts | 32 +- packages/core/test/session-view.test.ts | 30 +- packages/core/test/session-wait.test.ts | 22 +- packages/core/test/shared-schema.test.ts | 92 +- packages/core/test/shell-cleanup.test.ts | 10 +- packages/core/test/shell-parse.test.ts | 2 +- packages/core/test/shell-retention.test.ts | 12 +- packages/core/test/shell.test.ts | 6 +- packages/core/test/skill-discovery.test.ts | 6 +- packages/core/test/skill.test.ts | 12 +- packages/core/test/skill/instructions.test.ts | 10 +- packages/core/test/snapshot.test.ts | 14 +- packages/core/test/sqlite-workerd.test.ts | 6 +- packages/core/test/state-group.test.ts | 2 +- packages/core/test/state-replay.test.ts | 2 +- packages/core/test/state.test.ts | 2 +- packages/core/test/tool-edit.test.ts | 26 +- packages/core/test/tool-execute.test.ts | 14 +- packages/core/test/tool-output.test.ts | 14 +- packages/core/test/tool-patch.test.ts | 26 +- packages/core/test/tool-question.test.ts | 18 +- .../core/test/tool-read-filesystem.test.ts | 12 +- packages/core/test/tool-read.test.ts | 36 +- packages/core/test/tool-registry.test.ts | 22 +- packages/core/test/tool-schema.test.ts | 8 +- packages/core/test/tool-search.test.ts | 28 +- packages/core/test/tool-shell.test.ts | 68 +- packages/core/test/tool-skill.test.ts | 22 +- packages/core/test/tool-subagent.test.ts | 66 +- packages/core/test/tool-webfetch.test.ts | 18 +- packages/core/test/tool-websearch.test.ts | 24 +- packages/core/test/tool-write.test.ts | 26 +- packages/core/test/util/effect-flock.test.ts | 8 +- packages/core/test/util/flock.test.ts | 4 +- packages/core/test/util/process-lock.test.ts | 2 +- packages/core/test/util/which.test.ts | 2 +- packages/core/test/v1-migration.test.ts | 22 +- packages/core/test/vcs-hg.test.ts | 20 +- packages/core/test/vcs.test.ts | 26 +- packages/core/test/websearch.test.ts | 14 +- packages/core/test/wellknown.test.ts | 8 +- packages/core/test/workspace.test.ts | 14 +- packages/core/test/worktree.test.ts | 42 +- packages/desktop/electron.vite.config.ts | 2 +- packages/desktop/package.json | 10 +- packages/desktop/scripts/prepare.ts | 2 +- packages/desktop/scripts/utils.ts | 14 +- packages/desktop/src/main/browser-pane.ts | 6 +- packages/desktop/src/main/browser/network.ts | 4 +- packages/desktop/src/main/ipc-handlers/app.ts | 2 +- .../desktop/src/main/native/menu-actions.ts | 2 +- packages/desktop/src/main/native/menu.ts | 2 +- .../desktop/src/main/native/translations.ts | 2 +- .../src/main/service/background-service.ts | 2 +- packages/desktop/src/main/storage/store.ts | 2 +- packages/desktop/src/main/updater/index.ts | 2 +- packages/desktop/src/main/updater/live.ts | 2 +- .../desktop/src/main/windows/appearance.ts | 4 +- packages/desktop/src/main/wsl/ipc.ts | 2 +- packages/desktop/src/main/wsl/runtime.ts | 2 +- packages/desktop/src/main/wsl/servers.test.ts | 2 +- packages/desktop/src/main/wsl/servers.ts | 2 +- packages/desktop/src/renderer/api-types.ts | 10 +- packages/desktop/src/renderer/api.ts | 2 +- packages/desktop/src/renderer/desktop-app.tsx | 4 +- .../desktop/src/renderer/migration-status.tsx | 8 +- .../desktop/src/renderer/onboarding/index.tsx | 2 +- .../desktop/src/renderer/platform/files.ts | 2 +- .../desktop/src/renderer/platform/index.ts | 2 +- .../desktop/src/renderer/platform/menu.ts | 2 +- .../src/renderer/platform/notifications.ts | 2 +- .../desktop/src/renderer/platform/storage.ts | 2 +- .../desktop/src/renderer/platform/updater.ts | 2 +- .../desktop/src/renderer/startup/locale.ts | 2 +- .../desktop/src/renderer/startup/splash.tsx | 2 +- .../src/renderer/wsl/connections.test.ts | 2 +- .../desktop/src/renderer/wsl/connections.ts | 2 +- packages/desktop/test/browser/contract.ts | 4 +- packages/desktop/test/browser/native.ts | 2 +- packages/desktop/test/browser/plugin/index.ts | 8 +- packages/enterprise/package.json | 14 +- packages/enterprise/src/app.css | 6 +- packages/enterprise/src/app.tsx | 16 +- .../enterprise/src/core/share-document.ts | 6 +- packages/enterprise/src/core/share.ts | 2 +- packages/enterprise/src/core/storage.ts | 2 +- .../enterprise/src/routes/share/[shareID].tsx | 38 +- packages/enterprise/test/core/share.test.ts | 2 +- packages/function/package.json | 2 +- packages/http-recorder/README.md | 8 +- packages/http-recorder/package.json | 2 +- packages/http-recorder/script/build.ts | 2 +- .../http-recorder/script/verify-package.ts | 8 +- packages/http-recorder/src/cassette/store.ts | 2 +- packages/httpapi-codegen/README.md | 2 +- packages/httpapi-codegen/package.json | 2 +- packages/httpapi-codegen/src/index.ts | 8 +- .../httpapi-codegen/test/generated/client.ts | 2 +- .../httpapi-codegen/test/generated/event.ts | 2 +- .../httpapi-codegen/test/generated/session.ts | 2 +- .../httpapi-codegen/test/generated/system.ts | 2 +- packages/latex/package.json | 4 +- packages/latex/src/plugin.ts | 2 +- packages/merman/package.json | 4 +- packages/merman/src/plugin.ts | 2 +- packages/plugin-browser/package.json | 4 +- packages/plugin-browser/script/publish.ts | 2 +- packages/plugin-browser/src/connection.ts | 8 +- packages/plugin-browser/src/files.ts | 2 +- packages/plugin-browser/src/index.ts | 2 +- packages/plugin-browser/src/rpc.ts | 6 +- packages/plugin-browser/src/tools.ts | 4 +- packages/plugin/AGENTS.md | 2 +- packages/plugin/package.json | 18 +- packages/plugin/script/publish.ts | 2 +- packages/plugin/src/README.md | 4 +- packages/plugin/src/effect/PLAN.md | 6 +- packages/plugin/src/effect/README.md | 2 +- packages/plugin/src/effect/agent.ts | 4 +- packages/plugin/src/effect/aisdk.ts | 2 +- packages/plugin/src/effect/catalog.ts | 6 +- packages/plugin/src/effect/command.ts | 8 +- packages/plugin/src/effect/event.ts | 2 +- packages/plugin/src/effect/index.ts | 32 +- packages/plugin/src/effect/integration.ts | 8 +- packages/plugin/src/effect/mcp.ts | 4 +- packages/plugin/src/effect/permission.ts | 8 +- packages/plugin/src/effect/plugin.ts | 4 +- packages/plugin/src/effect/reference.ts | 4 +- packages/plugin/src/effect/rpc.ts | 6 +- packages/plugin/src/effect/session.ts | 18 +- packages/plugin/src/effect/skill.ts | 4 +- packages/plugin/src/effect/tool.ts | 8 +- packages/plugin/src/effect/vcs.ts | 6 +- packages/plugin/src/effect/websearch.ts | 4 +- packages/plugin/src/effect/worktree.ts | 2 +- packages/plugin/src/host.ts | 2 +- packages/plugin/src/promise/adapter.ts | 8 +- packages/plugin/src/promise/agent.ts | 4 +- packages/plugin/src/promise/aisdk.ts | 2 +- packages/plugin/src/promise/catalog.ts | 6 +- packages/plugin/src/promise/command.ts | 8 +- packages/plugin/src/promise/event.ts | 2 +- packages/plugin/src/promise/index.ts | 32 +- packages/plugin/src/promise/integration.ts | 8 +- packages/plugin/src/promise/mcp.ts | 4 +- packages/plugin/src/promise/permission.ts | 8 +- packages/plugin/src/promise/plugin.ts | 6 +- packages/plugin/src/promise/reference.ts | 4 +- packages/plugin/src/promise/rpc.ts | 6 +- packages/plugin/src/promise/session.ts | 18 +- packages/plugin/src/promise/skill.ts | 4 +- packages/plugin/src/promise/tool.ts | 12 +- packages/plugin/src/promise/vcs.ts | 6 +- packages/plugin/src/promise/websearch.ts | 4 +- packages/plugin/src/promise/worktree.ts | 2 +- packages/plugin/src/rpc.ts | 2 +- packages/plugin/src/source.ts | 2 +- packages/plugin/src/tui/context.ts | 4 +- packages/posts/package.json | 2 +- packages/protocol/package.json | 4 +- packages/protocol/script/publish.ts | 2 +- packages/protocol/src/api.ts | 2 +- packages/protocol/src/client.ts | 4 +- packages/protocol/src/errors.ts | 2 +- packages/protocol/src/groups/agent.ts | 4 +- packages/protocol/src/groups/command.ts | 4 +- packages/protocol/src/groups/config.ts | 2 +- packages/protocol/src/groups/credential.ts | 2 +- packages/protocol/src/groups/debug.ts | 2 +- packages/protocol/src/groups/event.ts | 8 +- packages/protocol/src/groups/form.ts | 4 +- packages/protocol/src/groups/fs.ts | 6 +- packages/protocol/src/groups/generate.ts | 2 +- packages/protocol/src/groups/integration.ts | 6 +- packages/protocol/src/groups/location.ts | 2 +- packages/protocol/src/groups/mcp.ts | 4 +- packages/protocol/src/groups/message.ts | 4 +- packages/protocol/src/groups/model.ts | 4 +- packages/protocol/src/groups/permission.ts | 12 +- .../protocol/src/groups/persistent-pty.ts | 8 +- packages/protocol/src/groups/plugin.ts | 4 +- packages/protocol/src/groups/project.ts | 2 +- packages/protocol/src/groups/provider.ts | 4 +- packages/protocol/src/groups/pty.ts | 6 +- packages/protocol/src/groups/reference.ts | 4 +- packages/protocol/src/groups/rpc.ts | 2 +- packages/protocol/src/groups/session.ts | 34 +- packages/protocol/src/groups/shell.ts | 6 +- packages/protocol/src/groups/skill.ts | 4 +- packages/protocol/src/groups/vcs.ts | 8 +- packages/protocol/src/groups/websearch.ts | 4 +- packages/protocol/src/groups/workspace.ts | 2 +- packages/protocol/src/groups/worktree.ts | 2 +- packages/protocol/test/session-cursor.test.ts | 2 +- packages/schema/AGENTS.md | 8 +- packages/schema/package.json | 2 +- packages/schema/script/publish.ts | 2 +- packages/script/package.json | 2 +- packages/script/src/index.ts | 2 +- packages/sdk/README.md | 18 +- packages/sdk/package.json | 20 +- packages/sdk/script/publish.ts | 2 +- packages/sdk/script/verify-package.ts | 14 +- packages/sdk/src/contracts.ts | 52 +- packages/sdk/src/effect/index.ts | 4 +- packages/sdk/src/effect/opencode.ts | 6 +- packages/sdk/src/effect/tool.ts | 6 +- packages/sdk/src/index.ts | 4 +- packages/sdk/src/internal/host.ts | 14 +- packages/sdk/src/internal/instances.ts | 16 +- packages/sdk/src/internal/workerd.ts | 4 +- packages/sdk/src/promise.ts | 10 +- packages/sdk/src/tool.ts | 6 +- packages/sdk/test/contract-identity.test.ts | 48 +- packages/sdk/test/embedded.test.ts | 14 +- packages/sdk/test/import-boundaries.test.ts | 2 +- packages/sdk/test/instances-effect.test.ts | 16 +- packages/sdk/test/instances-lifecycle.test.ts | 8 +- packages/server/package.json | 16 +- packages/server/script/publish.ts | 2 +- packages/server/src/api.ts | 2 +- packages/server/src/event-feed.ts | 6 +- packages/server/src/fetch.ts | 4 +- packages/server/src/handlers/agent.ts | 4 +- packages/server/src/handlers/command.ts | 2 +- packages/server/src/handlers/config.ts | 2 +- packages/server/src/handlers/credential.ts | 2 +- packages/server/src/handlers/debug.ts | 2 +- packages/server/src/handlers/event.ts | 4 +- packages/server/src/handlers/form.ts | 10 +- packages/server/src/handlers/fs.ts | 4 +- packages/server/src/handlers/generate.ts | 12 +- packages/server/src/handlers/integration.ts | 6 +- packages/server/src/handlers/location.ts | 2 +- packages/server/src/handlers/mcp.ts | 4 +- packages/server/src/handlers/message.ts | 6 +- packages/server/src/handlers/migration.ts | 2 +- packages/server/src/handlers/model.ts | 2 +- packages/server/src/handlers/permission.ts | 12 +- .../server/src/handlers/persistent-pty.ts | 8 +- packages/server/src/handlers/plugin.ts | 6 +- packages/server/src/handlers/project.ts | 6 +- packages/server/src/handlers/provider.ts | 4 +- packages/server/src/handlers/pty.ts | 12 +- packages/server/src/handlers/reference.ts | 2 +- packages/server/src/handlers/rpc.ts | 6 +- packages/server/src/handlers/session-error.ts | 4 +- packages/server/src/handlers/session.ts | 16 +- packages/server/src/handlers/shell.ts | 6 +- packages/server/src/handlers/skill.ts | 2 +- packages/server/src/handlers/vcs.ts | 4 +- packages/server/src/handlers/websearch.ts | 4 +- packages/server/src/handlers/workspace.ts | 4 +- packages/server/src/handlers/worktree.ts | 8 +- packages/server/src/location.ts | 12 +- .../server/src/middleware/authorization.ts | 10 +- .../server/src/middleware/form-location.ts | 8 +- .../server/src/middleware/schema-error.ts | 6 +- .../server/src/middleware/session-location.ts | 6 +- packages/server/src/options.ts | 6 +- packages/server/src/process.ts | 10 +- packages/server/src/pty-environment.ts | 2 +- packages/server/src/routes.ts | 68 +- packages/server/src/server-info.ts | 2 +- packages/server/src/workerd.ts | 24 +- packages/server/test/auth.test.ts | 2 +- packages/server/test/config.test.ts | 4 +- packages/server/test/event-feed.test.ts | 10 +- packages/server/test/fetch.test.ts | 10 +- .../test/fixture/worktree-delegate/index.ts | 2 +- .../test/fixture/worktree-plugin/index.ts | 2 +- packages/server/test/generate.test.ts | 6 +- packages/server/test/handler-policy.test.ts | 6 +- packages/server/test/options.test.ts | 2 +- packages/server/test/persistent-pty.test.ts | 4 +- .../server/test/plugin-activation.test.ts | 4 +- packages/server/test/provider.test.ts | 8 +- .../server/test/rpc-handler-errors.test.ts | 6 +- packages/server/test/session-import.test.ts | 2 +- .../server/test/session-instances.test.ts | 40 +- .../test/session-message-update.test.ts | 20 +- packages/server/test/vcs.test.ts | 2 +- packages/server/test/worktree.test.ts | 2 +- .../component-tests/markdown.fixture.tsx | 2 +- .../component-tests/read-image.fixture.tsx | 2 +- packages/session-ui/package.json | 8 +- .../performance/highlighting/build.ts | 4 +- .../performance/markdown-lifetime/fixture.tsx | 4 +- packages/session-ui/src/actions.ts | 2 +- .../src/components/apply-patch-file.ts | 2 +- .../session-ui/src/components/basic-tool.tsx | 8 +- .../src/components/dock-prompt.stories.tsx | 2 +- .../session-ui/src/components/dock-prompt.tsx | 2 +- .../session-ui/src/components/file-media.tsx | 2 +- .../session-ui/src/components/file-search.tsx | 4 +- .../session-ui/src/components/file-ssr.tsx | 2 +- packages/session-ui/src/components/file.tsx | 2 +- .../components/line-comment-annotations.tsx | 2 +- .../src/components/line-comment.tsx | 12 +- .../src/components/markdown-cache.tsx | 4 +- .../markdown-inline-code-kind.test.ts | 4 +- .../src/components/markdown.stories.tsx | 2 +- .../session-ui/src/components/markdown.tsx | 10 +- .../src/components/markdown.worker.ts | 4 +- .../session-ui/src/components/message-file.ts | 2 +- .../session-ui/src/components/message-nav.tsx | 4 +- .../session-ui/src/components/session-diff.ts | 4 +- .../src/components/session-error.tsx | 4 +- .../src/components/session-retry.tsx | 12 +- .../src/components/session-review.tsx | 32 +- .../src/components/timeline-separator.tsx | 2 +- .../src/components/tool-count-label.tsx | 4 +- .../components/tool-count-summary.stories.tsx | 2 +- .../src/components/tool-count-summary.tsx | 2 +- .../src/components/tool-error-card.tsx | 12 +- .../src/components/tool-status-title.tsx | 2 +- packages/session-ui/src/context/data.tsx | 4 +- packages/session-ui/src/document.ts | 2 +- .../session-ui/src/import-boundaries.test.ts | 8 +- .../session-ui/src/message/comment-card.tsx | 6 +- .../src/message/current-message.test.ts | 2 +- .../src/message/current-message.tsx | 2 +- .../src/message/current-tool-state.test.ts | 2 +- .../src/message/current-tool-state.ts | 2 +- .../src/message/message-content.tsx | 24 +- packages/session-ui/src/pierre/worker.ts | 2 +- .../src/storybook/current-session-fixtures.ts | 2 +- .../storybook/current-session-scenarios.ts | 2 +- .../src/storybook/current-session-story.tsx | 4 +- packages/session-ui/src/timeline/detail.ts | 2 +- .../src/timeline/projection.test.ts | 2 +- .../session-ui/src/timeline/projection.ts | 2 +- .../timeline/research-and-agents.stories.tsx | 2 +- .../src/timeline/rows-current.test.ts | 2 +- .../src/timeline/session-timeline-row.tsx | 6 +- .../src/timeline/terminal-work.stories.tsx | 2 +- .../src/timeline/timeline-row.stories.tsx | 2 +- .../session-ui/src/tools/tool-renderer.tsx | 28 +- .../line-comment-annotations-v2.tsx | 4 +- .../session-review-empty-changes-v2.tsx | 4 +- .../session-review-empty-no-git-v2.tsx | 6 +- .../session-review-file-preview-v2.tsx | 16 +- .../src/v2/components/session-review-v2.tsx | 18 +- packages/simulation/package.json | 12 +- packages/simulation/script/publish.ts | 2 +- packages/simulation/src/backend/index.ts | 8 +- packages/simulation/src/backend/openai.ts | 2 +- .../src/backend/simulated-provider.ts | 6 +- packages/simulation/src/manifest.ts | 2 +- packages/simulation/src/protocol/index.ts | 4 +- packages/simulation/test/openai.test.ts | 2 +- .../test/simulated-provider.test.ts | 30 +- packages/stats/app/package.json | 6 +- .../src/component/model-compare-detail.tsx | 6 +- packages/stats/app/src/context/i18n.tsx | 2 +- packages/stats/app/src/context/language.tsx | 2 +- .../stats/app/src/routes/[lab]/[model].tsx | 4 +- packages/stats/app/src/routes/[lab]/index.tsx | 4 +- .../stats/app/src/routes/compare-cards.tsx | 2 +- .../stats/app/src/routes/compare/index.tsx | 2 +- packages/stats/app/src/routes/index.tsx | 4 +- packages/stats/app/src/routes/sitemap.xml.ts | 4 +- packages/stats/core/package.json | 2 +- packages/stats/server/Dockerfile | 6 +- packages/stats/server/package.json | 4 +- packages/stats/server/src/stat-sync.ts | 8 +- .../mocks/app/context/server-sync.ts | 2 +- packages/storybook/.storybook/preview.tsx | 8 +- packages/storybook/package.json | 8 +- packages/storybook/playwright/README.md | 4 +- packages/theme/package.json | 2 +- packages/theme/script/publish.ts | 2 +- packages/tui/package.json | 22 +- packages/tui/src/app.tsx | 10 +- packages/tui/src/attention-sounds.bun.ts | 10 +- packages/tui/src/attention-sounds.node.ts | 2 +- packages/tui/src/attention.ts | 2 +- packages/tui/src/audio.d.ts | 2 +- .../tui/src/component/dialog-integration.tsx | 2 +- packages/tui/src/component/dialog-mcp.tsx | 2 +- .../tui/src/component/dialog-move-session.tsx | 2 +- packages/tui/src/component/dialog-open.tsx | 4 +- .../tui/src/component/dialog-session-list.tsx | 6 +- .../tui/src/component/dialog-shell-output.tsx | 2 +- packages/tui/src/component/dialog-skill.tsx | 2 +- .../dialog-workspace-file-changes.tsx | 2 +- .../src/component/dialog-worktree-name.tsx | 2 +- .../tui/src/component/prompt/autocomplete.tsx | 4 +- packages/tui/src/component/prompt/index.tsx | 4 +- packages/tui/src/component/terminal-pane.tsx | 2 +- packages/tui/src/config/index.tsx | 2 +- .../tui/src/config/new-session-location.ts | 2 +- packages/tui/src/context/attention.tsx | 2 +- packages/tui/src/context/client.tsx | 4 +- packages/tui/src/context/data.tsx | 10 +- packages/tui/src/context/event.ts | 2 +- packages/tui/src/context/keymap.tsx | 4 +- packages/tui/src/context/location.tsx | 2 +- packages/tui/src/context/panel.tsx | 2 +- packages/tui/src/context/route.tsx | 2 +- packages/tui/src/context/session-retention.ts | 2 +- packages/tui/src/context/session-tabs.tsx | 2 +- .../tui/src/context/session-terminals.tsx | 2 +- packages/tui/src/context/storage.tsx | 2 +- packages/tui/src/context/theme.tsx | 2 +- .../tui/src/feature-plugins/home/footer.tsx | 2 +- .../tui/src/feature-plugins/prompt/footer.tsx | 2 +- .../src/feature-plugins/sidebar/context.tsx | 2 +- .../src/feature-plugins/sidebar/footer.tsx | 2 +- .../tui/src/feature-plugins/sidebar/mcp.tsx | 2 +- .../system/diff-viewer-file-menu.tsx | 2 +- .../feature-plugins/system/diff-viewer.tsx | 8 +- .../feature-plugins/system/notifications.ts | 4 +- .../src/feature-plugins/system/plugins.tsx | 4 +- .../src/feature-plugins/system/stats-data.ts | 4 +- .../tui/src/feature-plugins/system/stats.tsx | 6 +- .../system/storybook/footer.tsx | 2 +- .../system/storybook/index.tsx | 2 +- .../system/storybook/merman-layouts.tsx | 2 +- .../system/storybook/one-cell-spinner.tsx | 2 +- .../storybook/session-location-missing.tsx | 2 +- .../system/storybook/session-tabs.tsx | 2 +- packages/tui/src/mini/catalog.shared.ts | 2 +- packages/tui/src/mini/demo.ts | 2 +- packages/tui/src/mini/form.shared.ts | 2 +- packages/tui/src/mini/runtime.boot.ts | 2 +- packages/tui/src/mini/runtime.lifecycle.ts | 2 +- packages/tui/src/mini/runtime.queue.ts | 2 +- packages/tui/src/mini/runtime.ts | 4 +- packages/tui/src/mini/session.shared.ts | 2 +- packages/tui/src/mini/stream-v2.image.ts | 2 +- packages/tui/src/mini/stream-v2.subagent.ts | 2 +- packages/tui/src/mini/stream-v2.transport.ts | 6 +- packages/tui/src/mini/theme.ts | 4 +- packages/tui/src/mini/tool.ts | 2 +- packages/tui/src/mini/types.ts | 4 +- packages/tui/src/plugin/api.tsx | 4 +- packages/tui/src/plugin/builtins.ts | 4 +- packages/tui/src/plugin/context.tsx | 8 +- packages/tui/src/plugin/discovery.ts | 2 +- packages/tui/src/plugin/render.tsx | 2 +- .../src/plugin/runtime-plugin-support.bun.ts | 4 +- packages/tui/src/plugin/source.ts | 2 +- packages/tui/src/prompt/attachment.ts | 2 +- packages/tui/src/prompt/codec.ts | 4 +- .../tui/src/prompt/directory-completion.ts | 4 +- packages/tui/src/prompt/history.tsx | 2 +- packages/tui/src/prompt/mention.ts | 2 +- .../routes/session/composer/subagents-tab.tsx | 4 +- packages/tui/src/routes/session/form.tsx | 2 +- packages/tui/src/routes/session/index.tsx | 6 +- .../src/routes/session/message-navigation.ts | 2 +- .../tui/src/routes/session/permission.tsx | 2 +- packages/tui/src/routes/session/rows.ts | 2 +- packages/tui/src/routes/session/sidebar.tsx | 2 +- packages/tui/src/simulation/semantics.ts | 2 +- packages/tui/src/theme/component.ts | 2 +- packages/tui/src/theme/index.ts | 2 +- packages/tui/src/theme/v1.ts | 4 +- packages/tui/src/util/connected-provider.ts | 2 +- packages/tui/src/util/form.ts | 2 +- packages/tui/src/util/session.ts | 2 +- packages/tui/src/util/tool-display.ts | 2 +- packages/tui/test/app-lifecycle.test.tsx | 6 +- .../cli/cmd/tui/integration-options.test.ts | 2 +- .../test/cli/cmd/tui/notifications.test.ts | 4 +- packages/tui/test/cli/tui/data.test.tsx | 8 +- .../test/cli/tui/dialog-integration.test.tsx | 2 +- .../tui/test/cli/tui/dialog-open.test.tsx | 2 +- .../tui/test/cli/tui/diff-viewer.test.tsx | 2 +- .../tui/test/cli/tui/input-scope.test.tsx | 2 +- .../test/cli/tui/message-navigation.test.ts | 2 +- .../tui/test/cli/tui/plugins-dialog.test.tsx | 4 +- .../tui/test/cli/tui/session-rows.test.ts | 2 +- packages/tui/test/cli/tui/theme-mode.test.tsx | 2 +- packages/tui/test/cli/tui/use-event.test.tsx | 2 +- packages/tui/test/compact-admission.test.tsx | 2 +- packages/tui/test/completion-notices.test.tsx | 2 +- .../component/dialog-shell-output.test.tsx | 2 +- .../test/context/session-retention.test.ts | 4 +- .../tui/test/context/session-tabs.test.tsx | 2 +- packages/tui/test/copy-session-id.test.tsx | 2 +- .../feature-plugins/prompt-footer.test.tsx | 2 +- .../feature-plugins/sidebar-context.test.tsx | 2 +- packages/tui/test/fixture/app.ts | 4 +- packages/tui/test/fixture/local.tsx | 2 +- packages/tui/test/fixture/tui-client.ts | 2 +- packages/tui/test/mini/catalog.shared.test.ts | 2 +- packages/tui/test/mini/entry.body.test.ts | 2 +- packages/tui/test/mini/fixture/catalog.ts | 2 +- packages/tui/test/mini/fixture/tool-part.ts | 2 +- packages/tui/test/mini/footer.view.test.tsx | 2 +- packages/tui/test/mini/form.shared.test.ts | 2 +- packages/tui/test/mini/runtime.boot.test.ts | 2 +- packages/tui/test/mini/runtime.test.ts | 2 +- .../tui/test/mini/scrollback.surface.test.ts | 2 +- packages/tui/test/mini/session.shared.test.ts | 2 +- .../tui/test/mini/stream-v2.transport.test.ts | 2 +- packages/tui/test/mini/theme.test.ts | 2 +- packages/tui/test/plugin-source.test.ts | 8 +- packages/tui/test/prompt/autocomplete.test.ts | 2 +- packages/tui/test/prompt/codec.test.ts | 2 +- packages/tui/test/prompt/mention.test.ts | 2 +- packages/tui/test/session-home.test.tsx | 2 +- .../tui/test/session-wheel-focus.test.tsx | 2 +- .../tui/test/simulation/semantics.test.ts | 4 +- packages/tui/test/stats.test.ts | 2 +- packages/tui/test/stats.view.test.tsx | 2 +- packages/tui/test/theme/v2/component.test.ts | 2 +- packages/tui/test/theme/v2/resolve.test.ts | 2 +- packages/tui/test/theme/v2/select.test.ts | 2 +- packages/tui/test/theme/v2/types.typecheck.ts | 2 +- packages/tui/test/theme/v2/v1-migrate.test.ts | 2 +- packages/tui/test/util/form.test.ts | 2 +- packages/tui/test/util/session.test.ts | 2 +- packages/ui/package.json | 2 +- packages/ui/script/publish.ts | 2 +- packages/ui/src/actions/button/button.tsx | 2 +- .../icon-button/icon-button.stories.tsx | 2 +- .../split-button/split-button.stories.tsx | 4 +- packages/ui/src/components/card.stories.tsx | 2 +- packages/ui/src/components/card.tsx | 2 +- packages/ui/src/components/collapsible.tsx | 2 +- .../src/components/image-preview.stories.tsx | 2 +- packages/ui/src/components/image-preview.tsx | 4 +- packages/ui/src/components/list.tsx | 6 +- packages/ui/src/components/popover.tsx | 4 +- .../sticky-accordion-header.stories.tsx | 2 +- .../components/sticky-accordion-header.tsx | 2 +- packages/ui/src/components/text-field.tsx | 6 +- .../components/thinking-heading.stories.tsx | 2 +- .../line-comment/line-comment.tsx | 4 +- .../ui/src/feedback/toast/toast.stories.tsx | 2 +- .../src/forms/checkbox/checkbox.stories.tsx | 2 +- packages/ui/src/forms/field/field.stories.tsx | 6 +- packages/ui/src/forms/field/field.tsx | 2 +- .../ui/src/forms/select/select.stories.tsx | 2 +- .../forms/text-input/text-input.stories.tsx | 2 +- .../ui/src/forms/text-input/text-input.tsx | 2 +- .../src/forms/textarea/textarea.stories.tsx | 2 +- .../ui/src/navigation/menu/menu.stories.tsx | 6 +- .../ui/src/overlays/dialog/dialog.stories.tsx | 2 +- .../src/overlays/tooltip/tooltip.stories.tsx | 2 +- packages/updates/package.json | 2 +- packages/util/docs/layer-node.md | 2 +- packages/util/package.json | 2 +- packages/util/script/publish.ts | 2 +- packages/util/tsconfig.dist.json | 4 +- packages/web/package.json | 2 +- packages/www/package.json | 2 +- .../src/docs/content/build/client/effect.mdx | 12 +- .../src/docs/content/build/client/index.mdx | 14 +- .../src/docs/content/build/plugins/cli.mdx | 16 +- .../src/docs/content/build/plugins/effect.mdx | 18 +- .../docs/content/build/plugins/effect/rpc.mdx | 6 +- .../src/docs/content/build/plugins/index.mdx | 22 +- .../src/docs/content/build/plugins/rpc.mdx | 8 +- .../src/docs/content/build/sdk/cloudflare.mdx | 10 +- .../www/src/docs/content/build/sdk/effect.mdx | 12 +- .../www/src/docs/content/build/sdk/index.mdx | 12 +- packages/www/src/docs/content/cli/plugins.mdx | 2 +- packages/www/src/docs/content/index.mdx | 8 +- packages/www/src/docs/content/migrate-v1.mdx | 2 +- packages/www/src/docs/content/models.mdx | 2 +- packages/www/src/docs/content/providers.mdx | 48 +- script/duplicate-pr.ts | 4 +- script/package-scope.md | 86 ++ script/publish.ts | 2 +- script/version.ts | 2 +- turbo.json | 48 +- 1543 files changed, 6718 insertions(+), 6627 deletions(-) create mode 100644 script/package-scope.md diff --git a/.changeset/directory-page-heading.md b/.changeset/directory-page-heading.md index f23be6e7d76..686e6c191e7 100644 --- a/.changeset/directory-page-heading.md +++ b/.changeset/directory-page-heading.md @@ -1,5 +1,5 @@ --- -"@opencode-ai/core": patch +"@opencode/core": patch --- Correct directory page headings when the read offset is zero. diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 19f0d44d09c..a90c3cd3d0a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -49,7 +49,7 @@ jobs: echo "app=true" >> "$GITHUB_OUTPUT" exit 0 fi - bun x turbo@2.10.2 ls --affected --filter=@opencode-ai/app --output=json > affected.json + bun x turbo@2.10.2 ls --affected --filter=@opencode/app --output=json > affected.json bun -e 'const result = await Bun.file("affected.json").json(); console.log(`app=${result.packages.count > 0}`)' >> "$GITHUB_OUTPUT" unit: @@ -132,10 +132,10 @@ jobs: timeout-minutes: 15 run: | if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then - bun turbo verify:package --filter=@opencode-ai/sdk + bun turbo verify:package --filter=@opencode/sdk exit 0 fi - bun turbo verify:package --affected --filter=@opencode-ai/sdk + bun turbo verify:package --affected --filter=@opencode/sdk env: TURBO_SCM_BASE: ${{ github.event_name == 'pull_request' && format('{0}^1', github.sha) || github.event.before }} TURBO_SCM_HEAD: ${{ github.sha }} diff --git a/.opencode/tool/github-pr-search.ts b/.opencode/tool/github-pr-search.ts index 8bc8c554aae..c0ca3794d0f 100644 --- a/.opencode/tool/github-pr-search.ts +++ b/.opencode/tool/github-pr-search.ts @@ -1,5 +1,5 @@ /// -import { tool } from "@opencode-ai/plugin" +import { tool } from "@opencode/plugin" async function githubFetch(endpoint: string, options: RequestInit = {}) { const response = await fetch(`https://api.github.com${endpoint}`, { ...options, diff --git a/.opencode/tool/github-triage.ts b/.opencode/tool/github-triage.ts index d610a81e497..c6f2f9c6875 100644 --- a/.opencode/tool/github-triage.ts +++ b/.opencode/tool/github-triage.ts @@ -1,5 +1,5 @@ /// -import { tool } from "@opencode-ai/plugin" +import { tool } from "@opencode/plugin" const TEAM = { tui: ["kommander", "simonklee"], diff --git a/AGENTS.md b/AGENTS.md index 56c2c23ba72..c2d74cf6548 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -84,9 +84,9 @@ const { a, b } = obj ### Imports - Never alias imports. Do not use `import { foo as bar } from "..."` or renamed imports like `resolve as pathResolve`. -- Never use type-position `import("...")` references such as `Schema.declare`. Only when two imports genuinely collide on a name and no other option exists, an aliased type import (`import type { Plugin as PluginDefinition } from "..."`) is permitted as a last resort — still strongly preferred not to. +- Never use type-position `import("...")` references such as `Schema.declare`. Only when two imports genuinely collide on a name and no other option exists, an aliased type import (`import type { Plugin as PluginDefinition } from "..."`) is permitted as a last resort — still strongly preferred not to. - Never use star imports. Do not use `import * as Foo from "..."` or `import type * as Foo from "..."`. -- If a namespace-style value is needed, import the module's own exported namespace by name, for example `import { Project } from "@opencode-ai/core/project"`, then reference `Project.ID`. +- If a namespace-style value is needed, import the module's own exported namespace by name, for example `import { Project } from "@opencode/core/project"`, then reference `Project.ID`. - Prefer dynamic imports for heavy modules that are only needed in selected code paths, especially in startup-sensitive entrypoints. Destructure dynamic import bindings near the top of the narrowest scope that needs them so they read like normal imports. Avoid inline chains such as `await import("./module").then((mod) => mod.value())` or `(await import("./module")).value()`. Keep branch-specific imports inside the branch that needs them to preserve lazy loading. ### Variables diff --git a/bun.lock b/bun.lock index 16f51aa7c64..2afb0ce01d6 100644 --- a/bun.lock +++ b/bun.lock @@ -6,8 +6,8 @@ "name": "opencode", "dependencies": { "@aws-sdk/client-s3": "3.933.0", - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/script": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/script": "workspace:*", "heap-snapshot-toolkit": "1.1.3", "typescript": "catalog:", }, @@ -30,11 +30,11 @@ }, }, "packages/ai": { - "name": "@opencode-ai/ai", + "name": "@opencode/ai", "version": "1.17.20", "dependencies": { "@aws-sdk/credential-providers": "3.1057.0", - "@opencode-ai/schema": "workspace:*", + "@opencode/schema": "workspace:*", "@smithy/eventstream-codec": "4.2.14", "@smithy/util-utf8": "4.2.2", "aws4fetch": "1.0.20", @@ -44,7 +44,7 @@ "devDependencies": { "@clack/prompts": "1.0.0-alpha.1", "@effect/platform-node": "catalog:", - "@opencode-ai/http-recorder": "workspace:*", + "@opencode/http-recorder": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:", @@ -52,7 +52,7 @@ }, }, "packages/app": { - "name": "@opencode-ai/app", + "name": "@opencode/app", "version": "1.18.15", "dependencies": { "@corvu/drawer": "catalog:", @@ -62,12 +62,12 @@ "@dnd-kit/solid": "0.5.0", "@ibm/plex": "6.4.1", "@kobalte/core": "catalog:", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/session-ui": "workspace:*", - "@opencode-ai/ui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", "@opencode/plugin-browser": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/session-ui": "workspace:*", + "@opencode/ui": "workspace:*", + "@opencode/util": "workspace:*", "@pierre/trees": "1.0.0-beta.4", "@sentry/solid": "catalog:", "@solid-primitives/event-bus": "1.1.2", @@ -109,7 +109,7 @@ }, }, "packages/cli": { - "name": "@opencode-ai/cli", + "name": "@opencode/cli", "version": "1.18.4", "bin": { "opencode2": "./bin/opencode2.cjs", @@ -118,13 +118,13 @@ "@agentclientprotocol/sdk": "1.2.1", "@clack/prompts": "1.0.0-alpha.1", "@effect/platform-node": "catalog:", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/plugin": "workspace:*", "@opencode-ai/pty": "0.1.13", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/server": "workspace:*", - "@opencode-ai/tui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/server": "workspace:*", + "@opencode/tui": "workspace:*", + "@opencode/util": "workspace:*", "@opentui/core": "catalog:", "@opentui/solid": "catalog:", "@parcel/watcher": "2.5.1", @@ -152,8 +152,8 @@ "@lydell/node-pty-linux-x64": "1.2.0-beta.12", "@lydell/node-pty-win32-arm64": "1.2.0-beta.12", "@lydell/node-pty-win32-x64": "1.2.0-beta.12", - "@opencode-ai/protocol": "workspace:*", - "@opencode-ai/script": "workspace:*", + "@opencode/protocol": "workspace:*", + "@opencode/script": "workspace:*", "@parcel/watcher-darwin-arm64": "2.5.1", "@parcel/watcher-linux-arm64-glibc": "2.5.1", "@parcel/watcher-linux-x64-glibc": "2.5.1", @@ -172,15 +172,15 @@ }, }, "packages/client": { - "name": "@opencode-ai/client", + "name": "@opencode/client", "version": "1.17.13", "dependencies": { - "@opencode-ai/protocol": "workspace:*", - "@opencode-ai/schema": "workspace:*", + "@opencode/protocol": "workspace:*", + "@opencode/schema": "workspace:*", }, "devDependencies": { "@effect/platform-node": "catalog:", - "@opencode-ai/httpapi-codegen": "workspace:*", + "@opencode/httpapi-codegen": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:", @@ -198,7 +198,7 @@ ], }, "packages/codemode": { - "name": "@opencode-ai/codemode", + "name": "@opencode/codemode", "version": "1.18.4", "dependencies": { "acorn": "8.15.0", @@ -212,7 +212,7 @@ }, }, "packages/console/app": { - "name": "@opencode-ai/console-app", + "name": "@opencode/console-app", "version": "1.18.15", "dependencies": { "@cloudflare/vite-plugin": "1.15.2", @@ -220,10 +220,10 @@ "@jsx-email/render": "1.1.1", "@kobalte/core": "catalog:", "@openauthjs/openauth": "catalog:", - "@opencode-ai/console-core": "workspace:*", - "@opencode-ai/console-mail": "workspace:*", - "@opencode-ai/console-resource": "workspace:*", - "@opencode-ai/ui": "workspace:*", + "@opencode/console-core": "workspace:*", + "@opencode/console-mail": "workspace:*", + "@opencode/console-resource": "workspace:*", + "@opencode/ui": "workspace:*", "@smithy/eventstream-codec": "4.2.7", "@smithy/util-utf8": "4.2.0", "@solidjs/meta": "catalog:", @@ -248,13 +248,13 @@ }, }, "packages/console/core": { - "name": "@opencode-ai/console-core", + "name": "@opencode/console-core", "version": "1.18.15", "dependencies": { "@aws-sdk/client-sts": "3.782.0", "@jsx-email/render": "1.1.1", - "@opencode-ai/console-mail": "workspace:*", - "@opencode-ai/console-resource": "workspace:*", + "@opencode/console-mail": "workspace:*", + "@opencode/console-resource": "workspace:*", "@planetscale/database": "1.19.0", "aws4fetch": "1.0.20", "drizzle-orm": "catalog:", @@ -275,12 +275,12 @@ }, }, "packages/console/function": { - "name": "@opencode-ai/console-function", + "name": "@opencode/console-function", "version": "1.18.15", "dependencies": { "@openauthjs/openauth": "0.0.0-20250322224806", - "@opencode-ai/console-core": "workspace:*", - "@opencode-ai/console-resource": "workspace:*", + "@opencode/console-core": "workspace:*", + "@opencode/console-resource": "workspace:*", "zod": "catalog:", }, "devDependencies": { @@ -292,7 +292,7 @@ }, }, "packages/console/mail": { - "name": "@opencode-ai/console-mail", + "name": "@opencode/console-mail", "version": "1.18.15", "dependencies": { "@jsx-email/all": "2.2.3", @@ -304,7 +304,7 @@ }, }, "packages/console/resource": { - "name": "@opencode-ai/console-resource", + "name": "@opencode/console-resource", "dependencies": { "@cloudflare/workers-types": "catalog:", }, @@ -316,11 +316,11 @@ }, }, "packages/console/support": { - "name": "@opencode-ai/console-support", + "name": "@opencode/console-support", "version": "1.18.15", "dependencies": { "@cloudflare/vite-plugin": "1.15.2", - "@opencode-ai/console-core": "workspace:*", + "@opencode/console-core": "workspace:*", "@solidjs/meta": "catalog:", "@solidjs/router": "catalog:", "@solidjs/start": "catalog:", @@ -336,7 +336,7 @@ }, }, "packages/core": { - "name": "@opencode-ai/core", + "name": "@opencode/core", "version": "1.18.4", "dependencies": { "@ai-sdk/alibaba": "1.0.17", @@ -355,13 +355,13 @@ "@ff-labs/fff-node": "0.10.5", "@lydell/node-pty": "catalog:", "@modelcontextprotocol/sdk": "1.29.0", - "@opencode-ai/ai": "workspace:*", - "@opencode-ai/codemode": "workspace:*", - "@opencode-ai/plugin": "workspace:*", "@opencode-ai/pty": "0.1.13", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/ai": "workspace:*", + "@opencode/codemode": "workspace:*", + "@opencode/plugin": "workspace:*", "@opencode/plugin-browser": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/util": "workspace:*", "@parcel/watcher": "2.5.1", "@silvia-odwyer/photon-node": "0.3.4", "@standard-schema/spec": "catalog:", @@ -391,7 +391,7 @@ "devDependencies": { "@effect/platform-node": "catalog:", "@effect/sql-sqlite-bun": "catalog:", - "@opencode-ai/http-recorder": "workspace:*", + "@opencode/http-recorder": "workspace:*", "@parcel/watcher-darwin-arm64": "2.5.1", "@parcel/watcher-darwin-x64": "2.5.1", "@parcel/watcher-linux-arm64-glibc": "2.5.1", @@ -408,7 +408,7 @@ }, }, "packages/desktop": { - "name": "@opencode-ai/desktop", + "name": "@opencode/desktop", "version": "1.18.15", "dependencies": { "@zip.js/zip.js": "2.7.62", @@ -423,11 +423,11 @@ "@brendonovich/vite-plugin-opencode": "0.1.3", "@effect/platform-node": "catalog:", "@lydell/node-pty": "catalog:", - "@opencode-ai/app": "workspace:*", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/ui": "workspace:*", + "@opencode/app": "workspace:*", + "@opencode/client": "workspace:*", "@opencode/plugin-browser": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/ui": "workspace:*", "@sentry/solid": "catalog:", "@sentry/vite-plugin": "catalog:", "@solid-primitives/storage": "catalog:", @@ -460,17 +460,17 @@ }, }, "packages/enterprise": { - "name": "@opencode-ai/enterprise", + "name": "@opencode/enterprise", "version": "1.18.15", "dependencies": { "@hono/standard-validator": "catalog:", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/schema": "workspace:*", "@opencode-ai/sdk": "1.18.21", - "@opencode-ai/session-ui": "workspace:*", - "@opencode-ai/ui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/session-ui": "workspace:*", + "@opencode/ui": "workspace:*", + "@opencode/util": "workspace:*", "@pierre/diffs": "catalog:", "@solidjs/meta": "catalog:", "@solidjs/router": "catalog:", @@ -497,7 +497,7 @@ }, }, "packages/function": { - "name": "@opencode-ai/function", + "name": "@opencode/function", "version": "1.18.15", "dependencies": { "@octokit/auth-app": "8.0.1", @@ -513,7 +513,7 @@ }, }, "packages/http-recorder": { - "name": "@opencode-ai/http-recorder", + "name": "@opencode/http-recorder", "version": "1.18.15", "dependencies": { "@effect/platform-node-shared": "4.0.0-rc.112", @@ -532,7 +532,7 @@ }, }, "packages/httpapi-codegen": { - "name": "@opencode-ai/httpapi-codegen", + "name": "@opencode/httpapi-codegen", "version": "0.0.0", "dependencies": { "effect": "catalog:", @@ -545,10 +545,10 @@ }, }, "packages/latex": { - "name": "@opencode-ai/latex", + "name": "@opencode/latex", "version": "0.0.0", "dependencies": { - "@opencode-ai/plugin": "workspace:*", + "@opencode/plugin": "workspace:*", "@opentui/core": "catalog:", "string-width": "catalog:", }, @@ -559,10 +559,10 @@ }, }, "packages/merman": { - "name": "@opencode-ai/merman", + "name": "@opencode/merman", "version": "0.0.0", "dependencies": { - "@opencode-ai/plugin": "workspace:*", + "@opencode/plugin": "workspace:*", "@opentui/core": "catalog:", "entities": "7.0.1", "string-width": "catalog:", @@ -574,21 +574,21 @@ }, }, "packages/plugin": { - "name": "@opencode-ai/plugin", + "name": "@opencode/plugin", "version": "1.18.15", "dependencies": { "@ai-sdk/provider": "3.0.8", - "@opencode-ai/ai": "workspace:*", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/protocol": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/ai": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/protocol": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/util": "workspace:*", "@standard-schema/spec": "catalog:", "effect": "catalog:", "zod": "catalog:", }, "devDependencies": { - "@opencode-ai/theme": "workspace:*", + "@opencode/theme": "workspace:*", "@opentui/core": "catalog:", "@opentui/solid": "catalog:", "@tsconfig/bun": "catalog:", @@ -600,13 +600,13 @@ "typescript": "catalog:", }, "peerDependencies": { - "@opencode-ai/theme": "workspace:*", + "@opencode/theme": "workspace:*", "@opentui/core": ">=0.5.10", "@opentui/solid": ">=0.5.10", "solid-js": ">=1.9.0", }, "optionalPeers": [ - "@opencode-ai/theme", + "@opencode/theme", "@opentui/core", "@opentui/solid", "solid-js", @@ -616,8 +616,8 @@ "name": "@opencode/plugin-browser", "version": "0.0.0", "dependencies": { - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/schema": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/schema": "workspace:*", "effect": "catalog:", }, "devDependencies": { @@ -628,7 +628,7 @@ }, }, "packages/posts": { - "name": "@opencode-ai/posts", + "name": "@opencode/posts", "dependencies": { "@astrojs/mdx": "7.0.5", "@fontsource/commit-mono": "5.3.0", @@ -643,10 +643,10 @@ }, }, "packages/protocol": { - "name": "@opencode-ai/protocol", + "name": "@opencode/protocol", "version": "1.17.11", "dependencies": { - "@opencode-ai/schema": "workspace:*", + "@opencode/schema": "workspace:*", "effect": "catalog:", }, "devDependencies": { @@ -658,7 +658,7 @@ }, }, "packages/schema": { - "name": "@opencode-ai/schema", + "name": "@opencode/schema", "version": "1.17.11", "dependencies": { "@standard-schema/spec": "catalog:", @@ -672,7 +672,7 @@ }, }, "packages/script": { - "name": "@opencode-ai/script", + "name": "@opencode/script", "dependencies": { "semver": "^7.6.3", }, @@ -682,56 +682,56 @@ }, }, "packages/sdk": { - "name": "@opencode-ai/sdk", + "name": "@opencode/sdk", "version": "1.18.4", "dependencies": { - "@opencode-ai/client": "workspace:*", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/server": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/server": "workspace:*", + "@opencode/util": "workspace:*", "effect": "catalog:", }, "devDependencies": { - "@opencode-ai/ai": "workspace:*", - "@opencode-ai/httpapi-codegen": "workspace:*", - "@opencode-ai/protocol": "workspace:*", + "@opencode/ai": "workspace:*", + "@opencode/httpapi-codegen": "workspace:*", + "@opencode/protocol": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:", }, }, "packages/server": { - "name": "@opencode-ai/server", + "name": "@opencode/server", "version": "1.18.4", "dependencies": { "@effect/platform-node": "catalog:", "@effect/platform-node-shared": "catalog:", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/protocol": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/simulation": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/protocol": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/simulation": "workspace:*", + "@opencode/util": "workspace:*", "drizzle-orm": "catalog:", "effect": "catalog:", }, "devDependencies": { - "@opencode-ai/client": "workspace:*", - "@opencode-ai/plugin": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/plugin": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:", }, }, "packages/session-ui": { - "name": "@opencode-ai/session-ui", + "name": "@opencode/session-ui", "version": "1.18.15", "dependencies": { "@kobalte/core": "catalog:", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/ui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/ui": "workspace:*", + "@opencode/util": "workspace:*", "@pierre/diffs": "catalog:", "@shikijs/stream": "catalog:", "@solid-primitives/event-listener": "catalog:", @@ -760,14 +760,14 @@ }, }, "packages/simulation": { - "name": "@opencode-ai/simulation", + "name": "@opencode/simulation", "version": "1.17.13", "dependencies": { - "@opencode-ai/ai": "workspace:*", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/protocol": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/ai": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/protocol": "workspace:*", + "@opencode/util": "workspace:*", "@opentui/core": "catalog:", "effect": "catalog:", "ws": "8.21.0", @@ -780,13 +780,13 @@ }, }, "packages/stats/app": { - "name": "@opencode-ai/stats-app", + "name": "@opencode/stats-app", "version": "1.18.15", "dependencies": { "@ibm/plex": "6.4.1", "@kobalte/core": "catalog:", - "@opencode-ai/stats-core": "workspace:*", - "@opencode-ai/ui": "workspace:*", + "@opencode/stats-core": "workspace:*", + "@opencode/ui": "workspace:*", "@solidjs/meta": "catalog:", "@solidjs/router": "catalog:", "@solidjs/start": "catalog:", @@ -814,7 +814,7 @@ }, }, "packages/stats/core": { - "name": "@opencode-ai/stats-core", + "name": "@opencode/stats-core", "version": "1.18.15", "dependencies": { "@aws-sdk/client-athena": "3.933.0", @@ -833,12 +833,12 @@ }, }, "packages/stats/server": { - "name": "@opencode-ai/stats-server", + "name": "@opencode/stats-server", "version": "1.18.15", "dependencies": { "@aws-sdk/client-firehose": "3.933.0", "@effect/platform-node": "catalog:", - "@opencode-ai/stats-core": "workspace:*", + "@opencode/stats-core": "workspace:*", "effect": "catalog:", "sst": "catalog:", }, @@ -851,11 +851,11 @@ }, }, "packages/storybook": { - "name": "@opencode-ai/storybook", + "name": "@opencode/storybook", "devDependencies": { - "@opencode-ai/client": "workspace:*", - "@opencode-ai/session-ui": "workspace:*", - "@opencode-ai/ui": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/session-ui": "workspace:*", + "@opencode/ui": "workspace:*", "@playwright/test": "catalog:", "@solidjs/meta": "catalog:", "@storybook/addon-a11y": "10.4.4", @@ -879,7 +879,7 @@ }, }, "packages/theme": { - "name": "@opencode-ai/theme", + "name": "@opencode/theme", "version": "0.0.0", "dependencies": { "@opentui/core": "catalog:", @@ -893,19 +893,19 @@ }, }, "packages/tui": { - "name": "@opencode-ai/tui", + "name": "@opencode/tui", "version": "1.18.4", "dependencies": { - "@opencode-ai/client": "workspace:*", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/latex": "workspace:*", - "@opencode-ai/merman": "workspace:*", - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/simulation": "workspace:*", - "@opencode-ai/theme": "workspace:*", - "@opencode-ai/ui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/latex": "workspace:*", + "@opencode/merman": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/simulation": "workspace:*", + "@opencode/theme": "workspace:*", + "@opencode/ui": "workspace:*", + "@opencode/util": "workspace:*", "@opentui/core": "catalog:", "@opentui/keymap": "catalog:", "@opentui/solid": "catalog:", @@ -928,7 +928,7 @@ }, }, "packages/ui": { - "name": "@opencode-ai/ui", + "name": "@opencode/ui", "version": "1.18.15", "dependencies": { "@kobalte/core": "catalog:", @@ -963,7 +963,7 @@ }, }, "packages/updates": { - "name": "@opencode-ai/updates", + "name": "@opencode/updates", "version": "1.18.4", "dependencies": { "jose": "6.0.11", @@ -979,7 +979,7 @@ }, }, "packages/util": { - "name": "@opencode-ai/util", + "name": "@opencode/util", "version": "1.18.3", "dependencies": { "@effect/opentelemetry": "catalog:", @@ -1012,7 +1012,7 @@ }, }, "packages/web": { - "name": "@opencode-ai/web", + "name": "@opencode/web", "version": "1.18.15", "dependencies": { "@astrojs/cloudflare": "12.6.3", @@ -1044,7 +1044,7 @@ }, }, "packages/www": { - "name": "@opencode-ai/www", + "name": "@opencode/www", "dependencies": { "@astrojs/mdx": "7.0.5", "astro": "7.1.3", @@ -2138,49 +2138,9 @@ "@openauthjs/openauth": ["@openauthjs/openauth@0.0.0-20250322224806", "", { "dependencies": { "@standard-schema/spec": "1.0.0-beta.3", "aws4fetch": "1.0.20", "jose": "5.9.6" }, "peerDependencies": { "arctic": "^2.2.2", "hono": "^4.0.0" } }, "sha512-p5IWSRXvABcwocH2dNI0w8c1QJelIOFulwhKk+aLLFfUbs8u1pr7kQbYe8yCSM2+bcLHiwbogpUQc2ovrGwCuw=="], - "@opencode-ai/ai": ["@opencode-ai/ai@workspace:packages/ai"], + "@opencode-ai/client": ["@opencode-ai/client@0.0.0-beta-18050", "", { "dependencies": { "@opencode-ai/protocol": "0.0.0-beta-18050", "@opencode-ai/schema": "0.0.0-beta-18050" }, "peerDependencies": { "effect": "4.0.0-rc.111", "solid-js": ">=1.9.0" }, "optionalPeers": ["effect", "solid-js"] }, "sha512-zWZv5X23iyx+/mxwiAi18YY/VMjQofTaH7RyKMBt7KL6FmaKAWf9Q05zbQhrLX8DYJD3MOtbjBeQCGLsPUDU8g=="], - "@opencode-ai/app": ["@opencode-ai/app@workspace:packages/app"], - - "@opencode-ai/cli": ["@opencode-ai/cli@workspace:packages/cli"], - - "@opencode-ai/client": ["@opencode-ai/client@workspace:packages/client"], - - "@opencode-ai/codemode": ["@opencode-ai/codemode@workspace:packages/codemode"], - - "@opencode-ai/console-app": ["@opencode-ai/console-app@workspace:packages/console/app"], - - "@opencode-ai/console-core": ["@opencode-ai/console-core@workspace:packages/console/core"], - - "@opencode-ai/console-function": ["@opencode-ai/console-function@workspace:packages/console/function"], - - "@opencode-ai/console-mail": ["@opencode-ai/console-mail@workspace:packages/console/mail"], - - "@opencode-ai/console-resource": ["@opencode-ai/console-resource@workspace:packages/console/resource"], - - "@opencode-ai/console-support": ["@opencode-ai/console-support@workspace:packages/console/support"], - - "@opencode-ai/core": ["@opencode-ai/core@workspace:packages/core"], - - "@opencode-ai/desktop": ["@opencode-ai/desktop@workspace:packages/desktop"], - - "@opencode-ai/enterprise": ["@opencode-ai/enterprise@workspace:packages/enterprise"], - - "@opencode-ai/function": ["@opencode-ai/function@workspace:packages/function"], - - "@opencode-ai/http-recorder": ["@opencode-ai/http-recorder@workspace:packages/http-recorder"], - - "@opencode-ai/httpapi-codegen": ["@opencode-ai/httpapi-codegen@workspace:packages/httpapi-codegen"], - - "@opencode-ai/latex": ["@opencode-ai/latex@workspace:packages/latex"], - - "@opencode-ai/merman": ["@opencode-ai/merman@workspace:packages/merman"], - - "@opencode-ai/plugin": ["@opencode-ai/plugin@workspace:packages/plugin"], - - "@opencode-ai/posts": ["@opencode-ai/posts@workspace:packages/posts"], - - "@opencode-ai/protocol": ["@opencode-ai/protocol@workspace:packages/protocol"], + "@opencode-ai/protocol": ["@opencode-ai/protocol@0.0.0-beta-18050", "", { "dependencies": { "@opencode-ai/schema": "0.0.0-beta-18050", "effect": "4.0.0-rc.111" } }, "sha512-HDQMnvGp8IU0MdBRbEuydX1WQm09BZ4HJm9iSMQwzweJuQ2HNscgzHJPIH6P02BsbbtfJ8J7sZGPItrz1tWSgw=="], "@opencode-ai/pty": ["@opencode-ai/pty@0.1.13", "", { "optionalDependencies": { "@opencode-ai/pty-darwin-arm64": "0.1.13", "@opencode-ai/pty-darwin-x64": "0.1.13", "@opencode-ai/pty-linux-arm64-gnu": "0.1.13", "@opencode-ai/pty-linux-arm64-musl": "0.1.13", "@opencode-ai/pty-linux-x64-gnu": "0.1.13", "@opencode-ai/pty-linux-x64-musl": "0.1.13" }, "bin": { "opencode-pty": "bin/opencode-pty.js" } }, "sha512-WPCN8h8HaZhhUcrMG0zu+4D9vco0EZiEg/gCF1K3JPRN6UsHMiXq1HVIy5IlyfcoyjfViRmQmXYE4AuU3laBjA=="], @@ -2196,42 +2156,90 @@ "@opencode-ai/pty-linux-x64-musl": ["@opencode-ai/pty-linux-x64-musl@0.1.13", "", { "os": "linux", "cpu": "x64" }, "sha512-rXDpidW66gz2b2M/NbUN8ZKmAxaJcASnuHATeXevlrFdiPUv8uJwvkRd6Pla1fp01Q65MkBmgRa7Q9c+H1PlzA=="], - "@opencode-ai/schema": ["@opencode-ai/schema@workspace:packages/schema"], + "@opencode-ai/schema": ["@opencode-ai/schema@0.0.0-beta-18050", "", { "dependencies": { "@standard-schema/spec": "1.1.0", "effect": "4.0.0-rc.111" } }, "sha512-/D6VXaWlytTXR3IOiMLIKuPcfp7FQNUzRPm9z3K7UBFd1Bw4q/WZksaf5RVcBGz+0YRxYMc1V4D7MFlceSgtyg=="], - "@opencode-ai/script": ["@opencode-ai/script@workspace:packages/script"], + "@opencode-ai/sdk": ["@opencode-ai/sdk@1.18.21", "", { "dependencies": { "cross-spawn": "7.0.6" } }, "sha512-k6iHQ5C8wOPglk+LgFyYnst168cGMQYumgpbVoeXJ+iC1AtvwD5zmjuF8CxMze/y9G1K2bOeO6p9yRvA7eHZLA=="], - "@opencode-ai/sdk": ["@opencode-ai/sdk@workspace:packages/sdk"], + "@opencode/ai": ["@opencode/ai@workspace:packages/ai"], - "@opencode-ai/server": ["@opencode-ai/server@workspace:packages/server"], + "@opencode/app": ["@opencode/app@workspace:packages/app"], - "@opencode-ai/session-ui": ["@opencode-ai/session-ui@workspace:packages/session-ui"], + "@opencode/cli": ["@opencode/cli@workspace:packages/cli"], - "@opencode-ai/simulation": ["@opencode-ai/simulation@workspace:packages/simulation"], + "@opencode/client": ["@opencode/client@workspace:packages/client"], - "@opencode-ai/stats-app": ["@opencode-ai/stats-app@workspace:packages/stats/app"], + "@opencode/codemode": ["@opencode/codemode@workspace:packages/codemode"], - "@opencode-ai/stats-core": ["@opencode-ai/stats-core@workspace:packages/stats/core"], + "@opencode/console-app": ["@opencode/console-app@workspace:packages/console/app"], - "@opencode-ai/stats-server": ["@opencode-ai/stats-server@workspace:packages/stats/server"], + "@opencode/console-core": ["@opencode/console-core@workspace:packages/console/core"], - "@opencode-ai/storybook": ["@opencode-ai/storybook@workspace:packages/storybook"], + "@opencode/console-function": ["@opencode/console-function@workspace:packages/console/function"], - "@opencode-ai/theme": ["@opencode-ai/theme@workspace:packages/theme"], + "@opencode/console-mail": ["@opencode/console-mail@workspace:packages/console/mail"], - "@opencode-ai/tui": ["@opencode-ai/tui@workspace:packages/tui"], + "@opencode/console-resource": ["@opencode/console-resource@workspace:packages/console/resource"], - "@opencode-ai/ui": ["@opencode-ai/ui@workspace:packages/ui"], + "@opencode/console-support": ["@opencode/console-support@workspace:packages/console/support"], - "@opencode-ai/updates": ["@opencode-ai/updates@workspace:packages/updates"], + "@opencode/core": ["@opencode/core@workspace:packages/core"], - "@opencode-ai/util": ["@opencode-ai/util@workspace:packages/util"], + "@opencode/desktop": ["@opencode/desktop@workspace:packages/desktop"], - "@opencode-ai/web": ["@opencode-ai/web@workspace:packages/web"], + "@opencode/enterprise": ["@opencode/enterprise@workspace:packages/enterprise"], - "@opencode-ai/www": ["@opencode-ai/www@workspace:packages/www"], + "@opencode/function": ["@opencode/function@workspace:packages/function"], + + "@opencode/http-recorder": ["@opencode/http-recorder@workspace:packages/http-recorder"], + + "@opencode/httpapi-codegen": ["@opencode/httpapi-codegen@workspace:packages/httpapi-codegen"], + + "@opencode/latex": ["@opencode/latex@workspace:packages/latex"], + + "@opencode/merman": ["@opencode/merman@workspace:packages/merman"], + + "@opencode/plugin": ["@opencode/plugin@workspace:packages/plugin"], "@opencode/plugin-browser": ["@opencode/plugin-browser@workspace:packages/plugin-browser"], + "@opencode/posts": ["@opencode/posts@workspace:packages/posts"], + + "@opencode/protocol": ["@opencode/protocol@workspace:packages/protocol"], + + "@opencode/schema": ["@opencode/schema@workspace:packages/schema"], + + "@opencode/script": ["@opencode/script@workspace:packages/script"], + + "@opencode/sdk": ["@opencode/sdk@workspace:packages/sdk"], + + "@opencode/server": ["@opencode/server@workspace:packages/server"], + + "@opencode/session-ui": ["@opencode/session-ui@workspace:packages/session-ui"], + + "@opencode/simulation": ["@opencode/simulation@workspace:packages/simulation"], + + "@opencode/stats-app": ["@opencode/stats-app@workspace:packages/stats/app"], + + "@opencode/stats-core": ["@opencode/stats-core@workspace:packages/stats/core"], + + "@opencode/stats-server": ["@opencode/stats-server@workspace:packages/stats/server"], + + "@opencode/storybook": ["@opencode/storybook@workspace:packages/storybook"], + + "@opencode/theme": ["@opencode/theme@workspace:packages/theme"], + + "@opencode/tui": ["@opencode/tui@workspace:packages/tui"], + + "@opencode/ui": ["@opencode/ui@workspace:packages/ui"], + + "@opencode/updates": ["@opencode/updates@workspace:packages/updates"], + + "@opencode/util": ["@opencode/util@workspace:packages/util"], + + "@opencode/web": ["@opencode/web@workspace:packages/web"], + + "@opencode/www": ["@opencode/www@workspace:packages/www"], + "@openrouter/ai-sdk-provider": ["@openrouter/ai-sdk-provider@2.10.0", "", { "peerDependencies": { "ai": "^6.0.0", "zod": "^3.25.0 || ^4.0.0" } }, "sha512-FMsAEjLUt5pWuRE2LDC/LCvVrFjLlrEzUITH5+5SZtfq7KZ2wrOHjQVxzz92sju8S9ltpzW87CLW8/b0oBXVCw=="], "@opentelemetry/api": ["@opentelemetry/api@1.9.0", "", {}, "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg=="], @@ -6220,8 +6228,6 @@ "@babel/preset-env/semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], - "@brendonovich/vite-plugin-opencode/@opencode-ai/client": ["@opencode-ai/client@0.0.0-beta-18050", "", { "dependencies": { "@opencode-ai/protocol": "0.0.0-beta-18050", "@opencode-ai/schema": "0.0.0-beta-18050" }, "peerDependencies": { "effect": "4.0.0-rc.111", "solid-js": ">=1.9.0" }, "optionalPeers": ["effect", "solid-js"] }, "sha512-zWZv5X23iyx+/mxwiAi18YY/VMjQofTaH7RyKMBt7KL6FmaKAWf9Q05zbQhrLX8DYJD3MOtbjBeQCGLsPUDU8g=="], - "@bruits/satteri-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.11.1", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.2", "tslib": "^2.4.0" } }, "sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ=="], "@bruits/satteri-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.11.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw=="], @@ -6350,65 +6356,63 @@ "@openauthjs/openauth/jose": ["jose@5.9.6", "", {}, "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ=="], - "@opencode-ai/cli/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], + "@opencode/cli/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], - "@opencode-ai/cli/vite-plugin-solid": ["vite-plugin-solid@2.11.10", "", { "dependencies": { "@babel/core": "^7.23.3", "@types/babel__core": "^7.20.4", "babel-preset-solid": "^1.8.4", "merge-anything": "^5.1.7", "solid-refresh": "^0.6.3", "vitefu": "^1.0.4" }, "peerDependencies": { "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.*", "solid-js": "^1.7.2", "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" }, "optionalPeers": ["@testing-library/jest-dom"] }, "sha512-Yr1dQybmtDtDAHkii6hXuc1oVH9CPcS/Zb2jN/P36qqcrkNnVPsMTzQ06jyzFPFjj3U1IYKMVt/9ZqcwGCEbjw=="], + "@opencode/cli/vite-plugin-solid": ["vite-plugin-solid@2.11.10", "", { "dependencies": { "@babel/core": "^7.23.3", "@types/babel__core": "^7.20.4", "babel-preset-solid": "^1.8.4", "merge-anything": "^5.1.7", "solid-refresh": "^0.6.3", "vitefu": "^1.0.4" }, "peerDependencies": { "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.*", "solid-js": "^1.7.2", "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" }, "optionalPeers": ["@testing-library/jest-dom"] }, "sha512-Yr1dQybmtDtDAHkii6hXuc1oVH9CPcS/Zb2jN/P36qqcrkNnVPsMTzQ06jyzFPFjj3U1IYKMVt/9ZqcwGCEbjw=="], - "@opencode-ai/console-app/@smithy/eventstream-codec": ["@smithy/eventstream-codec@4.2.7", "", { "dependencies": { "@aws-crypto/crc32": "5.2.0", "@smithy/types": "^4.11.0", "@smithy/util-hex-encoding": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-DrpkEoM3j9cBBWhufqBwnbbn+3nf1N9FP6xuVJ+e220jbactKuQgaZwjwP5CP1t+O94brm2JgVMD2atMGX3xIQ=="], + "@opencode/console-app/@smithy/eventstream-codec": ["@smithy/eventstream-codec@4.2.7", "", { "dependencies": { "@aws-crypto/crc32": "5.2.0", "@smithy/types": "^4.11.0", "@smithy/util-hex-encoding": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-DrpkEoM3j9cBBWhufqBwnbbn+3nf1N9FP6xuVJ+e220jbactKuQgaZwjwP5CP1t+O94brm2JgVMD2atMGX3xIQ=="], - "@opencode-ai/console-app/@smithy/util-utf8": ["@smithy/util-utf8@4.2.0", "", { "dependencies": { "@smithy/util-buffer-from": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-zBPfuzoI8xyBtR2P6WQj63Rz8i3AmfAaJLuNG8dWsfvPe8lO4aCPYLn879mEgHndZH1zQ2oXmG8O1GGzzaoZiw=="], + "@opencode/console-app/@smithy/util-utf8": ["@smithy/util-utf8@4.2.0", "", { "dependencies": { "@smithy/util-buffer-from": "^4.2.0", "tslib": "^2.6.2" } }, "sha512-zBPfuzoI8xyBtR2P6WQj63Rz8i3AmfAaJLuNG8dWsfvPe8lO4aCPYLn879mEgHndZH1zQ2oXmG8O1GGzzaoZiw=="], - "@opencode-ai/console-app/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], + "@opencode/console-app/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], - "@opencode-ai/console-mail/@types/react": ["@types/react@18.0.25", "", { "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", "csstype": "^3.0.2" } }, "sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g=="], + "@opencode/console-mail/@types/react": ["@types/react@18.0.25", "", { "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", "csstype": "^3.0.2" } }, "sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g=="], - "@opencode-ai/console-support/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], + "@opencode/console-support/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], - "@opencode-ai/desktop/typescript": ["typescript@5.6.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw=="], + "@opencode/desktop/typescript": ["typescript@5.6.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw=="], - "@opencode-ai/enterprise/@opencode-ai/sdk": ["@opencode-ai/sdk@1.18.21", "", { "dependencies": { "cross-spawn": "7.0.6" } }, "sha512-k6iHQ5C8wOPglk+LgFyYnst168cGMQYumgpbVoeXJ+iC1AtvwD5zmjuF8CxMze/y9G1K2bOeO6p9yRvA7eHZLA=="], + "@opencode/enterprise/@tailwindcss/vite": ["@tailwindcss/vite@4.1.11", "", { "dependencies": { "@tailwindcss/node": "4.1.11", "@tailwindcss/oxide": "4.1.11", "tailwindcss": "4.1.11" }, "peerDependencies": { "vite": "^5.2.0 || ^6 || ^7" } }, "sha512-RHYhrR3hku0MJFRV+fN2gNbDNEh3dwKvY8XJvTxCSXeMOsCRSr+uKvDWQcbizrHgjML6ZmTE5OwMrl5wKcujCw=="], - "@opencode-ai/enterprise/@tailwindcss/vite": ["@tailwindcss/vite@4.1.11", "", { "dependencies": { "@tailwindcss/node": "4.1.11", "@tailwindcss/oxide": "4.1.11", "tailwindcss": "4.1.11" }, "peerDependencies": { "vite": "^5.2.0 || ^6 || ^7" } }, "sha512-RHYhrR3hku0MJFRV+fN2gNbDNEh3dwKvY8XJvTxCSXeMOsCRSr+uKvDWQcbizrHgjML6ZmTE5OwMrl5wKcujCw=="], + "@opencode/enterprise/tailwindcss": ["tailwindcss@4.1.11", "", {}, "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA=="], - "@opencode-ai/enterprise/tailwindcss": ["tailwindcss@4.1.11", "", {}, "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA=="], + "@opencode/enterprise/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], - "@opencode-ai/enterprise/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], + "@opencode/posts/wrangler": ["wrangler@4.110.0", "", { "dependencies": { "@cloudflare/kv-asset-handler": "0.5.0", "@cloudflare/unenv-preset": "2.16.1", "blake3-wasm": "2.1.5", "esbuild": "0.28.1", "miniflare": "4.20260708.1", "path-to-regexp": "6.3.0", "unenv": "2.0.0-rc.24", "workerd": "1.20260708.1" }, "optionalDependencies": { "fsevents": "2.3.3" }, "peerDependencies": { "@cloudflare/workers-types": "^5.20260708.1" }, "optionalPeers": ["@cloudflare/workers-types"], "bin": { "wrangler": "bin/wrangler.js", "wrangler2": "bin/wrangler.js", "cf-wrangler": "bin/cf-wrangler.js" } }, "sha512-xZeXKYi7hxQRF5anL+v77RkufJNpF9f3Eqeyqq2QBsETpLZgh0Agj0jJ6JPtkbgn6ukZdh8OK5egsGPWIditgg=="], - "@opencode-ai/posts/wrangler": ["wrangler@4.110.0", "", { "dependencies": { "@cloudflare/kv-asset-handler": "0.5.0", "@cloudflare/unenv-preset": "2.16.1", "blake3-wasm": "2.1.5", "esbuild": "0.28.1", "miniflare": "4.20260708.1", "path-to-regexp": "6.3.0", "unenv": "2.0.0-rc.24", "workerd": "1.20260708.1" }, "optionalDependencies": { "fsevents": "2.3.3" }, "peerDependencies": { "@cloudflare/workers-types": "^5.20260708.1" }, "optionalPeers": ["@cloudflare/workers-types"], "bin": { "wrangler": "bin/wrangler.js", "wrangler2": "bin/wrangler.js", "cf-wrangler": "bin/cf-wrangler.js" } }, "sha512-xZeXKYi7hxQRF5anL+v77RkufJNpF9f3Eqeyqq2QBsETpLZgh0Agj0jJ6JPtkbgn6ukZdh8OK5egsGPWIditgg=="], + "@opencode/session-ui/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], - "@opencode-ai/session-ui/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], + "@opencode/session-ui/vite-plugin-solid": ["vite-plugin-solid@2.11.10", "", { "dependencies": { "@babel/core": "^7.23.3", "@types/babel__core": "^7.20.4", "babel-preset-solid": "^1.8.4", "merge-anything": "^5.1.7", "solid-refresh": "^0.6.3", "vitefu": "^1.0.4" }, "peerDependencies": { "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.*", "solid-js": "^1.7.2", "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" }, "optionalPeers": ["@testing-library/jest-dom"] }, "sha512-Yr1dQybmtDtDAHkii6hXuc1oVH9CPcS/Zb2jN/P36qqcrkNnVPsMTzQ06jyzFPFjj3U1IYKMVt/9ZqcwGCEbjw=="], - "@opencode-ai/session-ui/vite-plugin-solid": ["vite-plugin-solid@2.11.10", "", { "dependencies": { "@babel/core": "^7.23.3", "@types/babel__core": "^7.20.4", "babel-preset-solid": "^1.8.4", "merge-anything": "^5.1.7", "solid-refresh": "^0.6.3", "vitefu": "^1.0.4" }, "peerDependencies": { "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.*", "solid-js": "^1.7.2", "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" }, "optionalPeers": ["@testing-library/jest-dom"] }, "sha512-Yr1dQybmtDtDAHkii6hXuc1oVH9CPcS/Zb2jN/P36qqcrkNnVPsMTzQ06jyzFPFjj3U1IYKMVt/9ZqcwGCEbjw=="], + "@opencode/stats-app/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], - "@opencode-ai/stats-app/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], + "@opencode/storybook/@tailwindcss/vite": ["@tailwindcss/vite@4.1.11", "", { "dependencies": { "@tailwindcss/node": "4.1.11", "@tailwindcss/oxide": "4.1.11", "tailwindcss": "4.1.11" }, "peerDependencies": { "vite": "^5.2.0 || ^6 || ^7" } }, "sha512-RHYhrR3hku0MJFRV+fN2gNbDNEh3dwKvY8XJvTxCSXeMOsCRSr+uKvDWQcbizrHgjML6ZmTE5OwMrl5wKcujCw=="], - "@opencode-ai/storybook/@tailwindcss/vite": ["@tailwindcss/vite@4.1.11", "", { "dependencies": { "@tailwindcss/node": "4.1.11", "@tailwindcss/oxide": "4.1.11", "tailwindcss": "4.1.11" }, "peerDependencies": { "vite": "^5.2.0 || ^6 || ^7" } }, "sha512-RHYhrR3hku0MJFRV+fN2gNbDNEh3dwKvY8XJvTxCSXeMOsCRSr+uKvDWQcbizrHgjML6ZmTE5OwMrl5wKcujCw=="], + "@opencode/storybook/@types/react": ["@types/react@18.0.25", "", { "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", "csstype": "^3.0.2" } }, "sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g=="], - "@opencode-ai/storybook/@types/react": ["@types/react@18.0.25", "", { "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", "csstype": "^3.0.2" } }, "sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g=="], + "@opencode/storybook/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], - "@opencode-ai/storybook/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], + "@opencode/storybook/vite-plugin-solid": ["vite-plugin-solid@2.11.12", "", { "dependencies": { "@babel/core": "^7.23.3", "@types/babel__core": "^7.20.4", "babel-preset-solid": "^1.8.4", "merge-anything": "^5.1.7", "solid-refresh": "^0.6.3", "vitefu": "^1.0.4" }, "peerDependencies": { "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.*", "solid-js": "^1.7.2", "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" }, "optionalPeers": ["@testing-library/jest-dom"] }, "sha512-FgjPcx2OwX9h6f28jli7A4bG7PP3te8uyakE5iqsmpq3Jqi1TWLgSroC9N6cMfGRU2zXsl4Q6ISvTr2VL0QHpA=="], - "@opencode-ai/storybook/vite-plugin-solid": ["vite-plugin-solid@2.11.12", "", { "dependencies": { "@babel/core": "^7.23.3", "@types/babel__core": "^7.20.4", "babel-preset-solid": "^1.8.4", "merge-anything": "^5.1.7", "solid-refresh": "^0.6.3", "vitefu": "^1.0.4" }, "peerDependencies": { "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.*", "solid-js": "^1.7.2", "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" }, "optionalPeers": ["@testing-library/jest-dom"] }, "sha512-FgjPcx2OwX9h6f28jli7A4bG7PP3te8uyakE5iqsmpq3Jqi1TWLgSroC9N6cMfGRU2zXsl4Q6ISvTr2VL0QHpA=="], + "@opencode/ui/tailwindcss": ["tailwindcss@4.1.11", "", {}, "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA=="], - "@opencode-ai/ui/tailwindcss": ["tailwindcss@4.1.11", "", {}, "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA=="], + "@opencode/ui/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], - "@opencode-ai/ui/vite": ["vite@7.3.6", "", { "dependencies": { "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg=="], + "@opencode/ui/vite-plugin-solid": ["vite-plugin-solid@2.11.10", "", { "dependencies": { "@babel/core": "^7.23.3", "@types/babel__core": "^7.20.4", "babel-preset-solid": "^1.8.4", "merge-anything": "^5.1.7", "solid-refresh": "^0.6.3", "vitefu": "^1.0.4" }, "peerDependencies": { "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.*", "solid-js": "^1.7.2", "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" }, "optionalPeers": ["@testing-library/jest-dom"] }, "sha512-Yr1dQybmtDtDAHkii6hXuc1oVH9CPcS/Zb2jN/P36qqcrkNnVPsMTzQ06jyzFPFjj3U1IYKMVt/9ZqcwGCEbjw=="], - "@opencode-ai/ui/vite-plugin-solid": ["vite-plugin-solid@2.11.10", "", { "dependencies": { "@babel/core": "^7.23.3", "@types/babel__core": "^7.20.4", "babel-preset-solid": "^1.8.4", "merge-anything": "^5.1.7", "solid-refresh": "^0.6.3", "vitefu": "^1.0.4" }, "peerDependencies": { "@testing-library/jest-dom": "^5.16.6 || ^5.17.0 || ^6.*", "solid-js": "^1.7.2", "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" }, "optionalPeers": ["@testing-library/jest-dom"] }, "sha512-Yr1dQybmtDtDAHkii6hXuc1oVH9CPcS/Zb2jN/P36qqcrkNnVPsMTzQ06jyzFPFjj3U1IYKMVt/9ZqcwGCEbjw=="], + "@opencode/updates/@types/semver": ["@types/semver@7.7.1", "", {}, "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA=="], - "@opencode-ai/updates/@types/semver": ["@types/semver@7.7.1", "", {}, "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA=="], + "@opencode/updates/semver": ["semver@7.7.4", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA=="], - "@opencode-ai/updates/semver": ["semver@7.7.4", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA=="], + "@opencode/updates/wrangler": ["wrangler@4.110.0", "", { "dependencies": { "@cloudflare/kv-asset-handler": "0.5.0", "@cloudflare/unenv-preset": "2.16.1", "blake3-wasm": "2.1.5", "esbuild": "0.28.1", "miniflare": "4.20260708.1", "path-to-regexp": "6.3.0", "unenv": "2.0.0-rc.24", "workerd": "1.20260708.1" }, "optionalDependencies": { "fsevents": "2.3.3" }, "peerDependencies": { "@cloudflare/workers-types": "^5.20260708.1" }, "optionalPeers": ["@cloudflare/workers-types"], "bin": { "wrangler": "bin/wrangler.js", "wrangler2": "bin/wrangler.js", "cf-wrangler": "bin/cf-wrangler.js" } }, "sha512-xZeXKYi7hxQRF5anL+v77RkufJNpF9f3Eqeyqq2QBsETpLZgh0Agj0jJ6JPtkbgn6ukZdh8OK5egsGPWIditgg=="], - "@opencode-ai/updates/wrangler": ["wrangler@4.110.0", "", { "dependencies": { "@cloudflare/kv-asset-handler": "0.5.0", "@cloudflare/unenv-preset": "2.16.1", "blake3-wasm": "2.1.5", "esbuild": "0.28.1", "miniflare": "4.20260708.1", "path-to-regexp": "6.3.0", "unenv": "2.0.0-rc.24", "workerd": "1.20260708.1" }, "optionalDependencies": { "fsevents": "2.3.3" }, "peerDependencies": { "@cloudflare/workers-types": "^5.20260708.1" }, "optionalPeers": ["@cloudflare/workers-types"], "bin": { "wrangler": "bin/wrangler.js", "wrangler2": "bin/wrangler.js", "cf-wrangler": "bin/cf-wrangler.js" } }, "sha512-xZeXKYi7hxQRF5anL+v77RkufJNpF9f3Eqeyqq2QBsETpLZgh0Agj0jJ6JPtkbgn6ukZdh8OK5egsGPWIditgg=="], + "@opencode/web/@astrojs/cloudflare": ["@astrojs/cloudflare@12.6.3", "", { "dependencies": { "@astrojs/internal-helpers": "0.7.1", "@astrojs/underscore-redirects": "1.0.0", "@cloudflare/workers-types": "^4.20250507.0", "tinyglobby": "^0.2.13", "vite": "^6.3.5", "wrangler": "^4.14.1" }, "peerDependencies": { "astro": "^5.0.0" } }, "sha512-xhJptF5tU2k5eo70nIMyL1Udma0CqmUEnGSlGyFflLqSY82CRQI6nWZ/xZt0ZvmXuErUjIx0YYQNfZsz5CNjLQ=="], - "@opencode-ai/web/@astrojs/cloudflare": ["@astrojs/cloudflare@12.6.3", "", { "dependencies": { "@astrojs/internal-helpers": "0.7.1", "@astrojs/underscore-redirects": "1.0.0", "@cloudflare/workers-types": "^4.20250507.0", "tinyglobby": "^0.2.13", "vite": "^6.3.5", "wrangler": "^4.14.1" }, "peerDependencies": { "astro": "^5.0.0" } }, "sha512-xhJptF5tU2k5eo70nIMyL1Udma0CqmUEnGSlGyFflLqSY82CRQI6nWZ/xZt0ZvmXuErUjIx0YYQNfZsz5CNjLQ=="], + "@opencode/web/astro": ["astro@5.7.13", "", { "dependencies": { "@astrojs/compiler": "^2.11.0", "@astrojs/internal-helpers": "0.6.1", "@astrojs/markdown-remark": "6.3.1", "@astrojs/telemetry": "3.2.1", "@capsizecss/unpack": "^2.4.0", "@oslojs/encoding": "^1.1.0", "@rollup/pluginutils": "^5.1.4", "acorn": "^8.14.1", "aria-query": "^5.3.2", "axobject-query": "^4.1.0", "boxen": "8.0.1", "ci-info": "^4.2.0", "clsx": "^2.1.1", "common-ancestor-path": "^1.0.1", "cookie": "^1.0.2", "cssesc": "^3.0.0", "debug": "^4.4.0", "deterministic-object-hash": "^2.0.2", "devalue": "^5.1.1", "diff": "^5.2.0", "dlv": "^1.1.3", "dset": "^3.1.4", "es-module-lexer": "^1.6.0", "esbuild": "^0.25.0", "estree-walker": "^3.0.3", "flattie": "^1.1.1", "fontace": "~0.3.0", "github-slugger": "^2.0.0", "html-escaper": "3.0.3", "http-cache-semantics": "^4.1.1", "js-yaml": "^4.1.0", "kleur": "^4.1.5", "magic-string": "^0.30.17", "magicast": "^0.3.5", "mrmime": "^2.0.1", "neotraverse": "^0.6.18", "p-limit": "^6.2.0", "p-queue": "^8.1.0", "package-manager-detector": "^1.1.0", "picomatch": "^4.0.2", "prompts": "^2.4.2", "rehype": "^13.0.2", "semver": "^7.7.1", "shiki": "^3.2.1", "tinyexec": "^0.3.2", "tinyglobby": "^0.2.12", "tsconfck": "^3.1.5", "ultrahtml": "^1.6.0", "unifont": "~0.5.0", "unist-util-visit": "^5.0.0", "unstorage": "^1.15.0", "vfile": "^6.0.3", "vite": "^6.3.4", "vitefu": "^1.0.6", "xxhash-wasm": "^1.1.0", "yargs-parser": "^21.1.1", "yocto-spinner": "^0.2.1", "zod": "^3.24.2", "zod-to-json-schema": "^3.24.5", "zod-to-ts": "^1.2.0" }, "optionalDependencies": { "sharp": "^0.33.3" }, "bin": { "astro": "astro.js" } }, "sha512-cRGq2llKOhV3XMcYwQpfBIUcssN6HEK5CRbcMxAfd9OcFhvWE7KUy50zLioAZVVl3AqgUTJoNTlmZfD2eG0G1w=="], - "@opencode-ai/web/astro": ["astro@5.7.13", "", { "dependencies": { "@astrojs/compiler": "^2.11.0", "@astrojs/internal-helpers": "0.6.1", "@astrojs/markdown-remark": "6.3.1", "@astrojs/telemetry": "3.2.1", "@capsizecss/unpack": "^2.4.0", "@oslojs/encoding": "^1.1.0", "@rollup/pluginutils": "^5.1.4", "acorn": "^8.14.1", "aria-query": "^5.3.2", "axobject-query": "^4.1.0", "boxen": "8.0.1", "ci-info": "^4.2.0", "clsx": "^2.1.1", "common-ancestor-path": "^1.0.1", "cookie": "^1.0.2", "cssesc": "^3.0.0", "debug": "^4.4.0", "deterministic-object-hash": "^2.0.2", "devalue": "^5.1.1", "diff": "^5.2.0", "dlv": "^1.1.3", "dset": "^3.1.4", "es-module-lexer": "^1.6.0", "esbuild": "^0.25.0", "estree-walker": "^3.0.3", "flattie": "^1.1.1", "fontace": "~0.3.0", "github-slugger": "^2.0.0", "html-escaper": "3.0.3", "http-cache-semantics": "^4.1.1", "js-yaml": "^4.1.0", "kleur": "^4.1.5", "magic-string": "^0.30.17", "magicast": "^0.3.5", "mrmime": "^2.0.1", "neotraverse": "^0.6.18", "p-limit": "^6.2.0", "p-queue": "^8.1.0", "package-manager-detector": "^1.1.0", "picomatch": "^4.0.2", "prompts": "^2.4.2", "rehype": "^13.0.2", "semver": "^7.7.1", "shiki": "^3.2.1", "tinyexec": "^0.3.2", "tinyglobby": "^0.2.12", "tsconfck": "^3.1.5", "ultrahtml": "^1.6.0", "unifont": "~0.5.0", "unist-util-visit": "^5.0.0", "unstorage": "^1.15.0", "vfile": "^6.0.3", "vite": "^6.3.4", "vitefu": "^1.0.6", "xxhash-wasm": "^1.1.0", "yargs-parser": "^21.1.1", "yocto-spinner": "^0.2.1", "zod": "^3.24.2", "zod-to-json-schema": "^3.24.5", "zod-to-ts": "^1.2.0" }, "optionalDependencies": { "sharp": "^0.33.3" }, "bin": { "astro": "astro.js" } }, "sha512-cRGq2llKOhV3XMcYwQpfBIUcssN6HEK5CRbcMxAfd9OcFhvWE7KUy50zLioAZVVl3AqgUTJoNTlmZfD2eG0G1w=="], + "@opencode/www/@astrojs/markdown-remark": ["@astrojs/markdown-remark@7.2.4", "", { "dependencies": { "@astrojs/internal-helpers": "0.10.4", "@astrojs/prism": "4.0.2", "github-slugger": "^2.0.0", "hast-util-from-html": "^2.0.3", "hast-util-to-text": "^4.0.2", "mdast-util-definitions": "^6.0.0", "rehype-raw": "^7.0.0", "rehype-stringify": "^10.0.1", "remark-gfm": "^4.0.1", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.2", "remark-smartypants": "^3.0.2", "unified": "^11.0.5", "unist-util-remove-position": "^5.0.0", "unist-util-visit": "^5.1.0", "unist-util-visit-parents": "^6.0.2", "vfile": "^6.0.3" } }, "sha512-MvspGMynWKAjTe4/lTUdmBPHIFKNVLTCF6UlyWGogTGzNrTvjD+D4n48k7h8swxsEPKHK2TwxkZO7uoaCv1Pow=="], - "@opencode-ai/www/@astrojs/markdown-remark": ["@astrojs/markdown-remark@7.2.4", "", { "dependencies": { "@astrojs/internal-helpers": "0.10.4", "@astrojs/prism": "4.0.2", "github-slugger": "^2.0.0", "hast-util-from-html": "^2.0.3", "hast-util-to-text": "^4.0.2", "mdast-util-definitions": "^6.0.0", "rehype-raw": "^7.0.0", "rehype-stringify": "^10.0.1", "remark-gfm": "^4.0.1", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.2", "remark-smartypants": "^3.0.2", "unified": "^11.0.5", "unist-util-remove-position": "^5.0.0", "unist-util-visit": "^5.1.0", "unist-util-visit-parents": "^6.0.2", "vfile": "^6.0.3" } }, "sha512-MvspGMynWKAjTe4/lTUdmBPHIFKNVLTCF6UlyWGogTGzNrTvjD+D4n48k7h8swxsEPKHK2TwxkZO7uoaCv1Pow=="], - - "@opencode-ai/www/wrangler": ["wrangler@4.110.0", "", { "dependencies": { "@cloudflare/kv-asset-handler": "0.5.0", "@cloudflare/unenv-preset": "2.16.1", "blake3-wasm": "2.1.5", "esbuild": "0.28.1", "miniflare": "4.20260708.1", "path-to-regexp": "6.3.0", "unenv": "2.0.0-rc.24", "workerd": "1.20260708.1" }, "optionalDependencies": { "fsevents": "2.3.3" }, "peerDependencies": { "@cloudflare/workers-types": "^5.20260708.1" }, "optionalPeers": ["@cloudflare/workers-types"], "bin": { "wrangler": "bin/wrangler.js", "wrangler2": "bin/wrangler.js", "cf-wrangler": "bin/cf-wrangler.js" } }, "sha512-xZeXKYi7hxQRF5anL+v77RkufJNpF9f3Eqeyqq2QBsETpLZgh0Agj0jJ6JPtkbgn6ukZdh8OK5egsGPWIditgg=="], + "@opencode/www/wrangler": ["wrangler@4.110.0", "", { "dependencies": { "@cloudflare/kv-asset-handler": "0.5.0", "@cloudflare/unenv-preset": "2.16.1", "blake3-wasm": "2.1.5", "esbuild": "0.28.1", "miniflare": "4.20260708.1", "path-to-regexp": "6.3.0", "unenv": "2.0.0-rc.24", "workerd": "1.20260708.1" }, "optionalDependencies": { "fsevents": "2.3.3" }, "peerDependencies": { "@cloudflare/workers-types": "^5.20260708.1" }, "optionalPeers": ["@cloudflare/workers-types"], "bin": { "wrangler": "bin/wrangler.js", "wrangler2": "bin/wrangler.js", "cf-wrangler": "bin/cf-wrangler.js" } }, "sha512-xZeXKYi7hxQRF5anL+v77RkufJNpF9f3Eqeyqq2QBsETpLZgh0Agj0jJ6JPtkbgn6ukZdh8OK5egsGPWIditgg=="], "@opentelemetry/instrumentation/@opentelemetry/api-logs": ["@opentelemetry/api-logs@0.220.0", "", { "dependencies": { "@opentelemetry/api": "^1.3.0" } }, "sha512-CmVa4ImJ+ynfrPMNaAXHET6Bhb44SwzmfyVJFq9ni2jgXJR/l7C6gfVFddNmHP+ZOkP9cf4f9DBe68qVLTHc9w=="], @@ -7080,10 +7084,6 @@ "@babel/helper-compilation-targets/lru-cache/yallist": ["yallist@3.1.1", "", {}, "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="], - "@brendonovich/vite-plugin-opencode/@opencode-ai/client/@opencode-ai/protocol": ["@opencode-ai/protocol@0.0.0-beta-18050", "", { "dependencies": { "@opencode-ai/schema": "0.0.0-beta-18050", "effect": "4.0.0-rc.111" } }, "sha512-HDQMnvGp8IU0MdBRbEuydX1WQm09BZ4HJm9iSMQwzweJuQ2HNscgzHJPIH6P02BsbbtfJ8J7sZGPItrz1tWSgw=="], - - "@brendonovich/vite-plugin-opencode/@opencode-ai/client/@opencode-ai/schema": ["@opencode-ai/schema@0.0.0-beta-18050", "", { "dependencies": { "@standard-schema/spec": "1.1.0", "effect": "4.0.0-rc.111" } }, "sha512-/D6VXaWlytTXR3IOiMLIKuPcfp7FQNUzRPm9z3K7UBFd1Bw4q/WZksaf5RVcBGz+0YRxYMc1V4D7MFlceSgtyg=="], - "@bruits/satteri-wasm32-wasi/@emnapi/core/@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.2.2", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA=="], "@electron/asar/minimatch/brace-expansion": ["brace-expansion@1.1.18", "", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw=="], @@ -7268,99 +7268,99 @@ "@octokit/rest/@octokit/core/before-after-hook": ["before-after-hook@4.0.0", "", {}, "sha512-q6tR3RPqIB1pMiTRMFcZwuG5T8vwp+vUvEG0vuI6B+Rikh5BfPp2fQ82c925FOs+b0lcFQ8CFrL+KbilfZFhOQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node": ["@tailwindcss/node@4.1.11", "", { "dependencies": { "@ampproject/remapping": "^2.3.0", "enhanced-resolve": "^5.18.1", "jiti": "^2.4.2", "lightningcss": "1.30.1", "magic-string": "^0.30.17", "source-map-js": "^1.2.1", "tailwindcss": "4.1.11" } }, "sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node": ["@tailwindcss/node@4.1.11", "", { "dependencies": { "@ampproject/remapping": "^2.3.0", "enhanced-resolve": "^5.18.1", "jiti": "^2.4.2", "lightningcss": "1.30.1", "magic-string": "^0.30.17", "source-map-js": "^1.2.1", "tailwindcss": "4.1.11" } }, "sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide": ["@tailwindcss/oxide@4.1.11", "", { "dependencies": { "detect-libc": "^2.0.4", "tar": "^7.4.3" }, "optionalDependencies": { "@tailwindcss/oxide-android-arm64": "4.1.11", "@tailwindcss/oxide-darwin-arm64": "4.1.11", "@tailwindcss/oxide-darwin-x64": "4.1.11", "@tailwindcss/oxide-freebsd-x64": "4.1.11", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.11", "@tailwindcss/oxide-linux-arm64-gnu": "4.1.11", "@tailwindcss/oxide-linux-arm64-musl": "4.1.11", "@tailwindcss/oxide-linux-x64-gnu": "4.1.11", "@tailwindcss/oxide-linux-x64-musl": "4.1.11", "@tailwindcss/oxide-wasm32-wasi": "4.1.11", "@tailwindcss/oxide-win32-arm64-msvc": "4.1.11", "@tailwindcss/oxide-win32-x64-msvc": "4.1.11" } }, "sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide": ["@tailwindcss/oxide@4.1.11", "", { "dependencies": { "detect-libc": "^2.0.4", "tar": "^7.4.3" }, "optionalDependencies": { "@tailwindcss/oxide-android-arm64": "4.1.11", "@tailwindcss/oxide-darwin-arm64": "4.1.11", "@tailwindcss/oxide-darwin-x64": "4.1.11", "@tailwindcss/oxide-freebsd-x64": "4.1.11", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.11", "@tailwindcss/oxide-linux-arm64-gnu": "4.1.11", "@tailwindcss/oxide-linux-arm64-musl": "4.1.11", "@tailwindcss/oxide-linux-x64-gnu": "4.1.11", "@tailwindcss/oxide-linux-x64-musl": "4.1.11", "@tailwindcss/oxide-wasm32-wasi": "4.1.11", "@tailwindcss/oxide-win32-arm64-msvc": "4.1.11", "@tailwindcss/oxide-win32-x64-msvc": "4.1.11" } }, "sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg=="], - "@opencode-ai/posts/wrangler/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.5.0", "", {}, "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg=="], + "@opencode/posts/wrangler/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.5.0", "", {}, "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg=="], - "@opencode-ai/posts/wrangler/@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.16.1", "", { "peerDependencies": { "unenv": "2.0.0-rc.24", "workerd": ">1.20260305.0 <2.0.0-0" }, "optionalPeers": ["workerd"] }, "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw=="], + "@opencode/posts/wrangler/@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.16.1", "", { "peerDependencies": { "unenv": "2.0.0-rc.24", "workerd": ">1.20260305.0 <2.0.0-0" }, "optionalPeers": ["workerd"] }, "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw=="], - "@opencode-ai/posts/wrangler/esbuild": ["esbuild@0.28.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.28.1", "@esbuild/android-arm": "0.28.1", "@esbuild/android-arm64": "0.28.1", "@esbuild/android-x64": "0.28.1", "@esbuild/darwin-arm64": "0.28.1", "@esbuild/darwin-x64": "0.28.1", "@esbuild/freebsd-arm64": "0.28.1", "@esbuild/freebsd-x64": "0.28.1", "@esbuild/linux-arm": "0.28.1", "@esbuild/linux-arm64": "0.28.1", "@esbuild/linux-ia32": "0.28.1", "@esbuild/linux-loong64": "0.28.1", "@esbuild/linux-mips64el": "0.28.1", "@esbuild/linux-ppc64": "0.28.1", "@esbuild/linux-riscv64": "0.28.1", "@esbuild/linux-s390x": "0.28.1", "@esbuild/linux-x64": "0.28.1", "@esbuild/netbsd-arm64": "0.28.1", "@esbuild/netbsd-x64": "0.28.1", "@esbuild/openbsd-arm64": "0.28.1", "@esbuild/openbsd-x64": "0.28.1", "@esbuild/openharmony-arm64": "0.28.1", "@esbuild/sunos-x64": "0.28.1", "@esbuild/win32-arm64": "0.28.1", "@esbuild/win32-ia32": "0.28.1", "@esbuild/win32-x64": "0.28.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="], + "@opencode/posts/wrangler/esbuild": ["esbuild@0.28.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.28.1", "@esbuild/android-arm": "0.28.1", "@esbuild/android-arm64": "0.28.1", "@esbuild/android-x64": "0.28.1", "@esbuild/darwin-arm64": "0.28.1", "@esbuild/darwin-x64": "0.28.1", "@esbuild/freebsd-arm64": "0.28.1", "@esbuild/freebsd-x64": "0.28.1", "@esbuild/linux-arm": "0.28.1", "@esbuild/linux-arm64": "0.28.1", "@esbuild/linux-ia32": "0.28.1", "@esbuild/linux-loong64": "0.28.1", "@esbuild/linux-mips64el": "0.28.1", "@esbuild/linux-ppc64": "0.28.1", "@esbuild/linux-riscv64": "0.28.1", "@esbuild/linux-s390x": "0.28.1", "@esbuild/linux-x64": "0.28.1", "@esbuild/netbsd-arm64": "0.28.1", "@esbuild/netbsd-x64": "0.28.1", "@esbuild/openbsd-arm64": "0.28.1", "@esbuild/openbsd-x64": "0.28.1", "@esbuild/openharmony-arm64": "0.28.1", "@esbuild/sunos-x64": "0.28.1", "@esbuild/win32-arm64": "0.28.1", "@esbuild/win32-ia32": "0.28.1", "@esbuild/win32-x64": "0.28.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="], - "@opencode-ai/posts/wrangler/miniflare": ["miniflare@4.20260708.1", "", { "dependencies": { "@cspotcode/source-map-support": "0.8.1", "sharp": "0.34.5", "undici": "7.28.0", "workerd": "1.20260708.1", "ws": "8.21.0", "youch": "4.1.0-beta.10" }, "bin": { "miniflare": "bootstrap.js" } }, "sha512-c94O9zRDISdqO18EHt6l0iF/fWgWt8p18PJvRsA/L/NJZ9Cfke3s/F5Blg1XXF7WDutVRzWVWy8Vy4LaT5ifsA=="], + "@opencode/posts/wrangler/miniflare": ["miniflare@4.20260708.1", "", { "dependencies": { "@cspotcode/source-map-support": "0.8.1", "sharp": "0.34.5", "undici": "7.28.0", "workerd": "1.20260708.1", "ws": "8.21.0", "youch": "4.1.0-beta.10" }, "bin": { "miniflare": "bootstrap.js" } }, "sha512-c94O9zRDISdqO18EHt6l0iF/fWgWt8p18PJvRsA/L/NJZ9Cfke3s/F5Blg1XXF7WDutVRzWVWy8Vy4LaT5ifsA=="], - "@opencode-ai/posts/wrangler/workerd": ["workerd@1.20260708.1", "", { "optionalDependencies": { "@cloudflare/workerd-darwin-64": "1.20260708.1", "@cloudflare/workerd-darwin-arm64": "1.20260708.1", "@cloudflare/workerd-linux-64": "1.20260708.1", "@cloudflare/workerd-linux-arm64": "1.20260708.1", "@cloudflare/workerd-windows-64": "1.20260708.1" }, "bin": { "workerd": "bin/workerd" } }, "sha512-WAK+Kt/VVCSldH2qSr8lx46XCJ4Q+bdlHNaFqUtOHthBEIB8C1N8HVW+VOLrxDoTCk0NGNv0zajnBeQK4JOB9w=="], + "@opencode/posts/wrangler/workerd": ["workerd@1.20260708.1", "", { "optionalDependencies": { "@cloudflare/workerd-darwin-64": "1.20260708.1", "@cloudflare/workerd-darwin-arm64": "1.20260708.1", "@cloudflare/workerd-linux-64": "1.20260708.1", "@cloudflare/workerd-linux-arm64": "1.20260708.1", "@cloudflare/workerd-windows-64": "1.20260708.1" }, "bin": { "workerd": "bin/workerd" } }, "sha512-WAK+Kt/VVCSldH2qSr8lx46XCJ4Q+bdlHNaFqUtOHthBEIB8C1N8HVW+VOLrxDoTCk0NGNv0zajnBeQK4JOB9w=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node": ["@tailwindcss/node@4.1.11", "", { "dependencies": { "@ampproject/remapping": "^2.3.0", "enhanced-resolve": "^5.18.1", "jiti": "^2.4.2", "lightningcss": "1.30.1", "magic-string": "^0.30.17", "source-map-js": "^1.2.1", "tailwindcss": "4.1.11" } }, "sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node": ["@tailwindcss/node@4.1.11", "", { "dependencies": { "@ampproject/remapping": "^2.3.0", "enhanced-resolve": "^5.18.1", "jiti": "^2.4.2", "lightningcss": "1.30.1", "magic-string": "^0.30.17", "source-map-js": "^1.2.1", "tailwindcss": "4.1.11" } }, "sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide": ["@tailwindcss/oxide@4.1.11", "", { "dependencies": { "detect-libc": "^2.0.4", "tar": "^7.4.3" }, "optionalDependencies": { "@tailwindcss/oxide-android-arm64": "4.1.11", "@tailwindcss/oxide-darwin-arm64": "4.1.11", "@tailwindcss/oxide-darwin-x64": "4.1.11", "@tailwindcss/oxide-freebsd-x64": "4.1.11", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.11", "@tailwindcss/oxide-linux-arm64-gnu": "4.1.11", "@tailwindcss/oxide-linux-arm64-musl": "4.1.11", "@tailwindcss/oxide-linux-x64-gnu": "4.1.11", "@tailwindcss/oxide-linux-x64-musl": "4.1.11", "@tailwindcss/oxide-wasm32-wasi": "4.1.11", "@tailwindcss/oxide-win32-arm64-msvc": "4.1.11", "@tailwindcss/oxide-win32-x64-msvc": "4.1.11" } }, "sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide": ["@tailwindcss/oxide@4.1.11", "", { "dependencies": { "detect-libc": "^2.0.4", "tar": "^7.4.3" }, "optionalDependencies": { "@tailwindcss/oxide-android-arm64": "4.1.11", "@tailwindcss/oxide-darwin-arm64": "4.1.11", "@tailwindcss/oxide-darwin-x64": "4.1.11", "@tailwindcss/oxide-freebsd-x64": "4.1.11", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.11", "@tailwindcss/oxide-linux-arm64-gnu": "4.1.11", "@tailwindcss/oxide-linux-arm64-musl": "4.1.11", "@tailwindcss/oxide-linux-x64-gnu": "4.1.11", "@tailwindcss/oxide-linux-x64-musl": "4.1.11", "@tailwindcss/oxide-wasm32-wasi": "4.1.11", "@tailwindcss/oxide-win32-arm64-msvc": "4.1.11", "@tailwindcss/oxide-win32-x64-msvc": "4.1.11" } }, "sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg=="], - "@opencode-ai/storybook/@tailwindcss/vite/tailwindcss": ["tailwindcss@4.1.11", "", {}, "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA=="], + "@opencode/storybook/@tailwindcss/vite/tailwindcss": ["tailwindcss@4.1.11", "", {}, "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA=="], - "@opencode-ai/updates/wrangler/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.5.0", "", {}, "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg=="], + "@opencode/updates/wrangler/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.5.0", "", {}, "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg=="], - "@opencode-ai/updates/wrangler/@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.16.1", "", { "peerDependencies": { "unenv": "2.0.0-rc.24", "workerd": ">1.20260305.0 <2.0.0-0" }, "optionalPeers": ["workerd"] }, "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw=="], + "@opencode/updates/wrangler/@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.16.1", "", { "peerDependencies": { "unenv": "2.0.0-rc.24", "workerd": ">1.20260305.0 <2.0.0-0" }, "optionalPeers": ["workerd"] }, "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw=="], - "@opencode-ai/updates/wrangler/esbuild": ["esbuild@0.28.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.28.1", "@esbuild/android-arm": "0.28.1", "@esbuild/android-arm64": "0.28.1", "@esbuild/android-x64": "0.28.1", "@esbuild/darwin-arm64": "0.28.1", "@esbuild/darwin-x64": "0.28.1", "@esbuild/freebsd-arm64": "0.28.1", "@esbuild/freebsd-x64": "0.28.1", "@esbuild/linux-arm": "0.28.1", "@esbuild/linux-arm64": "0.28.1", "@esbuild/linux-ia32": "0.28.1", "@esbuild/linux-loong64": "0.28.1", "@esbuild/linux-mips64el": "0.28.1", "@esbuild/linux-ppc64": "0.28.1", "@esbuild/linux-riscv64": "0.28.1", "@esbuild/linux-s390x": "0.28.1", "@esbuild/linux-x64": "0.28.1", "@esbuild/netbsd-arm64": "0.28.1", "@esbuild/netbsd-x64": "0.28.1", "@esbuild/openbsd-arm64": "0.28.1", "@esbuild/openbsd-x64": "0.28.1", "@esbuild/openharmony-arm64": "0.28.1", "@esbuild/sunos-x64": "0.28.1", "@esbuild/win32-arm64": "0.28.1", "@esbuild/win32-ia32": "0.28.1", "@esbuild/win32-x64": "0.28.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="], + "@opencode/updates/wrangler/esbuild": ["esbuild@0.28.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.28.1", "@esbuild/android-arm": "0.28.1", "@esbuild/android-arm64": "0.28.1", "@esbuild/android-x64": "0.28.1", "@esbuild/darwin-arm64": "0.28.1", "@esbuild/darwin-x64": "0.28.1", "@esbuild/freebsd-arm64": "0.28.1", "@esbuild/freebsd-x64": "0.28.1", "@esbuild/linux-arm": "0.28.1", "@esbuild/linux-arm64": "0.28.1", "@esbuild/linux-ia32": "0.28.1", "@esbuild/linux-loong64": "0.28.1", "@esbuild/linux-mips64el": "0.28.1", "@esbuild/linux-ppc64": "0.28.1", "@esbuild/linux-riscv64": "0.28.1", "@esbuild/linux-s390x": "0.28.1", "@esbuild/linux-x64": "0.28.1", "@esbuild/netbsd-arm64": "0.28.1", "@esbuild/netbsd-x64": "0.28.1", "@esbuild/openbsd-arm64": "0.28.1", "@esbuild/openbsd-x64": "0.28.1", "@esbuild/openharmony-arm64": "0.28.1", "@esbuild/sunos-x64": "0.28.1", "@esbuild/win32-arm64": "0.28.1", "@esbuild/win32-ia32": "0.28.1", "@esbuild/win32-x64": "0.28.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="], - "@opencode-ai/updates/wrangler/miniflare": ["miniflare@4.20260708.1", "", { "dependencies": { "@cspotcode/source-map-support": "0.8.1", "sharp": "0.34.5", "undici": "7.28.0", "workerd": "1.20260708.1", "ws": "8.21.0", "youch": "4.1.0-beta.10" }, "bin": { "miniflare": "bootstrap.js" } }, "sha512-c94O9zRDISdqO18EHt6l0iF/fWgWt8p18PJvRsA/L/NJZ9Cfke3s/F5Blg1XXF7WDutVRzWVWy8Vy4LaT5ifsA=="], + "@opencode/updates/wrangler/miniflare": ["miniflare@4.20260708.1", "", { "dependencies": { "@cspotcode/source-map-support": "0.8.1", "sharp": "0.34.5", "undici": "7.28.0", "workerd": "1.20260708.1", "ws": "8.21.0", "youch": "4.1.0-beta.10" }, "bin": { "miniflare": "bootstrap.js" } }, "sha512-c94O9zRDISdqO18EHt6l0iF/fWgWt8p18PJvRsA/L/NJZ9Cfke3s/F5Blg1XXF7WDutVRzWVWy8Vy4LaT5ifsA=="], - "@opencode-ai/updates/wrangler/workerd": ["workerd@1.20260708.1", "", { "optionalDependencies": { "@cloudflare/workerd-darwin-64": "1.20260708.1", "@cloudflare/workerd-darwin-arm64": "1.20260708.1", "@cloudflare/workerd-linux-64": "1.20260708.1", "@cloudflare/workerd-linux-arm64": "1.20260708.1", "@cloudflare/workerd-windows-64": "1.20260708.1" }, "bin": { "workerd": "bin/workerd" } }, "sha512-WAK+Kt/VVCSldH2qSr8lx46XCJ4Q+bdlHNaFqUtOHthBEIB8C1N8HVW+VOLrxDoTCk0NGNv0zajnBeQK4JOB9w=="], + "@opencode/updates/wrangler/workerd": ["workerd@1.20260708.1", "", { "optionalDependencies": { "@cloudflare/workerd-darwin-64": "1.20260708.1", "@cloudflare/workerd-darwin-arm64": "1.20260708.1", "@cloudflare/workerd-linux-64": "1.20260708.1", "@cloudflare/workerd-linux-arm64": "1.20260708.1", "@cloudflare/workerd-windows-64": "1.20260708.1" }, "bin": { "workerd": "bin/workerd" } }, "sha512-WAK+Kt/VVCSldH2qSr8lx46XCJ4Q+bdlHNaFqUtOHthBEIB8C1N8HVW+VOLrxDoTCk0NGNv0zajnBeQK4JOB9w=="], - "@opencode-ai/web/@astrojs/cloudflare/@astrojs/internal-helpers": ["@astrojs/internal-helpers@0.7.1", "", {}, "sha512-7dwEVigz9vUWDw3nRwLQ/yH/xYovlUA0ZD86xoeKEBmkz9O6iELG1yri67PgAPW6VLL/xInA4t7H0CK6VmtkKQ=="], + "@opencode/web/@astrojs/cloudflare/@astrojs/internal-helpers": ["@astrojs/internal-helpers@0.7.1", "", {}, "sha512-7dwEVigz9vUWDw3nRwLQ/yH/xYovlUA0ZD86xoeKEBmkz9O6iELG1yri67PgAPW6VLL/xInA4t7H0CK6VmtkKQ=="], - "@opencode-ai/web/@astrojs/cloudflare/@astrojs/underscore-redirects": ["@astrojs/underscore-redirects@1.0.0", "", {}, "sha512-qZxHwVnmb5FXuvRsaIGaqWgnftjCuMY+GSbaVZdBmE4j8AfgPqKPxYp8SUERyJcjpKCEmO4wD6ybuGH8A2kVRQ=="], + "@opencode/web/@astrojs/cloudflare/@astrojs/underscore-redirects": ["@astrojs/underscore-redirects@1.0.0", "", {}, "sha512-qZxHwVnmb5FXuvRsaIGaqWgnftjCuMY+GSbaVZdBmE4j8AfgPqKPxYp8SUERyJcjpKCEmO4wD6ybuGH8A2kVRQ=="], - "@opencode-ai/web/@astrojs/cloudflare/vite": ["vite@6.4.3", "", { "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", "picomatch": "^4.0.2", "postcss": "^8.5.3", "rollup": "^4.34.9", "tinyglobby": "^0.2.13" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-NTKlcQjlAK7MlQoyb6LgaqHc8sso/pVyUJYWMws3jg21uTJw/LddqIFPcPqP6PzpgbIcZyKI85sFE4HBrQDA8A=="], + "@opencode/web/@astrojs/cloudflare/vite": ["vite@6.4.3", "", { "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", "picomatch": "^4.0.2", "postcss": "^8.5.3", "rollup": "^4.34.9", "tinyglobby": "^0.2.13" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-NTKlcQjlAK7MlQoyb6LgaqHc8sso/pVyUJYWMws3jg21uTJw/LddqIFPcPqP6PzpgbIcZyKI85sFE4HBrQDA8A=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler": ["wrangler@4.110.0", "", { "dependencies": { "@cloudflare/kv-asset-handler": "0.5.0", "@cloudflare/unenv-preset": "2.16.1", "blake3-wasm": "2.1.5", "esbuild": "0.28.1", "miniflare": "4.20260708.1", "path-to-regexp": "6.3.0", "unenv": "2.0.0-rc.24", "workerd": "1.20260708.1" }, "optionalDependencies": { "fsevents": "2.3.3" }, "peerDependencies": { "@cloudflare/workers-types": "^5.20260708.1" }, "optionalPeers": ["@cloudflare/workers-types"], "bin": { "wrangler": "bin/wrangler.js", "wrangler2": "bin/wrangler.js", "cf-wrangler": "bin/cf-wrangler.js" } }, "sha512-xZeXKYi7hxQRF5anL+v77RkufJNpF9f3Eqeyqq2QBsETpLZgh0Agj0jJ6JPtkbgn6ukZdh8OK5egsGPWIditgg=="], + "@opencode/web/@astrojs/cloudflare/wrangler": ["wrangler@4.110.0", "", { "dependencies": { "@cloudflare/kv-asset-handler": "0.5.0", "@cloudflare/unenv-preset": "2.16.1", "blake3-wasm": "2.1.5", "esbuild": "0.28.1", "miniflare": "4.20260708.1", "path-to-regexp": "6.3.0", "unenv": "2.0.0-rc.24", "workerd": "1.20260708.1" }, "optionalDependencies": { "fsevents": "2.3.3" }, "peerDependencies": { "@cloudflare/workers-types": "^5.20260708.1" }, "optionalPeers": ["@cloudflare/workers-types"], "bin": { "wrangler": "bin/wrangler.js", "wrangler2": "bin/wrangler.js", "cf-wrangler": "bin/cf-wrangler.js" } }, "sha512-xZeXKYi7hxQRF5anL+v77RkufJNpF9f3Eqeyqq2QBsETpLZgh0Agj0jJ6JPtkbgn6ukZdh8OK5egsGPWIditgg=="], - "@opencode-ai/web/astro/@astrojs/internal-helpers": ["@astrojs/internal-helpers@0.6.1", "", {}, "sha512-l5Pqf6uZu31aG+3Lv8nl/3s4DbUzdlxTWDof4pEpto6GUJNhhCbelVi9dEyurOVyqaelwmS9oSyOWOENSfgo9A=="], + "@opencode/web/astro/@astrojs/internal-helpers": ["@astrojs/internal-helpers@0.6.1", "", {}, "sha512-l5Pqf6uZu31aG+3Lv8nl/3s4DbUzdlxTWDof4pEpto6GUJNhhCbelVi9dEyurOVyqaelwmS9oSyOWOENSfgo9A=="], - "@opencode-ai/web/astro/@astrojs/telemetry": ["@astrojs/telemetry@3.2.1", "", { "dependencies": { "ci-info": "^4.2.0", "debug": "^4.4.0", "dlv": "^1.1.3", "dset": "^3.1.4", "is-docker": "^3.0.0", "is-wsl": "^3.1.0", "which-pm-runs": "^1.1.0" } }, "sha512-SSVM820Jqc6wjsn7qYfV9qfeQvePtVc1nSofhyap7l0/iakUKywj3hfy3UJAOV4sGV4Q/u450RD4AaCaFvNPlg=="], + "@opencode/web/astro/@astrojs/telemetry": ["@astrojs/telemetry@3.2.1", "", { "dependencies": { "ci-info": "^4.2.0", "debug": "^4.4.0", "dlv": "^1.1.3", "dset": "^3.1.4", "is-docker": "^3.0.0", "is-wsl": "^3.1.0", "which-pm-runs": "^1.1.0" } }, "sha512-SSVM820Jqc6wjsn7qYfV9qfeQvePtVc1nSofhyap7l0/iakUKywj3hfy3UJAOV4sGV4Q/u450RD4AaCaFvNPlg=="], - "@opencode-ai/web/astro/@capsizecss/unpack": ["@capsizecss/unpack@2.4.0", "", { "dependencies": { "blob-to-buffer": "^1.2.8", "cross-fetch": "^3.0.4", "fontkit": "^2.0.2" } }, "sha512-GrSU71meACqcmIUxPYOJvGKF0yryjN/L1aCuE9DViCTJI7bfkjgYDPD1zbNDcINJwSSP6UaBZY9GAbYDO7re0Q=="], + "@opencode/web/astro/@capsizecss/unpack": ["@capsizecss/unpack@2.4.0", "", { "dependencies": { "blob-to-buffer": "^1.2.8", "cross-fetch": "^3.0.4", "fontkit": "^2.0.2" } }, "sha512-GrSU71meACqcmIUxPYOJvGKF0yryjN/L1aCuE9DViCTJI7bfkjgYDPD1zbNDcINJwSSP6UaBZY9GAbYDO7re0Q=="], - "@opencode-ai/web/astro/acorn": ["acorn@8.18.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ=="], + "@opencode/web/astro/acorn": ["acorn@8.18.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ=="], - "@opencode-ai/web/astro/ci-info": ["ci-info@4.4.0", "", {}, "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg=="], + "@opencode/web/astro/ci-info": ["ci-info@4.4.0", "", {}, "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg=="], - "@opencode-ai/web/astro/common-ancestor-path": ["common-ancestor-path@1.0.1", "", {}, "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w=="], + "@opencode/web/astro/common-ancestor-path": ["common-ancestor-path@1.0.1", "", {}, "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w=="], - "@opencode-ai/web/astro/cookie": ["cookie@1.1.1", "", {}, "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ=="], + "@opencode/web/astro/cookie": ["cookie@1.1.1", "", {}, "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ=="], - "@opencode-ai/web/astro/diff": ["diff@5.2.2", "", {}, "sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A=="], + "@opencode/web/astro/diff": ["diff@5.2.2", "", {}, "sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A=="], - "@opencode-ai/web/astro/fontace": ["fontace@0.3.1", "", { "dependencies": { "@types/fontkit": "^2.0.8", "fontkit": "^2.0.4" } }, "sha512-9f5g4feWT1jWT8+SbL85aLIRLIXUaDygaM2xPXRmzPYxrOMNok79Lr3FGJoKVNKibE0WCunNiEVG2mwuE+2qEg=="], + "@opencode/web/astro/fontace": ["fontace@0.3.1", "", { "dependencies": { "@types/fontkit": "^2.0.8", "fontkit": "^2.0.4" } }, "sha512-9f5g4feWT1jWT8+SbL85aLIRLIXUaDygaM2xPXRmzPYxrOMNok79Lr3FGJoKVNKibE0WCunNiEVG2mwuE+2qEg=="], - "@opencode-ai/web/astro/js-yaml": ["js-yaml@4.3.1", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ=="], + "@opencode/web/astro/js-yaml": ["js-yaml@4.3.1", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ=="], - "@opencode-ai/web/astro/magicast": ["magicast@0.3.5", "", { "dependencies": { "@babel/parser": "^7.25.4", "@babel/types": "^7.25.4", "source-map-js": "^1.2.0" } }, "sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ=="], + "@opencode/web/astro/magicast": ["magicast@0.3.5", "", { "dependencies": { "@babel/parser": "^7.25.4", "@babel/types": "^7.25.4", "source-map-js": "^1.2.0" } }, "sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ=="], - "@opencode-ai/web/astro/neotraverse": ["neotraverse@0.6.18", "", {}, "sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA=="], + "@opencode/web/astro/neotraverse": ["neotraverse@0.6.18", "", {}, "sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA=="], - "@opencode-ai/web/astro/p-limit": ["p-limit@6.2.0", "", { "dependencies": { "yocto-queue": "^1.1.1" } }, "sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA=="], + "@opencode/web/astro/p-limit": ["p-limit@6.2.0", "", { "dependencies": { "yocto-queue": "^1.1.1" } }, "sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA=="], - "@opencode-ai/web/astro/p-queue": ["p-queue@8.1.1", "", { "dependencies": { "eventemitter3": "^5.0.1", "p-timeout": "^6.1.2" } }, "sha512-aNZ+VfjobsWryoiPnEApGGmf5WmNsCo9xu8dfaYamG5qaLP7ClhLN6NgsFe6SwJ2UbLEBK5dv9x8Mn5+RVhMWQ=="], + "@opencode/web/astro/p-queue": ["p-queue@8.1.1", "", { "dependencies": { "eventemitter3": "^5.0.1", "p-timeout": "^6.1.2" } }, "sha512-aNZ+VfjobsWryoiPnEApGGmf5WmNsCo9xu8dfaYamG5qaLP7ClhLN6NgsFe6SwJ2UbLEBK5dv9x8Mn5+RVhMWQ=="], - "@opencode-ai/web/astro/sharp": ["sharp@0.33.5", "", { "dependencies": { "color": "^4.2.3", "detect-libc": "^2.0.3", "semver": "^7.6.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.33.5", "@img/sharp-darwin-x64": "0.33.5", "@img/sharp-libvips-darwin-arm64": "1.0.4", "@img/sharp-libvips-darwin-x64": "1.0.4", "@img/sharp-libvips-linux-arm": "1.0.5", "@img/sharp-libvips-linux-arm64": "1.0.4", "@img/sharp-libvips-linux-s390x": "1.0.4", "@img/sharp-libvips-linux-x64": "1.0.4", "@img/sharp-libvips-linuxmusl-arm64": "1.0.4", "@img/sharp-libvips-linuxmusl-x64": "1.0.4", "@img/sharp-linux-arm": "0.33.5", "@img/sharp-linux-arm64": "0.33.5", "@img/sharp-linux-s390x": "0.33.5", "@img/sharp-linux-x64": "0.33.5", "@img/sharp-linuxmusl-arm64": "0.33.5", "@img/sharp-linuxmusl-x64": "0.33.5", "@img/sharp-wasm32": "0.33.5", "@img/sharp-win32-ia32": "0.33.5", "@img/sharp-win32-x64": "0.33.5" } }, "sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw=="], + "@opencode/web/astro/sharp": ["sharp@0.33.5", "", { "dependencies": { "color": "^4.2.3", "detect-libc": "^2.0.3", "semver": "^7.6.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.33.5", "@img/sharp-darwin-x64": "0.33.5", "@img/sharp-libvips-darwin-arm64": "1.0.4", "@img/sharp-libvips-darwin-x64": "1.0.4", "@img/sharp-libvips-linux-arm": "1.0.5", "@img/sharp-libvips-linux-arm64": "1.0.4", "@img/sharp-libvips-linux-s390x": "1.0.4", "@img/sharp-libvips-linux-x64": "1.0.4", "@img/sharp-libvips-linuxmusl-arm64": "1.0.4", "@img/sharp-libvips-linuxmusl-x64": "1.0.4", "@img/sharp-linux-arm": "0.33.5", "@img/sharp-linux-arm64": "0.33.5", "@img/sharp-linux-s390x": "0.33.5", "@img/sharp-linux-x64": "0.33.5", "@img/sharp-linuxmusl-arm64": "0.33.5", "@img/sharp-linuxmusl-x64": "0.33.5", "@img/sharp-wasm32": "0.33.5", "@img/sharp-win32-ia32": "0.33.5", "@img/sharp-win32-x64": "0.33.5" } }, "sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw=="], - "@opencode-ai/web/astro/shiki": ["shiki@3.23.0", "", { "dependencies": { "@shikijs/core": "3.23.0", "@shikijs/engine-javascript": "3.23.0", "@shikijs/engine-oniguruma": "3.23.0", "@shikijs/langs": "3.23.0", "@shikijs/themes": "3.23.0", "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, "sha512-55Dj73uq9ZXL5zyeRPzHQsK7Nbyt6Y10k5s7OjuFZGMhpp4r/rsLBH0o/0fstIzX1Lep9VxefWljK/SKCzygIA=="], + "@opencode/web/astro/shiki": ["shiki@3.23.0", "", { "dependencies": { "@shikijs/core": "3.23.0", "@shikijs/engine-javascript": "3.23.0", "@shikijs/engine-oniguruma": "3.23.0", "@shikijs/langs": "3.23.0", "@shikijs/themes": "3.23.0", "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, "sha512-55Dj73uq9ZXL5zyeRPzHQsK7Nbyt6Y10k5s7OjuFZGMhpp4r/rsLBH0o/0fstIzX1Lep9VxefWljK/SKCzygIA=="], - "@opencode-ai/web/astro/tinyexec": ["tinyexec@0.3.2", "", {}, "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="], + "@opencode/web/astro/tinyexec": ["tinyexec@0.3.2", "", {}, "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="], - "@opencode-ai/web/astro/unifont": ["unifont@0.5.2", "", { "dependencies": { "css-tree": "^3.0.0", "ofetch": "^1.4.1", "ohash": "^2.0.0" } }, "sha512-LzR4WUqzH9ILFvjLAUU7dK3Lnou/qd5kD+IakBtBK4S15/+x2y9VX+DcWQv6s551R6W+vzwgVS6tFg3XggGBgg=="], + "@opencode/web/astro/unifont": ["unifont@0.5.2", "", { "dependencies": { "css-tree": "^3.0.0", "ofetch": "^1.4.1", "ohash": "^2.0.0" } }, "sha512-LzR4WUqzH9ILFvjLAUU7dK3Lnou/qd5kD+IakBtBK4S15/+x2y9VX+DcWQv6s551R6W+vzwgVS6tFg3XggGBgg=="], - "@opencode-ai/web/astro/unstorage": ["unstorage@1.17.5", "", { "dependencies": { "anymatch": "^3.1.3", "chokidar": "^5.0.0", "destr": "^2.0.5", "h3": "^1.15.10", "lru-cache": "^11.2.7", "node-fetch-native": "^1.6.7", "ofetch": "^1.5.1", "ufo": "^1.6.3" }, "peerDependencies": { "@azure/app-configuration": "^1.8.0", "@azure/cosmos": "^4.2.0", "@azure/data-tables": "^13.3.0", "@azure/identity": "^4.6.0", "@azure/keyvault-secrets": "^4.9.0", "@azure/storage-blob": "^12.26.0", "@capacitor/preferences": "^6 || ^7 || ^8", "@deno/kv": ">=0.9.0", "@netlify/blobs": "^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0", "@planetscale/database": "^1.19.0", "@upstash/redis": "^1.34.3", "@vercel/blob": ">=0.27.1", "@vercel/functions": "^2.2.12 || ^3.0.0", "@vercel/kv": "^1 || ^2 || ^3", "aws4fetch": "^1.0.20", "db0": ">=0.2.1", "idb-keyval": "^6.2.1", "ioredis": "^5.4.2", "uploadthing": "^7.4.4" }, "optionalPeers": ["@azure/app-configuration", "@azure/cosmos", "@azure/data-tables", "@azure/identity", "@azure/keyvault-secrets", "@azure/storage-blob", "@capacitor/preferences", "@deno/kv", "@netlify/blobs", "@planetscale/database", "@upstash/redis", "@vercel/blob", "@vercel/functions", "@vercel/kv", "aws4fetch", "db0", "idb-keyval", "ioredis", "uploadthing"] }, "sha512-0i3iqvRfx29hkNntHyQvJTpf5W9dQ9ZadSoRU8+xVlhVtT7jAX57fazYO9EHvcRCfBCyi5YRya7XCDOsbTgkPg=="], + "@opencode/web/astro/unstorage": ["unstorage@1.17.5", "", { "dependencies": { "anymatch": "^3.1.3", "chokidar": "^5.0.0", "destr": "^2.0.5", "h3": "^1.15.10", "lru-cache": "^11.2.7", "node-fetch-native": "^1.6.7", "ofetch": "^1.5.1", "ufo": "^1.6.3" }, "peerDependencies": { "@azure/app-configuration": "^1.8.0", "@azure/cosmos": "^4.2.0", "@azure/data-tables": "^13.3.0", "@azure/identity": "^4.6.0", "@azure/keyvault-secrets": "^4.9.0", "@azure/storage-blob": "^12.26.0", "@capacitor/preferences": "^6 || ^7 || ^8", "@deno/kv": ">=0.9.0", "@netlify/blobs": "^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0", "@planetscale/database": "^1.19.0", "@upstash/redis": "^1.34.3", "@vercel/blob": ">=0.27.1", "@vercel/functions": "^2.2.12 || ^3.0.0", "@vercel/kv": "^1 || ^2 || ^3", "aws4fetch": "^1.0.20", "db0": ">=0.2.1", "idb-keyval": "^6.2.1", "ioredis": "^5.4.2", "uploadthing": "^7.4.4" }, "optionalPeers": ["@azure/app-configuration", "@azure/cosmos", "@azure/data-tables", "@azure/identity", "@azure/keyvault-secrets", "@azure/storage-blob", "@capacitor/preferences", "@deno/kv", "@netlify/blobs", "@planetscale/database", "@upstash/redis", "@vercel/blob", "@vercel/functions", "@vercel/kv", "aws4fetch", "db0", "idb-keyval", "ioredis", "uploadthing"] }, "sha512-0i3iqvRfx29hkNntHyQvJTpf5W9dQ9ZadSoRU8+xVlhVtT7jAX57fazYO9EHvcRCfBCyi5YRya7XCDOsbTgkPg=="], - "@opencode-ai/web/astro/vite": ["vite@6.4.3", "", { "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", "picomatch": "^4.0.2", "postcss": "^8.5.3", "rollup": "^4.34.9", "tinyglobby": "^0.2.13" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-NTKlcQjlAK7MlQoyb6LgaqHc8sso/pVyUJYWMws3jg21uTJw/LddqIFPcPqP6PzpgbIcZyKI85sFE4HBrQDA8A=="], + "@opencode/web/astro/vite": ["vite@6.4.3", "", { "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", "picomatch": "^4.0.2", "postcss": "^8.5.3", "rollup": "^4.34.9", "tinyglobby": "^0.2.13" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-NTKlcQjlAK7MlQoyb6LgaqHc8sso/pVyUJYWMws3jg21uTJw/LddqIFPcPqP6PzpgbIcZyKI85sFE4HBrQDA8A=="], - "@opencode-ai/web/astro/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="], + "@opencode/web/astro/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="], - "@opencode-ai/www/@astrojs/markdown-remark/@astrojs/internal-helpers": ["@astrojs/internal-helpers@0.10.4", "", { "dependencies": { "@types/hast": "^3.0.4", "@types/mdast": "^4.0.4", "js-yaml": "^4.3.0", "picomatch": "^4.0.4", "retext-smartypants": "^6.2.0", "shiki": "^4.0.2", "smol-toml": "^1.6.0", "unified": "^11.0.5" } }, "sha512-nozZSy/mKYLqe4YrqbKtdOszedAfXYCtw3wZ0d+CAjz4GqQ4L9rl1ltIL5BlgwmYVinJg/RZ0MgGuWOdlyRZlA=="], + "@opencode/www/@astrojs/markdown-remark/@astrojs/internal-helpers": ["@astrojs/internal-helpers@0.10.4", "", { "dependencies": { "@types/hast": "^3.0.4", "@types/mdast": "^4.0.4", "js-yaml": "^4.3.0", "picomatch": "^4.0.4", "retext-smartypants": "^6.2.0", "shiki": "^4.0.2", "smol-toml": "^1.6.0", "unified": "^11.0.5" } }, "sha512-nozZSy/mKYLqe4YrqbKtdOszedAfXYCtw3wZ0d+CAjz4GqQ4L9rl1ltIL5BlgwmYVinJg/RZ0MgGuWOdlyRZlA=="], - "@opencode-ai/www/@astrojs/markdown-remark/@astrojs/prism": ["@astrojs/prism@4.0.2", "", { "dependencies": { "prismjs": "^1.30.0" } }, "sha512-KTivpmnz6lDsC6o9H4+DNm2SrE/GHzw8cNAvEJwAvUT+eoaEnn/4NtbDNfRRaxaJHdp15gf+tfHAWiXR4wB3BA=="], + "@opencode/www/@astrojs/markdown-remark/@astrojs/prism": ["@astrojs/prism@4.0.2", "", { "dependencies": { "prismjs": "^1.30.0" } }, "sha512-KTivpmnz6lDsC6o9H4+DNm2SrE/GHzw8cNAvEJwAvUT+eoaEnn/4NtbDNfRRaxaJHdp15gf+tfHAWiXR4wB3BA=="], - "@opencode-ai/www/wrangler/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.5.0", "", {}, "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg=="], + "@opencode/www/wrangler/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.5.0", "", {}, "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg=="], - "@opencode-ai/www/wrangler/@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.16.1", "", { "peerDependencies": { "unenv": "2.0.0-rc.24", "workerd": ">1.20260305.0 <2.0.0-0" }, "optionalPeers": ["workerd"] }, "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw=="], + "@opencode/www/wrangler/@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.16.1", "", { "peerDependencies": { "unenv": "2.0.0-rc.24", "workerd": ">1.20260305.0 <2.0.0-0" }, "optionalPeers": ["workerd"] }, "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw=="], - "@opencode-ai/www/wrangler/esbuild": ["esbuild@0.28.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.28.1", "@esbuild/android-arm": "0.28.1", "@esbuild/android-arm64": "0.28.1", "@esbuild/android-x64": "0.28.1", "@esbuild/darwin-arm64": "0.28.1", "@esbuild/darwin-x64": "0.28.1", "@esbuild/freebsd-arm64": "0.28.1", "@esbuild/freebsd-x64": "0.28.1", "@esbuild/linux-arm": "0.28.1", "@esbuild/linux-arm64": "0.28.1", "@esbuild/linux-ia32": "0.28.1", "@esbuild/linux-loong64": "0.28.1", "@esbuild/linux-mips64el": "0.28.1", "@esbuild/linux-ppc64": "0.28.1", "@esbuild/linux-riscv64": "0.28.1", "@esbuild/linux-s390x": "0.28.1", "@esbuild/linux-x64": "0.28.1", "@esbuild/netbsd-arm64": "0.28.1", "@esbuild/netbsd-x64": "0.28.1", "@esbuild/openbsd-arm64": "0.28.1", "@esbuild/openbsd-x64": "0.28.1", "@esbuild/openharmony-arm64": "0.28.1", "@esbuild/sunos-x64": "0.28.1", "@esbuild/win32-arm64": "0.28.1", "@esbuild/win32-ia32": "0.28.1", "@esbuild/win32-x64": "0.28.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="], + "@opencode/www/wrangler/esbuild": ["esbuild@0.28.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.28.1", "@esbuild/android-arm": "0.28.1", "@esbuild/android-arm64": "0.28.1", "@esbuild/android-x64": "0.28.1", "@esbuild/darwin-arm64": "0.28.1", "@esbuild/darwin-x64": "0.28.1", "@esbuild/freebsd-arm64": "0.28.1", "@esbuild/freebsd-x64": "0.28.1", "@esbuild/linux-arm": "0.28.1", "@esbuild/linux-arm64": "0.28.1", "@esbuild/linux-ia32": "0.28.1", "@esbuild/linux-loong64": "0.28.1", "@esbuild/linux-mips64el": "0.28.1", "@esbuild/linux-ppc64": "0.28.1", "@esbuild/linux-riscv64": "0.28.1", "@esbuild/linux-s390x": "0.28.1", "@esbuild/linux-x64": "0.28.1", "@esbuild/netbsd-arm64": "0.28.1", "@esbuild/netbsd-x64": "0.28.1", "@esbuild/openbsd-arm64": "0.28.1", "@esbuild/openbsd-x64": "0.28.1", "@esbuild/openharmony-arm64": "0.28.1", "@esbuild/sunos-x64": "0.28.1", "@esbuild/win32-arm64": "0.28.1", "@esbuild/win32-ia32": "0.28.1", "@esbuild/win32-x64": "0.28.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="], - "@opencode-ai/www/wrangler/miniflare": ["miniflare@4.20260708.1", "", { "dependencies": { "@cspotcode/source-map-support": "0.8.1", "sharp": "0.34.5", "undici": "7.28.0", "workerd": "1.20260708.1", "ws": "8.21.0", "youch": "4.1.0-beta.10" }, "bin": { "miniflare": "bootstrap.js" } }, "sha512-c94O9zRDISdqO18EHt6l0iF/fWgWt8p18PJvRsA/L/NJZ9Cfke3s/F5Blg1XXF7WDutVRzWVWy8Vy4LaT5ifsA=="], + "@opencode/www/wrangler/miniflare": ["miniflare@4.20260708.1", "", { "dependencies": { "@cspotcode/source-map-support": "0.8.1", "sharp": "0.34.5", "undici": "7.28.0", "workerd": "1.20260708.1", "ws": "8.21.0", "youch": "4.1.0-beta.10" }, "bin": { "miniflare": "bootstrap.js" } }, "sha512-c94O9zRDISdqO18EHt6l0iF/fWgWt8p18PJvRsA/L/NJZ9Cfke3s/F5Blg1XXF7WDutVRzWVWy8Vy4LaT5ifsA=="], - "@opencode-ai/www/wrangler/workerd": ["workerd@1.20260708.1", "", { "optionalDependencies": { "@cloudflare/workerd-darwin-64": "1.20260708.1", "@cloudflare/workerd-darwin-arm64": "1.20260708.1", "@cloudflare/workerd-linux-64": "1.20260708.1", "@cloudflare/workerd-linux-arm64": "1.20260708.1", "@cloudflare/workerd-windows-64": "1.20260708.1" }, "bin": { "workerd": "bin/workerd" } }, "sha512-WAK+Kt/VVCSldH2qSr8lx46XCJ4Q+bdlHNaFqUtOHthBEIB8C1N8HVW+VOLrxDoTCk0NGNv0zajnBeQK4JOB9w=="], + "@opencode/www/wrangler/workerd": ["workerd@1.20260708.1", "", { "optionalDependencies": { "@cloudflare/workerd-darwin-64": "1.20260708.1", "@cloudflare/workerd-darwin-arm64": "1.20260708.1", "@cloudflare/workerd-linux-64": "1.20260708.1", "@cloudflare/workerd-linux-arm64": "1.20260708.1", "@cloudflare/workerd-windows-64": "1.20260708.1" }, "bin": { "workerd": "bin/workerd" } }, "sha512-WAK+Kt/VVCSldH2qSr8lx46XCJ4Q+bdlHNaFqUtOHthBEIB8C1N8HVW+VOLrxDoTCk0NGNv0zajnBeQK4JOB9w=="], "@opentelemetry/instrumentation/@opentelemetry/api-logs/@opentelemetry/api": ["@opentelemetry/api@1.9.1", "", {}, "sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q=="], @@ -8040,327 +8040,327 @@ "@octokit/rest/@octokit/core/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@28.0.0", "", {}, "sha512-0rFyLuyHvIj6uuZWuDslxkowFYdPXoNIkeAv4b27dzm2Tf4vGWXnPsMcxs7d65kLdMERgP3wc1AEPlqMz8e1cQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss": ["lightningcss@1.30.1", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-darwin-arm64": "1.30.1", "lightningcss-darwin-x64": "1.30.1", "lightningcss-freebsd-x64": "1.30.1", "lightningcss-linux-arm-gnueabihf": "1.30.1", "lightningcss-linux-arm64-gnu": "1.30.1", "lightningcss-linux-arm64-musl": "1.30.1", "lightningcss-linux-x64-gnu": "1.30.1", "lightningcss-linux-x64-musl": "1.30.1", "lightningcss-win32-arm64-msvc": "1.30.1", "lightningcss-win32-x64-msvc": "1.30.1" } }, "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss": ["lightningcss@1.30.1", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-darwin-arm64": "1.30.1", "lightningcss-darwin-x64": "1.30.1", "lightningcss-freebsd-x64": "1.30.1", "lightningcss-linux-arm-gnueabihf": "1.30.1", "lightningcss-linux-arm64-gnu": "1.30.1", "lightningcss-linux-arm64-musl": "1.30.1", "lightningcss-linux-x64-gnu": "1.30.1", "lightningcss-linux-x64-musl": "1.30.1", "lightningcss-win32-arm64-msvc": "1.30.1", "lightningcss-win32-x64-msvc": "1.30.1" } }, "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-android-arm64": ["@tailwindcss/oxide-android-arm64@4.1.11", "", { "os": "android", "cpu": "arm64" }, "sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-android-arm64": ["@tailwindcss/oxide-android-arm64@4.1.11", "", { "os": "android", "cpu": "arm64" }, "sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-darwin-arm64": ["@tailwindcss/oxide-darwin-arm64@4.1.11", "", { "os": "darwin", "cpu": "arm64" }, "sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-darwin-arm64": ["@tailwindcss/oxide-darwin-arm64@4.1.11", "", { "os": "darwin", "cpu": "arm64" }, "sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-darwin-x64": ["@tailwindcss/oxide-darwin-x64@4.1.11", "", { "os": "darwin", "cpu": "x64" }, "sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-darwin-x64": ["@tailwindcss/oxide-darwin-x64@4.1.11", "", { "os": "darwin", "cpu": "x64" }, "sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-freebsd-x64": ["@tailwindcss/oxide-freebsd-x64@4.1.11", "", { "os": "freebsd", "cpu": "x64" }, "sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-freebsd-x64": ["@tailwindcss/oxide-freebsd-x64@4.1.11", "", { "os": "freebsd", "cpu": "x64" }, "sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm-gnueabihf": ["@tailwindcss/oxide-linux-arm-gnueabihf@4.1.11", "", { "os": "linux", "cpu": "arm" }, "sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm-gnueabihf": ["@tailwindcss/oxide-linux-arm-gnueabihf@4.1.11", "", { "os": "linux", "cpu": "arm" }, "sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm64-gnu": ["@tailwindcss/oxide-linux-arm64-gnu@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm64-gnu": ["@tailwindcss/oxide-linux-arm64-gnu@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm64-musl": ["@tailwindcss/oxide-linux-arm64-musl@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm64-musl": ["@tailwindcss/oxide-linux-arm64-musl@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-x64-gnu": ["@tailwindcss/oxide-linux-x64-gnu@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-x64-gnu": ["@tailwindcss/oxide-linux-x64-gnu@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-x64-musl": ["@tailwindcss/oxide-linux-x64-musl@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-x64-musl": ["@tailwindcss/oxide-linux-x64-musl@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi": ["@tailwindcss/oxide-wasm32-wasi@4.1.11", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@emnapi/wasi-threads": "^1.0.2", "@napi-rs/wasm-runtime": "^0.2.11", "@tybys/wasm-util": "^0.9.0", "tslib": "^2.8.0" }, "cpu": "none" }, "sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi": ["@tailwindcss/oxide-wasm32-wasi@4.1.11", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@emnapi/wasi-threads": "^1.0.2", "@napi-rs/wasm-runtime": "^0.2.11", "@tybys/wasm-util": "^0.9.0", "tslib": "^2.8.0" }, "cpu": "none" }, "sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-win32-arm64-msvc": ["@tailwindcss/oxide-win32-arm64-msvc@4.1.11", "", { "os": "win32", "cpu": "arm64" }, "sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-win32-arm64-msvc": ["@tailwindcss/oxide-win32-arm64-msvc@4.1.11", "", { "os": "win32", "cpu": "arm64" }, "sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.1.11", "", { "os": "win32", "cpu": "x64" }, "sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.1.11", "", { "os": "win32", "cpu": "x64" }, "sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.28.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.28.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.28.1", "", { "os": "android", "cpu": "arm" }, "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.28.1", "", { "os": "android", "cpu": "arm" }, "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.28.1", "", { "os": "android", "cpu": "arm64" }, "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg=="], + "@opencode/posts/wrangler/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.28.1", "", { "os": "android", "cpu": "arm64" }, "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.28.1", "", { "os": "android", "cpu": "x64" }, "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng=="], + "@opencode/posts/wrangler/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.28.1", "", { "os": "android", "cpu": "x64" }, "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.28.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q=="], + "@opencode/posts/wrangler/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.28.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.28.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.28.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.28.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw=="], + "@opencode/posts/wrangler/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.28.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.28.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.28.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.28.1", "", { "os": "linux", "cpu": "arm" }, "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.28.1", "", { "os": "linux", "cpu": "arm" }, "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.28.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.28.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.28.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.28.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.28.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.28.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.28.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.28.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.28.1", "", { "os": "linux", "cpu": "x64" }, "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA=="], + "@opencode/posts/wrangler/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.28.1", "", { "os": "linux", "cpu": "x64" }, "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw=="], + "@opencode/posts/wrangler/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.28.1", "", { "os": "none", "cpu": "x64" }, "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg=="], + "@opencode/posts/wrangler/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.28.1", "", { "os": "none", "cpu": "x64" }, "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.28.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q=="], + "@opencode/posts/wrangler/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.28.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.28.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw=="], + "@opencode/posts/wrangler/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.28.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg=="], + "@opencode/posts/wrangler/esbuild/@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.28.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ=="], + "@opencode/posts/wrangler/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.28.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.28.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA=="], + "@opencode/posts/wrangler/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.28.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.28.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg=="], + "@opencode/posts/wrangler/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.28.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg=="], - "@opencode-ai/posts/wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.28.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A=="], + "@opencode/posts/wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.28.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A=="], - "@opencode-ai/posts/wrangler/miniflare/sharp": ["sharp@0.34.5", "", { "dependencies": { "@img/colour": "^1.0.0", "detect-libc": "^2.1.2", "semver": "^7.7.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.34.5", "@img/sharp-darwin-x64": "0.34.5", "@img/sharp-libvips-darwin-arm64": "1.2.4", "@img/sharp-libvips-darwin-x64": "1.2.4", "@img/sharp-libvips-linux-arm": "1.2.4", "@img/sharp-libvips-linux-arm64": "1.2.4", "@img/sharp-libvips-linux-ppc64": "1.2.4", "@img/sharp-libvips-linux-riscv64": "1.2.4", "@img/sharp-libvips-linux-s390x": "1.2.4", "@img/sharp-libvips-linux-x64": "1.2.4", "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", "@img/sharp-libvips-linuxmusl-x64": "1.2.4", "@img/sharp-linux-arm": "0.34.5", "@img/sharp-linux-arm64": "0.34.5", "@img/sharp-linux-ppc64": "0.34.5", "@img/sharp-linux-riscv64": "0.34.5", "@img/sharp-linux-s390x": "0.34.5", "@img/sharp-linux-x64": "0.34.5", "@img/sharp-linuxmusl-arm64": "0.34.5", "@img/sharp-linuxmusl-x64": "0.34.5", "@img/sharp-wasm32": "0.34.5", "@img/sharp-win32-arm64": "0.34.5", "@img/sharp-win32-ia32": "0.34.5", "@img/sharp-win32-x64": "0.34.5" } }, "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg=="], + "@opencode/posts/wrangler/miniflare/sharp": ["sharp@0.34.5", "", { "dependencies": { "@img/colour": "^1.0.0", "detect-libc": "^2.1.2", "semver": "^7.7.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.34.5", "@img/sharp-darwin-x64": "0.34.5", "@img/sharp-libvips-darwin-arm64": "1.2.4", "@img/sharp-libvips-darwin-x64": "1.2.4", "@img/sharp-libvips-linux-arm": "1.2.4", "@img/sharp-libvips-linux-arm64": "1.2.4", "@img/sharp-libvips-linux-ppc64": "1.2.4", "@img/sharp-libvips-linux-riscv64": "1.2.4", "@img/sharp-libvips-linux-s390x": "1.2.4", "@img/sharp-libvips-linux-x64": "1.2.4", "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", "@img/sharp-libvips-linuxmusl-x64": "1.2.4", "@img/sharp-linux-arm": "0.34.5", "@img/sharp-linux-arm64": "0.34.5", "@img/sharp-linux-ppc64": "0.34.5", "@img/sharp-linux-riscv64": "0.34.5", "@img/sharp-linux-s390x": "0.34.5", "@img/sharp-linux-x64": "0.34.5", "@img/sharp-linuxmusl-arm64": "0.34.5", "@img/sharp-linuxmusl-x64": "0.34.5", "@img/sharp-wasm32": "0.34.5", "@img/sharp-win32-arm64": "0.34.5", "@img/sharp-win32-ia32": "0.34.5", "@img/sharp-win32-x64": "0.34.5" } }, "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg=="], - "@opencode-ai/posts/wrangler/miniflare/undici": ["undici@7.28.0", "", {}, "sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA=="], + "@opencode/posts/wrangler/miniflare/undici": ["undici@7.28.0", "", {}, "sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA=="], - "@opencode-ai/posts/wrangler/workerd/@cloudflare/workerd-darwin-64": ["@cloudflare/workerd-darwin-64@1.20260708.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-HXFCvhS1wpg3uXO0CLUwmwC41i2loM5FSK69EUchOBpmYBAXxT1oHLm6EOA5lqhTk5Mu9kjRiQYxa1GwKPwfJg=="], + "@opencode/posts/wrangler/workerd/@cloudflare/workerd-darwin-64": ["@cloudflare/workerd-darwin-64@1.20260708.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-HXFCvhS1wpg3uXO0CLUwmwC41i2loM5FSK69EUchOBpmYBAXxT1oHLm6EOA5lqhTk5Mu9kjRiQYxa1GwKPwfJg=="], - "@opencode-ai/posts/wrangler/workerd/@cloudflare/workerd-darwin-arm64": ["@cloudflare/workerd-darwin-arm64@1.20260708.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-JVlJaKDoRTVKSroHIlf8g3UCPjKj4iDbMZE2CNYht5qQ+2rL0FAUiVlV82G3BqKnnw9kHYnnsMzC08b9zVtdzA=="], + "@opencode/posts/wrangler/workerd/@cloudflare/workerd-darwin-arm64": ["@cloudflare/workerd-darwin-arm64@1.20260708.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-JVlJaKDoRTVKSroHIlf8g3UCPjKj4iDbMZE2CNYht5qQ+2rL0FAUiVlV82G3BqKnnw9kHYnnsMzC08b9zVtdzA=="], - "@opencode-ai/posts/wrangler/workerd/@cloudflare/workerd-linux-64": ["@cloudflare/workerd-linux-64@1.20260708.1", "", { "os": "linux", "cpu": "x64" }, "sha512-3daE60YdD7YX0Jtuzc9DE/r/qMkmx8ZvHTkF8Mzmp3F5tbzlV0DAzmu5PFUPF2WuvtKbAhZKbvC2cHmWpQYxnA=="], + "@opencode/posts/wrangler/workerd/@cloudflare/workerd-linux-64": ["@cloudflare/workerd-linux-64@1.20260708.1", "", { "os": "linux", "cpu": "x64" }, "sha512-3daE60YdD7YX0Jtuzc9DE/r/qMkmx8ZvHTkF8Mzmp3F5tbzlV0DAzmu5PFUPF2WuvtKbAhZKbvC2cHmWpQYxnA=="], - "@opencode-ai/posts/wrangler/workerd/@cloudflare/workerd-linux-arm64": ["@cloudflare/workerd-linux-arm64@1.20260708.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLdNYOx5Hj+9C6isy0ACWZsbMtSxex2DIJWEe7cZxUdlphZ58ZT8zxNXK8yunFiowd34hn3VwGMopdvdj8lvmA=="], + "@opencode/posts/wrangler/workerd/@cloudflare/workerd-linux-arm64": ["@cloudflare/workerd-linux-arm64@1.20260708.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLdNYOx5Hj+9C6isy0ACWZsbMtSxex2DIJWEe7cZxUdlphZ58ZT8zxNXK8yunFiowd34hn3VwGMopdvdj8lvmA=="], - "@opencode-ai/posts/wrangler/workerd/@cloudflare/workerd-windows-64": ["@cloudflare/workerd-windows-64@1.20260708.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bC/aSAwLy16Vjo24i9XU3aWH+eRgz7NeR5xPKavGbembO18ZywYTQbXh14eXtY6fAqN3RzRG8psijTdhX4xydA=="], + "@opencode/posts/wrangler/workerd/@cloudflare/workerd-windows-64": ["@cloudflare/workerd-windows-64@1.20260708.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bC/aSAwLy16Vjo24i9XU3aWH+eRgz7NeR5xPKavGbembO18ZywYTQbXh14eXtY6fAqN3RzRG8psijTdhX4xydA=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss": ["lightningcss@1.30.1", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-darwin-arm64": "1.30.1", "lightningcss-darwin-x64": "1.30.1", "lightningcss-freebsd-x64": "1.30.1", "lightningcss-linux-arm-gnueabihf": "1.30.1", "lightningcss-linux-arm64-gnu": "1.30.1", "lightningcss-linux-arm64-musl": "1.30.1", "lightningcss-linux-x64-gnu": "1.30.1", "lightningcss-linux-x64-musl": "1.30.1", "lightningcss-win32-arm64-msvc": "1.30.1", "lightningcss-win32-x64-msvc": "1.30.1" } }, "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss": ["lightningcss@1.30.1", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-darwin-arm64": "1.30.1", "lightningcss-darwin-x64": "1.30.1", "lightningcss-freebsd-x64": "1.30.1", "lightningcss-linux-arm-gnueabihf": "1.30.1", "lightningcss-linux-arm64-gnu": "1.30.1", "lightningcss-linux-arm64-musl": "1.30.1", "lightningcss-linux-x64-gnu": "1.30.1", "lightningcss-linux-x64-musl": "1.30.1", "lightningcss-win32-arm64-msvc": "1.30.1", "lightningcss-win32-x64-msvc": "1.30.1" } }, "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-android-arm64": ["@tailwindcss/oxide-android-arm64@4.1.11", "", { "os": "android", "cpu": "arm64" }, "sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-android-arm64": ["@tailwindcss/oxide-android-arm64@4.1.11", "", { "os": "android", "cpu": "arm64" }, "sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-darwin-arm64": ["@tailwindcss/oxide-darwin-arm64@4.1.11", "", { "os": "darwin", "cpu": "arm64" }, "sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-darwin-arm64": ["@tailwindcss/oxide-darwin-arm64@4.1.11", "", { "os": "darwin", "cpu": "arm64" }, "sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-darwin-x64": ["@tailwindcss/oxide-darwin-x64@4.1.11", "", { "os": "darwin", "cpu": "x64" }, "sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-darwin-x64": ["@tailwindcss/oxide-darwin-x64@4.1.11", "", { "os": "darwin", "cpu": "x64" }, "sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-freebsd-x64": ["@tailwindcss/oxide-freebsd-x64@4.1.11", "", { "os": "freebsd", "cpu": "x64" }, "sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-freebsd-x64": ["@tailwindcss/oxide-freebsd-x64@4.1.11", "", { "os": "freebsd", "cpu": "x64" }, "sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm-gnueabihf": ["@tailwindcss/oxide-linux-arm-gnueabihf@4.1.11", "", { "os": "linux", "cpu": "arm" }, "sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm-gnueabihf": ["@tailwindcss/oxide-linux-arm-gnueabihf@4.1.11", "", { "os": "linux", "cpu": "arm" }, "sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm64-gnu": ["@tailwindcss/oxide-linux-arm64-gnu@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm64-gnu": ["@tailwindcss/oxide-linux-arm64-gnu@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm64-musl": ["@tailwindcss/oxide-linux-arm64-musl@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-arm64-musl": ["@tailwindcss/oxide-linux-arm64-musl@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-x64-gnu": ["@tailwindcss/oxide-linux-x64-gnu@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-x64-gnu": ["@tailwindcss/oxide-linux-x64-gnu@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-x64-musl": ["@tailwindcss/oxide-linux-x64-musl@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-linux-x64-musl": ["@tailwindcss/oxide-linux-x64-musl@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi": ["@tailwindcss/oxide-wasm32-wasi@4.1.11", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@emnapi/wasi-threads": "^1.0.2", "@napi-rs/wasm-runtime": "^0.2.11", "@tybys/wasm-util": "^0.9.0", "tslib": "^2.8.0" }, "cpu": "none" }, "sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi": ["@tailwindcss/oxide-wasm32-wasi@4.1.11", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@emnapi/wasi-threads": "^1.0.2", "@napi-rs/wasm-runtime": "^0.2.11", "@tybys/wasm-util": "^0.9.0", "tslib": "^2.8.0" }, "cpu": "none" }, "sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-win32-arm64-msvc": ["@tailwindcss/oxide-win32-arm64-msvc@4.1.11", "", { "os": "win32", "cpu": "arm64" }, "sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-win32-arm64-msvc": ["@tailwindcss/oxide-win32-arm64-msvc@4.1.11", "", { "os": "win32", "cpu": "arm64" }, "sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.1.11", "", { "os": "win32", "cpu": "x64" }, "sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.1.11", "", { "os": "win32", "cpu": "x64" }, "sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.28.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.28.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.28.1", "", { "os": "android", "cpu": "arm" }, "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.28.1", "", { "os": "android", "cpu": "arm" }, "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.28.1", "", { "os": "android", "cpu": "arm64" }, "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg=="], + "@opencode/updates/wrangler/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.28.1", "", { "os": "android", "cpu": "arm64" }, "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.28.1", "", { "os": "android", "cpu": "x64" }, "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng=="], + "@opencode/updates/wrangler/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.28.1", "", { "os": "android", "cpu": "x64" }, "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.28.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q=="], + "@opencode/updates/wrangler/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.28.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.28.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.28.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.28.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw=="], + "@opencode/updates/wrangler/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.28.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.28.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.28.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.28.1", "", { "os": "linux", "cpu": "arm" }, "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.28.1", "", { "os": "linux", "cpu": "arm" }, "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.28.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.28.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.28.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.28.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.28.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.28.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.28.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.28.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.28.1", "", { "os": "linux", "cpu": "x64" }, "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA=="], + "@opencode/updates/wrangler/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.28.1", "", { "os": "linux", "cpu": "x64" }, "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw=="], + "@opencode/updates/wrangler/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.28.1", "", { "os": "none", "cpu": "x64" }, "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg=="], + "@opencode/updates/wrangler/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.28.1", "", { "os": "none", "cpu": "x64" }, "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.28.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q=="], + "@opencode/updates/wrangler/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.28.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.28.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw=="], + "@opencode/updates/wrangler/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.28.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg=="], + "@opencode/updates/wrangler/esbuild/@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.28.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ=="], + "@opencode/updates/wrangler/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.28.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.28.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA=="], + "@opencode/updates/wrangler/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.28.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.28.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg=="], + "@opencode/updates/wrangler/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.28.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg=="], - "@opencode-ai/updates/wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.28.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A=="], + "@opencode/updates/wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.28.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A=="], - "@opencode-ai/updates/wrangler/miniflare/sharp": ["sharp@0.34.5", "", { "dependencies": { "@img/colour": "^1.0.0", "detect-libc": "^2.1.2", "semver": "^7.7.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.34.5", "@img/sharp-darwin-x64": "0.34.5", "@img/sharp-libvips-darwin-arm64": "1.2.4", "@img/sharp-libvips-darwin-x64": "1.2.4", "@img/sharp-libvips-linux-arm": "1.2.4", "@img/sharp-libvips-linux-arm64": "1.2.4", "@img/sharp-libvips-linux-ppc64": "1.2.4", "@img/sharp-libvips-linux-riscv64": "1.2.4", "@img/sharp-libvips-linux-s390x": "1.2.4", "@img/sharp-libvips-linux-x64": "1.2.4", "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", "@img/sharp-libvips-linuxmusl-x64": "1.2.4", "@img/sharp-linux-arm": "0.34.5", "@img/sharp-linux-arm64": "0.34.5", "@img/sharp-linux-ppc64": "0.34.5", "@img/sharp-linux-riscv64": "0.34.5", "@img/sharp-linux-s390x": "0.34.5", "@img/sharp-linux-x64": "0.34.5", "@img/sharp-linuxmusl-arm64": "0.34.5", "@img/sharp-linuxmusl-x64": "0.34.5", "@img/sharp-wasm32": "0.34.5", "@img/sharp-win32-arm64": "0.34.5", "@img/sharp-win32-ia32": "0.34.5", "@img/sharp-win32-x64": "0.34.5" } }, "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg=="], + "@opencode/updates/wrangler/miniflare/sharp": ["sharp@0.34.5", "", { "dependencies": { "@img/colour": "^1.0.0", "detect-libc": "^2.1.2", "semver": "^7.7.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.34.5", "@img/sharp-darwin-x64": "0.34.5", "@img/sharp-libvips-darwin-arm64": "1.2.4", "@img/sharp-libvips-darwin-x64": "1.2.4", "@img/sharp-libvips-linux-arm": "1.2.4", "@img/sharp-libvips-linux-arm64": "1.2.4", "@img/sharp-libvips-linux-ppc64": "1.2.4", "@img/sharp-libvips-linux-riscv64": "1.2.4", "@img/sharp-libvips-linux-s390x": "1.2.4", "@img/sharp-libvips-linux-x64": "1.2.4", "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", "@img/sharp-libvips-linuxmusl-x64": "1.2.4", "@img/sharp-linux-arm": "0.34.5", "@img/sharp-linux-arm64": "0.34.5", "@img/sharp-linux-ppc64": "0.34.5", "@img/sharp-linux-riscv64": "0.34.5", "@img/sharp-linux-s390x": "0.34.5", "@img/sharp-linux-x64": "0.34.5", "@img/sharp-linuxmusl-arm64": "0.34.5", "@img/sharp-linuxmusl-x64": "0.34.5", "@img/sharp-wasm32": "0.34.5", "@img/sharp-win32-arm64": "0.34.5", "@img/sharp-win32-ia32": "0.34.5", "@img/sharp-win32-x64": "0.34.5" } }, "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg=="], - "@opencode-ai/updates/wrangler/miniflare/undici": ["undici@7.28.0", "", {}, "sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA=="], + "@opencode/updates/wrangler/miniflare/undici": ["undici@7.28.0", "", {}, "sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA=="], - "@opencode-ai/updates/wrangler/workerd/@cloudflare/workerd-darwin-64": ["@cloudflare/workerd-darwin-64@1.20260708.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-HXFCvhS1wpg3uXO0CLUwmwC41i2loM5FSK69EUchOBpmYBAXxT1oHLm6EOA5lqhTk5Mu9kjRiQYxa1GwKPwfJg=="], + "@opencode/updates/wrangler/workerd/@cloudflare/workerd-darwin-64": ["@cloudflare/workerd-darwin-64@1.20260708.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-HXFCvhS1wpg3uXO0CLUwmwC41i2loM5FSK69EUchOBpmYBAXxT1oHLm6EOA5lqhTk5Mu9kjRiQYxa1GwKPwfJg=="], - "@opencode-ai/updates/wrangler/workerd/@cloudflare/workerd-darwin-arm64": ["@cloudflare/workerd-darwin-arm64@1.20260708.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-JVlJaKDoRTVKSroHIlf8g3UCPjKj4iDbMZE2CNYht5qQ+2rL0FAUiVlV82G3BqKnnw9kHYnnsMzC08b9zVtdzA=="], + "@opencode/updates/wrangler/workerd/@cloudflare/workerd-darwin-arm64": ["@cloudflare/workerd-darwin-arm64@1.20260708.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-JVlJaKDoRTVKSroHIlf8g3UCPjKj4iDbMZE2CNYht5qQ+2rL0FAUiVlV82G3BqKnnw9kHYnnsMzC08b9zVtdzA=="], - "@opencode-ai/updates/wrangler/workerd/@cloudflare/workerd-linux-64": ["@cloudflare/workerd-linux-64@1.20260708.1", "", { "os": "linux", "cpu": "x64" }, "sha512-3daE60YdD7YX0Jtuzc9DE/r/qMkmx8ZvHTkF8Mzmp3F5tbzlV0DAzmu5PFUPF2WuvtKbAhZKbvC2cHmWpQYxnA=="], + "@opencode/updates/wrangler/workerd/@cloudflare/workerd-linux-64": ["@cloudflare/workerd-linux-64@1.20260708.1", "", { "os": "linux", "cpu": "x64" }, "sha512-3daE60YdD7YX0Jtuzc9DE/r/qMkmx8ZvHTkF8Mzmp3F5tbzlV0DAzmu5PFUPF2WuvtKbAhZKbvC2cHmWpQYxnA=="], - "@opencode-ai/updates/wrangler/workerd/@cloudflare/workerd-linux-arm64": ["@cloudflare/workerd-linux-arm64@1.20260708.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLdNYOx5Hj+9C6isy0ACWZsbMtSxex2DIJWEe7cZxUdlphZ58ZT8zxNXK8yunFiowd34hn3VwGMopdvdj8lvmA=="], + "@opencode/updates/wrangler/workerd/@cloudflare/workerd-linux-arm64": ["@cloudflare/workerd-linux-arm64@1.20260708.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLdNYOx5Hj+9C6isy0ACWZsbMtSxex2DIJWEe7cZxUdlphZ58ZT8zxNXK8yunFiowd34hn3VwGMopdvdj8lvmA=="], - "@opencode-ai/updates/wrangler/workerd/@cloudflare/workerd-windows-64": ["@cloudflare/workerd-windows-64@1.20260708.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bC/aSAwLy16Vjo24i9XU3aWH+eRgz7NeR5xPKavGbembO18ZywYTQbXh14eXtY6fAqN3RzRG8psijTdhX4xydA=="], + "@opencode/updates/wrangler/workerd/@cloudflare/workerd-windows-64": ["@cloudflare/workerd-windows-64@1.20260708.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bC/aSAwLy16Vjo24i9XU3aWH+eRgz7NeR5xPKavGbembO18ZywYTQbXh14eXtY6fAqN3RzRG8psijTdhX4xydA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.5.0", "", {}, "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.5.0", "", {}, "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.16.1", "", { "peerDependencies": { "unenv": "2.0.0-rc.24", "workerd": ">1.20260305.0 <2.0.0-0" }, "optionalPeers": ["workerd"] }, "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/@cloudflare/unenv-preset": ["@cloudflare/unenv-preset@2.16.1", "", { "peerDependencies": { "unenv": "2.0.0-rc.24", "workerd": ">1.20260305.0 <2.0.0-0" }, "optionalPeers": ["workerd"] }, "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild": ["esbuild@0.28.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.28.1", "@esbuild/android-arm": "0.28.1", "@esbuild/android-arm64": "0.28.1", "@esbuild/android-x64": "0.28.1", "@esbuild/darwin-arm64": "0.28.1", "@esbuild/darwin-x64": "0.28.1", "@esbuild/freebsd-arm64": "0.28.1", "@esbuild/freebsd-x64": "0.28.1", "@esbuild/linux-arm": "0.28.1", "@esbuild/linux-arm64": "0.28.1", "@esbuild/linux-ia32": "0.28.1", "@esbuild/linux-loong64": "0.28.1", "@esbuild/linux-mips64el": "0.28.1", "@esbuild/linux-ppc64": "0.28.1", "@esbuild/linux-riscv64": "0.28.1", "@esbuild/linux-s390x": "0.28.1", "@esbuild/linux-x64": "0.28.1", "@esbuild/netbsd-arm64": "0.28.1", "@esbuild/netbsd-x64": "0.28.1", "@esbuild/openbsd-arm64": "0.28.1", "@esbuild/openbsd-x64": "0.28.1", "@esbuild/openharmony-arm64": "0.28.1", "@esbuild/sunos-x64": "0.28.1", "@esbuild/win32-arm64": "0.28.1", "@esbuild/win32-ia32": "0.28.1", "@esbuild/win32-x64": "0.28.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild": ["esbuild@0.28.1", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.28.1", "@esbuild/android-arm": "0.28.1", "@esbuild/android-arm64": "0.28.1", "@esbuild/android-x64": "0.28.1", "@esbuild/darwin-arm64": "0.28.1", "@esbuild/darwin-x64": "0.28.1", "@esbuild/freebsd-arm64": "0.28.1", "@esbuild/freebsd-x64": "0.28.1", "@esbuild/linux-arm": "0.28.1", "@esbuild/linux-arm64": "0.28.1", "@esbuild/linux-ia32": "0.28.1", "@esbuild/linux-loong64": "0.28.1", "@esbuild/linux-mips64el": "0.28.1", "@esbuild/linux-ppc64": "0.28.1", "@esbuild/linux-riscv64": "0.28.1", "@esbuild/linux-s390x": "0.28.1", "@esbuild/linux-x64": "0.28.1", "@esbuild/netbsd-arm64": "0.28.1", "@esbuild/netbsd-x64": "0.28.1", "@esbuild/openbsd-arm64": "0.28.1", "@esbuild/openbsd-x64": "0.28.1", "@esbuild/openharmony-arm64": "0.28.1", "@esbuild/sunos-x64": "0.28.1", "@esbuild/win32-arm64": "0.28.1", "@esbuild/win32-ia32": "0.28.1", "@esbuild/win32-x64": "0.28.1" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare": ["miniflare@4.20260708.1", "", { "dependencies": { "@cspotcode/source-map-support": "0.8.1", "sharp": "0.34.5", "undici": "7.28.0", "workerd": "1.20260708.1", "ws": "8.21.0", "youch": "4.1.0-beta.10" }, "bin": { "miniflare": "bootstrap.js" } }, "sha512-c94O9zRDISdqO18EHt6l0iF/fWgWt8p18PJvRsA/L/NJZ9Cfke3s/F5Blg1XXF7WDutVRzWVWy8Vy4LaT5ifsA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare": ["miniflare@4.20260708.1", "", { "dependencies": { "@cspotcode/source-map-support": "0.8.1", "sharp": "0.34.5", "undici": "7.28.0", "workerd": "1.20260708.1", "ws": "8.21.0", "youch": "4.1.0-beta.10" }, "bin": { "miniflare": "bootstrap.js" } }, "sha512-c94O9zRDISdqO18EHt6l0iF/fWgWt8p18PJvRsA/L/NJZ9Cfke3s/F5Blg1XXF7WDutVRzWVWy8Vy4LaT5ifsA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/workerd": ["workerd@1.20260708.1", "", { "optionalDependencies": { "@cloudflare/workerd-darwin-64": "1.20260708.1", "@cloudflare/workerd-darwin-arm64": "1.20260708.1", "@cloudflare/workerd-linux-64": "1.20260708.1", "@cloudflare/workerd-linux-arm64": "1.20260708.1", "@cloudflare/workerd-windows-64": "1.20260708.1" }, "bin": { "workerd": "bin/workerd" } }, "sha512-WAK+Kt/VVCSldH2qSr8lx46XCJ4Q+bdlHNaFqUtOHthBEIB8C1N8HVW+VOLrxDoTCk0NGNv0zajnBeQK4JOB9w=="], + "@opencode/web/@astrojs/cloudflare/wrangler/workerd": ["workerd@1.20260708.1", "", { "optionalDependencies": { "@cloudflare/workerd-darwin-64": "1.20260708.1", "@cloudflare/workerd-darwin-arm64": "1.20260708.1", "@cloudflare/workerd-linux-64": "1.20260708.1", "@cloudflare/workerd-linux-arm64": "1.20260708.1", "@cloudflare/workerd-windows-64": "1.20260708.1" }, "bin": { "workerd": "bin/workerd" } }, "sha512-WAK+Kt/VVCSldH2qSr8lx46XCJ4Q+bdlHNaFqUtOHthBEIB8C1N8HVW+VOLrxDoTCk0NGNv0zajnBeQK4JOB9w=="], - "@opencode-ai/web/astro/js-yaml/argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="], + "@opencode/web/astro/js-yaml/argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="], - "@opencode-ai/web/astro/p-queue/p-timeout": ["p-timeout@6.1.4", "", {}, "sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg=="], + "@opencode/web/astro/p-queue/p-timeout": ["p-timeout@6.1.4", "", {}, "sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg=="], - "@opencode-ai/web/astro/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.0.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ=="], + "@opencode/web/astro/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.0.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ=="], - "@opencode-ai/web/astro/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.0.4" }, "os": "darwin", "cpu": "x64" }, "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q=="], + "@opencode/web/astro/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.0.4" }, "os": "darwin", "cpu": "x64" }, "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q=="], - "@opencode-ai/web/astro/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.0.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg=="], + "@opencode/web/astro/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.0.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg=="], - "@opencode-ai/web/astro/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.0.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ=="], + "@opencode/web/astro/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.0.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ=="], - "@opencode-ai/web/astro/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.0.5", "", { "os": "linux", "cpu": "arm" }, "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g=="], + "@opencode/web/astro/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.0.5", "", { "os": "linux", "cpu": "arm" }, "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g=="], - "@opencode-ai/web/astro/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.0.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA=="], + "@opencode/web/astro/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.0.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA=="], - "@opencode-ai/web/astro/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.0.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA=="], + "@opencode/web/astro/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.0.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA=="], - "@opencode-ai/web/astro/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.0.4", "", { "os": "linux", "cpu": "x64" }, "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw=="], + "@opencode/web/astro/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.0.4", "", { "os": "linux", "cpu": "x64" }, "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw=="], - "@opencode-ai/web/astro/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.0.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA=="], + "@opencode/web/astro/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.0.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA=="], - "@opencode-ai/web/astro/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.0.4", "", { "os": "linux", "cpu": "x64" }, "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw=="], + "@opencode/web/astro/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.0.4", "", { "os": "linux", "cpu": "x64" }, "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw=="], - "@opencode-ai/web/astro/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.0.5" }, "os": "linux", "cpu": "arm" }, "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ=="], + "@opencode/web/astro/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.0.5" }, "os": "linux", "cpu": "arm" }, "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ=="], - "@opencode-ai/web/astro/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.0.4" }, "os": "linux", "cpu": "arm64" }, "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA=="], + "@opencode/web/astro/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.0.4" }, "os": "linux", "cpu": "arm64" }, "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA=="], - "@opencode-ai/web/astro/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.0.4" }, "os": "linux", "cpu": "s390x" }, "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q=="], + "@opencode/web/astro/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.0.4" }, "os": "linux", "cpu": "s390x" }, "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q=="], - "@opencode-ai/web/astro/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.0.4" }, "os": "linux", "cpu": "x64" }, "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA=="], + "@opencode/web/astro/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.0.4" }, "os": "linux", "cpu": "x64" }, "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA=="], - "@opencode-ai/web/astro/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.0.4" }, "os": "linux", "cpu": "arm64" }, "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g=="], + "@opencode/web/astro/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.0.4" }, "os": "linux", "cpu": "arm64" }, "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g=="], - "@opencode-ai/web/astro/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.0.4" }, "os": "linux", "cpu": "x64" }, "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw=="], + "@opencode/web/astro/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.33.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.0.4" }, "os": "linux", "cpu": "x64" }, "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw=="], - "@opencode-ai/web/astro/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.33.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ=="], + "@opencode/web/astro/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.33.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ=="], - "@opencode-ai/web/astro/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.33.5", "", { "os": "win32", "cpu": "x64" }, "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg=="], + "@opencode/web/astro/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.33.5", "", { "os": "win32", "cpu": "x64" }, "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg=="], - "@opencode-ai/web/astro/shiki/@shikijs/core": ["@shikijs/core@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4", "hast-util-to-html": "^9.0.5" } }, "sha512-NSWQz0riNb67xthdm5br6lAkvpDJRTgB36fxlo37ZzM2yq0PQFFzbd8psqC2XMPgCzo1fW6cVi18+ArJ44wqgA=="], + "@opencode/web/astro/shiki/@shikijs/core": ["@shikijs/core@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4", "hast-util-to-html": "^9.0.5" } }, "sha512-NSWQz0riNb67xthdm5br6lAkvpDJRTgB36fxlo37ZzM2yq0PQFFzbd8psqC2XMPgCzo1fW6cVi18+ArJ44wqgA=="], - "@opencode-ai/web/astro/shiki/@shikijs/engine-javascript": ["@shikijs/engine-javascript@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "oniguruma-to-es": "^4.3.4" } }, "sha512-aHt9eiGFobmWR5uqJUViySI1bHMqrAgamWE1TYSUoftkAeCCAiGawPMwM+VCadylQtF4V3VNOZ5LmfItH5f3yA=="], + "@opencode/web/astro/shiki/@shikijs/engine-javascript": ["@shikijs/engine-javascript@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2", "oniguruma-to-es": "^4.3.4" } }, "sha512-aHt9eiGFobmWR5uqJUViySI1bHMqrAgamWE1TYSUoftkAeCCAiGawPMwM+VCadylQtF4V3VNOZ5LmfItH5f3yA=="], - "@opencode-ai/web/astro/shiki/@shikijs/engine-oniguruma": ["@shikijs/engine-oniguruma@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2" } }, "sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g=="], + "@opencode/web/astro/shiki/@shikijs/engine-oniguruma": ["@shikijs/engine-oniguruma@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0", "@shikijs/vscode-textmate": "^10.0.2" } }, "sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g=="], - "@opencode-ai/web/astro/shiki/@shikijs/langs": ["@shikijs/langs@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0" } }, "sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg=="], + "@opencode/web/astro/shiki/@shikijs/langs": ["@shikijs/langs@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0" } }, "sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg=="], - "@opencode-ai/web/astro/shiki/@shikijs/themes": ["@shikijs/themes@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0" } }, "sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA=="], + "@opencode/web/astro/shiki/@shikijs/themes": ["@shikijs/themes@3.23.0", "", { "dependencies": { "@shikijs/types": "3.23.0" } }, "sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA=="], - "@opencode-ai/web/astro/shiki/@shikijs/types": ["@shikijs/types@3.23.0", "", { "dependencies": { "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, "sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ=="], + "@opencode/web/astro/shiki/@shikijs/types": ["@shikijs/types@3.23.0", "", { "dependencies": { "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, "sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ=="], - "@opencode-ai/web/astro/unifont/ofetch": ["ofetch@1.5.1", "", { "dependencies": { "destr": "^2.0.5", "node-fetch-native": "^1.6.7", "ufo": "^1.6.1" } }, "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA=="], + "@opencode/web/astro/unifont/ofetch": ["ofetch@1.5.1", "", { "dependencies": { "destr": "^2.0.5", "node-fetch-native": "^1.6.7", "ufo": "^1.6.1" } }, "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA=="], - "@opencode-ai/web/astro/unstorage/chokidar": ["chokidar@5.0.0", "", { "dependencies": { "readdirp": "^5.0.0" } }, "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw=="], + "@opencode/web/astro/unstorage/chokidar": ["chokidar@5.0.0", "", { "dependencies": { "readdirp": "^5.0.0" } }, "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw=="], - "@opencode-ai/web/astro/unstorage/h3": ["h3@1.15.11", "", { "dependencies": { "cookie-es": "^1.2.3", "crossws": "^0.3.5", "defu": "^6.1.6", "destr": "^2.0.5", "iron-webcrypto": "^1.2.1", "node-mock-http": "^1.0.4", "radix3": "^1.1.2", "ufo": "^1.6.3", "uncrypto": "^0.1.3" } }, "sha512-L3THSe2MPeBwgIZVSH5zLdBBU90TOxarvhK9d04IDY2AmVS8j2Jz2LIWtwsGOU3lu2I5jCN7FNvVfY2+XyF+mg=="], + "@opencode/web/astro/unstorage/h3": ["h3@1.15.11", "", { "dependencies": { "cookie-es": "^1.2.3", "crossws": "^0.3.5", "defu": "^6.1.6", "destr": "^2.0.5", "iron-webcrypto": "^1.2.1", "node-mock-http": "^1.0.4", "radix3": "^1.1.2", "ufo": "^1.6.3", "uncrypto": "^0.1.3" } }, "sha512-L3THSe2MPeBwgIZVSH5zLdBBU90TOxarvhK9d04IDY2AmVS8j2Jz2LIWtwsGOU3lu2I5jCN7FNvVfY2+XyF+mg=="], - "@opencode-ai/web/astro/unstorage/ofetch": ["ofetch@1.5.1", "", { "dependencies": { "destr": "^2.0.5", "node-fetch-native": "^1.6.7", "ufo": "^1.6.1" } }, "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA=="], + "@opencode/web/astro/unstorage/ofetch": ["ofetch@1.5.1", "", { "dependencies": { "destr": "^2.0.5", "node-fetch-native": "^1.6.7", "ufo": "^1.6.1" } }, "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA=="], - "@opencode-ai/www/@astrojs/markdown-remark/@astrojs/internal-helpers/js-yaml": ["js-yaml@4.3.1", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ=="], + "@opencode/www/@astrojs/markdown-remark/@astrojs/internal-helpers/js-yaml": ["js-yaml@4.3.1", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.28.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.28.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.28.1", "", { "os": "android", "cpu": "arm" }, "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.28.1", "", { "os": "android", "cpu": "arm" }, "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.28.1", "", { "os": "android", "cpu": "arm64" }, "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg=="], + "@opencode/www/wrangler/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.28.1", "", { "os": "android", "cpu": "arm64" }, "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.28.1", "", { "os": "android", "cpu": "x64" }, "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng=="], + "@opencode/www/wrangler/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.28.1", "", { "os": "android", "cpu": "x64" }, "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.28.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q=="], + "@opencode/www/wrangler/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.28.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.28.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.28.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.28.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw=="], + "@opencode/www/wrangler/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.28.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.28.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.28.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.28.1", "", { "os": "linux", "cpu": "arm" }, "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.28.1", "", { "os": "linux", "cpu": "arm" }, "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.28.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.28.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.28.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.28.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.28.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.28.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.28.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.28.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.28.1", "", { "os": "linux", "cpu": "x64" }, "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA=="], + "@opencode/www/wrangler/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.28.1", "", { "os": "linux", "cpu": "x64" }, "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw=="], + "@opencode/www/wrangler/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.28.1", "", { "os": "none", "cpu": "x64" }, "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg=="], + "@opencode/www/wrangler/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.28.1", "", { "os": "none", "cpu": "x64" }, "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.28.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q=="], + "@opencode/www/wrangler/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.28.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.28.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw=="], + "@opencode/www/wrangler/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.28.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg=="], + "@opencode/www/wrangler/esbuild/@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.28.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ=="], + "@opencode/www/wrangler/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.28.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.28.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA=="], + "@opencode/www/wrangler/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.28.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.28.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg=="], + "@opencode/www/wrangler/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.28.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg=="], - "@opencode-ai/www/wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.28.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A=="], + "@opencode/www/wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.28.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A=="], - "@opencode-ai/www/wrangler/miniflare/sharp": ["sharp@0.34.5", "", { "dependencies": { "@img/colour": "^1.0.0", "detect-libc": "^2.1.2", "semver": "^7.7.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.34.5", "@img/sharp-darwin-x64": "0.34.5", "@img/sharp-libvips-darwin-arm64": "1.2.4", "@img/sharp-libvips-darwin-x64": "1.2.4", "@img/sharp-libvips-linux-arm": "1.2.4", "@img/sharp-libvips-linux-arm64": "1.2.4", "@img/sharp-libvips-linux-ppc64": "1.2.4", "@img/sharp-libvips-linux-riscv64": "1.2.4", "@img/sharp-libvips-linux-s390x": "1.2.4", "@img/sharp-libvips-linux-x64": "1.2.4", "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", "@img/sharp-libvips-linuxmusl-x64": "1.2.4", "@img/sharp-linux-arm": "0.34.5", "@img/sharp-linux-arm64": "0.34.5", "@img/sharp-linux-ppc64": "0.34.5", "@img/sharp-linux-riscv64": "0.34.5", "@img/sharp-linux-s390x": "0.34.5", "@img/sharp-linux-x64": "0.34.5", "@img/sharp-linuxmusl-arm64": "0.34.5", "@img/sharp-linuxmusl-x64": "0.34.5", "@img/sharp-wasm32": "0.34.5", "@img/sharp-win32-arm64": "0.34.5", "@img/sharp-win32-ia32": "0.34.5", "@img/sharp-win32-x64": "0.34.5" } }, "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg=="], + "@opencode/www/wrangler/miniflare/sharp": ["sharp@0.34.5", "", { "dependencies": { "@img/colour": "^1.0.0", "detect-libc": "^2.1.2", "semver": "^7.7.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.34.5", "@img/sharp-darwin-x64": "0.34.5", "@img/sharp-libvips-darwin-arm64": "1.2.4", "@img/sharp-libvips-darwin-x64": "1.2.4", "@img/sharp-libvips-linux-arm": "1.2.4", "@img/sharp-libvips-linux-arm64": "1.2.4", "@img/sharp-libvips-linux-ppc64": "1.2.4", "@img/sharp-libvips-linux-riscv64": "1.2.4", "@img/sharp-libvips-linux-s390x": "1.2.4", "@img/sharp-libvips-linux-x64": "1.2.4", "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", "@img/sharp-libvips-linuxmusl-x64": "1.2.4", "@img/sharp-linux-arm": "0.34.5", "@img/sharp-linux-arm64": "0.34.5", "@img/sharp-linux-ppc64": "0.34.5", "@img/sharp-linux-riscv64": "0.34.5", "@img/sharp-linux-s390x": "0.34.5", "@img/sharp-linux-x64": "0.34.5", "@img/sharp-linuxmusl-arm64": "0.34.5", "@img/sharp-linuxmusl-x64": "0.34.5", "@img/sharp-wasm32": "0.34.5", "@img/sharp-win32-arm64": "0.34.5", "@img/sharp-win32-ia32": "0.34.5", "@img/sharp-win32-x64": "0.34.5" } }, "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg=="], - "@opencode-ai/www/wrangler/miniflare/undici": ["undici@7.28.0", "", {}, "sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA=="], + "@opencode/www/wrangler/miniflare/undici": ["undici@7.28.0", "", {}, "sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA=="], - "@opencode-ai/www/wrangler/workerd/@cloudflare/workerd-darwin-64": ["@cloudflare/workerd-darwin-64@1.20260708.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-HXFCvhS1wpg3uXO0CLUwmwC41i2loM5FSK69EUchOBpmYBAXxT1oHLm6EOA5lqhTk5Mu9kjRiQYxa1GwKPwfJg=="], + "@opencode/www/wrangler/workerd/@cloudflare/workerd-darwin-64": ["@cloudflare/workerd-darwin-64@1.20260708.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-HXFCvhS1wpg3uXO0CLUwmwC41i2loM5FSK69EUchOBpmYBAXxT1oHLm6EOA5lqhTk5Mu9kjRiQYxa1GwKPwfJg=="], - "@opencode-ai/www/wrangler/workerd/@cloudflare/workerd-darwin-arm64": ["@cloudflare/workerd-darwin-arm64@1.20260708.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-JVlJaKDoRTVKSroHIlf8g3UCPjKj4iDbMZE2CNYht5qQ+2rL0FAUiVlV82G3BqKnnw9kHYnnsMzC08b9zVtdzA=="], + "@opencode/www/wrangler/workerd/@cloudflare/workerd-darwin-arm64": ["@cloudflare/workerd-darwin-arm64@1.20260708.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-JVlJaKDoRTVKSroHIlf8g3UCPjKj4iDbMZE2CNYht5qQ+2rL0FAUiVlV82G3BqKnnw9kHYnnsMzC08b9zVtdzA=="], - "@opencode-ai/www/wrangler/workerd/@cloudflare/workerd-linux-64": ["@cloudflare/workerd-linux-64@1.20260708.1", "", { "os": "linux", "cpu": "x64" }, "sha512-3daE60YdD7YX0Jtuzc9DE/r/qMkmx8ZvHTkF8Mzmp3F5tbzlV0DAzmu5PFUPF2WuvtKbAhZKbvC2cHmWpQYxnA=="], + "@opencode/www/wrangler/workerd/@cloudflare/workerd-linux-64": ["@cloudflare/workerd-linux-64@1.20260708.1", "", { "os": "linux", "cpu": "x64" }, "sha512-3daE60YdD7YX0Jtuzc9DE/r/qMkmx8ZvHTkF8Mzmp3F5tbzlV0DAzmu5PFUPF2WuvtKbAhZKbvC2cHmWpQYxnA=="], - "@opencode-ai/www/wrangler/workerd/@cloudflare/workerd-linux-arm64": ["@cloudflare/workerd-linux-arm64@1.20260708.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLdNYOx5Hj+9C6isy0ACWZsbMtSxex2DIJWEe7cZxUdlphZ58ZT8zxNXK8yunFiowd34hn3VwGMopdvdj8lvmA=="], + "@opencode/www/wrangler/workerd/@cloudflare/workerd-linux-arm64": ["@cloudflare/workerd-linux-arm64@1.20260708.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLdNYOx5Hj+9C6isy0ACWZsbMtSxex2DIJWEe7cZxUdlphZ58ZT8zxNXK8yunFiowd34hn3VwGMopdvdj8lvmA=="], - "@opencode-ai/www/wrangler/workerd/@cloudflare/workerd-windows-64": ["@cloudflare/workerd-windows-64@1.20260708.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bC/aSAwLy16Vjo24i9XU3aWH+eRgz7NeR5xPKavGbembO18ZywYTQbXh14eXtY6fAqN3RzRG8psijTdhX4xydA=="], + "@opencode/www/wrangler/workerd/@cloudflare/workerd-windows-64": ["@cloudflare/workerd-windows-64@1.20260708.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bC/aSAwLy16Vjo24i9XU3aWH+eRgz7NeR5xPKavGbembO18ZywYTQbXh14eXtY6fAqN3RzRG8psijTdhX4xydA=="], "@puppeteer/browsers/yargs/cliui/string-width": ["string-width@7.2.0", "", { "dependencies": { "emoji-regex": "^10.3.0", "get-east-asian-width": "^1.0.0", "strip-ansi": "^7.1.0" } }, "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ=="], @@ -8666,289 +8666,289 @@ "@jsx-email/cli/tailwindcss/chokidar/readdirp/picomatch": ["picomatch@2.3.2", "", {}, "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.30.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.30.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.30.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.30.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.30.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.30.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.30.1", "", { "os": "linux", "cpu": "arm" }, "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.30.1", "", { "os": "linux", "cpu": "arm" }, "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.30.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.30.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.30.1", "", { "os": "win32", "cpu": "x64" }, "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.30.1", "", { "os": "win32", "cpu": "x64" }, "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.11.3", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.3", "tslib": "^2.4.0" }, "bundled": true }, "sha512-zLpS5asjEb7lq8jYLq37N6XKaE41DIexlY1rF/z4/tIl3wo13Sqm28fRyfIsKZD+NZ8mM5RoKkpW/rBcuoSZSg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.11.3", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.3", "tslib": "^2.4.0" }, "bundled": true }, "sha512-zLpS5asjEb7lq8jYLq37N6XKaE41DIexlY1rF/z4/tIl3wo13Sqm28fRyfIsKZD+NZ8mM5RoKkpW/rBcuoSZSg=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.2.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-ELEBe8PsLvvJ6QMr0zLt8ffvOHW/dc1m3CEzNMg7aJUv3bMaoDtw2TXyDAwkYBuroxxuHEwhRTLJSe5sya547g=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.2.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-ELEBe8PsLvvJ6QMr0zLt8ffvOHW/dc1m3CEzNMg7aJUv3bMaoDtw2TXyDAwkYBuroxxuHEwhRTLJSe5sya547g=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@0.2.12", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@tybys/wasm-util": "^0.10.0" }, "bundled": true }, "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@0.2.12", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@tybys/wasm-util": "^0.10.0" }, "bundled": true }, "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@tybys/wasm-util": ["@tybys/wasm-util@0.9.0", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@tybys/wasm-util": ["@tybys/wasm-util@0.9.0", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/tslib": ["tslib@2.8.1", "", { "bundled": true }, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/tslib": ["tslib@2.8.1", "", { "bundled": true }, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.4" }, "os": "darwin", "cpu": "x64" }, "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.4" }, "os": "darwin", "cpu": "x64" }, "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.2.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.2.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.2.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.2.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.2.4", "", { "os": "linux", "cpu": "arm" }, "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.2.4", "", { "os": "linux", "cpu": "arm" }, "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-ppc64": ["@img/sharp-libvips-linux-ppc64@1.2.4", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-ppc64": ["@img/sharp-libvips-linux-ppc64@1.2.4", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-riscv64": ["@img/sharp-libvips-linux-riscv64@1.2.4", "", { "os": "linux", "cpu": "none" }, "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-riscv64": ["@img/sharp-libvips-linux-riscv64@1.2.4", "", { "os": "linux", "cpu": "none" }, "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.2.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.2.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.2.4" }, "os": "linux", "cpu": "arm" }, "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.2.4" }, "os": "linux", "cpu": "arm" }, "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-linux-ppc64": ["@img/sharp-linux-ppc64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-ppc64": "1.2.4" }, "os": "linux", "cpu": "ppc64" }, "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-linux-ppc64": ["@img/sharp-linux-ppc64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-ppc64": "1.2.4" }, "os": "linux", "cpu": "ppc64" }, "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-linux-riscv64": ["@img/sharp-linux-riscv64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-riscv64": "1.2.4" }, "os": "linux", "cpu": "none" }, "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-linux-riscv64": ["@img/sharp-linux-riscv64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-riscv64": "1.2.4" }, "os": "linux", "cpu": "none" }, "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.2.4" }, "os": "linux", "cpu": "s390x" }, "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.2.4" }, "os": "linux", "cpu": "s390x" }, "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-wasm32": ["@img/sharp-wasm32@0.34.5", "", { "dependencies": { "@emnapi/runtime": "^1.7.0" }, "cpu": "none" }, "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-wasm32": ["@img/sharp-wasm32@0.34.5", "", { "dependencies": { "@emnapi/runtime": "^1.7.0" }, "cpu": "none" }, "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-win32-arm64": ["@img/sharp-win32-arm64@0.34.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-win32-arm64": ["@img/sharp-win32-arm64@0.34.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.34.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.34.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.5", "", { "os": "win32", "cpu": "x64" }, "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.5", "", { "os": "win32", "cpu": "x64" }, "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.30.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.30.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.30.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.30.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.30.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.30.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.30.1", "", { "os": "linux", "cpu": "arm" }, "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.30.1", "", { "os": "linux", "cpu": "arm" }, "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.30.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.30.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.30.1", "", { "os": "win32", "cpu": "x64" }, "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/node/lightningcss/lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.30.1", "", { "os": "win32", "cpu": "x64" }, "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.11.3", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.3", "tslib": "^2.4.0" }, "bundled": true }, "sha512-zLpS5asjEb7lq8jYLq37N6XKaE41DIexlY1rF/z4/tIl3wo13Sqm28fRyfIsKZD+NZ8mM5RoKkpW/rBcuoSZSg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.11.3", "", { "dependencies": { "@emnapi/wasi-threads": "1.2.3", "tslib": "^2.4.0" }, "bundled": true }, "sha512-zLpS5asjEb7lq8jYLq37N6XKaE41DIexlY1rF/z4/tIl3wo13Sqm28fRyfIsKZD+NZ8mM5RoKkpW/rBcuoSZSg=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.2.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-ELEBe8PsLvvJ6QMr0zLt8ffvOHW/dc1m3CEzNMg7aJUv3bMaoDtw2TXyDAwkYBuroxxuHEwhRTLJSe5sya547g=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.2.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-ELEBe8PsLvvJ6QMr0zLt8ffvOHW/dc1m3CEzNMg7aJUv3bMaoDtw2TXyDAwkYBuroxxuHEwhRTLJSe5sya547g=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@0.2.12", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@tybys/wasm-util": "^0.10.0" }, "bundled": true }, "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@0.2.12", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@tybys/wasm-util": "^0.10.0" }, "bundled": true }, "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@tybys/wasm-util": ["@tybys/wasm-util@0.9.0", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@tybys/wasm-util": ["@tybys/wasm-util@0.9.0", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/tslib": ["tslib@2.8.1", "", { "bundled": true }, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/tslib": ["tslib@2.8.1", "", { "bundled": true }, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.4" }, "os": "darwin", "cpu": "x64" }, "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.4" }, "os": "darwin", "cpu": "x64" }, "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.2.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.2.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.2.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.2.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.2.4", "", { "os": "linux", "cpu": "arm" }, "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.2.4", "", { "os": "linux", "cpu": "arm" }, "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-ppc64": ["@img/sharp-libvips-linux-ppc64@1.2.4", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-ppc64": ["@img/sharp-libvips-linux-ppc64@1.2.4", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-riscv64": ["@img/sharp-libvips-linux-riscv64@1.2.4", "", { "os": "linux", "cpu": "none" }, "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-riscv64": ["@img/sharp-libvips-linux-riscv64@1.2.4", "", { "os": "linux", "cpu": "none" }, "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.2.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.2.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.2.4" }, "os": "linux", "cpu": "arm" }, "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.2.4" }, "os": "linux", "cpu": "arm" }, "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-linux-ppc64": ["@img/sharp-linux-ppc64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-ppc64": "1.2.4" }, "os": "linux", "cpu": "ppc64" }, "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-linux-ppc64": ["@img/sharp-linux-ppc64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-ppc64": "1.2.4" }, "os": "linux", "cpu": "ppc64" }, "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-linux-riscv64": ["@img/sharp-linux-riscv64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-riscv64": "1.2.4" }, "os": "linux", "cpu": "none" }, "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-linux-riscv64": ["@img/sharp-linux-riscv64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-riscv64": "1.2.4" }, "os": "linux", "cpu": "none" }, "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.2.4" }, "os": "linux", "cpu": "s390x" }, "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.2.4" }, "os": "linux", "cpu": "s390x" }, "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-wasm32": ["@img/sharp-wasm32@0.34.5", "", { "dependencies": { "@emnapi/runtime": "^1.7.0" }, "cpu": "none" }, "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-wasm32": ["@img/sharp-wasm32@0.34.5", "", { "dependencies": { "@emnapi/runtime": "^1.7.0" }, "cpu": "none" }, "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-win32-arm64": ["@img/sharp-win32-arm64@0.34.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-win32-arm64": ["@img/sharp-win32-arm64@0.34.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.34.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.34.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.5", "", { "os": "win32", "cpu": "x64" }, "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.5", "", { "os": "win32", "cpu": "x64" }, "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/semver": ["semver@7.8.5", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA=="], + "@opencode/updates/wrangler/miniflare/sharp/semver": ["semver@7.8.5", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.28.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.28.1", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.28.1", "", { "os": "android", "cpu": "arm" }, "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/android-arm": ["@esbuild/android-arm@0.28.1", "", { "os": "android", "cpu": "arm" }, "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.28.1", "", { "os": "android", "cpu": "arm64" }, "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/android-arm64": ["@esbuild/android-arm64@0.28.1", "", { "os": "android", "cpu": "arm64" }, "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.28.1", "", { "os": "android", "cpu": "x64" }, "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/android-x64": ["@esbuild/android-x64@0.28.1", "", { "os": "android", "cpu": "x64" }, "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.28.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.28.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.28.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.28.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.28.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.28.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.28.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.28.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.28.1", "", { "os": "linux", "cpu": "arm" }, "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-arm": ["@esbuild/linux-arm@0.28.1", "", { "os": "linux", "cpu": "arm" }, "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.28.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.28.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.28.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.28.1", "", { "os": "linux", "cpu": "ia32" }, "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.28.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.28.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.28.1", "", { "os": "linux", "cpu": "none" }, "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.28.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.28.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.28.1", "", { "os": "linux", "cpu": "x64" }, "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/linux-x64": ["@esbuild/linux-x64@0.28.1", "", { "os": "linux", "cpu": "x64" }, "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.28.1", "", { "os": "none", "cpu": "x64" }, "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.28.1", "", { "os": "none", "cpu": "x64" }, "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.28.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.28.1", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.28.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.28.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.28.1", "", { "os": "none", "cpu": "arm64" }, "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.28.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.28.1", "", { "os": "sunos", "cpu": "x64" }, "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.28.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.28.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.28.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.28.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.28.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A=="], + "@opencode/web/@astrojs/cloudflare/wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.28.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp": ["sharp@0.34.5", "", { "dependencies": { "@img/colour": "^1.0.0", "detect-libc": "^2.1.2", "semver": "^7.7.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.34.5", "@img/sharp-darwin-x64": "0.34.5", "@img/sharp-libvips-darwin-arm64": "1.2.4", "@img/sharp-libvips-darwin-x64": "1.2.4", "@img/sharp-libvips-linux-arm": "1.2.4", "@img/sharp-libvips-linux-arm64": "1.2.4", "@img/sharp-libvips-linux-ppc64": "1.2.4", "@img/sharp-libvips-linux-riscv64": "1.2.4", "@img/sharp-libvips-linux-s390x": "1.2.4", "@img/sharp-libvips-linux-x64": "1.2.4", "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", "@img/sharp-libvips-linuxmusl-x64": "1.2.4", "@img/sharp-linux-arm": "0.34.5", "@img/sharp-linux-arm64": "0.34.5", "@img/sharp-linux-ppc64": "0.34.5", "@img/sharp-linux-riscv64": "0.34.5", "@img/sharp-linux-s390x": "0.34.5", "@img/sharp-linux-x64": "0.34.5", "@img/sharp-linuxmusl-arm64": "0.34.5", "@img/sharp-linuxmusl-x64": "0.34.5", "@img/sharp-wasm32": "0.34.5", "@img/sharp-win32-arm64": "0.34.5", "@img/sharp-win32-ia32": "0.34.5", "@img/sharp-win32-x64": "0.34.5" } }, "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp": ["sharp@0.34.5", "", { "dependencies": { "@img/colour": "^1.0.0", "detect-libc": "^2.1.2", "semver": "^7.7.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.34.5", "@img/sharp-darwin-x64": "0.34.5", "@img/sharp-libvips-darwin-arm64": "1.2.4", "@img/sharp-libvips-darwin-x64": "1.2.4", "@img/sharp-libvips-linux-arm": "1.2.4", "@img/sharp-libvips-linux-arm64": "1.2.4", "@img/sharp-libvips-linux-ppc64": "1.2.4", "@img/sharp-libvips-linux-riscv64": "1.2.4", "@img/sharp-libvips-linux-s390x": "1.2.4", "@img/sharp-libvips-linux-x64": "1.2.4", "@img/sharp-libvips-linuxmusl-arm64": "1.2.4", "@img/sharp-libvips-linuxmusl-x64": "1.2.4", "@img/sharp-linux-arm": "0.34.5", "@img/sharp-linux-arm64": "0.34.5", "@img/sharp-linux-ppc64": "0.34.5", "@img/sharp-linux-riscv64": "0.34.5", "@img/sharp-linux-s390x": "0.34.5", "@img/sharp-linux-x64": "0.34.5", "@img/sharp-linuxmusl-arm64": "0.34.5", "@img/sharp-linuxmusl-x64": "0.34.5", "@img/sharp-wasm32": "0.34.5", "@img/sharp-win32-arm64": "0.34.5", "@img/sharp-win32-ia32": "0.34.5", "@img/sharp-win32-x64": "0.34.5" } }, "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/undici": ["undici@7.28.0", "", {}, "sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/undici": ["undici@7.28.0", "", {}, "sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-darwin-64": ["@cloudflare/workerd-darwin-64@1.20260708.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-HXFCvhS1wpg3uXO0CLUwmwC41i2loM5FSK69EUchOBpmYBAXxT1oHLm6EOA5lqhTk5Mu9kjRiQYxa1GwKPwfJg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-darwin-64": ["@cloudflare/workerd-darwin-64@1.20260708.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-HXFCvhS1wpg3uXO0CLUwmwC41i2loM5FSK69EUchOBpmYBAXxT1oHLm6EOA5lqhTk5Mu9kjRiQYxa1GwKPwfJg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-darwin-arm64": ["@cloudflare/workerd-darwin-arm64@1.20260708.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-JVlJaKDoRTVKSroHIlf8g3UCPjKj4iDbMZE2CNYht5qQ+2rL0FAUiVlV82G3BqKnnw9kHYnnsMzC08b9zVtdzA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-darwin-arm64": ["@cloudflare/workerd-darwin-arm64@1.20260708.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-JVlJaKDoRTVKSroHIlf8g3UCPjKj4iDbMZE2CNYht5qQ+2rL0FAUiVlV82G3BqKnnw9kHYnnsMzC08b9zVtdzA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-linux-64": ["@cloudflare/workerd-linux-64@1.20260708.1", "", { "os": "linux", "cpu": "x64" }, "sha512-3daE60YdD7YX0Jtuzc9DE/r/qMkmx8ZvHTkF8Mzmp3F5tbzlV0DAzmu5PFUPF2WuvtKbAhZKbvC2cHmWpQYxnA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-linux-64": ["@cloudflare/workerd-linux-64@1.20260708.1", "", { "os": "linux", "cpu": "x64" }, "sha512-3daE60YdD7YX0Jtuzc9DE/r/qMkmx8ZvHTkF8Mzmp3F5tbzlV0DAzmu5PFUPF2WuvtKbAhZKbvC2cHmWpQYxnA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-linux-arm64": ["@cloudflare/workerd-linux-arm64@1.20260708.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLdNYOx5Hj+9C6isy0ACWZsbMtSxex2DIJWEe7cZxUdlphZ58ZT8zxNXK8yunFiowd34hn3VwGMopdvdj8lvmA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-linux-arm64": ["@cloudflare/workerd-linux-arm64@1.20260708.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-VLdNYOx5Hj+9C6isy0ACWZsbMtSxex2DIJWEe7cZxUdlphZ58ZT8zxNXK8yunFiowd34hn3VwGMopdvdj8lvmA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-windows-64": ["@cloudflare/workerd-windows-64@1.20260708.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bC/aSAwLy16Vjo24i9XU3aWH+eRgz7NeR5xPKavGbembO18ZywYTQbXh14eXtY6fAqN3RzRG8psijTdhX4xydA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/workerd/@cloudflare/workerd-windows-64": ["@cloudflare/workerd-windows-64@1.20260708.1", "", { "os": "win32", "cpu": "x64" }, "sha512-bC/aSAwLy16Vjo24i9XU3aWH+eRgz7NeR5xPKavGbembO18ZywYTQbXh14eXtY6fAqN3RzRG8psijTdhX4xydA=="], - "@opencode-ai/web/astro/unstorage/chokidar/readdirp": ["readdirp@5.1.1", "", {}, "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA=="], + "@opencode/web/astro/unstorage/chokidar/readdirp": ["readdirp@5.1.1", "", {}, "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA=="], - "@opencode-ai/web/astro/unstorage/h3/cookie-es": ["cookie-es@1.2.3", "", {}, "sha512-lXVyvUvrNXblMqzIRrxHb57UUVmqsSWlxqt3XIjCkUP0wDAf6uicO6KMbEgYrMNtEvWgWHwe42CKxPu9MYAnWw=="], + "@opencode/web/astro/unstorage/h3/cookie-es": ["cookie-es@1.2.3", "", {}, "sha512-lXVyvUvrNXblMqzIRrxHb57UUVmqsSWlxqt3XIjCkUP0wDAf6uicO6KMbEgYrMNtEvWgWHwe42CKxPu9MYAnWw=="], - "@opencode-ai/web/astro/unstorage/h3/crossws": ["crossws@0.3.5", "", { "dependencies": { "uncrypto": "^0.1.3" } }, "sha512-ojKiDvcmByhwa8YYqbQI/hg7MEU0NC03+pSdEq4ZUnZR9xXpwk7E43SMNGkn+JxJGPFtNvQ48+vV2p+P1ml5PA=="], + "@opencode/web/astro/unstorage/h3/crossws": ["crossws@0.3.5", "", { "dependencies": { "uncrypto": "^0.1.3" } }, "sha512-ojKiDvcmByhwa8YYqbQI/hg7MEU0NC03+pSdEq4ZUnZR9xXpwk7E43SMNGkn+JxJGPFtNvQ48+vV2p+P1ml5PA=="], - "@opencode-ai/www/@astrojs/markdown-remark/@astrojs/internal-helpers/js-yaml/argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="], + "@opencode/www/@astrojs/markdown-remark/@astrojs/internal-helpers/js-yaml/argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.4" }, "os": "darwin", "cpu": "x64" }, "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.4" }, "os": "darwin", "cpu": "x64" }, "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.2.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.2.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.2.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.2.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.2.4", "", { "os": "linux", "cpu": "arm" }, "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.2.4", "", { "os": "linux", "cpu": "arm" }, "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-ppc64": ["@img/sharp-libvips-linux-ppc64@1.2.4", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-ppc64": ["@img/sharp-libvips-linux-ppc64@1.2.4", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-riscv64": ["@img/sharp-libvips-linux-riscv64@1.2.4", "", { "os": "linux", "cpu": "none" }, "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-riscv64": ["@img/sharp-libvips-linux-riscv64@1.2.4", "", { "os": "linux", "cpu": "none" }, "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.2.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.2.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.2.4" }, "os": "linux", "cpu": "arm" }, "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.2.4" }, "os": "linux", "cpu": "arm" }, "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-linux-ppc64": ["@img/sharp-linux-ppc64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-ppc64": "1.2.4" }, "os": "linux", "cpu": "ppc64" }, "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-linux-ppc64": ["@img/sharp-linux-ppc64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-ppc64": "1.2.4" }, "os": "linux", "cpu": "ppc64" }, "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-linux-riscv64": ["@img/sharp-linux-riscv64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-riscv64": "1.2.4" }, "os": "linux", "cpu": "none" }, "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-linux-riscv64": ["@img/sharp-linux-riscv64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-riscv64": "1.2.4" }, "os": "linux", "cpu": "none" }, "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.2.4" }, "os": "linux", "cpu": "s390x" }, "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.2.4" }, "os": "linux", "cpu": "s390x" }, "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-wasm32": ["@img/sharp-wasm32@0.34.5", "", { "dependencies": { "@emnapi/runtime": "^1.7.0" }, "cpu": "none" }, "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-wasm32": ["@img/sharp-wasm32@0.34.5", "", { "dependencies": { "@emnapi/runtime": "^1.7.0" }, "cpu": "none" }, "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-win32-arm64": ["@img/sharp-win32-arm64@0.34.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-win32-arm64": ["@img/sharp-win32-arm64@0.34.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.34.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.34.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.5", "", { "os": "win32", "cpu": "x64" }, "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.5", "", { "os": "win32", "cpu": "x64" }, "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw=="], "@solidjs/start/shiki/@shikijs/engine-javascript/oniguruma-to-es/regex": ["regex@5.1.1", "", { "dependencies": { "regex-utilities": "^2.3.0" } }, "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw=="], @@ -9002,63 +9002,63 @@ "@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-webcontainers-wasm32/@img/sharp-wasm32": ["@img/sharp-wasm32@0.35.2", "", { "dependencies": { "@emnapi/runtime": "^1.11.1" } }, "sha512-Mrv4JQNYVQ94xH+jzZ9r+gowleN8mv2FTgKT+PI6bx5C0G8TdNYndu161pg2i7uoBwxy2ImPMHrJOM2LZef7Bw=="], - "@opencode-ai/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime/@tybys/wasm-util": ["@tybys/wasm-util@0.10.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg=="], + "@opencode/enterprise/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime/@tybys/wasm-util": ["@tybys/wasm-util@0.10.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg=="], - "@opencode-ai/posts/wrangler/miniflare/sharp/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], + "@opencode/posts/wrangler/miniflare/sharp/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], - "@opencode-ai/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime/@tybys/wasm-util": ["@tybys/wasm-util@0.10.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg=="], + "@opencode/storybook/@tailwindcss/vite/@tailwindcss/oxide/@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime/@tybys/wasm-util": ["@tybys/wasm-util@0.10.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg=="], - "@opencode-ai/updates/wrangler/miniflare/sharp/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], + "@opencode/updates/wrangler/miniflare/sharp/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.4" }, "os": "darwin", "cpu": "arm64" }, "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.4" }, "os": "darwin", "cpu": "x64" }, "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.4" }, "os": "darwin", "cpu": "x64" }, "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.2.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-arm64": ["@img/sharp-libvips-darwin-arm64@1.2.4", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.2.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-darwin-x64": ["@img/sharp-libvips-darwin-x64@1.2.4", "", { "os": "darwin", "cpu": "x64" }, "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.2.4", "", { "os": "linux", "cpu": "arm" }, "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm": ["@img/sharp-libvips-linux-arm@1.2.4", "", { "os": "linux", "cpu": "arm" }, "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-arm64": ["@img/sharp-libvips-linux-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-ppc64": ["@img/sharp-libvips-linux-ppc64@1.2.4", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-ppc64": ["@img/sharp-libvips-linux-ppc64@1.2.4", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-riscv64": ["@img/sharp-libvips-linux-riscv64@1.2.4", "", { "os": "linux", "cpu": "none" }, "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-riscv64": ["@img/sharp-libvips-linux-riscv64@1.2.4", "", { "os": "linux", "cpu": "none" }, "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.2.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-s390x": ["@img/sharp-libvips-linux-s390x@1.2.4", "", { "os": "linux", "cpu": "s390x" }, "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linux-x64": ["@img/sharp-libvips-linux-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-arm64": ["@img/sharp-libvips-linuxmusl-arm64@1.2.4", "", { "os": "linux", "cpu": "arm64" }, "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-libvips-linuxmusl-x64": ["@img/sharp-libvips-linuxmusl-x64@1.2.4", "", { "os": "linux", "cpu": "x64" }, "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.2.4" }, "os": "linux", "cpu": "arm" }, "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-arm": ["@img/sharp-linux-arm@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm": "1.2.4" }, "os": "linux", "cpu": "arm" }, "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-arm64": ["@img/sharp-linux-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-ppc64": ["@img/sharp-linux-ppc64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-ppc64": "1.2.4" }, "os": "linux", "cpu": "ppc64" }, "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-ppc64": ["@img/sharp-linux-ppc64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-ppc64": "1.2.4" }, "os": "linux", "cpu": "ppc64" }, "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-riscv64": ["@img/sharp-linux-riscv64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-riscv64": "1.2.4" }, "os": "linux", "cpu": "none" }, "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-riscv64": ["@img/sharp-linux-riscv64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-riscv64": "1.2.4" }, "os": "linux", "cpu": "none" }, "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.2.4" }, "os": "linux", "cpu": "s390x" }, "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-s390x": ["@img/sharp-linux-s390x@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-s390x": "1.2.4" }, "os": "linux", "cpu": "s390x" }, "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linux-x64": ["@img/sharp-linux-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linux-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linuxmusl-arm64": ["@img/sharp-linuxmusl-arm64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-arm64": "1.2.4" }, "os": "linux", "cpu": "arm64" }, "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-linuxmusl-x64": ["@img/sharp-linuxmusl-x64@0.34.5", "", { "optionalDependencies": { "@img/sharp-libvips-linuxmusl-x64": "1.2.4" }, "os": "linux", "cpu": "x64" }, "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-wasm32": ["@img/sharp-wasm32@0.34.5", "", { "dependencies": { "@emnapi/runtime": "^1.7.0" }, "cpu": "none" }, "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-wasm32": ["@img/sharp-wasm32@0.34.5", "", { "dependencies": { "@emnapi/runtime": "^1.7.0" }, "cpu": "none" }, "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-win32-arm64": ["@img/sharp-win32-arm64@0.34.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-win32-arm64": ["@img/sharp-win32-arm64@0.34.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.34.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-win32-ia32": ["@img/sharp-win32-ia32@0.34.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.5", "", { "os": "win32", "cpu": "x64" }, "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.5", "", { "os": "win32", "cpu": "x64" }, "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw=="], - "@opencode-ai/www/wrangler/miniflare/sharp/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], + "@opencode/www/wrangler/miniflare/sharp/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], "archiver-utils/glob/jackspeak/@isaacs/cliui/string-width/emoji-regex": ["emoji-regex@9.2.2", "", {}, "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="], @@ -9082,6 +9082,6 @@ "@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-webcontainers-wasm32/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], - "@opencode-ai/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], + "@opencode/web/@astrojs/cloudflare/wrangler/miniflare/sharp/@img/sharp-wasm32/@emnapi/runtime": ["@emnapi/runtime@1.11.3", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA=="], } } diff --git a/bunfig.toml b/bunfig.toml index 096f3f434f0..2bab1754b23 100644 --- a/bunfig.toml +++ b/bunfig.toml @@ -2,7 +2,7 @@ exact = true # Only install newly resolved package versions published at least 3 days ago. minimumReleaseAge = 259200 -minimumReleaseAgeExcludes = ["@ai-sdk/amazon-bedrock", "@ai-sdk/anthropic", "@brendonovich/vite-plugin-opencode", "@opencode-ai/sdk", "@opencode-ai/pty", "@opencode-ai/pty-darwin-arm64", "@opencode-ai/pty-darwin-x64", "@opencode-ai/pty-linux-arm64-gnu", "@opencode-ai/pty-linux-arm64-musl", "@opencode-ai/pty-linux-x64-gnu", "@opencode-ai/pty-linux-x64-musl", "@opentui/core", "@opentui/core-darwin-arm64", "@opentui/core-darwin-x64", "@opentui/core-linux-arm64", "@opentui/core-linux-arm64-musl", "@opentui/core-linux-x64", "@opentui/core-linux-x64-musl", "@opentui/core-win32-arm64", "@opentui/core-win32-x64", "@opentui/keymap", "@opentui/solid", "opentui-spinner", "gitlab-ai-provider", "opencode-gitlab-auth", "@ff-labs/fff-node", "@ff-labs/fff-bun", "@ff-labs/fff-bin-darwin-arm64", "@ff-labs/fff-bin-darwin-x64", "@ff-labs/fff-bin-linux-arm64-gnu", "@ff-labs/fff-bin-linux-arm64-musl", "@ff-labs/fff-bin-linux-x64-gnu", "@ff-labs/fff-bin-linux-x64-musl", "@ff-labs/fff-bin-win32-arm64", "@ff-labs/fff-bin-win32-x64", "@pierre/diffs", "@pierre/theming", "app-builder-lib", "dmg-builder", "electron", "electron-builder", "electron-publish", "blume", "mermaid"] +minimumReleaseAgeExcludes = ["@ai-sdk/amazon-bedrock", "@ai-sdk/anthropic", "@brendonovich/vite-plugin-opencode", "@opencode/sdk", "@opencode-ai/pty", "@opencode-ai/pty-darwin-arm64", "@opencode-ai/pty-darwin-x64", "@opencode-ai/pty-linux-arm64-gnu", "@opencode-ai/pty-linux-arm64-musl", "@opencode-ai/pty-linux-x64-gnu", "@opencode-ai/pty-linux-x64-musl", "@opentui/core", "@opentui/core-darwin-arm64", "@opentui/core-darwin-x64", "@opentui/core-linux-arm64", "@opentui/core-linux-arm64-musl", "@opentui/core-linux-x64", "@opentui/core-linux-x64-musl", "@opentui/core-win32-arm64", "@opentui/core-win32-x64", "@opentui/keymap", "@opentui/solid", "opentui-spinner", "gitlab-ai-provider", "opencode-gitlab-auth", "@ff-labs/fff-node", "@ff-labs/fff-bun", "@ff-labs/fff-bin-darwin-arm64", "@ff-labs/fff-bin-darwin-x64", "@ff-labs/fff-bin-linux-arm64-gnu", "@ff-labs/fff-bin-linux-arm64-musl", "@ff-labs/fff-bin-linux-x64-gnu", "@ff-labs/fff-bin-linux-x64-musl", "@ff-labs/fff-bin-win32-arm64", "@ff-labs/fff-bin-win32-x64", "@pierre/diffs", "@pierre/theming", "app-builder-lib", "dmg-builder", "electron", "electron-builder", "electron-publish", "blume", "mermaid"] [test] root = "./do-not-run-tests-from-root" diff --git a/install b/install index 823f7506c48..4e7d5a334f8 100755 --- a/install +++ b/install @@ -165,22 +165,30 @@ else exit 1 fi + package_scope="@opencode" if [ -z "$requested_version" ]; then - metadata=$(curl -fsSL https://registry.npmjs.org/@opencode-ai%2fcli/beta || true) + metadata=$(curl -fsSL https://update.opencode.ai/api/beta/cli/npm || true) specific_version=$(echo "$metadata" | sed -n 's/.*"version":"\([^"]*\)".*/\1/p') + package=$(echo "$metadata" | sed -n 's/.*"package":"\([^"]*\)".*/\1/p') - if [ -z "$specific_version" ]; then + if [ -z "$specific_version" ] || [ -z "$package" ]; then echo -e "${RED}Failed to fetch version information${NC}" exit 1 fi + package_scope="${package%/cli}" else # Strip leading 'v' if present requested_version="${requested_version#v}" specific_version=$requested_version fi - package_name="@opencode-ai/cli-$target" - http_status=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/@opencode-ai%2fcli-$target/$specific_version" || true) + package_name="$package_scope/cli-$target" + http_status=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/$package_scope%2fcli-$target/$specific_version" || true) + # Older clients install the minimum release before they can migrate package names. + if [ "$http_status" = "404" ] && [ -n "$requested_version" ]; then + package_name="@opencode-ai/cli-$target" + http_status=$(curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/@opencode-ai%2fcli-$target/$specific_version" || true) + fi if [ "$http_status" = "404" ]; then echo -e "${RED}Error: Version ${specific_version} is not available for $target${NC}" echo -e "${MUTED}Available versions: https://www.npmjs.com/package/$package_name?activeTab=versions${NC}" diff --git a/nix/desktop.nix b/nix/desktop.nix index b90ba4d9d99..65091dcffc2 100644 --- a/nix/desktop.nix +++ b/nix/desktop.nix @@ -88,7 +88,7 @@ stdenv.mkDerivation (finalAttrs: { cd packages/desktop export OPENCODE_CLI_DIST="$TMPDIR/desktop-cli" - cli_package=$(bun -e 'import { getCurrentCli } from "./scripts/utils.ts"; console.log(getCurrentCli().package.replace("@opencode-ai/", ""))') + cli_package=$(bun -e 'import { getCurrentCli } from "./scripts/utils.ts"; console.log(getCurrentCli().package.replace("@opencode/", ""))') mkdir -p "$OPENCODE_CLI_DIST/$cli_package/bin" cp ${lib.getExe opencode} "$OPENCODE_CLI_DIST/$cli_package/bin/opencode2" diff --git a/nix/node_modules.nix b/nix/node_modules.nix index fa7034b3376..35bc82f4710 100644 --- a/nix/node_modules.nix +++ b/nix/node_modules.nix @@ -31,7 +31,7 @@ stdenvNoCC.mkDerivation { ../package.json ../patches ../install # required by desktop build (cli.rs include_str!) - ../.github/TEAM_MEMBERS # required by @opencode-ai/script + ../.github/TEAM_MEMBERS # required by @opencode/script ] ); }; diff --git a/package.json b/package.json index a1518ec5a44..149dce571b0 100644 --- a/package.json +++ b/package.json @@ -128,8 +128,8 @@ }, "dependencies": { "@aws-sdk/client-s3": "3.933.0", - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/script": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/script": "workspace:*", "heap-snapshot-toolkit": "1.1.3", "typescript": "catalog:" }, diff --git a/packages/ai/AGENTS.md b/packages/ai/AGENTS.md index d2c3ba34e1f..9c32d27e054 100644 --- a/packages/ai/AGENTS.md +++ b/packages/ai/AGENTS.md @@ -121,10 +121,10 @@ Keep provider facades small and explicit: ### Provider Package Entrypoints -Catalog-selected native providers use package-like export paths from `@opencode-ai/ai`. They are internal entrypoints in one npm package, not separately published provider packages. Every entrypoint implements `ProviderPackage.Definition` and exposes `model(modelID, settings)`, where settings are serializable provider configuration plus common `headers`, `body`, and `limits` overlays. +Catalog-selected native providers use package-like export paths from `@opencode/ai`. They are internal entrypoints in one npm package, not separately published provider packages. Every entrypoint implements `ProviderPackage.Definition` and exposes `model(modelID, settings)`, where settings are serializable provider configuration plus common `headers`, `body`, and `limits` overlays. ```ts -import { model } from "@opencode-ai/ai/providers/openai/responses" +import { model } from "@opencode/ai/providers/openai/responses" const selected = model("gpt-5", { apiKey, diff --git a/packages/ai/README.md b/packages/ai/README.md index 970a78ee117..258d31ce470 100644 --- a/packages/ai/README.md +++ b/packages/ai/README.md @@ -1,12 +1,12 @@ -# @opencode-ai/ai +# @opencode/ai Schema-first language model and image-generation APIs built with Effect. ```ts import { Effect, Layer } from "effect" -import { LLM, LLMClient } from "@opencode-ai/ai" -import { RequestExecutor } from "@opencode-ai/ai/route" -import { OpenAI } from "@opencode-ai/ai/providers" +import { LLM, LLMClient } from "@opencode/ai" +import { RequestExecutor } from "@opencode/ai/route" +import { OpenAI } from "@opencode/ai/providers" const model = OpenAI.configure({ apiKey: process.env.OPENAI_API_KEY }).responses("gpt-4o-mini") @@ -35,9 +35,9 @@ MiniMax defaults to its Messages API and reads `MINIMAX_API_KEY` when `apiKey` i ```ts import { Effect, Layer } from "effect" -import { LLM, LLMClient } from "@opencode-ai/ai" -import { MiniMax } from "@opencode-ai/ai/providers" -import { RequestExecutor } from "@opencode-ai/ai/route" +import { LLM, LLMClient } from "@opencode/ai" +import { MiniMax } from "@opencode/ai/providers" +import { RequestExecutor } from "@opencode/ai/route" const minimax = MiniMax.configure({ apiKey: process.env.MINIMAX_API_KEY }) const request = LLM.request({ @@ -53,8 +53,8 @@ console.log(response.text) ``` Select `minimax.chat("MiniMax-M3")` or `minimax.responses("MiniMax-M3")` for MiniMax's native Chat Completions -and Responses APIs. The matching package entrypoints are `@opencode-ai/ai/providers/minimax/messages`, -`@opencode-ai/ai/providers/minimax/chat`, and `@opencode-ai/ai/providers/minimax/responses`. +and Responses APIs. The matching package entrypoints are `@opencode/ai/providers/minimax/messages`, +`@opencode/ai/providers/minimax/chat`, and `@opencode/ai/providers/minimax/responses`. - **Messages:** M3 thinking defaults off. Set `thinking: { type: "adaptive" }` to enable it or `thinking: { type: "disabled" }` to disable it. @@ -74,7 +74,7 @@ Chat and Responses. `configure({ baseURL })` replaces the selected API's base, i Use Meta's direct [Model API](https://dev.meta.ai/docs/overview) with `META_API_KEY`: ```ts -import { Meta } from "@opencode-ai/ai/providers" +import { Meta } from "@opencode/ai/providers" const meta = Meta.configure() // or Meta.configure({ apiKey }) const request = LLM.request({ @@ -87,7 +87,7 @@ const request = LLM.request({ `meta.chat("muse-spark-1.3")` selects Chat Completions; `meta.messages("muse-spark-1.3")` selects the Anthropic-compatible Messages API. All use `https://api.meta.ai/v1`. The package entrypoints -`@opencode-ai/ai/providers/meta/responses`, `meta/chat`, and `meta/messages` expose `model(modelID, settings)`. +`@opencode/ai/providers/meta/responses`, `meta/chat`, and `meta/messages` expose `model(modelID, settings)`. [Muse Spark](https://dev.meta.ai/docs/models) supports `minimal`, `low`, `medium`, `high`, and `xhigh` reasoning effort; standard-tier 1.3 also supports `max`. Omitting effort uses the model's @@ -114,7 +114,7 @@ citations or separate result blocks. Retain `response.message` for either API's Use `Image.generate` for one-off generation or editing: ```ts -import { Image, ImageInput } from "@opencode-ai/ai" +import { Image, ImageInput } from "@opencode/ai" const generation = Image.generate({ model: meta.image("muse-image-1.0"), @@ -144,8 +144,8 @@ Meta Responses is explicitly HTTP/SSE-only and does not use WebSockets, even whe Use `Image.generate` with an image model for direct asset generation: ```ts -import { Image, ImageInput } from "@opencode-ai/ai" -import { OpenAI } from "@opencode-ai/ai/providers" +import { Image, ImageInput } from "@opencode/ai" +import { OpenAI } from "@opencode/ai/providers" const program = Effect.gen(function* () { const response = yield* Image.generate({ @@ -241,7 +241,7 @@ yield * Google's current Gemini image models use the same direct API: ```ts -import { Google } from "@opencode-ai/ai/providers" +import { Google } from "@opencode/ai/providers" const googleProgram = Effect.gen(function* () { const response = yield* Image.generate({ @@ -317,12 +317,12 @@ The hosted result is represented as a provider-executed tool call and tool resul ## Testing -Use the deterministic test client from `@opencode-ai/ai/testing` to script provider-neutral responses and inspect +Use the deterministic test client from `@opencode/ai/testing` to script provider-neutral responses and inspect the requests sent by code under test: ```ts import { Effect } from "effect" -import { TestLLM } from "@opencode-ai/ai/testing" +import { TestLLM } from "@opencode/ai/testing" const programWithTestClient = Effect.gen(function* () { const test = yield* TestLLM.Test @@ -433,8 +433,8 @@ This capability describes protocol implementation, **not universal availability Inside an `Effect.gen`, enable OpenAI compaction with typed provider options: ```ts -import { LLM, LLMClient, LLMRequest, Message } from "@opencode-ai/ai" -import { OpenAI } from "@opencode-ai/ai/providers" +import { LLM, LLMClient, LLMRequest, Message } from "@opencode/ai" +import { OpenAI } from "@opencode/ai/providers" const request = LLM.request({ model: OpenAI.configure({ apiKey }).responses("gpt-5.3-codex"), @@ -454,7 +454,7 @@ const next = LLMRequest.update(request, { A compaction part has `provider` and exactly one representation: `encrypted` for Responses, or `text` for Anthropic. Responses also preserves the optional checkpoint `id`. These fields survive message serialization without becoming visible assistant text. Sending a checkpoint to another provider or an incompatible API fails rather than silently losing context. ```ts -import { CompactionPart, ProviderID } from "@opencode-ai/ai" +import { CompactionPart, ProviderID } from "@opencode/ai" CompactionPart.make({ provider: ProviderID.make("openai"), id: "cmp_123", encrypted: "..." }) CompactionPart.make({ provider: ProviderID.make("anthropic"), text: "Summary of the conversation..." }) @@ -560,7 +560,7 @@ Normalized cache usage is read back into `response.usage.cacheReadInputTokens` a Provider facades configure endpoint/auth/deployment details first, then expose model selectors that take only a model or deployment id. The selected model carries the executable route value used at runtime. ```ts -import { OpenAI, CloudflareAIGateway } from "@opencode-ai/ai/providers" +import { OpenAI, CloudflareAIGateway } from "@opencode/ai/providers" const openai = OpenAI.configure({ apiKey: process.env.OPENAI_API_KEY }).responses("gpt-4o-mini") const gateway = CloudflareAIGateway.configure({ @@ -574,7 +574,7 @@ Included LLM providers: OpenAI, Anthropic, Google (Gemini), Google Vertex, Amazo Each named provider owns its module, endpoint, authentication, and route setup. Providers with the same wire format compose the shared protocol directly: ```ts -import { DeepSeek, Fireworks } from "@opencode-ai/ai/providers" +import { DeepSeek, Fireworks } from "@opencode/ai/providers" const deepseek = DeepSeek.configure({ apiKey }).model("deepseek-chat") const fireworks = Fireworks.configure({ apiKey }).model("accounts/fireworks/models/my-model") @@ -584,10 +584,10 @@ The former `OpenAICompatible.baseten`, `.cerebras`, `.deepinfra`, `.deepseek`, ` ### Provider entrypoints -Provider modules are available through dedicated exports from `@opencode-ai/ai`. Each LLM entrypoint exports `model(modelID, settings)`, where `settings` contains provider configuration plus common `headers` and `body` overlays. +Provider modules are available through dedicated exports from `@opencode/ai`. Each LLM entrypoint exports `model(modelID, settings)`, where `settings` contains provider configuration plus common `headers` and `body` overlays. ```ts -import { model } from "@opencode-ai/ai/providers/openai/responses" +import { model } from "@opencode/ai/providers/openai/responses" const selected = model("gpt-5", { apiKey: process.env.OPENAI_API_KEY, @@ -597,14 +597,14 @@ const selected = model("gpt-5", { APIs have separate entrypoints: -- `@opencode-ai/ai/providers/openai/chat` -- `@opencode-ai/ai/providers/openai/responses` -- `@opencode-ai/ai/providers/openai-compatible/responses` -- `@opencode-ai/ai/providers/anthropic-compatible` -- `@opencode-ai/ai/providers/google-vertex/gemini` -- `@opencode-ai/ai/providers/google-vertex/chat` -- `@opencode-ai/ai/providers/google-vertex/responses` -- `@opencode-ai/ai/providers/google-vertex/messages` +- `@opencode/ai/providers/openai/chat` +- `@opencode/ai/providers/openai/responses` +- `@opencode/ai/providers/openai-compatible/responses` +- `@opencode/ai/providers/anthropic-compatible` +- `@opencode/ai/providers/google-vertex/gemini` +- `@opencode/ai/providers/google-vertex/chat` +- `@opencode/ai/providers/google-vertex/responses` +- `@opencode/ai/providers/google-vertex/messages` OpenAI Responses has one semantic route and uses HTTP by default. Advanced callers may supply a per-call WebSocket channel executor through `StreamOptions`; transport policy does not change provider settings, model identity, or route identity. The provider-neutral Open Responses implementation owns the reusable WebSocket request and event contract, while each provider opts in with its own handshake and connection policy. Azure follows the same Chat/Responses split at `providers/azure/chat` and `providers/azure/responses`. Generic OpenAI-compatible Chat remains at `providers/openai-compatible`; the Responses adapter at `providers/openai-compatible/responses` uses the provider-neutral Open Responses protocol. OpenAI Responses extends that baseline with OpenAI tools, event variants, metadata, and defaults. Generic Anthropic Messages-compatible providers use `providers/anthropic-compatible`, which the named Anthropic provider composes. Google Gemini and Amazon Bedrock expose their single native API through their existing provider paths. @@ -613,36 +613,36 @@ Vertex Gemini, Vertex Chat, Vertex Responses, and Vertex Messages are separate A Tuned Vertex Gemini deployments use model ids shaped like `endpoints/1234567890` and require OAuth or ADC; Vertex express-mode API keys support publisher models only. ```ts -import { model } from "@opencode-ai/ai/providers/google-vertex/gemini" +import { model } from "@opencode/ai/providers/google-vertex/gemini" model("gemini-3.5-flash", { project: "my-project", location: "global" }) ``` ```ts -import { model } from "@opencode-ai/ai/providers/google-vertex/chat" +import { model } from "@opencode/ai/providers/google-vertex/chat" model("deepseek-ai/deepseek-v3.2-maas", { project: "my-project", location: "global" }) ``` ```ts -import { model } from "@opencode-ai/ai/providers/google-vertex/responses" +import { model } from "@opencode/ai/providers/google-vertex/responses" model("xai/grok-4.20-reasoning", { project: "my-project", location: "global" }) ``` ```ts -import { model } from "@opencode-ai/ai/providers/google-vertex/messages" +import { model } from "@opencode/ai/providers/google-vertex/messages" model("claude-sonnet-4-6", { project: "my-project", location: "global" }) ``` Additional provider entrypoints include: -- `@opencode-ai/ai/providers/baseten` -- `@opencode-ai/ai/providers/deepseek` -- `@opencode-ai/ai/providers/fireworks` -- `@opencode-ai/ai/providers/cloudflare-ai-gateway` -- `@opencode-ai/ai/providers/cloudflare-workers-ai` +- `@opencode/ai/providers/baseten` +- `@opencode/ai/providers/deepseek` +- `@opencode/ai/providers/fireworks` +- `@opencode/ai/providers/cloudflare-ai-gateway` +- `@opencode/ai/providers/cloudflare-workers-ai` ## Provider options & HTTP overlays diff --git a/packages/ai/example/tutorial.ts b/packages/ai/example/tutorial.ts index 4589785145d..2659d72dae3 100644 --- a/packages/ai/example/tutorial.ts +++ b/packages/ai/example/tutorial.ts @@ -1,7 +1,7 @@ import { Config, Effect, Formatter, Layer, Schema, Stream } from "effect" -import { LLM, LLMClient, LLMRequest, Message, ProviderID, Tool, ToolRuntime } from "@opencode-ai/ai" -import { Route, Auth, Endpoint, Framing, Protocol, RequestExecutor } from "@opencode-ai/ai/route" -import { OpenAI } from "@opencode-ai/ai/providers" +import { LLM, LLMClient, LLMRequest, Message, ProviderID, Tool, ToolRuntime } from "@opencode/ai" +import { Route, Auth, Endpoint, Framing, Protocol, RequestExecutor } from "@opencode/ai/route" +import { OpenAI } from "@opencode/ai/providers" /** * A runnable walkthrough of the LLM package use-site API. diff --git a/packages/ai/package.json b/packages/ai/package.json index e8e9a8e1ec9..7ec30a66539 100644 --- a/packages/ai/package.json +++ b/packages/ai/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "version": "1.17.20", - "name": "@opencode-ai/ai", + "name": "@opencode/ai", "type": "module", "license": "MIT", "scripts": { @@ -21,7 +21,7 @@ "devDependencies": { "@clack/prompts": "1.0.0-alpha.1", "@effect/platform-node": "catalog:", - "@opencode-ai/http-recorder": "workspace:*", + "@opencode/http-recorder": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:", @@ -31,7 +31,7 @@ "@aws-sdk/credential-providers": "3.1057.0", "@smithy/eventstream-codec": "4.2.14", "@smithy/util-utf8": "4.2.2", - "@opencode-ai/schema": "workspace:*", + "@opencode/schema": "workspace:*", "aws4fetch": "1.0.20", "effect": "catalog:", "google-auth-library": "10.5.0" diff --git a/packages/ai/script/publish.ts b/packages/ai/script/publish.ts index f03dd084b02..77eca8806a6 100644 --- a/packages/ai/script/publish.ts +++ b/packages/ai/script/publish.ts @@ -1,5 +1,5 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { fileURLToPath } from "url" diff --git a/packages/ai/src/protocols/anthropic-messages.ts b/packages/ai/src/protocols/anthropic-messages.ts index 62fa3fa583d..40cd6c62979 100644 --- a/packages/ai/src/protocols/anthropic-messages.ts +++ b/packages/ai/src/protocols/anthropic-messages.ts @@ -1,6 +1,6 @@ import { Buffer } from "node:buffer" import { Effect, Option, Schema } from "effect" -import { Tool } from "@opencode-ai/schema/tool" +import { Tool } from "@opencode/schema/tool" import { Route } from "../route/client.js" import { Auth } from "../route/auth.js" import { Endpoint } from "../route/endpoint.js" diff --git a/packages/ai/src/protocols/gemini.ts b/packages/ai/src/protocols/gemini.ts index dfeee340a7f..0489c5a29d4 100644 --- a/packages/ai/src/protocols/gemini.ts +++ b/packages/ai/src/protocols/gemini.ts @@ -1,5 +1,5 @@ import { Effect, Option, Schema } from "effect" -import { Tool } from "@opencode-ai/schema/tool" +import { Tool } from "@opencode/schema/tool" import { Route } from "../route/client.js" import { Auth } from "../route/auth.js" import { Endpoint } from "../route/endpoint.js" diff --git a/packages/ai/src/protocols/open-responses.ts b/packages/ai/src/protocols/open-responses.ts index 0dd32b4883c..0551e692eaf 100644 --- a/packages/ai/src/protocols/open-responses.ts +++ b/packages/ai/src/protocols/open-responses.ts @@ -1,5 +1,5 @@ import { Effect, Option, Schema } from "effect" -import type { Content } from "@opencode-ai/schema/tool" +import type { Content } from "@opencode/schema/tool" import { HttpTransport } from "../route/transport/index.js" import { Protocol } from "../route/protocol.js" import { diff --git a/packages/ai/src/protocols/openai-chat.ts b/packages/ai/src/protocols/openai-chat.ts index 9e749a90c9d..9642b89a58c 100644 --- a/packages/ai/src/protocols/openai-chat.ts +++ b/packages/ai/src/protocols/openai-chat.ts @@ -1,5 +1,5 @@ import { Effect, Schema } from "effect" -import { Tool } from "@opencode-ai/schema/tool" +import { Tool } from "@opencode/schema/tool" import { Route } from "../route/client.js" import { Auth } from "../route/auth.js" import { Endpoint } from "../route/endpoint.js" diff --git a/packages/ai/src/protocols/shared.ts b/packages/ai/src/protocols/shared.ts index bf7d74d43a7..e2e35e74b0c 100644 --- a/packages/ai/src/protocols/shared.ts +++ b/packages/ai/src/protocols/shared.ts @@ -1,5 +1,5 @@ import { Buffer } from "node:buffer" -import { Tool } from "@opencode-ai/schema/tool" +import { Tool } from "@opencode/schema/tool" import { Effect, Schema, Stream } from "effect" import * as Sse from "effect/unstable/encoding/Sse" import { Headers, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" diff --git a/packages/ai/src/schema/errors.ts b/packages/ai/src/schema/errors.ts index 9566cb33101..d5946635a95 100644 --- a/packages/ai/src/schema/errors.ts +++ b/packages/ai/src/schema/errors.ts @@ -1,5 +1,5 @@ import { Schema } from "effect" -import { Tool } from "@opencode-ai/schema/tool" +import { Tool } from "@opencode/schema/tool" import { ModelID, ProviderID, RouteID } from "./ids.js" export const ProviderFailureClassification = Schema.Literals(["context-overflow", "payload-too-large"]) diff --git a/packages/ai/src/schema/events.ts b/packages/ai/src/schema/events.ts index 6396319d5e1..cfe3b974cc8 100644 --- a/packages/ai/src/schema/events.ts +++ b/packages/ai/src/schema/events.ts @@ -1,5 +1,5 @@ import { Schema } from "effect" -import { LLM } from "@opencode-ai/schema/llm" +import { LLM } from "@opencode/schema/llm" import { ContentBlockID, ToolCallID } from "./ids.js" import { Message, diff --git a/packages/ai/src/schema/messages.ts b/packages/ai/src/schema/messages.ts index dcc8b5bd747..bf3aa6256c3 100644 --- a/packages/ai/src/schema/messages.ts +++ b/packages/ai/src/schema/messages.ts @@ -1,5 +1,5 @@ import { Schema } from "effect" -import { Tool } from "@opencode-ai/schema/tool" +import { Tool } from "@opencode/schema/tool" import { CacheHint, CachePolicy, diff --git a/packages/ai/src/tool.ts b/packages/ai/src/tool.ts index e324cb2000d..c04b666887c 100644 --- a/packages/ai/src/tool.ts +++ b/packages/ai/src/tool.ts @@ -1,5 +1,5 @@ import { Effect, JsonSchema, Schema } from "effect" -import { Tool } from "@opencode-ai/schema/tool" +import { Tool } from "@opencode/schema/tool" import type { ToolCallPart, ToolDefinition as ToolDefinitionClass, diff --git a/packages/ai/test/exports.test.ts b/packages/ai/test/exports.test.ts index a79f1846ea8..fad7163797a 100644 --- a/packages/ai/test/exports.test.ts +++ b/packages/ai/test/exports.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" -import { AIError, ImageInput, LanguageModel, LLM, LLMClient, Provider } from "@opencode-ai/ai" -import { Route, Protocol, WebSocketTransport } from "@opencode-ai/ai/route" -import { Provider as ProviderSubpath } from "@opencode-ai/ai/provider" +import { AIError, ImageInput, LanguageModel, LLM, LLMClient, Provider } from "@opencode/ai" +import { Route, Protocol, WebSocketTransport } from "@opencode/ai/route" +import { Provider as ProviderSubpath } from "@opencode/ai/provider" import { Baseten, CloudflareAIGateway, @@ -12,7 +12,7 @@ import { OpenAICompatible, OpenRouter, XAI, -} from "@opencode-ai/ai/providers" +} from "@opencode/ai/providers" import { OpenAIChat, OpenAICompatibleChat, @@ -20,9 +20,9 @@ import { OpenAIResponses, OpenResponses, OpenResponsesChannel, -} from "@opencode-ai/ai/protocols" -import * as AnthropicMessages from "@opencode-ai/ai/protocols/anthropic-messages" -import { TestLLM } from "@opencode-ai/ai/testing" +} from "@opencode/ai/protocols" +import * as AnthropicMessages from "@opencode/ai/protocols/anthropic-messages" +import { TestLLM } from "@opencode/ai/testing" describe("public exports", () => { test("root exposes app-facing runtime APIs", () => { @@ -46,7 +46,7 @@ describe("public exports", () => { }) test("provider barrels expose user-facing facades", async () => { - const { OpenAICompatibleResponses } = await import("@opencode-ai/ai/providers") + const { OpenAICompatibleResponses } = await import("@opencode/ai/providers") expect(OpenAI.model).toBeFunction() expect(OpenAI.provider.responses).toBe(OpenAI.responses) diff --git a/packages/ai/test/provider-package.test.ts b/packages/ai/test/provider-package.test.ts index 0fac7b9f1f1..bb5f23573cc 100644 --- a/packages/ai/test/provider-package.test.ts +++ b/packages/ai/test/provider-package.test.ts @@ -1,46 +1,46 @@ import { describe, expect, test } from "bun:test" -import { model } from "@opencode-ai/ai/providers/openai" +import { model } from "@opencode/ai/providers/openai" import { LLM } from "../src/index.js" import { Endpoint } from "../src/route/endpoint.js" describe("provider package entrypoints", () => { test("semantic API aliases expose the same contract", async () => { const modules = await Promise.all([ - import("@opencode-ai/ai/providers/openai"), - import("@opencode-ai/ai/providers/openai/responses"), - import("@opencode-ai/ai/providers/openai/chat"), - import("@opencode-ai/ai/providers/anthropic"), - import("@opencode-ai/ai/providers/anthropic-compatible"), - import("@opencode-ai/ai/providers/openai-compatible"), - import("@opencode-ai/ai/providers/openai-compatible/responses"), - import("@opencode-ai/ai/providers/amazon-bedrock"), - import("@opencode-ai/ai/providers/azure"), - import("@opencode-ai/ai/providers/azure/responses"), - import("@opencode-ai/ai/providers/azure/chat"), - import("@opencode-ai/ai/providers/google"), - import("@opencode-ai/ai/providers/google-vertex"), - import("@opencode-ai/ai/providers/google-vertex/gemini"), - import("@opencode-ai/ai/providers/google-vertex/chat"), - import("@opencode-ai/ai/providers/google-vertex/responses"), - import("@opencode-ai/ai/providers/google-vertex/messages"), - import("@opencode-ai/ai/providers/openrouter"), - import("@opencode-ai/ai/providers/xai"), - import("@opencode-ai/ai/providers/amazon-bedrock/mantle"), - import("@opencode-ai/ai/providers/amazon-bedrock/mantle/chat"), - import("@opencode-ai/ai/providers/amazon-bedrock/mantle/responses"), - import("@opencode-ai/ai/providers/togetherai"), - import("@opencode-ai/ai/providers/cerebras"), - import("@opencode-ai/ai/providers/deepinfra"), - import("@opencode-ai/ai/providers/groq"), - import("@opencode-ai/ai/providers/baseten"), - import("@opencode-ai/ai/providers/deepseek"), - import("@opencode-ai/ai/providers/fireworks"), - import("@opencode-ai/ai/providers/cloudflare-ai-gateway"), - import("@opencode-ai/ai/providers/cloudflare-workers-ai"), - import("@opencode-ai/ai/providers/minimax"), - import("@opencode-ai/ai/providers/minimax/messages"), - import("@opencode-ai/ai/providers/minimax/chat"), - import("@opencode-ai/ai/providers/minimax/responses"), + import("@opencode/ai/providers/openai"), + import("@opencode/ai/providers/openai/responses"), + import("@opencode/ai/providers/openai/chat"), + import("@opencode/ai/providers/anthropic"), + import("@opencode/ai/providers/anthropic-compatible"), + import("@opencode/ai/providers/openai-compatible"), + import("@opencode/ai/providers/openai-compatible/responses"), + import("@opencode/ai/providers/amazon-bedrock"), + import("@opencode/ai/providers/azure"), + import("@opencode/ai/providers/azure/responses"), + import("@opencode/ai/providers/azure/chat"), + import("@opencode/ai/providers/google"), + import("@opencode/ai/providers/google-vertex"), + import("@opencode/ai/providers/google-vertex/gemini"), + import("@opencode/ai/providers/google-vertex/chat"), + import("@opencode/ai/providers/google-vertex/responses"), + import("@opencode/ai/providers/google-vertex/messages"), + import("@opencode/ai/providers/openrouter"), + import("@opencode/ai/providers/xai"), + import("@opencode/ai/providers/amazon-bedrock/mantle"), + import("@opencode/ai/providers/amazon-bedrock/mantle/chat"), + import("@opencode/ai/providers/amazon-bedrock/mantle/responses"), + import("@opencode/ai/providers/togetherai"), + import("@opencode/ai/providers/cerebras"), + import("@opencode/ai/providers/deepinfra"), + import("@opencode/ai/providers/groq"), + import("@opencode/ai/providers/baseten"), + import("@opencode/ai/providers/deepseek"), + import("@opencode/ai/providers/fireworks"), + import("@opencode/ai/providers/cloudflare-ai-gateway"), + import("@opencode/ai/providers/cloudflare-workers-ai"), + import("@opencode/ai/providers/minimax"), + import("@opencode/ai/providers/minimax/messages"), + import("@opencode/ai/providers/minimax/chat"), + import("@opencode/ai/providers/minimax/responses"), ]) for (const module of modules) expect(module.model).toBeFunction() @@ -53,10 +53,10 @@ describe("provider package entrypoints", () => { test("maps MiniMax API entrypoints onto provider-owned routes", async () => { const modules = await Promise.all([ - import("@opencode-ai/ai/providers/minimax"), - import("@opencode-ai/ai/providers/minimax/messages"), - import("@opencode-ai/ai/providers/minimax/chat"), - import("@opencode-ai/ai/providers/minimax/responses"), + import("@opencode/ai/providers/minimax"), + import("@opencode/ai/providers/minimax/messages"), + import("@opencode/ai/providers/minimax/chat"), + import("@opencode/ai/providers/minimax/responses"), ]) expect(modules[0].model).toBe(modules[1].model) const settings = { @@ -77,7 +77,7 @@ describe("provider package entrypoints", () => { }) test("maps DeepInfra package settings onto its native executable model", async () => { - const DeepInfra = await import("@opencode-ai/ai/providers/deepinfra") + const DeepInfra = await import("@opencode/ai/providers/deepinfra") const settings = { apiKey: "fixture", baseURL: "https://provider.example.test/v1/", @@ -96,8 +96,8 @@ describe("provider package entrypoints", () => { test("maps Cloudflare package settings onto provider-owned models", async () => { const modules = await Promise.all([ - import("@opencode-ai/ai/providers/cloudflare-ai-gateway"), - import("@opencode-ai/ai/providers/cloudflare-workers-ai"), + import("@opencode/ai/providers/cloudflare-ai-gateway"), + import("@opencode/ai/providers/cloudflare-workers-ai"), ]) for (const provider of modules) { const selected = provider.model("provider-model", { @@ -116,8 +116,8 @@ describe("provider package entrypoints", () => { }) test("maps OpenRouter and xAI package settings onto executable models", async () => { - const OpenRouter = await import("@opencode-ai/ai/providers/openrouter") - const XAI = await import("@opencode-ai/ai/providers/xai") + const OpenRouter = await import("@opencode/ai/providers/openrouter") + const XAI = await import("@opencode/ai/providers/xai") const settings = { apiKey: "fixture", baseURL: "https://provider.example.test/v1", @@ -157,7 +157,7 @@ describe("provider package entrypoints", () => { }) test("maps OpenAI-compatible Responses settings onto the executable model", async () => { - const OpenAICompatibleResponses = await import("@opencode-ai/ai/providers/openai-compatible/responses") + const OpenAICompatibleResponses = await import("@opencode/ai/providers/openai-compatible/responses") const selected = OpenAICompatibleResponses.model("custom-model", { apiKey: "fixture", baseURL: "https://responses.example.test/v1", @@ -183,7 +183,7 @@ describe("provider package entrypoints", () => { }) test("maps Anthropic-compatible settings onto the executable model", async () => { - const AnthropicCompatible = await import("@opencode-ai/ai/providers/anthropic-compatible") + const AnthropicCompatible = await import("@opencode/ai/providers/anthropic-compatible") const selected = AnthropicCompatible.model("compatible-model", { apiKey: "fixture", baseURL: "https://messages.example.test/v1", @@ -207,7 +207,7 @@ describe("provider package entrypoints", () => { }) test("maps Anthropic provider options onto the executable model", async () => { - const Anthropic = await import("@opencode-ai/ai/providers/anthropic") + const Anthropic = await import("@opencode/ai/providers/anthropic") const selected = Anthropic.model("claude-sonnet-4-6", { apiKey: "fixture", providerOptions: { thinking: { type: "adaptive" } }, @@ -217,15 +217,15 @@ describe("provider package entrypoints", () => { }) test("requires an Anthropic-compatible base URL at runtime", async () => { - const AnthropicCompatible = await import("@opencode-ai/ai/providers/anthropic-compatible") + const AnthropicCompatible = await import("@opencode/ai/providers/anthropic-compatible") expect(() => Reflect.apply(AnthropicCompatible.model, undefined, ["compatible-model", { apiKey: "fixture" }]), ).toThrow("Anthropic-compatible providers require a baseURL") }) test("rejects conflicting Anthropic-compatible auth settings at runtime", async () => { - const Anthropic = await import("@opencode-ai/ai/providers/anthropic") - const AnthropicCompatible = await import("@opencode-ai/ai/providers/anthropic-compatible") + const Anthropic = await import("@opencode/ai/providers/anthropic") + const AnthropicCompatible = await import("@opencode/ai/providers/anthropic-compatible") expect(() => Reflect.apply(AnthropicCompatible.model, undefined, [ "compatible-model", @@ -255,9 +255,9 @@ describe("provider package entrypoints", () => { }) test("selects Azure API entrypoints with the same model contract", async () => { - const Azure = await import("@opencode-ai/ai/providers/azure") - const AzureChat = await import("@opencode-ai/ai/providers/azure/chat") - const AzureResponses = await import("@opencode-ai/ai/providers/azure/responses") + const Azure = await import("@opencode/ai/providers/azure") + const AzureChat = await import("@opencode/ai/providers/azure/chat") + const AzureResponses = await import("@opencode/ai/providers/azure/responses") const settings = { apiKey: "fixture", resourceName: "opencode-test", @@ -277,7 +277,7 @@ describe("provider package entrypoints", () => { }) test("constructs Azure deployment URLs and preserves custom gateway URLs", async () => { - const Azure = await import("@opencode-ai/ai/providers/azure") + const Azure = await import("@opencode/ai/providers/azure") const deployment = Azure.model("custom-deployment", { apiKey: "fixture", resourceName: "opencode-test", @@ -298,7 +298,7 @@ describe("provider package entrypoints", () => { }) test("maps Google package settings onto the Gemini model", async () => { - const Google = await import("@opencode-ai/ai/providers/google") + const Google = await import("@opencode/ai/providers/google") const selected = Google.model("gemini-2.5-flash", { apiKey: "fixture", baseURL: "https://generativelanguage.test/v1beta", @@ -315,11 +315,11 @@ describe("provider package entrypoints", () => { }) test("selects Vertex entrypoints with the same model contract", async () => { - const GoogleVertex = await import("@opencode-ai/ai/providers/google-vertex") - const GoogleVertexGemini = await import("@opencode-ai/ai/providers/google-vertex/gemini") - const GoogleVertexChat = await import("@opencode-ai/ai/providers/google-vertex/chat") - const GoogleVertexResponses = await import("@opencode-ai/ai/providers/google-vertex/responses") - const GoogleVertexMessages = await import("@opencode-ai/ai/providers/google-vertex/messages") + const GoogleVertex = await import("@opencode/ai/providers/google-vertex") + const GoogleVertexGemini = await import("@opencode/ai/providers/google-vertex/gemini") + const GoogleVertexChat = await import("@opencode/ai/providers/google-vertex/chat") + const GoogleVertexResponses = await import("@opencode/ai/providers/google-vertex/responses") + const GoogleVertexMessages = await import("@opencode/ai/providers/google-vertex/messages") const gemini = GoogleVertex.model("gemini-3.5-flash", { apiKey: "fixture", headers: { "x-application": "opencode" }, @@ -378,11 +378,11 @@ describe("provider package entrypoints", () => { }) test("rejects conflicting Vertex auth settings at runtime", async () => { - const GoogleVertex = await import("@opencode-ai/ai/providers/google-vertex") - const GoogleVertexChat = await import("@opencode-ai/ai/providers/google-vertex/chat") - const GoogleVertexMessages = await import("@opencode-ai/ai/providers/google-vertex/messages") - const GoogleVertexResponses = await import("@opencode-ai/ai/providers/google-vertex/responses") - const Providers = await import("@opencode-ai/ai/providers") + const GoogleVertex = await import("@opencode/ai/providers/google-vertex") + const GoogleVertexChat = await import("@opencode/ai/providers/google-vertex/chat") + const GoogleVertexMessages = await import("@opencode/ai/providers/google-vertex/messages") + const GoogleVertexResponses = await import("@opencode/ai/providers/google-vertex/responses") + const Providers = await import("@opencode/ai/providers") expect(() => Reflect.apply(GoogleVertex.model, undefined, [ "gemini-3.5-flash", diff --git a/packages/ai/test/provider/groq.recorded.test.ts b/packages/ai/test/provider/groq.recorded.test.ts index e17f8f21dee..01d196751f1 100644 --- a/packages/ai/test/provider/groq.recorded.test.ts +++ b/packages/ai/test/provider/groq.recorded.test.ts @@ -1,4 +1,4 @@ -import { configure } from "@opencode-ai/ai/providers/groq" +import { configure } from "@opencode/ai/providers/groq" import { describe, expect } from "bun:test" import { Effect } from "effect" import { LLM, LLMEvent, LLMRequest, LLMResponse, Message, ToolChoice, ToolDefinition } from "../../src/index.js" diff --git a/packages/ai/test/provider/meta-capabilities.test.ts b/packages/ai/test/provider/meta-capabilities.test.ts index 06406bab407..ead31e26c42 100644 --- a/packages/ai/test/provider/meta-capabilities.test.ts +++ b/packages/ai/test/provider/meta-capabilities.test.ts @@ -36,7 +36,7 @@ it.effect("Meta selects Messages and lowers native search alongside ordinary fun { name: "lookup", description: "Lookup", input_schema: { type: "object" } }, ], }) - const entrypoint = yield* Effect.promise(() => import("@opencode-ai/ai/providers/meta/messages")) + const entrypoint = yield* Effect.promise(() => import("@opencode/ai/providers/meta/messages")) expect(entrypoint.model("muse-spark-1.3", {}).route.id).toBe("meta-messages") }), ) diff --git a/packages/ai/test/provider/mistral-chat.test.ts b/packages/ai/test/provider/mistral-chat.test.ts index 2f4ef107f3b..550ea2ba231 100644 --- a/packages/ai/test/provider/mistral-chat.test.ts +++ b/packages/ai/test/provider/mistral-chat.test.ts @@ -19,7 +19,7 @@ const chunk = (delta: object, finishReason: string | null = null, usage?: object describe("Mistral Chat", () => { test("exposes native provider and protocol identities", async () => { - const entrypoint = await import("@opencode-ai/ai/providers/mistral") + const entrypoint = await import("@opencode/ai/providers/mistral") expect(Mistral.id).toBe("mistral") expect(MistralChat.protocol.id).toBe("mistral-chat") diff --git a/packages/ai/test/provider/mistral.recorded.test.ts b/packages/ai/test/provider/mistral.recorded.test.ts index 4d2a54b4c82..a12a53a5d7b 100644 --- a/packages/ai/test/provider/mistral.recorded.test.ts +++ b/packages/ai/test/provider/mistral.recorded.test.ts @@ -1,4 +1,4 @@ -import { configure } from "@opencode-ai/ai/providers/mistral" +import { configure } from "@opencode/ai/providers/mistral" import { describe, expect } from "bun:test" import { Effect } from "effect" import { LLM, LLMEvent, LLMRequest, Message, ToolChoice, ToolDefinition } from "../../src/index.js" diff --git a/packages/ai/test/recorded-golden.ts b/packages/ai/test/recorded-golden.ts index eff68ade9f9..b00da6026e2 100644 --- a/packages/ai/test/recorded-golden.ts +++ b/packages/ai/test/recorded-golden.ts @@ -1,4 +1,4 @@ -import type { HttpRecorder } from "@opencode-ai/http-recorder" +import type { HttpRecorder } from "@opencode/http-recorder" import { describe } from "bun:test" import { Effect } from "effect" import type { LanguageModel } from "../src/index.js" diff --git a/packages/ai/test/recorded-runner.ts b/packages/ai/test/recorded-runner.ts index a201d9c47ff..31e45a8b378 100644 --- a/packages/ai/test/recorded-runner.ts +++ b/packages/ai/test/recorded-runner.ts @@ -1,4 +1,4 @@ -import type { HttpRecorder } from "@opencode-ai/http-recorder" +import type { HttpRecorder } from "@opencode/http-recorder" import { test, type TestOptions } from "bun:test" import { Effect, type Layer } from "effect" import { testEffect } from "./lib/effect.js" diff --git a/packages/ai/test/recorded-test.ts b/packages/ai/test/recorded-test.ts index 18dffa805a2..be82f53b726 100644 --- a/packages/ai/test/recorded-test.ts +++ b/packages/ai/test/recorded-test.ts @@ -1,4 +1,4 @@ -import { HttpRecorder } from "@opencode-ai/http-recorder" +import { HttpRecorder } from "@opencode/http-recorder" import { NodeSocket } from "@effect/platform-node" import { Layer } from "effect" import { Socket } from "effect/unstable/socket" diff --git a/packages/ai/test/tool-runtime.test.ts b/packages/ai/test/tool-runtime.test.ts index 523279c1759..a7a5fd7389a 100644 --- a/packages/ai/test/tool-runtime.test.ts +++ b/packages/ai/test/tool-runtime.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { Content } from "@opencode-ai/schema/tool" +import { Content } from "@opencode/schema/tool" import { Effect, Schema, Stream } from "effect" import { GenerationOptions, diff --git a/packages/app/component-tests/timeline-virtualizer.fixture.tsx b/packages/app/component-tests/timeline-virtualizer.fixture.tsx index f4bf3405c65..a675f30bee4 100644 --- a/packages/app/component-tests/timeline-virtualizer.fixture.tsx +++ b/packages/app/component-tests/timeline-virtualizer.fixture.tsx @@ -1,4 +1,4 @@ -import { TimelineRow } from "@opencode-ai/session-ui/timeline/projection" +import { TimelineRow } from "@opencode/session-ui/timeline/projection" import { onCleanup } from "solid-js" import { createStore } from "solid-js/store" import { render } from "solid-js/web" diff --git a/packages/app/e2e/performance/devex/desktop-startup.ts b/packages/app/e2e/performance/devex/desktop-startup.ts index 41ec013eec4..69d2d81425b 100644 --- a/packages/app/e2e/performance/devex/desktop-startup.ts +++ b/packages/app/e2e/performance/devex/desktop-startup.ts @@ -1,4 +1,4 @@ -import { Service } from "@opencode-ai/client/service" +import { Service } from "@opencode/client/service" import { chromium, expect, type Browser, type Page, type TestInfo } from "@playwright/test" import { spawn, spawnSync, type ChildProcess } from "node:child_process" import { mkdir, mkdtemp, readFile, rm, writeFile } from "node:fs/promises" diff --git a/packages/app/e2e/performance/markdown/lifetime.bench.ts b/packages/app/e2e/performance/markdown/lifetime.bench.ts index 8e32c891c5e..0f12e4d8958 100644 --- a/packages/app/e2e/performance/markdown/lifetime.bench.ts +++ b/packages/app/e2e/performance/markdown/lifetime.bench.ts @@ -1,4 +1,4 @@ -import type { SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionMessageInfo } from "@opencode/client/promise" import { benchmark, expect } from "../benchmark" import { mockOpenCodeServer } from "../../utils/mock-server" import { fixture } from "../timeline/session-timeline-stress.fixture" diff --git a/packages/app/e2e/performance/patch-groups/fixture.tsx b/packages/app/e2e/performance/patch-groups/fixture.tsx index 32cc31fc6ae..f7a76794c68 100644 --- a/packages/app/e2e/performance/patch-groups/fixture.tsx +++ b/packages/app/e2e/performance/patch-groups/fixture.tsx @@ -3,12 +3,12 @@ import { render } from "solid-js/web" import { Show } from "solid-js" import { createStore } from "solid-js/store" -import { ThemeProvider } from "@opencode-ai/ui/theme" +import { ThemeProvider } from "@opencode/ui/theme" import { CurrentSessionProviders } from "../../../../session-ui/src/storybook/current-session-story" import { emptySessionDocument } from "../../../../session-ui/src/storybook/current-session-fixtures" import { CurrentFileToolGroup, ToolDisplay } from "../../../../session-ui/src/tools/tool-renderer" import { patchFileGroups } from "../../../../session-ui/src/components/apply-patch-file" -import type { SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { SessionMessageAssistantTool } from "@opencode/client/promise" import { createTwoFilesPatch, diffLines } from "diff" import edit from "../../../../core/src/tool/plugin/edit.ts?raw" import patch from "../../../../core/src/tool/plugin/patch.ts?raw" diff --git a/packages/app/e2e/performance/timeline-stability/fixture.ts b/packages/app/e2e/performance/timeline-stability/fixture.ts index 6d7b9ec37a5..5fa7a48b864 100644 --- a/packages/app/e2e/performance/timeline-stability/fixture.ts +++ b/packages/app/e2e/performance/timeline-stability/fixture.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import type { JsonValue, OpenCodeEvent, @@ -8,10 +8,10 @@ import type { SessionMessageUser, SessionStatus, SessionStructuredError, -} from "@opencode-ai/client/promise" -import { EventManifest } from "@opencode-ai/schema/event-manifest" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import type { TimelineDetail } from "@opencode-ai/session-ui/timeline/detail" +} from "@opencode/client/promise" +import { EventManifest } from "@opencode/schema/event-manifest" +import { SessionMessage } from "@opencode/schema/session-message" +import type { TimelineDetail } from "@opencode/session-ui/timeline/detail" import { expect, type Page } from "@playwright/test" import { Schema } from "effect" import { mockOpenCodeServer } from "../../utils/mock-server" diff --git a/packages/app/e2e/performance/timeline/composer-write-batch-benchmark.spec.ts b/packages/app/e2e/performance/timeline/composer-write-batch-benchmark.spec.ts index 82b5f85820b..00c67c2afff 100644 --- a/packages/app/e2e/performance/timeline/composer-write-batch-benchmark.spec.ts +++ b/packages/app/e2e/performance/timeline/composer-write-batch-benchmark.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { benchmark, benchmarkDiagnostics, expect } from "../benchmark" import { mockOpenCodeServer } from "../../utils/mock-server" import { expectSessionTitle } from "../../utils/waits" diff --git a/packages/app/e2e/performance/timeline/provider-memory-benchmark.spec.ts b/packages/app/e2e/performance/timeline/provider-memory-benchmark.spec.ts index e56fcb1c186..3af30c81207 100644 --- a/packages/app/e2e/performance/timeline/provider-memory-benchmark.spec.ts +++ b/packages/app/e2e/performance/timeline/provider-memory-benchmark.spec.ts @@ -4,7 +4,7 @@ import { expectSessionTitle } from "../../utils/waits" import { fixture, pageMessages } from "./session-timeline-stress.fixture" import { installStressSessionTabs, installTimelineSettings, stressSessionHref } from "./timeline-test-helpers" import { waitForStableTimeline } from "./session-tab-switch-probe" -import type { CatalogUpdated } from "@opencode-ai/client/promise" +import type { CatalogUpdated } from "@opencode/client/promise" benchmark("measures retained renderer memory with a large model catalog", async ({ page, report }) => { benchmark.setTimeout(120_000) diff --git a/packages/app/e2e/performance/timeline/session-parent-hydration-benchmark.spec.ts b/packages/app/e2e/performance/timeline/session-parent-hydration-benchmark.spec.ts index e7481a17861..03bab3f89df 100644 --- a/packages/app/e2e/performance/timeline/session-parent-hydration-benchmark.spec.ts +++ b/packages/app/e2e/performance/timeline/session-parent-hydration-benchmark.spec.ts @@ -1,4 +1,4 @@ -import type { SessionMessageAssistant, SessionMessageInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, SessionMessageInfo, SessionMessageUser } from "@opencode/client/promise" import type { Page } from "@playwright/test" import { expectSessionTitle } from "../../utils/waits" import { mockOpenCodeServer } from "../../utils/mock-server" diff --git a/packages/app/e2e/performance/timeline/session-tab-switch.fixture.ts b/packages/app/e2e/performance/timeline/session-tab-switch.fixture.ts index dd03d6dbe97..da8c83755c6 100644 --- a/packages/app/e2e/performance/timeline/session-tab-switch.fixture.ts +++ b/packages/app/e2e/performance/timeline/session-tab-switch.fixture.ts @@ -1,4 +1,4 @@ -import type { SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionMessageInfo } from "@opencode/client/promise" import { fixture } from "./session-timeline-stress.fixture" export const exchanges = 200 diff --git a/packages/app/e2e/performance/timeline/session-timeline-benchmark.fixture.ts b/packages/app/e2e/performance/timeline/session-timeline-benchmark.fixture.ts index c093d1cbf8b..2041fe9d1d8 100644 --- a/packages/app/e2e/performance/timeline/session-timeline-benchmark.fixture.ts +++ b/packages/app/e2e/performance/timeline/session-timeline-benchmark.fixture.ts @@ -1,5 +1,5 @@ -import { base64Encode } from "@opencode-ai/util/encode" -import type { JsonValue, OpenCodeEvent, SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client/promise" +import { base64Encode } from "@opencode/util/encode" +import type { JsonValue, OpenCodeEvent, SessionMessageAssistant, SessionMessageInfo } from "@opencode/client/promise" import type { Page } from "@playwright/test" import { mockOpenCodeServer } from "../../utils/mock-server" import { expectAppVisible, expectSessionTitle } from "../../utils/waits" diff --git a/packages/app/e2e/performance/timeline/session-timeline-stress.fixture.ts b/packages/app/e2e/performance/timeline/session-timeline-stress.fixture.ts index 4b96ec598d0..0990d00942d 100644 --- a/packages/app/e2e/performance/timeline/session-timeline-stress.fixture.ts +++ b/packages/app/e2e/performance/timeline/session-timeline-stress.fixture.ts @@ -389,4 +389,4 @@ export function pageMessages(sessionID: string, limit: number, before?: string) cursor: start > 0 ? messages[start].id : undefined, } } -import type { JsonValue, SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { JsonValue, SessionMessageAssistant, SessionMessageInfo } from "@opencode/client/promise" diff --git a/packages/app/e2e/performance/timeline/timeline-projection-benchmark.spec.ts b/packages/app/e2e/performance/timeline/timeline-projection-benchmark.spec.ts index e5a3ad41329..488678e850f 100644 --- a/packages/app/e2e/performance/timeline/timeline-projection-benchmark.spec.ts +++ b/packages/app/e2e/performance/timeline/timeline-projection-benchmark.spec.ts @@ -1,5 +1,5 @@ import { createServer, type ServerResponse } from "node:http" -import type { OpenCodeEvent } from "@opencode-ai/client/promise" +import type { OpenCodeEvent } from "@opencode/client/promise" import { benchmark, benchmarkDiagnostics, expect } from "../benchmark" import { buildInitialStreamEvent, diff --git a/packages/app/e2e/performance/timeline/timeline-test-helpers.ts b/packages/app/e2e/performance/timeline/timeline-test-helpers.ts index 1e21c20322f..82e9089b658 100644 --- a/packages/app/e2e/performance/timeline/timeline-test-helpers.ts +++ b/packages/app/e2e/performance/timeline/timeline-test-helpers.ts @@ -1,5 +1,5 @@ import type { Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "../../utils/mock-server" import { fixture, pageMessages } from "./session-timeline-stress.fixture" diff --git a/packages/app/e2e/performance/unit/timeline-test-helpers.test.ts b/packages/app/e2e/performance/unit/timeline-test-helpers.test.ts index fe607275f58..28332366938 100644 --- a/packages/app/e2e/performance/unit/timeline-test-helpers.test.ts +++ b/packages/app/e2e/performance/unit/timeline-test-helpers.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { fixture } from "../timeline/session-timeline-stress.fixture" import { stressSessionHref } from "../timeline/timeline-test-helpers" diff --git a/packages/app/e2e/regression/composer-command-draft.spec.ts b/packages/app/e2e/regression/composer-command-draft.spec.ts index 4ef2f32a5aa..cb3a764f66d 100644 --- a/packages/app/e2e/regression/composer-command-draft.spec.ts +++ b/packages/app/e2e/regression/composer-command-draft.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible } from "../utils/waits" diff --git a/packages/app/e2e/regression/composer-slash-skill.spec.ts b/packages/app/e2e/regression/composer-slash-skill.spec.ts index c4ec1bf662b..82c13463c94 100644 --- a/packages/app/e2e/regression/composer-slash-skill.spec.ts +++ b/packages/app/e2e/regression/composer-slash-skill.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "../utils/mock-server" const directory = "/repo/slash-skills" diff --git a/packages/app/e2e/regression/cross-server-tab-close.spec.ts b/packages/app/e2e/regression/cross-server-tab-close.spec.ts index 16c096dacc3..09e7d370413 100644 --- a/packages/app/e2e/regression/cross-server-tab-close.spec.ts +++ b/packages/app/e2e/regression/cross-server-tab-close.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page, type Route } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { currentSession } from "../utils/mock-server" import { installSseTransport } from "../utils/sse-transport" diff --git a/packages/app/e2e/regression/file-browser-sidebar-tab-switch.spec.ts b/packages/app/e2e/regression/file-browser-sidebar-tab-switch.spec.ts index 627061af7b7..0c5c2b5bc2c 100644 --- a/packages/app/e2e/regression/file-browser-sidebar-tab-switch.spec.ts +++ b/packages/app/e2e/regression/file-browser-sidebar-tab-switch.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test, type Page } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/mcp-workspace-toggle.spec.ts b/packages/app/e2e/regression/mcp-workspace-toggle.spec.ts index 97a8bb1e10e..2147532db5f 100644 --- a/packages/app/e2e/regression/mcp-workspace-toggle.spec.ts +++ b/packages/app/e2e/regression/mcp-workspace-toggle.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/new-session-workspace-pending.spec.ts b/packages/app/e2e/regression/new-session-workspace-pending.spec.ts index 45eb6028d23..638d3318ea2 100644 --- a/packages/app/e2e/regression/new-session-workspace-pending.spec.ts +++ b/packages/app/e2e/regression/new-session-workspace-pending.spec.ts @@ -1,6 +1,6 @@ import { expect, test, type Page } from "@playwright/test" -import type { OpenCodeEvent } from "@opencode-ai/client/promise" -import { base64Encode } from "@opencode-ai/util/encode" +import type { OpenCodeEvent } from "@opencode/client/promise" +import { base64Encode } from "@opencode/util/encode" import { currentSession, mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible } from "../utils/waits" diff --git a/packages/app/e2e/regression/open-file-expand-folder.spec.ts b/packages/app/e2e/regression/open-file-expand-folder.spec.ts index a1b6aad404d..6db2026dbd2 100644 --- a/packages/app/e2e/regression/open-file-expand-folder.spec.ts +++ b/packages/app/e2e/regression/open-file-expand-folder.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/prompt-thinking-level.spec.ts b/packages/app/e2e/regression/prompt-thinking-level.spec.ts index bc0f060783b..865ceab3fec 100644 --- a/packages/app/e2e/regression/prompt-thinking-level.spec.ts +++ b/packages/app/e2e/regression/prompt-thinking-level.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible } from "../utils/waits" diff --git a/packages/app/e2e/regression/remote-session-settings.spec.ts b/packages/app/e2e/regression/remote-session-settings.spec.ts index 85b2a25a73f..5fa2b4b24a9 100644 --- a/packages/app/e2e/regression/remote-session-settings.spec.ts +++ b/packages/app/e2e/regression/remote-session-settings.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test, type Page, type Route } from "@playwright/test" import { installSseTransport } from "../utils/sse-transport" import { currentSession } from "../utils/mock-server" diff --git a/packages/app/e2e/regression/remote-tab-busy.spec.ts b/packages/app/e2e/regression/remote-tab-busy.spec.ts index 7074c167696..6c55b594dcc 100644 --- a/packages/app/e2e/regression/remote-tab-busy.spec.ts +++ b/packages/app/e2e/regression/remote-tab-busy.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { createMockServerHandler } from "../utils/mock-server" import { installSseTransport } from "../utils/sse-transport" diff --git a/packages/app/e2e/regression/review-image-flash.spec.ts b/packages/app/e2e/regression/review-image-flash.spec.ts index 86230e0d62d..a768ad54472 100644 --- a/packages/app/e2e/regression/review-image-flash.spec.ts +++ b/packages/app/e2e/regression/review-image-flash.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible, expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/review-line-comment.spec.ts b/packages/app/e2e/regression/review-line-comment.spec.ts index 321faaf534c..cff515c6caf 100644 --- a/packages/app/e2e/regression/review-line-comment.spec.ts +++ b/packages/app/e2e/regression/review-line-comment.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible, expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/review-open-file.spec.ts b/packages/app/e2e/regression/review-open-file.spec.ts index ce42660e814..6af45ac8407 100644 --- a/packages/app/e2e/regression/review-open-file.spec.ts +++ b/packages/app/e2e/regression/review-open-file.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/review-state-persistence.spec.ts b/packages/app/e2e/regression/review-state-persistence.spec.ts index 74af4c02e24..72dcec22d1d 100644 --- a/packages/app/e2e/regression/review-state-persistence.spec.ts +++ b/packages/app/e2e/regression/review-state-persistence.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test, type Page } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/review-tab-switch.spec.ts b/packages/app/e2e/regression/review-tab-switch.spec.ts index 26a216ed344..6913f59a12b 100644 --- a/packages/app/e2e/regression/review-tab-switch.spec.ts +++ b/packages/app/e2e/regression/review-tab-switch.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test, type Page } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible, expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/review-toggle-position.spec.ts b/packages/app/e2e/regression/review-toggle-position.spec.ts index 16380077fca..c736e8dbe21 100644 --- a/packages/app/e2e/regression/review-toggle-position.spec.ts +++ b/packages/app/e2e/regression/review-toggle-position.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test, type Locator } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/session-location-sync.spec.ts b/packages/app/e2e/regression/session-location-sync.spec.ts index 84989914c49..edfd13d7324 100644 --- a/packages/app/e2e/regression/session-location-sync.spec.ts +++ b/packages/app/e2e/regression/session-location-sync.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { fixture } from "../smoke/session-timeline.fixture" import { mockOpenCodeServer } from "../utils/mock-server" import { installSseTransport } from "../utils/sse-transport" diff --git a/packages/app/e2e/regression/session-message-revert.spec.ts b/packages/app/e2e/regression/session-message-revert.spec.ts index 60e0f472a59..a6f2910d0fd 100644 --- a/packages/app/e2e/regression/session-message-revert.spec.ts +++ b/packages/app/e2e/regression/session-message-revert.spec.ts @@ -1,5 +1,5 @@ -import type { SessionMessageInfo } from "@opencode-ai/client/promise" -import { base64Encode } from "@opencode-ai/util/encode" +import type { SessionMessageInfo } from "@opencode/client/promise" +import { base64Encode } from "@opencode/util/encode" import { expect, test } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/session-notice-truncation.spec.ts b/packages/app/e2e/regression/session-notice-truncation.spec.ts index f8e847245f5..a944bdf62bd 100644 --- a/packages/app/e2e/regression/session-notice-truncation.spec.ts +++ b/packages/app/e2e/regression/session-notice-truncation.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { setupTimeline } from "../performance/timeline-stability/fixture" for (const width of [1400, 390]) { diff --git a/packages/app/e2e/regression/session-queue.spec.ts b/packages/app/e2e/regression/session-queue.spec.ts index 492e844ebae..a17aa78b103 100644 --- a/packages/app/e2e/regression/session-queue.spec.ts +++ b/packages/app/e2e/regression/session-queue.spec.ts @@ -1,6 +1,6 @@ import { expect, test, type Page } from "@playwright/test" -import type { OpenCodeEvent, SessionMessageInfo } from "@opencode-ai/client/promise" -import { base64Encode } from "@opencode-ai/util/encode" +import type { OpenCodeEvent, SessionMessageInfo } from "@opencode/client/promise" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible } from "../utils/waits" diff --git a/packages/app/e2e/regression/session-request-docks.spec.ts b/packages/app/e2e/regression/session-request-docks.spec.ts index 3ed13b9f10b..04e634dc48b 100644 --- a/packages/app/e2e/regression/session-request-docks.spec.ts +++ b/packages/app/e2e/regression/session-request-docks.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test, type Page } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { installSseTransport } from "../utils/sse-transport" diff --git a/packages/app/e2e/regression/session-shell-completion.spec.ts b/packages/app/e2e/regression/session-shell-completion.spec.ts index 34d235d46d6..532e88d470b 100644 --- a/packages/app/e2e/regression/session-shell-completion.spec.ts +++ b/packages/app/e2e/regression/session-shell-completion.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import type { SessionMessageAssistant, ShellInfo } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, ShellInfo } from "@opencode/client/promise" import { directory, sessionID, setupTimeline } from "../performance/timeline-stability/fixture" const shell = { diff --git a/packages/app/e2e/regression/session-timeline-collapse-state.spec.ts b/packages/app/e2e/regression/session-timeline-collapse-state.spec.ts index c7b4ef52044..91d611df28a 100644 --- a/packages/app/e2e/regression/session-timeline-collapse-state.spec.ts +++ b/packages/app/e2e/regression/session-timeline-collapse-state.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Locator, type Page } from "@playwright/test" -import type { JsonValue, OpenCodeEvent, SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { JsonValue, OpenCodeEvent, SessionMessageAssistant, SessionMessageInfo } from "@opencode/client/promise" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible, expectSessionTitle } from "../utils/waits" import { createTwoFilesPatch } from "diff" diff --git a/packages/app/e2e/regression/session-timeline-context-resize.spec.ts b/packages/app/e2e/regression/session-timeline-context-resize.spec.ts index e19658c138b..87dedc5385f 100644 --- a/packages/app/e2e/regression/session-timeline-context-resize.spec.ts +++ b/packages/app/e2e/regression/session-timeline-context-resize.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page } from "@playwright/test" -import type { JsonValue, OpenCodeEvent, SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { JsonValue, OpenCodeEvent, SessionMessageAssistant, SessionMessageInfo } from "@opencode/client/promise" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible, expectSessionTitle } from "../utils/waits" import { diff --git a/packages/app/e2e/regression/session-timeline-file-projection.spec.ts b/packages/app/e2e/regression/session-timeline-file-projection.spec.ts index c6e0c671dba..0a29b72d5d9 100644 --- a/packages/app/e2e/regression/session-timeline-file-projection.spec.ts +++ b/packages/app/e2e/regression/session-timeline-file-projection.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { createTwoFilesPatch } from "diff" import { assistantMessage, diff --git a/packages/app/e2e/regression/session-timeline-history-root.spec.ts b/packages/app/e2e/regression/session-timeline-history-root.spec.ts index 6bd37df115b..6fbcf1a6499 100644 --- a/packages/app/e2e/regression/session-timeline-history-root.spec.ts +++ b/packages/app/e2e/regression/session-timeline-history-root.spec.ts @@ -1,5 +1,5 @@ -import { base64Encode } from "@opencode-ai/util/encode" -import type { SessionMessageAssistant } from "@opencode-ai/client/promise" +import { base64Encode } from "@opencode/util/encode" +import type { SessionMessageAssistant } from "@opencode/client/promise" import { expect, test, type Page } from "@playwright/test" import { assistantMessage, diff --git a/packages/app/e2e/regression/session-timeline-hydration.spec.ts b/packages/app/e2e/regression/session-timeline-hydration.spec.ts index 9ffc88a1654..f1504a05d9d 100644 --- a/packages/app/e2e/regression/session-timeline-hydration.spec.ts +++ b/packages/app/e2e/regression/session-timeline-hydration.spec.ts @@ -1,4 +1,4 @@ -import type { SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionMessageInfo } from "@opencode/client/promise" import { expect, test } from "@playwright/test" import { fixture } from "../performance/timeline/session-timeline-stress.fixture" import { stressSessionHref } from "../performance/timeline/timeline-test-helpers" diff --git a/packages/app/e2e/regression/session-timeline-lifecycle-state.spec.ts b/packages/app/e2e/regression/session-timeline-lifecycle-state.spec.ts index 90447e05978..0b40bb0b9d7 100644 --- a/packages/app/e2e/regression/session-timeline-lifecycle-state.spec.ts +++ b/packages/app/e2e/regression/session-timeline-lifecycle-state.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { assistantID, assistantMessage, diff --git a/packages/app/e2e/regression/session-timeline-mount.spec.ts b/packages/app/e2e/regression/session-timeline-mount.spec.ts index b77893973b5..36d233d5b80 100644 --- a/packages/app/e2e/regression/session-timeline-mount.spec.ts +++ b/packages/app/e2e/regression/session-timeline-mount.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page } from "@playwright/test" -import type { SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionMessageInfo } from "@opencode/client/promise" import { mockOpenCodeServer } from "../utils/mock-server" import { fixture } from "../performance/timeline/session-timeline-stress.fixture" import { expected, messages } from "../performance/timeline/session-tab-switch.fixture" diff --git a/packages/app/e2e/regression/session-timeline-notices.spec.ts b/packages/app/e2e/regression/session-timeline-notices.spec.ts index adb58be86e9..d340e0067c6 100644 --- a/packages/app/e2e/regression/session-timeline-notices.spec.ts +++ b/packages/app/e2e/regression/session-timeline-notices.spec.ts @@ -1,6 +1,6 @@ import { expect, test } from "@playwright/test" -import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client/promise" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode/client/promise" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { compactionDelta, compactionEnded, diff --git a/packages/app/e2e/regression/session-timeline-projection.spec.ts b/packages/app/e2e/regression/session-timeline-projection.spec.ts index cc3dfcc96ea..bf63067fa52 100644 --- a/packages/app/e2e/regression/session-timeline-projection.spec.ts +++ b/packages/app/e2e/regression/session-timeline-projection.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { assistantMessage, partUpdated, diff --git a/packages/app/e2e/regression/session-timeline-shell-outline.spec.ts b/packages/app/e2e/regression/session-timeline-shell-outline.spec.ts index cc09a4348bb..a8e1d6d33a6 100644 --- a/packages/app/e2e/regression/session-timeline-shell-outline.spec.ts +++ b/packages/app/e2e/regression/session-timeline-shell-outline.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Locator, type Page } from "@playwright/test" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { assistantMessage, setupTimeline, diff --git a/packages/app/e2e/regression/session-timeline-tool-projection.spec.ts b/packages/app/e2e/regression/session-timeline-tool-projection.spec.ts index ff57634a0bd..1cd6c0aaa2a 100644 --- a/packages/app/e2e/regression/session-timeline-tool-projection.spec.ts +++ b/packages/app/e2e/regression/session-timeline-tool-projection.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { assistantMessage, partUpdated, diff --git a/packages/app/e2e/regression/session-timeline-working.spec.ts b/packages/app/e2e/regression/session-timeline-working.spec.ts index 796c820af77..abebeabf954 100644 --- a/packages/app/e2e/regression/session-timeline-working.spec.ts +++ b/packages/app/e2e/regression/session-timeline-working.spec.ts @@ -1,5 +1,5 @@ import { expect, test } from "@playwright/test" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { assistantID, assistantMessage, diff --git a/packages/app/e2e/regression/subagent-child-navigation.spec.ts b/packages/app/e2e/regression/subagent-child-navigation.spec.ts index fd79a7f98f5..2a3fe123d6f 100644 --- a/packages/app/e2e/regression/subagent-child-navigation.spec.ts +++ b/packages/app/e2e/regression/subagent-child-navigation.spec.ts @@ -1,5 +1,5 @@ -import { base64Encode } from "@opencode-ai/util/encode" -import type { OpenCodeEvent, SessionMessageInfo } from "@opencode-ai/client/promise" +import { base64Encode } from "@opencode/util/encode" +import type { OpenCodeEvent, SessionMessageInfo } from "@opencode/client/promise" import { expect, test, type Page } from "@playwright/test" import { currentSession, mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/tab-navigate-mousedown.spec.ts b/packages/app/e2e/regression/tab-navigate-mousedown.spec.ts index e8706ad99f4..d541357e5e1 100644 --- a/packages/app/e2e/regression/tab-navigate-mousedown.spec.ts +++ b/packages/app/e2e/regression/tab-navigate-mousedown.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page, type Route } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { currentSession } from "../utils/mock-server" const server = `http://${process.env.PLAYWRIGHT_SERVER_HOST ?? "127.0.0.1"}:${process.env.PLAYWRIGHT_SERVER_PORT ?? "4096"}` diff --git a/packages/app/e2e/regression/terminal-composer-focus.spec.ts b/packages/app/e2e/regression/terminal-composer-focus.spec.ts index db4a435c8a7..3c8e84d020f 100644 --- a/packages/app/e2e/regression/terminal-composer-focus.spec.ts +++ b/packages/app/e2e/regression/terminal-composer-focus.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode, checksum } from "@opencode-ai/util/encode" +import { base64Encode, checksum } from "@opencode/util/encode" import { expect, test, type Page } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/terminal-tab-switch.spec.ts b/packages/app/e2e/regression/terminal-tab-switch.spec.ts index 609662a2cdd..11160c468d5 100644 --- a/packages/app/e2e/regression/terminal-tab-switch.spec.ts +++ b/packages/app/e2e/regression/terminal-tab-switch.spec.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { expect, test, type Page } from "@playwright/test" import { mockOpenCodeServer } from "../utils/mock-server" import { expectSessionTitle } from "../utils/waits" diff --git a/packages/app/e2e/regression/workspace-accent.spec.ts b/packages/app/e2e/regression/workspace-accent.spec.ts index 9b83e136d17..e1f5f5fd79b 100644 --- a/packages/app/e2e/regression/workspace-accent.spec.ts +++ b/packages/app/e2e/regression/workspace-accent.spec.ts @@ -1,6 +1,6 @@ import { expect, test, type Locator, type Page } from "@playwright/test" -import type { OpenCodeEvent, WorktreeDirectory } from "@opencode-ai/client/promise" -import { base64Encode } from "@opencode-ai/util/encode" +import type { OpenCodeEvent, WorktreeDirectory } from "@opencode/client/promise" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "../utils/mock-server" import { expectAppVisible, expectSessionReady } from "../utils/waits" diff --git a/packages/app/e2e/smoke/session-timeline.fixture.ts b/packages/app/e2e/smoke/session-timeline.fixture.ts index 272bf267f53..16e8f0d76fe 100644 --- a/packages/app/e2e/smoke/session-timeline.fixture.ts +++ b/packages/app/e2e/smoke/session-timeline.fixture.ts @@ -340,4 +340,4 @@ export function pageMessages(sessionID: string, limit: number, before?: string) cursor: start > 0 ? messages[start].id : undefined, } } -import type { JsonValue, SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { JsonValue, SessionMessageAssistant, SessionMessageInfo } from "@opencode/client/promise" diff --git a/packages/app/e2e/smoke/session-timeline.spec.ts b/packages/app/e2e/smoke/session-timeline.spec.ts index 1bc5b668ab2..c9d0f56dce8 100644 --- a/packages/app/e2e/smoke/session-timeline.spec.ts +++ b/packages/app/e2e/smoke/session-timeline.spec.ts @@ -1,5 +1,5 @@ import { expect, test, type Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { fixture, pageMessages } from "./session-timeline.fixture" import { trackPageErrors, expectNoSmokeErrors } from "../utils/errors" import { mockOpenCodeServer } from "../utils/mock-server" diff --git a/packages/app/e2e/utils/command-palette.ts b/packages/app/e2e/utils/command-palette.ts index 3a452fcde4c..bc238b296b1 100644 --- a/packages/app/e2e/utils/command-palette.ts +++ b/packages/app/e2e/utils/command-palette.ts @@ -1,5 +1,5 @@ import { expect, type Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { mockOpenCodeServer } from "./mock-server" import { APP_READY_TIMEOUT } from "./waits" diff --git a/packages/app/e2e/utils/mock-server.ts b/packages/app/e2e/utils/mock-server.ts index 45bef80164e..ee30cb457ee 100644 --- a/packages/app/e2e/utils/mock-server.ts +++ b/packages/app/e2e/utils/mock-server.ts @@ -1,5 +1,5 @@ import type { Page } from "@playwright/test" -import type { JsonValue, OpenCodeEvent, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { JsonValue, OpenCodeEvent, SessionMessageInfo } from "@opencode/client/promise" import { Duration, Effect, Layer } from "effect" import { HttpRouter, HttpServer, HttpServerResponse } from "effect/unstable/http" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" diff --git a/packages/app/e2e/utils/sse-transport.ts b/packages/app/e2e/utils/sse-transport.ts index 2e6a7b67fa3..2a563112fd0 100644 --- a/packages/app/e2e/utils/sse-transport.ts +++ b/packages/app/e2e/utils/sse-transport.ts @@ -1,5 +1,5 @@ import type { Page } from "@playwright/test" -import type { OpenCodeEvent } from "@opencode-ai/client/promise" +import type { OpenCodeEvent } from "@opencode/client/promise" export type SseConnectionRecord = { id: number diff --git a/packages/app/e2e/utils/waits.ts b/packages/app/e2e/utils/waits.ts index bcdac591b09..9dd3d76657e 100644 --- a/packages/app/e2e/utils/waits.ts +++ b/packages/app/e2e/utils/waits.ts @@ -1,5 +1,5 @@ import { expect, type Locator, type Page } from "@playwright/test" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" export const APP_READY_TIMEOUT = 30_000 diff --git a/packages/app/package.json b/packages/app/package.json index 93421f15707..0292828d197 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/app", + "name": "@opencode/app", "version": "1.18.15", "description": "", "type": "module", @@ -63,12 +63,12 @@ "@dnd-kit/solid": "0.5.0", "@ibm/plex": "6.4.1", "@kobalte/core": "catalog:", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/schema": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/schema": "workspace:*", "@opencode/plugin-browser": "workspace:*", - "@opencode-ai/session-ui": "workspace:*", - "@opencode-ai/ui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/session-ui": "workspace:*", + "@opencode/ui": "workspace:*", + "@opencode/util": "workspace:*", "@pierre/trees": "1.0.0-beta.4", "@sentry/solid": "catalog:", "@solid-primitives/event-bus": "1.1.2", diff --git a/packages/app/src/app.tsx b/packages/app/src/app.tsx index f7654abe746..ecfce010bdd 100644 --- a/packages/app/src/app.tsx +++ b/packages/app/src/app.tsx @@ -1,8 +1,8 @@ import "@/index.css" -import { DialogProvider } from "@opencode-ai/ui/context/dialog" -import { FileComponentProvider } from "@opencode-ai/ui/context/file" -import { Font } from "@opencode-ai/ui/font" -import { ThemeProvider } from "@opencode-ai/ui/theme/context" +import { DialogProvider } from "@opencode/ui/context/dialog" +import { FileComponentProvider } from "@opencode/ui/context/file" +import { Font } from "@opencode/ui/font" +import { ThemeProvider } from "@opencode/ui/theme/context" import { MetaProvider } from "@solidjs/meta" import { type BaseRouterProps, Router } from "@solidjs/router" import { QueryClient, QueryClientProvider } from "@tanstack/solid-query" diff --git a/packages/app/src/composer/adapter.ts b/packages/app/src/composer/adapter.ts index ef068ab233f..ffc50788d01 100644 --- a/packages/app/src/composer/adapter.ts +++ b/packages/app/src/composer/adapter.ts @@ -1,5 +1,5 @@ -import type { Data } from "@opencode-ai/client/solid" -import type { SessionMessageUser } from "@opencode-ai/client/promise" +import type { Data } from "@opencode/client/solid" +import type { SessionMessageUser } from "@opencode/client/promise" import type { Accessor } from "solid-js" import type { ModelSelection } from "@/providers/models/selection" import type { ServerSDK } from "@/runtime/server/client" diff --git a/packages/app/src/composer/commands.tsx b/packages/app/src/composer/commands.tsx index 407d5972c98..4cafbffaf8e 100644 --- a/packages/app/src/composer/commands.tsx +++ b/packages/app/src/composer/commands.tsx @@ -1,7 +1,7 @@ import { useCommand, type CommandOption } from "@/shell/commands/command" import { useLanguage } from "@/runtime/i18n/language" import { useLocal, type ModelSelection } from "@/providers/models/selection" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { getCursorPosition, setCursorPosition } from "./editor/dom" import { useSessionLayout } from "@/session/session-layout" import { createSessionOwnership } from "@/session/session-ownership" diff --git a/packages/app/src/composer/comments.tsx b/packages/app/src/composer/comments.tsx index 9b5bdac649a..09f5ee357b5 100644 --- a/packages/app/src/composer/comments.tsx +++ b/packages/app/src/composer/comments.tsx @@ -1,8 +1,8 @@ import { batch, createMemo, createRoot, onCleanup } from "solid-js" import { createStore, reconcile, type SetStoreFunction, type Store } from "solid-js/store" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { useParams } from "@solidjs/router" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { Persist, persisted } from "@/runtime/persistence/storage" import { useServerSDK } from "@/runtime/server/client" import type { ServerScope } from "@/runtime/server/scope" diff --git a/packages/app/src/composer/composer.stories.tsx b/packages/app/src/composer/composer.stories.tsx index 013573517a8..73c32cbb5d3 100644 --- a/packages/app/src/composer/composer.stories.tsx +++ b/packages/app/src/composer/composer.stories.tsx @@ -1,7 +1,7 @@ import { Show, createMemo, onMount, type JSX } from "solid-js" import { createStore } from "solid-js/store" import type { ModelSelection } from "@/providers/models/selection" -import { STORY_MODEL, emptySessionDocument, pendingAndQueuedDocument } from "@opencode-ai/session-ui/storybook" +import { STORY_MODEL, emptySessionDocument, pendingAndQueuedDocument } from "@opencode/session-ui/storybook" import { Composer } from "./composer" import type { ComposerModel } from "./model" import { createComposerEditor } from "./editor/interaction" @@ -9,7 +9,7 @@ import type { ComposerPersistedState, ComposerSuggestion } from "./types" import { buildPromptRequest } from "./request" import { promptLength } from "./prompt-parts" import { SessionPreview } from "@/session/story-model" -import { Skill } from "@opencode-ai/schema/skill" +import { Skill } from "@opencode/schema/skill" import { resolveSessionComposerSelection } from "@/session/composer/selection" const selectedModel = { diff --git a/packages/app/src/composer/composer.tsx b/packages/app/src/composer/composer.tsx index b9833b04165..f80afc7a7c0 100644 --- a/packages/app/src/composer/composer.tsx +++ b/packages/app/src/composer/composer.tsx @@ -1,10 +1,10 @@ import { Show, createMemo } from "solid-js" -import { Button } from "@opencode-ai/ui/button" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Icon } from "@opencode-ai/ui/icon" -import { Keybind } from "@opencode-ai/ui/keybind" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { Button } from "@opencode/ui/button" +import { useDialog } from "@opencode/ui/context/dialog" +import { Icon } from "@opencode/ui/icon" +import { Keybind } from "@opencode/ui/keybind" +import { ProviderIcon } from "@opencode/ui/provider-icon" +import { Tooltip } from "@opencode/ui/tooltip" import { ComposerEditor } from "./editor/editor" import { ModelSelectorPopover } from "@/providers/models/select-dialog" import { DialogSelectModelUnpaid } from "@/providers/models/unpaid" diff --git a/packages/app/src/composer/dropzone.tsx b/packages/app/src/composer/dropzone.tsx index b7621c009ce..e15e60dda6f 100644 --- a/packages/app/src/composer/dropzone.tsx +++ b/packages/app/src/composer/dropzone.tsx @@ -1,4 +1,4 @@ -import { Icon } from "@opencode-ai/ui/icon" +import { Icon } from "@opencode/ui/icon" import { Show, createMemo } from "solid-js" import { createStore } from "solid-js/store" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/composer/editor/actions.test.ts b/packages/app/src/composer/editor/actions.test.ts index e903827a1f8..9d1144622ab 100644 --- a/packages/app/src/composer/editor/actions.test.ts +++ b/packages/app/src/composer/editor/actions.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { createStore } from "solid-js/store" -import { Skill } from "@opencode-ai/schema/skill" +import { Skill } from "@opencode/schema/skill" import type { ComposerPersistedState } from "../types" import { createComposerEditorActions } from "./actions" diff --git a/packages/app/src/composer/editor/editor.tsx b/packages/app/src/composer/editor/editor.tsx index 11a4cfbef48..ea0220fe706 100644 --- a/packages/app/src/composer/editor/editor.tsx +++ b/packages/app/src/composer/editor/editor.tsx @@ -1,20 +1,20 @@ import { createEffect, createMemo, createSignal, For, onCleanup, onMount, Show, type JSX } from "solid-js" import { createStore } from "solid-js/store" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" +import { FileIcon } from "@opencode/ui/file-icon" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" import { createAnimatedPresence } from "@/runtime/animated-presence" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { Button } from "@opencode-ai/ui/button" -import { Keybind } from "@opencode-ai/ui/keybind" -import { Menu } from "@opencode-ai/ui/menu" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { ScrollView } from "@opencode-ai/ui/scroll-view" -import { AttachmentCard } from "@opencode-ai/session-ui/attachment-card" -import { CommentCard } from "@opencode-ai/session-ui/comment-card" -import { typeLabel } from "@opencode-ai/session-ui/message-file" -import { Skill } from "@opencode-ai/schema/skill" +import { ProviderIcon } from "@opencode/ui/provider-icon" +import { useI18n } from "@opencode/ui/context/i18n" +import { Button } from "@opencode/ui/button" +import { Keybind } from "@opencode/ui/keybind" +import { Menu } from "@opencode/ui/menu" +import { Tooltip } from "@opencode/ui/tooltip" +import { ScrollView } from "@opencode/ui/scroll-view" +import { AttachmentCard } from "@opencode/session-ui/attachment-card" +import { CommentCard } from "@opencode/session-ui/comment-card" +import { typeLabel } from "@opencode/session-ui/message-file" +import { Skill } from "@opencode/schema/skill" import type { ComposerAttachment, ComposerComment, diff --git a/packages/app/src/composer/editor/interaction.ts b/packages/app/src/composer/editor/interaction.ts index f4912459e0e..71d33fe3fa6 100644 --- a/packages/app/src/composer/editor/interaction.ts +++ b/packages/app/src/composer/editor/interaction.ts @@ -1,6 +1,6 @@ import { createEffect, type Accessor } from "solid-js" import { createStore, reconcile } from "solid-js/store" -import { useFilteredList } from "@opencode-ai/ui/hooks" +import { useFilteredList } from "@opencode/ui/hooks" import { createComposerAttachments, type ComposerAttachmentConfig } from "../attachments/attachments" import { createComposerEditorActions, type ComposerStateStoreInput } from "./actions" import type { diff --git a/packages/app/src/composer/model.ts b/packages/app/src/composer/model.ts index a2ac5f9af88..7f5f0c485f1 100644 --- a/packages/app/src/composer/model.ts +++ b/packages/app/src/composer/model.ts @@ -1,6 +1,6 @@ -import { ImagePreview } from "@opencode-ai/ui/image-preview" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import type { ReferenceInfo } from "@opencode-ai/client/promise" +import { ImagePreview } from "@opencode/ui/image-preview" +import { useDialog } from "@opencode/ui/context/dialog" +import type { ReferenceInfo } from "@opencode/client/promise" import { createComponent, createEffect, createMemo, on } from "solid-js" import type { ComposerSuggestion } from "./types" import { createComposerEditor, createComposerEditorState, type ComposerEditorModel } from "./editor/interaction" @@ -15,7 +15,7 @@ import { useData } from "@/runtime/server/current" import { createSessionTabs } from "@/session/helpers" import { showToast } from "@/shell/notifications/toast" import { formatServerError } from "@/runtime/server/errors" -import { Skill } from "@opencode-ai/schema/skill" +import { Skill } from "@opencode/schema/skill" import type { ComposerAdapter, ComposerControls, ComposerQueue } from "./adapter" import type { ImageAttachmentPart } from "./state" import type { PromptHistoryComment } from "./history/entry" diff --git a/packages/app/src/composer/persistence.tsx b/packages/app/src/composer/persistence.tsx index 1a27700dcd9..3e47ce46f3a 100644 --- a/packages/app/src/composer/persistence.tsx +++ b/packages/app/src/composer/persistence.tsx @@ -1,5 +1,5 @@ -import { base64Encode } from "@opencode-ai/util/encode" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { base64Encode } from "@opencode/util/encode" +import { createSimpleContext } from "@opencode/ui/context" import { useParams, useSearchParams } from "@solidjs/router" import { createMemo, createResource, createRoot, getOwner, onCleanup } from "solid-js" import { requireServerKey } from "@/shell/routes/session" diff --git a/packages/app/src/composer/prompt.test.ts b/packages/app/src/composer/prompt.test.ts index 6d069739c3b..c7214dab9f3 100644 --- a/packages/app/src/composer/prompt.test.ts +++ b/packages/app/src/composer/prompt.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageUser } from "@opencode/client/promise" import { extractPromptComments, extractPromptFromMessage } from "./prompt" describe("extractPromptFromMessage", () => { diff --git a/packages/app/src/composer/prompt.ts b/packages/app/src/composer/prompt.ts index d7435c7650c..c033ae73bcf 100644 --- a/packages/app/src/composer/prompt.ts +++ b/packages/app/src/composer/prompt.ts @@ -1,8 +1,8 @@ import type { AgentPart, FileAttachmentPart, ImageAttachmentPart, Prompt, SkillPart } from "@/composer/state" import { createLegacyBlobReference } from "@/runtime/persistence/drafts" -import type { SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageUser } from "@opencode/client/promise" import { readPromptPresentation } from "./comment-note" -import { Skill } from "@opencode-ai/schema/skill" +import { Skill } from "@opencode/schema/skill" type Inline = | { diff --git a/packages/app/src/composer/request.test.ts b/packages/app/src/composer/request.test.ts index e71304d9d2a..401653985db 100644 --- a/packages/app/src/composer/request.test.ts +++ b/packages/app/src/composer/request.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { Skill } from "@opencode-ai/schema/skill" +import { Skill } from "@opencode/schema/skill" import type { Prompt } from "@/composer/state" import { buildPromptRequest } from "./request" diff --git a/packages/app/src/composer/request.ts b/packages/app/src/composer/request.ts index c1d156e0544..0b3f4d8a22c 100644 --- a/packages/app/src/composer/request.ts +++ b/packages/app/src/composer/request.ts @@ -1,4 +1,4 @@ -import { getFilename } from "@opencode-ai/util/path" +import { getFilename } from "@opencode/util/path" import type { FileSelection } from "@/workspaces/files/model" import { encodeFilePath } from "@/workspaces/files/path" import type { AgentPart, FileAttachmentPart, ImageAttachmentPart, Prompt, SkillPart } from "@/composer/state" diff --git a/packages/app/src/composer/schema.test.ts b/packages/app/src/composer/schema.test.ts index 89f5a93a991..7b4e9a7778d 100644 --- a/packages/app/src/composer/schema.test.ts +++ b/packages/app/src/composer/schema.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import { Schema } from "effect" import { Persistence } from "@/runtime/persistence/schema" -import { SessionMessage } from "@opencode-ai/schema/session-message" +import { SessionMessage } from "@opencode/schema/session-message" import { CommentStore, ComposerStore, diff --git a/packages/app/src/composer/schema.ts b/packages/app/src/composer/schema.ts index 21373fadb36..960736d9d90 100644 --- a/packages/app/src/composer/schema.ts +++ b/packages/app/src/composer/schema.ts @@ -1,7 +1,7 @@ import { Schema, SchemaGetter } from "effect" -import { checksum } from "@opencode-ai/util/encode" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { Skill } from "@opencode-ai/schema/skill" +import { checksum } from "@opencode/util/encode" +import { SessionMessage } from "@opencode/schema/session-message" +import { Skill } from "@opencode/schema/skill" import { Persistence } from "@/runtime/persistence/schema" import { FileSelection, SelectedLineRange } from "@/workspaces/files/types" diff --git a/packages/app/src/composer/state.test.ts b/packages/app/src/composer/state.test.ts index 87ed9874820..c86c6a2469d 100644 --- a/packages/app/src/composer/state.test.ts +++ b/packages/app/src/composer/state.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { createRoot } from "solid-js" -import { Skill } from "@opencode-ai/schema/skill" +import { Skill } from "@opencode/schema/skill" import { Schema, Option } from "effect" import { Persistence } from "@/runtime/persistence/schema" import { createMemoryComposerState, DEFAULT_PROMPT } from "./state" diff --git a/packages/app/src/composer/submit.test.ts b/packages/app/src/composer/submit.test.ts index 517a9f3a512..f7c87b96aea 100644 --- a/packages/app/src/composer/submit.test.ts +++ b/packages/app/src/composer/submit.test.ts @@ -1,8 +1,8 @@ import { describe, expect, test } from "bun:test" import type { ModelSelection } from "@/providers/models/selection" -import type { SessionMessageUser } from "@opencode-ai/client/promise" -import { Skill } from "@opencode-ai/schema/skill" -import { AbsolutePath } from "@opencode-ai/schema/schema" +import type { SessionMessageUser } from "@opencode/client/promise" +import { Skill } from "@opencode/schema/skill" +import { AbsolutePath } from "@opencode/schema/schema" import type { ActiveComposerAdapter, ComposerControls, ComposerSession, NewSessionComposerAdapter } from "./adapter" import { createMemoryComposerState } from "./state" import { createComposerSubmit } from "./submit" diff --git a/packages/app/src/composer/submit.ts b/packages/app/src/composer/submit.ts index 9ac30951a07..66a7a8c5f98 100644 --- a/packages/app/src/composer/submit.ts +++ b/packages/app/src/composer/submit.ts @@ -1,7 +1,7 @@ -import { SessionMessage } from "@opencode-ai/schema/session-message" -import type { SessionMessageUser, SkillInfo } from "@opencode-ai/client/promise" -import { Skill } from "@opencode-ai/schema/skill" -import { Event } from "@opencode-ai/schema/event" +import { SessionMessage } from "@opencode/schema/session-message" +import type { SessionMessageUser, SkillInfo } from "@opencode/client/promise" +import { Skill } from "@opencode/schema/skill" +import { Event } from "@opencode/schema/event" import type { Accessor } from "solid-js" import type { PromptHistoryComment } from "./history/entry" import type { ImageAttachmentPart, Prompt } from "./state" diff --git a/packages/app/src/home/model.ts b/packages/app/src/home/model.ts index 4f5beb160a4..cb71e4ae709 100644 --- a/packages/app/src/home/model.ts +++ b/packages/app/src/home/model.ts @@ -4,7 +4,7 @@ import { ServerConnection, useServers } from "@/runtime/server/registry" import { useTabs } from "@/shell/tabs/tabs" import { toggleHomeProjectSelection } from "@/shell/layout/helpers" import { createEffect, createMemo, startTransition } from "solid-js" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" export function createHomeController() { const layout = useLayout() diff --git a/packages/app/src/home/projects/controller.tsx b/packages/app/src/home/projects/controller.tsx index f3b239d4ffb..9149d679f13 100644 --- a/packages/app/src/home/projects/controller.tsx +++ b/packages/app/src/home/projects/controller.tsx @@ -8,13 +8,13 @@ import { ServerConnection } from "@/runtime/server/registry" import { closeHomeProject, errorMessage, homeProjectDirectories } from "@/shell/layout/helpers" import { Persist, persisted } from "@/runtime/persistence/storage" import { showToast } from "@/shell/notifications/toast" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { createResource } from "solid-js" import { Schema } from "effect" import { Persistence } from "@/runtime/persistence/schema" import type { HomeController } from "../model" import { useGlobal } from "@/runtime/server/runtime" -import { SessionTransfer } from "@opencode-ai/schema/session-transfer" +import { SessionTransfer } from "@opencode/schema/session-transfer" export const HomeServersSchema = Schema.Struct({ collapsed: Persistence.record(Persistence.fallback(Schema.Boolean, () => false)), diff --git a/packages/app/src/home/projects/view.tsx b/packages/app/src/home/projects/view.tsx index e4bf678325e..c2b4ed95c6f 100644 --- a/packages/app/src/home/projects/view.tsx +++ b/packages/app/src/home/projects/view.tsx @@ -6,12 +6,12 @@ import { isSortable, useSortable } from "@dnd-kit/solid/sortable" import { AutoScroller, Feedback, PointerActivationConstraints } from "@dnd-kit/dom" import { RestrictToVerticalAxis } from "@dnd-kit/abstract/modifiers" import { RestrictToElement } from "@dnd-kit/dom/modifiers" -import { ScrollView } from "@opencode-ai/ui/scroll-view" -import { ProjectAvatar } from "@opencode-ai/ui/project-avatar" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Menu } from "@opencode-ai/ui/menu" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { ScrollView } from "@opencode/ui/scroll-view" +import { ProjectAvatar } from "@opencode/ui/project-avatar" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Menu } from "@opencode/ui/menu" +import { Tooltip } from "@opencode/ui/tooltip" import { getProjectAvatarVariant, type HomeProjectSelection, type LocalProject } from "@/shell/state/layout" import { ServerConnection } from "@/runtime/server/registry" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/home/route.tsx b/packages/app/src/home/route.tsx index a39f29b5eb0..2ab2dcf5da5 100644 --- a/packages/app/src/home/route.tsx +++ b/packages/app/src/home/route.tsx @@ -1,4 +1,4 @@ -import { ScrollView } from "@opencode-ai/ui/scroll-view" +import { ScrollView } from "@opencode/ui/scroll-view" import { createMediaQuery } from "@solid-primitives/media" import { Show } from "solid-js" import { createHomeController } from "./model" diff --git a/packages/app/src/home/sessions/archive.ts b/packages/app/src/home/sessions/archive.ts index 87a6081c2fb..4393703216a 100644 --- a/packages/app/src/home/sessions/archive.ts +++ b/packages/app/src/home/sessions/archive.ts @@ -1,6 +1,6 @@ import { notifySessionTabsRemoved } from "@/shell/titlebar/session-events" import type { ServerConnection } from "@/runtime/server/registry" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" type HomeSession = Pick diff --git a/packages/app/src/home/sessions/command-palette.tsx b/packages/app/src/home/sessions/command-palette.tsx index 7d8ada7d634..ec4deb74673 100644 --- a/packages/app/src/home/sessions/command-palette.tsx +++ b/packages/app/src/home/sessions/command-palette.tsx @@ -1,4 +1,4 @@ -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { createMemo, onCleanup } from "solid-js" import { commandPaletteOptions, useCommand } from "@/shell/commands/command" import { useGlobal } from "@/runtime/server/runtime" diff --git a/packages/app/src/home/sessions/controller.tsx b/packages/app/src/home/sessions/controller.tsx index 72e5eafdc4a..1c6e698e9ed 100644 --- a/packages/app/src/home/sessions/controller.tsx +++ b/packages/app/src/home/sessions/controller.tsx @@ -1,7 +1,7 @@ -import type { SessionInfo } from "@opencode-ai/client/promise" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Button } from "@opencode-ai/ui/button" -import { DialogFooter, DialogHeader, DialogTitleGroup, Dialog } from "@opencode-ai/ui/dialog" +import type { SessionInfo } from "@opencode/client/promise" +import { useDialog } from "@opencode/ui/context/dialog" +import { Button } from "@opencode/ui/button" +import { DialogFooter, DialogHeader, DialogTitleGroup, Dialog } from "@opencode/ui/dialog" import { skipToken, useQuery, useQueryClient } from "@tanstack/solid-query" import { DateTime } from "luxon" import { type Accessor, createEffect, createMemo, type JSX, startTransition, untrack } from "solid-js" diff --git a/packages/app/src/home/sessions/index.test.ts b/packages/app/src/home/sessions/index.test.ts index c2dd2a5f186..283e85e11e9 100644 --- a/packages/app/src/home/sessions/index.test.ts +++ b/packages/app/src/home/sessions/index.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import { SESSION_RECENT_LIMIT, SESSION_RECENT_WINDOW } from "@/runtime/server/global-sync/types" import { HOME_SESSION_INDEX_LIMIT, diff --git a/packages/app/src/home/sessions/index.ts b/packages/app/src/home/sessions/index.ts index c81e77371db..ec699e57e92 100644 --- a/packages/app/src/home/sessions/index.ts +++ b/packages/app/src/home/sessions/index.ts @@ -1,4 +1,4 @@ -import type { SessionInfo, SessionsResponse } from "@opencode-ai/client/promise" +import type { SessionInfo, SessionsResponse } from "@opencode/client/promise" import { pathKey } from "@/workspaces/path-key" import { SESSION_RECENT_LIMIT, SESSION_RECENT_WINDOW } from "@/runtime/server/global-sync/types" diff --git a/packages/app/src/home/sessions/records.test.ts b/packages/app/src/home/sessions/records.test.ts index 03aa9afa4bc..bf0bbf4011d 100644 --- a/packages/app/src/home/sessions/records.test.ts +++ b/packages/app/src/home/sessions/records.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import type { LocalProject } from "@/shell/state/layout" import { buildHomeSessionRecords } from "./records" diff --git a/packages/app/src/home/sessions/records.ts b/packages/app/src/home/sessions/records.ts index 8c6595d5889..bc0c46dea9f 100644 --- a/packages/app/src/home/sessions/records.ts +++ b/packages/app/src/home/sessions/records.ts @@ -1,4 +1,4 @@ -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import type { LocalProject } from "@/shell/state/layout" import { compareSessionTime, displayName } from "@/shell/layout/helpers" import { pathKey } from "@/workspaces/path-key" diff --git a/packages/app/src/home/sessions/view.tsx b/packages/app/src/home/sessions/view.tsx index b6ef0e97511..0ad1188e8fd 100644 --- a/packages/app/src/home/sessions/view.tsx +++ b/packages/app/src/home/sessions/view.tsx @@ -1,15 +1,15 @@ -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import { Key } from "@solid-primitives/keyed" import { createMemo, For, Index, onCleanup, Show } from "solid-js" import { createStore, type SetStoreFunction } from "solid-js/store" -import { InlineInput } from "@opencode-ai/ui/inline-input" -import { Spinner } from "@opencode-ai/ui/spinner" -import { ScrollView } from "@opencode-ai/ui/scroll-view" -import { Button } from "@opencode-ai/ui/button" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Menu } from "@opencode-ai/ui/menu" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { InlineInput } from "@opencode/ui/inline-input" +import { Spinner } from "@opencode/ui/spinner" +import { ScrollView } from "@opencode/ui/scroll-view" +import { Button } from "@opencode/ui/button" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Menu } from "@opencode/ui/menu" +import { Tooltip } from "@opencode/ui/tooltip" import { useLanguage } from "@/runtime/i18n/language" import { ServerConnection } from "@/runtime/server/registry" import { SessionTabAvatarView } from "@/shell/layout/session-tab-avatar" diff --git a/packages/app/src/index.css b/packages/app/src/index.css index d36bbd34397..3c0573733a0 100644 --- a/packages/app/src/index.css +++ b/packages/app/src/index.css @@ -1,6 +1,6 @@ -@import "@opencode-ai/ui/styles/tailwind"; -@import "@opencode-ai/session-ui/styles"; -@import "@opencode-ai/ui/styles/tokens"; +@import "@opencode/ui/styles/tailwind"; +@import "@opencode/session-ui/styles"; +@import "@opencode/ui/styles/tokens"; @import "tw-animate-css"; @font-face { diff --git a/packages/app/src/new-session/commands.tsx b/packages/app/src/new-session/commands.tsx index 19b7fbf540c..da53f118f16 100644 --- a/packages/app/src/new-session/commands.tsx +++ b/packages/app/src/new-session/commands.tsx @@ -1,4 +1,4 @@ -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { useSettingsCommand } from "@/settings/command" import { useCommand } from "@/shell/commands/command" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/new-session/composer-adapter.ts b/packages/app/src/new-session/composer-adapter.ts index a1d4e1b09fd..57cb53faa65 100644 --- a/packages/app/src/new-session/composer-adapter.ts +++ b/packages/app/src/new-session/composer-adapter.ts @@ -1,6 +1,6 @@ -import { base64Encode } from "@opencode-ai/util/encode" -import type { SessionMessageUser } from "@opencode-ai/client/promise" -import { Session } from "@opencode-ai/schema/session" +import { base64Encode } from "@opencode/util/encode" +import type { SessionMessageUser } from "@opencode/client/promise" +import { Session } from "@opencode/schema/session" import { startTransition } from "solid-js" import type { NewSessionComposerAdapter } from "@/composer/adapter" import { useComposerState } from "@/composer/persistence" diff --git a/packages/app/src/new-session/project/selector.tsx b/packages/app/src/new-session/project/selector.tsx index a9888411bf8..99e207ed33e 100644 --- a/packages/app/src/new-session/project/selector.tsx +++ b/packages/app/src/new-session/project/selector.tsx @@ -9,9 +9,9 @@ import { type ComponentProps, } from "solid-js" import { createStore } from "solid-js/store" -import { Menu } from "@opencode-ai/ui/menu" -import { Icon } from "@opencode-ai/ui/icon" -import { ProjectAvatar } from "@opencode-ai/ui/project-avatar" +import { Menu } from "@opencode/ui/menu" +import { Icon } from "@opencode/ui/icon" +import { ProjectAvatar } from "@opencode/ui/project-avatar" import { getProjectAvatarVariant } from "@/shell/state/layout" import { useLanguage } from "@/runtime/i18n/language" import { displayName, getProjectAvatarSource } from "@/shell/layout/helpers" diff --git a/packages/app/src/new-session/view.tsx b/packages/app/src/new-session/view.tsx index 05a2bd8b49e..6c3323eea69 100644 --- a/packages/app/src/new-session/view.tsx +++ b/packages/app/src/new-session/view.tsx @@ -1,6 +1,6 @@ -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { Icon } from "@opencode-ai/ui/icon" +import { useDialog } from "@opencode/ui/context/dialog" +import { Tooltip } from "@opencode/ui/tooltip" +import { Icon } from "@opencode/ui/icon" import { Show, createMemo, createSignal } from "solid-js" import { Schema } from "effect" import createPresence from "solid-presence" diff --git a/packages/app/src/new-session/wordmark.tsx b/packages/app/src/new-session/wordmark.tsx index ced3c83ea62..00bc6962aa4 100644 --- a/packages/app/src/new-session/wordmark.tsx +++ b/packages/app/src/new-session/wordmark.tsx @@ -1,4 +1,4 @@ -import { Wordmark } from "@opencode-ai/ui/wordmark" +import { Wordmark } from "@opencode/ui/wordmark" import "./wordmark.css" export function NewSessionWordmark() { diff --git a/packages/app/src/new-session/workspace/selector.tsx b/packages/app/src/new-session/workspace/selector.tsx index 06e383477fe..cf02b1d7634 100644 --- a/packages/app/src/new-session/workspace/selector.tsx +++ b/packages/app/src/new-session/workspace/selector.tsx @@ -1,10 +1,10 @@ import { createMemo, createSignal, For, Show } from "solid-js" import { createStore } from "solid-js/store" import { createResizeObserver } from "@solid-primitives/resize-observer" -import { Menu } from "@opencode-ai/ui/menu" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { Icon } from "@opencode-ai/ui/icon" -import { getFilename } from "@opencode-ai/util/path" +import { Menu } from "@opencode/ui/menu" +import { Tooltip } from "@opencode/ui/tooltip" +import { Icon } from "@opencode/ui/icon" +import { getFilename } from "@opencode/util/path" import { useLanguage } from "@/runtime/i18n/language" import { sameDirectory } from "@/workspaces/paths" diff --git a/packages/app/src/providers/catalog/plugin.ts b/packages/app/src/providers/catalog/plugin.ts index 9e240065092..ac01fe82ea8 100644 --- a/packages/app/src/providers/catalog/plugin.ts +++ b/packages/app/src/providers/catalog/plugin.ts @@ -1,4 +1,4 @@ -import type { PluginInfo } from "@opencode-ai/client" +import type { PluginInfo } from "@opencode/client" export function pluginLabel(plugin: PluginInfo) { if (plugin.id) return plugin.id diff --git a/packages/app/src/providers/connect/controller.ts b/packages/app/src/providers/connect/controller.ts index af635dc8d3d..b2138b68e20 100644 --- a/packages/app/src/providers/connect/controller.ts +++ b/packages/app/src/providers/connect/controller.ts @@ -1,4 +1,4 @@ -import type { FormAnswer, IntegrationMethod, IntegrationOauthConnectOutput } from "@opencode-ai/client/promise" +import type { FormAnswer, IntegrationMethod, IntegrationOauthConnectOutput } from "@opencode/client/promise" import { useLanguage } from "@/runtime/i18n/language" import { usePlatform } from "@/runtime/platform/platform" import { useServerSDK } from "@/runtime/server/client" diff --git a/packages/app/src/providers/connect/dialog.stories.tsx b/packages/app/src/providers/connect/dialog.stories.tsx index 3525b2be00e..15553d1ba6e 100644 --- a/packages/app/src/providers/connect/dialog.stories.tsx +++ b/packages/app/src/providers/connect/dialog.stories.tsx @@ -1,6 +1,6 @@ // @ts-nocheck -import { Button } from "@opencode-ai/ui/button" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { Button } from "@opencode/ui/button" +import { useDialog } from "@opencode/ui/context/dialog" import { QueryClient, QueryClientProvider } from "@tanstack/solid-query" import { mockProviderAuth } from "@/runtime/server/sync" import { onCleanup, onMount } from "solid-js" diff --git a/packages/app/src/providers/connect/dialog.tsx b/packages/app/src/providers/connect/dialog.tsx index 85c0520a89d..fd063605e09 100644 --- a/packages/app/src/providers/connect/dialog.tsx +++ b/packages/app/src/providers/connect/dialog.tsx @@ -1,12 +1,12 @@ -import { Button } from "@opencode-ai/ui/button" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Icon } from "@opencode-ai/ui/icon" -import { List } from "@opencode-ai/ui/list" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" -import { Spinner } from "@opencode-ai/ui/spinner" -import { TextField } from "@opencode-ai/ui/text-field" -import { DialogBody, DialogHeader, DialogTitle, Dialog } from "@opencode-ai/ui/dialog" -import { TextInput } from "@opencode-ai/ui/text-input" +import { Button } from "@opencode/ui/button" +import { useDialog } from "@opencode/ui/context/dialog" +import { Icon } from "@opencode/ui/icon" +import { List } from "@opencode/ui/list" +import { ProviderIcon } from "@opencode/ui/provider-icon" +import { Spinner } from "@opencode/ui/spinner" +import { TextField } from "@opencode/ui/text-field" +import { DialogBody, DialogHeader, DialogTitle, Dialog } from "@opencode/ui/dialog" +import { TextInput } from "@opencode/ui/text-input" import { showToast } from "@/shell/notifications/toast" import { type Component, createMemo, createUniqueId, For, Match, onMount, Show, Switch } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/app/src/providers/connect/mcp-dialog.tsx b/packages/app/src/providers/connect/mcp-dialog.tsx index a212bae5eaf..218adb456e9 100644 --- a/packages/app/src/providers/connect/mcp-dialog.tsx +++ b/packages/app/src/providers/connect/mcp-dialog.tsx @@ -1,9 +1,9 @@ import { Component, createMemo, Show } from "solid-js" import { useData } from "@/runtime/server/current" import { useWorkspaceLocation } from "@/workspaces/location" -import { Dialog, DialogBody, DialogHeader, DialogTitleGroup } from "@opencode-ai/ui/dialog" -import { List } from "@opencode-ai/ui/list" -import { Switch } from "@opencode-ai/ui/switch" +import { Dialog, DialogBody, DialogHeader, DialogTitleGroup } from "@opencode/ui/dialog" +import { List } from "@opencode/ui/list" +import { Switch } from "@opencode/ui/switch" import { useLanguage } from "@/runtime/i18n/language" import { useMcpToggle } from "@/providers/connect/mcp" diff --git a/packages/app/src/providers/connect/usage-exceeded.tsx b/packages/app/src/providers/connect/usage-exceeded.tsx index 3b9b66ebbe6..1703225b872 100644 --- a/packages/app/src/providers/connect/usage-exceeded.tsx +++ b/packages/app/src/providers/connect/usage-exceeded.tsx @@ -1,8 +1,8 @@ import { usePlatform } from "@/runtime/platform/platform" import { useLanguage } from "@/runtime/i18n/language" -import { Button } from "@opencode-ai/ui/button" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Dialog, DialogBody, DialogHeader, DialogTitleGroup } from "@opencode-ai/ui/dialog" +import { Button } from "@opencode/ui/button" +import { useDialog } from "@opencode/ui/context/dialog" +import { Dialog, DialogBody, DialogHeader, DialogTitleGroup } from "@opencode/ui/dialog" import { JSX } from "solid-js" export type DialogGoUpsellProps = { diff --git a/packages/app/src/providers/credentials/dialog.tsx b/packages/app/src/providers/credentials/dialog.tsx index 63cd7eb9868..bb047439695 100644 --- a/packages/app/src/providers/credentials/dialog.tsx +++ b/packages/app/src/providers/credentials/dialog.tsx @@ -1,10 +1,10 @@ -import { Button } from "@opencode-ai/ui/button" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { Button } from "@opencode/ui/button" +import { useDialog } from "@opencode/ui/context/dialog" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { useMutation } from "@tanstack/solid-query" -import { TextField } from "@opencode-ai/ui/text-field" +import { TextField } from "@opencode/ui/text-field" import { showToast } from "@/shell/notifications/toast" import { batch, For } from "solid-js" import { createStore, produce } from "solid-js/store" diff --git a/packages/app/src/providers/models/manage.tsx b/packages/app/src/providers/models/manage.tsx index b07ce142901..808621f6f28 100644 --- a/packages/app/src/providers/models/manage.tsx +++ b/packages/app/src/providers/models/manage.tsx @@ -1,17 +1,17 @@ -import { Button } from "@opencode-ai/ui/button" -import { Dialog, DialogBody, DialogHeader, DialogTitleGroup } from "@opencode-ai/ui/dialog" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" -import { Switch } from "@opencode-ai/ui/switch" -import { TextInput } from "@opencode-ai/ui/text-input" -import { useFilteredList } from "@opencode-ai/ui/hooks" +import { Button } from "@opencode/ui/button" +import { Dialog, DialogBody, DialogHeader, DialogTitleGroup } from "@opencode/ui/dialog" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { ProviderIcon } from "@opencode/ui/provider-icon" +import { Switch } from "@opencode/ui/switch" +import { TextInput } from "@opencode/ui/text-input" +import { useFilteredList } from "@opencode/ui/hooks" import { For, Show, type Component } from "solid-js" import { createStore } from "solid-js/store" import { useLocal } from "@/providers/models/selection" import { popularProviders } from "@/providers/catalog/providers" import { useLanguage } from "@/runtime/i18n/language" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { DialogConnectProvider } from "@/providers/connect/dialog" import { decode64 } from "@/runtime/persistence/base64" import { SettingsList } from "@/settings/list" diff --git a/packages/app/src/providers/models/models.tsx b/packages/app/src/providers/models/models.tsx index be97525acb4..b1bd9d34e22 100644 --- a/packages/app/src/providers/models/models.tsx +++ b/packages/app/src/providers/models/models.tsx @@ -1,7 +1,7 @@ import { type Accessor, createMemo } from "solid-js" import { DateTime } from "luxon" import { filter, firstBy, flat, groupBy, mapValues, pipe, uniqueBy, values } from "remeda" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { useProviders } from "@/providers/catalog/providers" import { useGlobal } from "@/runtime/server/runtime" diff --git a/packages/app/src/providers/models/select-dialog.tsx b/packages/app/src/providers/models/select-dialog.tsx index 35a8ec7934e..7e34aa7eaae 100644 --- a/packages/app/src/providers/models/select-dialog.tsx +++ b/packages/app/src/providers/models/select-dialog.tsx @@ -2,18 +2,18 @@ import { Popover } from "@kobalte/core/popover" import { Component, ComponentProps, createEffect, createMemo, For, JSX, Show } from "solid-js" import { createStore } from "solid-js/store" import { useLocal } from "@/providers/models/selection" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { popularProviders } from "@/providers/catalog/providers" -import { Button } from "@opencode-ai/ui/button" -import { Badge } from "@opencode-ai/ui/badge" -import { Dialog, DialogBody, DialogHeader, DialogTitle } from "@opencode-ai/ui/dialog" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { ScrollView } from "@opencode-ai/ui/scroll-view" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { Menu } from "@opencode-ai/ui/menu" -import { TextInput } from "@opencode-ai/ui/text-input" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { Button } from "@opencode/ui/button" +import { Badge } from "@opencode/ui/badge" +import { Dialog, DialogBody, DialogHeader, DialogTitle } from "@opencode/ui/dialog" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { ScrollView } from "@opencode/ui/scroll-view" +import { Tooltip } from "@opencode/ui/tooltip" +import { Menu } from "@opencode/ui/menu" +import { TextInput } from "@opencode/ui/text-input" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { ModelTooltip } from "./tooltip" import { useLanguage } from "@/runtime/i18n/language" import { decode64 } from "@/runtime/persistence/base64" diff --git a/packages/app/src/providers/models/selection.tsx b/packages/app/src/providers/models/selection.tsx index 936cddc483d..e9f8127f4f9 100644 --- a/packages/app/src/providers/models/selection.tsx +++ b/packages/app/src/providers/models/selection.tsx @@ -1,5 +1,5 @@ -import { createSimpleContext } from "@opencode-ai/ui/context" -import { base64Encode } from "@opencode-ai/util/encode" +import { createSimpleContext } from "@opencode/ui/context" +import { base64Encode } from "@opencode/util/encode" import { useParams } from "@solidjs/router" import { batch, createEffect, createMemo, startTransition } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/app/src/providers/models/unpaid.stories.tsx b/packages/app/src/providers/models/unpaid.stories.tsx index 501fcca9ec7..9c31a0d4032 100644 --- a/packages/app/src/providers/models/unpaid.stories.tsx +++ b/packages/app/src/providers/models/unpaid.stories.tsx @@ -1,6 +1,6 @@ // @ts-nocheck -import { Button } from "@opencode-ai/ui/button" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { Button } from "@opencode/ui/button" +import { useDialog } from "@opencode/ui/context/dialog" import { createSignal, onMount } from "solid-js" import { DialogSelectModelUnpaid } from "./unpaid" diff --git a/packages/app/src/providers/models/unpaid.tsx b/packages/app/src/providers/models/unpaid.tsx index e52ec835935..b17454a8931 100644 --- a/packages/app/src/providers/models/unpaid.tsx +++ b/packages/app/src/providers/models/unpaid.tsx @@ -1,10 +1,10 @@ -import { DialogBody, DialogHeader, DialogTitle, Dialog } from "@opencode-ai/ui/dialog" -import { Badge } from "@opencode-ai/ui/badge" -import { Icon } from "@opencode-ai/ui/icon" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { useTheme } from "@opencode-ai/ui/theme" +import { DialogBody, DialogHeader, DialogTitle, Dialog } from "@opencode/ui/dialog" +import { Badge } from "@opencode/ui/badge" +import { Icon } from "@opencode/ui/icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" +import { Tooltip } from "@opencode/ui/tooltip" +import { useDialog } from "@opencode/ui/context/dialog" +import { useTheme } from "@opencode/ui/theme" import { createMemo, onCleanup, onMount, type Component, For, Show } from "solid-js" import { useLocal } from "@/providers/models/selection" import { useIntegrations } from "@/providers/catalog/integrations" diff --git a/packages/app/src/runtime/i18n/language.tsx b/packages/app/src/runtime/i18n/language.tsx index 7cdb52a2f1e..b1599cdc226 100644 --- a/packages/app/src/runtime/i18n/language.tsx +++ b/packages/app/src/runtime/i18n/language.tsx @@ -2,7 +2,7 @@ import { flatten, resolveTemplate, translator, type Flatten } from "@solid-primi import { createEffect, createMemo, createResource, type JSX } from "solid-js" import { createStore } from "solid-js/store" import { Option, Schema, SchemaGetter } from "effect" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { I18nProvider, type UiI18n, @@ -10,11 +10,11 @@ import { type UiI18nPluralLookupKey, type UiI18nPluralKey, type UiPluralCategory, -} from "@opencode-ai/ui/context/i18n" +} from "@opencode/ui/context/i18n" import { Persist, persisted } from "@/runtime/persistence/storage" import { Persistence } from "@/runtime/persistence/schema" import en from "@/runtime/i18n/en" -import { dict } from "@opencode-ai/ui/i18n/en" +import { dict } from "@opencode/ui/i18n/en" import { createDesktopNativeBundle, detectDesktopNativeLocale, @@ -75,68 +75,68 @@ const merge = (app: Promise, ui: Promise) => Promise.all([app, ui]).then(([a, b]) => ({ ...base, ...flatten({ ...a.dict, ...b.dict }) }) as Dictionary) const loaders: Record, () => Promise> = { - zh: () => merge(import("@/runtime/i18n/zh"), import("@opencode-ai/ui/i18n/zh")), - zht: () => merge(import("@/runtime/i18n/zht"), import("@opencode-ai/ui/i18n/zht")), - ko: () => merge(import("@/runtime/i18n/ko"), import("@opencode-ai/ui/i18n/ko")), - de: () => merge(import("@/runtime/i18n/de"), import("@opencode-ai/ui/i18n/de")), - es: () => merge(import("@/runtime/i18n/es"), import("@opencode-ai/ui/i18n/es")), - fr: () => merge(import("@/runtime/i18n/fr"), import("@opencode-ai/ui/i18n/fr")), - da: () => merge(import("@/runtime/i18n/da"), import("@opencode-ai/ui/i18n/da")), - ja: () => merge(import("@/runtime/i18n/ja"), import("@opencode-ai/ui/i18n/ja")), - pl: () => merge(import("@/runtime/i18n/pl"), import("@opencode-ai/ui/i18n/pl")), - ru: () => merge(import("@/runtime/i18n/ru"), import("@opencode-ai/ui/i18n/ru")), - uk: () => merge(import("@/runtime/i18n/uk"), import("@opencode-ai/ui/i18n/uk")), - ar: () => merge(import("@/runtime/i18n/ar"), import("@opencode-ai/ui/i18n/ar")), - he: () => merge(import("@/runtime/i18n/he"), import("@opencode-ai/ui/i18n/he")), - no: () => merge(import("@/runtime/i18n/no"), import("@opencode-ai/ui/i18n/no")), - br: () => merge(import("@/runtime/i18n/br"), import("@opencode-ai/ui/i18n/br")), - th: () => merge(import("@/runtime/i18n/th"), import("@opencode-ai/ui/i18n/th")), - bs: () => merge(import("@/runtime/i18n/bs"), import("@opencode-ai/ui/i18n/bs")), - tr: () => merge(import("@/runtime/i18n/tr"), import("@opencode-ai/ui/i18n/tr")), - hi: () => merge(import("@/runtime/i18n/hi"), import("@opencode-ai/ui/i18n/hi")), - nl: () => merge(import("@/runtime/i18n/nl"), import("@opencode-ai/ui/i18n/nl")), - id: () => merge(import("@/runtime/i18n/id"), import("@opencode-ai/ui/i18n/id")), - vi: () => merge(import("@/runtime/i18n/vi"), import("@opencode-ai/ui/i18n/vi")), - it: () => merge(import("@/runtime/i18n/it"), import("@opencode-ai/ui/i18n/it")), - ur: () => merge(import("@/runtime/i18n/ur"), import("@opencode-ai/ui/i18n/ur")), - pa: () => merge(import("@/runtime/i18n/pa"), import("@opencode-ai/ui/i18n/pa")), - az: () => merge(import("@/runtime/i18n/az"), import("@opencode-ai/ui/i18n/az")), - fi: () => merge(import("@/runtime/i18n/fi"), import("@opencode-ai/ui/i18n/fi")), - sv: () => merge(import("@/runtime/i18n/sv"), import("@opencode-ai/ui/i18n/sv")), - am: () => merge(import("@/runtime/i18n/am"), import("@opencode-ai/ui/i18n/am")), - bg: () => merge(import("@/runtime/i18n/bg"), import("@opencode-ai/ui/i18n/bg")), - bn: () => merge(import("@/runtime/i18n/bn"), import("@opencode-ai/ui/i18n/bn")), - ca: () => merge(import("@/runtime/i18n/ca"), import("@opencode-ai/ui/i18n/ca")), - cs: () => merge(import("@/runtime/i18n/cs"), import("@opencode-ai/ui/i18n/cs")), - dv: () => merge(import("@/runtime/i18n/dv"), import("@opencode-ai/ui/i18n/dv")), - dz: () => merge(import("@/runtime/i18n/dz"), import("@opencode-ai/ui/i18n/dz")), - el: () => merge(import("@/runtime/i18n/el"), import("@opencode-ai/ui/i18n/el")), - et: () => merge(import("@/runtime/i18n/et"), import("@opencode-ai/ui/i18n/et")), - fa: () => merge(import("@/runtime/i18n/fa"), import("@opencode-ai/ui/i18n/fa")), - fo: () => merge(import("@/runtime/i18n/fo"), import("@opencode-ai/ui/i18n/fo")), - hr: () => merge(import("@/runtime/i18n/hr"), import("@opencode-ai/ui/i18n/hr")), - hu: () => merge(import("@/runtime/i18n/hu"), import("@opencode-ai/ui/i18n/hu")), - hy: () => merge(import("@/runtime/i18n/hy"), import("@opencode-ai/ui/i18n/hy")), - is: () => merge(import("@/runtime/i18n/is"), import("@opencode-ai/ui/i18n/is")), - ka: () => merge(import("@/runtime/i18n/ka"), import("@opencode-ai/ui/i18n/ka")), - km: () => merge(import("@/runtime/i18n/km"), import("@opencode-ai/ui/i18n/km")), - lo: () => merge(import("@/runtime/i18n/lo"), import("@opencode-ai/ui/i18n/lo")), - lt: () => merge(import("@/runtime/i18n/lt"), import("@opencode-ai/ui/i18n/lt")), - lv: () => merge(import("@/runtime/i18n/lv"), import("@opencode-ai/ui/i18n/lv")), - mk: () => merge(import("@/runtime/i18n/mk"), import("@opencode-ai/ui/i18n/mk")), - mn: () => merge(import("@/runtime/i18n/mn"), import("@opencode-ai/ui/i18n/mn")), - ms: () => merge(import("@/runtime/i18n/ms"), import("@opencode-ai/ui/i18n/ms")), - my: () => merge(import("@/runtime/i18n/my"), import("@opencode-ai/ui/i18n/my")), - ne: () => merge(import("@/runtime/i18n/ne"), import("@opencode-ai/ui/i18n/ne")), - ro: () => merge(import("@/runtime/i18n/ro"), import("@opencode-ai/ui/i18n/ro")), - si: () => merge(import("@/runtime/i18n/si"), import("@opencode-ai/ui/i18n/si")), - sk: () => merge(import("@/runtime/i18n/sk"), import("@opencode-ai/ui/i18n/sk")), - sl: () => merge(import("@/runtime/i18n/sl"), import("@opencode-ai/ui/i18n/sl")), - sq: () => merge(import("@/runtime/i18n/sq"), import("@opencode-ai/ui/i18n/sq")), - sr: () => merge(import("@/runtime/i18n/sr"), import("@opencode-ai/ui/i18n/sr")), - tg: () => merge(import("@/runtime/i18n/tg"), import("@opencode-ai/ui/i18n/tg")), - tk: () => merge(import("@/runtime/i18n/tk"), import("@opencode-ai/ui/i18n/tk")), - uz: () => merge(import("@/runtime/i18n/uz"), import("@opencode-ai/ui/i18n/uz")), + zh: () => merge(import("@/runtime/i18n/zh"), import("@opencode/ui/i18n/zh")), + zht: () => merge(import("@/runtime/i18n/zht"), import("@opencode/ui/i18n/zht")), + ko: () => merge(import("@/runtime/i18n/ko"), import("@opencode/ui/i18n/ko")), + de: () => merge(import("@/runtime/i18n/de"), import("@opencode/ui/i18n/de")), + es: () => merge(import("@/runtime/i18n/es"), import("@opencode/ui/i18n/es")), + fr: () => merge(import("@/runtime/i18n/fr"), import("@opencode/ui/i18n/fr")), + da: () => merge(import("@/runtime/i18n/da"), import("@opencode/ui/i18n/da")), + ja: () => merge(import("@/runtime/i18n/ja"), import("@opencode/ui/i18n/ja")), + pl: () => merge(import("@/runtime/i18n/pl"), import("@opencode/ui/i18n/pl")), + ru: () => merge(import("@/runtime/i18n/ru"), import("@opencode/ui/i18n/ru")), + uk: () => merge(import("@/runtime/i18n/uk"), import("@opencode/ui/i18n/uk")), + ar: () => merge(import("@/runtime/i18n/ar"), import("@opencode/ui/i18n/ar")), + he: () => merge(import("@/runtime/i18n/he"), import("@opencode/ui/i18n/he")), + no: () => merge(import("@/runtime/i18n/no"), import("@opencode/ui/i18n/no")), + br: () => merge(import("@/runtime/i18n/br"), import("@opencode/ui/i18n/br")), + th: () => merge(import("@/runtime/i18n/th"), import("@opencode/ui/i18n/th")), + bs: () => merge(import("@/runtime/i18n/bs"), import("@opencode/ui/i18n/bs")), + tr: () => merge(import("@/runtime/i18n/tr"), import("@opencode/ui/i18n/tr")), + hi: () => merge(import("@/runtime/i18n/hi"), import("@opencode/ui/i18n/hi")), + nl: () => merge(import("@/runtime/i18n/nl"), import("@opencode/ui/i18n/nl")), + id: () => merge(import("@/runtime/i18n/id"), import("@opencode/ui/i18n/id")), + vi: () => merge(import("@/runtime/i18n/vi"), import("@opencode/ui/i18n/vi")), + it: () => merge(import("@/runtime/i18n/it"), import("@opencode/ui/i18n/it")), + ur: () => merge(import("@/runtime/i18n/ur"), import("@opencode/ui/i18n/ur")), + pa: () => merge(import("@/runtime/i18n/pa"), import("@opencode/ui/i18n/pa")), + az: () => merge(import("@/runtime/i18n/az"), import("@opencode/ui/i18n/az")), + fi: () => merge(import("@/runtime/i18n/fi"), import("@opencode/ui/i18n/fi")), + sv: () => merge(import("@/runtime/i18n/sv"), import("@opencode/ui/i18n/sv")), + am: () => merge(import("@/runtime/i18n/am"), import("@opencode/ui/i18n/am")), + bg: () => merge(import("@/runtime/i18n/bg"), import("@opencode/ui/i18n/bg")), + bn: () => merge(import("@/runtime/i18n/bn"), import("@opencode/ui/i18n/bn")), + ca: () => merge(import("@/runtime/i18n/ca"), import("@opencode/ui/i18n/ca")), + cs: () => merge(import("@/runtime/i18n/cs"), import("@opencode/ui/i18n/cs")), + dv: () => merge(import("@/runtime/i18n/dv"), import("@opencode/ui/i18n/dv")), + dz: () => merge(import("@/runtime/i18n/dz"), import("@opencode/ui/i18n/dz")), + el: () => merge(import("@/runtime/i18n/el"), import("@opencode/ui/i18n/el")), + et: () => merge(import("@/runtime/i18n/et"), import("@opencode/ui/i18n/et")), + fa: () => merge(import("@/runtime/i18n/fa"), import("@opencode/ui/i18n/fa")), + fo: () => merge(import("@/runtime/i18n/fo"), import("@opencode/ui/i18n/fo")), + hr: () => merge(import("@/runtime/i18n/hr"), import("@opencode/ui/i18n/hr")), + hu: () => merge(import("@/runtime/i18n/hu"), import("@opencode/ui/i18n/hu")), + hy: () => merge(import("@/runtime/i18n/hy"), import("@opencode/ui/i18n/hy")), + is: () => merge(import("@/runtime/i18n/is"), import("@opencode/ui/i18n/is")), + ka: () => merge(import("@/runtime/i18n/ka"), import("@opencode/ui/i18n/ka")), + km: () => merge(import("@/runtime/i18n/km"), import("@opencode/ui/i18n/km")), + lo: () => merge(import("@/runtime/i18n/lo"), import("@opencode/ui/i18n/lo")), + lt: () => merge(import("@/runtime/i18n/lt"), import("@opencode/ui/i18n/lt")), + lv: () => merge(import("@/runtime/i18n/lv"), import("@opencode/ui/i18n/lv")), + mk: () => merge(import("@/runtime/i18n/mk"), import("@opencode/ui/i18n/mk")), + mn: () => merge(import("@/runtime/i18n/mn"), import("@opencode/ui/i18n/mn")), + ms: () => merge(import("@/runtime/i18n/ms"), import("@opencode/ui/i18n/ms")), + my: () => merge(import("@/runtime/i18n/my"), import("@opencode/ui/i18n/my")), + ne: () => merge(import("@/runtime/i18n/ne"), import("@opencode/ui/i18n/ne")), + ro: () => merge(import("@/runtime/i18n/ro"), import("@opencode/ui/i18n/ro")), + si: () => merge(import("@/runtime/i18n/si"), import("@opencode/ui/i18n/si")), + sk: () => merge(import("@/runtime/i18n/sk"), import("@opencode/ui/i18n/sk")), + sl: () => merge(import("@/runtime/i18n/sl"), import("@opencode/ui/i18n/sl")), + sq: () => merge(import("@/runtime/i18n/sq"), import("@opencode/ui/i18n/sq")), + sr: () => merge(import("@/runtime/i18n/sr"), import("@opencode/ui/i18n/sr")), + tg: () => merge(import("@/runtime/i18n/tg"), import("@opencode/ui/i18n/tg")), + tk: () => merge(import("@/runtime/i18n/tk"), import("@opencode/ui/i18n/tk")), + uz: () => merge(import("@/runtime/i18n/uz"), import("@opencode/ui/i18n/uz")), } function loadDict(locale: Locale) { diff --git a/packages/app/src/runtime/persistence/base64.ts b/packages/app/src/runtime/persistence/base64.ts index c1f9d88c6e9..8aa7b4e18a4 100644 --- a/packages/app/src/runtime/persistence/base64.ts +++ b/packages/app/src/runtime/persistence/base64.ts @@ -1,4 +1,4 @@ -import { base64Decode } from "@opencode-ai/util/encode" +import { base64Decode } from "@opencode/util/encode" export function decode64(value: string | undefined) { if (value === undefined) return diff --git a/packages/app/src/runtime/persistence/storage.ts b/packages/app/src/runtime/persistence/storage.ts index e23489426b5..6984466788e 100644 --- a/packages/app/src/runtime/persistence/storage.ts +++ b/packages/app/src/runtime/persistence/storage.ts @@ -1,6 +1,6 @@ import { Platform, usePlatform } from "@/runtime/platform/platform" import { messageSync, type AsyncStorage, type SyncStorage } from "@solid-primitives/storage" -import { checksum } from "@opencode-ai/util/encode" +import { checksum } from "@opencode/util/encode" import { createResource, onCleanup, type Accessor } from "solid-js" import { createStore, type SetStoreFunction, type Store } from "solid-js/store" import { Option, Schema } from "effect" diff --git a/packages/app/src/runtime/platform/platform.tsx b/packages/app/src/runtime/platform/platform.tsx index b8592aa2b25..8941741e2b3 100644 --- a/packages/app/src/runtime/platform/platform.tsx +++ b/packages/app/src/runtime/platform/platform.tsx @@ -1,4 +1,4 @@ -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import type { AsyncStorage, SyncStorage } from "@solid-primitives/storage" import type { Accessor } from "solid-js" import type { DesktopMenuAction } from "@/shell/commands/desktop-menu" diff --git a/packages/app/src/runtime/server/api.ts b/packages/app/src/runtime/server/api.ts index d3f5cb8632f..c3f7813c447 100644 --- a/packages/app/src/runtime/server/api.ts +++ b/packages/app/src/runtime/server/api.ts @@ -1,4 +1,4 @@ -import { OpenCode, type OpenCodeClient } from "@opencode-ai/client/promise" +import { OpenCode, type OpenCodeClient } from "@opencode/client/promise" import type { ServerConnection } from "@/runtime/server/registry" import { decode64 } from "@/runtime/persistence/base64" diff --git a/packages/app/src/runtime/server/client.test.ts b/packages/app/src/runtime/server/client.test.ts index 79a5feee2e7..7b2dda30d11 100644 --- a/packages/app/src/runtime/server/client.test.ts +++ b/packages/app/src/runtime/server/client.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { OpenCodeEvent } from "@opencode-ai/client/promise" +import type { OpenCodeEvent } from "@opencode/client/promise" import { createRoot } from "solid-js" import { createOpenCodeEventSource, createServerTransport } from "./client" diff --git a/packages/app/src/runtime/server/client.tsx b/packages/app/src/runtime/server/client.tsx index e45bc144c81..21f7b09bc1b 100644 --- a/packages/app/src/runtime/server/client.tsx +++ b/packages/app/src/runtime/server/client.tsx @@ -1,5 +1,5 @@ -import type { OpenCodeEvent } from "@opencode-ai/client/promise" -import { createClientConnection, createPtyClient, type ClientConnectionStatus } from "@opencode-ai/client/solid" +import type { OpenCodeEvent } from "@opencode/client/promise" +import { createClientConnection, createPtyClient, type ClientConnectionStatus } from "@opencode/client/solid" import { createGlobalEmitter } from "@solid-primitives/event-bus" import { type Accessor, onCleanup } from "solid-js" import { createApiForServer, type ServerApi } from "@/runtime/server/api" diff --git a/packages/app/src/runtime/server/current.tsx b/packages/app/src/runtime/server/current.tsx index 7246d40f99c..db01de31bbc 100644 --- a/packages/app/src/runtime/server/current.tsx +++ b/packages/app/src/runtime/server/current.tsx @@ -1,4 +1,4 @@ -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { ServerConnection } from "./registry" import { useGlobal } from "./runtime" diff --git a/packages/app/src/runtime/server/data.test.ts b/packages/app/src/runtime/server/data.test.ts index c6ee0224073..e100fa24f8e 100644 --- a/packages/app/src/runtime/server/data.test.ts +++ b/packages/app/src/runtime/server/data.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import { createSessionMutations } from "./data" const session = { id: "ses_test" } as SessionInfo diff --git a/packages/app/src/runtime/server/data.ts b/packages/app/src/runtime/server/data.ts index 5be4b7ba191..489d9536083 100644 --- a/packages/app/src/runtime/server/data.ts +++ b/packages/app/src/runtime/server/data.ts @@ -1,5 +1,5 @@ -import type { Data } from "@opencode-ai/client/solid" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { Data } from "@opencode/client/solid" +import type { SessionInfo } from "@opencode/client/promise" import { onCleanup } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/app/src/runtime/server/errors.test.ts b/packages/app/src/runtime/server/errors.test.ts index 2634bb156b8..b83fa93f2fd 100644 --- a/packages/app/src/runtime/server/errors.test.ts +++ b/packages/app/src/runtime/server/errors.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionNotFoundError } from "@opencode-ai/client/promise" +import type { SessionNotFoundError } from "@opencode/client/promise" import type { ConfigInvalidError, ProviderModelNotFoundError } from "./errors" import { formatServerError, isSessionNotFoundError, parseReadableConfigInvalidError } from "./errors" diff --git a/packages/app/src/runtime/server/global-sync/bootstrap.test.ts b/packages/app/src/runtime/server/global-sync/bootstrap.test.ts index 27229bbef2f..1748053e604 100644 --- a/packages/app/src/runtime/server/global-sync/bootstrap.test.ts +++ b/packages/app/src/runtime/server/global-sync/bootstrap.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { QueryClient } from "@tanstack/solid-query" -import { OpenCode } from "@opencode-ai/client/promise" +import { OpenCode } from "@opencode/client/promise" import { createStore } from "solid-js/store" import { bootstrapGlobal, loadPathQuery, loadProjectsQuery } from "./bootstrap" import { ServerScope } from "@/runtime/server/scope" diff --git a/packages/app/src/runtime/server/global-sync/bootstrap.ts b/packages/app/src/runtime/server/global-sync/bootstrap.ts index ebeac493737..902d1e69956 100644 --- a/packages/app/src/runtime/server/global-sync/bootstrap.ts +++ b/packages/app/src/runtime/server/global-sync/bootstrap.ts @@ -5,10 +5,10 @@ import type { ProjectCurrentInput, ProjectCurrentOutput, ProjectListOutput, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { showToast } from "@/shell/notifications/toast" -import { getFilename } from "@opencode-ai/util/path" -import { retry } from "@opencode-ai/util/retry" +import { getFilename } from "@opencode/util/path" +import { retry } from "@opencode/util/retry" import { reconcile, type SetStoreFunction, type Store } from "solid-js/store" import type { State } from "./types" import { cmp, normalizeProjectInfo } from "./utils" diff --git a/packages/app/src/runtime/server/global-sync/child-store.test.ts b/packages/app/src/runtime/server/global-sync/child-store.test.ts index 314b3dd00ff..e5ca2c67f20 100644 --- a/packages/app/src/runtime/server/global-sync/child-store.test.ts +++ b/packages/app/src/runtime/server/global-sync/child-store.test.ts @@ -4,7 +4,7 @@ import { createStore } from "solid-js/store" import type { State } from "./types" import type { QueryOptionsApi } from "../sync" import { ServerScope } from "@/runtime/server/scope" -import type { Data } from "@opencode-ai/client/solid" +import type { Data } from "@opencode/client/solid" import type { persisted } from "@/runtime/persistence/storage" let createChildStoreManager: typeof import("./child-store").createChildStoreManager diff --git a/packages/app/src/runtime/server/global-sync/child-store.ts b/packages/app/src/runtime/server/global-sync/child-store.ts index a0db4c71d4f..82cbf7f9bec 100644 --- a/packages/app/src/runtime/server/global-sync/child-store.ts +++ b/packages/app/src/runtime/server/global-sync/child-store.ts @@ -18,7 +18,7 @@ import { useQuery } from "@tanstack/solid-query" import { QueryOptionsApi } from "../sync" import { directoryKey, type DirectoryKey } from "./utils" import type { ServerScope } from "@/runtime/server/scope" -import type { Data } from "@opencode-ai/client/solid" +import type { Data } from "@opencode/client/solid" import { normalizeAgentList, normalizeProviderList } from "./utils" import { IconState, ProjectState, VcsState } from "../persistence" diff --git a/packages/app/src/runtime/server/global-sync/mcp.ts b/packages/app/src/runtime/server/global-sync/mcp.ts index c245f7ecdb1..c1805ec73b5 100644 --- a/packages/app/src/runtime/server/global-sync/mcp.ts +++ b/packages/app/src/runtime/server/global-sync/mcp.ts @@ -1,4 +1,4 @@ -import type { McpServer } from "@opencode-ai/client/promise" +import type { McpServer } from "@opencode/client/promise" export async function toggleMcp(input: { status: McpServer["status"]["status"] diff --git a/packages/app/src/runtime/server/global-sync/types.ts b/packages/app/src/runtime/server/global-sync/types.ts index 705155ac46c..9813fcdbdeb 100644 --- a/packages/app/src/runtime/server/global-sync/types.ts +++ b/packages/app/src/runtime/server/global-sync/types.ts @@ -1,6 +1,6 @@ import type { Agent, Config, LspStatus, Path, ProviderListResponse, VcsInfo } from "@/runtime/server/types" -import type { ReferenceInfo } from "@opencode-ai/client/promise" -import type { CommandInfo, McpResource, McpServer } from "@opencode-ai/client/promise" +import type { ReferenceInfo } from "@opencode/client/promise" +import type { CommandInfo, McpResource, McpServer } from "@opencode/client/promise" import type { Accessor } from "solid-js" import type { SetStoreFunction, Store } from "solid-js/store" import { IconState, ProjectState, VcsState } from "../persistence" diff --git a/packages/app/src/runtime/server/global-sync/utils.test.ts b/packages/app/src/runtime/server/global-sync/utils.test.ts index 1c03224a2b8..5e39ccb8cc6 100644 --- a/packages/app/src/runtime/server/global-sync/utils.test.ts +++ b/packages/app/src/runtime/server/global-sync/utils.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { AgentListOutput, ModelListOutput, Project, ProviderListOutput } from "@opencode-ai/client/promise" +import type { AgentListOutput, ModelListOutput, Project, ProviderListOutput } from "@opencode/client/promise" import { directoryKey, normalizeAgentList, diff --git a/packages/app/src/runtime/server/global-sync/utils.ts b/packages/app/src/runtime/server/global-sync/utils.ts index 2f68160fae7..00dbe61f77b 100644 --- a/packages/app/src/runtime/server/global-sync/utils.ts +++ b/packages/app/src/runtime/server/global-sync/utils.ts @@ -1,6 +1,6 @@ -import type { AgentListOutput, ModelListOutput, ProviderListOutput } from "@opencode-ai/client/promise" +import type { AgentListOutput, ModelListOutput, ProviderListOutput } from "@opencode/client/promise" import type { Agent, Project, Provider, ProviderListResponse } from "@/runtime/server/types" -import type { Project as CurrentProject } from "@opencode-ai/client/promise" +import type { Project as CurrentProject } from "@opencode/client/promise" import { unwrap } from "solid-js/store" export { pathKey as directoryKey, type PathKey as DirectoryKey } from "@/workspaces/path-key" diff --git a/packages/app/src/runtime/server/health.ts b/packages/app/src/runtime/server/health.ts index 51e5e334702..9fe084082ec 100644 --- a/packages/app/src/runtime/server/health.ts +++ b/packages/app/src/runtime/server/health.ts @@ -1,7 +1,7 @@ import { usePlatform } from "@/runtime/platform/platform" import { ServerConnection } from "@/runtime/server/registry" import { authTokenFromCredentials } from "./api" -import { ClientError, OpenCode } from "@opencode-ai/client" +import { ClientError, OpenCode } from "@opencode/client" import { Accessor, createEffect, onCleanup } from "solid-js" import { createStore, reconcile } from "solid-js/store" diff --git a/packages/app/src/runtime/server/image.ts b/packages/app/src/runtime/server/image.ts index c3046b24b4e..0f3aa0f9da3 100644 --- a/packages/app/src/runtime/server/image.ts +++ b/packages/app/src/runtime/server/image.ts @@ -1,5 +1,5 @@ -import { getDirectory, getFilename } from "@opencode-ai/util/path" -import type { OpenCodeClient } from "@opencode-ai/client/promise" +import { getDirectory, getFilename } from "@opencode/util/path" +import type { OpenCodeClient } from "@opencode/client/promise" const types = new Map([ ["png", "image/png"], diff --git a/packages/app/src/runtime/server/registry.tsx b/packages/app/src/runtime/server/registry.tsx index eb74728361e..d1e429b787b 100644 --- a/packages/app/src/runtime/server/registry.tsx +++ b/packages/app/src/runtime/server/registry.tsx @@ -1,4 +1,4 @@ -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { batch, createMemo } from "solid-js" import { type SetStoreFunction, type Store } from "solid-js/store" import { Persist, persisted } from "@/runtime/persistence/storage" diff --git a/packages/app/src/runtime/server/runtime.tsx b/packages/app/src/runtime/server/runtime.tsx index 6739e8aff91..50015e1a93a 100644 --- a/packages/app/src/runtime/server/runtime.tsx +++ b/packages/app/src/runtime/server/runtime.tsx @@ -1,4 +1,4 @@ -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { Accessor, createEffect, createMemo, createResource, createRoot, getOwner } from "solid-js" import { createStore } from "solid-js/store" import { createServerProjects, RECENTLY_CLOSED_DISPLAY_LIMIT, ServerConnection, useServers } from "./registry" @@ -6,7 +6,7 @@ import { pathKey } from "@/workspaces/path-key" import { useServerHealth } from "@/runtime/server/health" import { createServerSdkContext } from "./client" import { createServerSyncContext } from "./sync" -import { createData } from "@opencode-ai/client/solid" +import { createData } from "@opencode/client/solid" import type { ServerScope } from "@/runtime/server/scope" import { createPermissionAutoApprover } from "@/session/requests/auto-approve" import { createServerNotificationState } from "@/shell/notifications/notification" diff --git a/packages/app/src/runtime/server/sync.tsx b/packages/app/src/runtime/server/sync.tsx index eebc48dc2ee..679eba5bc97 100644 --- a/packages/app/src/runtime/server/sync.tsx +++ b/packages/app/src/runtime/server/sync.tsx @@ -1,6 +1,6 @@ import type { Config, Path, Project, ProviderAuthResponse } from "@/runtime/server/types" import { showToast } from "@/shell/notifications/toast" -import { getFilename } from "@opencode-ai/util/path" +import { getFilename } from "@opencode/util/path" import { getOwner, onCleanup, untrack } from "solid-js" import { createStore } from "solid-js/store" import { useLanguage } from "@/runtime/i18n/language" @@ -19,7 +19,7 @@ import type { ServerApi } from "@/runtime/server/api" import { toggleMcp } from "./global-sync/mcp" import { createConnectionSync, reconnectOrder } from "./server-sync/connection" import { usePlatform } from "@/runtime/platform/platform" -import type { Data } from "@opencode-ai/client/solid" +import type { Data } from "@opencode/client/solid" import { createWorktreeInventory, withWorktreeInventory } from "@/workspaces/inventory" import { sameDirectory } from "@/workspaces/paths" diff --git a/packages/app/src/runtime/server/types.ts b/packages/app/src/runtime/server/types.ts index b86f311f4ae..fb608c2be50 100644 --- a/packages/app/src/runtime/server/types.ts +++ b/packages/app/src/runtime/server/types.ts @@ -1,4 +1,4 @@ -import type { ProjectListOutput, WorktreeDirectory } from "@opencode-ai/client/promise" +import type { ProjectListOutput, WorktreeDirectory } from "@opencode/client/promise" export type Project = Omit & { worktree: string diff --git a/packages/app/src/servers/connect/dialog.tsx b/packages/app/src/servers/connect/dialog.tsx index 14354efbbad..68f763404fd 100644 --- a/packages/app/src/servers/connect/dialog.tsx +++ b/packages/app/src/servers/connect/dialog.tsx @@ -1,8 +1,8 @@ -import { Button } from "@opencode-ai/ui/button" -import { Dialog, DialogBody, DialogFooter, DialogHeader, DialogTitle } from "@opencode-ai/ui/dialog" -import { Divider } from "@opencode-ai/ui/divider" -import { TextInput } from "@opencode-ai/ui/text-input" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { Button } from "@opencode/ui/button" +import { Dialog, DialogBody, DialogFooter, DialogHeader, DialogTitle } from "@opencode/ui/dialog" +import { Divider } from "@opencode/ui/divider" +import { TextInput } from "@opencode/ui/text-input" +import { useDialog } from "@opencode/ui/context/dialog" import { useMutation } from "@tanstack/solid-query" import { type Component, Show, createEffect, createMemo, createSignal, onCleanup, onMount } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/app/src/servers/registry/row-menu.tsx b/packages/app/src/servers/registry/row-menu.tsx index b6544bece5a..d8e7b6755c0 100644 --- a/packages/app/src/servers/registry/row-menu.tsx +++ b/packages/app/src/servers/registry/row-menu.tsx @@ -1,6 +1,6 @@ -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Menu } from "@opencode-ai/ui/menu" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Menu } from "@opencode/ui/menu" import { type Component, Show } from "solid-js" import type { ServerActionsController } from "@/servers/registry/controller" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/servers/registry/row.tsx b/packages/app/src/servers/registry/row.tsx index 280f2192dde..6a4e398bde8 100644 --- a/packages/app/src/servers/registry/row.tsx +++ b/packages/app/src/servers/registry/row.tsx @@ -1,5 +1,5 @@ -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { Icon } from "@opencode-ai/ui/icon" +import { Tooltip } from "@opencode/ui/tooltip" +import { Icon } from "@opencode/ui/icon" import { createResizeObserver } from "@solid-primitives/resize-observer" import { children, diff --git a/packages/app/src/servers/wsl/context.tsx b/packages/app/src/servers/wsl/context.tsx index 614084b8a08..4ecf0c0eff8 100644 --- a/packages/app/src/servers/wsl/context.tsx +++ b/packages/app/src/servers/wsl/context.tsx @@ -1,4 +1,4 @@ -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { queryOptions, useQuery, useQueryClient } from "@tanstack/solid-query" import { createEffect, onCleanup } from "solid-js" import type { WslServersState } from "./types" diff --git a/packages/app/src/servers/wsl/dialog.tsx b/packages/app/src/servers/wsl/dialog.tsx index cbda99b165e..95dbc13b984 100644 --- a/packages/app/src/servers/wsl/dialog.tsx +++ b/packages/app/src/servers/wsl/dialog.tsx @@ -1,10 +1,10 @@ -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Button } from "@opencode-ai/ui/button" -import { Dialog, DialogBody, DialogFooter, DialogHeader, DialogTitle } from "@opencode-ai/ui/dialog" -import { Divider } from "@opencode-ai/ui/divider" -import { Loader } from "@opencode-ai/ui/loader" -import { RadioGroup, RadioItem } from "@opencode-ai/ui/radio" -import { TextInput } from "@opencode-ai/ui/text-input" +import { useDialog } from "@opencode/ui/context/dialog" +import { Button } from "@opencode/ui/button" +import { Dialog, DialogBody, DialogFooter, DialogHeader, DialogTitle } from "@opencode/ui/dialog" +import { Divider } from "@opencode/ui/divider" +import { Loader } from "@opencode/ui/loader" +import { RadioGroup, RadioItem } from "@opencode/ui/radio" +import { TextInput } from "@opencode/ui/text-input" import { createMemo, For, Show } from "solid-js" import { createStore } from "solid-js/store" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/servers/wsl/settings.tsx b/packages/app/src/servers/wsl/settings.tsx index e1ebf7bc3ad..3324b723366 100644 --- a/packages/app/src/servers/wsl/settings.tsx +++ b/packages/app/src/servers/wsl/settings.tsx @@ -1,9 +1,9 @@ -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Badge } from "@opencode-ai/ui/badge" -import { Button } from "@opencode-ai/ui/button" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Menu } from "@opencode-ai/ui/menu" +import { useDialog } from "@opencode/ui/context/dialog" +import { Badge } from "@opencode/ui/badge" +import { Button } from "@opencode/ui/button" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Menu } from "@opencode/ui/menu" import { useMutation } from "@tanstack/solid-query" import fuzzysort from "fuzzysort" import { type Accessor, For, Show, createMemo } from "solid-js" diff --git a/packages/app/src/session/browser/attachments.ts b/packages/app/src/session/browser/attachments.ts index feb96e80d14..cf120f7f75f 100644 --- a/packages/app/src/session/browser/attachments.ts +++ b/packages/app/src/session/browser/attachments.ts @@ -1,6 +1,6 @@ import { batch, createEffect, createMemo, getOwner, onCleanup, runWithOwner } from "solid-js" import { createStore, reconcile } from "solid-js/store" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import type { Browser } from "@opencode/plugin-browser/rpc" import { useLanguage } from "@/runtime/i18n/language" import type { BrowserPaneCommand, BrowserPaneRegistration, BrowserPaneState } from "@/runtime/platform/browser-pane" diff --git a/packages/app/src/session/browser/pane.tsx b/packages/app/src/session/browser/pane.tsx index d854a791de1..187d1feae47 100644 --- a/packages/app/src/session/browser/pane.tsx +++ b/packages/app/src/session/browser/pane.tsx @@ -1,7 +1,7 @@ -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Loader } from "@opencode-ai/ui/loader" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Loader } from "@opencode/ui/loader" +import { useDialog } from "@opencode/ui/context/dialog" import { createEventListener } from "@solid-primitives/event-listener" import { createResizeObserver } from "@solid-primitives/resize-observer" import { createEffect, For, on, onCleanup, Show } from "solid-js" diff --git a/packages/app/src/session/commands/export.test.ts b/packages/app/src/session/commands/export.test.ts index adc5ae8edf1..4d5b86c865e 100644 --- a/packages/app/src/session/commands/export.test.ts +++ b/packages/app/src/session/commands/export.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionInfo, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionInfo, SessionMessageInfo } from "@opencode/client/promise" import type { ServerApi } from "@/runtime/server/api" import type { Platform } from "@/runtime/platform/platform" import { fetchSessionExport, saveSessionExport, sessionExportFilename } from "./export" diff --git a/packages/app/src/session/commands/export.ts b/packages/app/src/session/commands/export.ts index 8fb1b10a81e..f6eb0e1b57a 100644 --- a/packages/app/src/session/commands/export.ts +++ b/packages/app/src/session/commands/export.ts @@ -1,4 +1,4 @@ -import type { SessionInfo, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionInfo, SessionMessageInfo } from "@opencode/client/promise" import type { ServerApi } from "@/runtime/server/api" import type { Platform } from "@/runtime/platform/platform" diff --git a/packages/app/src/session/commands/fork-dialog.tsx b/packages/app/src/session/commands/fork-dialog.tsx index ab4b320c101..a753ac6071c 100644 --- a/packages/app/src/session/commands/fork-dialog.tsx +++ b/packages/app/src/session/commands/fork-dialog.tsx @@ -2,13 +2,13 @@ import { Component, createMemo } from "solid-js" import { useNavigate, useParams } from "@solidjs/router" import { useData } from "@/runtime/server/current" import { useComposerState } from "@/composer/persistence" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Dialog, DialogBody, DialogHeader, DialogTitle } from "@opencode-ai/ui/dialog" -import { List } from "@opencode-ai/ui/list" +import { useDialog } from "@opencode/ui/context/dialog" +import { Dialog, DialogBody, DialogHeader, DialogTitle } from "@opencode/ui/dialog" +import { List } from "@opencode/ui/list" import { showToast } from "@/shell/notifications/toast" import { useLanguage } from "@/runtime/i18n/language" import { useServerSDK } from "@/runtime/server/client" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { extractPromptComments, extractPromptFromMessage } from "@/composer/prompt" import { useWorkspaceLocation } from "@/workspaces/location" import { useServer } from "@/runtime/server/current" diff --git a/packages/app/src/session/commands/use-session-commands.tsx b/packages/app/src/session/commands/use-session-commands.tsx index d036aad9d54..2c67c986c73 100644 --- a/packages/app/src/session/commands/use-session-commands.tsx +++ b/packages/app/src/session/commands/use-session-commands.tsx @@ -1,6 +1,6 @@ import { useCommand, type CommandOption } from "@/shell/commands/command" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { previewSelectedLines } from "@opencode-ai/session-ui/pierre/selection-bridge" +import { useDialog } from "@opencode/ui/context/dialog" +import { previewSelectedLines } from "@opencode/session-ui/pierre/selection-bridge" import { useFile, selectionFromLines, type FileSelection, type SelectedLineRange } from "@/workspaces/files/model" import { useLanguage } from "@/runtime/i18n/language" import { useLayout } from "@/shell/state/layout" diff --git a/packages/app/src/session/composer/queue-panel.tsx b/packages/app/src/session/composer/queue-panel.tsx index f6e92bb6bc4..cfc4362ff62 100644 --- a/packages/app/src/session/composer/queue-panel.tsx +++ b/packages/app/src/session/composer/queue-panel.tsx @@ -5,10 +5,10 @@ import { AutoScroller, Feedback, PointerActivationConstraints } from "@dnd-kit/d import { RestrictToVerticalAxis } from "@dnd-kit/abstract/modifiers" import { RestrictToElement } from "@dnd-kit/dom/modifiers" import { arrayMove } from "@dnd-kit/helpers" -import { Button } from "@opencode-ai/ui/button" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { Button } from "@opencode/ui/button" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Tooltip } from "@opencode/ui/tooltip" import { useLanguage } from "@/runtime/i18n/language" import type { SessionQueueView } from "./queue" diff --git a/packages/app/src/session/composer/queue.test.ts b/packages/app/src/session/composer/queue.test.ts index adbd194fe12..c28d386a532 100644 --- a/packages/app/src/session/composer/queue.test.ts +++ b/packages/app/src/session/composer/queue.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionInboxInfo } from "@opencode-ai/client/promise" +import type { SessionInboxInfo } from "@opencode/client/promise" import { queuedPromptRows } from "./queue" const queued = [ diff --git a/packages/app/src/session/composer/queue.ts b/packages/app/src/session/composer/queue.ts index ed81cbac8ed..07a01036d88 100644 --- a/packages/app/src/session/composer/queue.ts +++ b/packages/app/src/session/composer/queue.ts @@ -1,8 +1,8 @@ import { createEffect, createMemo, onCleanup, type Accessor } from "solid-js" import { createStore } from "solid-js/store" import { useMutation } from "@tanstack/solid-query" -import type { SessionInboxInfo } from "@opencode-ai/client/promise" -import { SessionMessage } from "@opencode-ai/schema/session-message" +import type { SessionInboxInfo } from "@opencode/client/promise" +import { SessionMessage } from "@opencode/schema/session-message" import type { ComposerDelivery } from "@/composer/adapter" import type { ComposerStateTarget } from "@/composer/submission-state" import type { ImageAttachmentPart, Prompt } from "@/composer/state" diff --git a/packages/app/src/session/composer/region.tsx b/packages/app/src/session/composer/region.tsx index eb1b4591615..fee03f7dcf6 100644 --- a/packages/app/src/session/composer/region.tsx +++ b/packages/app/src/session/composer/region.tsx @@ -1,7 +1,7 @@ -import type { SessionUserActions } from "@opencode-ai/session-ui/message" -import { getFilename } from "@opencode-ai/util/path" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { isScrollKeyTarget, scrollKey, scrollKeyOwner } from "@opencode-ai/ui/scroll-view" +import type { SessionUserActions } from "@opencode/session-ui/message" +import { getFilename } from "@opencode/util/path" +import { useDialog } from "@opencode/ui/context/dialog" +import { isScrollKeyTarget, scrollKey, scrollKeyOwner } from "@opencode/ui/scroll-view" import { makeEventListener } from "@solid-primitives/event-listener" import { useNavigate } from "@solidjs/router" import { createEffect, createMemo, on, onMount, type Accessor } from "solid-js" diff --git a/packages/app/src/session/files/file-tabs.tsx b/packages/app/src/session/files/file-tabs.tsx index beb3f2ba484..6ecd3a261ce 100644 --- a/packages/app/src/session/files/file-tabs.tsx +++ b/packages/app/src/session/files/file-tabs.tsx @@ -2,15 +2,15 @@ import { createEffect, createMemo, createSignal, Match, on, onCleanup, Switch } import { createStore } from "solid-js/store" import { Dynamic } from "solid-js/web" import { makeEventListener } from "@solid-primitives/event-listener" -import type { FileSearchHandle } from "@opencode-ai/session-ui/file" -import { useFileComponent } from "@opencode-ai/ui/context/file" -import { cloneSelectedLineRange, previewSelectedLines } from "@opencode-ai/session-ui/pierre/selection-bridge" -import { createLineCommentControllerV2 } from "@opencode-ai/session-ui/v2/line-comment-annotations-v2" -import { sampledChecksum } from "@opencode-ai/util/encode" -import { LineCommentOverflowIcon } from "@opencode-ai/ui/line-comment" -import { Menu } from "@opencode-ai/ui/menu" -import { Tabs } from "@opencode-ai/ui/tabs" -import { ScrollView } from "@opencode-ai/ui/scroll-view" +import type { FileSearchHandle } from "@opencode/session-ui/file" +import { useFileComponent } from "@opencode/ui/context/file" +import { cloneSelectedLineRange, previewSelectedLines } from "@opencode/session-ui/pierre/selection-bridge" +import { createLineCommentControllerV2 } from "@opencode/session-ui/v2/line-comment-annotations-v2" +import { sampledChecksum } from "@opencode/util/encode" +import { LineCommentOverflowIcon } from "@opencode/ui/line-comment" +import { Menu } from "@opencode/ui/menu" +import { Tabs } from "@opencode/ui/tabs" +import { ScrollView } from "@opencode/ui/scroll-view" import { showToast } from "@/shell/notifications/toast" import { selectionFromLines, useFile, type FileSelection, type SelectedLineRange } from "@/workspaces/files/model" import { useComments } from "@/composer/comments" diff --git a/packages/app/src/session/files/file-tree-v2.tsx b/packages/app/src/session/files/file-tree-v2.tsx index 958b01d0a7b..dde7c27659e 100644 --- a/packages/app/src/session/files/file-tree-v2.tsx +++ b/packages/app/src/session/files/file-tree-v2.tsx @@ -1,6 +1,6 @@ import { useFile } from "@/workspaces/files/model" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import "@opencode-ai/ui/file-tree.css" +import { FileIcon } from "@opencode/ui/file-icon" +import "@opencode/ui/file-tree.css" import { createEffect, createMemo, @@ -13,7 +13,7 @@ import { } from "solid-js" import { Dynamic } from "solid-js/web" import type { FileNode } from "@/runtime/server/types" -import { Icon } from "@opencode-ai/ui/icon" +import { Icon } from "@opencode/ui/icon" import { pathToFileUrl, withFileDragImage, type Kind } from "@/session/files/file-tree" import { createVirtualizer, defaultRangeExtractor } from "@tanstack/solid-virtual" import { diff --git a/packages/app/src/session/files/file-tree.test.ts b/packages/app/src/session/files/file-tree.test.ts index f0b692e111f..8edd007113c 100644 --- a/packages/app/src/session/files/file-tree.test.ts +++ b/packages/app/src/session/files/file-tree.test.ts @@ -22,15 +22,15 @@ beforeAll(async () => { }, }), })) - mock.module("@opencode-ai/ui/collapsible", () => ({ + mock.module("@opencode/ui/collapsible", () => ({ Collapsible: { Trigger: (props: { children?: unknown }) => props.children, Content: (props: { children?: unknown }) => props.children, }, })) - mock.module("@opencode-ai/ui/file-icon", () => ({ FileIcon: () => null })) - mock.module("@opencode-ai/ui/icon", () => ({ Icon: () => null })) - mock.module("@opencode-ai/ui/tooltip", () => ({ Tooltip: (props: { children?: unknown }) => props.children })) + mock.module("@opencode/ui/file-icon", () => ({ FileIcon: () => null })) + mock.module("@opencode/ui/icon", () => ({ Icon: () => null })) + mock.module("@opencode/ui/tooltip", () => ({ Tooltip: (props: { children?: unknown }) => props.children })) const mod = await import("./file-tree") shouldListRoot = mod.shouldListRoot shouldListExpanded = mod.shouldListExpanded diff --git a/packages/app/src/session/files/file-tree.tsx b/packages/app/src/session/files/file-tree.tsx index d9ed02d690d..e8f85ee1d7e 100644 --- a/packages/app/src/session/files/file-tree.tsx +++ b/packages/app/src/session/files/file-tree.tsx @@ -1,8 +1,8 @@ import { useFile } from "@/workspaces/files/model" import { encodeFilePath } from "@/workspaces/files/path" -import { Collapsible } from "@opencode-ai/ui/collapsible" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { Icon } from "@opencode-ai/ui/icon" +import { Collapsible } from "@opencode/ui/collapsible" +import { FileIcon } from "@opencode/ui/file-icon" +import { Icon } from "@opencode/ui/icon" import { createEffect, createMemo, diff --git a/packages/app/src/session/files/list.tsx b/packages/app/src/session/files/list.tsx index aa73cd5ea1b..3d070116015 100644 --- a/packages/app/src/session/files/list.tsx +++ b/packages/app/src/session/files/list.tsx @@ -1,6 +1,6 @@ -import { FileIcon } from "@opencode-ai/ui/file-icon" -import "@opencode-ai/ui/file-tree.css" -import { getDirectory, getFilename } from "@opencode-ai/util/path" +import { FileIcon } from "@opencode/ui/file-icon" +import "@opencode/ui/file-tree.css" +import { getDirectory, getFilename } from "@opencode/util/path" import { createEffect, createMemo, createSignal, For, Show } from "solid-js" import { kindChange, kindLabel, syncFileTreeV2Width, type Kind } from "@/session/files/file-tree-v2" import { normalizePath } from "@/session/review/review-diff-kinds" diff --git a/packages/app/src/session/files/open-in-app-button.tsx b/packages/app/src/session/files/open-in-app-button.tsx index d340e18a0e2..b4501ea724b 100644 --- a/packages/app/src/session/files/open-in-app-button.tsx +++ b/packages/app/src/session/files/open-in-app-button.tsx @@ -1,10 +1,10 @@ import { createSignal, For, Show, type ParentProps } from "solid-js" -import { AppIcon } from "@opencode-ai/ui/app-icon" -import { Icon } from "@opencode-ai/ui/icon" -import { Spinner } from "@opencode-ai/ui/spinner" -import { Menu } from "@opencode-ai/ui/menu" -import { SplitButton, SplitButtonAction, SplitButtonMenuTrigger } from "@opencode-ai/ui/split-button" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { AppIcon } from "@opencode/ui/app-icon" +import { Icon } from "@opencode/ui/icon" +import { Spinner } from "@opencode/ui/spinner" +import { Menu } from "@opencode/ui/menu" +import { SplitButton, SplitButtonAction, SplitButtonMenuTrigger } from "@opencode/ui/split-button" +import { Tooltip } from "@opencode/ui/tooltip" import { useLanguage } from "@/runtime/i18n/language" import { type OpenApp, useOpenInApp } from "@/session/files/open-in-app" diff --git a/packages/app/src/session/files/session-context-tab.tsx b/packages/app/src/session/files/session-context-tab.tsx index d90a58da5c7..7e6686cfdde 100644 --- a/packages/app/src/session/files/session-context-tab.tsx +++ b/packages/app/src/session/files/session-context-tab.tsx @@ -1,16 +1,16 @@ import { createMemo, createEffect, on, onCleanup, For, Show } from "solid-js" import type { JSX } from "solid-js" import { useData } from "@/runtime/server/current" -import { checksum } from "@opencode-ai/util/encode" +import { checksum } from "@opencode/util/encode" import { same } from "@/runtime/persistence/equality" -import { Icon } from "@opencode-ai/ui/icon" -import { Button } from "@opencode-ai/ui/button" -import { Accordion } from "@opencode-ai/ui/accordion" -import { StickyAccordionHeader } from "@opencode-ai/ui/sticky-accordion-header" -import { File } from "@opencode-ai/session-ui/file" -import { Markdown } from "@opencode-ai/session-ui/markdown" -import { ScrollView } from "@opencode-ai/ui/scroll-view" -import type { SessionMessageInfo } from "@opencode-ai/client/promise" +import { Icon } from "@opencode/ui/icon" +import { Button } from "@opencode/ui/button" +import { Accordion } from "@opencode/ui/accordion" +import { StickyAccordionHeader } from "@opencode/ui/sticky-accordion-header" +import { File } from "@opencode/session-ui/file" +import { Markdown } from "@opencode/session-ui/markdown" +import { ScrollView } from "@opencode/ui/scroll-view" +import type { SessionMessageInfo } from "@opencode/client/promise" import { showToast } from "@/shell/notifications/toast" import { fetchSessionExport, saveSessionExport, sessionExportFilename } from "@/session/commands/export" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/session/files/session-file-browser-tab.tsx b/packages/app/src/session/files/session-file-browser-tab.tsx index e271f0832d3..ca16ebaad8c 100644 --- a/packages/app/src/session/files/session-file-browser-tab.tsx +++ b/packages/app/src/session/files/session-file-browser-tab.tsx @@ -1,9 +1,9 @@ import { createMemo, createUniqueId, Show } from "solid-js" import { createStore } from "solid-js/store" import { createQuery } from "@tanstack/solid-query" -import { Icon } from "@opencode-ai/ui/icon" -import { SessionFilePanelV2, SessionFilePanelV2Empty } from "@opencode-ai/session-ui/v2/session-file-panel-v2" -import { SessionReviewV2Sidebar } from "@opencode-ai/session-ui/v2/session-review-v2" +import { Icon } from "@opencode/ui/icon" +import { SessionFilePanelV2, SessionFilePanelV2Empty } from "@opencode/session-ui/v2/session-file-panel-v2" +import { SessionReviewV2Sidebar } from "@opencode/session-ui/v2/session-review-v2" import FileTreeV2, { type Kind } from "@/session/files/file-tree-v2" import { useFile } from "@/workspaces/files/model" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/session/files/session-mobile-files.tsx b/packages/app/src/session/files/session-mobile-files.tsx index d5d1c6e919c..2a60f5b0b99 100644 --- a/packages/app/src/session/files/session-mobile-files.tsx +++ b/packages/app/src/session/files/session-mobile-files.tsx @@ -1,6 +1,6 @@ -import { Button } from "@opencode-ai/ui/button" -import { Tabs } from "@opencode-ai/ui/tabs" -import { getFilename } from "@opencode-ai/util/path" +import { Button } from "@opencode/ui/button" +import { Tabs } from "@opencode/ui/tabs" +import { getFilename } from "@opencode/util/path" import { createMemo, For } from "solid-js" import { createStore } from "solid-js/store" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/session/files/session-side-panel.tsx b/packages/app/src/session/files/session-side-panel.tsx index 26c22772a2e..0c4fd28906e 100644 --- a/packages/app/src/session/files/session-side-panel.tsx +++ b/packages/app/src/session/files/session-side-panel.tsx @@ -5,15 +5,15 @@ import { isSortable } from "@dnd-kit/solid/sortable" import { Accessibility, AutoScroller, Feedback, PointerActivationConstraints } from "@dnd-kit/dom" import { RestrictToHorizontalAxis } from "@dnd-kit/abstract/modifiers" import { RestrictToElement } from "@dnd-kit/dom/modifiers" -import { Tabs } from "@opencode-ai/ui/tabs" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Icon } from "@opencode-ai/ui/icon" -import { ResizeHandle } from "@opencode-ai/ui/resize-handle" -import { Mark } from "@opencode-ai/ui/logo" -import { Keybind } from "@opencode-ai/ui/keybind" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { Menu } from "@opencode-ai/ui/menu" -import type { FileDiffInfo } from "@opencode-ai/client/promise" +import { Tabs } from "@opencode/ui/tabs" +import { IconButton } from "@opencode/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { ResizeHandle } from "@opencode/ui/resize-handle" +import { Mark } from "@opencode/ui/logo" +import { Keybind } from "@opencode/ui/keybind" +import { Tooltip } from "@opencode/ui/tooltip" +import { Menu } from "@opencode/ui/menu" +import type { FileDiffInfo } from "@opencode/client/promise" import FileTree from "@/session/files/file-tree" import { normalizeFileTreeV2Path } from "@/session/files/file-tree-v2-model" diff --git a/packages/app/src/session/files/session-sortable-tab.tsx b/packages/app/src/session/files/session-sortable-tab.tsx index dabd1a5358b..ad522bdeb94 100644 --- a/packages/app/src/session/files/session-sortable-tab.tsx +++ b/packages/app/src/session/files/session-sortable-tab.tsx @@ -1,7 +1,7 @@ import { Show } from "solid-js" import type { JSX } from "solid-js" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { getFilename } from "@opencode-ai/util/path" +import { FileIcon } from "@opencode/ui/file-icon" +import { getFilename } from "@opencode/util/path" export function FileVisual(props: { path: string; active?: boolean; temporary?: boolean }): JSX.Element { return ( diff --git a/packages/app/src/session/files/tab.tsx b/packages/app/src/session/files/tab.tsx index 14f246f944e..7f644ed0c20 100644 --- a/packages/app/src/session/files/tab.tsx +++ b/packages/app/src/session/files/tab.tsx @@ -1,9 +1,9 @@ import { children, createMemo, Show } from "solid-js" import type { JSX } from "solid-js" import { useSortable } from "@dnd-kit/solid/sortable" -import { Keybind } from "@opencode-ai/ui/keybind" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { Tabs } from "@opencode-ai/ui/tabs" +import { Keybind } from "@opencode/ui/keybind" +import { Tooltip } from "@opencode/ui/tooltip" +import { Tabs } from "@opencode/ui/tabs" import { useFile } from "@/workspaces/files/model" import { useLanguage } from "@/runtime/i18n/language" import { useCommand } from "@/shell/commands/command" diff --git a/packages/app/src/session/handoff.test.ts b/packages/app/src/session/handoff.test.ts index 205ad5d192a..1a8f9acb9d0 100644 --- a/packages/app/src/session/handoff.test.ts +++ b/packages/app/src/session/handoff.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import type { SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageUser } from "@opencode/client/promise" import { clearSessionMessageHandoff, getSessionMessageHandoff, setSessionMessageHandoff } from "./handoff" test("stores and clears a message handoff", () => { diff --git a/packages/app/src/session/handoff.ts b/packages/app/src/session/handoff.ts index 6e00814c7ef..90e1ac5c082 100644 --- a/packages/app/src/session/handoff.ts +++ b/packages/app/src/session/handoff.ts @@ -1,5 +1,5 @@ import type { SelectedLineRange } from "@/workspaces/files/model" -import type { SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageUser } from "@opencode/client/promise" import { createStore } from "solid-js/store" type HandoffSession = { diff --git a/packages/app/src/session/header/session-header-actions.tsx b/packages/app/src/session/header/session-header-actions.tsx index 9572f1a3fb3..d8853dc960d 100644 --- a/packages/app/src/session/header/session-header-actions.tsx +++ b/packages/app/src/session/header/session-header-actions.tsx @@ -1,8 +1,8 @@ import { Show } from "solid-js" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Keybind } from "@opencode-ai/ui/keybind" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Keybind } from "@opencode/ui/keybind" +import { Tooltip } from "@opencode/ui/tooltip" import { useCommand } from "@/shell/commands/command" import { reviewTooltipKeybind } from "@/shell/commands/tooltip-keybind" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/session/header/session-header.tsx b/packages/app/src/session/header/session-header.tsx index 9acc4845a20..46b7e416742 100644 --- a/packages/app/src/session/header/session-header.tsx +++ b/packages/app/src/session/header/session-header.tsx @@ -5,7 +5,7 @@ import { useSettings } from "@/settings/model" import { useSessionLayout } from "@/session/session-layout" import { StatusPopover } from "@/shell/status/status-popover" import { TitlebarRight } from "@/shell/titlebar/right-slot" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { Tooltip } from "@opencode/ui/tooltip" export function SessionHeader() { const language = useLanguage() diff --git a/packages/app/src/session/incompatible-server-panel.tsx b/packages/app/src/session/incompatible-server-panel.tsx index 744470cd45d..7dbfc7fd5b8 100644 --- a/packages/app/src/session/incompatible-server-panel.tsx +++ b/packages/app/src/session/incompatible-server-panel.tsx @@ -1,5 +1,5 @@ -import { Button } from "@opencode-ai/ui/button" -import { Icon } from "@opencode-ai/ui/icon" +import { Button } from "@opencode/ui/button" +import { Icon } from "@opencode/ui/icon" import { Show } from "solid-js" import { useLanguage } from "@/runtime/i18n/language" import { useServer } from "@/runtime/server/current" diff --git a/packages/app/src/session/list.test.ts b/packages/app/src/session/list.test.ts index e10e7817ebc..66736dbf2c2 100644 --- a/packages/app/src/session/list.test.ts +++ b/packages/app/src/session/list.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionApi, SessionInfo, SessionListInput } from "@opencode-ai/client/promise" +import type { SessionApi, SessionInfo, SessionListInput } from "@opencode/client/promise" import { listAllSessions } from "./list" describe("listAllSessions", () => { diff --git a/packages/app/src/session/list.ts b/packages/app/src/session/list.ts index a299354f503..02058f0714b 100644 --- a/packages/app/src/session/list.ts +++ b/packages/app/src/session/list.ts @@ -1,4 +1,4 @@ -import type { SessionApi, SessionInfo, SessionListInput } from "@opencode-ai/client/promise" +import type { SessionApi, SessionInfo, SessionListInput } from "@opencode/client/promise" export async function listAllSessions(api: Pick, input: Omit) { const load = async (cursor?: string): Promise => { diff --git a/packages/app/src/session/model.test.ts b/packages/app/src/session/model.test.ts index c0a5124c34d..0d97e0902d0 100644 --- a/packages/app/src/session/model.test.ts +++ b/packages/app/src/session/model.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionMessageAssistant, SessionMessageInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, SessionMessageInfo, SessionMessageUser } from "@opencode/client/promise" import { createRoot, createSignal } from "solid-js" import { normalizeSessionTab, diff --git a/packages/app/src/session/model.ts b/packages/app/src/session/model.ts index 4711554ce9e..c9ff52b92c1 100644 --- a/packages/app/src/session/model.ts +++ b/packages/app/src/session/model.ts @@ -1,4 +1,4 @@ -import type { SessionMessageInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageInfo, SessionMessageUser } from "@opencode/client/promise" import { createMediaQuery } from "@solid-primitives/media" import { createMemo } from "solid-js" import { useFile } from "@/workspaces/files/model" diff --git a/packages/app/src/session/requests/auto-approve.ts b/packages/app/src/session/requests/auto-approve.ts index 1b81bc9ca0a..7efa1b2820d 100644 --- a/packages/app/src/session/requests/auto-approve.ts +++ b/packages/app/src/session/requests/auto-approve.ts @@ -1,6 +1,6 @@ import { createEffect, onCleanup } from "solid-js" -import type { PermissionRequest } from "@opencode-ai/client/promise" -import type { Data } from "@opencode-ai/client/solid" +import type { PermissionRequest } from "@opencode/client/promise" +import type { Data } from "@opencode/client/solid" import type { ServerSDK } from "@/runtime/server/client" import { useSettings } from "@/settings/model" diff --git a/packages/app/src/session/requests/background.ts b/packages/app/src/session/requests/background.ts index 9b523d7cbd1..2bb969cba18 100644 --- a/packages/app/src/session/requests/background.ts +++ b/packages/app/src/session/requests/background.ts @@ -1,4 +1,4 @@ -import type { SessionInfo, SessionMessageAssistant, SessionMessageInfo, ShellInfo } from "@opencode-ai/client/promise" +import type { SessionInfo, SessionMessageAssistant, SessionMessageInfo, ShellInfo } from "@opencode/client/promise" import { createMemo } from "solid-js" type Task = diff --git a/packages/app/src/session/requests/model.ts b/packages/app/src/session/requests/model.ts index 91f9e52792f..98db702113d 100644 --- a/packages/app/src/session/requests/model.ts +++ b/packages/app/src/session/requests/model.ts @@ -1,6 +1,6 @@ import { createEffect, createMemo } from "solid-js" import { createStore } from "solid-js/store" -import type { FormInfo, PermissionRequest } from "@opencode-ai/client/promise" +import type { FormInfo, PermissionRequest } from "@opencode/client/promise" import { useParams } from "@solidjs/router" import { showToast } from "@/shell/notifications/toast" import { useServerSDK } from "@/runtime/server/client" diff --git a/packages/app/src/session/requests/session-permission-dock.tsx b/packages/app/src/session/requests/session-permission-dock.tsx index 3622a487f35..4657d61c9d7 100644 --- a/packages/app/src/session/requests/session-permission-dock.tsx +++ b/packages/app/src/session/requests/session-permission-dock.tsx @@ -1,8 +1,8 @@ import { For, Show } from "solid-js" -import type { PermissionRequest } from "@opencode-ai/client/promise" -import { Button } from "@opencode-ai/ui/button" -import { DockPrompt } from "@opencode-ai/session-ui/dock-prompt" -import { Icon } from "@opencode-ai/ui/icon" +import type { PermissionRequest } from "@opencode/client/promise" +import { Button } from "@opencode/ui/button" +import { DockPrompt } from "@opencode/session-ui/dock-prompt" +import { Icon } from "@opencode/ui/icon" import { useLanguage } from "@/runtime/i18n/language" export function SessionPermissionDock(props: { diff --git a/packages/app/src/session/requests/session-question-dock.tsx b/packages/app/src/session/requests/session-question-dock.tsx index 5e1d0ce1019..d298766ad01 100644 --- a/packages/app/src/session/requests/session-question-dock.tsx +++ b/packages/app/src/session/requests/session-question-dock.tsx @@ -1,13 +1,13 @@ import { For, Show, createEffect, createMemo, onCleanup, onMount, type Component } from "solid-js" import { createStore } from "solid-js/store" import { useMutation } from "@tanstack/solid-query" -import { Button } from "@opencode-ai/ui/button" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { DockPrompt } from "@opencode-ai/session-ui/dock-prompt" -import { Icon } from "@opencode-ai/ui/icon" -import { useSpring } from "@opencode-ai/ui/motion-spring" +import { Button } from "@opencode/ui/button" +import { IconButton } from "@opencode/ui/icon-button" +import { DockPrompt } from "@opencode/session-ui/dock-prompt" +import { Icon } from "@opencode/ui/icon" +import { useSpring } from "@opencode/ui/motion-spring" import { showToast } from "@/shell/notifications/toast" -import type { FormAnswer, FormInfo, FormMultiselectField, FormStringField } from "@opencode-ai/client/promise" +import type { FormAnswer, FormInfo, FormMultiselectField, FormStringField } from "@opencode/client/promise" import { useLanguage } from "@/runtime/i18n/language" import { makeEventListener } from "@solid-primitives/event-listener" import { createResizeObserver } from "@solid-primitives/resize-observer" diff --git a/packages/app/src/session/requests/session-request-tree.test.ts b/packages/app/src/session/requests/session-request-tree.test.ts index ce461b6db2e..8836170e323 100644 --- a/packages/app/src/session/requests/session-request-tree.test.ts +++ b/packages/app/src/session/requests/session-request-tree.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { FormInfo, PermissionRequest, SessionInfo } from "@opencode-ai/client/promise" +import type { FormInfo, PermissionRequest, SessionInfo } from "@opencode/client/promise" import { sessionPermissionRequest, sessionFormRequest, sessionTreeIDs } from "@/session/requests/session-request-tree" const session = (input: { id: string; parentID?: string }) => diff --git a/packages/app/src/session/requests/session-request-tree.ts b/packages/app/src/session/requests/session-request-tree.ts index c3d933fc4cf..93f5da25576 100644 --- a/packages/app/src/session/requests/session-request-tree.ts +++ b/packages/app/src/session/requests/session-request-tree.ts @@ -1,4 +1,4 @@ -import type { FormInfo, PermissionRequest, SessionInfo } from "@opencode-ai/client/promise" +import type { FormInfo, PermissionRequest, SessionInfo } from "@opencode/client/promise" function sessionTreeRequest( session: SessionInfo[], diff --git a/packages/app/src/session/requests/session-websearch-dock.tsx b/packages/app/src/session/requests/session-websearch-dock.tsx index c3f564dbdd0..5cec0f82abf 100644 --- a/packages/app/src/session/requests/session-websearch-dock.tsx +++ b/packages/app/src/session/requests/session-websearch-dock.tsx @@ -1,7 +1,7 @@ import { createMemo, Show } from "solid-js" -import { Button } from "@opencode-ai/ui/button" -import { DockShell, DockTray } from "@opencode-ai/ui/dock-surface" -import { Select } from "@opencode-ai/ui/select" +import { Button } from "@opencode/ui/button" +import { DockShell, DockTray } from "@opencode/ui/dock-surface" +import { Select } from "@opencode/ui/select" import { useLanguage } from "@/runtime/i18n/language" import { SettingsRow } from "@/settings/row" import type { WebSearchRequestModel } from "./websearch" diff --git a/packages/app/src/session/requests/websearch.test.ts b/packages/app/src/session/requests/websearch.test.ts index bc515f752ec..4385289919b 100644 --- a/packages/app/src/session/requests/websearch.test.ts +++ b/packages/app/src/session/requests/websearch.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { FormAnswer, FormCreated, FormReplyInput, OpenCodeEvent } from "@opencode-ai/client/promise" +import type { FormAnswer, FormCreated, FormReplyInput, OpenCodeEvent } from "@opencode/client/promise" import { replyWebSearch } from "./websearch" const consent: FormCreated["data"]["form"] = { diff --git a/packages/app/src/session/requests/websearch.ts b/packages/app/src/session/requests/websearch.ts index bdc4efd2c70..78b437487f0 100644 --- a/packages/app/src/session/requests/websearch.ts +++ b/packages/app/src/session/requests/websearch.ts @@ -1,4 +1,4 @@ -import type { FormInfo, FormOption, FormReplyInput, FormStringField } from "@opencode-ai/client/promise" +import type { FormInfo, FormOption, FormReplyInput, FormStringField } from "@opencode/client/promise" import { createEffect, createMemo, createResource, on, onCleanup } from "solid-js" import { createStore } from "solid-js/store" import type { OpenCodeEventStream } from "@/runtime/server/client" diff --git a/packages/app/src/session/revert.ts b/packages/app/src/session/revert.ts index 080e4cc2e77..bd75fa10237 100644 --- a/packages/app/src/session/revert.ts +++ b/packages/app/src/session/revert.ts @@ -1,4 +1,4 @@ -import type { SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageUser } from "@opencode/client/promise" import { useComposerState } from "@/composer/persistence" import { useData } from "@/runtime/server/current" import { useServerSDK } from "@/runtime/server/client" diff --git a/packages/app/src/session/review/model.ts b/packages/app/src/session/review/model.ts index d4d9cd68ddb..4c8f3f2601a 100644 --- a/packages/app/src/session/review/model.ts +++ b/packages/app/src/session/review/model.ts @@ -1,7 +1,7 @@ -import type { FileDiffInfo } from "@opencode-ai/client/promise" -import type { SessionReviewLineComment } from "@opencode-ai/session-ui/session-review" -import { previewSelectedLines } from "@opencode-ai/session-ui/pierre/selection-bridge" -import { checksum } from "@opencode-ai/util/encode" +import type { FileDiffInfo } from "@opencode/client/promise" +import type { SessionReviewLineComment } from "@opencode/session-ui/session-review" +import { previewSelectedLines } from "@opencode/session-ui/pierre/selection-bridge" +import { checksum } from "@opencode/util/encode" import { createQuery, skipToken, useQueryClient } from "@tanstack/solid-query" import { debounce } from "@solid-primitives/scheduled" import { createEffect, createMemo, on, onCleanup, type Accessor } from "solid-js" diff --git a/packages/app/src/session/review/panel-state.ts b/packages/app/src/session/review/panel-state.ts index 50ca9f3c5ae..e2339453eaa 100644 --- a/packages/app/src/session/review/panel-state.ts +++ b/packages/app/src/session/review/panel-state.ts @@ -3,7 +3,7 @@ import { SESSION_REVIEW_V2_SIDEBAR_WIDTH_MAX, SESSION_REVIEW_V2_SIDEBAR_WIDTH_MIN, type SessionReviewExpandMode, -} from "@opencode-ai/session-ui/v2/session-review-v2" +} from "@opencode/session-ui/v2/session-review-v2" import { createSignal } from "solid-js" import { Schema } from "effect" import type { Platform } from "@/runtime/platform/platform" diff --git a/packages/app/src/session/review/panel.tsx b/packages/app/src/session/review/panel.tsx index 8e47e78d66a..750e1d805a9 100644 --- a/packages/app/src/session/review/panel.tsx +++ b/packages/app/src/session/review/panel.tsx @@ -1,13 +1,13 @@ import { createMemo, createResource, createSignal, Show, type JSX } from "solid-js" -import type { FileDiffInfo } from "@opencode-ai/client/promise" +import type { FileDiffInfo } from "@opencode/client/promise" import { SESSION_REVIEW_V2_SIDEBAR_WIDTH_MAX, SESSION_REVIEW_V2_SIDEBAR_WIDTH_MIN, SessionReviewV2, SessionReviewV2Sidebar, -} from "@opencode-ai/session-ui/v2/session-review-v2" -import { SessionReviewFilePreviewV2 } from "@opencode-ai/session-ui/v2/session-review-file-preview-v2" -import { DiffChanges } from "@opencode-ai/ui/diff-changes" +} from "@opencode/session-ui/v2/session-review-v2" +import { SessionReviewFilePreviewV2 } from "@opencode/session-ui/v2/session-review-file-preview-v2" +import { DiffChanges } from "@opencode/ui/diff-changes" import type { SessionReviewComment, SessionReviewCommentActions, @@ -16,7 +16,7 @@ import type { SessionReviewDiffStyle, SessionReviewFocus, SessionReviewLineComment, -} from "@opencode-ai/session-ui/session-review" +} from "@opencode/session-ui/session-review" import FileTreeV2 from "@/session/files/file-tree-v2" import { sortFileTreeV2Paths } from "@/session/files/file-tree-v2-model" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/session/review/review-diff-kinds.ts b/packages/app/src/session/review/review-diff-kinds.ts index 93317af60c2..d8a9bfa170c 100644 --- a/packages/app/src/session/review/review-diff-kinds.ts +++ b/packages/app/src/session/review/review-diff-kinds.ts @@ -1,4 +1,4 @@ -import type { FileDiffInfo } from "@opencode-ai/client/promise" +import type { FileDiffInfo } from "@opencode/client/promise" import type { Kind } from "@/session/files/file-tree-v2" import { normalizeFileTreeV2Path } from "@/session/files/file-tree-v2-model" diff --git a/packages/app/src/session/review/review-tab.tsx b/packages/app/src/session/review/review-tab.tsx index afabb3e48ba..25b855a2722 100644 --- a/packages/app/src/session/review/review-tab.tsx +++ b/packages/app/src/session/review/review-tab.tsx @@ -1,12 +1,12 @@ import { createEffect, onCleanup, type JSX } from "solid-js" import { makeEventListener } from "@solid-primitives/event-listener" -import type { FileDiffInfo } from "@opencode-ai/client/promise" -import { SessionReview } from "@opencode-ai/session-ui/session-review" +import type { FileDiffInfo } from "@opencode/client/promise" +import { SessionReview } from "@opencode/session-ui/session-review" import type { SessionReviewCommentActions, SessionReviewCommentDelete, SessionReviewCommentUpdate, -} from "@opencode-ai/session-ui/session-review" +} from "@opencode/session-ui/session-review" import type { SelectedLineRange } from "@/workspaces/files/model" import { useWorkspaceLocation } from "@/workspaces/location" import { useServerSDK } from "@/runtime/server/client" diff --git a/packages/app/src/session/review/view.tsx b/packages/app/src/session/review/view.tsx index 1f3e78cc2b1..6497ac3ae2a 100644 --- a/packages/app/src/session/review/view.tsx +++ b/packages/app/src/session/review/view.tsx @@ -1,10 +1,10 @@ -import { SessionReviewEmptyChangesV2 } from "@opencode-ai/session-ui/v2/session-review-empty-changes-v2" -import { SessionReviewV2SidebarToggle } from "@opencode-ai/session-ui/v2/session-review-v2" -import { Select } from "@opencode-ai/ui/select" -import { Tabs } from "@opencode-ai/ui/tabs" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Menu } from "@opencode-ai/ui/menu" +import { SessionReviewEmptyChangesV2 } from "@opencode/session-ui/v2/session-review-empty-changes-v2" +import { SessionReviewV2SidebarToggle } from "@opencode/session-ui/v2/session-review-v2" +import { Select } from "@opencode/ui/select" +import { Tabs } from "@opencode/ui/tabs" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Menu } from "@opencode/ui/menu" import { For, Match, Show, Suspense, Switch, lazy, createEffect, onCleanup, type JSX } from "solid-js" import { createStore } from "solid-js/store" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/session/route-error.tsx b/packages/app/src/session/route-error.tsx index 526a112ce6d..830441151d9 100644 --- a/packages/app/src/session/route-error.tsx +++ b/packages/app/src/session/route-error.tsx @@ -1,4 +1,4 @@ -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" import { createMemo, Show } from "solid-js" import { ErrorPage } from "@/shell/errors/error" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/session/route.tsx b/packages/app/src/session/route.tsx index 64b4b4b05a8..26c1d4c13e9 100644 --- a/packages/app/src/session/route.tsx +++ b/packages/app/src/session/route.tsx @@ -1,8 +1,8 @@ import { ErrorBoundary, createEffect, createMemo, Show, type ParentProps } from "solid-js" import { useParams } from "@solidjs/router" -import { DataProvider } from "@opencode-ai/session-ui/context" -import { SessionUserMessage } from "@opencode-ai/session-ui/message" -import { TextShimmer } from "@opencode-ai/ui/text-shimmer" +import { DataProvider } from "@opencode/session-ui/context" +import { SessionUserMessage } from "@opencode/session-ui/message" +import { TextShimmer } from "@opencode/ui/text-shimmer" import { CommentsProvider } from "@/composer/comments" import { readPromptPresentation } from "@/composer/comment-note" import { FileProvider } from "@/workspaces/files/model" diff --git a/packages/app/src/session/screen.tsx b/packages/app/src/session/screen.tsx index 54432cc8274..575f1d39a62 100644 --- a/packages/app/src/session/screen.tsx +++ b/packages/app/src/session/screen.tsx @@ -11,7 +11,7 @@ import { on, } from "solid-js" import { createStore } from "solid-js/store" -import { ResizeHandle } from "@opencode-ai/ui/resize-handle" +import { ResizeHandle } from "@opencode/ui/resize-handle" import { MessageTimeline, SessionSummaryPanel } from "@/session/timeline/message-timeline" import { useServer } from "@/runtime/server/current" import { projectForSession } from "@/shell/layout/helpers" diff --git a/packages/app/src/session/session-domain.ts b/packages/app/src/session/session-domain.ts index 0f68094948f..0d36a8a5b2a 100644 --- a/packages/app/src/session/session-domain.ts +++ b/packages/app/src/session/session-domain.ts @@ -1,4 +1,4 @@ -import type { SessionMessageInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageInfo, SessionMessageUser } from "@opencode/client/promise" export function normalizeSessionTab(tab: string, normalizeFileTab: (tab: string) => string) { if (!tab.startsWith("file://")) return tab diff --git a/packages/app/src/session/session-identity-header.tsx b/packages/app/src/session/session-identity-header.tsx index 9a5202e9537..879199dc716 100644 --- a/packages/app/src/session/session-identity-header.tsx +++ b/packages/app/src/session/session-identity-header.tsx @@ -1,10 +1,10 @@ -import type { SessionInfo } from "@opencode-ai/client/promise" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Menu } from "@opencode-ai/ui/menu" -import { ProjectAvatar } from "@opencode-ai/ui/project-avatar" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import type { SessionInfo } from "@opencode/client/promise" +import { useDialog } from "@opencode/ui/context/dialog" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Menu } from "@opencode/ui/menu" +import { ProjectAvatar } from "@opencode/ui/project-avatar" +import { Tooltip } from "@opencode/ui/tooltip" import { createResizeObserver } from "@solid-primitives/resize-observer" import { useNavigate } from "@solidjs/router" import { createMemo, Show, type ParentProps } from "solid-js" diff --git a/packages/app/src/session/session-layout.ts b/packages/app/src/session/session-layout.ts index 120938ac56b..1442b2fcdb9 100644 --- a/packages/app/src/session/session-layout.ts +++ b/packages/app/src/session/session-layout.ts @@ -4,7 +4,7 @@ import { useLayout } from "@/shell/state/layout" import { SessionRouteKey, SessionStateKey } from "@/runtime/server/scope" import { useWorkspaceLocation } from "@/workspaces/location" import { useServerSDK } from "@/runtime/server/client" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { ServerConnection } from "@/runtime/server/registry" import { findSessionTab, tabKey, useTabs } from "@/shell/tabs/tabs" diff --git a/packages/app/src/session/session-screen.stories.tsx b/packages/app/src/session/session-screen.stories.tsx index 8119f28023c..6d9d7daf104 100644 --- a/packages/app/src/session/session-screen.stories.tsx +++ b/packages/app/src/session/session-screen.stories.tsx @@ -13,7 +13,7 @@ import { STORY_TIME, subagentDocument, terminalPassedDocument, -} from "@opencode-ai/session-ui/storybook" +} from "@opencode/session-ui/storybook" import { SessionPreview } from "./story-model" const description = "opencode · modular-session-ui" diff --git a/packages/app/src/session/story-model.tsx b/packages/app/src/session/story-model.tsx index 111fdaa2687..1d2e968d10e 100644 --- a/packages/app/src/session/story-model.tsx +++ b/packages/app/src/session/story-model.tsx @@ -7,15 +7,15 @@ import { type SessionComposerRegionViewController, } from "@/session/composer/session-composer-region" import { SessionPanelFrame, SessionRouteFrame } from "@/session/session-frame" -import type { FormInfo, PermissionRequest, SessionStatus } from "@opencode-ai/client/promise" -import type { SessionDocument } from "@opencode-ai/session-ui/document" -import { CurrentSessionProviders, STORY_MODEL } from "@opencode-ai/session-ui/storybook" -import { SessionTimeline } from "@opencode-ai/session-ui/timeline" -import { SessionReviewEmptyChangesV2 } from "@opencode-ai/session-ui/v2/session-review-empty-changes-v2" +import type { FormInfo, PermissionRequest, SessionStatus } from "@opencode/client/promise" +import type { SessionDocument } from "@opencode/session-ui/document" +import { CurrentSessionProviders, STORY_MODEL } from "@opencode/session-ui/storybook" +import { SessionTimeline } from "@opencode/session-ui/timeline" +import { SessionReviewEmptyChangesV2 } from "@opencode/session-ui/v2/session-review-empty-changes-v2" import { createComposerEditor } from "@/composer/editor/interaction" import type { ComposerPersistedState } from "@/composer/types" -import { Button } from "@opencode-ai/ui/button" -import { Icon } from "@opencode-ai/ui/icon" +import { Button } from "@opencode/ui/button" +import { Icon } from "@opencode/ui/icon" import { QueryClient, QueryClientProvider } from "@tanstack/solid-query" import { Show } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/app/src/session/terminal/context.test.ts b/packages/app/src/session/terminal/context.test.ts index 45ec02945bc..8c93e83ce95 100644 --- a/packages/app/src/session/terminal/context.test.ts +++ b/packages/app/src/session/terminal/context.test.ts @@ -1,6 +1,6 @@ import { beforeAll, describe, expect, mock, test } from "bun:test" import { ServerScope } from "@/runtime/server/scope" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { Persist } from "@/runtime/persistence/storage" import { Persistence } from "@/runtime/persistence/schema" import type { Platform } from "@/runtime/platform/platform" diff --git a/packages/app/src/session/terminal/context.tsx b/packages/app/src/session/terminal/context.tsx index 1114563cb4e..3bd7aa97867 100644 --- a/packages/app/src/session/terminal/context.tsx +++ b/packages/app/src/session/terminal/context.tsx @@ -1,10 +1,10 @@ import { createStore, produce } from "solid-js/store" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { batch, createEffect, createMemo, createRoot, on, onCleanup } from "solid-js" import { useWorkspaceLocation, type LocationContext } from "@/workspaces/location" import type { Platform } from "@/runtime/platform/platform" import { useServerSDK } from "@/runtime/server/client" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { defaultTitle, titleNumber } from "./title" import { Persist, persisted, removePersisted } from "@/runtime/persistence/storage" import { ScopedKey, ServerScope } from "@/runtime/server/scope" diff --git a/packages/app/src/session/terminal/panel.tsx b/packages/app/src/session/terminal/panel.tsx index 29b205eb8cd..a265f3ee5e8 100644 --- a/packages/app/src/session/terminal/panel.tsx +++ b/packages/app/src/session/terminal/panel.tsx @@ -7,11 +7,11 @@ import { isSortable } from "@dnd-kit/solid/sortable" import { Accessibility, AutoScroller, Feedback, PointerActivationConstraints } from "@dnd-kit/dom" import { RestrictToHorizontalAxis } from "@dnd-kit/abstract/modifiers" import { RestrictToElement } from "@dnd-kit/dom/modifiers" -import { Tabs } from "@opencode-ai/ui/tabs" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Icon } from "@opencode-ai/ui/icon" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { Keybind } from "@opencode-ai/ui/keybind" +import { Tabs } from "@opencode/ui/tabs" +import { IconButton } from "@opencode/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { Tooltip } from "@opencode/ui/tooltip" +import { Keybind } from "@opencode/ui/keybind" import { SortableTerminalTab } from "@/session/terminal/tab" import { Terminal } from "@/session/terminal/terminal" diff --git a/packages/app/src/session/terminal/surface.tsx b/packages/app/src/session/terminal/surface.tsx index 80c0f36d2b7..56dfb28c72d 100644 --- a/packages/app/src/session/terminal/surface.tsx +++ b/packages/app/src/session/terminal/surface.tsx @@ -1,4 +1,4 @@ -import { ResizeHandle } from "@opencode-ai/ui/resize-handle" +import { ResizeHandle } from "@opencode/ui/resize-handle" import type { ParentProps } from "solid-js" export function TerminalSurface( diff --git a/packages/app/src/session/terminal/tab.tsx b/packages/app/src/session/terminal/tab.tsx index 82f3ff55a82..06919bb67a7 100644 --- a/packages/app/src/session/terminal/tab.tsx +++ b/packages/app/src/session/terminal/tab.tsx @@ -2,8 +2,8 @@ import type { JSX } from "solid-js" import { Show, createEffect, onCleanup } from "solid-js" import { createStore } from "solid-js/store" import { useSortable } from "@dnd-kit/solid/sortable" -import { Tabs } from "@opencode-ai/ui/tabs" -import { Menu } from "@opencode-ai/ui/menu" +import { Tabs } from "@opencode/ui/tabs" +import { Menu } from "@opencode/ui/menu" import { isDefaultTitle } from "@/session/terminal/title" import { useTerminal, type LocalPTY } from "@/session/terminal/context" import { useLanguage } from "@/runtime/i18n/language" diff --git a/packages/app/src/session/terminal/terminal.tsx b/packages/app/src/session/terminal/terminal.tsx index ffd90f85622..1e6c95c9126 100644 --- a/packages/app/src/session/terminal/terminal.tsx +++ b/packages/app/src/session/terminal/terminal.tsx @@ -1,8 +1,8 @@ -import { withAlpha } from "@opencode-ai/ui/theme/color" -import { useTheme } from "@opencode-ai/ui/theme/context" -import { resolveThemeVariant } from "@opencode-ai/ui/theme/resolve" -import { resolveThemeVariantV2 } from "@opencode-ai/ui/theme/v2/resolve" -import type { HexColor, ResolvedV2Theme } from "@opencode-ai/ui/theme/types" +import { withAlpha } from "@opencode/ui/theme/color" +import { useTheme } from "@opencode/ui/theme/context" +import { resolveThemeVariant } from "@opencode/ui/theme/resolve" +import { resolveThemeVariantV2 } from "@opencode/ui/theme/v2/resolve" +import type { HexColor, ResolvedV2Theme } from "@opencode/ui/theme/types" import { showToast } from "@/shell/notifications/toast" import type { FitAddon, Ghostty, Terminal as Term } from "ghostty-web" import { type ComponentProps, createEffect, createMemo, onCleanup, onMount, splitProps } from "solid-js" diff --git a/packages/app/src/session/timeline/controller-projection.test.ts b/packages/app/src/session/timeline/controller-projection.test.ts index 27f514e74ed..8d85e8dd544 100644 --- a/packages/app/src/session/timeline/controller-projection.test.ts +++ b/packages/app/src/session/timeline/controller-projection.test.ts @@ -1,9 +1,9 @@ import { describe, expect, test } from "bun:test" -import type { SessionInboxInfo, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionInboxInfo, SessionMessageInfo } from "@opencode/client/promise" import { createRoot } from "solid-js" import { applyTimelineMessageHandoff, visibleTimelineMessages } from "./controller-projection" import { createTimelineProjection } from "./projection" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" const messages = [ { id: "msg_1", type: "user", text: "first", time: { created: 1 } }, diff --git a/packages/app/src/session/timeline/controller-projection.ts b/packages/app/src/session/timeline/controller-projection.ts index 29d79aae12e..4a7527fa3dd 100644 --- a/packages/app/src/session/timeline/controller-projection.ts +++ b/packages/app/src/session/timeline/controller-projection.ts @@ -1,4 +1,4 @@ -import type { SessionInboxInfo, SessionMessageInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionInboxInfo, SessionMessageInfo, SessionMessageUser } from "@opencode/client/promise" export function applyTimelineMessageHandoff(messages: SessionMessageInfo[], handoff?: SessionMessageUser) { if (!handoff) return messages diff --git a/packages/app/src/session/timeline/controller.tsx b/packages/app/src/session/timeline/controller.tsx index b75fdf5d79a..723fbcea8ea 100644 --- a/packages/app/src/session/timeline/controller.tsx +++ b/packages/app/src/session/timeline/controller.tsx @@ -1,11 +1,11 @@ -import type { SessionMessageInfo } from "@opencode-ai/client/promise" -import { DialogFooter, DialogHeader, DialogTitleGroup, Dialog } from "@opencode-ai/ui/dialog" -import { Button } from "@opencode-ai/ui/button" +import type { SessionMessageInfo } from "@opencode/client/promise" +import { DialogFooter, DialogHeader, DialogTitleGroup, Dialog } from "@opencode/ui/dialog" +import { Button } from "@opencode/ui/button" import { useNavigate } from "@solidjs/router" import { createEffect, createMemo, on } from "solid-js" import { createStore } from "solid-js/store" import { notifySessionTabsRemoved } from "@/shell/titlebar/session-events" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { useLanguage } from "@/runtime/i18n/language" import { useSettings } from "@/settings/model" import { useWorkspaceLocation } from "@/workspaces/location" @@ -22,7 +22,7 @@ import { applyTimelineMessageHandoff, timelineChildTitle, visibleTimelineMessage import { createTimelineProjection } from "./projection" import { useServer } from "@/runtime/server/current" import { getSessionMessageHandoff } from "@/session/handoff" -import type { ReasoningMode } from "@opencode-ai/session-ui/timeline/projection" +import type { ReasoningMode } from "@opencode/session-ui/timeline/projection" const emptyMessages: SessionMessageInfo[] = [] const taskDescription = (message: SessionMessageInfo, sessionID: string): string | undefined => { diff --git a/packages/app/src/session/timeline/interaction.ts b/packages/app/src/session/timeline/interaction.ts index 1c30100e259..30d618f79e6 100644 --- a/packages/app/src/session/timeline/interaction.ts +++ b/packages/app/src/session/timeline/interaction.ts @@ -1,4 +1,4 @@ -import type { SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageUser } from "@opencode/client/promise" import { createResizeObserver } from "@solid-primitives/resize-observer" import { useLocation } from "@solidjs/router" import { createEffect, on, onCleanup } from "solid-js" diff --git a/packages/app/src/session/timeline/message-timeline.tsx b/packages/app/src/session/timeline/message-timeline.tsx index 9cd68dddfa9..823373de1ce 100644 --- a/packages/app/src/session/timeline/message-timeline.tsx +++ b/packages/app/src/session/timeline/message-timeline.tsx @@ -1,26 +1,26 @@ import { createEffect, createMemo, createSignal, For, on, onCleanup, Show, type Accessor, type JSX } from "solid-js" import { createStore } from "solid-js/store" import { createAnimatedPresence } from "@/runtime/animated-presence" -import type { SessionUserActions } from "@opencode-ai/session-ui/actions" -import { Button } from "@opencode-ai/ui/button" -import { DiffChanges } from "@opencode-ai/ui/diff-changes" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { InlineInput } from "@opencode-ai/ui/inline-input" -import { Keybind } from "@opencode-ai/ui/keybind" -import { Menu } from "@opencode-ai/ui/menu" -import { TextShimmer } from "@opencode-ai/ui/text-shimmer" -import { ProjectAvatar } from "@opencode-ai/ui/project-avatar" +import type { SessionUserActions } from "@opencode/session-ui/actions" +import { Button } from "@opencode/ui/button" +import { DiffChanges } from "@opencode/ui/diff-changes" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { InlineInput } from "@opencode/ui/inline-input" +import { Keybind } from "@opencode/ui/keybind" +import { Menu } from "@opencode/ui/menu" +import { TextShimmer } from "@opencode/ui/text-shimmer" +import { ProjectAvatar } from "@opencode/ui/project-avatar" import type { Project } from "@/runtime/server/types" -import { getFilename } from "@opencode-ai/util/path" +import { getFilename } from "@opencode/util/path" import { Popover } from "@kobalte/core/popover" import { SessionContextUsage } from "@/session/timeline/session-context-usage" import { useLanguage } from "@/runtime/i18n/language" import { useData, useServer } from "@/runtime/server/current" import { useWorkspaceLocation } from "@/workspaces/location" -import { Timeline, TimelineRow } from "@opencode-ai/session-ui/timeline/projection" -import { createSessionTimelineRowRenderer } from "@opencode-ai/session-ui/timeline/row" -import { getReadyMarkdown, preloadMarkdown } from "@opencode-ai/session-ui/markdown-cache" +import { Timeline, TimelineRow } from "@opencode/session-ui/timeline/projection" +import { createSessionTimelineRowRenderer } from "@opencode/session-ui/timeline/row" +import { getReadyMarkdown, preloadMarkdown } from "@opencode/session-ui/markdown-cache" import { createTimelineController, type TimelineController, type TimelineSessionSource } from "./controller" import { createTimelineVirtualizer } from "./virtualizer" import { containsDirectory, isWorkspaceDirectory, workspaceDirectories } from "@/workspaces/paths" diff --git a/packages/app/src/session/timeline/model.test.ts b/packages/app/src/session/timeline/model.test.ts index 064fdd6cb8f..5c187facc9b 100644 --- a/packages/app/src/session/timeline/model.test.ts +++ b/packages/app/src/session/timeline/model.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionMessageAssistant, SessionMessageInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, SessionMessageInfo, SessionMessageUser } from "@opencode/client/promise" import { enrichLeadingTurn, leadingTurnNeedsParent, diff --git a/packages/app/src/session/timeline/model.ts b/packages/app/src/session/timeline/model.ts index f0fd35ace8d..6629dabb01c 100644 --- a/packages/app/src/session/timeline/model.ts +++ b/packages/app/src/session/timeline/model.ts @@ -1,5 +1,5 @@ import { createMemo, createResource, type Accessor } from "solid-js" -import type { SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionMessageInfo } from "@opencode/client/promise" import { useData } from "@/runtime/server/current" import type { SessionModel } from "../model" diff --git a/packages/app/src/session/timeline/projection.ts b/packages/app/src/session/timeline/projection.ts index 28307ae9ae5..bd23dcffea0 100644 --- a/packages/app/src/session/timeline/projection.ts +++ b/packages/app/src/session/timeline/projection.ts @@ -1,6 +1,6 @@ -import { createReactiveTimelineProjection } from "@opencode-ai/session-ui/timeline/projection" +import { createReactiveTimelineProjection } from "@opencode/session-ui/timeline/projection" -export { reuseTimelineRows } from "@opencode-ai/session-ui/timeline/projection" +export { reuseTimelineRows } from "@opencode/session-ui/timeline/projection" export function createTimelineProjection(input: Parameters[0]) { return createReactiveTimelineProjection(input) diff --git a/packages/app/src/session/timeline/search-bar.tsx b/packages/app/src/session/timeline/search-bar.tsx index 382f2c50a38..aaa38ecf7df 100644 --- a/packages/app/src/session/timeline/search-bar.tsx +++ b/packages/app/src/session/timeline/search-bar.tsx @@ -1,5 +1,5 @@ -import { Icon } from "@opencode-ai/ui/icon" -import "@opencode-ai/ui/text-input.css" +import { Icon } from "@opencode/ui/icon" +import "@opencode/ui/text-input.css" import { Show } from "solid-js" import type { TimelineSearchController } from "./search-controller" import "./search-bar.css" diff --git a/packages/app/src/session/timeline/search-controller.ts b/packages/app/src/session/timeline/search-controller.ts index 6a8b633fc83..dbbb434d0f7 100644 --- a/packages/app/src/session/timeline/search-controller.ts +++ b/packages/app/src/session/timeline/search-controller.ts @@ -1,7 +1,7 @@ import { useCommand } from "@/shell/commands/command" import { useLanguage } from "@/runtime/i18n/language" import { useData } from "@/runtime/server/current" -import { Timeline } from "@opencode-ai/session-ui/timeline/projection" +import { Timeline } from "@opencode/session-ui/timeline/projection" import { createEffect, createMemo, createSignal, on, onCleanup } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/app/src/session/timeline/session-context-usage.tsx b/packages/app/src/session/timeline/session-context-usage.tsx index c8690f8f432..eaa8f5a5cd4 100644 --- a/packages/app/src/session/timeline/session-context-usage.tsx +++ b/packages/app/src/session/timeline/session-context-usage.tsx @@ -1,7 +1,7 @@ import { Show, createMemo, type ComponentProps, type JSX } from "solid-js" -import { ProgressCircle } from "@opencode-ai/ui/progress-circle" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { ProgressCircle } from "@opencode/ui/progress-circle" +import { IconButton } from "@opencode/ui/icon-button" +import { Tooltip } from "@opencode/ui/tooltip" import { createMediaQuery } from "@solid-primitives/media" import { useFile } from "@/workspaces/files/model" diff --git a/packages/app/src/session/timeline/session-workspace-menu.tsx b/packages/app/src/session/timeline/session-workspace-menu.tsx index f9ad1d42b59..3454c9641cb 100644 --- a/packages/app/src/session/timeline/session-workspace-menu.tsx +++ b/packages/app/src/session/timeline/session-workspace-menu.tsx @@ -1,6 +1,6 @@ -import { Menu } from "@opencode-ai/ui/menu" -import { Icon } from "@opencode-ai/ui/icon" -import { getFilename } from "@opencode-ai/util/path" +import { Menu } from "@opencode/ui/menu" +import { Icon } from "@opencode/ui/icon" +import { getFilename } from "@opencode/util/path" import { createStore } from "solid-js/store" import { createSignal, For, Show, type ComponentProps, type JSX } from "solid-js" import type { Project } from "@/runtime/server/types" diff --git a/packages/app/src/session/timeline/virtualizer.tsx b/packages/app/src/session/timeline/virtualizer.tsx index 9d5838f8cef..e00af2ba389 100644 --- a/packages/app/src/session/timeline/virtualizer.tsx +++ b/packages/app/src/session/timeline/virtualizer.tsx @@ -5,8 +5,8 @@ import { type Range, type VirtualItem, } from "@tanstack/solid-virtual" -import { isScrollKeyTarget, scrollKey, scrollKeyOwner, ScrollView } from "@opencode-ai/ui/scroll-view" -import { TimelineRow } from "@opencode-ai/session-ui/timeline/projection" +import { isScrollKeyTarget, scrollKey, scrollKeyOwner, ScrollView } from "@opencode/ui/scroll-view" +import { TimelineRow } from "@opencode/session-ui/timeline/projection" import { useLanguage } from "@/runtime/i18n/language" import { batch, diff --git a/packages/app/src/session/title.ts b/packages/app/src/session/title.ts index ccab3aa2e7f..6e52c3a3b22 100644 --- a/packages/app/src/session/title.ts +++ b/packages/app/src/session/title.ts @@ -1,5 +1,5 @@ -import type { SessionInfo } from "@opencode-ai/client/promise" -import { displayLabel } from "@opencode-ai/util/session-title-fallback" +import type { SessionInfo } from "@opencode/client/promise" +import { displayLabel } from "@opencode/util/session-title-fallback" const pattern = /^(New session|Child session) - \d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/ diff --git a/packages/app/src/session/usage-exceeded-dialogs.tsx b/packages/app/src/session/usage-exceeded-dialogs.tsx index 7b29a5c16f3..09e05d97de1 100644 --- a/packages/app/src/session/usage-exceeded-dialogs.tsx +++ b/packages/app/src/session/usage-exceeded-dialogs.tsx @@ -1,11 +1,11 @@ import { useWorkspaceLocation } from "@/workspaces/location" import { Persist, persisted } from "@/runtime/persistence/storage" -import type { SessionStatus } from "@opencode-ai/client/promise" +import type { SessionStatus } from "@opencode/client/promise" import { onCleanup } from "solid-js" import { Schema } from "effect" import { Persistence } from "@/runtime/persistence/schema" import { useSessionLayout } from "./session-layout" -import { useDialog, useI18n } from "@opencode-ai/ui/context" +import { useDialog, useI18n } from "@opencode/ui/context" import { DialogUsageExceeded } from "@/providers/connect/usage-exceeded" const GO_UPSELL_FREE_TIER_LAST_SEEN_AT = "go_upsell_last_seen_at" diff --git a/packages/app/src/session/use-session-hash-scroll.ts b/packages/app/src/session/use-session-hash-scroll.ts index 67271c3208c..2d3a8a8853e 100644 --- a/packages/app/src/session/use-session-hash-scroll.ts +++ b/packages/app/src/session/use-session-hash-scroll.ts @@ -1,4 +1,4 @@ -import type { SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageUser } from "@opencode/client/promise" import { useLocation, useNavigate } from "@solidjs/router" import { createEffect, createMemo, onCleanup, onMount } from "solid-js" import { messageIdFromHash } from "./message-id-from-hash" diff --git a/packages/app/src/settings/appearance/appearance.tsx b/packages/app/src/settings/appearance/appearance.tsx index 586f728d473..1d526788498 100644 --- a/packages/app/src/settings/appearance/appearance.tsx +++ b/packages/app/src/settings/appearance/appearance.tsx @@ -1,6 +1,6 @@ import { Component } from "solid-js" -import { Select } from "@opencode-ai/ui/select" -import { TextInput } from "@opencode-ai/ui/text-input" +import { Select } from "@opencode/ui/select" +import { TextInput } from "@opencode/ui/text-input" import { useLanguage } from "@/runtime/i18n/language" import { ExternalLink } from "@/runtime/platform/external-link" import { SettingsList } from "@/settings/list" diff --git a/packages/app/src/settings/experimental/experimental.tsx b/packages/app/src/settings/experimental/experimental.tsx index a83e2d8c645..fecb37fadbd 100644 --- a/packages/app/src/settings/experimental/experimental.tsx +++ b/packages/app/src/settings/experimental/experimental.tsx @@ -1,6 +1,6 @@ import { Component, Show } from "solid-js" -import { Select } from "@opencode-ai/ui/select" -import { Switch } from "@opencode-ai/ui/switch" +import { Select } from "@opencode/ui/select" +import { Switch } from "@opencode/ui/switch" import { useLanguage } from "@/runtime/i18n/language" import { usePlatform } from "@/runtime/platform/platform" import { SettingsList } from "@/settings/list" diff --git a/packages/app/src/settings/general/controllers.ts b/packages/app/src/settings/general/controllers.ts index c67e3ce8d47..8d878c43223 100644 --- a/packages/app/src/settings/general/controllers.ts +++ b/packages/app/src/settings/general/controllers.ts @@ -1,6 +1,6 @@ import { createMemo, createResource, onMount, type Accessor } from "solid-js" -import type { ColorScheme } from "@opencode-ai/ui/theme/context" -import { useTheme } from "@opencode-ai/ui/theme/context" +import type { ColorScheme } from "@opencode/ui/theme/context" +import { useTheme } from "@opencode/ui/theme/context" import { monoDefault, monoFontFamily, diff --git a/packages/app/src/settings/general/general.tsx b/packages/app/src/settings/general/general.tsx index f34397545b2..fbf0d9d01e0 100644 --- a/packages/app/src/settings/general/general.tsx +++ b/packages/app/src/settings/general/general.tsx @@ -1,9 +1,9 @@ import { Component, Show, createMemo, createResource } from "solid-js" import { createMediaQuery } from "@solid-primitives/media" -import { Button } from "@opencode-ai/ui/button" -import { Select } from "@opencode-ai/ui/select" -import { Switch } from "@opencode-ai/ui/switch" -import { TextInput } from "@opencode-ai/ui/text-input" +import { Button } from "@opencode/ui/button" +import { Select } from "@opencode/ui/select" +import { Switch } from "@opencode/ui/switch" +import { TextInput } from "@opencode/ui/text-input" import { TimelineDetailControl } from "@/settings/timeline-detail" import { useLanguage } from "@/runtime/i18n/language" import { usePlatform } from "@/runtime/platform/platform" diff --git a/packages/app/src/settings/keybinds/keybinds.tsx b/packages/app/src/settings/keybinds/keybinds.tsx index 3b65578c346..a6d03d5f144 100644 --- a/packages/app/src/settings/keybinds/keybinds.tsx +++ b/packages/app/src/settings/keybinds/keybinds.tsx @@ -1,9 +1,9 @@ import { For, Show, createMemo, lazy, onCleanup } from "solid-js" import { createStore } from "solid-js/store" import { makeEventListener } from "@solid-primitives/event-listener" -import { Button } from "@opencode-ai/ui/button" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { TextInput } from "@opencode-ai/ui/text-input" +import { Button } from "@opencode/ui/button" +import { IconButton } from "@opencode/ui/icon-button" +import { TextInput } from "@opencode/ui/text-input" import { showToast } from "@/shell/notifications/toast" import fuzzysort from "fuzzysort" import { DEFAULT_PALETTE_KEYBIND, formatKeybind, parseKeybind, useCommand } from "@/shell/commands/command" @@ -11,7 +11,7 @@ import { useLanguage } from "@/runtime/i18n/language" import { useSettings } from "@/settings/model" import { SettingsList } from "@/settings/list" -const Icon = lazy(() => import("@opencode-ai/ui/icon").then((module) => ({ default: module.Icon }))) +const Icon = lazy(() => import("@opencode/ui/icon").then((module) => ({ default: module.Icon }))) const IS_MAC = typeof navigator === "object" && /(Mac|iPod|iPhone|iPad)/.test(navigator.platform) const PALETTE_ID = "command.palette" diff --git a/packages/app/src/settings/model.test.ts b/packages/app/src/settings/model.test.ts index 554947ca9fe..e5fa21e7a12 100644 --- a/packages/app/src/settings/model.test.ts +++ b/packages/app/src/settings/model.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { Schema } from "effect" -import { timelinePresets } from "@opencode-ai/session-ui/timeline/detail" +import { timelinePresets } from "@opencode/session-ui/timeline/detail" import { Persistence } from "@/runtime/persistence/schema" import { settingsSchema, diff --git a/packages/app/src/settings/model.tsx b/packages/app/src/settings/model.tsx index 937a33226f9..5e627edfa7e 100644 --- a/packages/app/src/settings/model.tsx +++ b/packages/app/src/settings/model.tsx @@ -1,8 +1,8 @@ import { reconcile, unwrap } from "solid-js/store" import { createEffect, createMemo } from "solid-js" import { Effect, Option, Schema, SchemaGetter } from "effect" -import { createSimpleContext } from "@opencode-ai/ui/context" -import { timelinePresets, type TimelineCategory, type TimelineDetail } from "@opencode-ai/session-ui/timeline/detail" +import { createSimpleContext } from "@opencode/ui/context" +import { timelinePresets, type TimelineCategory, type TimelineDetail } from "@opencode/session-ui/timeline/detail" import { persisted } from "@/runtime/persistence/storage" import { Persistence } from "@/runtime/persistence/schema" import { ScopedKey, type ServerScope } from "@/runtime/server/scope" diff --git a/packages/app/src/settings/models/models.tsx b/packages/app/src/settings/models/models.tsx index d6930df6d5a..d51ccf1b262 100644 --- a/packages/app/src/settings/models/models.tsx +++ b/packages/app/src/settings/models/models.tsx @@ -1,9 +1,9 @@ -import { useFilteredList } from "@opencode-ai/ui/hooks" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" -import { Switch } from "@opencode-ai/ui/switch" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { TextInput } from "@opencode-ai/ui/text-input" +import { useFilteredList } from "@opencode/ui/hooks" +import { ProviderIcon } from "@opencode/ui/provider-icon" +import { Switch } from "@opencode/ui/switch" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { TextInput } from "@opencode/ui/text-input" import { type Component, For, Show } from "solid-js" import { Schema } from "effect" import { Persistence } from "@/runtime/persistence/schema" diff --git a/packages/app/src/settings/notifications/notifications.tsx b/packages/app/src/settings/notifications/notifications.tsx index 522f40cd166..9b891b16c18 100644 --- a/packages/app/src/settings/notifications/notifications.tsx +++ b/packages/app/src/settings/notifications/notifications.tsx @@ -1,6 +1,6 @@ import { Component } from "solid-js" -import { Select } from "@opencode-ai/ui/select" -import { Switch } from "@opencode-ai/ui/switch" +import { Select } from "@opencode/ui/select" +import { Switch } from "@opencode/ui/switch" import { useLanguage } from "@/runtime/i18n/language" import { useSettings } from "@/settings/model" import { SettingsList } from "@/settings/list" diff --git a/packages/app/src/settings/providers/extensions.tsx b/packages/app/src/settings/providers/extensions.tsx index 747adeebf2b..b34bebd9445 100644 --- a/packages/app/src/settings/providers/extensions.tsx +++ b/packages/app/src/settings/providers/extensions.tsx @@ -1,7 +1,7 @@ import { Component, For, createEffect, createMemo, createResource } from "solid-js" -import { Icon } from "@opencode-ai/ui/icon" -import { Switch } from "@opencode-ai/ui/switch" -import { Tabs } from "@opencode-ai/ui/tabs" +import { Icon } from "@opencode/ui/icon" +import { Switch } from "@opencode/ui/switch" +import { Tabs } from "@opencode/ui/tabs" import { useLanguage } from "@/runtime/i18n/language" import { useData } from "@/runtime/server/current" import { useServerSDK } from "@/runtime/server/client" diff --git a/packages/app/src/settings/providers/providers.tsx b/packages/app/src/settings/providers/providers.tsx index d1103de34f6..a9d841f53a2 100644 --- a/packages/app/src/settings/providers/providers.tsx +++ b/packages/app/src/settings/providers/providers.tsx @@ -1,7 +1,7 @@ -import { Button } from "@opencode-ai/ui/button" -import { Badge } from "@opencode-ai/ui/badge" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { Button } from "@opencode/ui/button" +import { Badge } from "@opencode/ui/badge" +import { useDialog } from "@opencode/ui/context/dialog" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { showToast } from "@/shell/notifications/toast" import { popularProviders, useProviders } from "@/providers/catalog/providers" import { useIntegrations } from "@/providers/catalog/integrations" diff --git a/packages/app/src/settings/server-select.tsx b/packages/app/src/settings/server-select.tsx index e9236034c1f..82941102d37 100644 --- a/packages/app/src/settings/server-select.tsx +++ b/packages/app/src/settings/server-select.tsx @@ -1,5 +1,5 @@ import { Show, createMemo, type Component } from "solid-js" -import { Select } from "@opencode-ai/ui/select" +import { Select } from "@opencode/ui/select" import { useGlobal } from "@/runtime/server/runtime" import { ServerConnection, serverName } from "@/runtime/server/registry" diff --git a/packages/app/src/settings/servers/servers.tsx b/packages/app/src/settings/servers/servers.tsx index 455dc62e06d..ddd769001fa 100644 --- a/packages/app/src/settings/servers/servers.tsx +++ b/packages/app/src/settings/servers/servers.tsx @@ -1,8 +1,8 @@ -import { Badge } from "@opencode-ai/ui/badge" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { TextInput } from "@opencode-ai/ui/text-input" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { Badge } from "@opencode/ui/badge" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { TextInput } from "@opencode/ui/text-input" +import { useDialog } from "@opencode/ui/context/dialog" import fuzzysort from "fuzzysort" import { type Component, For, Show, createMemo } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/app/src/settings/settings.css b/packages/app/src/settings/settings.css index 43a9ce4e9da..2ab7007b329 100644 --- a/packages/app/src/settings/settings.css +++ b/packages/app/src/settings/settings.css @@ -1,5 +1,5 @@ -@import "@opencode-ai/ui/text-input.css"; -@import "@opencode-ai/ui/button.css"; +@import "@opencode/ui/text-input.css"; +@import "@opencode/ui/button.css"; [data-component="tabs-v2"][data-variant="settings"] { height: 100%; diff --git a/packages/app/src/settings/shell.tsx b/packages/app/src/settings/shell.tsx index 589f113dde1..4c743985196 100644 --- a/packages/app/src/settings/shell.tsx +++ b/packages/app/src/settings/shell.tsx @@ -1,9 +1,9 @@ import { Component, createEffect, createMemo, For, Show, onMount, startTransition } from "solid-js" import { createStore } from "solid-js/store" -import { Tabs } from "@opencode-ai/ui/tabs" -import { Icon } from "@opencode-ai/ui/icon" -import { Menu } from "@opencode-ai/ui/menu" -import { Button } from "@opencode-ai/ui/button" +import { Tabs } from "@opencode/ui/tabs" +import { Icon } from "@opencode/ui/icon" +import { Menu } from "@opencode/ui/menu" +import { Button } from "@opencode/ui/button" import { useLanguage } from "@/runtime/i18n/language" import { SettingsGeneral } from "./general/general" import { SettingsAppearance } from "./appearance/appearance" @@ -18,7 +18,7 @@ import { SettingsProjects } from "./workspaces/projects" import { SettingsExtensions } from "./providers/extensions" import { SettingsAbout } from "./about/about" import { SettingsServerScope } from "./server-scope" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { useLayout } from "@/shell/state/layout" import { useTabs } from "@/shell/tabs/tabs" import { useGlobal, useServerCtx } from "@/runtime/server/runtime" diff --git a/packages/app/src/settings/surface.tsx b/packages/app/src/settings/surface.tsx index 1b7d9021f1c..c2188e39c71 100644 --- a/packages/app/src/settings/surface.tsx +++ b/packages/app/src/settings/surface.tsx @@ -1,6 +1,6 @@ import { useLocation, useNavigate } from "@solidjs/router" import { createEffect, on } from "solid-js" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { useLayout, type LayoutRoute } from "@/shell/state/layout" import { useCommand } from "@/shell/commands/command" diff --git a/packages/app/src/settings/timeline-detail.stories.tsx b/packages/app/src/settings/timeline-detail.stories.tsx index 7c0acda919b..1f0cc52edf3 100644 --- a/packages/app/src/settings/timeline-detail.stories.tsx +++ b/packages/app/src/settings/timeline-detail.stories.tsx @@ -1,7 +1,7 @@ import { Show } from "solid-js" import { createStore } from "solid-js/store" -import { Button } from "@opencode-ai/ui/button" -import { timelinePresets, type TimelineDetail } from "@opencode-ai/session-ui/timeline/detail" +import { Button } from "@opencode/ui/button" +import { timelinePresets, type TimelineDetail } from "@opencode/session-ui/timeline/detail" import { SettingsList } from "./list" import { TimelineDetailControl } from "./timeline-detail" import "./settings.css" diff --git a/packages/app/src/settings/timeline-detail.tsx b/packages/app/src/settings/timeline-detail.tsx index d4dc49a15cd..05a03bf2037 100644 --- a/packages/app/src/settings/timeline-detail.tsx +++ b/packages/app/src/settings/timeline-detail.tsx @@ -1,10 +1,10 @@ import { For, Show, createMemo, createUniqueId } from "solid-js" import { createStore } from "solid-js/store" -import { Collapsible } from "@opencode-ai/ui/collapsible" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Switch } from "@opencode-ai/ui/switch" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { Collapsible } from "@opencode/ui/collapsible" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Switch } from "@opencode/ui/switch" +import { Tooltip } from "@opencode/ui/tooltip" import { timelineCategories, timelinePreset, @@ -12,7 +12,7 @@ import { type TimelineCategory, type TimelineDetail, type TimelinePlacement, -} from "@opencode-ai/session-ui/timeline/detail" +} from "@opencode/session-ui/timeline/detail" import { useLanguage } from "@/runtime/i18n/language" import "./timeline-detail.css" diff --git a/packages/app/src/settings/workspaces/project-dialog.tsx b/packages/app/src/settings/workspaces/project-dialog.tsx index 7d8232c4857..c500f592a81 100644 --- a/packages/app/src/settings/workspaces/project-dialog.tsx +++ b/packages/app/src/settings/workspaces/project-dialog.tsx @@ -1,11 +1,11 @@ -import { Button } from "@opencode-ai/ui/button" -import { Dialog, DialogFooter } from "@opencode-ai/ui/dialog" -import { Field } from "@opencode-ai/ui/field" -import { Icon } from "@opencode-ai/ui/icon" -import { ProjectAvatar, PROJECT_AVATAR_VARIANTS } from "@opencode-ai/ui/project-avatar" -import { Tabs } from "@opencode-ai/ui/tabs" -import { Textarea } from "@opencode-ai/ui/textarea" -import { TextInput } from "@opencode-ai/ui/text-input" +import { Button } from "@opencode/ui/button" +import { Dialog, DialogFooter } from "@opencode/ui/dialog" +import { Field } from "@opencode/ui/field" +import { Icon } from "@opencode/ui/icon" +import { ProjectAvatar, PROJECT_AVATAR_VARIANTS } from "@opencode/ui/project-avatar" +import { Tabs } from "@opencode/ui/tabs" +import { Textarea } from "@opencode/ui/textarea" +import { TextInput } from "@opencode/ui/text-input" import { For, Show, createSignal, startTransition } from "solid-js" import { useLanguage } from "@/runtime/i18n/language" import { getProjectAvatarVariant, type LocalProject } from "@/shell/state/layout" diff --git a/packages/app/src/settings/workspaces/project-extensions.tsx b/packages/app/src/settings/workspaces/project-extensions.tsx index 90018bdab45..67dc78dcc2e 100644 --- a/packages/app/src/settings/workspaces/project-extensions.tsx +++ b/packages/app/src/settings/workspaces/project-extensions.tsx @@ -1,6 +1,6 @@ -import { Icon } from "@opencode-ai/ui/icon" -import { Switch } from "@opencode-ai/ui/switch" -import { Tabs } from "@opencode-ai/ui/tabs" +import { Icon } from "@opencode/ui/icon" +import { Switch } from "@opencode/ui/switch" +import { Tabs } from "@opencode/ui/tabs" import { type Component, For, Show, createEffect, createMemo, createResource, createSignal, type JSX } from "solid-js" import { useLanguage } from "@/runtime/i18n/language" import { useMcpToggle } from "@/providers/connect/mcp" diff --git a/packages/app/src/settings/workspaces/project-model.ts b/packages/app/src/settings/workspaces/project-model.ts index f63d6ae1c86..fcf6b90ab53 100644 --- a/packages/app/src/settings/workspaces/project-model.ts +++ b/packages/app/src/settings/workspaces/project-model.ts @@ -1,5 +1,5 @@ -import { getFilename } from "@opencode-ai/util/path" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { getFilename } from "@opencode/util/path" +import { useDialog } from "@opencode/ui/context/dialog" import { useMutation } from "@tanstack/solid-query" import { createMemo } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/app/src/settings/workspaces/projects.tsx b/packages/app/src/settings/workspaces/projects.tsx index 2f98fdfa414..17bfa636855 100644 --- a/packages/app/src/settings/workspaces/projects.tsx +++ b/packages/app/src/settings/workspaces/projects.tsx @@ -1,7 +1,7 @@ import { Component, For, Show, createMemo, createSignal } from "solid-js" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Icon } from "@opencode-ai/ui/icon" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { IconButton } from "@opencode/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { useDialog } from "@opencode/ui/context/dialog" import { useLanguage } from "@/runtime/i18n/language" import { useGlobal } from "@/runtime/server/runtime" import { ServerConnection, serverName } from "@/runtime/server/registry" diff --git a/packages/app/src/settings/workspaces/workspaces.tsx b/packages/app/src/settings/workspaces/workspaces.tsx index e8a582343c7..eaf9a3b6c19 100644 --- a/packages/app/src/settings/workspaces/workspaces.tsx +++ b/packages/app/src/settings/workspaces/workspaces.tsx @@ -3,16 +3,16 @@ import { For, Show, createEffect, createMemo, createSignal } from "solid-js" import { createStore } from "solid-js/store" import { createResizeObserver } from "@solid-primitives/resize-observer" import { Key } from "@solid-primitives/keyed" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import { useQuery } from "@tanstack/solid-query" -import { Button } from "@opencode-ai/ui/button" -import { Dialog, DialogFooter, DialogHeader, DialogTitleGroup } from "@opencode-ai/ui/dialog" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Menu } from "@opencode-ai/ui/menu" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { getFilename } from "@opencode-ai/util/path" +import { Button } from "@opencode/ui/button" +import { Dialog, DialogFooter, DialogHeader, DialogTitleGroup } from "@opencode/ui/dialog" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Menu } from "@opencode/ui/menu" +import { Tooltip } from "@opencode/ui/tooltip" +import { useDialog } from "@opencode/ui/context/dialog" +import { getFilename } from "@opencode/util/path" import { useLanguage } from "@/runtime/i18n/language" import { useServerSDK } from "@/runtime/server/client" import { useData } from "@/runtime/server/current" diff --git a/packages/app/src/shell/commands/command.tsx b/packages/app/src/shell/commands/command.tsx index 4801d3e7243..494c0e77582 100644 --- a/packages/app/src/shell/commands/command.tsx +++ b/packages/app/src/shell/commands/command.tsx @@ -1,5 +1,5 @@ -import { createSimpleContext } from "@opencode-ai/ui/context" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { createSimpleContext } from "@opencode/ui/context" +import { useDialog } from "@opencode/ui/context/dialog" import { type Accessor, createEffect, createMemo, onCleanup, onMount } from "solid-js" import { createStore } from "solid-js/store" import { Schema } from "effect" diff --git a/packages/app/src/shell/commands/dialog.tsx b/packages/app/src/shell/commands/dialog.tsx index 98949d36f76..0199a9b5325 100644 --- a/packages/app/src/shell/commands/dialog.tsx +++ b/packages/app/src/shell/commands/dialog.tsx @@ -1,10 +1,10 @@ -import { getDirectory, getFilename } from "@opencode-ai/util/path" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { ScrollView } from "@opencode-ai/ui/scroll-view" -import { Dialog, DialogBody } from "@opencode-ai/ui/dialog" -import { Icon } from "@opencode-ai/ui/icon" -import { Keybind } from "@opencode-ai/ui/keybind" -import { TextInput } from "@opencode-ai/ui/text-input" +import { getDirectory, getFilename } from "@opencode/util/path" +import { FileIcon } from "@opencode/ui/file-icon" +import { ScrollView } from "@opencode/ui/scroll-view" +import { Dialog, DialogBody } from "@opencode/ui/dialog" +import { Icon } from "@opencode/ui/icon" +import { Keybind } from "@opencode/ui/keybind" +import { TextInput } from "@opencode/ui/text-input" import { createEffect, createMemo, For, Match, Show, Switch } from "solid-js" import { createStore } from "solid-js/store" import { formatKeybindParts } from "@/shell/commands/command" diff --git a/packages/app/src/shell/commands/palette.ts b/packages/app/src/shell/commands/palette.ts index 7b204a3c02d..fa886c4a5bd 100644 --- a/packages/app/src/shell/commands/palette.ts +++ b/packages/app/src/shell/commands/palette.ts @@ -1,7 +1,7 @@ -import { getFilename } from "@opencode-ai/util/path" +import { getFilename } from "@opencode/util/path" import type { Project } from "@/runtime/server/types" -import type { SessionInfo } from "@opencode-ai/client/promise" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import type { SessionInfo } from "@opencode/client/promise" +import { useDialog } from "@opencode/ui/context/dialog" import { createMemo, onCleanup } from "solid-js" import { commandPaletteOptions, useCommand, type CommandOption } from "@/shell/commands/command" import { useFile } from "@/workspaces/files/model" diff --git a/packages/app/src/shell/debug/debug-bar.tsx b/packages/app/src/shell/debug/debug-bar.tsx index 9db2c5307a3..3880c4349e9 100644 --- a/packages/app/src/shell/debug/debug-bar.tsx +++ b/packages/app/src/shell/debug/debug-bar.tsx @@ -2,7 +2,7 @@ import { useIsRouting, useLocation } from "@solidjs/router" import { batch, createEffect, onCleanup, onMount, Show } from "solid-js" import { createStore } from "solid-js/store" import { makeEventListener } from "@solid-primitives/event-listener" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { Tooltip } from "@opencode/ui/tooltip" import { useLanguage } from "@/runtime/i18n/language" import { usePlatform } from "@/runtime/platform/platform" diff --git a/packages/app/src/shell/errors/error.tsx b/packages/app/src/shell/errors/error.tsx index 69ef5477d29..6d05d34afa7 100644 --- a/packages/app/src/shell/errors/error.tsx +++ b/packages/app/src/shell/errors/error.tsx @@ -1,12 +1,12 @@ -import { TextField } from "@opencode-ai/ui/text-field" +import { TextField } from "@opencode/ui/text-field" import type { captureException } from "@sentry/solid" -import { Logo } from "@opencode-ai/ui/logo" -import { Button } from "@opencode-ai/ui/button" +import { Logo } from "@opencode/ui/logo" +import { Button } from "@opencode/ui/button" import { Component, createSignal, onMount, Show } from "solid-js" import { createStore } from "solid-js/store" import { usePlatform } from "@/runtime/platform/platform" import { useLanguage } from "@/runtime/i18n/language" -import { Icon } from "@opencode-ai/ui/icon" +import { Icon } from "@opencode/ui/icon" import { errorDescriptionKey, errorStatus } from "./description" export type InitError = { diff --git a/packages/app/src/shell/layout/helpers.test.ts b/packages/app/src/shell/layout/helpers.test.ts index b000c4bc890..93cbb42864e 100644 --- a/packages/app/src/shell/layout/helpers.test.ts +++ b/packages/app/src/shell/layout/helpers.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import { childSessionOnPath, closeHomeProject, diff --git a/packages/app/src/shell/layout/helpers.ts b/packages/app/src/shell/layout/helpers.ts index b83424d806e..1987b5d46db 100644 --- a/packages/app/src/shell/layout/helpers.ts +++ b/packages/app/src/shell/layout/helpers.ts @@ -1,5 +1,5 @@ -import { getFilename } from "@opencode-ai/util/path" -import type { SessionInfo } from "@opencode-ai/client/promise" +import { getFilename } from "@opencode/util/path" +import type { SessionInfo } from "@opencode/client/promise" import { pathKey } from "@/workspaces/path-key" import { isProjectDirectory } from "@/workspaces/paths" import type { ServerConnection } from "@/runtime/server/registry" diff --git a/packages/app/src/shell/layout/project-icon.tsx b/packages/app/src/shell/layout/project-icon.tsx index e7218ce42b1..87c028f100a 100644 --- a/packages/app/src/shell/layout/project-icon.tsx +++ b/packages/app/src/shell/layout/project-icon.tsx @@ -1,4 +1,4 @@ -import { ProjectAvatar, type ProjectAvatarProps } from "@opencode-ai/ui/project-avatar" +import { ProjectAvatar, type ProjectAvatarProps } from "@opencode/ui/project-avatar" import { splitProps } from "solid-js" import { displayName, getProjectAvatarSource } from "@/shell/layout/helpers" import { getProjectAvatarVariant, type LocalProject } from "@/shell/state/layout" diff --git a/packages/app/src/shell/layout/session-tab-avatar.tsx b/packages/app/src/shell/layout/session-tab-avatar.tsx index 93d10fe3b43..f6c6fa8458d 100644 --- a/packages/app/src/shell/layout/session-tab-avatar.tsx +++ b/packages/app/src/shell/layout/session-tab-avatar.tsx @@ -2,8 +2,8 @@ import { getProjectAvatarVariant, type LocalProject } from "@/shell/state/layout import type { ServerConnection } from "@/runtime/server/registry" import { displayName, getProjectAvatarSource } from "@/shell/layout/helpers" import { useSessionTabAvatarState } from "@/shell/layout/project-avatar-state" -import { ProjectAvatar } from "@opencode-ai/ui/project-avatar" -import { SessionProgressIndicatorV2 } from "@opencode-ai/session-ui/v2/session-progress-indicator-v2" +import { ProjectAvatar } from "@opencode/ui/project-avatar" +import { SessionProgressIndicatorV2 } from "@opencode/session-ui/v2/session-progress-indicator-v2" import { Show } from "solid-js" export function SessionTabAvatar(props: { diff --git a/packages/app/src/shell/mobile-panel-drawer.tsx b/packages/app/src/shell/mobile-panel-drawer.tsx index fefbbaaf1da..c6e44ebaaa2 100644 --- a/packages/app/src/shell/mobile-panel-drawer.tsx +++ b/packages/app/src/shell/mobile-panel-drawer.tsx @@ -1,5 +1,5 @@ import type { ParentProps } from "solid-js" -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" import { useLanguage } from "@/runtime/i18n/language" import { MobileDrawer, MobileDrawerClose, MobileDrawerContent, MobileDrawerLabel } from "./mobile-drawer" import "./mobile-panel-drawer.css" diff --git a/packages/app/src/shell/notifications/notification.tsx b/packages/app/src/shell/notifications/notification.tsx index a4bcdd754cb..69b833f3d8b 100644 --- a/packages/app/src/shell/notifications/notification.tsx +++ b/packages/app/src/shell/notifications/notification.tsx @@ -1,10 +1,10 @@ import { createStore, reconcile } from "solid-js/store" import { Schema } from "effect" -import { SessionError } from "@opencode-ai/schema/session-error" +import { SessionError } from "@opencode/schema/session-error" import { type Accessor, batch, createEffect, createMemo, createRoot, getOwner, onCleanup } from "solid-js" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import type { ServerSDK } from "@/runtime/server/client" -import type { Data } from "@opencode-ai/client/solid" +import type { Data } from "@opencode/client/solid" import { usePlatform } from "@/runtime/platform/platform" import { useLanguage } from "@/runtime/i18n/language" import { useSettings } from "@/settings/model" diff --git a/packages/app/src/shell/notifications/toast.tsx b/packages/app/src/shell/notifications/toast.tsx index f3571179c1b..8520b3368e0 100644 --- a/packages/app/src/shell/notifications/toast.tsx +++ b/packages/app/src/shell/notifications/toast.tsx @@ -1,5 +1,5 @@ -import { Icon, type IconProps } from "@opencode-ai/ui/icon" -import { Toast, showToast, toaster, type ToastOptions } from "@opencode-ai/ui/toast" +import { Icon, type IconProps } from "@opencode/ui/icon" +import { Toast, showToast, toaster, type ToastOptions } from "@opencode/ui/toast" import type { JSX } from "solid-js" type AppToastOptions = Omit & { diff --git a/packages/app/src/shell/routes/routes.tsx b/packages/app/src/shell/routes/routes.tsx index dacfe431128..3f6afa1c862 100644 --- a/packages/app/src/shell/routes/routes.tsx +++ b/packages/app/src/shell/routes/routes.tsx @@ -11,7 +11,7 @@ import { SettingsSurfaceProvider } from "@/settings/surface" import Shell from "@/shell/shell" import { requireServerKey } from "./session" -export const File = lazy(() => import("@opencode-ai/session-ui/file").then((module) => ({ default: module.File }))) +export const File = lazy(() => import("@opencode/session-ui/file").then((module) => ({ default: module.File }))) const loadSessionRoute = () => Promise.all([import("@/session/route"), File.preload()]).then(([module]) => module) const DraftRoute = lazy(() => import("@/new-session/route").then((module) => ({ default: module.DraftRoute }))) const SettingsScreen = lazy(() => import("@/settings/shell").then((module) => ({ default: module.SettingsScreen }))) diff --git a/packages/app/src/shell/routes/session-ui-provider.tsx b/packages/app/src/shell/routes/session-ui-provider.tsx index 6ab59b9f89c..bb45b941416 100644 --- a/packages/app/src/shell/routes/session-ui-provider.tsx +++ b/packages/app/src/shell/routes/session-ui-provider.tsx @@ -1,5 +1,5 @@ -import { DataProvider } from "@opencode-ai/session-ui/context" -import { MarkdownProvider, type ReadMarkdownImage } from "@opencode-ai/session-ui/context/markdown" +import { DataProvider } from "@opencode/session-ui/context" +import { MarkdownProvider, type ReadMarkdownImage } from "@opencode/session-ui/context/markdown" import { useNavigate, useParams } from "@solidjs/router" import { createMemo, type ParentProps } from "solid-js" import { useProviders } from "@/providers/catalog/providers" diff --git a/packages/app/src/shell/routes/session.ts b/packages/app/src/shell/routes/session.ts index 01c8b9e47ae..7885def0de3 100644 --- a/packages/app/src/shell/routes/session.ts +++ b/packages/app/src/shell/routes/session.ts @@ -1,4 +1,4 @@ -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { ServerConnection } from "@/runtime/server/registry" import { decode64 } from "@/runtime/persistence/base64" diff --git a/packages/app/src/shell/shell.tsx b/packages/app/src/shell/shell.tsx index d02237ab73e..2c084c1cdf6 100644 --- a/packages/app/src/shell/shell.tsx +++ b/packages/app/src/shell/shell.tsx @@ -1,7 +1,7 @@ import { lazy, Show, Suspense, type ParentProps } from "solid-js" import { createStore } from "solid-js/store" import { createMediaQuery } from "@solid-primitives/media" -import { ResizeHandle } from "@opencode-ai/ui/resize-handle" +import { ResizeHandle } from "@opencode/ui/resize-handle" import { Titlebar, type TitlebarUpdate } from "@/shell/titlebar/titlebar" import { usePlatform } from "@/runtime/platform/platform" import { ToastRegion } from "@/shell/notifications/toast" diff --git a/packages/app/src/shell/state/layout.tsx b/packages/app/src/shell/state/layout.tsx index 9ad44297ac9..1210923b49e 100644 --- a/packages/app/src/shell/state/layout.tsx +++ b/packages/app/src/shell/state/layout.tsx @@ -2,7 +2,7 @@ import { createStore, produce, reconcile } from "solid-js/store" import { Schema, SchemaGetter } from "effect" import { batch, createEffect, createMemo, onCleanup, onMount, type Accessor } from "solid-js" import { useLocation } from "@solidjs/router" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { makeEventListener } from "@solid-primitives/event-listener" import { ServerConnection, useServers } from "@/runtime/server/registry" import { usePlatform } from "@/runtime/platform/platform" @@ -14,7 +14,7 @@ import { decode64 } from "@/runtime/persistence/base64" import { same } from "@/runtime/persistence/equality" import { createScrollPersistence, type SessionScroll } from "./scroll" import { createPathHelpers } from "@/workspaces/files/path" -import type { ProjectAvatarVariant } from "@opencode-ai/ui/project-avatar" +import type { ProjectAvatarVariant } from "@opencode/ui/project-avatar" import { SessionStateKey } from "@/runtime/server/scope" import { createSessionKeyReader, ensureSessionKey, pruneSessionKeys } from "./helpers" import { requireServerKey } from "@/shell/routes/session" diff --git a/packages/app/src/shell/status/body.tsx b/packages/app/src/shell/status/body.tsx index 48a8c7fcad1..ff3812c9a1b 100644 --- a/packages/app/src/shell/status/body.tsx +++ b/packages/app/src/shell/status/body.tsx @@ -1,5 +1,5 @@ -import { Switch } from "@opencode-ai/ui/switch" -import { Tabs } from "@opencode-ai/ui/tabs" +import { Switch } from "@opencode/ui/switch" +import { Tabs } from "@opencode/ui/tabs" import { createMemo, createResource, For, Index, type JSXElement, Show } from "solid-js" import { useLanguage } from "@/runtime/i18n/language" import { useMcpToggle } from "@/providers/connect/mcp" diff --git a/packages/app/src/shell/status/indicator.ts b/packages/app/src/shell/status/indicator.ts index 3a93f24e0fc..723e68161f8 100644 --- a/packages/app/src/shell/status/indicator.ts +++ b/packages/app/src/shell/status/indicator.ts @@ -1,5 +1,5 @@ import type { LspStatus } from "@/runtime/server/types" -import type { McpServer } from "@opencode-ai/client/promise" +import type { McpServer } from "@opencode/client/promise" export function hasServiceNeedingAttention(input: { mcp: Array }) { return input.mcp.some((status) => status === "needs_auth") diff --git a/packages/app/src/shell/status/status-popover.tsx b/packages/app/src/shell/status/status-popover.tsx index ca3688a9960..e5208110993 100644 --- a/packages/app/src/shell/status/status-popover.tsx +++ b/packages/app/src/shell/status/status-popover.tsx @@ -1,6 +1,6 @@ -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Popover } from "@opencode-ai/ui/popover" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Popover } from "@opencode/ui/popover" import { Suspense, createMemo, createSignal, lazy, Show, type JSX } from "solid-js" import { useLanguage } from "@/runtime/i18n/language" import { useGlobal } from "@/runtime/server/runtime" diff --git a/packages/app/src/shell/tabs/tabs.tsx b/packages/app/src/shell/tabs/tabs.tsx index 68fefd6e0bd..648cc6fd127 100644 --- a/packages/app/src/shell/tabs/tabs.tsx +++ b/packages/app/src/shell/tabs/tabs.tsx @@ -1,6 +1,6 @@ -import type { SessionInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionInfo, SessionMessageUser } from "@opencode/client/promise" import type { ComposerSelection } from "@/composer/adapter" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { createStore, produce } from "solid-js/store" import { Persist, persisted, removePersisted, draftPersistedKeys } from "@/runtime/persistence/storage" import { ServerConnection, useServers } from "@/runtime/server/registry" diff --git a/packages/app/src/shell/titlebar/tab-nav.tsx b/packages/app/src/shell/titlebar/tab-nav.tsx index 5806a654d8b..e6479e0e5ee 100644 --- a/packages/app/src/shell/titlebar/tab-nav.tsx +++ b/packages/app/src/shell/titlebar/tab-nav.tsx @@ -3,16 +3,16 @@ import { createStore } from "solid-js/store" import { makeEventListener } from "@solid-primitives/event-listener" import { createResizeObserver } from "@solid-primitives/resize-observer" import { createMutation } from "@tanstack/solid-query" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Icon } from "@opencode-ai/ui/icon" -import { Menu } from "@opencode-ai/ui/menu" +import { IconButton } from "@opencode/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { Menu } from "@opencode/ui/menu" import { useGlobal, useServerCtx } from "@/runtime/server/runtime" import { useLanguage } from "@/runtime/i18n/language" import { ServerConnection, serverName, useServers } from "@/runtime/server/registry" import { displayName, projectForSession } from "@/shell/layout/helpers" import { SessionTabAvatar } from "@/shell/layout/session-tab-avatar" -import { SessionProgressIndicatorV2 } from "@opencode-ai/session-ui/v2/session-progress-indicator-v2" -import type { SessionInfo } from "@opencode-ai/client/promise" +import { SessionProgressIndicatorV2 } from "@opencode/session-ui/v2/session-progress-indicator-v2" +import type { SessionInfo } from "@opencode/client/promise" import { sessionTabTitle } from "./tab-title" import { useSettings } from "@/settings/model" import { canOpenTabRename, forwardTabRef } from "./tab-gesture" diff --git a/packages/app/src/shell/titlebar/tab-strip.tsx b/packages/app/src/shell/titlebar/tab-strip.tsx index 2e03bf3e8f5..75ae584ace3 100644 --- a/packages/app/src/shell/titlebar/tab-strip.tsx +++ b/packages/app/src/shell/titlebar/tab-strip.tsx @@ -14,11 +14,11 @@ import { useLanguage } from "@/runtime/i18n/language" import { useCommand } from "@/shell/commands/command" import { useTabs } from "@/shell/tabs/tabs" import { createTabComposerState } from "@/composer/persistence" -import { base64Encode } from "@opencode-ai/util/encode" +import { base64Encode } from "@opencode/util/encode" import { showToast } from "@/shell/notifications/toast" import { canStartTabDrag, isTabCloseTarget } from "./tab-gesture" import { adjacentTabKey, mergeVisibleTabOrder } from "./tab-order" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" function SessionTabSlot(props: { tab: SessionTab diff --git a/packages/app/src/shell/titlebar/tab-title.ts b/packages/app/src/shell/titlebar/tab-title.ts index 105fca2e675..99f25db31e1 100644 --- a/packages/app/src/shell/titlebar/tab-title.ts +++ b/packages/app/src/shell/titlebar/tab-title.ts @@ -1,4 +1,4 @@ -import { isFallbackTitle } from "@opencode-ai/util/session-title-fallback" +import { isFallbackTitle } from "@opencode/util/session-title-fallback" // Draft, preparing, and untitled session tabs share one localized label. export function sessionTabTitle(title: string | undefined, fallback: string) { diff --git a/packages/app/src/shell/titlebar/titlebar.tsx b/packages/app/src/shell/titlebar/titlebar.tsx index 83a4b5c62b7..435b53023de 100644 --- a/packages/app/src/shell/titlebar/titlebar.tsx +++ b/packages/app/src/shell/titlebar/titlebar.tsx @@ -2,10 +2,10 @@ import { createEffect, createMemo, createResource, Match, Show, Switch, untrack import { createStore, unwrap } from "solid-js/store" import { Dynamic, Portal } from "solid-js/web" import { useLocation, useNavigate } from "@solidjs/router" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Icon } from "@opencode-ai/ui/icon" -import { Keybind } from "@opencode-ai/ui/keybind" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { IconButton } from "@opencode/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { Keybind } from "@opencode/ui/keybind" +import { Tooltip } from "@opencode/ui/tooltip" import { LayoutRoute, useLayout } from "@/shell/state/layout" import { usePlatform } from "@/runtime/platform/platform" @@ -28,7 +28,7 @@ import { TitlebarRightMount } from "@/shell/titlebar/right-slot" import { MobileDrawer, MobileDrawerContent, MobileDrawerLabel, MobileDrawerTrigger } from "@/shell/mobile-drawer" import { sessionTabTitle } from "./tab-title" import { SessionTabAvatar } from "@/shell/layout/session-tab-avatar" -import { SessionProgressIndicatorV2 } from "@opencode-ai/session-ui/v2/session-progress-indicator-v2" +import { SessionProgressIndicatorV2 } from "@opencode/session-ui/v2/session-progress-indicator-v2" import { projectForSession } from "@/shell/layout/helpers" import { useSettingsDialog } from "@/settings/command" import devIcon from "../../../../desktop/icons/dev/64x64.png" diff --git a/packages/app/src/shell/titlebar/windows-menu.tsx b/packages/app/src/shell/titlebar/windows-menu.tsx index 6e023880286..30b85a6454b 100644 --- a/packages/app/src/shell/titlebar/windows-menu.tsx +++ b/packages/app/src/shell/titlebar/windows-menu.tsx @@ -1,8 +1,8 @@ import { makeEventListener } from "@solid-primitives/event-listener" import { For, onMount, type JSX } from "solid-js" -import { Menu } from "@opencode-ai/ui/menu" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" +import { Menu } from "@opencode/ui/menu" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" import { matchKeybind, parseKeybind, useCommand } from "@/shell/commands/command" import { diff --git a/packages/app/src/shell/updates/highlights.tsx b/packages/app/src/shell/updates/highlights.tsx index 801e97e60b6..8896833235e 100644 --- a/packages/app/src/shell/updates/highlights.tsx +++ b/packages/app/src/shell/updates/highlights.tsx @@ -1,8 +1,8 @@ import { createEffect, onCleanup } from "solid-js" import { createStore } from "solid-js/store" import { Schema } from "effect" -import { createSimpleContext } from "@opencode-ai/ui/context" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { createSimpleContext } from "@opencode/ui/context" +import { useDialog } from "@opencode/ui/context/dialog" import { usePlatform } from "@/runtime/platform/platform" import { useSettings } from "@/settings/model" import { persisted } from "@/runtime/persistence/storage" diff --git a/packages/app/src/shell/updates/release-notes.tsx b/packages/app/src/shell/updates/release-notes.tsx index daee0a30ccb..96a8dfcb34a 100644 --- a/packages/app/src/shell/updates/release-notes.tsx +++ b/packages/app/src/shell/updates/release-notes.tsx @@ -1,7 +1,7 @@ import { createSignal, Index, Show } from "solid-js" -import { Dialog } from "@opencode-ai/ui/dialog" -import { Button } from "@opencode-ai/ui/button" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { Dialog } from "@opencode/ui/dialog" +import { Button } from "@opencode/ui/button" +import { useDialog } from "@opencode/ui/context/dialog" import { useLanguage } from "@/runtime/i18n/language" import { useSettings } from "@/settings/model" diff --git a/packages/app/src/workspaces/create.test.ts b/packages/app/src/workspaces/create.test.ts index 7e5c3ad1d32..dee9e8ca64e 100644 --- a/packages/app/src/workspaces/create.test.ts +++ b/packages/app/src/workspaces/create.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" -import { OpenCode } from "@opencode-ai/client/promise" -import { createData } from "@opencode-ai/client/solid" +import { OpenCode } from "@opencode/client/promise" +import { createData } from "@opencode/client/solid" import { createRoot } from "solid-js" import { createWorktree } from "./create" diff --git a/packages/app/src/workspaces/create.ts b/packages/app/src/workspaces/create.ts index cb538dcd0cf..70fbe6c397d 100644 --- a/packages/app/src/workspaces/create.ts +++ b/packages/app/src/workspaces/create.ts @@ -1,5 +1,5 @@ -import type { LocationGetOutput, OpenCodeClient } from "@opencode-ai/client/promise" -import type { Data } from "@opencode-ai/client/solid" +import type { LocationGetOutput, OpenCodeClient } from "@opencode/client/promise" +import type { Data } from "@opencode/client/solid" export async function createWorktree(input: { api: Pick diff --git a/packages/app/src/workspaces/files/model.tsx b/packages/app/src/workspaces/files/model.tsx index 85bfbf203ae..5d532690d37 100644 --- a/packages/app/src/workspaces/files/model.tsx +++ b/packages/app/src/workspaces/files/model.tsx @@ -1,10 +1,10 @@ import { batch, createEffect, createMemo, onCleanup } from "solid-js" import { createStore, produce, reconcile } from "solid-js/store" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { showToast } from "@/shell/notifications/toast" import { useParams } from "@solidjs/router" -import { base64Encode } from "@opencode-ai/util/encode" -import { getFilename } from "@opencode-ai/util/path" +import { base64Encode } from "@opencode/util/encode" +import { getFilename } from "@opencode/util/path" import { useWorkspaceLocation } from "@/workspaces/location" import { useLanguage } from "@/runtime/i18n/language" import { useLayout } from "@/shell/state/layout" diff --git a/packages/app/src/workspaces/files/watcher.test.ts b/packages/app/src/workspaces/files/watcher.test.ts index 4a43983aa75..a9f50f4c694 100644 --- a/packages/app/src/workspaces/files/watcher.test.ts +++ b/packages/app/src/workspaces/files/watcher.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { OpenCodeEvent } from "@opencode-ai/client/promise" +import type { OpenCodeEvent } from "@opencode/client/promise" import { invalidateFromWatcher } from "./watcher" type FilesystemEvent = Extract diff --git a/packages/app/src/workspaces/files/watcher.ts b/packages/app/src/workspaces/files/watcher.ts index 5209a3e9a24..a77b2e4a950 100644 --- a/packages/app/src/workspaces/files/watcher.ts +++ b/packages/app/src/workspaces/files/watcher.ts @@ -1,5 +1,5 @@ import type { FileNode } from "@/runtime/server/types" -import type { OpenCodeEvent } from "@opencode-ai/client/promise" +import type { OpenCodeEvent } from "@opencode/client/promise" type WatcherEvent = Extract diff --git a/packages/app/src/workspaces/inventory.test.ts b/packages/app/src/workspaces/inventory.test.ts index af1ef5b60dc..88cad6d5f7f 100644 --- a/packages/app/src/workspaces/inventory.test.ts +++ b/packages/app/src/workspaces/inventory.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { QueryClient } from "@tanstack/solid-query" -import type { WorktreeDirectory } from "@opencode-ai/client/promise" +import type { WorktreeDirectory } from "@opencode/client/promise" import { createWorktreeInventory, withWorktreeInventory, worktreeInventoryKey } from "./inventory" import { ServerScope } from "@/runtime/server/scope" import { normalizeProjectInfo, updateProjectInfo } from "@/runtime/server/global-sync/utils" diff --git a/packages/app/src/workspaces/inventory.ts b/packages/app/src/workspaces/inventory.ts index 6016745fab8..e40f374f354 100644 --- a/packages/app/src/workspaces/inventory.ts +++ b/packages/app/src/workspaces/inventory.ts @@ -1,5 +1,5 @@ import type { QueryClient } from "@tanstack/solid-query" -import type { WorktreeDirectory } from "@opencode-ai/client/promise" +import type { WorktreeDirectory } from "@opencode/client/promise" import type { ServerApi } from "@/runtime/server/api" import type { ServerScope } from "@/runtime/server/scope" import type { Project } from "@/runtime/server/types" diff --git a/packages/app/src/workspaces/location.tsx b/packages/app/src/workspaces/location.tsx index 056247b10a9..70a25f24d03 100644 --- a/packages/app/src/workspaces/location.tsx +++ b/packages/app/src/workspaces/location.tsx @@ -1,6 +1,6 @@ -import { createSimpleContext } from "@opencode-ai/ui/context" -import type { LocationGetOutput, LocationRef } from "@opencode-ai/client/promise" -import { retry } from "@opencode-ai/util/retry" +import { createSimpleContext } from "@opencode/ui/context" +import type { LocationGetOutput, LocationRef } from "@opencode/client/promise" +import { retry } from "@opencode/util/retry" import { type Accessor, createEffect, createMemo, onCleanup } from "solid-js" import { type LocationContext, useServerSDK } from "@/runtime/server/client" import { useData, useServer } from "@/runtime/server/current" diff --git a/packages/app/src/workspaces/paths.test.ts b/packages/app/src/workspaces/paths.test.ts index d8113350ed0..bb20e6cbe3e 100644 --- a/packages/app/src/workspaces/paths.test.ts +++ b/packages/app/src/workspaces/paths.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import { filterWorkspaceInventory, inspectWorkspaceDeletion, diff --git a/packages/app/src/workspaces/paths.ts b/packages/app/src/workspaces/paths.ts index 9ffb6d98baa..2ed98693bd2 100644 --- a/packages/app/src/workspaces/paths.ts +++ b/packages/app/src/workspaces/paths.ts @@ -1,6 +1,6 @@ import { pathKey } from "@/workspaces/path-key" import type { WorkspaceDefaultDestination, WorkspaceLastUsed } from "@/settings/model" -import type { SessionInfo, WorktreeDirectory } from "@opencode-ai/client/promise" +import type { SessionInfo, WorktreeDirectory } from "@opencode/client/promise" type WorkspaceProject = { worktree: string diff --git a/packages/app/src/workspaces/selection/dialog.tsx b/packages/app/src/workspaces/selection/dialog.tsx index ecefb8ce336..d3c3c3fb67a 100644 --- a/packages/app/src/workspaces/selection/dialog.tsx +++ b/packages/app/src/workspaces/selection/dialog.tsx @@ -1,14 +1,14 @@ import "@pierre/trees/web-components" import { FileTree } from "@pierre/trees" -import { Dialog, DialogBody, DialogFooter, DialogHeader, DialogTitle } from "@opencode-ai/ui/dialog" -import { Button } from "@opencode-ai/ui/button" -import { TextInput } from "@opencode-ai/ui/text-input" -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { Dialog, DialogBody, DialogFooter, DialogHeader, DialogTitle } from "@opencode/ui/dialog" +import { Button } from "@opencode/ui/button" +import { TextInput } from "@opencode/ui/text-input" +import { useDialog } from "@opencode/ui/context/dialog" import { createEffect, createMemo, createResource, createSignal, For, onCleanup, onMount, Show } from "solid-js" import { useGlobal } from "@/runtime/server/runtime" import { useLanguage } from "@/runtime/i18n/language" import { ServerConnection } from "@/runtime/server/registry" -import type { LocationRef } from "@opencode-ai/client/promise" +import type { LocationRef } from "@opencode/client/promise" import { absoluteTreePath, activeTreeNavigation, @@ -31,7 +31,7 @@ import { pickerAbsolutePath, } from "./domain" import "./dialog.css" -import { Divider } from "@opencode-ai/ui/divider" +import { Divider } from "@opencode/ui/divider" interface DirectoryPickerDialogProps { title?: string diff --git a/packages/app/src/workspaces/selection/domain.ts b/packages/app/src/workspaces/selection/domain.ts index ae8cc33f5c2..4353771637e 100644 --- a/packages/app/src/workspaces/selection/domain.ts +++ b/packages/app/src/workspaces/selection/domain.ts @@ -250,7 +250,7 @@ export function nativePickerPath(path: string) { if (/^[A-Za-z]:\//.test(value) || value.startsWith("//")) return value.replaceAll("/", "\\") return value } -import { getFilename } from "@opencode-ai/util/path" +import { getFilename } from "@opencode/util/path" import fuzzysort from "fuzzysort" import { ServerSDK } from "@/runtime/server/client" diff --git a/packages/app/src/workspaces/selection/picker.tsx b/packages/app/src/workspaces/selection/picker.tsx index a8098948a1b..13c29917334 100644 --- a/packages/app/src/workspaces/selection/picker.tsx +++ b/packages/app/src/workspaces/selection/picker.tsx @@ -1,8 +1,8 @@ -import { useDialog } from "@opencode-ai/ui/context/dialog" +import { useDialog } from "@opencode/ui/context/dialog" import { ServerConnection } from "@/runtime/server/registry" import { usePlatform } from "@/runtime/platform/platform" import { lazy } from "solid-js" -import type { LocationRef } from "@opencode-ai/client/promise" +import type { LocationRef } from "@opencode/client/promise" import { directoryPickerKind } from "./policy" const DirectoryPickerDialog = lazy(() => diff --git a/packages/app/test-browser/auto-scroll.test.ts b/packages/app/test-browser/auto-scroll.test.ts index d0a5f60bd5f..4cf21f3f1ab 100644 --- a/packages/app/test-browser/auto-scroll.test.ts +++ b/packages/app/test-browser/auto-scroll.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { createAutoScroll } from "@opencode-ai/ui/hooks" +import { createAutoScroll } from "@opencode/ui/hooks" import { createRoot } from "solid-js" test("restores bottom anchoring when Suspense reattaches the scroll viewport", async () => { diff --git a/packages/app/test-browser/command-palette.test.ts b/packages/app/test-browser/command-palette.test.ts index 64bad99605c..f7bf5f77819 100644 --- a/packages/app/test-browser/command-palette.test.ts +++ b/packages/app/test-browser/command-palette.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import type { Project } from "@/runtime/server/types" -import type { SessionInfo } from "@opencode-ai/client/promise" +import type { SessionInfo } from "@opencode/client/promise" import { createRoot } from "solid-js" import { createServerSessionEntries } from "@/shell/commands/palette" import type { LocalProject } from "@/shell/state/layout" diff --git a/packages/app/test-browser/composer-write-batch.test.ts b/packages/app/test-browser/composer-write-batch.test.ts index 31e26b2c92e..dc661337b40 100644 --- a/packages/app/test-browser/composer-write-batch.test.ts +++ b/packages/app/test-browser/composer-write-batch.test.ts @@ -1,6 +1,6 @@ import { expect, test } from "bun:test" import { createComputed, createRoot } from "solid-js" -import { SessionMessage } from "@opencode-ai/schema/session-message" +import { SessionMessage } from "@opencode/schema/session-message" import { ServerScope } from "@/runtime/server/scope" import { createComposerState, type ComposerStore } from "@/composer/state" import { createComposerEditorActions } from "@/composer/editor/actions" diff --git a/packages/app/test-browser/motion-spring.test.ts b/packages/app/test-browser/motion-spring.test.ts index fc251af0088..cbf7d97cfe2 100644 --- a/packages/app/test-browser/motion-spring.test.ts +++ b/packages/app/test-browser/motion-spring.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { useSpring } from "@opencode-ai/ui/motion-spring" +import { useSpring } from "@opencode/ui/motion-spring" import { createRoot, createSignal } from "solid-js" test("snaps spring progress when the session changes", async () => { diff --git a/packages/app/test-browser/review-panel-state.test.ts b/packages/app/test-browser/review-panel-state.test.ts index 963464ef02c..e10de113658 100644 --- a/packages/app/test-browser/review-panel-state.test.ts +++ b/packages/app/test-browser/review-panel-state.test.ts @@ -27,7 +27,7 @@ const platform: Platform = { } beforeAll(async () => { - mock.module("@opencode-ai/session-ui/v2/session-review-v2", () => ({ + mock.module("@opencode/session-ui/v2/session-review-v2", () => ({ SESSION_REVIEW_V2_SIDEBAR_WIDTH_DEFAULT: 240, SESSION_REVIEW_V2_SIDEBAR_WIDTH_MIN: 200, SESSION_REVIEW_V2_SIDEBAR_WIDTH_MAX: 480, diff --git a/packages/app/test-browser/session-background.test.ts b/packages/app/test-browser/session-background.test.ts index 04945a8af99..355eacbc0e6 100644 --- a/packages/app/test-browser/session-background.test.ts +++ b/packages/app/test-browser/session-background.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionInfo, SessionMessageAssistantTool, ShellInfo } from "@opencode-ai/client/promise" +import type { SessionInfo, SessionMessageAssistantTool, ShellInfo } from "@opencode/client/promise" import { createRoot } from "solid-js" import { createStore } from "solid-js/store" import { createSessionBackground } from "@/session/requests/background" diff --git a/packages/app/test-browser/timeline-projection.test.ts b/packages/app/test-browser/timeline-projection.test.ts index 7b1b1a16ee4..1a234cc2df2 100644 --- a/packages/app/test-browser/timeline-projection.test.ts +++ b/packages/app/test-browser/timeline-projection.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionMessageAssistant, SessionMessageInfo, SessionStatus } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, SessionMessageInfo, SessionStatus } from "@opencode/client/promise" import { createRoot } from "solid-js" import { createStore, produce } from "solid-js/store" import { @@ -8,7 +8,7 @@ import { Timeline, TimelineRow, type ReasoningMode, -} from "@opencode-ai/session-ui/timeline/projection" +} from "@opencode/session-ui/timeline/projection" import { createTimelineProjection } from "../src/session/timeline/projection" const assistant = (id: string, content: SessionMessageAssistant["content"]): SessionMessageAssistant => ({ diff --git a/packages/app/test-browser/toast-owner.test.ts b/packages/app/test-browser/toast-owner.test.ts index 867e8a5faa0..2d144fe6fbc 100644 --- a/packages/app/test-browser/toast-owner.test.ts +++ b/packages/app/test-browser/toast-owner.test.ts @@ -1,6 +1,6 @@ import { beforeEach, describe, expect, test } from "bun:test" import { createSignal, type JSX } from "solid-js" -import { showToast, toaster } from "@opencode-ai/ui/toast" +import { showToast, toaster } from "@opencode/ui/toast" describe("showToast", () => { // The toast registry is module state, so each test starts from an empty stack. diff --git a/packages/app/test-browser/websearch-request.test.ts b/packages/app/test-browser/websearch-request.test.ts index 0faadec481f..f3ab6a691e2 100644 --- a/packages/app/test-browser/websearch-request.test.ts +++ b/packages/app/test-browser/websearch-request.test.ts @@ -1,5 +1,5 @@ import { afterEach, describe, expect, test } from "bun:test" -import type { FormCreated, FormReplyInput, OpenCodeEvent } from "@opencode-ai/client/promise" +import type { FormCreated, FormReplyInput, OpenCodeEvent } from "@opencode/client/promise" import { createEffect, createRoot } from "solid-js" import { createStore } from "solid-js/store" import { createWebSearchRequest } from "@/session/requests/websearch" diff --git a/packages/app/vite.js b/packages/app/vite.js index 3c75bbd0227..bb034893776 100644 --- a/packages/app/vite.js +++ b/packages/app/vite.js @@ -45,7 +45,7 @@ export default [ }, optimizeDeps: { exclude: ["@shikijs/stream", "marked", "marked-shiki", "remend"], - include: ["@opencode-ai/session-ui > mermaid", "@opencode-ai/session-ui > mermaid > katex"], + include: ["@opencode/session-ui > mermaid", "@opencode/session-ui > mermaid > katex"], }, } }, diff --git a/packages/cli/AGENTS.md b/packages/cli/AGENTS.md index 2e00ca707b7..a39796a59a1 100644 --- a/packages/cli/AGENTS.md +++ b/packages/cli/AGENTS.md @@ -1,4 +1,4 @@ # CLI and TUI development guide -- Use `@opencode-ai/client` and the location-scoped data in `packages/tui/src/context/data.tsx` instead of adding dependencies on legacy sync state. +- Use `@opencode/client` and the location-scoped data in `packages/tui/src/context/data.tsx` instead of adding dependencies on legacy sync state. - Preserve established TUI behavior unless the task intentionally changes it. diff --git a/packages/cli/bin/opencode2.cjs b/packages/cli/bin/opencode2.cjs index 80b7ad408fb..fc6fd153b2d 100755 --- a/packages/cli/bin/opencode2.cjs +++ b/packages/cli/bin/opencode2.cjs @@ -37,7 +37,7 @@ const nodeBuild = command === "opencode2-node" const cached = path.join(scriptDir, `.${command}`) const platform = { darwin: "darwin", linux: "linux", win32: "windows" }[os.platform()] || os.platform() const arch = { x64: "x64", arm64: "arm64", arm: "arm" }[os.arch()] || os.arch() -const base = `@opencode-ai/cli${nodeBuild ? "-node" : ""}-` + platform + "-" + arch +const base = `@opencode/cli${nodeBuild ? "-node" : ""}-` + platform + "-" + arch const binary = platform === "windows" ? `${command}.exe` : command function supportsAvx2() { diff --git a/packages/cli/package.json b/packages/cli/package.json index deac1fa518d..d94831ebf58 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/cli", + "name": "@opencode/cli", "version": "1.18.4", "type": "module", "license": "MIT", @@ -25,13 +25,13 @@ "@agentclientprotocol/sdk": "1.2.1", "@clack/prompts": "1.0.0-alpha.1", "@effect/platform-node": "catalog:", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/plugin": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/plugin": "workspace:*", "@opencode-ai/pty": "0.1.13", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/server": "workspace:*", - "@opencode-ai/tui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/server": "workspace:*", + "@opencode/tui": "workspace:*", + "@opencode/util": "workspace:*", "@opentui/core": "catalog:", "@opentui/solid": "catalog:", "@parcel/watcher": "2.5.1", @@ -48,8 +48,8 @@ "ws": "8.21.0" }, "devDependencies": { - "@opencode-ai/script": "workspace:*", - "@opencode-ai/protocol": "workspace:*", + "@opencode/script": "workspace:*", + "@opencode/protocol": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:", diff --git a/packages/cli/script/build-node.ts b/packages/cli/script/build-node.ts index e283199d817..f8dafdf3a77 100644 --- a/packages/cli/script/build-node.ts +++ b/packages/cli/script/build-node.ts @@ -6,7 +6,7 @@ import { chmod, copyFile, mkdir, mkdtemp, readFile, realpath, rename, rm, stat, import os from "node:os" import path from "node:path" import { build } from "vite" -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import pkg from "../package.json" import { collectNodeAssets, copyNodeAssets, hashNodeAssets, seaAssetMap } from "./node-assets" import { mainConfig } from "../vite.node.config" @@ -138,7 +138,7 @@ for (const target of targets) { path.join(outdir, name, "package.json"), `${JSON.stringify( { - name: `@opencode-ai/${name}`, + name: `@opencode/${name}`, version: Script.version, license: pkg.license, repository: { type: "git", url: "git+https://github.com/anomalyco/opencode.git" }, diff --git a/packages/cli/script/build.ts b/packages/cli/script/build.ts index dbb38f05f75..3c0c7057b4f 100755 --- a/packages/cli/script/build.ts +++ b/packages/cli/script/build.ts @@ -3,7 +3,7 @@ import { $ } from "bun" import { mkdir, rm } from "fs/promises" import path from "path" -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { createSolidTransformPlugin } from "@opentui/solid/bun-plugin" import type { BunPlugin } from "bun" import pkg from "../package.json" @@ -169,7 +169,7 @@ export default { path: file, version: ${JSON.stringify(opencodePty.version)}, sh path.join(outdir, name, "package.json"), JSON.stringify( { - name: `@opencode-ai/${name}`, + name: `@opencode/${name}`, version: Script.version, license: "MIT", repository: { type: "git", url: "git+https://github.com/anomalyco/opencode.git" }, diff --git a/packages/cli/script/publish.ts b/packages/cli/script/publish.ts index 01669503086..7bd46db8790 100755 --- a/packages/cli/script/publish.ts +++ b/packages/cli/script/publish.ts @@ -1,13 +1,14 @@ #!/usr/bin/env bun import { $ } from "bun" import pkg from "../package.json" -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { fileURLToPath } from "url" import { existsSync } from "fs" import { UpdateArtifact } from "../../../script/update-artifact" const dir = fileURLToPath(new URL("..", import.meta.url)) process.chdir(dir) +const dryRun = process.argv.includes("--dry-run") async function published(name: string, version: string) { return (await $`npm view ${name}@${version} version`.nothrow()).exitCode === 0 @@ -15,11 +16,11 @@ async function published(name: string, version: string) { async function publish(dir: string, name: string, version: string) { if (process.platform !== "win32") await $`chmod -R 755 .`.cwd(dir) - const exists = await published(name, version) + const exists = !dryRun && (await published(name, version)) if (exists) console.log(`already published ${name}@${version}`) if (!exists) { await $`bun pm pack`.cwd(dir) - await $`npm publish *.tgz --access public --tag ${Script.channel}`.cwd(dir) + if (!dryRun) await $`npm publish *.tgz --access public --tag ${Script.channel}`.cwd(dir) } } @@ -74,10 +75,11 @@ async function publishDistribution(input: { await Promise.all( Object.entries(binaries).map(([name, version]) => - publish(`${input.root}/${name.replace("@opencode-ai/", "")}`, name, version), + publish(`${input.root}/${name.replace("@opencode/", "")}`, name, version), ), ) await publish(`${input.root}/${input.name}`, input.name, version) + if (dryRun) return await UpdateArtifact.publish({ channel: Script.channel, name: input.artifact, @@ -91,15 +93,15 @@ await publishDistribution({ root: "./dist", name: pkg.name, binary: "opencode2", - packagePrefix: "@opencode-ai/cli-", + packagePrefix: "@opencode/cli-", artifact: "cli", }) if (existsSync("./dist/node")) { await publishDistribution({ root: "./dist/node", - name: "opencode-node", + name: "@opencode/cli-node", binary: "opencode2-node", - packagePrefix: "@opencode-ai/cli-node-", + packagePrefix: "@opencode/cli-node-", artifact: "cli-node", }) } diff --git a/packages/cli/script/service-smoke.ts b/packages/cli/script/service-smoke.ts index 46d0582d97e..7353a99b9fa 100644 --- a/packages/cli/script/service-smoke.ts +++ b/packages/cli/script/service-smoke.ts @@ -1,8 +1,8 @@ #!/usr/bin/env bun import { NodeFileSystem } from "@effect/platform-node" -import { Service } from "@opencode-ai/client/effect/service" -import { ServiceStatus } from "@opencode-ai/protocol/groups/health" +import { Service } from "@opencode/client/effect/service" +import { ServiceStatus } from "@opencode/protocol/groups/health" import { Effect, Schema } from "effect" import fs from "node:fs/promises" import os from "node:os" diff --git a/packages/cli/src/acp/agent.ts b/packages/cli/src/acp/agent.ts index c01ec940186..2d962c2b734 100644 --- a/packages/cli/src/acp/agent.ts +++ b/packages/cli/src/acp/agent.ts @@ -16,7 +16,7 @@ import { type SetSessionConfigOptionRequest, type SetSessionModeRequest, } from "@agentclientprotocol/sdk" -import type { OpenCodeClient } from "@opencode-ai/client/promise" +import type { OpenCodeClient } from "@opencode/client/promise" import { ACPError } from "./error" import { ACPService } from "./service" diff --git a/packages/cli/src/acp/event.ts b/packages/cli/src/acp/event.ts index 86746a5f091..9bb1cfaebda 100644 --- a/packages/cli/src/acp/event.ts +++ b/packages/cli/src/acp/event.ts @@ -4,7 +4,7 @@ import type { OpenCodeClient, SessionMessageAssistant, SessionMessageInfo, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { partsToContentChunks, type ReplayPart } from "./content" import { ACPError } from "./error" import { replyPermission, syncEditedFiles } from "./permission" diff --git a/packages/cli/src/acp/permission.ts b/packages/cli/src/acp/permission.ts index cef7fc2cf4c..83c8e2f28f1 100644 --- a/packages/cli/src/acp/permission.ts +++ b/packages/cli/src/acp/permission.ts @@ -1,6 +1,6 @@ import type { AgentSideConnection, PermissionOption, ToolCallContent, ToolCallLocation } from "@agentclientprotocol/sdk" -import type { EventSubscribeOutput, OpenCodeClient } from "@opencode-ai/client/promise" -import { Patch } from "@opencode-ai/util/patch" +import type { EventSubscribeOutput, OpenCodeClient } from "@opencode/client/promise" +import { Patch } from "@opencode/util/patch" import { Result } from "effect" import { isAbsolute, resolve } from "node:path" import { pendingToolCall, stringValue, toLocations, toToolKind, type ToolInput } from "./tool" diff --git a/packages/cli/src/acp/service.ts b/packages/cli/src/acp/service.ts index f2fa2ab180e..97d94518b3a 100644 --- a/packages/cli/src/acp/service.ts +++ b/packages/cli/src/acp/service.ts @@ -7,8 +7,8 @@ import { type SessionInfo, type SessionMessageInfo, type SkillInfo, -} from "@opencode-ai/client/promise" -import { withTimestampedFallback } from "@opencode-ai/util/session-title-fallback" +} from "@opencode/client/promise" +import { withTimestampedFallback } from "@opencode/util/session-title-fallback" import type { AgentSideConnection, AuthenticateRequest, @@ -40,7 +40,7 @@ import type { SetSessionModeResponse, } from "@agentclientprotocol/sdk" import { OPENCODE_VERSION } from "../version" -import { SessionMessage } from "@opencode-ai/schema/session-message" +import { SessionMessage } from "@opencode/schema/session-message" import { buildConfigOptions, parseModelSelection, type ConfigOptionProvider } from "./config-option" import { promptContentToParts } from "./content" import { diff --git a/packages/cli/src/acp/tool.ts b/packages/cli/src/acp/tool.ts index 74092d88535..68075e66b1a 100644 --- a/packages/cli/src/acp/tool.ts +++ b/packages/cli/src/acp/tool.ts @@ -1,6 +1,6 @@ import { isAbsolute, resolve } from "node:path" import type { ToolCall, ToolCallContent, ToolCallLocation, ToolCallUpdate, ToolKind } from "@agentclientprotocol/sdk" -import { readDisplayText } from "@opencode-ai/tui/mini/tool" +import { readDisplayText } from "@opencode/tui/mini/tool" export type ToolInput = Record export type ToolContent = ReadonlyArray< diff --git a/packages/cli/src/commands/handlers/acp.ts b/packages/cli/src/commands/handlers/acp.ts index 3d0e9f73bb2..9170b646eed 100644 --- a/packages/cli/src/commands/handlers/acp.ts +++ b/packages/cli/src/commands/handlers/acp.ts @@ -1,6 +1,6 @@ import { AgentSideConnection, ndJsonStream } from "@agentclientprotocol/sdk" -import { OpenCode } from "@opencode-ai/client/promise" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode } from "@opencode/client/promise" +import { Service } from "@opencode/client/effect/service" import { Effect } from "effect" import { ACP } from "../../acp/agent" import { Commands } from "../commands" diff --git a/packages/cli/src/commands/handlers/api.ts b/packages/cli/src/commands/handlers/api.ts index e1177a035c6..ed511cbec40 100644 --- a/packages/cli/src/commands/handlers/api.ts +++ b/packages/cli/src/commands/handlers/api.ts @@ -2,7 +2,7 @@ import { EOL } from "node:os" import { Effect, Option } from "effect" import { Commands } from "../commands" import { Runtime } from "../../framework/runtime" -import { Service, type Endpoint } from "@opencode-ai/client/effect/service" +import { Service, type Endpoint } from "@opencode/client/effect/service" import { ServerConnection } from "../../services/server-connection" const methods = new Set(["delete", "get", "head", "options", "patch", "post", "put"]) diff --git a/packages/cli/src/commands/handlers/auth/form.ts b/packages/cli/src/commands/handlers/auth/form.ts index d1b931db978..0068f149036 100644 --- a/packages/cli/src/commands/handlers/auth/form.ts +++ b/packages/cli/src/commands/handlers/auth/form.ts @@ -1,6 +1,6 @@ import { confirm, log, multiselect, password, select, text, type Option } from "@clack/prompts" import { Effect } from "effect" -import type { FormAnswer, FormField, FormFields } from "@opencode-ai/client" +import type { FormAnswer, FormField, FormFields } from "@opencode/client" import { openUrl, prompt, requireInteractive } from "../../../ui/prompt" const skip = Symbol("skip") diff --git a/packages/cli/src/commands/handlers/auth/login.ts b/packages/cli/src/commands/handlers/auth/login.ts index 20ec8c68e22..123240a7339 100644 --- a/packages/cli/src/commands/handlers/auth/login.ts +++ b/packages/cli/src/commands/handlers/auth/login.ts @@ -1,6 +1,6 @@ import { autocomplete, intro, log, outro, select, spinner, text } from "@clack/prompts" import { Effect, Option } from "effect" -import type { FormAnswer, IntegrationInfo, OpenCodeClient } from "@opencode-ai/client" +import type { FormAnswer, IntegrationInfo, OpenCodeClient } from "@opencode/client" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { handlePromptErrors, openUrl, prompt, requireInteractive } from "../../../ui/prompt" diff --git a/packages/cli/src/commands/handlers/auth/logout.ts b/packages/cli/src/commands/handlers/auth/logout.ts index e9ac770d36f..d883eb62c24 100644 --- a/packages/cli/src/commands/handlers/auth/logout.ts +++ b/packages/cli/src/commands/handlers/auth/logout.ts @@ -1,6 +1,6 @@ import { autocomplete, intro, outro, spinner } from "@clack/prompts" import { Effect, Option } from "effect" -import type { IntegrationInfo } from "@opencode-ai/client" +import type { IntegrationInfo } from "@opencode/client" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { handlePromptErrors, prompt, requireInteractive } from "../../../ui/prompt" diff --git a/packages/cli/src/commands/handlers/auth/shared.ts b/packages/cli/src/commands/handlers/auth/shared.ts index 6a1bdf12363..b3d91dd7889 100644 --- a/packages/cli/src/commands/handlers/auth/shared.ts +++ b/packages/cli/src/commands/handlers/auth/shared.ts @@ -1,6 +1,6 @@ import { Effect } from "effect" -import { OpenCode, type IntegrationInfo, type IntegrationMethod, type OpenCodeClient } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode, type IntegrationInfo, type IntegrationMethod, type OpenCodeClient } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" import { ServerConnection } from "../../../services/server-connection" export const location = { directory: process.cwd() } diff --git a/packages/cli/src/commands/handlers/console/login.ts b/packages/cli/src/commands/handlers/console/login.ts index a0c767c718d..0ee62295c3a 100644 --- a/packages/cli/src/commands/handlers/console/login.ts +++ b/packages/cli/src/commands/handlers/console/login.ts @@ -1,7 +1,7 @@ import { Cause, Effect, Exit, Option } from "effect" -import { Service } from "@opencode-ai/client/effect/service" -import { OpenCode, type OpenCodeClient } from "@opencode-ai/client/promise" -import { AppProcess } from "@opencode-ai/util/process" +import { Service } from "@opencode/client/effect/service" +import { OpenCode, type OpenCodeClient } from "@opencode/client/promise" +import { AppProcess } from "@opencode/util/process" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { ServiceConfig } from "../../../services/service-config" diff --git a/packages/cli/src/commands/handlers/debug/agents.ts b/packages/cli/src/commands/handlers/debug/agents.ts index 4d81e6c8b28..784d8648360 100644 --- a/packages/cli/src/commands/handlers/debug/agents.ts +++ b/packages/cli/src/commands/handlers/debug/agents.ts @@ -1,9 +1,9 @@ import { EOL } from "os" import { Effect } from "effect" -import { OpenCode } from "@opencode-ai/client" +import { OpenCode } from "@opencode/client" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import { ServiceConfig } from "../../../services/service-config" export default Runtime.handler( diff --git a/packages/cli/src/commands/handlers/debug/config.ts b/packages/cli/src/commands/handlers/debug/config.ts index 7dd822ce84d..3eb1b608507 100644 --- a/packages/cli/src/commands/handlers/debug/config.ts +++ b/packages/cli/src/commands/handlers/debug/config.ts @@ -1,7 +1,7 @@ import { EOL } from "os" import { Effect } from "effect" -import { OpenCode } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { ServiceConfig } from "../../../services/service-config" diff --git a/packages/cli/src/commands/handlers/debug/paths.ts b/packages/cli/src/commands/handlers/debug/paths.ts index 732dae9ff2e..6e02917a7dc 100644 --- a/packages/cli/src/commands/handlers/debug/paths.ts +++ b/packages/cli/src/commands/handlers/debug/paths.ts @@ -1,6 +1,6 @@ import { EOL } from "os" import { Effect } from "effect" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" diff --git a/packages/cli/src/commands/handlers/default.ts b/packages/cli/src/commands/handlers/default.ts index 90dcc14110b..cc47db98eed 100644 --- a/packages/cli/src/commands/handlers/default.ts +++ b/packages/cli/src/commands/handlers/default.ts @@ -1,6 +1,6 @@ -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" -import { run } from "@opencode-ai/tui" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { run } from "@opencode/tui" import { Commands } from "../commands" import { Runtime } from "../../framework/runtime" import { Config } from "../../config" @@ -8,7 +8,7 @@ import { Context, Effect, Fiber, FileSystem, Option, Queue } from "effect" import { ServerConnection } from "../../services/server-connection" import { Updater } from "../../services/updater" import { UpdatePreflight } from "../../services/update-preflight" -import { Npm } from "@opencode-ai/util/npm" +import { Npm } from "@opencode/util/npm" import { OPENCODE_ARTIFACT, OPENCODE_CHANNEL, OPENCODE_VERSION } from "../../version" import { Env } from "../../env" diff --git a/packages/cli/src/commands/handlers/export.ts b/packages/cli/src/commands/handlers/export.ts index f8fbff092ed..0487bc436e8 100644 --- a/packages/cli/src/commands/handlers/export.ts +++ b/packages/cli/src/commands/handlers/export.ts @@ -1,6 +1,6 @@ import { autocomplete, cancel, intro, isCancel, log, outro } from "@clack/prompts" -import { OpenCode } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" import { Effect, Option } from "effect" import { EOL } from "node:os" import { Commands } from "../commands" diff --git a/packages/cli/src/commands/handlers/import.ts b/packages/cli/src/commands/handlers/import.ts index c23643fc6fb..fddd73dde94 100644 --- a/packages/cli/src/commands/handlers/import.ts +++ b/packages/cli/src/commands/handlers/import.ts @@ -1,7 +1,7 @@ -import { OpenCode } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" -import { Session } from "@opencode-ai/schema/session" -import { SessionTransfer } from "@opencode-ai/schema/session-transfer" +import { OpenCode } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" +import { Session } from "@opencode/schema/session" +import { SessionTransfer } from "@opencode/schema/session-transfer" import { Effect, Option, Schema } from "effect" import { EOL } from "node:os" import path from "node:path" diff --git a/packages/cli/src/commands/handlers/mcp/add.ts b/packages/cli/src/commands/handlers/mcp/add.ts index 89d2c937f19..9e8a7087d37 100644 --- a/packages/cli/src/commands/handlers/mcp/add.ts +++ b/packages/cli/src/commands/handlers/mcp/add.ts @@ -3,7 +3,7 @@ import path from "node:path" import { readFile, stat, writeFile } from "node:fs/promises" import { Effect, Option } from "effect" import { applyEdits, modify } from "jsonc-parser" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" diff --git a/packages/cli/src/commands/handlers/mcp/auth.ts b/packages/cli/src/commands/handlers/mcp/auth.ts index 0d7fd3afd4a..bd8ab349c48 100644 --- a/packages/cli/src/commands/handlers/mcp/auth.ts +++ b/packages/cli/src/commands/handlers/mcp/auth.ts @@ -5,10 +5,10 @@ import { type IntegrationAttemptStatus, type IntegrationOAuthMethod, type OpenCodeClient, -} from "@opencode-ai/client" +} from "@opencode/client" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import { ServiceConfig } from "../../../services/service-config" import { resolveIntegration } from "./resolve" diff --git a/packages/cli/src/commands/handlers/mcp/list.ts b/packages/cli/src/commands/handlers/mcp/list.ts index d26e24e3d1e..e1dbf956e19 100644 --- a/packages/cli/src/commands/handlers/mcp/list.ts +++ b/packages/cli/src/commands/handlers/mcp/list.ts @@ -1,9 +1,9 @@ import { EOL } from "node:os" import { Effect } from "effect" -import { OpenCode, type McpServer } from "@opencode-ai/client" +import { OpenCode, type McpServer } from "@opencode/client" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import { ServiceConfig } from "../../../services/service-config" export default Runtime.handler( diff --git a/packages/cli/src/commands/handlers/mcp/logout.ts b/packages/cli/src/commands/handlers/mcp/logout.ts index 6935bc6a8ab..ddcc02bb176 100644 --- a/packages/cli/src/commands/handlers/mcp/logout.ts +++ b/packages/cli/src/commands/handlers/mcp/logout.ts @@ -1,9 +1,9 @@ import { EOL } from "node:os" import { Effect } from "effect" -import { OpenCode } from "@opencode-ai/client" +import { OpenCode } from "@opencode/client" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import { ServiceConfig } from "../../../services/service-config" import { resolveIntegration } from "./resolve" diff --git a/packages/cli/src/commands/handlers/mcp/resolve.ts b/packages/cli/src/commands/handlers/mcp/resolve.ts index 1ee5e195686..449adccb4eb 100644 --- a/packages/cli/src/commands/handlers/mcp/resolve.ts +++ b/packages/cli/src/commands/handlers/mcp/resolve.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import type { OpenCodeClient } from "@opencode-ai/client" +import type { OpenCodeClient } from "@opencode/client" // Resolve through the MCP-owned integrationID rather than matching integration names: the shared // integration registry also holds provider/plugin integrations, whose names could collide with a server. diff --git a/packages/cli/src/commands/handlers/mini.ts b/packages/cli/src/commands/handlers/mini.ts index 596c17a1b79..9175311de1c 100644 --- a/packages/cli/src/commands/handlers/mini.ts +++ b/packages/cli/src/commands/handlers/mini.ts @@ -3,8 +3,8 @@ import { Commands } from "../commands" import { Runtime } from "../../framework/runtime" import { ServerConnection } from "../../services/server-connection" import { Config } from "../../config" -import { resolve } from "@opencode-ai/tui/config" -import { Global } from "@opencode-ai/util/global" +import { resolve } from "@opencode/tui/config" +import { Global } from "@opencode/util/global" export default Runtime.handler(Commands.commands.mini, (input) => Effect.gen(function* () { diff --git a/packages/cli/src/commands/handlers/models.ts b/packages/cli/src/commands/handlers/models.ts index 9b23c6d0c36..2ad341ec4e2 100644 --- a/packages/cli/src/commands/handlers/models.ts +++ b/packages/cli/src/commands/handlers/models.ts @@ -1,5 +1,5 @@ -import { OpenCode } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" import { Effect, Option } from "effect" import { EOL } from "node:os" import { Commands } from "../commands" diff --git a/packages/cli/src/commands/handlers/pair.ts b/packages/cli/src/commands/handlers/pair.ts index e938444efbd..8dee29b235b 100644 --- a/packages/cli/src/commands/handlers/pair.ts +++ b/packages/cli/src/commands/handlers/pair.ts @@ -1,7 +1,7 @@ import { EOL } from "os" import { Effect } from "effect" -import { Service } from "@opencode-ai/client/effect/service" -import { OpenCode } from "@opencode-ai/client/promise" +import { Service } from "@opencode/client/effect/service" +import { OpenCode } from "@opencode/client/promise" import { renderUnicodeCompact } from "uqr" import { Commands } from "../commands" import { Runtime } from "../../framework/runtime" diff --git a/packages/cli/src/commands/handlers/plugin/add.ts b/packages/cli/src/commands/handlers/plugin/add.ts index 18fb9ca9c74..fca542bf450 100644 --- a/packages/cli/src/commands/handlers/plugin/add.ts +++ b/packages/cli/src/commands/handlers/plugin/add.ts @@ -3,9 +3,9 @@ import path from "node:path" import { mkdir, readFile, rename, writeFile } from "node:fs/promises" import { Effect } from "effect" import { applyEdits, modify, parse, type ParseError } from "jsonc-parser" -import { Global } from "@opencode-ai/util/global" -import { Npm } from "@opencode-ai/util/npm" -import { Host } from "@opencode-ai/plugin/host" +import { Global } from "@opencode/util/global" +import { Npm } from "@opencode/util/npm" +import { Host } from "@opencode/plugin/host" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { resolveConfigPath } from "../mcp/add" diff --git a/packages/cli/src/commands/handlers/plugin/inventory.ts b/packages/cli/src/commands/handlers/plugin/inventory.ts index c897774db35..5c19e1ee1d8 100644 --- a/packages/cli/src/commands/handlers/plugin/inventory.ts +++ b/packages/cli/src/commands/handlers/plugin/inventory.ts @@ -1,8 +1,8 @@ import { EOL } from "node:os" import { Cause, Effect, Exit } from "effect" -import { OpenCode, type PluginInfo } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" -import { Npm } from "@opencode-ai/util/npm" +import { OpenCode, type PluginInfo } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" +import { Npm } from "@opencode/util/npm" import { Config } from "../../../config" import { ServiceConfig } from "../../../services/service-config" diff --git a/packages/cli/src/commands/handlers/plugin/list.ts b/packages/cli/src/commands/handlers/plugin/list.ts index 8104ed3f729..f35c2898182 100644 --- a/packages/cli/src/commands/handlers/plugin/list.ts +++ b/packages/cli/src/commands/handlers/plugin/list.ts @@ -1,17 +1,17 @@ import { EOL } from "node:os" import path from "node:path" import { Effect } from "effect" -import { OpenCode, type PluginInfo } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode, type PluginInfo } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { ServiceConfig } from "../../../services/service-config" import { Config } from "../../../config" -import { Global } from "@opencode-ai/util/global" -import { Npm } from "@opencode-ai/util/npm" -import { Host } from "@opencode-ai/plugin/host" +import { Global } from "@opencode/util/global" +import { Npm } from "@opencode/util/npm" +import { Host } from "@opencode/plugin/host" import { fileURLToPath } from "node:url" -import { discoverPluginTargets, localPluginDirectories, localSource } from "@opencode-ai/tui/plugin/discovery" +import { discoverPluginTargets, localPluginDirectories, localSource } from "@opencode/tui/plugin/discovery" export default Runtime.handler( Commands.commands.plugin.commands.list, diff --git a/packages/cli/src/commands/handlers/plugin/remove.ts b/packages/cli/src/commands/handlers/plugin/remove.ts index b93000bd676..c471e92e278 100644 --- a/packages/cli/src/commands/handlers/plugin/remove.ts +++ b/packages/cli/src/commands/handlers/plugin/remove.ts @@ -3,7 +3,7 @@ import path from "node:path" import { readFile, rename, writeFile } from "node:fs/promises" import { Effect } from "effect" import { applyEdits, modify, parse, type ParseError } from "jsonc-parser" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { Config } from "../../../config" diff --git a/packages/cli/src/commands/handlers/plugin/update.ts b/packages/cli/src/commands/handlers/plugin/update.ts index 3d8f92cc086..010f13c6d36 100644 --- a/packages/cli/src/commands/handlers/plugin/update.ts +++ b/packages/cli/src/commands/handlers/plugin/update.ts @@ -1,6 +1,6 @@ import { EOL } from "node:os" import { Cause, Effect, Exit, Option } from "effect" -import { Npm } from "@opencode-ai/util/npm" +import { Npm } from "@opencode/util/npm" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { inspect } from "./inventory" diff --git a/packages/cli/src/commands/handlers/service/restart.ts b/packages/cli/src/commands/handlers/service/restart.ts index b18691677c2..afc7bb457c1 100644 --- a/packages/cli/src/commands/handlers/service/restart.ts +++ b/packages/cli/src/commands/handlers/service/restart.ts @@ -1,6 +1,6 @@ import { EOL } from "os" import { Effect } from "effect" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { ServiceConfig } from "../../../services/service-config" diff --git a/packages/cli/src/commands/handlers/service/start.ts b/packages/cli/src/commands/handlers/service/start.ts index dfdbac3997a..6adb647a02c 100644 --- a/packages/cli/src/commands/handlers/service/start.ts +++ b/packages/cli/src/commands/handlers/service/start.ts @@ -1,6 +1,6 @@ import { EOL } from "os" import { Effect } from "effect" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { ServiceConfig } from "../../../services/service-config" diff --git a/packages/cli/src/commands/handlers/service/status.ts b/packages/cli/src/commands/handlers/service/status.ts index 8f27ab2ec2d..ade0a391993 100644 --- a/packages/cli/src/commands/handlers/service/status.ts +++ b/packages/cli/src/commands/handlers/service/status.ts @@ -1,6 +1,6 @@ import { EOL } from "os" import { Effect } from "effect" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { ServiceConfig } from "../../../services/service-config" diff --git a/packages/cli/src/commands/handlers/service/stop.ts b/packages/cli/src/commands/handlers/service/stop.ts index 5127355d285..d29f33275b4 100644 --- a/packages/cli/src/commands/handlers/service/stop.ts +++ b/packages/cli/src/commands/handlers/service/stop.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import { Commands } from "../../commands" import { Runtime } from "../../../framework/runtime" import { ServiceConfig } from "../../../services/service-config" diff --git a/packages/cli/src/commands/handlers/session/delete.ts b/packages/cli/src/commands/handlers/session/delete.ts index 9b11f80c33b..549e517309b 100644 --- a/packages/cli/src/commands/handlers/session/delete.ts +++ b/packages/cli/src/commands/handlers/session/delete.ts @@ -1,5 +1,5 @@ -import { OpenCode } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" import { Effect, Option } from "effect" import { EOL } from "node:os" import { Commands } from "../../commands" diff --git a/packages/cli/src/commands/handlers/session/list.ts b/packages/cli/src/commands/handlers/session/list.ts index e56a3195d20..969867c9d21 100644 --- a/packages/cli/src/commands/handlers/session/list.ts +++ b/packages/cli/src/commands/handlers/session/list.ts @@ -1,5 +1,5 @@ -import { OpenCode, type SessionInfo } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode, type SessionInfo } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" import { Effect, Option, Stream } from "effect" import { EOL } from "node:os" import { Commands } from "../../commands" @@ -59,8 +59,8 @@ const handler = Effect.fn("cli.session.list")(function* ( return } - const { AppProcess } = yield* Effect.promise(() => import("@opencode-ai/util/process")) - const { LayerNode } = yield* Effect.promise(() => import("@opencode-ai/util/effect/layer-node")) + const { AppProcess } = yield* Effect.promise(() => import("@opencode/util/process")) + const { LayerNode } = yield* Effect.promise(() => import("@opencode/util/effect/layer-node")) const { ChildProcess } = yield* Effect.promise(() => import("effect/unstable/process")) yield* Effect.gen(function* () { const processService = yield* AppProcess.Service diff --git a/packages/cli/src/commands/handlers/stats.ts b/packages/cli/src/commands/handlers/stats.ts index 321007a73df..2e88b2ca4b8 100644 --- a/packages/cli/src/commands/handlers/stats.ts +++ b/packages/cli/src/commands/handlers/stats.ts @@ -1,7 +1,7 @@ -import { ClientError, OpenCode, type SessionStatsInfo } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/effect/service" -import { TokenUsage } from "@opencode-ai/schema/token-usage" -import { activityCalendar } from "@opencode-ai/util/activity-calendar" +import { ClientError, OpenCode, type SessionStatsInfo } from "@opencode/client" +import { Service } from "@opencode/client/effect/service" +import { TokenUsage } from "@opencode/schema/token-usage" +import { activityCalendar } from "@opencode/util/activity-calendar" import { Effect, Option } from "effect" import { EOL } from "node:os" import { Commands } from "../commands" diff --git a/packages/cli/src/config/config.ts b/packages/cli/src/config/config.ts index 6fc29a0b8e4..cdb31286950 100644 --- a/packages/cli/src/config/config.ts +++ b/packages/cli/src/config/config.ts @@ -1,7 +1,7 @@ export * as Config from "./config" -import { Global } from "@opencode-ai/util/global" -import { Flock } from "@opencode-ai/util/flock" +import { Global } from "@opencode/util/global" +import { Flock } from "@opencode/util/flock" import { Context, Effect, FileSystem, Layer, Option, Schema } from "effect" import { produce, type Draft } from "immer" import { applyEdits, modify, parse, type ParseError } from "jsonc-parser" diff --git a/packages/cli/src/config/migrate.ts b/packages/cli/src/config/migrate.ts index 18e135089e4..4745d510465 100644 --- a/packages/cli/src/config/migrate.ts +++ b/packages/cli/src/config/migrate.ts @@ -1,8 +1,8 @@ export * as ConfigMigration from "./migrate" -import { TuiConfigV1 } from "@opencode-ai/tui/config/v1" -import { TuiKeybind } from "@opencode-ai/tui/config/v1/keybind" -import { Definitions } from "@opencode-ai/tui/config/keybind" +import { TuiConfigV1 } from "@opencode/tui/config/v1" +import { TuiKeybind } from "@opencode/tui/config/v1/keybind" +import { Definitions } from "@opencode/tui/config/keybind" import { Effect, FileSystem, Option, Schema } from "effect" import { randomUUID } from "crypto" import { applyEdits, createScanner, modify, parse, parseTree, type Node, type ParseError } from "jsonc-parser" diff --git a/packages/cli/src/config/schema.ts b/packages/cli/src/config/schema.ts index 211eeebcc19..687dd1e2224 100644 --- a/packages/cli/src/config/schema.ts +++ b/packages/cli/src/config/schema.ts @@ -1,4 +1,4 @@ -import { Config } from "@opencode-ai/tui/config" +import { Config } from "@opencode/tui/config" import { Schema } from "effect" export const SchemaURL = "https://opencode.ai/v2/cli.json" diff --git a/packages/cli/src/cpu-profile.ts b/packages/cli/src/cpu-profile.ts index 9c7bcf2751d..bd36528e7d3 100644 --- a/packages/cli/src/cpu-profile.ts +++ b/packages/cli/src/cpu-profile.ts @@ -1,6 +1,6 @@ export * as CpuProfile from "./cpu-profile" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Effect, FileSystem, Queue } from "effect" import { Session } from "node:inspector" import path from "node:path" diff --git a/packages/cli/src/framework/runtime.ts b/packages/cli/src/framework/runtime.ts index c0a84008164..76c99ab9df5 100644 --- a/packages/cli/src/framework/runtime.ts +++ b/packages/cli/src/framework/runtime.ts @@ -2,10 +2,10 @@ import { Effect, FileSystem, Scope } from "effect" import { Command } from "effect/unstable/cli" import { PrintLogs } from "../commands/commands" import { Spec } from "./spec" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Updater } from "../services/updater" import { Config } from "../config" -import { Npm } from "@opencode-ai/util/npm" +import { Npm } from "@opencode/util/npm" export type Input = Value extends Spec.Node diff --git a/packages/cli/src/heap.ts b/packages/cli/src/heap.ts index 7bf76da98ba..e6930d19e0a 100644 --- a/packages/cli/src/heap.ts +++ b/packages/cli/src/heap.ts @@ -1,4 +1,4 @@ -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Effect, Queue } from "effect" import path from "node:path" diff --git a/packages/cli/src/index.ts b/packages/cli/src/index.ts index 7f445f2d799..2aa07a08c16 100755 --- a/packages/cli/src/index.ts +++ b/packages/cli/src/index.ts @@ -4,14 +4,14 @@ import { NodeRuntime, NodeServices } from "@effect/platform-node" import { Effect } from "effect" import { Commands } from "./commands/commands" import { Runtime } from "./framework/runtime" -import { Observability } from "@opencode-ai/util/observability" +import { Observability } from "@opencode/util/observability" import { Updater } from "./services/updater" import { OPENCODE_ARTIFACT, OPENCODE_CHANNEL, OPENCODE_LOCAL, OPENCODE_VERSION } from "./version" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" -import { AppProcess } from "@opencode-ai/util/process" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { AppProcess } from "@opencode/util/process" import { Config } from "./config" -import { Npm } from "@opencode-ai/util/npm" +import { Npm } from "@opencode/util/npm" import { Heap } from "./heap" import { CpuProfile } from "./cpu-profile" diff --git a/packages/cli/src/mini-host.ts b/packages/cli/src/mini-host.ts index ef81a4930c9..3e734ac5872 100644 --- a/packages/cli/src/mini-host.ts +++ b/packages/cli/src/mini-host.ts @@ -1,5 +1,5 @@ -import type { MiniFrontendInput } from "@opencode-ai/tui/mini" -import { createModelPreferenceRepository } from "@opencode-ai/tui/model-preference" +import type { MiniFrontendInput } from "@opencode/tui/mini" +import { createModelPreferenceRepository } from "@opencode/tui/model-preference" import fs from "node:fs" import { readFile } from "node:fs/promises" import path from "node:path" @@ -151,7 +151,7 @@ export function createMiniHost(input: { }, editor: { async open(options) { - const { openEditor } = await import("@opencode-ai/tui/editor") + const { openEditor } = await import("@opencode/tui/editor") return openEditor(options) }, }, diff --git a/packages/cli/src/mini.ts b/packages/cli/src/mini.ts index c6735e922a6..aeeda5570d4 100644 --- a/packages/cli/src/mini.ts +++ b/packages/cli/src/mini.ts @@ -1,6 +1,6 @@ -import { Service, type Endpoint } from "@opencode-ai/client/effect/service" -import { ClientError, OpenCode, type OpenCodeClient } from "@opencode-ai/client/promise" -import type { MiniFrontendInput } from "@opencode-ai/tui/mini" +import { Service, type Endpoint } from "@opencode/client/effect/service" +import { ClientError, OpenCode, type OpenCodeClient } from "@opencode/client/promise" +import type { MiniFrontendInput } from "@opencode/tui/mini" import { setTimeout } from "node:timers/promises" import { readStdin } from "./util/io" import { createMiniHost, INTERACTIVE_INPUT_ERROR, usingInteractiveStdin } from "./mini-host" @@ -35,7 +35,7 @@ export async function runMini(input: MiniCommandInput) { validate(input) const result = await usingInteractiveStdin(async (terminal) => { const initialInput = mergeInput(process.stdin.isTTY ? undefined : await readStdin(), input.prompt) - const frontendTask = import("@opencode-ai/tui/mini") + const frontendTask = import("@opencode/tui/mini") const directory = localDirectory() const connection = createMiniConnection(input.server) const sdk = connection.sdk diff --git a/packages/cli/src/node/plugin-runtime.effect.ts b/packages/cli/src/node/plugin-runtime.effect.ts index d17fab342fd..17488f239ed 100644 --- a/packages/cli/src/node/plugin-runtime.effect.ts +++ b/packages/cli/src/node/plugin-runtime.effect.ts @@ -9,8 +9,8 @@ import { Provider, Reference, Skill, -} from "@opencode-ai/plugin/effect" -import { Tool } from "@opencode-ai/schema/tool" +} from "@opencode/plugin/effect" +import { Tool } from "@opencode/schema/tool" const key = Symbol.for("opencode.plugin.v2.effect") ;(globalThis as typeof globalThis & { [key]?: unknown })[key] = { diff --git a/packages/cli/src/node/plugin-runtime.promise.ts b/packages/cli/src/node/plugin-runtime.promise.ts index fa33d6edae7..cca121a61ad 100644 --- a/packages/cli/src/node/plugin-runtime.promise.ts +++ b/packages/cli/src/node/plugin-runtime.promise.ts @@ -9,7 +9,7 @@ import { Provider, Reference, Skill, -} from "@opencode-ai/plugin" +} from "@opencode/plugin" const key = Symbol.for("opencode.plugin.v2.promise") ;(globalThis as typeof globalThis & { [key]?: unknown })[key] = { diff --git a/packages/cli/src/node/target.ts b/packages/cli/src/node/target.ts index c9cfcb0eadb..06216d729ec 100644 --- a/packages/cli/src/node/target.ts +++ b/packages/cli/src/node/target.ts @@ -39,9 +39,9 @@ export const shellParserWasmAssets = { export const nodeExecArgv = ["--experimental-ffi", "--use-system-ca", "--disable-warning=ExperimentalWarning"] as const export const attentionSoundAssets = [ - "@opencode-ai/ui/audio/bip-bop-01.mp3", - "@opencode-ai/ui/audio/bip-bop-03.mp3", - "@opencode-ai/ui/audio/staplebops-06.mp3", - "@opencode-ai/ui/audio/nope-03.mp3", - "@opencode-ai/ui/audio/yup-01.mp3", + "@opencode/ui/audio/bip-bop-01.mp3", + "@opencode/ui/audio/bip-bop-03.mp3", + "@opencode/ui/audio/staplebops-06.mp3", + "@opencode/ui/audio/nope-03.mp3", + "@opencode/ui/audio/yup-01.mp3", ] as const diff --git a/packages/cli/src/run/noninteractive.ts b/packages/cli/src/run/noninteractive.ts index e90aac231fb..e97898d5b01 100644 --- a/packages/cli/src/run/noninteractive.ts +++ b/packages/cli/src/run/noninteractive.ts @@ -6,11 +6,11 @@ import type { SessionMessageAssistantTool, SessionMessageInfo, ToolContent, -} from "@opencode-ai/client/promise" -import { SessionMessage } from "@opencode-ai/schema/session-message" +} from "@opencode/client/promise" +import { SessionMessage } from "@opencode/schema/session-message" import { EOL } from "node:os" import { readFile } from "node:fs/promises" -import { nonEmptyToolContent, toolOutputText, type MiniToolPart } from "@opencode-ai/tui/mini/tool" +import { nonEmptyToolContent, toolOutputText, type MiniToolPart } from "@opencode/tui/mini/tool" import { UI } from "./ui" type Model = { diff --git a/packages/cli/src/run/run.ts b/packages/cli/src/run/run.ts index 737738db7c8..41e0b1b795b 100644 --- a/packages/cli/src/run/run.ts +++ b/packages/cli/src/run/run.ts @@ -1,12 +1,12 @@ -import { Service, type Endpoint } from "@opencode-ai/client/effect/service" -import { OpenCode, type OpenCodeClient, type SessionMessageAssistantTool } from "@opencode-ai/client/promise" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { Service, type Endpoint } from "@opencode/client/effect/service" +import { OpenCode, type OpenCodeClient, type SessionMessageAssistantTool } from "@opencode/client/promise" +import { FSUtil } from "@opencode/util/fs-util" import { open } from "node:fs/promises" import path from "node:path" import { readStdin } from "../util/io" import { ServerConnection } from "../services/server-connection" import { parseSessionTargetModel, resolveSessionTarget } from "../session-target" -import { toolInlineInfo } from "@opencode-ai/tui/mini/tool" +import { toolInlineInfo } from "@opencode/tui/mini/tool" import { runNonInteractivePrompt } from "./noninteractive" import { UI } from "./ui" import { Env } from "../env" diff --git a/packages/cli/src/run/v1.ts b/packages/cli/src/run/v1.ts index f58b73bc105..966d85e0876 100644 --- a/packages/cli/src/run/v1.ts +++ b/packages/cli/src/run/v1.ts @@ -1,4 +1,4 @@ -import type { Endpoint } from "@opencode-ai/client/effect/service" +import type { Endpoint } from "@opencode/client/effect/service" import { Effect } from "effect" import path from "node:path" import { Standalone } from "../services/standalone" diff --git a/packages/cli/src/server-process.ts b/packages/cli/src/server-process.ts index 3438ef9907e..764b2dc64f0 100644 --- a/packages/cli/src/server-process.ts +++ b/packages/cli/src/server-process.ts @@ -1,14 +1,14 @@ export * as ServerProcess from "./server-process" import { NodeServices } from "@effect/platform-node" -import { Service, type DiscoverOptions } from "@opencode-ai/client/effect/service" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" +import { Service, type DiscoverOptions } from "@opencode/client/effect/service" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" import { OPENCODE_ARTIFACT, OPENCODE_CHANNEL, OPENCODE_VERSION } from "./version" -import { AppProcess } from "@opencode-ai/util/process" +import { AppProcess } from "@opencode/util/process" import { randomBytes, randomUUID } from "node:crypto" import { Effect, Option, Redacted, Schedule, Schema } from "effect" -import { PersistentPty } from "@opencode-ai/schema/persistent-pty" +import { PersistentPty } from "@opencode/schema/persistent-pty" import { HttpServer } from "effect/unstable/http" import { Env } from "./env" import { ServiceConfig } from "./services/service-config" @@ -64,7 +64,7 @@ const processEffect = Effect.fnUntraced(function* (options: Options) { ? yield* Service.incumbent({ ...serviceOptions, url: serviceURL(hostname, port) }) : undefined if (incumbent !== undefined) return - const { start } = yield* Effect.promise(() => import("@opencode-ai/server/process")) + const { start } = yield* Effect.promise(() => import("@opencode/server/process")) const environmentPassword = yield* Env.password // Keep the lease credential out of the environment inherited by tools. if (options.mode === "stdio") { diff --git a/packages/cli/src/services/server-connection.ts b/packages/cli/src/services/server-connection.ts index 048966554dd..496abd4a6cb 100644 --- a/packages/cli/src/services/server-connection.ts +++ b/packages/cli/src/services/server-connection.ts @@ -1,5 +1,5 @@ -import { Service, type Endpoint, type EnsureOptions } from "@opencode-ai/client/effect/service" -import { ClientError, isUnauthorizedError, OpenCode } from "@opencode-ai/client/promise" +import { Service, type Endpoint, type EnsureOptions } from "@opencode/client/effect/service" +import { ClientError, isUnauthorizedError, OpenCode } from "@opencode/client/promise" import { OPENCODE_VERSION } from "../version" import { Effect, Redacted } from "effect" import { Env } from "../env" diff --git a/packages/cli/src/services/service-config.ts b/packages/cli/src/services/service-config.ts index ba4512a8c79..d857efa919c 100644 --- a/packages/cli/src/services/service-config.ts +++ b/packages/cli/src/services/service-config.ts @@ -1,7 +1,7 @@ -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { OPENCODE_CHANNEL, OPENCODE_VERSION } from "../version" -import { Hash } from "@opencode-ai/util/hash" -import { Service } from "@opencode-ai/client/effect/service" +import { Hash } from "@opencode/util/hash" +import { Service } from "@opencode/client/effect/service" import { Effect, FileSystem, Option, Schema } from "effect" import { randomBytes } from "crypto" import path from "path" diff --git a/packages/cli/src/services/service-registration.ts b/packages/cli/src/services/service-registration.ts index 80ff7dfbd71..68e3e307d45 100644 --- a/packages/cli/src/services/service-registration.ts +++ b/packages/cli/src/services/service-registration.ts @@ -1,6 +1,6 @@ export * as ServiceRegistration from "./service-registration" -import { Service, type Info } from "@opencode-ai/client/effect/service" +import { Service, type Info } from "@opencode/client/effect/service" import path from "node:path" import { Effect, FileSystem, Schedule, Schema } from "effect" import { HttpServer } from "effect/unstable/http" diff --git a/packages/cli/src/services/standalone.ts b/packages/cli/src/services/standalone.ts index 4be0d901905..9ec70ac8431 100644 --- a/packages/cli/src/services/standalone.ts +++ b/packages/cli/src/services/standalone.ts @@ -1,6 +1,6 @@ -import { Service, type Endpoint } from "@opencode-ai/client/effect/service" -import { CrossSpawnSpawner } from "@opencode-ai/util/cross-spawn-spawner" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Service, type Endpoint } from "@opencode/client/effect/service" +import { CrossSpawnSpawner } from "@opencode/util/cross-spawn-spawner" +import { LayerNode } from "@opencode/util/effect/layer-node" import { Deferred, Effect, Schema, Stream } from "effect" import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process" import { randomBytes } from "node:crypto" diff --git a/packages/cli/src/services/update-preflight.tsx b/packages/cli/src/services/update-preflight.tsx index f18f4a8ff3a..c163b0a93d3 100644 --- a/packages/cli/src/services/update-preflight.tsx +++ b/packages/cli/src/services/update-preflight.tsx @@ -4,9 +4,9 @@ import { createCliRenderer, RGBA, TextAttributes, type CliRenderer, type ThemeMode } from "@opentui/core" import { render, useTerminalDimensions } from "@opentui/solid" import { OPENCODE_VERSION } from "../version" -import { registerOpencodeSpinner } from "@opencode-ai/tui/component/register-spinner" -import { SPINNER_FRAMES } from "@opencode-ai/tui/component/spinner" -import { go } from "@opencode-ai/tui/logo" +import { registerOpencodeSpinner } from "@opencode/tui/component/register-spinner" +import { SPINNER_FRAMES } from "@opencode/tui/component/spinner" +import { go } from "@opencode/tui/logo" import { setTimeout } from "node:timers/promises" import { batch, diff --git a/packages/cli/src/services/updater.ts b/packages/cli/src/services/updater.ts index b1372dfa31a..d7a6de0b37b 100644 --- a/packages/cli/src/services/updater.ts +++ b/packages/cli/src/services/updater.ts @@ -1,5 +1,5 @@ -import { Global } from "@opencode-ai/util/global" -import { AppProcess } from "@opencode-ai/util/process" +import { Global } from "@opencode/util/global" +import { AppProcess } from "@opencode/util/process" import { OPENCODE_ARTIFACT, OPENCODE_CHANNEL, OPENCODE_LOCAL, OPENCODE_VERSION } from "../version" import { Context, Duration, Effect, FileSystem, Layer, Ref, Schedule } from "effect" import { ChildProcess } from "effect/unstable/process" diff --git a/packages/cli/src/services/web-ui.ts b/packages/cli/src/services/web-ui.ts index 9a3615720a2..56c55991a2c 100644 --- a/packages/cli/src/services/web-ui.ts +++ b/packages/cli/src/services/web-ui.ts @@ -1,4 +1,4 @@ -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Effect, FileSystem } from "effect" import { HttpServerError, HttpServerRequest, HttpServerResponse } from "effect/unstable/http" import { createHash } from "node:crypto" diff --git a/packages/cli/src/session-target.ts b/packages/cli/src/session-target.ts index 4d6a7b20258..06b5f1b67d4 100644 --- a/packages/cli/src/session-target.ts +++ b/packages/cli/src/session-target.ts @@ -1,5 +1,5 @@ -import type { LocationGetOutput, ModelRef, OpenCodeClient, SessionInfo } from "@opencode-ai/client/promise" -import { Model } from "@opencode-ai/schema/model" +import type { LocationGetOutput, ModelRef, OpenCodeClient, SessionInfo } from "@opencode/client/promise" +import { Model } from "@opencode/schema/model" const SESSION_PAGE_LIMIT = 50 diff --git a/packages/cli/src/ui/timeline.tsx b/packages/cli/src/ui/timeline.tsx index d5319098ab9..2ed7ade3ede 100644 --- a/packages/cli/src/ui/timeline.tsx +++ b/packages/cli/src/ui/timeline.tsx @@ -1,7 +1,7 @@ /** @jsxImportSource @opentui/solid */ import { createCliRenderer, RGBA, type CliRenderer, type ColorInput, type ScrollbackWriter } from "@opentui/core" import { createScrollbackWriter, render, useKeyboard } from "@opentui/solid" -import { registerOpencodeSpinner } from "@opencode-ai/tui/component/register-spinner" +import { registerOpencodeSpinner } from "@opencode/tui/component/register-spinner" import { Show, createSignal } from "solid-js" registerOpencodeSpinner() diff --git a/packages/cli/test/acp/event-behavior.test.ts b/packages/cli/test/acp/event-behavior.test.ts index 6985a7cca44..8420904046a 100644 --- a/packages/cli/test/acp/event-behavior.test.ts +++ b/packages/cli/test/acp/event-behavior.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import type { AgentSideConnection } from "@agentclientprotocol/sdk" -import type { SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionMessageInfo } from "@opencode/client/promise" import { resolve } from "node:path" import { replayMessages, streamTurn, type ChildSessionUpdate, type TurnControl } from "../../src/acp/event" import { createSseFixture, durableEvent, ephemeralEvent, withTimeout } from "./sse-fixture" diff --git a/packages/cli/test/acp/event.test.ts b/packages/cli/test/acp/event.test.ts index b6bef9a5670..5ed9f5da066 100644 --- a/packages/cli/test/acp/event.test.ts +++ b/packages/cli/test/acp/event.test.ts @@ -1,6 +1,6 @@ import { expect, test } from "bun:test" import type { AgentSideConnection } from "@agentclientprotocol/sdk" -import { OpenCode } from "@opencode-ai/client/promise" +import { OpenCode } from "@opencode/client/promise" import { streamTurn } from "../../src/acp/event" test("acp prompt resolves after ordered turn updates", async () => { diff --git a/packages/cli/test/acp/service-fixture.ts b/packages/cli/test/acp/service-fixture.ts index 7b615ac6e50..f690def4584 100644 --- a/packages/cli/test/acp/service-fixture.ts +++ b/packages/cli/test/acp/service-fixture.ts @@ -8,7 +8,7 @@ import { type SessionInfo, type SkillInfo, type TokenUsageInfo, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { ACPService } from "../../src/acp/service" export type FixtureRequest = { diff --git a/packages/cli/test/acp/service.test.ts b/packages/cli/test/acp/service.test.ts index 6410acf7f9b..30ca6dab80d 100644 --- a/packages/cli/test/acp/service.test.ts +++ b/packages/cli/test/acp/service.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import type { AgentSideConnection } from "@agentclientprotocol/sdk" -import { OpenCode } from "@opencode-ai/client/promise" +import { OpenCode } from "@opencode/client/promise" import { ACPService } from "../../src/acp/service" import { ChildSessionUpdatesCapability } from "../../src/acp/event" diff --git a/packages/cli/test/acp/sse-fixture.ts b/packages/cli/test/acp/sse-fixture.ts index 36497c8f6bc..8b8516a99aa 100644 --- a/packages/cli/test/acp/sse-fixture.ts +++ b/packages/cli/test/acp/sse-fixture.ts @@ -1,4 +1,4 @@ -import { OpenCode, type OpenCodeEvent, type SessionMessageInfo } from "@opencode-ai/client/promise" +import { OpenCode, type OpenCodeEvent, type SessionMessageInfo } from "@opencode/client/promise" type DurableEvent = Extract type EphemeralEvent = Exclude diff --git a/packages/cli/test/config.test.ts b/packages/cli/test/config.test.ts index f8cb3cd88d8..1b6cd4a4aeb 100644 --- a/packages/cli/test/config.test.ts +++ b/packages/cli/test/config.test.ts @@ -1,6 +1,6 @@ import { NodeFileSystem } from "@effect/platform-node" -import { Flock } from "@opencode-ai/util/flock" -import { Global } from "@opencode-ai/util/global" +import { Flock } from "@opencode/util/flock" +import { Global } from "@opencode/util/global" import { Effect, FileSystem, Option, Schema } from "effect" import { expect, test } from "bun:test" import { parse } from "jsonc-parser" diff --git a/packages/cli/test/cors.test.ts b/packages/cli/test/cors.test.ts index 5adab448fbc..d87589ef9a6 100644 --- a/packages/cli/test/cors.test.ts +++ b/packages/cli/test/cors.test.ts @@ -1,5 +1,5 @@ import { NodeServices } from "@effect/platform-node" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { expect, test } from "bun:test" import { Effect, Exit, FileSystem } from "effect" import { Command } from "effect/unstable/cli" diff --git a/packages/cli/test/cpu-profile.test.ts b/packages/cli/test/cpu-profile.test.ts index e64951193fc..50526e15646 100644 --- a/packages/cli/test/cpu-profile.test.ts +++ b/packages/cli/test/cpu-profile.test.ts @@ -1,5 +1,5 @@ import { NodeFileSystem } from "@effect/platform-node" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { expect, test } from "bun:test" import { Effect } from "effect" import { CpuProfile } from "../src/cpu-profile" diff --git a/packages/cli/test/fixture/config-concurrency.ts b/packages/cli/test/fixture/config-concurrency.ts index 43e84d94eac..2460267506d 100644 --- a/packages/cli/test/fixture/config-concurrency.ts +++ b/packages/cli/test/fixture/config-concurrency.ts @@ -1,5 +1,5 @@ import { NodeFileSystem } from "@effect/platform-node" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Effect, FileSystem } from "effect" import { Config } from "../../src/config" diff --git a/packages/cli/test/fixture/standalone-owner.ts b/packages/cli/test/fixture/standalone-owner.ts index a5c2acb75b5..7af034cc487 100644 --- a/packages/cli/test/fixture/standalone-owner.ts +++ b/packages/cli/test/fixture/standalone-owner.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { Service } from "@opencode-ai/client/effect/service" +import { Service } from "@opencode/client/effect/service" import path from "node:path" import { Standalone } from "../../src/services/standalone" diff --git a/packages/cli/test/import-boundaries.test.ts b/packages/cli/test/import-boundaries.test.ts index 79773cd1456..3c24c3c16f2 100644 --- a/packages/cli/test/import-boundaries.test.ts +++ b/packages/cli/test/import-boundaries.test.ts @@ -10,15 +10,15 @@ describe("CLI frontend import boundaries", () => { const imports: string[] = [] for await (const file of glob.scan({ cwd: path.join(root, "packages/cli") })) { const source = await Bun.file(path.join(root, "packages/cli", file)).text() - if (/["']@opencode-ai\/core(?:\/[^"']*)?["']/.test(source)) imports.push(file) + if (/["']@opencode\/core(?:\/[^"']*)?["']/.test(source)) imports.push(file) } expect(imports).toEqual([]) }) test("exposes only the intentional package entrypoints", async () => { - const run = await import("@opencode-ai/cli/run") - const mini = await import("@opencode-ai/tui/mini") - const tool = await import("@opencode-ai/tui/mini/tool") + const run = await import("@opencode/cli/run") + const mini = await import("@opencode/tui/mini") + const tool = await import("@opencode/tui/mini/tool") const cli = await Bun.file(path.join(root, "packages/cli/package.json")).json() expect(Object.keys(run).sort()).toEqual(["runNonInteractive", "runV1Bridge"]) @@ -59,7 +59,7 @@ describe("CLI frontend import boundaries", () => { const imports: string[] = [] for await (const file of glob.scan({ cwd: path.join(root, "packages/tui/src/mini") })) { const source = await Bun.file(path.join(root, "packages/tui/src/mini", file)).text() - if (/["']@opencode-ai\/(?:core|server|cli)(?:\/[^"']*)?["']/.test(source)) imports.push(file) + if (/["']@opencode\/(?:core|server|cli)(?:\/[^"']*)?["']/.test(source)) imports.push(file) } expect(imports).toEqual([]) diff --git a/packages/cli/test/mini-config.test.ts b/packages/cli/test/mini-config.test.ts index a93990d0334..78eadc323e1 100644 --- a/packages/cli/test/mini-config.test.ts +++ b/packages/cli/test/mini-config.test.ts @@ -1,5 +1,5 @@ import { NodeFileSystem } from "@effect/platform-node" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Effect, Option } from "effect" import { expect, mock, test } from "bun:test" import { mkdir, rm } from "node:fs/promises" diff --git a/packages/cli/test/mini.test.ts b/packages/cli/test/mini.test.ts index fa0390db574..9ee1594488e 100644 --- a/packages/cli/test/mini.test.ts +++ b/packages/cli/test/mini.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { ClientError, OpenCode } from "@opencode-ai/client/promise" +import { ClientError, OpenCode } from "@opencode/client/promise" import { OPENCODE_VERSION } from "../src/version" import path from "node:path" import { createMiniConnection, mergeInput as mergeInteractiveInput, resolveMiniTarget } from "../src/mini" diff --git a/packages/cli/test/run/noninteractive.test.ts b/packages/cli/test/run/noninteractive.test.ts index 8da880f1f5a..a9399e293b6 100644 --- a/packages/cli/test/run/noninteractive.test.ts +++ b/packages/cli/test/run/noninteractive.test.ts @@ -4,7 +4,7 @@ import { type EventSubscribeOutput, type SessionMessageAssistantTool, type SessionMessageInfo, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { runNonInteractivePrompt } from "../../src/run/noninteractive" type V2Event = EventSubscribeOutput diff --git a/packages/cli/test/server-connection.test.ts b/packages/cli/test/server-connection.test.ts index f5ec0dc6e8f..a18e6958716 100644 --- a/packages/cli/test/server-connection.test.ts +++ b/packages/cli/test/server-connection.test.ts @@ -1,5 +1,5 @@ import { NodeFileSystem } from "@effect/platform-node" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { OPENCODE_VERSION } from "../src/version" import { expect, test } from "bun:test" import { Effect, FileSystem, Scope } from "effect" diff --git a/packages/cli/test/service.test.ts b/packages/cli/test/service.test.ts index 00c7c9a97d0..035fd3a83c4 100644 --- a/packages/cli/test/service.test.ts +++ b/packages/cli/test/service.test.ts @@ -1,6 +1,6 @@ import { NodeFileSystem } from "@effect/platform-node" -import { Service, type Info } from "@opencode-ai/client/effect/service" -import { Global } from "@opencode-ai/util/global" +import { Service, type Info } from "@opencode/client/effect/service" +import { Global } from "@opencode/util/global" import { OPENCODE_VERSION } from "../src/version" import { expect, test } from "bun:test" import { Effect, Schema } from "effect" diff --git a/packages/cli/test/session-target.test.ts b/packages/cli/test/session-target.test.ts index a40e8819c84..301de51cb26 100644 --- a/packages/cli/test/session-target.test.ts +++ b/packages/cli/test/session-target.test.ts @@ -1,5 +1,5 @@ import { afterEach, describe, expect, mock, spyOn, test } from "bun:test" -import { OpenCode, type LocationGetOutput, type ModelRef, type SessionInfo } from "@opencode-ai/client/promise" +import { OpenCode, type LocationGetOutput, type ModelRef, type SessionInfo } from "@opencode/client/promise" import { resolveSessionTarget, SessionTargetMutationError } from "../src/session-target" function location(directory: string, workspaceID?: string): LocationGetOutput { diff --git a/packages/cli/test/stats.test.ts b/packages/cli/test/stats.test.ts index e3d3d81b09a..1dc48a594d0 100644 --- a/packages/cli/test/stats.test.ts +++ b/packages/cli/test/stats.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { ClientError, type SessionStatsInfo } from "@opencode-ai/client" +import { ClientError, type SessionStatsInfo } from "@opencode/client" import { Effect } from "effect" import { renderStats, request } from "../src/commands/handlers/stats" diff --git a/packages/cli/test/updater-install.test.ts b/packages/cli/test/updater-install.test.ts index f452753afce..8f606e96982 100644 --- a/packages/cli/test/updater-install.test.ts +++ b/packages/cli/test/updater-install.test.ts @@ -1,6 +1,6 @@ import { NodeServices } from "@effect/platform-node" -import { Global } from "@opencode-ai/util/global" -import { AppProcess } from "@opencode-ai/util/process" +import { Global } from "@opencode/util/global" +import { AppProcess } from "@opencode/util/process" import { expect, spyOn, test } from "bun:test" import { Effect, FileSystem, Stream } from "effect" import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process" @@ -17,7 +17,7 @@ function fixture( respond: (command: ChildProcess.StandardCommand) => Partial & { error?: AppProcess.AppProcessError } = () => ({}), - name = "@opencode-ai/cli", + name = "@opencode/cli", ) { return Effect.gen(function* () { const fs = yield* FileSystem.FileSystem @@ -88,12 +88,12 @@ function fixture( } const installs = [ - { method: "npm", command: ["npm", "install", "--global", "@opencode-ai/cli@2.3.4-beta.1"] }, + { method: "npm", command: ["npm", "install", "--global", "@opencode/cli@2.3.4-beta.1"] }, { method: "pnpm", - command: ["pnpm", "add", "--global", "--allow-build=@opencode-ai/cli", "@opencode-ai/cli@2.3.4-beta.1"], + command: ["pnpm", "add", "--global", "--allow-build=@opencode/cli", "@opencode/cli@2.3.4-beta.1"], }, - { method: "yarn", command: ["yarn", "global", "add", "@opencode-ai/cli@2.3.4-beta.1"] }, + { method: "yarn", command: ["yarn", "global", "add", "@opencode/cli@2.3.4-beta.1"] }, ] as const installs.forEach(({ method, command }) => { @@ -117,7 +117,7 @@ installs.forEach(({ method, command }) => { const cache = test.commands[0]?.[5] expect(cache).toStartWith(path.join(test.global.cache, "update-")) expect(test.commands).toEqual([ - ["bun", "install", "--global", "--trust", "--cache-dir", cache, "@opencode-ai/cli@2.3.4-beta.1"], + ["bun", "install", "--global", "--trust", "--cache-dir", cache, "@opencode/cli@2.3.4-beta.1"], ]) expect(yield* test.fs.readDirectory(test.global.cache)).toEqual([]) expect(result._tag).toBe(exitCode === 0 ? "None" : "Some") @@ -184,12 +184,12 @@ it.live("install failures expose stderr and process errors do not report success it.live(`method detection identifies ${method ?? "an unknown installation"} using the V2 package`, () => Effect.gen(function* () { const test = yield* fixture((command) => ({ - stdout: Buffer.from(command.command === method ? "@opencode-ai/cli@2.3.4" : "opencode-ai@1.0.0"), + stdout: Buffer.from(command.command === method ? "@opencode/cli@2.3.4" : "opencode-ai@1.0.0"), })) expect(yield* test.updater.method()).toBe(method) expect(test.commands).toEqual([ - ["npm", "list", "-g", "--depth=0", "@opencode-ai/cli"], - ["pnpm", "list", "-g", "--depth=0", "@opencode-ai/cli"], + ["npm", "list", "-g", "--depth=0", "@opencode/cli"], + ["pnpm", "list", "-g", "--depth=0", "@opencode/cli"], ["bun", "pm", "ls", "-g"], ["yarn", "global", "list"], ]) @@ -201,7 +201,7 @@ it.live("method detection tolerates unavailable package managers", () => Effect.gen(function* () { const test = yield* fixture((command) => command.command === "yarn" - ? { stdout: Buffer.from("@opencode-ai/cli@2.3.4") } + ? { stdout: Buffer.from("@opencode/cli@2.3.4") } : { error: new AppProcess.AppProcessError({ command: command.command }) }, ) expect(yield* test.updater.method()).toBe("yarn") @@ -238,20 +238,20 @@ if (typeof OPENCODE_CLI_NAME === "string" && OPENCODE_CLI_NAME === "opencode2-no Effect.gen(function* () { const test = yield* fixture( (command) => ({ - stdout: Buffer.from(command.command === "npm" ? "opencode-node@2.3.4" : ""), + stdout: Buffer.from(command.command === "npm" ? "@opencode/cli-node@2.3.4" : ""), }), - "opencode-node", + "@opencode/cli-node", ) expect(yield* test.updater.method()).toBe("npm") yield* test.updater.upgrade("npm", "v2.3.4") yield* test.updater.upgrade("pnpm", "v2.3.4") expect(test.commands).toEqual([ - ["npm", "list", "-g", "--depth=0", "opencode-node"], - ["pnpm", "list", "-g", "--depth=0", "opencode-node"], + ["npm", "list", "-g", "--depth=0", "@opencode/cli-node"], + ["pnpm", "list", "-g", "--depth=0", "@opencode/cli-node"], ["bun", "pm", "ls", "-g"], ["yarn", "global", "list"], - ["npm", "install", "--global", "opencode-node@2.3.4"], - ["pnpm", "add", "--global", "--allow-build=opencode-node", "opencode-node@2.3.4"], + ["npm", "install", "--global", "@opencode/cli-node@2.3.4"], + ["pnpm", "add", "--global", "--allow-build=@opencode/cli-node", "@opencode/cli-node@2.3.4"], ]) }), ) diff --git a/packages/cli/vite.node.config.ts b/packages/cli/vite.node.config.ts index 92f7fef1e18..62993b9f39c 100644 --- a/packages/cli/vite.node.config.ts +++ b/packages/cli/vite.node.config.ts @@ -158,12 +158,12 @@ const __filename = import.meta.filename const __dirname = import.meta.dirname const require = __cjs_mod__.createRequire(import.meta.url) const __ocPluginModules = ${JSON.stringify({ - "@opencode-ai/plugin": "opencode:plugin-v2", - "@opencode-ai/plugin/promise/plugin": "opencode:plugin-promise-plugin", - "@opencode-ai/plugin/promise/tool": "opencode:plugin-promise-tool", - "@opencode-ai/plugin/effect": "opencode:plugin-v2-effect", - "@opencode-ai/plugin/effect/plugin": "opencode:plugin-v2-effect-plugin", - "@opencode-ai/plugin/effect/tool": "opencode:plugin-v2-effect-tool", + "@opencode/plugin": "opencode:plugin-v2", + "@opencode/plugin/promise/plugin": "opencode:plugin-promise-plugin", + "@opencode/plugin/promise/tool": "opencode:plugin-promise-tool", + "@opencode/plugin/effect": "opencode:plugin-v2-effect", + "@opencode/plugin/effect/plugin": "opencode:plugin-v2-effect-plugin", + "@opencode/plugin/effect/tool": "opencode:plugin-v2-effect-tool", })} const __ocPluginSources = ${JSON.stringify({ "opencode:plugin-v2": promiseModule, diff --git a/packages/client/README.md b/packages/client/README.md index 8c53e47c7e6..308078cd11d 100644 --- a/packages/client/README.md +++ b/packages/client/README.md @@ -1,22 +1,22 @@ -# @opencode-ai/client +# @opencode/client Private generation target for clients derived directly from OpenCode's authoritative Effect `HttpApi`. ## Entrypoints -- `@opencode-ai/client`: zero-Effect Promise client using `fetch`. -- `@opencode-ai/client/effect`: rich Effect network client using an environment-provided `HttpClient`. +- `@opencode/client`: zero-Effect Promise client using `fetch`. +- `@opencode/client/effect`: rich Effect network client using an environment-provided `HttpClient`. -The generated surface includes every standard HTTP group from Server's concrete API. The build compiler reads `@opencode-ai/server/api`; the generated Effect runtime imports a client-local projection built from Protocol, with a generation-equivalence test preventing transport drift. Custom transports such as the PTY WebSocket connection remain outside the generic HTTP client. Run `bun run generate` after changing the contract and `bun run check:generated` to detect committed-output drift. +The generated surface includes every standard HTTP group from Server's concrete API. The build compiler reads `@opencode/server/api`; the generated Effect runtime imports a client-local projection built from Protocol, with a generation-equivalence test preventing transport drift. Custom transports such as the PTY WebSocket connection remain outside the generic HTTP client. Run `bun run generate` after changing the contract and `bun run check:generated` to detect committed-output drift. -The Effect entrypoint uses canonical decoded values such as `Session.ID`, `Location.Ref`, and `Prompt`. These datatypes come from the lightweight `@opencode-ai/schema` package and are re-exported so callers depend only on the client surface. Protocol owns endpoint construction and middleware placement; Server supplies the concrete middleware keys used by the build-time API. +The Effect entrypoint uses canonical decoded values such as `Session.ID`, `Location.Ref`, and `Prompt`. These datatypes come from the lightweight `@opencode/schema` package and are re-exported so callers depend only on the client surface. Protocol owns endpoint construction and middleware placement; Server supplies the concrete middleware keys used by the build-time API. The Promise root remains structural and has no Core or Effect runtime dependency. `/effect` depends only on Effect, Schema, and Protocol and is browser-bundle safe. Bundle-boundary tests enforce both import graphs. Effect consumers construct canonical decoded inputs: ```ts -import { AbsolutePath, Location, OpenCode, Prompt } from "@opencode-ai/client/effect" +import { AbsolutePath, Location, OpenCode, Prompt } from "@opencode/client/effect" const client = yield * OpenCode.make({ baseUrl: "https://opencode.example" }) yield * diff --git a/packages/client/package.json b/packages/client/package.json index 57b3eb1f27d..2636b5dd6be 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/client", + "name": "@opencode/client", "version": "1.17.13", "type": "module", "license": "MIT", @@ -33,8 +33,8 @@ "typecheck": "tsgo --noEmit" }, "dependencies": { - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/protocol": "workspace:*" + "@opencode/schema": "workspace:*", + "@opencode/protocol": "workspace:*" }, "peerDependencies": { "effect": "4.0.0-rc.112", @@ -50,7 +50,7 @@ }, "devDependencies": { "@effect/platform-node": "catalog:", - "@opencode-ai/httpapi-codegen": "workspace:*", + "@opencode/httpapi-codegen": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:", diff --git a/packages/client/script/build.ts b/packages/client/script/build.ts index 544d5229fa8..e5e11e16b64 100644 --- a/packages/client/script/build.ts +++ b/packages/client/script/build.ts @@ -1,87 +1,87 @@ import { NodeFileSystem } from "@effect/platform-node" -import { compile, emitEffectImported, emitEffectShape, emitPromise, write } from "@opencode-ai/httpapi-codegen" -import { ClientApi, effectOmitEndpoints, groupNames, promiseOmitEndpoints } from "@opencode-ai/protocol/client" -import { Agent } from "@opencode-ai/schema/agent" -import { Command } from "@opencode-ai/schema/command" -import { Config } from "@opencode-ai/schema/config" -import { Credential } from "@opencode-ai/schema/credential" -import { Event } from "@opencode-ai/schema/event" -import { EventLog } from "@opencode-ai/schema/event-log" -import { FileDiff } from "@opencode-ai/schema/file-diff" -import { FileSystem } from "@opencode-ai/schema/filesystem" -import { Form } from "@opencode-ai/schema/form" -import { InstructionEntry } from "@opencode-ai/schema/instruction-entry" -import { Integration } from "@opencode-ai/schema/integration" -import { Location } from "@opencode-ai/schema/location" -import { Mcp } from "@opencode-ai/schema/mcp" -import { Model } from "@opencode-ai/schema/model" -import { Permission } from "@opencode-ai/schema/permission" -import { PermissionSaved } from "@opencode-ai/schema/permission-saved" -import { Plugin } from "@opencode-ai/schema/plugin" -import { Project } from "@opencode-ai/schema/project" -import { Worktree } from "@opencode-ai/schema/worktree" -import { AgentAttachment, FileAttachment, Prompt, PromptMention } from "@opencode-ai/schema/prompt" -import { PromptInput } from "@opencode-ai/schema/prompt-input" -import { Provider } from "@opencode-ai/schema/provider" -import { Pty } from "@opencode-ai/schema/pty" -import { PtyTicket } from "@opencode-ai/schema/pty-ticket" -import { Question } from "@opencode-ai/schema/question" -import { Reference } from "@opencode-ai/schema/reference" -import { AbsolutePath, PositiveInt, RelativePath } from "@opencode-ai/schema/schema" -import { Session } from "@opencode-ai/schema/session" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { SessionInbox } from "@opencode-ai/schema/session-inbox" -import { Shell } from "@opencode-ai/schema/shell" -import { Skill } from "@opencode-ai/schema/skill" -import { Vcs } from "@opencode-ai/schema/vcs" -import { WebSearch } from "@opencode-ai/schema/websearch" -import { Workspace } from "@opencode-ai/schema/workspace" +import { compile, emitEffectImported, emitEffectShape, emitPromise, write } from "@opencode/httpapi-codegen" +import { ClientApi, effectOmitEndpoints, groupNames, promiseOmitEndpoints } from "@opencode/protocol/client" +import { Agent } from "@opencode/schema/agent" +import { Command } from "@opencode/schema/command" +import { Config } from "@opencode/schema/config" +import { Credential } from "@opencode/schema/credential" +import { Event } from "@opencode/schema/event" +import { EventLog } from "@opencode/schema/event-log" +import { FileDiff } from "@opencode/schema/file-diff" +import { FileSystem } from "@opencode/schema/filesystem" +import { Form } from "@opencode/schema/form" +import { InstructionEntry } from "@opencode/schema/instruction-entry" +import { Integration } from "@opencode/schema/integration" +import { Location } from "@opencode/schema/location" +import { Mcp } from "@opencode/schema/mcp" +import { Model } from "@opencode/schema/model" +import { Permission } from "@opencode/schema/permission" +import { PermissionSaved } from "@opencode/schema/permission-saved" +import { Plugin } from "@opencode/schema/plugin" +import { Project } from "@opencode/schema/project" +import { Worktree } from "@opencode/schema/worktree" +import { AgentAttachment, FileAttachment, Prompt, PromptMention } from "@opencode/schema/prompt" +import { PromptInput } from "@opencode/schema/prompt-input" +import { Provider } from "@opencode/schema/provider" +import { Pty } from "@opencode/schema/pty" +import { PtyTicket } from "@opencode/schema/pty-ticket" +import { Question } from "@opencode/schema/question" +import { Reference } from "@opencode/schema/reference" +import { AbsolutePath, PositiveInt, RelativePath } from "@opencode/schema/schema" +import { Session } from "@opencode/schema/session" +import { SessionMessage } from "@opencode/schema/session-message" +import { SessionInbox } from "@opencode/schema/session-inbox" +import { Shell } from "@opencode/schema/shell" +import { Skill } from "@opencode/schema/skill" +import { Vcs } from "@opencode/schema/vcs" +import { WebSearch } from "@opencode/schema/websearch" +import { Workspace } from "@opencode/schema/workspace" import { Effect, Schema } from "effect" import { fileURLToPath } from "url" const promiseContract = compile(ClientApi, { groupNames, omitEndpoints: promiseOmitEndpoints }) const effectContract = compile(ClientApi, { groupNames, omitEndpoints: effectOmitEndpoints }) const effectTypeReferences = [ - ...namespaceTypes("Agent", "@opencode-ai/schema/agent", Agent), - ...namespaceTypes("Command", "@opencode-ai/schema/command", Command), - ...namespaceTypes("Config", "@opencode-ai/schema/config", Config), - ...namespaceTypes("Credential", "@opencode-ai/schema/credential", Credential), - ...namespaceTypes("Event", "@opencode-ai/schema/event", Event), - ...namespaceTypes("EventLog", "@opencode-ai/schema/event-log", EventLog), - ...namespaceTypes("FileDiff", "@opencode-ai/schema/file-diff", FileDiff), - ...namespaceTypes("FileSystem", "@opencode-ai/schema/filesystem", FileSystem), - ...namespaceTypes("Form", "@opencode-ai/schema/form", Form), - ...namespaceTypes("InstructionEntry", "@opencode-ai/schema/instruction-entry", InstructionEntry), - ...namespaceTypes("Integration", "@opencode-ai/schema/integration", Integration), - ...namespaceTypes("Location", "@opencode-ai/schema/location", Location), - ...namespaceTypes("Mcp", "@opencode-ai/schema/mcp", Mcp), - ...namespaceTypes("Model", "@opencode-ai/schema/model", Model), - ...namespaceTypes("Permission", "@opencode-ai/schema/permission", Permission), - ...namespaceTypes("PermissionSaved", "@opencode-ai/schema/permission-saved", PermissionSaved), - ...namespaceTypes("Plugin", "@opencode-ai/schema/plugin", Plugin), - ...namespaceTypes("Project", "@opencode-ai/schema/project", Project), - ...namespaceTypes("Worktree", "@opencode-ai/schema/worktree", Worktree), - ...namespaceTypes("PromptInput", "@opencode-ai/schema/prompt-input", PromptInput), - ...namespaceTypes("Provider", "@opencode-ai/schema/provider", Provider), - ...namespaceTypes("Pty", "@opencode-ai/schema/pty", Pty), - ...namespaceTypes("PtyTicket", "@opencode-ai/schema/pty-ticket", PtyTicket), - ...namespaceTypes("Question", "@opencode-ai/schema/question", Question), - ...namespaceTypes("Reference", "@opencode-ai/schema/reference", Reference), - ...namespaceTypes("Session", "@opencode-ai/schema/session", Session), - ...namespaceTypes("SessionMessage", "@opencode-ai/schema/session-message", SessionMessage), - ...namespaceTypes("SessionInbox", "@opencode-ai/schema/session-inbox", SessionInbox), - ...namespaceTypes("Shell", "@opencode-ai/schema/shell", Shell), - ...namespaceTypes("Skill", "@opencode-ai/schema/skill", Skill), - ...namespaceTypes("Vcs", "@opencode-ai/schema/vcs", Vcs), - ...namespaceTypes("WebSearch", "@opencode-ai/schema/websearch", WebSearch), - ...namespaceTypes("Workspace", "@opencode-ai/schema/workspace", Workspace), - typeReference("Prompt", "@opencode-ai/schema/prompt", Prompt), - typeReference("PromptMention", "@opencode-ai/schema/prompt", PromptMention), - typeReference("FileAttachment", "@opencode-ai/schema/prompt", FileAttachment), - typeReference("AgentAttachment", "@opencode-ai/schema/prompt", AgentAttachment), - typeReference("AbsolutePath", "@opencode-ai/schema/schema", AbsolutePath), - typeReference("PositiveInt", "@opencode-ai/schema/schema", PositiveInt), - typeReference("RelativePath", "@opencode-ai/schema/schema", RelativePath), + ...namespaceTypes("Agent", "@opencode/schema/agent", Agent), + ...namespaceTypes("Command", "@opencode/schema/command", Command), + ...namespaceTypes("Config", "@opencode/schema/config", Config), + ...namespaceTypes("Credential", "@opencode/schema/credential", Credential), + ...namespaceTypes("Event", "@opencode/schema/event", Event), + ...namespaceTypes("EventLog", "@opencode/schema/event-log", EventLog), + ...namespaceTypes("FileDiff", "@opencode/schema/file-diff", FileDiff), + ...namespaceTypes("FileSystem", "@opencode/schema/filesystem", FileSystem), + ...namespaceTypes("Form", "@opencode/schema/form", Form), + ...namespaceTypes("InstructionEntry", "@opencode/schema/instruction-entry", InstructionEntry), + ...namespaceTypes("Integration", "@opencode/schema/integration", Integration), + ...namespaceTypes("Location", "@opencode/schema/location", Location), + ...namespaceTypes("Mcp", "@opencode/schema/mcp", Mcp), + ...namespaceTypes("Model", "@opencode/schema/model", Model), + ...namespaceTypes("Permission", "@opencode/schema/permission", Permission), + ...namespaceTypes("PermissionSaved", "@opencode/schema/permission-saved", PermissionSaved), + ...namespaceTypes("Plugin", "@opencode/schema/plugin", Plugin), + ...namespaceTypes("Project", "@opencode/schema/project", Project), + ...namespaceTypes("Worktree", "@opencode/schema/worktree", Worktree), + ...namespaceTypes("PromptInput", "@opencode/schema/prompt-input", PromptInput), + ...namespaceTypes("Provider", "@opencode/schema/provider", Provider), + ...namespaceTypes("Pty", "@opencode/schema/pty", Pty), + ...namespaceTypes("PtyTicket", "@opencode/schema/pty-ticket", PtyTicket), + ...namespaceTypes("Question", "@opencode/schema/question", Question), + ...namespaceTypes("Reference", "@opencode/schema/reference", Reference), + ...namespaceTypes("Session", "@opencode/schema/session", Session), + ...namespaceTypes("SessionMessage", "@opencode/schema/session-message", SessionMessage), + ...namespaceTypes("SessionInbox", "@opencode/schema/session-inbox", SessionInbox), + ...namespaceTypes("Shell", "@opencode/schema/shell", Shell), + ...namespaceTypes("Skill", "@opencode/schema/skill", Skill), + ...namespaceTypes("Vcs", "@opencode/schema/vcs", Vcs), + ...namespaceTypes("WebSearch", "@opencode/schema/websearch", WebSearch), + ...namespaceTypes("Workspace", "@opencode/schema/workspace", Workspace), + typeReference("Prompt", "@opencode/schema/prompt", Prompt), + typeReference("PromptMention", "@opencode/schema/prompt", PromptMention), + typeReference("FileAttachment", "@opencode/schema/prompt", FileAttachment), + typeReference("AgentAttachment", "@opencode/schema/prompt", AgentAttachment), + typeReference("AbsolutePath", "@opencode/schema/schema", AbsolutePath), + typeReference("PositiveInt", "@opencode/schema/schema", PositiveInt), + typeReference("RelativePath", "@opencode/schema/schema", RelativePath), ] await Effect.runPromise( @@ -107,7 +107,7 @@ await Effect.runPromise( outputTypes: { "event.subscribe": { name: "OpenCodeEvent", - import: 'import type { OpenCodeEvent } from "@opencode-ai/protocol/groups/event"', + import: 'import type { OpenCodeEvent } from "@opencode/protocol/groups/event"', }, }, }), diff --git a/packages/client/script/publish.ts b/packages/client/script/publish.ts index 8e37674b644..30538cbc1cb 100644 --- a/packages/client/script/publish.ts +++ b/packages/client/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/client/src/contract.ts b/packages/client/src/contract.ts index cff1312c8ac..aa033158041 100644 --- a/packages/client/src/contract.ts +++ b/packages/client/src/contract.ts @@ -1 +1 @@ -export { ClientApi, effectOmitEndpoints, groupNames, promiseOmitEndpoints } from "@opencode-ai/protocol/client" +export { ClientApi, effectOmitEndpoints, groupNames, promiseOmitEndpoints } from "@opencode/protocol/client" diff --git a/packages/client/src/effect/api/api.ts b/packages/client/src/effect/api/api.ts index c45a1d80366..38758b0a799 100644 --- a/packages/client/src/effect/api/api.ts +++ b/packages/client/src/effect/api/api.ts @@ -1,44 +1,44 @@ -// Generated by @opencode-ai/httpapi-codegen. Do not edit. +// Generated by @opencode/httpapi-codegen. Do not edit. import type { Effect, Stream } from "effect" -import type { Location } from "@opencode-ai/schema/location" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Plugin } from "@opencode-ai/schema/plugin" -import type { Workspace } from "@opencode-ai/schema/workspace" -import type { Session } from "@opencode-ai/schema/session" -import type { AbsolutePath } from "@opencode-ai/schema/schema" -import type { Project } from "@opencode-ai/schema/project" -import type { RelativePath } from "@opencode-ai/schema/schema" +import type { Location } from "@opencode/schema/location" +import type { Agent } from "@opencode/schema/agent" +import type { Plugin } from "@opencode/schema/plugin" +import type { Workspace } from "@opencode/schema/workspace" +import type { Session } from "@opencode/schema/session" +import type { AbsolutePath } from "@opencode/schema/schema" +import type { Project } from "@opencode/schema/project" +import type { RelativePath } from "@opencode/schema/schema" import type { Brand } from "effect" -import type { Model } from "@opencode-ai/schema/model" +import type { Model } from "@opencode/schema/model" import type { DateTime } from "effect" -import type { SessionMessage } from "@opencode-ai/schema/session-message" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" -import type { PromptInput } from "@opencode-ai/schema/prompt-input" -import type { AgentAttachment } from "@opencode-ai/schema/prompt" -import type { Skill } from "@opencode-ai/schema/skill" -import type { Event } from "@opencode-ai/schema/event" -import type { InstructionEntry } from "@opencode-ai/schema/instruction-entry" +import type { SessionMessage } from "@opencode/schema/session-message" +import type { SessionInbox } from "@opencode/schema/session-inbox" +import type { PromptInput } from "@opencode/schema/prompt-input" +import type { AgentAttachment } from "@opencode/schema/prompt" +import type { Skill } from "@opencode/schema/skill" +import type { Event } from "@opencode/schema/event" +import type { InstructionEntry } from "@opencode/schema/instruction-entry" import type { Schema } from "effect" -import type { EventLog } from "@opencode-ai/schema/event-log" -import type { Shell } from "@opencode-ai/schema/shell" -import type { Provider } from "@opencode-ai/schema/provider" -import type { Integration } from "@opencode-ai/schema/integration" -import type { Form } from "@opencode-ai/schema/form" -import type { Mcp } from "@opencode-ai/schema/mcp" -import type { Credential } from "@opencode-ai/schema/credential" -import type { Permission } from "@opencode-ai/schema/permission" -import type { PermissionSaved } from "@opencode-ai/schema/permission-saved" -import type { FileSystem } from "@opencode-ai/schema/filesystem" -import type { Command } from "@opencode-ai/schema/command" -import type { OpenCodeEvent } from "@opencode-ai/protocol/groups/event" -import type { Pty } from "@opencode-ai/schema/pty" -import type { PtyTicket } from "@opencode-ai/schema/pty-ticket" -import type { Reference } from "@opencode-ai/schema/reference" -import type { Worktree } from "@opencode-ai/schema/worktree" -import type { Vcs } from "@opencode-ai/schema/vcs" -import type { FileDiff } from "@opencode-ai/schema/file-diff" -import type { WebSearch } from "@opencode-ai/schema/websearch" -import type { Config } from "@opencode-ai/schema/config" +import type { EventLog } from "@opencode/schema/event-log" +import type { Shell } from "@opencode/schema/shell" +import type { Provider } from "@opencode/schema/provider" +import type { Integration } from "@opencode/schema/integration" +import type { Form } from "@opencode/schema/form" +import type { Mcp } from "@opencode/schema/mcp" +import type { Credential } from "@opencode/schema/credential" +import type { Permission } from "@opencode/schema/permission" +import type { PermissionSaved } from "@opencode/schema/permission-saved" +import type { FileSystem } from "@opencode/schema/filesystem" +import type { Command } from "@opencode/schema/command" +import type { OpenCodeEvent } from "@opencode/protocol/groups/event" +import type { Pty } from "@opencode/schema/pty" +import type { PtyTicket } from "@opencode/schema/pty-ticket" +import type { Reference } from "@opencode/schema/reference" +import type { Worktree } from "@opencode/schema/worktree" +import type { Vcs } from "@opencode/schema/vcs" +import type { FileDiff } from "@opencode/schema/file-diff" +import type { WebSearch } from "@opencode/schema/websearch" +import type { Config } from "@opencode/schema/config" export type HealthGetOutput = { readonly healthy: true; readonly version: string; readonly pid: number } export type HealthGetOperation = () => Effect.Effect diff --git a/packages/client/src/effect/client.ts b/packages/client/src/effect/client.ts index 2aba49b2137..7eba0c3d2ef 100644 --- a/packages/client/src/effect/client.ts +++ b/packages/client/src/effect/client.ts @@ -7,7 +7,7 @@ import { ClientError, OpenCode } from "./generated/index.js" import { RpcClientRuntime } from "./rpc.js" import type { RpcCallOptions } from "../promise/rpc.js" -const CurrentHeaders = Context.Reference("@opencode-ai/client/effect/rpc/headers", { +const CurrentHeaders = Context.Reference("@opencode/client/effect/rpc/headers", { defaultValue: () => undefined, }) diff --git a/packages/client/src/effect/generated/client.ts b/packages/client/src/effect/generated/client.ts index 3a0616854dd..e6cd7d6662d 100644 --- a/packages/client/src/effect/generated/client.ts +++ b/packages/client/src/effect/generated/client.ts @@ -1,4 +1,4 @@ -// Generated by @opencode-ai/httpapi-codegen. Do not edit. +// Generated by @opencode/httpapi-codegen. Do not edit. import { Effect, Stream, Schema } from "effect" import { Sse } from "effect/unstable/encoding" import { HttpClientError } from "effect/unstable/http" diff --git a/packages/client/src/effect/index.ts b/packages/client/src/effect/index.ts index 142f4e79b17..5e8088732e7 100644 --- a/packages/client/src/effect/index.ts +++ b/packages/client/src/effect/index.ts @@ -23,33 +23,33 @@ export type { SessionApi, SkillApi, } from "./api.js" -export { Agent } from "@opencode-ai/schema/agent" -export { Command } from "@opencode-ai/schema/command" -export { Config } from "@opencode-ai/schema/config" -export { Credential } from "@opencode-ai/schema/credential" -export { Event } from "@opencode-ai/schema/event" -export { EventLog } from "@opencode-ai/schema/event-log" -export { FileSystem } from "@opencode-ai/schema/filesystem" -export { Form } from "@opencode-ai/schema/form" -export { Integration } from "@opencode-ai/schema/integration" -export { Location } from "@opencode-ai/schema/location" -export { Model } from "@opencode-ai/schema/model" -export { Permission } from "@opencode-ai/schema/permission" -export { PermissionSaved } from "@opencode-ai/schema/permission-saved" -export { Project } from "@opencode-ai/schema/project" -export { Worktree } from "@opencode-ai/schema/worktree" -export { Vcs } from "@opencode-ai/schema/vcs" -export { Provider } from "@opencode-ai/schema/provider" -export { Pty } from "@opencode-ai/schema/pty" -export { Question } from "@opencode-ai/schema/question" -export { Reference } from "@opencode-ai/schema/reference" -export { WebSearch } from "@opencode-ai/schema/websearch" -export { AbsolutePath, RelativePath } from "@opencode-ai/schema/schema" -export { Session } from "@opencode-ai/schema/session" -export { SessionInbox } from "@opencode-ai/schema/session-inbox" -export { SessionMessage } from "@opencode-ai/schema/session-message" -export { Skill } from "@opencode-ai/schema/skill" -export { Prompt } from "@opencode-ai/schema/prompt" -export { PromptInput } from "@opencode-ai/schema/prompt-input" -export type { OpenCodeEvent } from "@opencode-ai/protocol/groups/event" +export { Agent } from "@opencode/schema/agent" +export { Command } from "@opencode/schema/command" +export { Config } from "@opencode/schema/config" +export { Credential } from "@opencode/schema/credential" +export { Event } from "@opencode/schema/event" +export { EventLog } from "@opencode/schema/event-log" +export { FileSystem } from "@opencode/schema/filesystem" +export { Form } from "@opencode/schema/form" +export { Integration } from "@opencode/schema/integration" +export { Location } from "@opencode/schema/location" +export { Model } from "@opencode/schema/model" +export { Permission } from "@opencode/schema/permission" +export { PermissionSaved } from "@opencode/schema/permission-saved" +export { Project } from "@opencode/schema/project" +export { Worktree } from "@opencode/schema/worktree" +export { Vcs } from "@opencode/schema/vcs" +export { Provider } from "@opencode/schema/provider" +export { Pty } from "@opencode/schema/pty" +export { Question } from "@opencode/schema/question" +export { Reference } from "@opencode/schema/reference" +export { WebSearch } from "@opencode/schema/websearch" +export { AbsolutePath, RelativePath } from "@opencode/schema/schema" +export { Session } from "@opencode/schema/session" +export { SessionInbox } from "@opencode/schema/session-inbox" +export { SessionMessage } from "@opencode/schema/session-message" +export { Skill } from "@opencode/schema/skill" +export { Prompt } from "@opencode/schema/prompt" +export { PromptInput } from "@opencode/schema/prompt-input" +export type { OpenCodeEvent } from "@opencode/protocol/groups/event" export type OpenCodeClient = Effect.Success> diff --git a/packages/client/src/effect/rpc.ts b/packages/client/src/effect/rpc.ts index b1933ba11ba..623ec549e1c 100644 --- a/packages/client/src/effect/rpc.ts +++ b/packages/client/src/effect/rpc.ts @@ -1,8 +1,8 @@ export * as RpcClientRuntime from "./rpc.js" -import type { Rpc } from "@opencode-ai/schema/rpc" -import type { RpcError, RpcInternalError } from "@opencode-ai/protocol/errors" -import type { OpenCodeEvent } from "@opencode-ai/protocol/groups/event" +import type { Rpc } from "@opencode/schema/rpc" +import type { RpcError, RpcInternalError } from "@opencode/protocol/errors" +import type { OpenCodeEvent } from "@opencode/protocol/groups/event" import { Effect, Schema, Stream } from "effect" import type { RpcArguments, RpcCallOptions } from "../promise/rpc.js" import { RpcRuntime } from "../rpc-runtime.js" diff --git a/packages/client/src/effect/service.ts b/packages/client/src/effect/service.ts index 3839fa43722..7ae3d917a58 100644 --- a/packages/client/src/effect/service.ts +++ b/packages/client/src/effect/service.ts @@ -1,4 +1,4 @@ -import { ServiceStatus } from "@opencode-ai/protocol/groups/health" +import { ServiceStatus } from "@opencode/protocol/groups/health" import { Effect, FileSystem, Option, Schedule, Schema } from "effect" import { homedir } from "node:os" import { join } from "node:path" diff --git a/packages/client/src/promise/rpc.ts b/packages/client/src/promise/rpc.ts index 1d3c270bb5c..e7c502e1cc8 100644 --- a/packages/client/src/promise/rpc.ts +++ b/packages/client/src/promise/rpc.ts @@ -1,4 +1,4 @@ -import type { Rpc } from "@opencode-ai/schema/rpc" +import type { Rpc } from "@opencode/schema/rpc" import type { make, RequestOptions } from "./generated/client.js" import { isRpcError, isRpcInternalError } from "./generated/types.js" import type { EventSubscribeOutput, LocationGetInput, RpcCallInput } from "./generated/types.js" diff --git a/packages/client/src/pty-handoff.ts b/packages/client/src/pty-handoff.ts index 61e9568c449..6e65a1fa5c9 100644 --- a/packages/client/src/pty-handoff.ts +++ b/packages/client/src/pty-handoff.ts @@ -1,6 +1,6 @@ export * as PtyHandoff from "./pty-handoff.js" -import type { PersistentPty } from "@opencode-ai/schema/persistent-pty" +import type { PersistentPty } from "@opencode/schema/persistent-pty" import { readFile, rename, rm, writeFile } from "node:fs/promises" import type { Info } from "./service.js" diff --git a/packages/client/src/rpc-runtime.ts b/packages/client/src/rpc-runtime.ts index 3b79ca933b4..2267db8ee0a 100644 --- a/packages/client/src/rpc-runtime.ts +++ b/packages/client/src/rpc-runtime.ts @@ -1,8 +1,8 @@ export * as RpcRuntime from "./rpc-runtime.js" -import type { Rpc } from "@opencode-ai/schema/rpc" -import type { OpenCodeEvent } from "@opencode-ai/protocol/groups/event" -import { RpcError, RpcInternalError } from "@opencode-ai/protocol/errors" +import type { Rpc } from "@opencode/schema/rpc" +import type { OpenCodeEvent } from "@opencode/protocol/groups/event" +import { RpcError, RpcInternalError } from "@opencode/protocol/errors" import { Effect, Schema } from "effect" type RpcEvent = Extract diff --git a/packages/client/src/solid/data.ts b/packages/client/src/solid/data.ts index 6cea279b906..7fb8d710fbb 100644 --- a/packages/client/src/solid/data.ts +++ b/packages/client/src/solid/data.ts @@ -38,9 +38,9 @@ import type { OpenCodeClient, WebSearchProvider, } from "../promise" -import { Worktree } from "@opencode-ai/schema/worktree" -import { SessionID } from "@opencode-ai/schema/session-id" -import { SessionMessage } from "@opencode-ai/schema/session-message" +import { Worktree } from "@opencode/schema/worktree" +import { SessionID } from "@opencode/schema/session-id" +import { SessionMessage } from "@opencode/schema/session-message" import { isFormAlreadySettledError, isFormNotFoundError, @@ -48,7 +48,7 @@ import { type SessionPromptInput, } from "../promise" import { createStore, produce, reconcile } from "solid-js/store" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" +import type { SessionInbox } from "@opencode/schema/session-inbox" import { batch, createEffect, createMemo, createSignal, onCleanup } from "solid-js" export type DataSessionStatus = "idle" | "running" diff --git a/packages/client/test/api.types.ts b/packages/client/test/api.types.ts index 1cb35e5dcae..02533630fed 100644 --- a/packages/client/test/api.types.ts +++ b/packages/client/test/api.types.ts @@ -1,6 +1,6 @@ import { Effect } from "effect" import { OpenCode as EffectOpenCode, type AppApi as EffectApi } from "../src/effect" -import type { Session } from "@opencode-ai/schema/session" +import type { Session } from "@opencode/schema/session" import type { DiscoverOptions } from "../src/service" type EffectClient = Effect.Success> diff --git a/packages/client/test/contract-identity.test.ts b/packages/client/test/contract-identity.test.ts index 63e80e8ee5d..46737340154 100644 --- a/packages/client/test/contract-identity.test.ts +++ b/packages/client/test/contract-identity.test.ts @@ -1,12 +1,12 @@ import { expect, test } from "bun:test" import { Schema } from "effect" -import { Agent } from "@opencode-ai/schema/agent" -import { Config } from "@opencode-ai/schema/config" -import { Model } from "@opencode-ai/schema/model" -import { Prompt } from "@opencode-ai/schema/prompt" -import { Session } from "@opencode-ai/schema/session" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { Vcs } from "@opencode-ai/schema/vcs" +import { Agent } from "@opencode/schema/agent" +import { Config } from "@opencode/schema/config" +import { Model } from "@opencode/schema/model" +import { Prompt } from "@opencode/schema/prompt" +import { Session } from "@opencode/schema/session" +import { SessionMessage } from "@opencode/schema/session-message" +import { Vcs } from "@opencode/schema/vcs" const Client = await import("../src/effect") diff --git a/packages/client/test/import-boundaries.test.ts b/packages/client/test/import-boundaries.test.ts index b323c6215e6..2f571d453ac 100644 --- a/packages/client/test/import-boundaries.test.ts +++ b/packages/client/test/import-boundaries.test.ts @@ -12,7 +12,7 @@ const server = resolve(import.meta.dir, "../../server") describe("public import boundaries", () => { test("isolates each public entrypoint", async () => { - const root = await bundleInputs("@opencode-ai/client", "browser") + const root = await bundleInputs("@opencode/client", "browser") expect(within(root.all, effect)).toEqual([]) expect(within(root.all, schema)).toEqual([]) @@ -20,7 +20,7 @@ describe("public import boundaries", () => { expect(within(root.all, core)).toEqual([]) expect(within(root.all, server)).toEqual([]) - const network = await bundleInputs("@opencode-ai/client/effect", "browser") + const network = await bundleInputs("@opencode/client/effect", "browser") expect(within(network.eager, effect).length).toBeGreaterThan(0) expect(within(network.eager, schema).length).toBeGreaterThan(0) @@ -28,7 +28,7 @@ describe("public import boundaries", () => { expect(within(network.all, core)).toEqual([]) expect(within(network.all, server)).toEqual([]) - const promiseService = await bundleInputs("@opencode-ai/client/service", "bun") + const promiseService = await bundleInputs("@opencode/client/service", "bun") expect(within(promiseService.all, effect)).toEqual([]) expect(within(promiseService.all, schema)).toEqual([]) @@ -36,7 +36,7 @@ describe("public import boundaries", () => { expect(within(promiseService.all, core)).toEqual([]) expect(within(promiseService.all, server)).toEqual([]) - const effectService = await bundleInputs("@opencode-ai/client/effect/service", "bun") + const effectService = await bundleInputs("@opencode/client/effect/service", "bun") expect(within(effectService.eager, effect).length).toBeGreaterThan(0) expect(within(effectService.eager, protocol).length).toBeGreaterThan(0) diff --git a/packages/client/test/worktree.test.ts b/packages/client/test/worktree.test.ts index 2037af98aa3..db1028ed300 100644 --- a/packages/client/test/worktree.test.ts +++ b/packages/client/test/worktree.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { Schema } from "effect" -import { Worktree } from "@opencode-ai/schema/worktree" +import { Worktree } from "@opencode/schema/worktree" describe("Worktree.adopt", () => { const event = { diff --git a/packages/codemode/AGENTS.md b/packages/codemode/AGENTS.md index e59d7fc1768..368ed6bb788 100644 --- a/packages/codemode/AGENTS.md +++ b/packages/codemode/AGENTS.md @@ -1,4 +1,4 @@ -# @opencode-ai/codemode +# @opencode/codemode - This local package owns confined execution over explicit schema-described tools. Applications own authorization, persistence, external authority, and tool-specific delivery semantics. - Do not add a speculative generic permission or approval policy. A host omits tools it does not expose and enforces domain authorization inside each provided tool. diff --git a/packages/codemode/README.md b/packages/codemode/README.md index f6f47f35dbc..024c87e2794 100644 --- a/packages/codemode/README.md +++ b/packages/codemode/README.md @@ -1,4 +1,4 @@ -# @opencode-ai/codemode +# @opencode/codemode This is our take on code mode: a lightweight, pure interpreter for a JavaScript-like language built around calling tools. It supports familiar JavaScript syntax with a few key differences and limitations. See the @@ -26,7 +26,7 @@ Unsupported syntax returns an `UnsupportedSyntax` diagnostic with a source locat ## Quick Start ```ts -import { CodeMode, Namespace, Tool } from "@opencode-ai/codemode" +import { CodeMode, Namespace, Tool } from "@opencode/codemode" import { Effect, Schema } from "effect" const lookupOrder = Tool.make({ diff --git a/packages/codemode/package.json b/packages/codemode/package.json index 721a068e882..cda2631ca70 100644 --- a/packages/codemode/package.json +++ b/packages/codemode/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/codemode", + "name": "@opencode/codemode", "version": "1.18.4", "description": "Effect-native confined code execution over schema-described tools", "type": "module", diff --git a/packages/codemode/script/publish.ts b/packages/codemode/script/publish.ts index aa2d08b54a8..346185c5804 100644 --- a/packages/codemode/script/publish.ts +++ b/packages/codemode/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { mkdtemp, rm } from "node:fs/promises" import { tmpdir } from "node:os" diff --git a/packages/console/app/package.json b/packages/console/app/package.json index 59feda0c8c5..d178a188783 100644 --- a/packages/console/app/package.json +++ b/packages/console/app/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/console-app", + "name": "@opencode/console-app", "version": "1.18.15", "type": "module", "license": "MIT", @@ -16,10 +16,10 @@ "@jsx-email/render": "1.1.1", "@kobalte/core": "catalog:", "@openauthjs/openauth": "catalog:", - "@opencode-ai/console-core": "workspace:*", - "@opencode-ai/console-mail": "workspace:*", - "@opencode-ai/console-resource": "workspace:*", - "@opencode-ai/ui": "workspace:*", + "@opencode/console-core": "workspace:*", + "@opencode/console-mail": "workspace:*", + "@opencode/console-resource": "workspace:*", + "@opencode/ui": "workspace:*", "@smithy/eventstream-codec": "4.2.7", "@smithy/util-utf8": "4.2.0", "@solidjs/meta": "catalog:", diff --git a/packages/console/app/src/app.tsx b/packages/console/app/src/app.tsx index 1f1d0066ecc..bc27e135dd7 100644 --- a/packages/console/app/src/app.tsx +++ b/packages/console/app/src/app.tsx @@ -2,8 +2,8 @@ import { MetaProvider, Title, Meta } from "@solidjs/meta" import { Router } from "@solidjs/router" import { FileRoutes } from "@solidjs/start/router" import { Suspense } from "solid-js" -import { Favicon } from "@opencode-ai/ui/favicon" -import { Font } from "@opencode-ai/ui/font" +import { Favicon } from "@opencode/ui/favicon" +import { Font } from "@opencode/ui/font" import "@ibm/plex/css/ibm-plex.css" import "./app.css" import { LanguageProvider } from "~/context/language" diff --git a/packages/console/app/src/component/email-signup.tsx b/packages/console/app/src/component/email-signup.tsx index caedaf0f2e4..171a99a4698 100644 --- a/packages/console/app/src/component/email-signup.tsx +++ b/packages/console/app/src/component/email-signup.tsx @@ -1,5 +1,5 @@ import { action, useSubmission } from "@solidjs/router" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { Show } from "solid-js" import { useI18n } from "~/context/i18n" diff --git a/packages/console/app/src/component/go-referral.tsx b/packages/console/app/src/component/go-referral.tsx index 4223dfd47c0..546e3dc72c3 100644 --- a/packages/console/app/src/component/go-referral.tsx +++ b/packages/console/app/src/component/go-referral.tsx @@ -1,7 +1,7 @@ import { action, json, query, useAction, useSubmission } from "@solidjs/router" import { createEffect, createMemo, createSignal, For, onCleanup, Show } from "solid-js" import { getRequestEvent } from "solid-js/web" -import { Referral } from "@opencode-ai/console-core/referral.js" +import { Referral } from "@opencode/console-core/referral.js" import { withActor } from "~/context/auth.withActor" import { Modal } from "~/component/modal" import { IconCheck, IconCopy } from "~/component/icon" diff --git a/packages/console/app/src/context/auth.ts b/packages/console/app/src/context/auth.ts index aed07a630f8..a370ccc5d4a 100644 --- a/packages/console/app/src/context/auth.ts +++ b/packages/console/app/src/context/auth.ts @@ -1,8 +1,8 @@ import { getRequestEvent } from "solid-js/web" -import { and, Database, eq, inArray, isNull, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" +import { and, Database, eq, inArray, isNull, sql } from "@opencode/console-core/drizzle/index.js" +import { UserTable } from "@opencode/console-core/schema/user.sql.js" import { redirect } from "@solidjs/router" -import { Actor } from "@opencode-ai/console-core/actor.js" +import { Actor } from "@opencode/console-core/actor.js" import { createClient } from "@openauthjs/openauth/client" @@ -12,7 +12,7 @@ export const AuthClient = createClient({ }) import { useSession } from "@solidjs/start/http" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" export interface AuthSession { account?: Record< diff --git a/packages/console/app/src/context/auth.withActor.ts b/packages/console/app/src/context/auth.withActor.ts index ff377cda460..2cb97026992 100644 --- a/packages/console/app/src/context/auth.withActor.ts +++ b/packages/console/app/src/context/auth.withActor.ts @@ -1,4 +1,4 @@ -import { Actor } from "@opencode-ai/console-core/actor.js" +import { Actor } from "@opencode/console-core/actor.js" import { getActor } from "./auth" export async function withActor(fn: () => T, workspace?: string) { diff --git a/packages/console/app/src/context/i18n.tsx b/packages/console/app/src/context/i18n.tsx index 5d178c8b8d9..51d92196e9b 100644 --- a/packages/console/app/src/context/i18n.tsx +++ b/packages/console/app/src/context/i18n.tsx @@ -1,5 +1,5 @@ import { createMemo } from "solid-js" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { i18n, type Key } from "~/i18n" import { useLanguage } from "~/context/language" diff --git a/packages/console/app/src/context/language.tsx b/packages/console/app/src/context/language.tsx index 2999242f0ff..310b56596a6 100644 --- a/packages/console/app/src/context/language.tsx +++ b/packages/console/app/src/context/language.tsx @@ -1,7 +1,7 @@ import { createEffect } from "solid-js" import { createStore } from "solid-js/store" import { getRequestEvent } from "solid-js/web" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { LOCALES, type Locale, diff --git a/packages/console/app/src/lib/referral-invite.ts b/packages/console/app/src/lib/referral-invite.ts index dc83ff0f4cd..f87606b2d94 100644 --- a/packages/console/app/src/lib/referral-invite.ts +++ b/packages/console/app/src/lib/referral-invite.ts @@ -1,5 +1,5 @@ -import { Actor } from "@opencode-ai/console-core/actor.js" -import { Referral } from "@opencode-ai/console-core/referral.js" +import { Actor } from "@opencode/console-core/actor.js" +import { Referral } from "@opencode/console-core/referral.js" import { getRequestEvent } from "solid-js/web" const REFERRAL_COOKIE = "oc_referral" diff --git a/packages/console/app/src/lib/salesforce.ts b/packages/console/app/src/lib/salesforce.ts index 48e0caee7d0..b02f39e6a02 100644 --- a/packages/console/app/src/lib/salesforce.ts +++ b/packages/console/app/src/lib/salesforce.ts @@ -1,4 +1,4 @@ -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" async function login() { const url = Resource.SALESFORCE_INSTANCE_URL.value.replace(/\/$/, "") diff --git a/packages/console/app/src/lib/stats-proxy.ts b/packages/console/app/src/lib/stats-proxy.ts index 48e95bd74a1..5b520821151 100644 --- a/packages/console/app/src/lib/stats-proxy.ts +++ b/packages/console/app/src/lib/stats-proxy.ts @@ -1,5 +1,5 @@ import type { APIEvent } from "@solidjs/start/server" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { LOCALE_HEADER, cookie, localeFromRequest, route, tag } from "~/lib/language" const dataPath = "/data" diff --git a/packages/console/app/src/routes/api/enterprise.ts b/packages/console/app/src/routes/api/enterprise.ts index 65f5c72b231..7533c521237 100644 --- a/packages/console/app/src/routes/api/enterprise.ts +++ b/packages/console/app/src/routes/api/enterprise.ts @@ -1,6 +1,6 @@ import type { APIEvent } from "@solidjs/start/server" -import { AWS } from "@opencode-ai/console-core/aws.js" -import { Resource } from "@opencode-ai/console-resource" +import { AWS } from "@opencode/console-core/aws.js" +import { Resource } from "@opencode/console-resource" import { i18n } from "~/i18n" import { localeFromRequest } from "~/lib/language" import { createLead } from "~/lib/salesforce" diff --git a/packages/console/app/src/routes/api/support/actions/create-referral.ts b/packages/console/app/src/routes/api/support/actions/create-referral.ts index ac4d107bee1..0119fe50298 100644 --- a/packages/console/app/src/routes/api/support/actions/create-referral.ts +++ b/packages/console/app/src/routes/api/support/actions/create-referral.ts @@ -1,7 +1,7 @@ import type { APIEvent } from "@solidjs/start/server" -import { Referral } from "@opencode-ai/console-core/referral.js" -import { safeEqual } from "@opencode-ai/console-core/util/crypto.js" -import { Resource } from "@opencode-ai/console-resource" +import { Referral } from "@opencode/console-core/referral.js" +import { safeEqual } from "@opencode/console-core/util/crypto.js" +import { Resource } from "@opencode/console-resource" import z from "zod" const Body = z.object({ diff --git a/packages/console/app/src/routes/api/support/actions/delete-account.ts b/packages/console/app/src/routes/api/support/actions/delete-account.ts index a713107df64..7d64a5c7ba3 100644 --- a/packages/console/app/src/routes/api/support/actions/delete-account.ts +++ b/packages/console/app/src/routes/api/support/actions/delete-account.ts @@ -1,7 +1,7 @@ import type { APIEvent } from "@solidjs/start/server" -import { Account } from "@opencode-ai/console-core/account.js" -import { safeEqual } from "@opencode-ai/console-core/util/crypto.js" -import { Resource } from "@opencode-ai/console-resource" +import { Account } from "@opencode/console-core/account.js" +import { safeEqual } from "@opencode/console-core/util/crypto.js" +import { Resource } from "@opencode/console-resource" import z from "zod" const Body = z.object({ email: z.email() }) diff --git a/packages/console/app/src/routes/api/support/actions/unblock-workspace.ts b/packages/console/app/src/routes/api/support/actions/unblock-workspace.ts index 7a89f99647a..7173ed18091 100644 --- a/packages/console/app/src/routes/api/support/actions/unblock-workspace.ts +++ b/packages/console/app/src/routes/api/support/actions/unblock-workspace.ts @@ -1,7 +1,7 @@ import type { APIEvent } from "@solidjs/start/server" -import { Workspace } from "@opencode-ai/console-core/workspace.js" -import { safeEqual } from "@opencode-ai/console-core/util/crypto.js" -import { Resource } from "@opencode-ai/console-resource" +import { Workspace } from "@opencode/console-core/workspace.js" +import { safeEqual } from "@opencode/console-core/util/crypto.js" +import { Resource } from "@opencode/console-resource" import z from "zod" const Body = z.object({ workspaceID: z.string().startsWith("wrk_") }) diff --git a/packages/console/app/src/routes/bench/[id].tsx b/packages/console/app/src/routes/bench/[id].tsx index c6d10826b3c..6508b0b468f 100644 --- a/packages/console/app/src/routes/bench/[id].tsx +++ b/packages/console/app/src/routes/bench/[id].tsx @@ -1,8 +1,8 @@ import { Title } from "@solidjs/meta" import { createAsync, query, useParams } from "@solidjs/router" import { createSignal, For, Show } from "solid-js" -import { Database, eq } from "@opencode-ai/console-core/drizzle/index.js" -import { BenchmarkTable } from "@opencode-ai/console-core/schema/benchmark.sql.js" +import { Database, eq } from "@opencode/console-core/drizzle/index.js" +import { BenchmarkTable } from "@opencode/console-core/schema/benchmark.sql.js" import { useI18n } from "~/context/i18n" interface TaskSource { diff --git a/packages/console/app/src/routes/bench/index.tsx b/packages/console/app/src/routes/bench/index.tsx index 17798eff4e1..3253beff3bd 100644 --- a/packages/console/app/src/routes/bench/index.tsx +++ b/packages/console/app/src/routes/bench/index.tsx @@ -1,8 +1,8 @@ import { Title } from "@solidjs/meta" import { A, createAsync, query } from "@solidjs/router" import { createMemo, For, Show } from "solid-js" -import { Database, desc } from "@opencode-ai/console-core/drizzle/index.js" -import { BenchmarkTable } from "@opencode-ai/console-core/schema/benchmark.sql.js" +import { Database, desc } from "@opencode/console-core/drizzle/index.js" +import { BenchmarkTable } from "@opencode/console-core/schema/benchmark.sql.js" import { useI18n } from "~/context/i18n" interface BenchmarkResult { diff --git a/packages/console/app/src/routes/bench/submission.ts b/packages/console/app/src/routes/bench/submission.ts index 969ff165931..f5e3d23a3fe 100644 --- a/packages/console/app/src/routes/bench/submission.ts +++ b/packages/console/app/src/routes/bench/submission.ts @@ -1,7 +1,7 @@ import type { APIEvent } from "@solidjs/start/server" -import { Database } from "@opencode-ai/console-core/drizzle/index.js" -import { BenchmarkTable } from "@opencode-ai/console-core/schema/benchmark.sql.js" -import { Identifier } from "@opencode-ai/console-core/identifier.js" +import { Database } from "@opencode/console-core/drizzle/index.js" +import { BenchmarkTable } from "@opencode/console-core/schema/benchmark.sql.js" +import { Identifier } from "@opencode/console-core/identifier.js" import { i18n } from "~/i18n" import { localeFromRequest } from "~/lib/language" diff --git a/packages/console/app/src/routes/black/index.tsx b/packages/console/app/src/routes/black/index.tsx index 8bce3cd464f..a0f96577d68 100644 --- a/packages/console/app/src/routes/black/index.tsx +++ b/packages/console/app/src/routes/black/index.tsx @@ -4,7 +4,7 @@ import { createMemo, createSignal, For, Match, onMount, Show, Switch } from "sol import { PlanIcon, plans } from "./common" import { useI18n } from "~/context/i18n" import { useLanguage } from "~/context/language" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" const getPaused = query(async () => { "use server" diff --git a/packages/console/app/src/routes/black/subscribe/[plan].tsx b/packages/console/app/src/routes/black/subscribe/[plan].tsx index c29c5fac80a..39f6258a1e1 100644 --- a/packages/console/app/src/routes/black/subscribe/[plan].tsx +++ b/packages/console/app/src/routes/black/subscribe/[plan].tsx @@ -6,18 +6,18 @@ import { Elements, PaymentElement, useStripe, useElements, AddressElement } from import { PlanID, plans } from "../common" import { getActor, useAuthSession } from "~/context/auth" import { withActor } from "~/context/auth.withActor" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { and, Database, eq, isNull } from "@opencode-ai/console-core/drizzle/index.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" +import { Actor } from "@opencode/console-core/actor.js" +import { and, Database, eq, isNull } from "@opencode/console-core/drizzle/index.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" +import { UserTable } from "@opencode/console-core/schema/user.sql.js" import { createList } from "solid-list" import { Modal } from "~/component/modal" -import { BillingTable } from "@opencode-ai/console-core/schema/billing.sql.js" -import { Billing } from "@opencode-ai/console-core/billing.js" +import { BillingTable } from "@opencode/console-core/schema/billing.sql.js" +import { Billing } from "@opencode/console-core/billing.js" import { useI18n } from "~/context/i18n" import { useLanguage } from "~/context/language" import { formError } from "~/lib/form-error" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" const getEnabled = query(async () => { "use server" diff --git a/packages/console/app/src/routes/docs/[...path].ts b/packages/console/app/src/routes/docs/[...path].ts index 164bd2872e3..517108b0650 100644 --- a/packages/console/app/src/routes/docs/[...path].ts +++ b/packages/console/app/src/routes/docs/[...path].ts @@ -1,5 +1,5 @@ import type { APIEvent } from "@solidjs/start/server" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { cookie, docs, localeFromRequest, tag } from "~/lib/language" async function handler(evt: APIEvent) { diff --git a/packages/console/app/src/routes/docs/index.ts b/packages/console/app/src/routes/docs/index.ts index 164bd2872e3..517108b0650 100644 --- a/packages/console/app/src/routes/docs/index.ts +++ b/packages/console/app/src/routes/docs/index.ts @@ -1,5 +1,5 @@ import type { APIEvent } from "@solidjs/start/server" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { cookie, docs, localeFromRequest, tag } from "~/lib/language" async function handler(evt: APIEvent) { diff --git a/packages/console/app/src/routes/honeycomb/webhook.ts b/packages/console/app/src/routes/honeycomb/webhook.ts index 0cae3629b7b..fc5052fe994 100644 --- a/packages/console/app/src/routes/honeycomb/webhook.ts +++ b/packages/console/app/src/routes/honeycomb/webhook.ts @@ -1,7 +1,7 @@ import type { APIEvent } from "@solidjs/start/server" import { z } from "zod" -import { Resource } from "@opencode-ai/console-resource" -import { safeEqual } from "@opencode-ai/console-core/util/crypto.js" +import { Resource } from "@opencode/console-resource" +import { safeEqual } from "@opencode/console-core/util/crypto.js" const DISCORD_ALERT_ROLE_ID = "1520924666359713863" diff --git a/packages/console/app/src/routes/s/[id].ts b/packages/console/app/src/routes/s/[id].ts index 374fd79ad0c..374e09ae170 100644 --- a/packages/console/app/src/routes/s/[id].ts +++ b/packages/console/app/src/routes/s/[id].ts @@ -1,5 +1,5 @@ import type { APIEvent } from "@solidjs/start/server" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { cookie, docs, localeFromRequest, tag } from "~/lib/language" async function handler(evt: APIEvent) { diff --git a/packages/console/app/src/routes/stripe/webhook.ts b/packages/console/app/src/routes/stripe/webhook.ts index e1e4e6cbd39..4f638ccfe70 100644 --- a/packages/console/app/src/routes/stripe/webhook.ts +++ b/packages/console/app/src/routes/stripe/webhook.ts @@ -1,15 +1,15 @@ import type { Stripe } from "stripe" -import { Billing } from "@opencode-ai/console-core/billing.js" +import { Billing } from "@opencode/console-core/billing.js" import type { APIEvent } from "@solidjs/start/server" -import { and, Database, eq, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { BillingTable, LiteTable, PaymentTable } from "@opencode-ai/console-core/schema/billing.sql.js" -import { Identifier } from "@opencode-ai/console-core/identifier.js" -import { centsToMicroCents } from "@opencode-ai/console-core/util/price.js" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { Resource } from "@opencode-ai/console-resource" -import { LiteData } from "@opencode-ai/console-core/lite.js" -import { BlackData } from "@opencode-ai/console-core/black.js" -import { Referral } from "@opencode-ai/console-core/referral.js" +import { and, Database, eq, sql } from "@opencode/console-core/drizzle/index.js" +import { BillingTable, LiteTable, PaymentTable } from "@opencode/console-core/schema/billing.sql.js" +import { Identifier } from "@opencode/console-core/identifier.js" +import { centsToMicroCents } from "@opencode/console-core/util/price.js" +import { Actor } from "@opencode/console-core/actor.js" +import { Resource } from "@opencode/console-resource" +import { LiteData } from "@opencode/console-core/lite.js" +import { BlackData } from "@opencode/console-core/black.js" +import { Referral } from "@opencode/console-core/referral.js" export async function POST(input: APIEvent) { const body = await Billing.stripe().webhooks.constructEventAsync( diff --git a/packages/console/app/src/routes/workspace-picker.tsx b/packages/console/app/src/routes/workspace-picker.tsx index 83f5582ebe0..9b32470e0f7 100644 --- a/packages/console/app/src/routes/workspace-picker.tsx +++ b/packages/console/app/src/routes/workspace-picker.tsx @@ -1,11 +1,11 @@ import { query, useParams, action, createAsync, redirect, useSubmission } from "@solidjs/router" import { For, createEffect, createSignal } from "solid-js" import { withActor } from "~/context/auth.withActor" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { and, Database, eq, isNull } from "@opencode-ai/console-core/drizzle/index.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" -import { Workspace } from "@opencode-ai/console-core/workspace.js" +import { Actor } from "@opencode/console-core/actor.js" +import { and, Database, eq, isNull } from "@opencode/console-core/drizzle/index.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" +import { UserTable } from "@opencode/console-core/schema/user.sql.js" +import { Workspace } from "@opencode/console-core/workspace.js" import { Dropdown, DropdownItem } from "~/component/dropdown" import { Modal } from "~/component/modal" import { useI18n } from "~/context/i18n" diff --git a/packages/console/app/src/routes/workspace.tsx b/packages/console/app/src/routes/workspace.tsx index 10e503ac526..858373d972c 100644 --- a/packages/console/app/src/routes/workspace.tsx +++ b/packages/console/app/src/routes/workspace.tsx @@ -4,8 +4,8 @@ import { IconWorkspaceLogo } from "../component/icon" import { WorkspacePicker } from "./workspace-picker" import { UserMenu } from "./user-menu" import { withActor } from "~/context/auth.withActor" -import { User } from "@opencode-ai/console-core/user.js" -import { Actor } from "@opencode-ai/console-core/actor.js" +import { User } from "@opencode/console-core/user.js" +import { Actor } from "@opencode/console-core/actor.js" import { useLanguage } from "~/context/language" const getUserEmail = query(async (workspaceID: string) => { diff --git a/packages/console/app/src/routes/workspace/[id]/billing/billing-section.tsx b/packages/console/app/src/routes/workspace/[id]/billing/billing-section.tsx index 90280635ff7..07748a0ed44 100644 --- a/packages/console/app/src/routes/workspace/[id]/billing/billing-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/billing/billing-section.tsx @@ -1,7 +1,7 @@ import { action, useParams, useAction, createAsync, useSubmission, json } from "@solidjs/router" import { createMemo, Match, Show, Switch, createEffect } from "solid-js" import { createStore } from "solid-js/store" -import { Billing } from "@opencode-ai/console-core/billing.js" +import { Billing } from "@opencode/console-core/billing.js" import { withActor } from "~/context/auth.withActor" import { IconAlipay, IconCreditCard, IconStripe, IconUpi, IconWechat } from "~/component/icon" import styles from "./billing-section.module.css" diff --git a/packages/console/app/src/routes/workspace/[id]/billing/black-section.tsx b/packages/console/app/src/routes/workspace/[id]/billing/black-section.tsx index ee3c1fc8307..12c9ec0db0b 100644 --- a/packages/console/app/src/routes/workspace/[id]/billing/black-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/billing/black-section.tsx @@ -1,12 +1,12 @@ import { action, useParams, useAction, useSubmission, json, query, createAsync } from "@solidjs/router" import { createStore } from "solid-js/store" import { Show } from "solid-js" -import { Billing } from "@opencode-ai/console-core/billing.js" -import { Database, eq, and, isNull, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { BillingTable, SubscriptionTable } from "@opencode-ai/console-core/schema/billing.sql.js" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { Subscription } from "@opencode-ai/console-core/subscription.js" -import { BlackData } from "@opencode-ai/console-core/black.js" +import { Billing } from "@opencode/console-core/billing.js" +import { Database, eq, and, isNull, sql } from "@opencode/console-core/drizzle/index.js" +import { BillingTable, SubscriptionTable } from "@opencode/console-core/schema/billing.sql.js" +import { Actor } from "@opencode/console-core/actor.js" +import { Subscription } from "@opencode/console-core/subscription.js" +import { BlackData } from "@opencode/console-core/black.js" import { withActor } from "~/context/auth.withActor" import { queryBillingInfo } from "../../common" import styles from "./black-section.module.css" diff --git a/packages/console/app/src/routes/workspace/[id]/billing/monthly-limit-section.tsx b/packages/console/app/src/routes/workspace/[id]/billing/monthly-limit-section.tsx index 7da1de23893..9aceb51c00b 100644 --- a/packages/console/app/src/routes/workspace/[id]/billing/monthly-limit-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/billing/monthly-limit-section.tsx @@ -2,7 +2,7 @@ import { json, action, useParams, createAsync, useSubmission } from "@solidjs/ro import { createEffect, Show } from "solid-js" import { createStore } from "solid-js/store" import { withActor } from "~/context/auth.withActor" -import { Billing } from "@opencode-ai/console-core/billing.js" +import { Billing } from "@opencode/console-core/billing.js" import styles from "./monthly-limit-section.module.css" import { queryBillingInfo } from "../../common" import { useI18n } from "~/context/i18n" diff --git a/packages/console/app/src/routes/workspace/[id]/billing/payment-section.tsx b/packages/console/app/src/routes/workspace/[id]/billing/payment-section.tsx index 6da5c42ed0c..410ff3ee7d4 100644 --- a/packages/console/app/src/routes/workspace/[id]/billing/payment-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/billing/payment-section.tsx @@ -1,4 +1,4 @@ -import { Billing } from "@opencode-ai/console-core/billing.js" +import { Billing } from "@opencode/console-core/billing.js" import { query, action, useParams, createAsync, useAction } from "@solidjs/router" import { For, Match, Show, Switch } from "solid-js" import { withActor } from "~/context/auth.withActor" diff --git a/packages/console/app/src/routes/workspace/[id]/billing/redeem-section.tsx b/packages/console/app/src/routes/workspace/[id]/billing/redeem-section.tsx index 872e8954bef..70bfd1cf817 100644 --- a/packages/console/app/src/routes/workspace/[id]/billing/redeem-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/billing/redeem-section.tsx @@ -1,10 +1,10 @@ import { json, action, useParams, useSubmission } from "@solidjs/router" import { Show } from "solid-js" import { withActor } from "~/context/auth.withActor" -import { Billing } from "@opencode-ai/console-core/billing.js" -import { User } from "@opencode-ai/console-core/user.js" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { CouponType } from "@opencode-ai/console-core/schema/billing.sql.js" +import { Billing } from "@opencode/console-core/billing.js" +import { User } from "@opencode/console-core/user.js" +import { Actor } from "@opencode/console-core/actor.js" +import { CouponType } from "@opencode/console-core/schema/billing.sql.js" import styles from "./redeem-section.module.css" import { queryBillingInfo } from "../../common" import { useI18n } from "~/context/i18n" diff --git a/packages/console/app/src/routes/workspace/[id]/billing/reload-section.tsx b/packages/console/app/src/routes/workspace/[id]/billing/reload-section.tsx index c9a72c08791..3d4cf6e8283 100644 --- a/packages/console/app/src/routes/workspace/[id]/billing/reload-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/billing/reload-section.tsx @@ -2,9 +2,9 @@ import { json, action, useParams, createAsync, useSubmission } from "@solidjs/ro import { createEffect, Show, createMemo } from "solid-js" import { createStore } from "solid-js/store" import { withActor } from "~/context/auth.withActor" -import { Billing } from "@opencode-ai/console-core/billing.js" -import { Database, eq } from "@opencode-ai/console-core/drizzle/index.js" -import { BillingTable } from "@opencode-ai/console-core/schema/billing.sql.js" +import { Billing } from "@opencode/console-core/billing.js" +import { Database, eq } from "@opencode/console-core/drizzle/index.js" +import { BillingTable } from "@opencode/console-core/schema/billing.sql.js" import styles from "./reload-section.module.css" import { queryBillingInfo } from "../../common" import { useI18n } from "~/context/i18n" diff --git a/packages/console/app/src/routes/workspace/[id]/go/lite-section.tsx b/packages/console/app/src/routes/workspace/[id]/go/lite-section.tsx index da1b053a358..9a14d12a2b3 100644 --- a/packages/console/app/src/routes/workspace/[id]/go/lite-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/go/lite-section.tsx @@ -2,14 +2,14 @@ import { action, useParams, useAction, useSubmission, json, query, createAsync } import { createStore } from "solid-js/store" import { createMemo, For, Show } from "solid-js" import { Modal } from "~/component/modal" -import { Billing } from "@opencode-ai/console-core/billing.js" -import { Database, eq, and, isNull } from "@opencode-ai/console-core/drizzle/index.js" -import { BillingTable, LiteTable } from "@opencode-ai/console-core/schema/billing.sql.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { Workspace } from "@opencode-ai/console-core/workspace.js" -import { Subscription } from "@opencode-ai/console-core/subscription.js" -import { LiteData } from "@opencode-ai/console-core/lite.js" +import { Billing } from "@opencode/console-core/billing.js" +import { Database, eq, and, isNull } from "@opencode/console-core/drizzle/index.js" +import { BillingTable, LiteTable } from "@opencode/console-core/schema/billing.sql.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" +import { Actor } from "@opencode/console-core/actor.js" +import { Workspace } from "@opencode/console-core/workspace.js" +import { Subscription } from "@opencode/console-core/subscription.js" +import { LiteData } from "@opencode/console-core/lite.js" import { withActor } from "~/context/auth.withActor" import { queryBillingInfo } from "../../common" import styles from "./lite-section.module.css" diff --git a/packages/console/app/src/routes/workspace/[id]/keys/key-section.tsx b/packages/console/app/src/routes/workspace/[id]/keys/key-section.tsx index 09c67f230bd..aa1e51e04d3 100644 --- a/packages/console/app/src/routes/workspace/[id]/keys/key-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/keys/key-section.tsx @@ -1,11 +1,11 @@ import { json, query, action, useParams, createAsync, useSubmission } from "@solidjs/router" import { createEffect, createSignal, For, Show } from "solid-js" import { IconCopy, IconCheck } from "~/component/icon" -import { Key } from "@opencode-ai/console-core/key.js" +import { Key } from "@opencode/console-core/key.js" import { withActor } from "~/context/auth.withActor" import { createStore } from "solid-js/store" import styles from "./key-section.module.css" -import { Actor } from "@opencode-ai/console-core/actor.js" +import { Actor } from "@opencode/console-core/actor.js" import { useI18n } from "~/context/i18n" import { formError, localizeError } from "~/lib/form-error" diff --git a/packages/console/app/src/routes/workspace/[id]/members/member-section.tsx b/packages/console/app/src/routes/workspace/[id]/members/member-section.tsx index 00edb400c97..f0ea92a95fb 100644 --- a/packages/console/app/src/routes/workspace/[id]/members/member-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/members/member-section.tsx @@ -3,9 +3,9 @@ import { createEffect, For, Show } from "solid-js" import { withActor } from "~/context/auth.withActor" import { createStore } from "solid-js/store" import styles from "./member-section.module.css" -import { UserRole } from "@opencode-ai/console-core/schema/user.sql.js" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { User } from "@opencode-ai/console-core/user.js" +import { UserRole } from "@opencode/console-core/schema/user.sql.js" +import { Actor } from "@opencode/console-core/actor.js" +import { User } from "@opencode/console-core/user.js" import { RoleDropdown } from "./role-dropdown" import { useI18n } from "~/context/i18n" import { useLanguage } from "~/context/language" diff --git a/packages/console/app/src/routes/workspace/[id]/model-section.tsx b/packages/console/app/src/routes/workspace/[id]/model-section.tsx index 96c91889c1f..315d9bda4ec 100644 --- a/packages/console/app/src/routes/workspace/[id]/model-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/model-section.tsx @@ -1,8 +1,8 @@ -import { Model } from "@opencode-ai/console-core/model.js" +import { Model } from "@opencode/console-core/model.js" import { query, action, useParams, createAsync, json } from "@solidjs/router" import { createMemo, For, Show } from "solid-js" import { withActor } from "~/context/auth.withActor" -import { ZenData } from "@opencode-ai/console-core/model.js" +import { ZenData } from "@opencode/console-core/model.js" import styles from "./model-section.module.css" import { querySessionInfo } from "../common" import { diff --git a/packages/console/app/src/routes/workspace/[id]/new-user-section.tsx b/packages/console/app/src/routes/workspace/[id]/new-user-section.tsx index a50efc288d6..f0a2095b5d8 100644 --- a/packages/console/app/src/routes/workspace/[id]/new-user-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/new-user-section.tsx @@ -1,8 +1,8 @@ import { query, useParams, createAsync } from "@solidjs/router" import { createMemo, createSignal, Show } from "solid-js" import { IconCopy, IconCheck } from "~/component/icon" -import { Key } from "@opencode-ai/console-core/key.js" -import { Billing } from "@opencode-ai/console-core/billing.js" +import { Key } from "@opencode/console-core/key.js" +import { Billing } from "@opencode/console-core/billing.js" import { withActor } from "~/context/auth.withActor" import styles from "./new-user-section.module.css" import { useI18n } from "~/context/i18n" diff --git a/packages/console/app/src/routes/workspace/[id]/provider-section.tsx b/packages/console/app/src/routes/workspace/[id]/provider-section.tsx index acdd897425c..ce147cd7eef 100644 --- a/packages/console/app/src/routes/workspace/[id]/provider-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/provider-section.tsx @@ -1,6 +1,6 @@ import { json, query, action, useParams, createAsync, useSubmission } from "@solidjs/router" import { createEffect, For, Show } from "solid-js" -import { Provider } from "@opencode-ai/console-core/provider.js" +import { Provider } from "@opencode/console-core/provider.js" import { withActor } from "~/context/auth.withActor" import { createStore } from "solid-js/store" import styles from "./provider-section.module.css" diff --git a/packages/console/app/src/routes/workspace/[id]/settings/settings-section.tsx b/packages/console/app/src/routes/workspace/[id]/settings/settings-section.tsx index a6795c1ba66..610cb7e55c9 100644 --- a/packages/console/app/src/routes/workspace/[id]/settings/settings-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/settings/settings-section.tsx @@ -2,10 +2,10 @@ import { json, action, useParams, useSubmission, createAsync, query } from "@sol import { createEffect, Show } from "solid-js" import { createStore } from "solid-js/store" import { withActor } from "~/context/auth.withActor" -import { Workspace } from "@opencode-ai/console-core/workspace.js" +import { Workspace } from "@opencode/console-core/workspace.js" import styles from "./settings-section.module.css" -import { Database, eq } from "@opencode-ai/console-core/drizzle/index.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" +import { Database, eq } from "@opencode/console-core/drizzle/index.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" import { useI18n } from "~/context/i18n" import { formError, localizeError } from "~/lib/form-error" diff --git a/packages/console/app/src/routes/workspace/[id]/usage/graph-section.tsx b/packages/console/app/src/routes/workspace/[id]/usage/graph-section.tsx index b5033f25f6d..c5d138ff3f7 100644 --- a/packages/console/app/src/routes/workspace/[id]/usage/graph-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/usage/graph-section.tsx @@ -1,8 +1,8 @@ -import { and, Database, eq, gte, inArray, isNull, lt, or, sql, sum } from "@opencode-ai/console-core/drizzle/index.js" -import { UsageTable } from "@opencode-ai/console-core/schema/billing.sql.js" -import { KeyTable } from "@opencode-ai/console-core/schema/key.sql.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" -import { AuthTable } from "@opencode-ai/console-core/schema/auth.sql.js" +import { and, Database, eq, gte, inArray, isNull, lt, or, sql, sum } from "@opencode/console-core/drizzle/index.js" +import { UsageTable } from "@opencode/console-core/schema/billing.sql.js" +import { KeyTable } from "@opencode/console-core/schema/key.sql.js" +import { UserTable } from "@opencode/console-core/schema/user.sql.js" +import { AuthTable } from "@opencode/console-core/schema/auth.sql.js" import { useParams } from "@solidjs/router" import { createEffect, createMemo, onCleanup, Show, For } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/console/app/src/routes/workspace/[id]/usage/usage-section.tsx b/packages/console/app/src/routes/workspace/[id]/usage/usage-section.tsx index 2075052c7db..63ef2c88a5d 100644 --- a/packages/console/app/src/routes/workspace/[id]/usage/usage-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/usage/usage-section.tsx @@ -1,4 +1,4 @@ -import { Billing } from "@opencode-ai/console-core/billing.js" +import { Billing } from "@opencode/console-core/billing.js" import { createAsync, query, useParams } from "@solidjs/router" import { createMemo, For, Show, Switch, Match, createEffect, createSignal } from "solid-js" import { formatDateUTC, formatDateForTable } from "../../common" diff --git a/packages/console/app/src/routes/workspace/common.tsx b/packages/console/app/src/routes/workspace/common.tsx index d41793dd92b..4af094f5fc0 100644 --- a/packages/console/app/src/routes/workspace/common.tsx +++ b/packages/console/app/src/routes/workspace/common.tsx @@ -1,11 +1,11 @@ -import { Resource } from "@opencode-ai/console-resource" -import { Actor } from "@opencode-ai/console-core/actor.js" +import { Resource } from "@opencode/console-resource" +import { Actor } from "@opencode/console-core/actor.js" import { action, json, query } from "@solidjs/router" import { withActor } from "~/context/auth.withActor" -import { Billing } from "@opencode-ai/console-core/billing.js" -import { and, Database, desc, eq, isNull } from "@opencode-ai/console-core/drizzle/index.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" +import { Billing } from "@opencode/console-core/billing.js" +import { and, Database, desc, eq, isNull } from "@opencode/console-core/drizzle/index.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" +import { UserTable } from "@opencode/console-core/schema/user.sql.js" export function formatDateForTable(date: Date) { const options: Intl.DateTimeFormatOptions = { diff --git a/packages/console/app/src/routes/zen/go/v1/models.ts b/packages/console/app/src/routes/zen/go/v1/models.ts index 83ef74fb614..dc7f6473067 100644 --- a/packages/console/app/src/routes/zen/go/v1/models.ts +++ b/packages/console/app/src/routes/zen/go/v1/models.ts @@ -1,5 +1,5 @@ import type { APIEvent } from "@solidjs/start/server" -import { ZenData } from "@opencode-ai/console-core/model.js" +import { ZenData } from "@opencode/console-core/model.js" import { buildModelsResponse, buildOptionsResponse } from "../../util/modelsHandler" export async function OPTIONS(_input: APIEvent) { diff --git a/packages/console/app/src/routes/zen/util/handler.ts b/packages/console/app/src/routes/zen/util/handler.ts index 35dcb00e1c7..70e671e53fc 100644 --- a/packages/console/app/src/routes/zen/util/handler.ts +++ b/packages/console/app/src/routes/zen/util/handler.ts @@ -1,19 +1,19 @@ import type { APIEvent } from "@solidjs/start/server" -import { and, Database, eq, isNull, lt, or, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { KeyTable } from "@opencode-ai/console-core/schema/key.sql.js" -import { BillingTable, LiteTable, SubscriptionTable, UsageTable } from "@opencode-ai/console-core/schema/billing.sql.js" -import { centsToMicroCents } from "@opencode-ai/console-core/util/price.js" -import { getMonthlyBounds, getWeekBounds } from "@opencode-ai/console-core/util/date.js" -import { Identifier } from "@opencode-ai/console-core/identifier.js" -import { Billing } from "@opencode-ai/console-core/billing.js" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" -import { ZenData } from "@opencode-ai/console-core/model.js" -import { Subscription } from "@opencode-ai/console-core/subscription.js" -import { BlackData } from "@opencode-ai/console-core/black.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" -import { ModelTable } from "@opencode-ai/console-core/schema/model.sql.js" -import { ProviderTable } from "@opencode-ai/console-core/schema/provider.sql.js" +import { and, Database, eq, isNull, lt, or, sql } from "@opencode/console-core/drizzle/index.js" +import { KeyTable } from "@opencode/console-core/schema/key.sql.js" +import { BillingTable, LiteTable, SubscriptionTable, UsageTable } from "@opencode/console-core/schema/billing.sql.js" +import { centsToMicroCents } from "@opencode/console-core/util/price.js" +import { getMonthlyBounds, getWeekBounds } from "@opencode/console-core/util/date.js" +import { Identifier } from "@opencode/console-core/identifier.js" +import { Billing } from "@opencode/console-core/billing.js" +import { Actor } from "@opencode/console-core/actor.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" +import { ZenData } from "@opencode/console-core/model.js" +import { Subscription } from "@opencode/console-core/subscription.js" +import { BlackData } from "@opencode/console-core/black.js" +import { UserTable } from "@opencode/console-core/schema/user.sql.js" +import { ModelTable } from "@opencode/console-core/schema/model.sql.js" +import { ProviderTable } from "@opencode/console-core/schema/provider.sql.js" import { logger } from "./logger" import { AuthError, @@ -42,15 +42,15 @@ import { createRateLimiter as createIpRateLimiter } from "./ipRateLimiter" import { createRateLimiter as createKeyRateLimiter } from "./keyRateLimiter" import { createTrialLimiter } from "./trialLimiter" import { createStickyTracker } from "./stickyProviderTracker" -import { LiteData } from "@opencode-ai/console-core/lite.js" -import { Resource } from "@opencode-ai/console-resource" +import { LiteData } from "@opencode/console-core/lite.js" +import { Resource } from "@opencode/console-resource" import { i18n, type Key } from "~/i18n" import { localeFromRequest } from "~/lib/language" import { createModelTpmLimiter } from "./modelTpmLimiter" import { createModelTpsLimiter } from "./modelTpsLimiter" import { createProviderBudgetTracker } from "./providerBudgetTracker" import { accumulateUsage, HOT_WORKSPACES } from "./usageBatcher" -import { Workspace } from "@opencode-ai/console-core/workspace.js" +import { Workspace } from "@opencode/console-core/workspace.js" import { countryFromRequest } from "~/lib/request-country" type ZenData = Awaited> diff --git a/packages/console/app/src/routes/zen/util/ipRateLimiter.ts b/packages/console/app/src/routes/zen/util/ipRateLimiter.ts index 7461fa63135..4f4ad7f1000 100644 --- a/packages/console/app/src/routes/zen/util/ipRateLimiter.ts +++ b/packages/console/app/src/routes/zen/util/ipRateLimiter.ts @@ -3,7 +3,7 @@ import { logger } from "./logger" import { buildRateLimitKey, getRedis } from "./redis" import { i18n } from "~/i18n" import { localeFromRequest } from "~/lib/language" -import { Subscription } from "@opencode-ai/console-core/subscription.js" +import { Subscription } from "@opencode/console-core/subscription.js" export function createRateLimiter(modelId: string, rateLimit: number | undefined, rawIp: string, request: Request) { const dict = i18n(localeFromRequest(request)) diff --git a/packages/console/app/src/routes/zen/util/logger.ts b/packages/console/app/src/routes/zen/util/logger.ts index aef46ddd0e6..6db759e7137 100644 --- a/packages/console/app/src/routes/zen/util/logger.ts +++ b/packages/console/app/src/routes/zen/util/logger.ts @@ -1,4 +1,4 @@ -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" export const logger = { metric: (values: Record) => { diff --git a/packages/console/app/src/routes/zen/util/modelTpmLimiter.ts b/packages/console/app/src/routes/zen/util/modelTpmLimiter.ts index 8e3e8cc95ed..87dc27e34cb 100644 --- a/packages/console/app/src/routes/zen/util/modelTpmLimiter.ts +++ b/packages/console/app/src/routes/zen/util/modelTpmLimiter.ts @@ -1,5 +1,5 @@ -import { and, Database, eq, inArray, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { ModelTpmRateLimitTable } from "@opencode-ai/console-core/schema/ip.sql.js" +import { and, Database, eq, inArray, sql } from "@opencode/console-core/drizzle/index.js" +import { ModelTpmRateLimitTable } from "@opencode/console-core/schema/ip.sql.js" import { UsageInfo } from "./provider/provider" export function createModelTpmLimiter(providers: { id: string; model: string; tpmLimit?: number }[]) { diff --git a/packages/console/app/src/routes/zen/util/modelTpsLimiter.ts b/packages/console/app/src/routes/zen/util/modelTpsLimiter.ts index fbdab6d319a..ce3d1a0242a 100644 --- a/packages/console/app/src/routes/zen/util/modelTpsLimiter.ts +++ b/packages/console/app/src/routes/zen/util/modelTpsLimiter.ts @@ -1,5 +1,5 @@ -import { and, Database, inArray, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { ModelTpsRateLimitTable } from "@opencode-ai/console-core/schema/ip.sql.js" +import { and, Database, inArray, sql } from "@opencode/console-core/drizzle/index.js" +import { ModelTpsRateLimitTable } from "@opencode/console-core/schema/ip.sql.js" import { UsageInfo } from "./provider/provider" export function createModelTpsLimiter(providers: { id: string; model: string; tpsGoal?: number }[]) { diff --git a/packages/console/app/src/routes/zen/util/provider/provider.ts b/packages/console/app/src/routes/zen/util/provider/provider.ts index 9b26c82377b..99bce0a72df 100644 --- a/packages/console/app/src/routes/zen/util/provider/provider.ts +++ b/packages/console/app/src/routes/zen/util/provider/provider.ts @@ -1,4 +1,4 @@ -import { ZenData } from "@opencode-ai/console-core/model.js" +import { ZenData } from "@opencode/console-core/model.js" import { fromAnthropicChunk, fromAnthropicRequest, diff --git a/packages/console/app/src/routes/zen/util/providerBudgetTracker.ts b/packages/console/app/src/routes/zen/util/providerBudgetTracker.ts index a21f70b5385..e3c898216bb 100644 --- a/packages/console/app/src/routes/zen/util/providerBudgetTracker.ts +++ b/packages/console/app/src/routes/zen/util/providerBudgetTracker.ts @@ -1,4 +1,4 @@ -import { centsToMicroCents } from "@opencode-ai/console-core/util/price.js" +import { centsToMicroCents } from "@opencode/console-core/util/price.js" import { buildRateLimitKey, getRedis } from "./redis" import { logger } from "./logger" diff --git a/packages/console/app/src/routes/zen/util/redis.ts b/packages/console/app/src/routes/zen/util/redis.ts index 512523298a8..9e6ec68b1ae 100644 --- a/packages/console/app/src/routes/zen/util/redis.ts +++ b/packages/console/app/src/routes/zen/util/redis.ts @@ -1,4 +1,4 @@ -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { Redis } from "@upstash/redis/cloudflare" let redis: Redis | undefined diff --git a/packages/console/app/src/routes/zen/util/stickyProviderTracker.ts b/packages/console/app/src/routes/zen/util/stickyProviderTracker.ts index 67fe3ed4057..5a8645289ba 100644 --- a/packages/console/app/src/routes/zen/util/stickyProviderTracker.ts +++ b/packages/console/app/src/routes/zen/util/stickyProviderTracker.ts @@ -1,5 +1,5 @@ -import { Database, eq } from "@opencode-ai/console-core/drizzle/index.js" -import { ModelStickyProviderTable } from "@opencode-ai/console-core/schema/ip.sql.js" +import { Database, eq } from "@opencode/console-core/drizzle/index.js" +import { ModelStickyProviderTable } from "@opencode/console-core/schema/ip.sql.js" export function createStickyTracker( modelId: string, diff --git a/packages/console/app/src/routes/zen/util/trialLimiter.ts b/packages/console/app/src/routes/zen/util/trialLimiter.ts index 319825dd79f..06ee6e2f5fd 100644 --- a/packages/console/app/src/routes/zen/util/trialLimiter.ts +++ b/packages/console/app/src/routes/zen/util/trialLimiter.ts @@ -1,7 +1,7 @@ -import { Database, eq, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { IpTable } from "@opencode-ai/console-core/schema/ip.sql.js" +import { Database, eq, sql } from "@opencode/console-core/drizzle/index.js" +import { IpTable } from "@opencode/console-core/schema/ip.sql.js" import { UsageInfo } from "./provider/provider" -import { Subscription } from "@opencode-ai/console-core/subscription.js" +import { Subscription } from "@opencode/console-core/subscription.js" export function createTrialLimiter(trialProviders: string[] | undefined, ip: string) { if (!trialProviders) return diff --git a/packages/console/app/src/routes/zen/util/usageBatcher.ts b/packages/console/app/src/routes/zen/util/usageBatcher.ts index 315ce0a2ebb..741a10c2d3e 100644 --- a/packages/console/app/src/routes/zen/util/usageBatcher.ts +++ b/packages/console/app/src/routes/zen/util/usageBatcher.ts @@ -1,4 +1,4 @@ -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { getRedis } from "./redis" // Workspaces whose balance/usage updates should be batched in Redis to avoid diff --git a/packages/console/app/src/routes/zen/v1/models.ts b/packages/console/app/src/routes/zen/v1/models.ts index 68c3cac6946..01b94871809 100644 --- a/packages/console/app/src/routes/zen/v1/models.ts +++ b/packages/console/app/src/routes/zen/v1/models.ts @@ -1,9 +1,9 @@ import type { APIEvent } from "@solidjs/start/server" -import { ZenData } from "@opencode-ai/console-core/model.js" -import { and, Database, eq, isNull } from "@opencode-ai/console-core/drizzle/index.js" -import { KeyTable } from "@opencode-ai/console-core/schema/key.sql.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" -import { ModelTable } from "@opencode-ai/console-core/schema/model.sql.js" +import { ZenData } from "@opencode/console-core/model.js" +import { and, Database, eq, isNull } from "@opencode/console-core/drizzle/index.js" +import { KeyTable } from "@opencode/console-core/schema/key.sql.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" +import { ModelTable } from "@opencode/console-core/schema/model.sql.js" import { buildOptionsResponse, buildModelsResponse } from "~/routes/zen/util/modelsHandler" export async function OPTIONS(_input: APIEvent) { diff --git a/packages/console/app/test/providerUsage.test.ts b/packages/console/app/test/providerUsage.test.ts index 7be3aacffdd..890e2ab8eca 100644 --- a/packages/console/app/test/providerUsage.test.ts +++ b/packages/console/app/test/providerUsage.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { ZenData } from "@opencode-ai/console-core/model.js" +import type { ZenData } from "@opencode/console-core/model.js" import type { ProviderHelper } from "../src/routes/zen/util/provider/provider" import { anthropicHelper } from "../src/routes/zen/util/provider/anthropic" import { googleHelper } from "../src/routes/zen/util/provider/google" diff --git a/packages/console/core/package.json b/packages/console/core/package.json index 21dbdbf8b7c..243f890926d 100644 --- a/packages/console/core/package.json +++ b/packages/console/core/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/console-core", + "name": "@opencode/console-core", "version": "1.18.15", "private": true, "type": "module", @@ -8,8 +8,8 @@ "dependencies": { "@aws-sdk/client-sts": "3.782.0", "@jsx-email/render": "1.1.1", - "@opencode-ai/console-mail": "workspace:*", - "@opencode-ai/console-resource": "workspace:*", + "@opencode/console-mail": "workspace:*", + "@opencode/console-resource": "workspace:*", "@planetscale/database": "1.19.0", "aws4fetch": "1.0.20", "drizzle-orm": "catalog:", diff --git a/packages/console/core/script/create-api-key.ts b/packages/console/core/script/create-api-key.ts index dba2ee946c4..1db2de0d306 100644 --- a/packages/console/core/script/create-api-key.ts +++ b/packages/console/core/script/create-api-key.ts @@ -1,4 +1,4 @@ -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { and, Database, eq, isNull } from "../src/drizzle/index.js" import { Identifier } from "../src/identifier.js" import { AccountTable } from "../src/schema/account.sql.js" diff --git a/packages/console/core/script/reset-db.ts b/packages/console/core/script/reset-db.ts index 02d49890176..b2f36b143ef 100644 --- a/packages/console/core/script/reset-db.ts +++ b/packages/console/core/script/reset-db.ts @@ -1,4 +1,4 @@ -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { Database } from "../src/drizzle/index.js" import { UserTable } from "../src/schema/user.sql.js" import { AccountTable } from "../src/schema/account.sql.js" diff --git a/packages/console/core/src/aws.ts b/packages/console/core/src/aws.ts index a4c1510862c..2d618f683f3 100644 --- a/packages/console/core/src/aws.ts +++ b/packages/console/core/src/aws.ts @@ -1,5 +1,5 @@ import { z } from "zod" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { AwsClient } from "aws4fetch" import { fn } from "./util/fn" diff --git a/packages/console/core/src/billing.ts b/packages/console/core/src/billing.ts index 879cd8c6775..86f6fdc81aa 100644 --- a/packages/console/core/src/billing.ts +++ b/packages/console/core/src/billing.ts @@ -12,7 +12,7 @@ import { import { Actor } from "./actor" import { fn } from "./util/fn" import { z } from "zod" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { Identifier } from "./identifier" import { centsToMicroCents } from "./util/price" import { User } from "./user" diff --git a/packages/console/core/src/black.ts b/packages/console/core/src/black.ts index 1908403a276..f244c637313 100644 --- a/packages/console/core/src/black.ts +++ b/packages/console/core/src/black.ts @@ -1,6 +1,6 @@ import { z } from "zod" import { fn } from "./util/fn" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { BlackPlans } from "./schema/billing.sql" import { Subscription } from "./subscription" diff --git a/packages/console/core/src/drizzle/index.ts b/packages/console/core/src/drizzle/index.ts index 933e59a204d..595eee9c5c3 100644 --- a/packages/console/core/src/drizzle/index.ts +++ b/packages/console/core/src/drizzle/index.ts @@ -1,5 +1,5 @@ import { drizzle } from "drizzle-orm/planetscale-serverless" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" export * from "drizzle-orm" import { Client } from "@planetscale/database" diff --git a/packages/console/core/src/lite.ts b/packages/console/core/src/lite.ts index 717940ea656..23b01fbb6db 100644 --- a/packages/console/core/src/lite.ts +++ b/packages/console/core/src/lite.ts @@ -1,6 +1,6 @@ import { z } from "zod" import { fn } from "./util/fn" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import { Subscription } from "./subscription" export namespace LiteData { diff --git a/packages/console/core/src/model.ts b/packages/console/core/src/model.ts index f4ac40183f1..29205282421 100644 --- a/packages/console/core/src/model.ts +++ b/packages/console/core/src/model.ts @@ -5,7 +5,7 @@ import { ModelTable } from "./schema/model.sql" import { Identifier } from "./identifier" import { fn } from "./util/fn" import { Actor } from "./actor" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" export namespace ZenData { const FormatSchema = z.enum(["anthropic", "google", "openai", "oa-compat"]) diff --git a/packages/console/core/src/subscription.ts b/packages/console/core/src/subscription.ts index adbb0a55bcd..36c1b5a690d 100644 --- a/packages/console/core/src/subscription.ts +++ b/packages/console/core/src/subscription.ts @@ -2,7 +2,7 @@ import { z } from "zod" import { fn } from "./util/fn" import { centsToMicroCents } from "./util/price" import { getWeekBounds, getMonthlyBounds } from "./util/date" -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" export namespace Subscription { const LimitsSchema = z.object({ diff --git a/packages/console/core/src/user.ts b/packages/console/core/src/user.ts index ea379b2b48a..97fcda085cc 100644 --- a/packages/console/core/src/user.ts +++ b/packages/console/core/src/user.ts @@ -139,7 +139,7 @@ export namespace User { .then((rows) => rows[0]), ) - const { InviteEmail } = await import("@opencode-ai/console-mail/InviteEmail.jsx") + const { InviteEmail } = await import("@opencode/console-mail/InviteEmail.jsx") await AWS.sendEmail({ to: email, subject: `You've been invited to join the ${emailInfo.workspaceName} workspace on OpenCode`, diff --git a/packages/console/function/package.json b/packages/console/function/package.json index 57ba6633539..644d1b66585 100644 --- a/packages/console/function/package.json +++ b/packages/console/function/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/console-function", + "name": "@opencode/console-function", "version": "1.18.15", "$schema": "https://json.schemastore.org/package.json", "private": true, @@ -16,8 +16,8 @@ "@typescript/native-preview": "catalog:" }, "dependencies": { - "@opencode-ai/console-core": "workspace:*", - "@opencode-ai/console-resource": "workspace:*", + "@opencode/console-core": "workspace:*", + "@opencode/console-resource": "workspace:*", "@openauthjs/openauth": "0.0.0-20250322224806", "zod": "catalog:" } diff --git a/packages/console/function/src/auth.ts b/packages/console/function/src/auth.ts index 6d56b967060..46a85666eee 100644 --- a/packages/console/function/src/auth.ts +++ b/packages/console/function/src/auth.ts @@ -7,16 +7,16 @@ import { THEME_OPENAUTH } from "@openauthjs/openauth/ui/theme" import { GithubProvider } from "@openauthjs/openauth/provider/github" import { GoogleOidcProvider } from "@openauthjs/openauth/provider/google" import { CloudflareStorage } from "@openauthjs/openauth/storage/cloudflare" -import { Account } from "@opencode-ai/console-core/account.js" -import { Workspace } from "@opencode-ai/console-core/workspace.js" -import { Actor } from "@opencode-ai/console-core/actor.js" -import { Resource } from "@opencode-ai/console-resource" -import { User } from "@opencode-ai/console-core/user.js" -import { and, Database, eq, isNull, or } from "@opencode-ai/console-core/drizzle/index.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" -import { AuthTable } from "@opencode-ai/console-core/schema/auth.sql.js" -import { Identifier } from "@opencode-ai/console-core/identifier.js" +import { Account } from "@opencode/console-core/account.js" +import { Workspace } from "@opencode/console-core/workspace.js" +import { Actor } from "@opencode/console-core/actor.js" +import { Resource } from "@opencode/console-resource" +import { User } from "@opencode/console-core/user.js" +import { and, Database, eq, isNull, or } from "@opencode/console-core/drizzle/index.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" +import { UserTable } from "@opencode/console-core/schema/user.sql.js" +import { AuthTable } from "@opencode/console-core/schema/auth.sql.js" +import { Identifier } from "@opencode/console-core/identifier.js" type Env = { AuthStorage: KVNamespace diff --git a/packages/console/function/src/log-processor.ts b/packages/console/function/src/log-processor.ts index 75daba2b504..a10d7f40202 100644 --- a/packages/console/function/src/log-processor.ts +++ b/packages/console/function/src/log-processor.ts @@ -1,4 +1,4 @@ -import { Resource } from "@opencode-ai/console-resource" +import { Resource } from "@opencode/console-resource" import type { TraceItem } from "@cloudflare/workers-types" export default { diff --git a/packages/console/function/src/stat.ts b/packages/console/function/src/stat.ts index 957adf491a6..a319806214b 100644 --- a/packages/console/function/src/stat.ts +++ b/packages/console/function/src/stat.ts @@ -1,5 +1,5 @@ -import { and, Database, inArray } from "@opencode-ai/console-core/drizzle/index.js" -import { ModelTpsRateLimitTable } from "@opencode-ai/console-core/schema/ip.sql.js" +import { and, Database, inArray } from "@opencode/console-core/drizzle/index.js" +import { ModelTpsRateLimitTable } from "@opencode/console-core/schema/ip.sql.js" type Result = Record diff --git a/packages/console/mail/package.json b/packages/console/mail/package.json index 5a0941327dc..327298d49c1 100644 --- a/packages/console/mail/package.json +++ b/packages/console/mail/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/console-mail", + "name": "@opencode/console-mail", "version": "1.18.15", "dependencies": { "@jsx-email/all": "2.2.3", diff --git a/packages/console/resource/package.json b/packages/console/resource/package.json index 6e874331d24..ba42c124ed2 100644 --- a/packages/console/resource/package.json +++ b/packages/console/resource/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/console-resource", + "name": "@opencode/console-resource", "license": "MIT", "dependencies": { "@cloudflare/workers-types": "catalog:" diff --git a/packages/console/support/package.json b/packages/console/support/package.json index 1ad1d82e9df..0baa5d7f8a8 100644 --- a/packages/console/support/package.json +++ b/packages/console/support/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/console-support", + "name": "@opencode/console-support", "version": "1.18.15", "type": "module", "license": "MIT", @@ -9,7 +9,7 @@ }, "dependencies": { "@cloudflare/vite-plugin": "1.15.2", - "@opencode-ai/console-core": "workspace:*", + "@opencode/console-core": "workspace:*", "@solidjs/meta": "catalog:", "@solidjs/router": "catalog:", "@solidjs/start": "catalog:", diff --git a/packages/console/support/src/lib/lookup.ts b/packages/console/support/src/lib/lookup.ts index 5bf2b06f6b7..dae8153716c 100644 --- a/packages/console/support/src/lib/lookup.ts +++ b/packages/console/support/src/lib/lookup.ts @@ -1,8 +1,8 @@ "use server" -import { Database, and, eq, isNull, sql } from "@opencode-ai/console-core/drizzle/index.js" -import { AuthTable } from "@opencode-ai/console-core/schema/auth.sql.js" -import { UserTable } from "@opencode-ai/console-core/schema/user.sql.js" +import { Database, and, eq, isNull, sql } from "@opencode/console-core/drizzle/index.js" +import { AuthTable } from "@opencode/console-core/schema/auth.sql.js" +import { UserTable } from "@opencode/console-core/schema/user.sql.js" import { BillingTable, PaymentTable, @@ -10,15 +10,15 @@ import { BlackPlans, UsageTable, LiteTable, -} from "@opencode-ai/console-core/schema/billing.sql.js" -import { WorkspaceTable } from "@opencode-ai/console-core/schema/workspace.sql.js" -import { KeyTable } from "@opencode-ai/console-core/schema/key.sql.js" -import { ModelTable } from "@opencode-ai/console-core/schema/model.sql.js" -import { BlackData } from "@opencode-ai/console-core/black.js" -import { LiteData } from "@opencode-ai/console-core/lite.js" -import { Subscription } from "@opencode-ai/console-core/subscription.js" -import { centsToMicroCents } from "@opencode-ai/console-core/util/price.js" -import { getWeekBounds } from "@opencode-ai/console-core/util/date.js" +} from "@opencode/console-core/schema/billing.sql.js" +import { WorkspaceTable } from "@opencode/console-core/schema/workspace.sql.js" +import { KeyTable } from "@opencode/console-core/schema/key.sql.js" +import { ModelTable } from "@opencode/console-core/schema/model.sql.js" +import { BlackData } from "@opencode/console-core/black.js" +import { LiteData } from "@opencode/console-core/lite.js" +import { Subscription } from "@opencode/console-core/subscription.js" +import { centsToMicroCents } from "@opencode/console-core/util/price.js" +import { getWeekBounds } from "@opencode/console-core/util/date.js" export type LookupResult = { identifier: string diff --git a/packages/core/README.md b/packages/core/README.md index 6c80690fc07..7ea8334eae1 100644 --- a/packages/core/README.md +++ b/packages/core/README.md @@ -1,3 +1,3 @@ -# @opencode-ai/core +# @opencode/core Core runtime services for OpenCode. diff --git a/packages/core/package.json b/packages/core/package.json index 8e4efb2d3a5..14a92dd349e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "version": "1.18.4", - "name": "@opencode-ai/core", + "name": "@opencode/core", "type": "module", "license": "MIT", "repository": { @@ -95,7 +95,7 @@ "@parcel/watcher-linux-x64-musl": "2.5.1", "@parcel/watcher-win32-arm64": "2.5.1", "@parcel/watcher-win32-x64": "2.5.1", - "@opencode-ai/http-recorder": "workspace:*", + "@opencode/http-recorder": "workspace:*", "drizzle-kit": "catalog:" }, "dependencies": { @@ -115,13 +115,13 @@ "@modelcontextprotocol/sdk": "1.29.0", "@ff-labs/fff-bun": "0.10.5", "@ff-labs/fff-node": "0.10.5", - "@opencode-ai/codemode": "workspace:*", - "@opencode-ai/ai": "workspace:*", + "@opencode/codemode": "workspace:*", + "@opencode/ai": "workspace:*", "@opencode-ai/pty": "0.1.13", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/plugin": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/plugin": "workspace:*", "@opencode/plugin-browser": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/util": "workspace:*", "@standard-schema/spec": "catalog:", "@parcel/watcher": "2.5.1", "@silvia-odwyer/photon-node": "0.3.4", diff --git a/packages/core/script/benchmark-location-memory.ts b/packages/core/script/benchmark-location-memory.ts index 637516fd92c..4e3b930fe1f 100644 --- a/packages/core/script/benchmark-location-memory.ts +++ b/packages/core/script/benchmark-location-memory.ts @@ -12,8 +12,8 @@ import os from "os" import path from "path" import { heapStats } from "bun:jsc" import { Effect, Layer, Logger, Scope } from "effect" -import { Global } from "@opencode-ai/util/global" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { LayerNode } from "@opencode/util/effect/layer-node" import { AppNodeBuilder } from "../src/effect/app-node-builder" import { Bus } from "../src/bus" import { Catalog } from "../src/catalog" diff --git a/packages/core/script/benchmark-location.ts b/packages/core/script/benchmark-location.ts index dc29e5046e7..a1a60d7bb70 100644 --- a/packages/core/script/benchmark-location.ts +++ b/packages/core/script/benchmark-location.ts @@ -1,7 +1,7 @@ import path from "path" import { Effect, Logger } from "effect" import { AppNodeBuilder } from "../src/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LayerNode } from "@opencode/util/effect/layer-node" import { Database } from "../src/database/database" import { Bus } from "../src/bus" import { SdkPlugins } from "../src/plugin/sdk" diff --git a/packages/core/script/publish.ts b/packages/core/script/publish.ts index 39c65f086a4..f18a254d637 100644 --- a/packages/core/script/publish.ts +++ b/packages/core/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/core/src/agent.ts b/packages/core/src/agent.ts index fe22869345c..2130cb95d15 100644 --- a/packages/core/src/agent.ts +++ b/packages/core/src/agent.ts @@ -1,10 +1,10 @@ export * as Agent from "./agent.js" import path from "path" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Array, Context, Effect, Layer, Types } from "effect" -import { Agent } from "@opencode-ai/schema/agent" -import { Global } from "@opencode-ai/util/global" +import { Agent } from "@opencode/schema/agent" +import { Global } from "@opencode/util/global" import { Bus } from "./bus.js" import { State } from "./state.js" @@ -22,7 +22,7 @@ export const Color = Agent.Color export const Info = Agent.Info export type Info = Agent.Info -export { Event } from "@opencode-ai/schema/agent" +export { Event } from "@opencode/schema/agent" export interface Selection { readonly id: ID diff --git a/packages/core/src/aisdk-native.ts b/packages/core/src/aisdk-native.ts index 9bb7873c8ab..f29122d9951 100644 --- a/packages/core/src/aisdk-native.ts +++ b/packages/core/src/aisdk-native.ts @@ -1,6 +1,6 @@ export * as AISDKNative from "./aisdk-native.js" -import { isRecord } from "@opencode-ai/ai/utils/record" +import { isRecord } from "@opencode/ai/utils/record" import { Provider } from "./provider.js" export interface Mapping { @@ -22,7 +22,7 @@ export function map(input: MapInput): Mapping | undefined { switch (input.packageName) { case "@ai-sdk/anthropic": return { - package: "@opencode-ai/ai/providers/anthropic", + package: "@opencode/ai/providers/anthropic", settings: { ...baseSettings, ...mapAPIKey(input.settings), @@ -32,7 +32,7 @@ export function map(input: MapInput): Mapping | undefined { } case "@ai-sdk/amazon-bedrock": return { - package: "@opencode-ai/ai/providers/amazon-bedrock", + package: "@opencode/ai/providers/amazon-bedrock", settings: mapBedrockSettings(input.settings, baseSettings), ...mapBedrockRequest(input), } @@ -40,7 +40,7 @@ export function map(input: MapInput): Mapping | undefined { return mapBedrockMantle(input, baseSettings) case "@ai-sdk/azure": return { - package: `@opencode-ai/ai/providers/azure/${input.settings.useCompletionUrls === true ? "chat" : "responses"}`, + package: `@opencode/ai/providers/azure/${input.settings.useCompletionUrls === true ? "chat" : "responses"}`, settings: { ...baseSettings, ...mapAPIKey(input.settings), @@ -58,7 +58,7 @@ export function map(input: MapInput): Mapping | undefined { case "@ai-sdk/groq": case "@ai-sdk/togetherai": return { - package: `@opencode-ai/ai/providers/${input.packageName.slice("@ai-sdk/".length)}`, + package: `@opencode/ai/providers/${input.packageName.slice("@ai-sdk/".length)}`, settings: { ...baseSettings, ...mapAPIKey(input.settings), @@ -68,7 +68,7 @@ export function map(input: MapInput): Mapping | undefined { } case "@ai-sdk/google": return { - package: "@opencode-ai/ai/providers/google", + package: "@opencode/ai/providers/google", settings: { ...baseSettings, ...mapAPIKey(input.settings), @@ -77,7 +77,7 @@ export function map(input: MapInput): Mapping | undefined { } case "@ai-sdk/google-vertex": return { - package: "@opencode-ai/ai/providers/google-vertex", + package: "@opencode/ai/providers/google-vertex", settings: { ...baseSettings, ...(typeof input.settings.accessToken === "string" ? { accessToken: input.settings.accessToken } : {}), @@ -90,7 +90,7 @@ export function map(input: MapInput): Mapping | undefined { } case "@ai-sdk/google-vertex/anthropic": return { - package: "@opencode-ai/ai/providers/google-vertex/messages", + package: "@opencode/ai/providers/google-vertex/messages", settings: { ...baseSettings, ...(typeof input.settings.accessToken === "string" ? { accessToken: input.settings.accessToken } : {}), @@ -109,7 +109,7 @@ export function map(input: MapInput): Mapping | undefined { } case "@ai-sdk/mistral": return { - package: "@opencode-ai/ai/providers/mistral", + package: "@opencode/ai/providers/mistral", settings: { ...baseSettings, ...mapAPIKey(input.settings), @@ -120,7 +120,7 @@ export function map(input: MapInput): Mapping | undefined { } case "@ai-sdk/openai": return { - package: "@opencode-ai/ai/providers/openai", + package: "@opencode/ai/providers/openai", settings: { ...baseSettings, ...mapAPIKey(input.settings), @@ -133,7 +133,7 @@ export function map(input: MapInput): Mapping | undefined { case "@ai-sdk/openai-compatible": if (typeof input.settings.baseURL !== "string") return return { - package: "@opencode-ai/ai/providers/openai-compatible", + package: "@opencode/ai/providers/openai-compatible", settings: { ...baseSettings, ...mapAPIKey(input.settings), @@ -145,7 +145,7 @@ export function map(input: MapInput): Mapping | undefined { return mapOpenRouter(input.settings, baseSettings) case "@ai-sdk/xai": return { - package: "@opencode-ai/ai/providers/xai", + package: "@opencode/ai/providers/xai", settings: { ...baseSettings, ...mapAPIKey(input.settings), @@ -165,7 +165,7 @@ function mapBedrockMantle(input: MapInput, baseSettings: Readonly = (event: Event.Payload) => Effect.Effect export type Unsubscribe = Effect.Effect diff --git a/packages/core/src/catalog.ts b/packages/core/src/catalog.ts index 3b00d35f4eb..e946e21bd9c 100644 --- a/packages/core/src/catalog.ts +++ b/packages/core/src/catalog.ts @@ -1,8 +1,8 @@ export * as Catalog from "./catalog.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Array, Context, Effect, Layer, Order, pipe } from "effect" -import { Catalog } from "@opencode-ai/schema/catalog" +import { Catalog } from "@opencode/schema/catalog" import { Model } from "./model.js" import { Provider } from "./provider.js" import { Bus } from "./bus.js" @@ -16,7 +16,7 @@ export type ProviderRecord = { export type DefaultModel = { providerID: Provider.ID; modelID: Model.ID } -export { Event } from "@opencode-ai/schema/catalog" +export { Event } from "@opencode/schema/catalog" type Data = { providers: Map diff --git a/packages/core/src/codemode/instructions.ts b/packages/core/src/codemode/instructions.ts index 2391389089e..6138d952a4a 100644 --- a/packages/core/src/codemode/instructions.ts +++ b/packages/core/src/codemode/instructions.ts @@ -1,6 +1,6 @@ export * as CodeModeInstructions from "./instructions.js" -import { searchSignature, toolExpression } from "@opencode-ai/codemode" +import { searchSignature, toolExpression } from "@opencode/codemode" import { Effect, Schema } from "effect" import { Instructions } from "../instructions/index.js" import { CodeModeCatalog } from "./catalog.js" diff --git a/packages/core/src/codemode/tool.ts b/packages/core/src/codemode/tool.ts index b57447487c0..f99afba31dd 100644 --- a/packages/core/src/codemode/tool.ts +++ b/packages/core/src/codemode/tool.ts @@ -1,6 +1,6 @@ export * as CodeModeTool from "./tool.js" -import { CodeMode, Namespace, Tool, toolError } from "@opencode-ai/codemode" +import { CodeMode, Namespace, Tool, toolError } from "@opencode/codemode" import type { Content, Context, @@ -9,7 +9,7 @@ import type { Metadata, Namespace as ToolNamespace, Result, -} from "@opencode-ai/schema/tool" +} from "@opencode/schema/tool" import { Effect, Ref, Schema, Semaphore } from "effect" import { definition, normalizedName } from "../tool/runtime.js" import { CodeModeCatalog } from "./catalog.js" diff --git a/packages/core/src/command.ts b/packages/core/src/command.ts index 9650ad477ac..8cf1b06bcfb 100644 --- a/packages/core/src/command.ts +++ b/packages/core/src/command.ts @@ -1,17 +1,17 @@ export * as Command from "./command.js" -import { Command } from "@opencode-ai/schema/command" -import type { PromptInput } from "@opencode-ai/schema/prompt-input" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { Command } from "@opencode/schema/command" +import type { PromptInput } from "@opencode/schema/prompt-input" +import type { Session } from "@opencode/schema/session" +import type { SessionInbox } from "@opencode/schema/session-inbox" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Schema } from "effect" import { Bus } from "./bus.js" import { State } from "./state.js" export const Info = Command.Info export type Info = Command.Info -export { Event } from "@opencode-ai/schema/command" +export { Event } from "@opencode/schema/command" export interface Invocation { readonly sessionID: Session.ID diff --git a/packages/core/src/config.ts b/packages/core/src/config.ts index fb4220f1747..6d6a92d12ea 100644 --- a/packages/core/src/config.ts +++ b/packages/core/src/config.ts @@ -1,6 +1,6 @@ export * as Config from "./config.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import path from "path" import { isDeepStrictEqual } from "node:util" import { type ParseError, parse } from "jsonc-parser" @@ -13,12 +13,12 @@ import { Info, type Entry, Event, -} from "@opencode-ai/schema/config" +} from "@opencode/schema/config" import { Credential } from "./credential.js" import { Bus } from "./bus.js" import { Watcher } from "./filesystem/watcher.js" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { Location } from "./location.js" import { AbsolutePath } from "./schema.js" import { ConfigVariable } from "./config/variable.js" diff --git a/packages/core/src/config/discovery.ts b/packages/core/src/config/discovery.ts index 8214c481bf1..71c0c03d9b7 100644 --- a/packages/core/src/config/discovery.ts +++ b/packages/core/src/config/discovery.ts @@ -2,8 +2,8 @@ export * as ConfigDiscovery from "./discovery.js" import path from "path" import { Effect } from "effect" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { Location } from "../location.js" import { AbsolutePath } from "../schema.js" import type { Options } from "../config.js" diff --git a/packages/core/src/config/normalize.ts b/packages/core/src/config/normalize.ts index b97110c81d0..2805cc04cd3 100644 --- a/packages/core/src/config/normalize.ts +++ b/packages/core/src/config/normalize.ts @@ -1,22 +1,22 @@ export * as ConfigNormalize from "./normalize.js" import { isDeepStrictEqual } from "node:util" -import { isRecord } from "@opencode-ai/ai/utils/record" +import { isRecord } from "@opencode/ai/utils/record" import { Option, Schema } from "effect" -import { Info } from "@opencode-ai/schema/config" -import { ConfigAgent } from "@opencode-ai/schema/config/agent" -import { ConfigCommand } from "@opencode-ai/schema/config/command" -import { ConfigCompaction } from "@opencode-ai/schema/config/compaction" -import { ConfigFormatter } from "@opencode-ai/schema/config/formatter" -import { ConfigLSP } from "@opencode-ai/schema/config/lsp" -import { ConfigMedia } from "@opencode-ai/schema/config/media" -import { ConfigMCP } from "@opencode-ai/schema/config/mcp" -import { ConfigPlugin } from "@opencode-ai/schema/config/plugin" -import { ConfigPolicy } from "@opencode-ai/schema/config/policy" -import { ConfigProvider } from "@opencode-ai/schema/config/provider" -import { ConfigReference } from "@opencode-ai/schema/config/reference" -import { ConfigExperimental } from "@opencode-ai/schema/config/experimental" -import { Permission } from "@opencode-ai/schema/permission" +import { Info } from "@opencode/schema/config" +import { ConfigAgent } from "@opencode/schema/config/agent" +import { ConfigCommand } from "@opencode/schema/config/command" +import { ConfigCompaction } from "@opencode/schema/config/compaction" +import { ConfigFormatter } from "@opencode/schema/config/formatter" +import { ConfigLSP } from "@opencode/schema/config/lsp" +import { ConfigMedia } from "@opencode/schema/config/media" +import { ConfigMCP } from "@opencode/schema/config/mcp" +import { ConfigPlugin } from "@opencode/schema/config/plugin" +import { ConfigPolicy } from "@opencode/schema/config/policy" +import { ConfigProvider } from "@opencode/schema/config/provider" +import { ConfigReference } from "@opencode/schema/config/reference" +import { ConfigExperimental } from "@opencode/schema/config/experimental" +import { Permission } from "@opencode/schema/permission" import { ConfigAgentV1 } from "../v1/config/agent.js" import { ConfigAttachmentV1 } from "../v1/config/attachment.js" import { ConfigCommandV1 } from "../v1/config/command.js" diff --git a/packages/core/src/config/plugin/agent.ts b/packages/core/src/config/plugin/agent.ts index ba402bdc12f..c5bb84a323d 100644 --- a/packages/core/src/config/plugin/agent.ts +++ b/packages/core/src/config/plugin/agent.ts @@ -1,17 +1,17 @@ export * as ConfigAgentPlugin from "./agent.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Document, Info, type Entry } from "@opencode-ai/schema/config" -import { ConfigAgent } from "@opencode-ai/schema/config/agent" +import { define } from "@opencode/plugin/effect/plugin" +import { Document, Info, type Entry } from "@opencode/schema/config" +import { ConfigAgent } from "@opencode/schema/config/agent" import path from "path" import { Effect, Option, PubSub, Schema, Stream } from "effect" import { Agent } from "../../agent.js" import { Config } from "../../config.js" import { ConfigMarkdown } from "../markdown.js" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { ConfigAgentV1 } from "../../v1/config/agent.js" import { ConfigMigrateV1 } from "../../v1/config/migrate.js" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Permission } from "../../permission.js" import type { FileAccess } from "../../file-access.js" import type { ReadTool } from "../../tool/plugin/read.js" diff --git a/packages/core/src/config/plugin/command.ts b/packages/core/src/config/plugin/command.ts index f7cf3647b36..3be2d5bb7a6 100644 --- a/packages/core/src/config/plugin/command.ts +++ b/packages/core/src/config/plugin/command.ts @@ -1,11 +1,11 @@ export * as ConfigCommandPlugin from "./command.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Info, type Entry } from "@opencode-ai/schema/config" -import { ConfigCommand } from "@opencode-ai/schema/config/command" -import { Model } from "@opencode-ai/schema/model" -import { Provider } from "@opencode-ai/schema/provider" -import { AppProcess } from "@opencode-ai/util/process" +import { define } from "@opencode/plugin/effect/plugin" +import { Info, type Entry } from "@opencode/schema/config" +import { ConfigCommand } from "@opencode/schema/config/command" +import { Model } from "@opencode/schema/model" +import { Provider } from "@opencode/schema/provider" +import { AppProcess } from "@opencode/util/process" import path from "path" import { Effect, Option, PubSub, Schema, Stream } from "effect" import { ChildProcess } from "effect/unstable/process" @@ -15,7 +15,7 @@ import { Location } from "../../location.js" import { Session } from "../../session.js" import { SubagentJob } from "../../session/subagent-job.js" import { ShellSelect } from "../../shell/select.js" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { ConfigMarkdown } from "../markdown.js" const decodeCommand = Schema.decodeUnknownOption(ConfigCommand.Info) diff --git a/packages/core/src/config/plugin/compaction.ts b/packages/core/src/config/plugin/compaction.ts index 0b7a2c60ede..6788ca7d320 100644 --- a/packages/core/src/config/plugin/compaction.ts +++ b/packages/core/src/config/plugin/compaction.ts @@ -1,6 +1,6 @@ export * as ConfigCompactionPlugin from "./compaction.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { Config } from "../../config.js" import { SessionCompaction } from "../../session/compaction.js" diff --git a/packages/core/src/config/plugin/entry-observer.ts b/packages/core/src/config/plugin/entry-observer.ts index dd9a832c0b3..a62344014b8 100644 --- a/packages/core/src/config/plugin/entry-observer.ts +++ b/packages/core/src/config/plugin/entry-observer.ts @@ -1,6 +1,6 @@ export * as ConfigEntryObserver from "./entry-observer.js" -import type { EventDomain } from "@opencode-ai/plugin/effect/event" +import type { EventDomain } from "@opencode/plugin/effect/event" import { Effect, Stream } from "effect" import { Config } from "../../config.js" diff --git a/packages/core/src/config/plugin/formatter.ts b/packages/core/src/config/plugin/formatter.ts index 483e8727706..572fc0ee1d6 100644 --- a/packages/core/src/config/plugin/formatter.ts +++ b/packages/core/src/config/plugin/formatter.ts @@ -1,10 +1,10 @@ export * as ConfigFormatterPlugin from "./formatter.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { Npm } from "@opencode-ai/util/npm" -import { AppProcess } from "@opencode-ai/util/process" +import { define } from "@opencode/plugin/effect/plugin" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { Npm } from "@opencode/util/npm" +import { AppProcess } from "@opencode/util/process" import { Effect } from "effect" import { Config } from "../../config.js" import { Formatter } from "../../formatter.js" diff --git a/packages/core/src/config/plugin/image.ts b/packages/core/src/config/plugin/image.ts index ac18c8c6f0f..23450f425c7 100644 --- a/packages/core/src/config/plugin/image.ts +++ b/packages/core/src/config/plugin/image.ts @@ -1,6 +1,6 @@ export * as ConfigImagePlugin from "./image.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { Config } from "../../config.js" import { Image } from "../../image.js" diff --git a/packages/core/src/config/plugin/instruction.ts b/packages/core/src/config/plugin/instruction.ts index df50d0a2b22..3685b248f3d 100644 --- a/packages/core/src/config/plugin/instruction.ts +++ b/packages/core/src/config/plugin/instruction.ts @@ -1,8 +1,8 @@ export * as ConfigInstructionPlugin from "./instruction.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { define } from "@opencode/plugin/effect/plugin" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { dirname, join } from "path" import { Effect, PubSub, Semaphore, Stream } from "effect" import { Watcher } from "../../filesystem/watcher.js" diff --git a/packages/core/src/config/plugin/location-watcher.ts b/packages/core/src/config/plugin/location-watcher.ts index 2db0d42985e..cf3dca93bde 100644 --- a/packages/core/src/config/plugin/location-watcher.ts +++ b/packages/core/src/config/plugin/location-watcher.ts @@ -1,6 +1,6 @@ export * as ConfigLocationWatcherPlugin from "./location-watcher.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { Config } from "../../config.js" import { LocationWatcherPolicy } from "../../filesystem/location-watcher-policy.js" diff --git a/packages/core/src/config/plugin/mcp.ts b/packages/core/src/config/plugin/mcp.ts index a18632703a5..ff544c2ab1f 100644 --- a/packages/core/src/config/plugin/mcp.ts +++ b/packages/core/src/config/plugin/mcp.ts @@ -1,8 +1,8 @@ export * as ConfigMcpPlugin from "./mcp.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Document, type Entry } from "@opencode-ai/schema/config" -import type { ServerConfig } from "@opencode-ai/schema/mcp" +import { define } from "@opencode/plugin/effect/plugin" +import { Document, type Entry } from "@opencode/schema/config" +import type { ServerConfig } from "@opencode/schema/mcp" import { Effect, Stream } from "effect" import { Config } from "../../config.js" import { Mcp } from "../../mcp/index.js" diff --git a/packages/core/src/config/plugin/policy.ts b/packages/core/src/config/plugin/policy.ts index f2a69b08864..d19f0ee71e8 100644 --- a/packages/core/src/config/plugin/policy.ts +++ b/packages/core/src/config/plugin/policy.ts @@ -1,7 +1,7 @@ export * as ConfigPolicyPlugin from "./policy.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Document } from "@opencode-ai/schema/config" +import { define } from "@opencode/plugin/effect/plugin" +import { Document } from "@opencode/schema/config" import { Effect } from "effect" import { Config } from "../../config.js" import { Wildcard } from "../../util/wildcard.js" diff --git a/packages/core/src/config/plugin/provider.ts b/packages/core/src/config/plugin/provider.ts index 1b2245e393f..e9022cf9c83 100644 --- a/packages/core/src/config/plugin/provider.ts +++ b/packages/core/src/config/plugin/provider.ts @@ -1,8 +1,8 @@ export * as ConfigProviderPlugin from "./provider.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Document, type Entry } from "@opencode-ai/schema/config" -import { Money } from "@opencode-ai/schema/money" +import { define } from "@opencode/plugin/effect/plugin" +import { Document, type Entry } from "@opencode/schema/config" +import { Money } from "@opencode/schema/money" import { Effect } from "effect" import { Config } from "../../config.js" import { Provider } from "../../provider.js" diff --git a/packages/core/src/config/plugin/reference.ts b/packages/core/src/config/plugin/reference.ts index 486239b4915..4c8c35032fb 100644 --- a/packages/core/src/config/plugin/reference.ts +++ b/packages/core/src/config/plugin/reference.ts @@ -1,14 +1,14 @@ export * as ConfigReferencePlugin from "./reference.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Document } from "@opencode-ai/schema/config" -import { ConfigReference } from "@opencode-ai/schema/config/reference" +import { define } from "@opencode/plugin/effect/plugin" +import { Document } from "@opencode/schema/config" +import { ConfigReference } from "@opencode/schema/config/reference" import path from "path" import { Effect } from "effect" import { Config } from "../../config.js" import { Reference } from "../../reference.js" import { AbsolutePath } from "../../schema.js" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Location } from "../../location.js" import { ConfigEntryObserver } from "./entry-observer.js" diff --git a/packages/core/src/config/plugin/shell.ts b/packages/core/src/config/plugin/shell.ts index bb2f60c8bc3..0b90bb1b881 100644 --- a/packages/core/src/config/plugin/shell.ts +++ b/packages/core/src/config/plugin/shell.ts @@ -1,6 +1,6 @@ export * as ConfigShellPlugin from "./shell.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { Config } from "../../config.js" import { ShellSelect } from "../../shell/select.js" diff --git a/packages/core/src/config/plugin/skill.ts b/packages/core/src/config/plugin/skill.ts index 88004d5b80e..79cba9c4abf 100644 --- a/packages/core/src/config/plugin/skill.ts +++ b/packages/core/src/config/plugin/skill.ts @@ -1,9 +1,9 @@ export * as ConfigSkillPlugin from "./skill.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import type { Entry } from "@opencode-ai/schema/config" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { define } from "@opencode/plugin/effect/plugin" +import type { Entry } from "@opencode/schema/config" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import path from "path" import { Effect, FiberMap, PubSub, Semaphore, Stream } from "effect" import { Config } from "../../config.js" diff --git a/packages/core/src/config/plugin/snapshot.ts b/packages/core/src/config/plugin/snapshot.ts index 3ee0b24d769..c40fb300afc 100644 --- a/packages/core/src/config/plugin/snapshot.ts +++ b/packages/core/src/config/plugin/snapshot.ts @@ -1,6 +1,6 @@ export * as ConfigSnapshotPlugin from "./snapshot.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { Config } from "../../config.js" import { Snapshot } from "../../snapshot.js" diff --git a/packages/core/src/config/plugin/source.ts b/packages/core/src/config/plugin/source.ts index 97df76141f1..ef1057abe82 100644 --- a/packages/core/src/config/plugin/source.ts +++ b/packages/core/src/config/plugin/source.ts @@ -1,10 +1,10 @@ export * as ConfigPluginSource from "./source.js" -import { Directory, Document, type Entry } from "@opencode-ai/schema/config" -import { ConfigPlugin } from "@opencode-ai/schema/config/plugin" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Host } from "@opencode-ai/plugin/host" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { Directory, Document, type Entry } from "@opencode/schema/config" +import { ConfigPlugin } from "@opencode/schema/config/plugin" +import { FSUtil } from "@opencode/util/fs-util" +import { Host } from "@opencode/plugin/host" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Option, PubSub, Scope, Stream } from "effect" import path from "path" import { fileURLToPath, pathToFileURL } from "url" diff --git a/packages/core/src/config/plugin/tool-output.ts b/packages/core/src/config/plugin/tool-output.ts index c565191d1b6..51bec57cc7a 100644 --- a/packages/core/src/config/plugin/tool-output.ts +++ b/packages/core/src/config/plugin/tool-output.ts @@ -1,6 +1,6 @@ export * as ConfigToolOutputPlugin from "./tool-output.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { Config } from "../../config.js" import { ToolOutput } from "../../tool-output.js" diff --git a/packages/core/src/config/plugin/websearch.ts b/packages/core/src/config/plugin/websearch.ts index 502dd234eb0..a620916ce76 100644 --- a/packages/core/src/config/plugin/websearch.ts +++ b/packages/core/src/config/plugin/websearch.ts @@ -1,6 +1,6 @@ export * as ConfigWebSearchPlugin from "./websearch.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { Config } from "../../config.js" import { ConfigEntryObserver } from "./entry-observer.js" diff --git a/packages/core/src/config/plugin/worktree.ts b/packages/core/src/config/plugin/worktree.ts index 106188422fe..56af489d77c 100644 --- a/packages/core/src/config/plugin/worktree.ts +++ b/packages/core/src/config/plugin/worktree.ts @@ -1,10 +1,10 @@ export * as ConfigWorktreePlugin from "./worktree.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import path from "path" import { Config } from "../../config.js" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Location } from "../../location.js" import { AbsolutePath } from "../../schema.js" import { Worktree } from "../../worktree.js" diff --git a/packages/core/src/config/variable.ts b/packages/core/src/config/variable.ts index 15128128d11..e6d7ad4d266 100644 --- a/packages/core/src/config/variable.ts +++ b/packages/core/src/config/variable.ts @@ -3,7 +3,7 @@ export * as ConfigVariable from "./variable.js" import os from "os" import path from "path" import { Effect } from "effect" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { InvalidError } from "../v1/config/error.js" type ParseSource = diff --git a/packages/core/src/config/watch.ts b/packages/core/src/config/watch.ts index e511fbec1cc..c4a8859f461 100644 --- a/packages/core/src/config/watch.ts +++ b/packages/core/src/config/watch.ts @@ -1,7 +1,7 @@ export * as ConfigWatch from "./watch.js" import path from "path" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import type { Watcher } from "../filesystem/watcher.js" import type { ConfigDiscovery } from "./discovery.js" diff --git a/packages/core/src/credential.ts b/packages/core/src/credential.ts index d8560f14819..4ea4e985abb 100644 --- a/packages/core/src/credential.ts +++ b/packages/core/src/credential.ts @@ -2,11 +2,11 @@ export * as Credential from "./credential.js" import { asc, desc, eq } from "drizzle-orm" import { Cause, Context, Effect, Layer, Schema } from "effect" -import { Credential } from "@opencode-ai/schema/credential" -import { Integration } from "@opencode-ai/schema/integration" +import { Credential } from "@opencode/schema/credential" +import { Integration } from "@opencode/schema/integration" import { Database } from "./database/database.js" import { Bus } from "./bus.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { CredentialTable } from "./credential/sql.js" import { ErrorSummary } from "./util/error-summary.js" diff --git a/packages/core/src/database/database.ts b/packages/core/src/database/database.ts index 2581bd5ec59..1f02ae29dc5 100644 --- a/packages/core/src/database/database.ts +++ b/packages/core/src/database/database.ts @@ -4,10 +4,10 @@ import { EffectDrizzleSqlite } from "./drizzle.js" import { sqliteLayer, supportsForeignKeyToggle, supportsTuningPragmas } from "#sqlite" import { Context, Effect, Layer, Schema, Semaphore } from "effect" import type { SqlClient } from "effect/unstable/sql" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { isAbsolute, join } from "path" import { DatabaseMigration } from "./migration.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" const makeDatabase = EffectDrizzleSqlite.makeWithDefaults() type DatabaseShape = Effect.Success diff --git a/packages/core/src/database/drizzle/README.md b/packages/core/src/database/drizzle/README.md index b4910b23787..4c00befb09c 100644 --- a/packages/core/src/database/drizzle/README.md +++ b/packages/core/src/database/drizzle/README.md @@ -17,7 +17,7 @@ copy provenance. ## Local Boundary -The supported local entrypoint is `@opencode-ai/core/database/drizzle`, exposed +The supported local entrypoint is `@opencode/core/database/drizzle`, exposed as the `EffectDrizzleSqlite` namespace. OpenCode's database service consumes that facade from `database/database.ts`. diff --git a/packages/core/src/database/drizzle/effect-sqlite/driver.ts b/packages/core/src/database/drizzle/effect-sqlite/driver.ts index 33aa7302946..669aa0d211f 100644 --- a/packages/core/src/database/drizzle/effect-sqlite/driver.ts +++ b/packages/core/src/database/drizzle/effect-sqlite/driver.ts @@ -37,7 +37,7 @@ export const DefaultServices = Layer.merge(EffectCache.Default, EffectLogger.Def * @example * ```ts * import { SqliteClient } from "@effect/sql-sqlite-node" - * import { EffectDrizzleSqlite } from "@opencode-ai/core/database/drizzle" + * import { EffectDrizzleSqlite } from "@opencode/core/database/drizzle" * import { Effect } from "effect" * * const db = yield* EffectDrizzleSqlite.make({ relations }).pipe( diff --git a/packages/core/src/database/migration.ts b/packages/core/src/database/migration.ts index 2d0c05a2a89..c7925b61ed1 100644 --- a/packages/core/src/database/migration.ts +++ b/packages/core/src/database/migration.ts @@ -6,7 +6,7 @@ import { supportsForeignKeyToggle } from "#sqlite" import type { EffectDrizzleSqlite } from "./drizzle.js" import { migrations } from "./migration.gen.js" import schema from "./schema.gen.js" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" type Database = EffectDrizzleSqlite.EffectSQLiteDatabase type Transaction = Parameters[0]>[0] diff --git a/packages/core/src/database/migration/20260805200742_import_legacy_credentials.ts b/packages/core/src/database/migration/20260805200742_import_legacy_credentials.ts index 3a6507540f7..0da25f13041 100644 --- a/packages/core/src/database/migration/20260805200742_import_legacy_credentials.ts +++ b/packages/core/src/database/migration/20260805200742_import_legacy_credentials.ts @@ -2,10 +2,10 @@ import { readFile } from "node:fs/promises" import path from "node:path" import { sql } from "drizzle-orm" import { Effect, Option, Schema } from "effect" -import { Credential } from "@opencode-ai/schema/credential" -import { Integration } from "@opencode-ai/schema/integration" -import { NonNegativeInt } from "@opencode-ai/schema/schema" -import { Global } from "@opencode-ai/util/global" +import { Credential } from "@opencode/schema/credential" +import { Integration } from "@opencode/schema/integration" +import { NonNegativeInt } from "@opencode/schema/schema" +import { Global } from "@opencode/util/global" import type { DatabaseMigration } from "../migration.js" const LegacyOAuth = Schema.Struct({ diff --git a/packages/core/src/database/sqlite.bun.ts b/packages/core/src/database/sqlite.bun.ts index f44e9783d24..ddf586d945d 100644 --- a/packages/core/src/database/sqlite.bun.ts +++ b/packages/core/src/database/sqlite.bun.ts @@ -5,7 +5,7 @@ import { SqlClient } from "effect/unstable/sql" import { classifySqliteError, SqlError } from "effect/unstable/sql/SqlError" import { Sqlite } from "./sqlite.js" -const TypeId = "~@opencode-ai/core/database/SqliteBun" as const +const TypeId = "~@opencode/core/database/SqliteBun" as const export const supportsTuningPragmas = true diff --git a/packages/core/src/database/sqlite.node.ts b/packages/core/src/database/sqlite.node.ts index 837beaa1f88..354e1407655 100644 --- a/packages/core/src/database/sqlite.node.ts +++ b/packages/core/src/database/sqlite.node.ts @@ -5,7 +5,7 @@ import { SqlClient } from "effect/unstable/sql" import { classifySqliteError, SqlError } from "effect/unstable/sql/SqlError" import { Sqlite } from "./sqlite.js" -const TypeId = "~@opencode-ai/core/database/SqliteNode" as const +const TypeId = "~@opencode/core/database/SqliteNode" as const export const supportsTuningPragmas = true diff --git a/packages/core/src/database/sqlite.ts b/packages/core/src/database/sqlite.ts index 6ab22de8caf..884626d6ad2 100644 --- a/packages/core/src/database/sqlite.ts +++ b/packages/core/src/database/sqlite.ts @@ -6,7 +6,7 @@ import { SqlClient, Statement } from "effect/unstable/sql" import type { Connection } from "effect/unstable/sql/SqlConnection" import type { SqlError } from "effect/unstable/sql/SqlError" -export class Native extends Context.Service()("@opencode-ai/core/database/SqliteNative") {} +export class Native extends Context.Service()("@opencode/core/database/SqliteNative") {} export interface ClientConfig { readonly spanAttributes?: Record diff --git a/packages/core/src/database/sqlite.workerd.ts b/packages/core/src/database/sqlite.workerd.ts index 651460893d2..86e38e3163c 100644 --- a/packages/core/src/database/sqlite.workerd.ts +++ b/packages/core/src/database/sqlite.workerd.ts @@ -8,7 +8,7 @@ import { Sqlite } from "./sqlite.js" const ATTR_DB_SYSTEM_NAME = "db.system.name" -const TypeId = "~@opencode-ai/core/database/SqliteWorkerd" as const +const TypeId = "~@opencode/core/database/SqliteWorkerd" as const type TypeId = typeof TypeId // Durable Object SQLite only allowlists introspection pragmas; journal_mode, @@ -60,7 +60,7 @@ interface Config { // DurableObjectStorage.transaction-backed implementation; this service only // tracks the active transaction connection for statements and nesting checks. const WorkerdTransaction = Context.Service( - "@opencode-ai/core/database/SqliteWorkerdTransaction", + "@opencode/core/database/SqliteWorkerdTransaction", ) const transactionError = (message: string) => diff --git a/packages/core/src/database/v1-migration.bun.ts b/packages/core/src/database/v1-migration.bun.ts index 193d454831d..4609b03af99 100644 --- a/packages/core/src/database/v1-migration.bun.ts +++ b/packages/core/src/database/v1-migration.bun.ts @@ -3,17 +3,17 @@ export * as V1Migration from "./v1-migration.js" import { Cause, Effect, Layer, Option, Schema, Semaphore } from "effect" import { Database } from "./database.js" import { SessionMessageTable, SessionTable } from "../session/sql.js" -import { SessionV1 } from "@opencode-ai/schema/session-v1" +import { SessionV1 } from "@opencode/schema/session-v1" import { SessionMessage } from "../session/message.js" import { SessionSchema } from "../session/schema.js" import { KVTable } from "../kv/sql.js" import { EventSequenceTable } from "../event/sql.js" import { eq, sql } from "drizzle-orm" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { existsSync } from "node:fs" import path from "node:path" import type { Database as SQLiteDatabase } from "bun:sqlite" -import { Project } from "@opencode-ai/schema/project" +import { Project } from "@opencode/schema/project" export type SourceMessage = { readonly id: string diff --git a/packages/core/src/effect/app-node-builder.ts b/packages/core/src/effect/app-node-builder.ts index 0a62edbbe41..dfefbf8d662 100644 --- a/packages/core/src/effect/app-node-builder.ts +++ b/packages/core/src/effect/app-node-builder.ts @@ -1,7 +1,7 @@ import { buildLocationServiceMap } from "../location-services.js" import { LocationServiceMap } from "../location-service-map.js" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Effect, Layer } from "effect" import { Instance } from "../instance/service.js" diff --git a/packages/core/src/effect/app-node-platform.ts b/packages/core/src/effect/app-node-platform.ts index dcf00887b3a..718c6456c7b 100644 --- a/packages/core/src/effect/app-node-platform.ts +++ b/packages/core/src/effect/app-node-platform.ts @@ -1,7 +1,7 @@ -import { LLMClient, RequestExecutor } from "@opencode-ai/ai/route" +import { LLMClient, RequestExecutor } from "@opencode/ai/route" import { Socket } from "effect/unstable/socket" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { httpClient } from "@opencode-ai/util/effect/app-node-platform" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { httpClient } from "@opencode/util/effect/app-node-platform" import { WebSocketConstructor } from "./websocket-constructor.js" export const requestExecutor = makeGlobalNode({ diff --git a/packages/core/src/environment/environment.ts b/packages/core/src/environment/environment.ts index dc242e08eaf..0dc997fda93 100644 --- a/packages/core/src/environment/environment.ts +++ b/packages/core/src/environment/environment.ts @@ -1,5 +1,5 @@ -import { CrossSpawnSpawner } from "@opencode-ai/util/cross-spawn-spawner" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { CrossSpawnSpawner } from "@opencode/util/cross-spawn-spawner" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer } from "effect" import { ChildProcessSpawner } from "effect/unstable/process/ChildProcessSpawner" import type { Files } from "./files.js" diff --git a/packages/core/src/environment/exec-defaults.ts b/packages/core/src/environment/exec-defaults.ts index 2c5d2415019..d2350fb7588 100644 --- a/packages/core/src/environment/exec-defaults.ts +++ b/packages/core/src/environment/exec-defaults.ts @@ -1,7 +1,7 @@ import { Effect, Stream } from "effect" import { ChildProcess } from "effect/unstable/process" import type { ChildProcessSpawner } from "effect/unstable/process/ChildProcessSpawner" -import { collectStream } from "@opencode-ai/util/process" +import { collectStream } from "@opencode/util/process" import { Failed, NotFound, WrongKind, type FileInfo, type FileType, type FilesImpl } from "./files.js" /** diff --git a/packages/core/src/event-logger.ts b/packages/core/src/event-logger.ts index 50cd97d6d80..e8b047a0076 100644 --- a/packages/core/src/event-logger.ts +++ b/packages/core/src/event-logger.ts @@ -1,7 +1,7 @@ export * as EventLogger from "./event-logger.js" import { Effect, Layer } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Bus } from "./bus.js" const EVENT_TYPES = new Set(["agent.updated", "catalog.updated", "command.updated", "config.updated"]) diff --git a/packages/core/src/event/sql.ts b/packages/core/src/event/sql.ts index 13e1d9f6857..cb4c98ec738 100644 --- a/packages/core/src/event/sql.ts +++ b/packages/core/src/event/sql.ts @@ -1,5 +1,5 @@ import { sqliteTable, text, integer, index, uniqueIndex } from "drizzle-orm/sqlite-core" -import { Event } from "@opencode-ai/schema/event" +import { Event } from "@opencode/schema/event" export const EventSequenceTable = sqliteTable("event_sequence", { aggregate_id: text().notNull().primaryKey(), diff --git a/packages/core/src/file-access.ts b/packages/core/src/file-access.ts index e30139c3932..880bb3b60b7 100644 --- a/packages/core/src/file-access.ts +++ b/packages/core/src/file-access.ts @@ -1,8 +1,8 @@ export * as FileAccess from "./file-access.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { Array, Context, Effect, Layer, Schema } from "effect" import path from "path" import { Location } from "./location.js" diff --git a/packages/core/src/file-mutation.ts b/packages/core/src/file-mutation.ts index 2914868273a..53d53e42fde 100644 --- a/packages/core/src/file-mutation.ts +++ b/packages/core/src/file-mutation.ts @@ -1,10 +1,10 @@ export * as FileMutation from "./file-mutation.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer } from "effect" import { KeyedMutex } from "./effect/keyed-mutex.js" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Bom } from "@opencode-ai/util/bom" +import { FSUtil } from "@opencode/util/fs-util" +import { Bom } from "@opencode/util/bom" import { Environment } from "./environment/index.js" import type { Files } from "./environment/index.js" import type { FileAccess } from "./file-access.js" diff --git a/packages/core/src/file-retention.ts b/packages/core/src/file-retention.ts index 864d2009e63..a325f2165fc 100644 --- a/packages/core/src/file-retention.ts +++ b/packages/core/src/file-retention.ts @@ -1,7 +1,7 @@ export * as FileRetention from "./file-retention.js" import { Duration, Effect, Option } from "effect" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" export const cleanup = Effect.fn("FileRetention.cleanup")(function* ( fs: FSUtil.Interface, diff --git a/packages/core/src/file.ts b/packages/core/src/file.ts index 72717ad9ce2..5175e5b3410 100644 --- a/packages/core/src/file.ts +++ b/packages/core/src/file.ts @@ -1,6 +1,6 @@ export * as File from "./file.js" -import { FileDiff } from "@opencode-ai/schema/file-diff" +import { FileDiff } from "@opencode/schema/file-diff" export const Diff = FileDiff.Info export type Diff = typeof Diff.Type diff --git a/packages/core/src/filesystem.ts b/packages/core/src/filesystem.ts index b1464b1fed4..47372c45ea9 100644 --- a/packages/core/src/filesystem.ts +++ b/packages/core/src/filesystem.ts @@ -1,14 +1,14 @@ export * as FileSystem from "./filesystem.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import path from "path" import { Context, Effect, Layer, Schema } from "effect" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Location } from "./location.js" import { PositiveInt, RelativePath } from "./schema.js" import { FileSystemSearch } from "./filesystem/search.js" -import { Entry, FileSystem, FindInput } from "@opencode-ai/schema/filesystem" -export { Entry, Match, Submatch } from "@opencode-ai/schema/filesystem" +import { Entry, FileSystem, FindInput } from "@opencode/schema/filesystem" +export { Entry, Match, Submatch } from "@opencode/schema/filesystem" export const ReadInput = Schema.Struct({ path: RelativePath, diff --git a/packages/core/src/filesystem/location-watcher-policy.ts b/packages/core/src/filesystem/location-watcher-policy.ts index c700b27a5b4..8bc51aab46a 100644 --- a/packages/core/src/filesystem/location-watcher-policy.ts +++ b/packages/core/src/filesystem/location-watcher-policy.ts @@ -1,6 +1,6 @@ export * as LocationWatcherPolicy from "./location-watcher-policy.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Scope } from "effect" import { State } from "../state.js" diff --git a/packages/core/src/filesystem/location-watcher.ts b/packages/core/src/filesystem/location-watcher.ts index 100ee9dbfcd..a8d9b339ff5 100644 --- a/packages/core/src/filesystem/location-watcher.ts +++ b/packages/core/src/filesystem/location-watcher.ts @@ -1,11 +1,11 @@ export * as LocationWatcher from "./location-watcher.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Cause, Context, Effect, Exit, Layer, Scope, Semaphore, Stream } from "effect" -import { FileSystem } from "@opencode-ai/schema/filesystem" +import { FileSystem } from "@opencode/schema/filesystem" import path from "path" import { Bus } from "../bus.js" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Git } from "../git.js" import { Location } from "../location.js" import { Plugin } from "../plugin.js" diff --git a/packages/core/src/filesystem/search.ts b/packages/core/src/filesystem/search.ts index faa6da14a91..7b32acee3db 100644 --- a/packages/core/src/filesystem/search.ts +++ b/packages/core/src/filesystem/search.ts @@ -1,11 +1,11 @@ export * as FileSystemSearch from "./search.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import path from "path" import { Clock, Context, Deferred, Duration, Effect, Layer, Schema, Scope } from "effect" import { Fff } from "#fff" import fuzzysort from "fuzzysort" -import { FileSystem } from "@opencode-ai/schema/filesystem" +import { FileSystem } from "@opencode/schema/filesystem" import { Location } from "../location.js" import { Ripgrep } from "../ripgrep.js" import { RelativePath } from "../schema.js" diff --git a/packages/core/src/filesystem/watcher.ts b/packages/core/src/filesystem/watcher.ts index b1ef3fefaae..9b653308878 100644 --- a/packages/core/src/filesystem/watcher.ts +++ b/packages/core/src/filesystem/watcher.ts @@ -3,9 +3,9 @@ export * as Watcher from "./watcher.js" // @ts-ignore import { createWrapper } from "@parcel/watcher/wrapper" import type ParcelWatcher from "@parcel/watcher" -import { FileSystem } from "@opencode-ai/schema/filesystem" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FileSystem } from "@opencode/schema/filesystem" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" import { Cause, Context, Effect, Layer, PubSub, RcMap, Schema, Stream } from "effect" import { lazy } from "../util/lazy.js" import { watch } from "node:fs" diff --git a/packages/core/src/form.ts b/packages/core/src/form.ts index a3ef68994c8..0d1cfa594ea 100644 --- a/packages/core/src/form.ts +++ b/packages/core/src/form.ts @@ -1,8 +1,8 @@ export * as Form from "./form.js" -import { Form } from "@opencode-ai/schema/form" +import { Form } from "@opencode/schema/form" import { Cache, Context, Deferred, Duration, Effect, Exit, Layer, Option, Schema } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Bus } from "./bus.js" const RETENTION = Duration.minutes(10) @@ -32,7 +32,7 @@ export type Answer = typeof Answer.Type export const Reply = Form.Reply export type Reply = typeof Reply.Type -export { Event } from "@opencode-ai/schema/form" +export { Event } from "@opencode/schema/form" export class NotFoundError extends Schema.TaggedError()("Form.NotFoundError", { id: ID, diff --git a/packages/core/src/formatter.ts b/packages/core/src/formatter.ts index f487f696892..eb85babf56e 100644 --- a/packages/core/src/formatter.ts +++ b/packages/core/src/formatter.ts @@ -3,8 +3,8 @@ export * as Formatter from "./formatter.js" import { Context, Effect, Layer } from "effect" import { ChildProcess } from "effect/unstable/process" import path from "path" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { AppProcess } from "@opencode-ai/util/process" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { AppProcess } from "@opencode/util/process" import { Location } from "./location.js" import type { Info } from "./formatter/builtins.js" import { State } from "./state.js" diff --git a/packages/core/src/formatter/builtins.ts b/packages/core/src/formatter/builtins.ts index 0b53b096394..ba8354f807b 100644 --- a/packages/core/src/formatter/builtins.ts +++ b/packages/core/src/formatter/builtins.ts @@ -1,8 +1,8 @@ import { Effect } from "effect" import { ChildProcess } from "effect/unstable/process" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Npm } from "@opencode-ai/util/npm" -import { AppProcess } from "@opencode-ai/util/process" +import { FSUtil } from "@opencode/util/fs-util" +import { Npm } from "@opencode/util/npm" +import { AppProcess } from "@opencode/util/process" import { which } from "../util/which.js" export interface Info { diff --git a/packages/core/src/generate.ts b/packages/core/src/generate.ts index d58023755d7..e3f558fd790 100644 --- a/packages/core/src/generate.ts +++ b/packages/core/src/generate.ts @@ -1,8 +1,8 @@ export * as Generate from "./generate.js" -import { LLM, LLMClient, AIError } from "@opencode-ai/ai" +import { LLM, LLMClient, AIError } from "@opencode/ai" import { Context, Effect, Layer, Schema } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { llmClient } from "./effect/app-node-platform.js" import { ModelResolver } from "./model-resolver.js" import { Model } from "./model.js" diff --git a/packages/core/src/git.ts b/packages/core/src/git.ts index da745e5f369..6e2e155323c 100644 --- a/packages/core/src/git.ts +++ b/packages/core/src/git.ts @@ -4,9 +4,9 @@ import path from "path" import { Context, Effect, Layer, Schema } from "effect" import { ChildProcess } from "effect/unstable/process" import { AbsolutePath, RelativePath } from "./schema.js" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { AppProcess } from "@opencode-ai/util/process" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" +import { AppProcess } from "@opencode/util/process" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { File } from "./file.js" import { KeyedMutex } from "./effect/keyed-mutex.js" diff --git a/packages/core/src/github-copilot/models.ts b/packages/core/src/github-copilot/models.ts index 89aa53b3f6d..936d1a65854 100644 --- a/packages/core/src/github-copilot/models.ts +++ b/packages/core/src/github-copilot/models.ts @@ -1,6 +1,6 @@ export * as CopilotModels from "./models.js" -import { Money } from "@opencode-ai/schema/money" +import { Money } from "@opencode/schema/money" import { Option, Schema } from "effect" import { Model } from "../model.js" import { Provider } from "../provider.js" diff --git a/packages/core/src/id/id.ts b/packages/core/src/id/id.ts index 269f4e89a9c..f849c0558b0 100644 --- a/packages/core/src/id/id.ts +++ b/packages/core/src/id/id.ts @@ -1,4 +1,4 @@ -import { create } from "@opencode-ai/schema/identifier" +import { create } from "@opencode/schema/identifier" const prefixes = { job: "job", diff --git a/packages/core/src/image.ts b/packages/core/src/image.ts index 2547b43a048..a19d3fa884c 100644 --- a/packages/core/src/image.ts +++ b/packages/core/src/image.ts @@ -1,6 +1,6 @@ export * as Image from "./image.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Schema } from "effect" import { FileSystem } from "./filesystem.js" import { State } from "./state.js" diff --git a/packages/core/src/instance.ts b/packages/core/src/instance.ts index cf600c54111..e6ca45992d0 100644 --- a/packages/core/src/instance.ts +++ b/packages/core/src/instance.ts @@ -4,8 +4,8 @@ import { AISDK } from "./aisdk.js" import { Catalog } from "./catalog.js" import { Command } from "./command.js" import { Config } from "./config.js" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Node } from "@opencode-ai/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Node } from "@opencode/util/effect/app-node" import { FileMutation } from "./file-mutation.js" import { Environment } from "./environment/index.js" import { Formatter } from "./formatter.js" diff --git a/packages/core/src/instance/service.ts b/packages/core/src/instance/service.ts index 3a003765c25..dd6ef5892e4 100644 --- a/packages/core/src/instance/service.ts +++ b/packages/core/src/instance/service.ts @@ -2,9 +2,9 @@ export * as Instance from "./service.js" export type { Services } from "../instance.js" import { Context, type Effect } from "effect" -import type { Session } from "@opencode-ai/schema/session" -import { Node } from "@opencode-ai/util/effect/app-node" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import type { Session } from "@opencode/schema/session" +import { Node } from "@opencode/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" import type { Services } from "../instance.js" /** Selects Session capabilities; implementations own caching and lifetime. */ diff --git a/packages/core/src/instruction-discovery.ts b/packages/core/src/instruction-discovery.ts index abab217f11c..ec1821f1b87 100644 --- a/packages/core/src/instruction-discovery.ts +++ b/packages/core/src/instruction-discovery.ts @@ -1,7 +1,7 @@ export * as InstructionDiscovery from "./instruction-discovery.js" import { Context, Effect, Layer, Schema, Types } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { createPatch } from "diff" import { Bus } from "./bus.js" import { Instructions } from "./instructions/index.js" diff --git a/packages/core/src/instructions/builtins.ts b/packages/core/src/instructions/builtins.ts index 5b27bb4b196..47c8e5c7515 100644 --- a/packages/core/src/instructions/builtins.ts +++ b/packages/core/src/instructions/builtins.ts @@ -1,9 +1,9 @@ export * as InstructionBuiltIns from "./builtins.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, DateTime, Effect, Layer, Schema } from "effect" -import type { Session } from "@opencode-ai/schema/session" -import { Global } from "@opencode-ai/util/global" +import type { Session } from "@opencode/schema/session" +import { Global } from "@opencode/util/global" import { Location } from "../location.js" import { Instructions } from "./index.js" diff --git a/packages/core/src/instructions/index.ts b/packages/core/src/instructions/index.ts index 27e1d2a650d..315f8b78506 100644 --- a/packages/core/src/instructions/index.ts +++ b/packages/core/src/instructions/index.ts @@ -1,7 +1,7 @@ export * as Instructions from "./index.js" import { createHash } from "crypto" -import { Instruction } from "@opencode-ai/schema/instruction" +import { Instruction } from "@opencode/schema/instruction" import { Data, Effect, Option, Schema } from "effect" export const Key = Instruction.Key diff --git a/packages/core/src/integration.ts b/packages/core/src/integration.ts index d73f85ac518..d1c235805c4 100644 --- a/packages/core/src/integration.ts +++ b/packages/core/src/integration.ts @@ -1,6 +1,6 @@ export * as Integration from "./integration.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Cause, Clock, @@ -17,12 +17,12 @@ import { SynchronizedRef, Types, } from "effect" -import { Integration } from "@opencode-ai/schema/integration" +import { Integration } from "@opencode/schema/integration" import { Credential } from "./credential.js" import { State } from "./state.js" import { Bus } from "./bus.js" import { IntegrationConnection } from "./integration/connection.js" -import { AppProcess } from "@opencode-ai/util/process" +import { AppProcess } from "@opencode/util/process" import { ChildProcess } from "effect/unstable/process" import { Form } from "./form.js" @@ -115,7 +115,7 @@ export class AuthorizationError extends Schema.TaggedError() export type Error = CodeRequiredError | AuthorizationError -export { Event } from "@opencode-ai/schema/integration" +export { Event } from "@opencode/schema/integration" export const Ref = Integration.Ref export type Ref = Integration.Ref diff --git a/packages/core/src/integration/connection.ts b/packages/core/src/integration/connection.ts index cb7693a5492..cefa7d54c2e 100644 --- a/packages/core/src/integration/connection.ts +++ b/packages/core/src/integration/connection.ts @@ -1,6 +1,6 @@ export * as IntegrationConnection from "./connection.js" -import { Connection } from "@opencode-ai/schema/connection" +import { Connection } from "@opencode/schema/connection" export const CredentialInfo = Connection.CredentialInfo export type CredentialInfo = Connection.CredentialInfo diff --git a/packages/core/src/job.ts b/packages/core/src/job.ts index 08faea74e1e..8a1ee000ad6 100644 --- a/packages/core/src/job.ts +++ b/packages/core/src/job.ts @@ -1,7 +1,7 @@ export * as Job from "./job.js" import { Array, Cause, Clock, Context, Deferred, Effect, Exit, Layer, Schema, Scope, SynchronizedRef } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Identifier } from "./id/id.js" import { KV } from "./kv.js" import { SessionMessage } from "./session/message.js" diff --git a/packages/core/src/kv.ts b/packages/core/src/kv.ts index d4cf15896af..a8bc5ae62c1 100644 --- a/packages/core/src/kv.ts +++ b/packages/core/src/kv.ts @@ -3,7 +3,7 @@ export * as KV from "./kv.js" import { and, asc, eq, gt, gte, lt } from "drizzle-orm" import { Context, Effect, Layer, Schema } from "effect" import { Database } from "./database/database.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { KVTable } from "./kv/sql.js" export type Value = Schema.Json diff --git a/packages/core/src/location-activity.ts b/packages/core/src/location-activity.ts index 81e9bddea9f..0425e9acab0 100644 --- a/packages/core/src/location-activity.ts +++ b/packages/core/src/location-activity.ts @@ -7,7 +7,7 @@ import { LocationServiceMap } from "./location-service-map.js" import { SessionEvent } from "./session/event.js" import { SessionExecution } from "./session/execution.js" import { SessionStore } from "./session/store.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" const isSessionEvent = Schema.is(SessionEvent.Durable) diff --git a/packages/core/src/location-service-map.ts b/packages/core/src/location-service-map.ts index 297baf8c3de..37a44d14754 100644 --- a/packages/core/src/location-service-map.ts +++ b/packages/core/src/location-service-map.ts @@ -1,7 +1,7 @@ import { Context, Effect, Layer, LayerMap } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Node } from "@opencode-ai/util/effect/app-node" -import { AbsolutePath } from "@opencode-ai/schema/schema" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Node } from "@opencode/util/effect/app-node" +import { AbsolutePath } from "@opencode/schema/schema" import path from "path" import { Location } from "./location.js" import type { Instance } from "./instance.js" diff --git a/packages/core/src/location-services.ts b/packages/core/src/location-services.ts index f44685cc7a6..5b4f3a28901 100644 --- a/packages/core/src/location-services.ts +++ b/packages/core/src/location-services.ts @@ -1,5 +1,5 @@ import { Duration, Effect, Exit, Layer, LayerMap, MutableHashMap, Option } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LayerNode } from "@opencode/util/effect/layer-node" import { Instance } from "./instance.js" import { Location } from "./location.js" import { LocationServiceMap } from "./location-service-map.js" diff --git a/packages/core/src/location.ts b/packages/core/src/location.ts index d3bfa4d5e81..79192c7ce8a 100644 --- a/packages/core/src/location.ts +++ b/packages/core/src/location.ts @@ -1,8 +1,8 @@ import { Context, Effect, Layer } from "effect" -import { Info, Ref, response } from "@opencode-ai/schema/location" +import { Info, Ref, response } from "@opencode/schema/location" import { Project } from "./project.js" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeLocationNode, tags } from "@opencode-ai/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeLocationNode, tags } from "@opencode/util/effect/app-node" export * as Location from "./location.js" diff --git a/packages/core/src/mcp/client.ts b/packages/core/src/mcp/client.ts index d82aa5c1b7e..027508c063e 100644 --- a/packages/core/src/mcp/client.ts +++ b/packages/core/src/mcp/client.ts @@ -25,8 +25,8 @@ import { ToolSchema, } from "@modelcontextprotocol/sdk/types.js" import { Cause, Effect, Exit, Schema } from "effect" -import { ConfigMCP } from "@opencode-ai/schema/config/mcp" -import type { Session } from "@opencode-ai/schema/session" +import { ConfigMCP } from "@opencode/schema/config/mcp" +import type { Session } from "@opencode/schema/session" import { McpStdio } from "./stdio.js" const DEFAULT_STARTUP_TIMEOUT = 30_000 diff --git a/packages/core/src/mcp/index.ts b/packages/core/src/mcp/index.ts index 88e351379d3..e32176e3d7c 100644 --- a/packages/core/src/mcp/index.ts +++ b/packages/core/src/mcp/index.ts @@ -1,13 +1,13 @@ export * as Mcp from "./index.js" -import { Mcp } from "@opencode-ai/schema/mcp" -import { McpEvent } from "@opencode-ai/schema/mcp-event" -import { ephemeral } from "@opencode-ai/schema/event" -import type { Session } from "@opencode-ai/schema/session" +import { Mcp } from "@opencode/schema/mcp" +import { McpEvent } from "@opencode/schema/mcp-event" +import { ephemeral } from "@opencode/schema/event" +import type { Session } from "@opencode/schema/session" import { createHash } from "node:crypto" import { isDeepStrictEqual } from "node:util" import { Cause, Context, Effect, Exit, FiberSet, Latch, Layer, Schema, Scope, Semaphore, Stream, Types } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Credential } from "../credential.js" import { Bus } from "../bus.js" import { Environment } from "../environment/index.js" @@ -15,7 +15,7 @@ import { Form } from "../form.js" import { Integration } from "../integration.js" import { KeyedMutex } from "../effect/keyed-mutex.js" import { Location } from "../location.js" -import { waitForAbort } from "@opencode-ai/util/process" +import { waitForAbort } from "@opencode/util/process" import { State } from "../state.js" import type { McpClient } from "./client.js" @@ -23,7 +23,7 @@ export const ServerName = Schema.String.pipe(Schema.brand("MCP.ServerName")) export const PromptsChanged = ephemeral({ type: "mcp.prompts.changed", schema: { server: Schema.String } }) export type ServerName = typeof ServerName.Type -// The status union is a public wire contract, so it lives in @opencode-ai/schema and is re-exported here. +// The status union is a public wire contract, so it lives in @opencode/schema and is re-exported here. export const Status = Mcp.Status export type Status = Mcp.Status diff --git a/packages/core/src/mcp/instructions.ts b/packages/core/src/mcp/instructions.ts index 592954dd880..b582bf65884 100644 --- a/packages/core/src/mcp/instructions.ts +++ b/packages/core/src/mcp/instructions.ts @@ -1,6 +1,6 @@ export * as McpInstructions from "./instructions.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Schema } from "effect" import { Agent } from "../agent.js" import { Permission } from "../permission.js" diff --git a/packages/core/src/mcp/oauth.ts b/packages/core/src/mcp/oauth.ts index be89bddbf43..3d0b32a228d 100644 --- a/packages/core/src/mcp/oauth.ts +++ b/packages/core/src/mcp/oauth.ts @@ -10,8 +10,8 @@ import { import type { OAuthClientInformationMixed, OAuthTokens } from "@modelcontextprotocol/sdk/shared/auth.js" import type { FetchLike } from "@modelcontextprotocol/sdk/shared/transport.js" import { Cause, Deferred, Effect } from "effect" -import { Credential } from "@opencode-ai/schema/credential" -import { ConfigMCP } from "@opencode-ai/schema/config/mcp" +import { Credential } from "@opencode/schema/credential" +import { ConfigMCP } from "@opencode/schema/config/mcp" import { OauthCallbackPage } from "../oauth/page.js" import type { Integration } from "../integration.js" import { ErrorSummary } from "../util/error-summary.js" diff --git a/packages/core/src/modal/models.ts b/packages/core/src/modal/models.ts index 16714968148..4ee089d71ad 100644 --- a/packages/core/src/modal/models.ts +++ b/packages/core/src/modal/models.ts @@ -1,6 +1,6 @@ export * as ModalModels from "./models.js" -import { Money } from "@opencode-ai/schema/money" +import { Money } from "@opencode/schema/money" import { Option, Schema } from "effect" import { Model } from "../model.js" import { Provider } from "../provider.js" diff --git a/packages/core/src/model-resolver.ts b/packages/core/src/model-resolver.ts index 2894c4f8cde..c8e9582c8b0 100644 --- a/packages/core/src/model-resolver.ts +++ b/packages/core/src/model-resolver.ts @@ -1,8 +1,8 @@ export * as ModelResolver from "./model-resolver.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { LanguageModel } from "@opencode-ai/ai" -import { Auth } from "@opencode-ai/ai/route" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { LanguageModel } from "@opencode/ai" +import { Auth } from "@opencode/ai/route" import { Context, Effect, Layer, Schema, Struct } from "effect" import { AISDK } from "./aisdk.js" import { AISDKNative } from "./aisdk-native.js" @@ -10,7 +10,7 @@ import { Catalog } from "./catalog.js" import { Credential } from "./credential.js" import { Integration } from "./integration.js" import { Capabilities, ID, Info, Ref, VariantID } from "./model.js" -import { Npm } from "@opencode-ai/util/npm" +import { Npm } from "@opencode/util/npm" import { Provider } from "./provider.js" export class VariantUnavailableError extends Schema.TaggedError()( @@ -164,7 +164,7 @@ const resolveCatalogModel = Effect.fn("ModelResolver.resolveCatalogModel")(funct providerID: resolved.canonical ?? resolved.providerID, }) : undefined - const native = mapping?.package ?? resolved.package + const native = mapping?.package ?? packageName if (Provider.isAISDK(resolved.package) && !mapping) { const loadAISDK = dependencies?.loadAISDK if (!loadAISDK) return yield* unsupported(resolved) @@ -258,14 +258,11 @@ function unresolvedProviderVariables(model: Info, baseURL: string) { const nativeCredentialSettings = (specifier: string, credential: Credential.Value | undefined) => { if (!credential) return {} if (credential.type === "key") return { apiKey: credential.key } - if ( - specifier === "@opencode-ai/ai/providers/anthropic" || - specifier === "@opencode-ai/ai/providers/anthropic-compatible" - ) + if (specifier === "@opencode/ai/providers/anthropic" || specifier === "@opencode/ai/providers/anthropic-compatible") return { authToken: credential.access } if ( - specifier === "@opencode-ai/ai/providers/google-vertex" || - specifier.startsWith("@opencode-ai/ai/providers/google-vertex/") + specifier === "@opencode/ai/providers/google-vertex" || + specifier.startsWith("@opencode/ai/providers/google-vertex/") ) return { accessToken: credential.access } return { apiKey: credential.access } @@ -368,26 +365,26 @@ function usesAPIKeyAuth(packageName: string | undefined) { name === "@ai-sdk/xai" || name === "@openrouter/ai-sdk-provider" || name === "@ai-sdk/azure" || - name === "@opencode-ai/ai/providers/openai" || - name?.startsWith("@opencode-ai/ai/providers/openai/") === true || - name === "@opencode-ai/ai/providers/anthropic" || - name === "@opencode-ai/ai/providers/anthropic-compatible" || - name === "@opencode-ai/ai/providers/baseten" || - name === "@opencode-ai/ai/providers/cerebras" || - name === "@opencode-ai/ai/providers/cloudflare-ai-gateway" || - name === "@opencode-ai/ai/providers/cloudflare-workers-ai" || - name === "@opencode-ai/ai/providers/deepinfra" || - name === "@opencode-ai/ai/providers/deepseek" || - name === "@opencode-ai/ai/providers/fireworks" || - name === "@opencode-ai/ai/providers/openai-compatible" || - name === "@opencode-ai/ai/providers/google" || - name === "@opencode-ai/ai/providers/groq" || - name === "@opencode-ai/ai/providers/mistral" || - name === "@opencode-ai/ai/providers/togetherai" || - name === "@opencode-ai/ai/providers/xai" || - name === "@opencode-ai/ai/providers/openrouter" || - name === "@opencode-ai/ai/providers/azure" || - name?.startsWith("@opencode-ai/ai/providers/azure/") === true + name === "@opencode/ai/providers/openai" || + name?.startsWith("@opencode/ai/providers/openai/") === true || + name === "@opencode/ai/providers/anthropic" || + name === "@opencode/ai/providers/anthropic-compatible" || + name === "@opencode/ai/providers/baseten" || + name === "@opencode/ai/providers/cerebras" || + name === "@opencode/ai/providers/cloudflare-ai-gateway" || + name === "@opencode/ai/providers/cloudflare-workers-ai" || + name === "@opencode/ai/providers/deepinfra" || + name === "@opencode/ai/providers/deepseek" || + name === "@opencode/ai/providers/fireworks" || + name === "@opencode/ai/providers/openai-compatible" || + name === "@opencode/ai/providers/google" || + name === "@opencode/ai/providers/groq" || + name === "@opencode/ai/providers/mistral" || + name === "@opencode/ai/providers/togetherai" || + name === "@opencode/ai/providers/xai" || + name === "@opencode/ai/providers/openrouter" || + name === "@opencode/ai/providers/azure" || + name?.startsWith("@opencode/ai/providers/azure/") === true ) } diff --git a/packages/core/src/model.ts b/packages/core/src/model.ts index dec621381ac..62189aeadc9 100644 --- a/packages/core/src/model.ts +++ b/packages/core/src/model.ts @@ -1,4 +1,4 @@ -import { Model } from "@opencode-ai/schema/model" +import { Model } from "@opencode/schema/model" import { Provider } from "./provider.js" import type { DeepMutable } from "./schema.js" diff --git a/packages/core/src/models-dev.ts b/packages/core/src/models-dev.ts index fe844ead9aa..a4526d87c5f 100644 --- a/packages/core/src/models-dev.ts +++ b/packages/core/src/models-dev.ts @@ -1,13 +1,13 @@ import { Cause, Context, Duration, Effect, Layer, Option, Schedule, Schema, Semaphore } from "effect" import { HttpClient, HttpClientRequest } from "effect/unstable/http" -import { ModelsDev } from "@opencode-ai/schema/models-dev" -import { Money } from "@opencode-ai/schema/money" +import { ModelsDev } from "@opencode/schema/models-dev" +import { Money } from "@opencode/schema/money" import { App } from "./app.js" -import { Hash } from "@opencode-ai/util/hash" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { Hash } from "@opencode/util/hash" +import { FSUtil } from "@opencode/util/fs-util" import { Bus } from "./bus.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { httpClient } from "@opencode-ai/util/effect/app-node-platform" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { httpClient } from "@opencode/util/effect/app-node-platform" import { Model } from "./model.js" import { Provider } from "./provider.js" import { KV } from "./kv.js" @@ -519,7 +519,7 @@ function modelInfo( } } -export { Event } from "@opencode-ai/schema/models-dev" +export { Event } from "@opencode/schema/models-dev" export interface Interface { readonly get: () => Effect.Effect diff --git a/packages/core/src/permission.ts b/packages/core/src/permission.ts index acc0705352c..b7109a96d54 100644 --- a/packages/core/src/permission.ts +++ b/packages/core/src/permission.ts @@ -1,8 +1,8 @@ export * as Permission from "./permission.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Deferred, Effect, Layer, Schema } from "effect" -import { Permission } from "@opencode-ai/schema/permission" +import { Permission } from "@opencode/schema/permission" import { Bus } from "./bus.js" import { Location } from "./location.js" import { Agent } from "./agent.js" @@ -15,7 +15,7 @@ import { PluginHooks } from "./plugin/hooks.js" const PermissionEffect = Permission.Effect export { PermissionEffect as Effect } -export { Rule, Ruleset } from "@opencode-ai/schema/permission" +export { Rule, Ruleset } from "@opencode/schema/permission" const missingAgentPermissions: Permission.Ruleset = [{ action: "*", resource: "*", effect: "deny" }] export const ID = Permission.ID @@ -59,7 +59,7 @@ export const AskResult = Schema.Struct({ }).annotate({ identifier: "Permission.AskResult" }) export type AskResult = typeof AskResult.Type -export { Event } from "@opencode-ai/schema/permission" +export { Event } from "@opencode/schema/permission" export class DeclinedError extends Schema.TaggedError()("Permission.DeclinedError", {}) {} diff --git a/packages/core/src/permission/saved.ts b/packages/core/src/permission/saved.ts index 184b0553a68..2d2b76206f8 100644 --- a/packages/core/src/permission/saved.ts +++ b/packages/core/src/permission/saved.ts @@ -2,11 +2,11 @@ export * as PermissionSaved from "./saved.js" import { eq } from "drizzle-orm" import { Context, Effect, Layer, Schema } from "effect" -import { Project } from "@opencode-ai/schema/project" +import { Project } from "@opencode/schema/project" import { Database } from "../database/database.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { PermissionTable } from "./sql.js" -import { PermissionSaved } from "@opencode-ai/schema/permission-saved" +import { PermissionSaved } from "@opencode/schema/permission-saved" export const ID = PermissionSaved.ID export type ID = typeof ID.Type diff --git a/packages/core/src/permission/sql.ts b/packages/core/src/permission/sql.ts index 0df5fdc692e..4283f13411a 100644 --- a/packages/core/src/permission/sql.ts +++ b/packages/core/src/permission/sql.ts @@ -1,5 +1,5 @@ import { sqliteTable, text, uniqueIndex } from "drizzle-orm/sqlite-core" -import type { Project } from "@opencode-ai/schema/project" +import type { Project } from "@opencode/schema/project" import { Timestamps } from "../database/schema.sql.js" import { ProjectTable } from "../project/sql.js" import type { PermissionSaved } from "./saved.js" diff --git a/packages/core/src/persistent-pty/daemon.ts b/packages/core/src/persistent-pty/daemon.ts index 4310c080de7..2b97889c3c5 100644 --- a/packages/core/src/persistent-pty/daemon.ts +++ b/packages/core/src/persistent-pty/daemon.ts @@ -3,7 +3,7 @@ import { readFile } from "node:fs/promises" import net from "node:net" import path from "node:path" import { Data, Duration, Effect, Schema, Semaphore } from "effect" -import type { Handoff } from "@opencode-ai/schema/persistent-pty" +import type { Handoff } from "@opencode/schema/persistent-pty" const ProtocolVersion = 7 const MaxFrameBytes = 8 * 1024 * 1024 diff --git a/packages/core/src/persistent-pty/index.ts b/packages/core/src/persistent-pty/index.ts index b898c66f76b..1b500f7e368 100644 --- a/packages/core/src/persistent-pty/index.ts +++ b/packages/core/src/persistent-pty/index.ts @@ -3,12 +3,12 @@ export * as PersistentPty from "./index.js" import os from "node:os" import path from "node:path" import { Context, Effect, Layer, Schema } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Added, Handoff, PersistentPty, ReadLines, Removed, type ReadResult } from "@opencode-ai/schema/persistent-pty" -import { Session } from "@opencode-ai/schema/session" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Added, Handoff, PersistentPty, ReadLines, Removed, type ReadResult } from "@opencode/schema/persistent-pty" +import { Session } from "@opencode/schema/session" import { Bus } from "../bus.js" -import { Pty } from "@opencode-ai/schema/pty" -import { Global } from "@opencode-ai/util/global" +import { Pty } from "@opencode/schema/pty" +import { Global } from "@opencode/util/global" import { ShellSelect } from "../shell/select.js" import { makeDaemonTransport, @@ -21,7 +21,7 @@ import { import { resolveBinary } from "#persistent-pty-binary" export type { Role, StreamEvent } from "./daemon.js" -export { Handoff } from "@opencode-ai/schema/persistent-pty" +export { Handoff } from "@opencode/schema/persistent-pty" export const Options = Schema.Struct({ handoff: Schema.optional(Handoff) }) export type Options = typeof Options.Type diff --git a/packages/core/src/persistent-pty/pty-binding.ts b/packages/core/src/persistent-pty/pty-binding.ts index d0fe7614408..9aae038c0e6 100644 --- a/packages/core/src/persistent-pty/pty-binding.ts +++ b/packages/core/src/persistent-pty/pty-binding.ts @@ -1,3 +1,4 @@ +// Published separately by anomalyco/opencode-pty; it has not migrated npm scopes. import { binaryPath } from "@opencode-ai/pty" const binding: string | { readonly path: string; readonly version: string; readonly sha256: string } | undefined = diff --git a/packages/core/src/plugin.ts b/packages/core/src/plugin.ts index 337e571168d..8ade6826585 100644 --- a/packages/core/src/plugin.ts +++ b/packages/core/src/plugin.ts @@ -1,9 +1,9 @@ export * as Plugin from "./plugin.js" -export { Event, ID, Info, Source, State } from "@opencode-ai/schema/plugin" +export { Event, ID, Info, Source, State } from "@opencode/schema/plugin" -import { Plugin } from "@opencode-ai/schema/plugin" -import { Node } from "@opencode-ai/util/effect/app-node" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Plugin } from "@opencode/schema/plugin" +import { Node } from "@opencode/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" import type { PersistentPty } from "./persistent-pty.js" import { Cause, Context, Effect, Exit, Latch, Layer, Logger, Queue, References, Scope, Semaphore } from "effect" import { Bus } from "./bus.js" diff --git a/packages/core/src/plugin/agent.ts b/packages/core/src/plugin/agent.ts index 8d16ae58a87..d0d12713ea4 100644 --- a/packages/core/src/plugin/agent.ts +++ b/packages/core/src/plugin/agent.ts @@ -1,6 +1,6 @@ export * as AgentPlugin from "./agent.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { Agent } from "../agent.js" import { Permission } from "../permission.js" diff --git a/packages/core/src/plugin/command.ts b/packages/core/src/plugin/command.ts index 3b5df7daa0c..1f7d590b3e5 100644 --- a/packages/core/src/plugin/command.ts +++ b/packages/core/src/plugin/command.ts @@ -1,6 +1,6 @@ export * as CommandPlugin from "./command.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect, Stream } from "effect" import { Bus } from "../bus.js" import { Location } from "../location.js" diff --git a/packages/core/src/plugin/hooks.ts b/packages/core/src/plugin/hooks.ts index a849efab368..1cfd2e63772 100644 --- a/packages/core/src/plugin/hooks.ts +++ b/packages/core/src/plugin/hooks.ts @@ -1,13 +1,13 @@ export * as PluginHooks from "./hooks.js" -import type { AISDKHooks } from "@opencode-ai/plugin/effect/aisdk" -import type { SessionHooks } from "@opencode-ai/plugin/effect/session" -import type { ShellHooks } from "@opencode-ai/plugin/effect/shell" -import type { ToolFailures, ToolHooks } from "@opencode-ai/plugin/effect/tool" -import type { ModelHookOptions } from "@opencode-ai/plugin/effect/registration" -import type { PermissionHooks } from "@opencode-ai/plugin/effect/permission" +import type { AISDKHooks } from "@opencode/plugin/effect/aisdk" +import type { SessionHooks } from "@opencode/plugin/effect/session" +import type { ShellHooks } from "@opencode/plugin/effect/shell" +import type { ToolFailures, ToolHooks } from "@opencode/plugin/effect/tool" +import type { ModelHookOptions } from "@opencode/plugin/effect/registration" +import type { PermissionHooks } from "@opencode/plugin/effect/permission" import { Context, Effect, Layer, Scope } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { State } from "../state.js" export interface Domains { diff --git a/packages/core/src/plugin/host.ts b/packages/core/src/plugin/host.ts index d28741c75c9..44beadcc6cc 100644 --- a/packages/core/src/plugin/host.ts +++ b/packages/core/src/plugin/host.ts @@ -1,10 +1,10 @@ export * as PluginHost from "./host.js" -import { Plugin } from "@opencode-ai/plugin/effect" -import type { IntegrationMethodRegistration } from "@opencode-ai/plugin/effect/integration" -import { EventManifest } from "@opencode-ai/schema/event-manifest" -import type { Event } from "@opencode-ai/schema/event" -import { ServerConfig } from "@opencode-ai/schema/mcp" +import { Plugin } from "@opencode/plugin/effect" +import type { IntegrationMethodRegistration } from "@opencode/plugin/effect/integration" +import { EventManifest } from "@opencode/schema/event-manifest" +import type { Event } from "@opencode/schema/event" +import { ServerConfig } from "@opencode/schema/mcp" import { App } from "../app.js" import { Effect, Schema, Stream } from "effect" import { Agent } from "../agent.js" @@ -35,7 +35,7 @@ import { Generate } from "../generate.js" import { Permission } from "../permission.js" import { PluginHooks } from "./hooks.js" import type { Interface } from "../plugin.js" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LayerNode } from "@opencode/util/effect/layer-node" const mutable = (value: T) => value as DeepMutable type RpcEvent = Event.Payload & { diff --git a/packages/core/src/plugin/instance.ts b/packages/core/src/plugin/instance.ts index 598e89240fd..d1e5056ddbd 100644 --- a/packages/core/src/plugin/instance.ts +++ b/packages/core/src/plugin/instance.ts @@ -1,8 +1,8 @@ export * as InstancePlugins from "./instance.js" -import type { Plugin } from "@opencode-ai/plugin/effect/plugin" +import type { Plugin } from "@opencode/plugin/effect/plugin" import { Context, Layer } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import type { Generation } from "../plugin.js" /** diff --git a/packages/core/src/plugin/internal.ts b/packages/core/src/plugin/internal.ts index f5b2d09678a..1691a3c7bbe 100644 --- a/packages/core/src/plugin/internal.ts +++ b/packages/core/src/plugin/internal.ts @@ -1,9 +1,9 @@ export * as PluginInternal from "./internal.js" -import type { Plugin } from "@opencode-ai/plugin/effect/plugin" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { httpClient } from "@opencode-ai/util/effect/app-node-platform" -import { AppProcess } from "@opencode-ai/util/process" +import type { Plugin } from "@opencode/plugin/effect/plugin" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { httpClient } from "@opencode/util/effect/app-node-platform" +import { AppProcess } from "@opencode/util/process" import { Context, Effect, Scope } from "effect" import { HttpClient } from "effect/unstable/http" import { Agent } from "../agent.js" @@ -37,8 +37,8 @@ import { Formatter } from "../formatter.js" import { Form } from "../form.js" import { FileSystem } from "../filesystem.js" import { LocationWatcherPolicy } from "../filesystem/location-watcher-policy.js" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { Image } from "../image.js" import { InstructionDiscovery } from "../instruction-discovery.js" import { Integration } from "../integration.js" @@ -47,7 +47,7 @@ import { KV } from "../kv.js" import { Location } from "../location.js" import { ModelsDev } from "../models-dev.js" import { Mcp } from "../mcp/index.js" -import { Npm } from "@opencode-ai/util/npm" +import { Npm } from "@opencode/util/npm" import { Permission } from "../permission.js" import { Reference } from "../reference.js" import { WebSearch } from "../websearch.js" diff --git a/packages/core/src/plugin/mcp-codemode-exclusion.ts b/packages/core/src/plugin/mcp-codemode-exclusion.ts index cfd3c4bd7d3..ff07dac05c9 100644 --- a/packages/core/src/plugin/mcp-codemode-exclusion.ts +++ b/packages/core/src/plugin/mcp-codemode-exclusion.ts @@ -1,6 +1,6 @@ export * as McpCodeModeExclusionPlugin from "./mcp-codemode-exclusion.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" // These servers provide Code Mode, so expose them directly instead of nesting them inside OpenCode Code Mode. diff --git a/packages/core/src/plugin/models-dev.ts b/packages/core/src/plugin/models-dev.ts index 9235733a7a4..271cee547e8 100644 --- a/packages/core/src/plugin/models-dev.ts +++ b/packages/core/src/plugin/models-dev.ts @@ -1,6 +1,6 @@ -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Integration } from "@opencode-ai/schema/integration" -import { Provider } from "@opencode-ai/schema/provider" +import { define } from "@opencode/plugin/effect/plugin" +import { Integration } from "@opencode/schema/integration" +import { Provider } from "@opencode/schema/provider" import { Effect, Stream } from "effect" import { Bus } from "../bus.js" import { ModelsDev } from "../models-dev.js" diff --git a/packages/core/src/plugin/module.ts b/packages/core/src/plugin/module.ts index 039a5b7ae8c..31cab39795f 100644 --- a/packages/core/src/plugin/module.ts +++ b/packages/core/src/plugin/module.ts @@ -1,9 +1,9 @@ export * as PluginModule from "./module.js" -import type { Plugin } from "@opencode-ai/plugin/effect/plugin" -import { Host } from "@opencode-ai/plugin/host" -import { createPluginSources } from "@opencode-ai/plugin/source" -import { Npm } from "@opencode-ai/util/npm" +import type { Plugin } from "@opencode/plugin/effect/plugin" +import { Host } from "@opencode/plugin/host" +import { createPluginSources } from "@opencode/plugin/source" +import { Npm } from "@opencode/util/npm" import { Deferred, Effect, FiberSet, PubSub, Schema, Stream } from "effect" import path from "path" import { stat } from "node:fs/promises" diff --git a/packages/core/src/plugin/optimize.ts b/packages/core/src/plugin/optimize.ts index 5ec05a41bdc..6dc8dedf5e1 100644 --- a/packages/core/src/plugin/optimize.ts +++ b/packages/core/src/plugin/optimize.ts @@ -1,8 +1,8 @@ export * as OptimizePlugin from "./optimize.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import type { SessionHooks } from "@opencode-ai/plugin/effect/session" -import { Model } from "@opencode-ai/schema/model" +import { define } from "@opencode/plugin/effect/plugin" +import type { SessionHooks } from "@opencode/plugin/effect/session" +import { Model } from "@opencode/schema/model" import { Effect } from "effect" import { SessionSystemPrompt } from "../session/system-prompt.js" diff --git a/packages/core/src/plugin/plan.ts b/packages/core/src/plugin/plan.ts index 68799b9bc39..39f8b54c500 100644 --- a/packages/core/src/plugin/plan.ts +++ b/packages/core/src/plugin/plan.ts @@ -1,10 +1,10 @@ export * as PlanPlugin from "./plan.js" -import { Message, ToolFailure } from "@opencode-ai/ai" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Agent } from "@opencode-ai/schema/agent" -import type { SessionEvent } from "@opencode-ai/schema/session-event" -import { Global } from "@opencode-ai/util/global" +import { Message, ToolFailure } from "@opencode/ai" +import { define } from "@opencode/plugin/effect/plugin" +import { Agent } from "@opencode/schema/agent" +import type { SessionEvent } from "@opencode/schema/session-event" +import { Global } from "@opencode/util/global" import { Effect, Stream } from "effect" import path from "path" import { Permission } from "../permission.js" diff --git a/packages/core/src/plugin/promise.ts b/packages/core/src/plugin/promise.ts index 1291387a5ac..9c58bc5151c 100644 --- a/packages/core/src/plugin/promise.ts +++ b/packages/core/src/plugin/promise.ts @@ -1,3 +1,3 @@ export * as PluginPromise from "./promise.js" -export { fromPromise } from "@opencode-ai/plugin/promise/adapter" +export { fromPromise } from "@opencode/plugin/promise/adapter" diff --git a/packages/core/src/plugin/provider/amazon-bedrock.ts b/packages/core/src/plugin/provider/amazon-bedrock.ts index 6ff156471b5..d15ffd4b499 100644 --- a/packages/core/src/plugin/provider/amazon-bedrock.ts +++ b/packages/core/src/plugin/provider/amazon-bedrock.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" // Ambient inputs the AWS default credential chain can turn into credentials @@ -15,7 +15,7 @@ const CHAIN_ENV = [ const isBedrock = (item: { readonly package: string }) => { const name = Provider.packageName(item.package) - return name.startsWith("@ai-sdk/amazon-bedrock") || name.startsWith("@opencode-ai/ai/providers/amazon-bedrock") + return name.startsWith("@ai-sdk/amazon-bedrock") || name.startsWith("@opencode/ai/providers/amazon-bedrock") } export const AmazonBedrockPlugin = define({ diff --git a/packages/core/src/plugin/provider/anthropic.ts b/packages/core/src/plugin/provider/anthropic.ts index 0a2708a3e71..f2865a675f6 100644 --- a/packages/core/src/plugin/provider/anthropic.ts +++ b/packages/core/src/plugin/provider/anthropic.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" export const AnthropicPlugin = define({ diff --git a/packages/core/src/plugin/provider/azure.ts b/packages/core/src/plugin/provider/azure.ts index 694ea6ce29d..0c8d0e8c379 100644 --- a/packages/core/src/plugin/provider/azure.ts +++ b/packages/core/src/plugin/provider/azure.ts @@ -1,8 +1,8 @@ import { Clock, Effect, Schema, Semaphore, Stream } from "effect" import { ChildProcess } from "effect/unstable/process" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Form } from "@opencode-ai/schema/form" -import { AppProcess } from "@opencode-ai/util/process" +import { define } from "@opencode/plugin/effect/plugin" +import { Form } from "@opencode/schema/form" +import { AppProcess } from "@opencode/util/process" import { App } from "../../app.js" import { Bus } from "../../bus.js" import { Credential } from "../../credential.js" diff --git a/packages/core/src/plugin/provider/cerebras.ts b/packages/core/src/plugin/provider/cerebras.ts index 43c61fd2c8e..3baf20f1977 100644 --- a/packages/core/src/plugin/provider/cerebras.ts +++ b/packages/core/src/plugin/provider/cerebras.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" export const CerebrasPlugin = define({ @@ -8,7 +8,7 @@ export const CerebrasPlugin = define({ yield* ctx.catalog.transform((evt) => { for (const item of evt.provider.list()) { const name = Provider.packageName(item.provider.package) - if (name !== "@ai-sdk/cerebras" && name !== "@opencode-ai/ai/providers/cerebras") continue + if (name !== "@ai-sdk/cerebras" && name !== "@opencode/ai/providers/cerebras") continue evt.provider.update(item.provider.id, (provider) => { provider.headers = { ...provider.headers, "X-Cerebras-3rd-Party-Integration": "opencode" } }) diff --git a/packages/core/src/plugin/provider/cloudflare-ai-gateway.ts b/packages/core/src/plugin/provider/cloudflare-ai-gateway.ts index bc8dd302594..45d1ff7fa4c 100644 --- a/packages/core/src/plugin/provider/cloudflare-ai-gateway.ts +++ b/packages/core/src/plugin/provider/cloudflare-ai-gateway.ts @@ -1,8 +1,8 @@ import os from "os" import { App } from "../../app.js" import { Effect, Option, Schema } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Form } from "@opencode-ai/schema/form" +import { define } from "@opencode/plugin/effect/plugin" +import { Form } from "@opencode/schema/form" import { Provider } from "../../provider.js" import { iife } from "../../util/iife.js" import { configuredSettings } from "./configured.js" diff --git a/packages/core/src/plugin/provider/cloudflare-workers-ai.ts b/packages/core/src/plugin/provider/cloudflare-workers-ai.ts index e8600788e18..60e1a92d82f 100644 --- a/packages/core/src/plugin/provider/cloudflare-workers-ai.ts +++ b/packages/core/src/plugin/provider/cloudflare-workers-ai.ts @@ -1,8 +1,8 @@ import os from "os" import { App } from "../../app.js" import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Form } from "@opencode-ai/schema/form" +import { define } from "@opencode/plugin/effect/plugin" +import { Form } from "@opencode/schema/form" import { Provider } from "../../provider.js" import { iife } from "../../util/iife.js" import { configuredSettings } from "./configured.js" diff --git a/packages/core/src/plugin/provider/configured.ts b/packages/core/src/plugin/provider/configured.ts index 89f7d2874a8..9dc6b06c4a7 100644 --- a/packages/core/src/plugin/provider/configured.ts +++ b/packages/core/src/plugin/provider/configured.ts @@ -1,5 +1,5 @@ import { Effect, Option } from "effect" -import type { Document, Entry } from "@opencode-ai/schema/config" +import type { Document, Entry } from "@opencode/schema/config" import { Catalog } from "../../catalog.js" import { Config } from "../../config.js" import { Provider } from "../../provider.js" diff --git a/packages/core/src/plugin/provider/digitalocean.ts b/packages/core/src/plugin/provider/digitalocean.ts index e2da1af4ab3..be61459d256 100644 --- a/packages/core/src/plugin/provider/digitalocean.ts +++ b/packages/core/src/plugin/provider/digitalocean.ts @@ -1,5 +1,5 @@ -import type { IntegrationOAuthMethodRegistration } from "@opencode-ai/plugin/effect/integration" -import { define } from "@opencode-ai/plugin/effect/plugin" +import type { IntegrationOAuthMethodRegistration } from "@opencode/plugin/effect/integration" +import { define } from "@opencode/plugin/effect/plugin" import { Clock, Deferred, Effect, Option, Schedule, Schema, Semaphore, Stream } from "effect" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import type { Server } from "node:http" diff --git a/packages/core/src/plugin/provider/dynamic.ts b/packages/core/src/plugin/provider/dynamic.ts index e7bab3777b2..0521f72c440 100644 --- a/packages/core/src/plugin/provider/dynamic.ts +++ b/packages/core/src/plugin/provider/dynamic.ts @@ -1,6 +1,6 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Npm } from "@opencode-ai/util/npm" +import { define } from "@opencode/plugin/effect/plugin" +import { Npm } from "@opencode/util/npm" import { loadSDKFactory } from "./sdk-factory.js" export const DynamicProviderPlugin = define({ diff --git a/packages/core/src/plugin/provider/factory.ts b/packages/core/src/plugin/provider/factory.ts index fe4b89a7c39..017323c3a66 100644 --- a/packages/core/src/plugin/provider/factory.ts +++ b/packages/core/src/plugin/provider/factory.ts @@ -1,5 +1,5 @@ -import { define } from "@opencode-ai/plugin/effect/plugin" -import type { AISDKHooks } from "@opencode-ai/plugin/effect/aisdk" +import { define } from "@opencode/plugin/effect/plugin" +import type { AISDKHooks } from "@opencode/plugin/effect/aisdk" import { Effect } from "effect" export function createProviderPlugin(input: { diff --git a/packages/core/src/plugin/provider/github-copilot.ts b/packages/core/src/plugin/provider/github-copilot.ts index 816b615ab2a..e77743006bd 100644 --- a/packages/core/src/plugin/provider/github-copilot.ts +++ b/packages/core/src/plugin/provider/github-copilot.ts @@ -1,5 +1,5 @@ -import type { IntegrationOAuthMethodRegistration } from "@opencode-ai/plugin/effect/integration" -import type { SessionRequestKind } from "@opencode-ai/plugin/effect/session" +import type { IntegrationOAuthMethodRegistration } from "@opencode/plugin/effect/integration" +import type { SessionRequestKind } from "@opencode/plugin/effect/session" import { Effect, Option, Schema, Semaphore, Stream } from "effect" import { Catalog } from "../../catalog.js" import { Credential } from "../../credential.js" @@ -8,7 +8,7 @@ import { CopilotModels } from "../../github-copilot/models.js" import { App } from "../../app.js" import { Integration } from "../../integration.js" import { Model } from "../../model.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" import type { PluginInternal } from "../internal.js" diff --git a/packages/core/src/plugin/provider/gitlab.ts b/packages/core/src/plugin/provider/gitlab.ts index 1ef6218f8d7..6d0e52b3305 100644 --- a/packages/core/src/plugin/provider/gitlab.ts +++ b/packages/core/src/plugin/provider/gitlab.ts @@ -1,7 +1,7 @@ import os from "os" import { App } from "../../app.js" import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" export const GitLabPlugin = define({ diff --git a/packages/core/src/plugin/provider/google-vertex.ts b/packages/core/src/plugin/provider/google-vertex.ts index 26fa1bd26a2..1107494f899 100644 --- a/packages/core/src/plugin/provider/google-vertex.ts +++ b/packages/core/src/plugin/provider/google-vertex.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" function resolveProject(options: Record) { diff --git a/packages/core/src/plugin/provider/kilo.ts b/packages/core/src/plugin/provider/kilo.ts index 6efaf39f5d8..17e46d168e3 100644 --- a/packages/core/src/plugin/provider/kilo.ts +++ b/packages/core/src/plugin/provider/kilo.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" export const KiloPlugin = define({ diff --git a/packages/core/src/plugin/provider/llmgateway.ts b/packages/core/src/plugin/provider/llmgateway.ts index 2580e88608b..c720455cc65 100644 --- a/packages/core/src/plugin/provider/llmgateway.ts +++ b/packages/core/src/plugin/provider/llmgateway.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Integration } from "../../integration.js" import { Provider } from "../../provider.js" diff --git a/packages/core/src/plugin/provider/lmstudio.ts b/packages/core/src/plugin/provider/lmstudio.ts index ce8c257a181..5642549a12d 100644 --- a/packages/core/src/plugin/provider/lmstudio.ts +++ b/packages/core/src/plugin/provider/lmstudio.ts @@ -1,5 +1,5 @@ -import { define } from "@opencode-ai/plugin/effect/plugin" -import type { Entry } from "@opencode-ai/schema/config" +import { define } from "@opencode/plugin/effect/plugin" +import type { Entry } from "@opencode/schema/config" import { Duration, Effect, Schedule, Schema, Semaphore, Stream } from "effect" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import { Config } from "../../config.js" @@ -52,7 +52,7 @@ export function make(origin = "http://127.0.0.1:1234", interval: Duration.Input catalog.provider.update(providerID, (provider) => { provider.name = "LM Studio" provider.activation = "enabled" - provider.package = "@opencode-ai/ai/providers/openai-compatible" + provider.package = "@opencode/ai/providers/openai-compatible" provider.settings = { baseURL: source.current.baseURL, provider: providerID, diff --git a/packages/core/src/plugin/provider/modal.ts b/packages/core/src/plugin/provider/modal.ts index 38e7f1ad589..5201103b6e6 100644 --- a/packages/core/src/plugin/provider/modal.ts +++ b/packages/core/src/plugin/provider/modal.ts @@ -1,5 +1,5 @@ import { Effect, Semaphore, Stream } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Bus } from "../../bus.js" import { Catalog } from "../../catalog.js" import { Credential } from "../../credential.js" diff --git a/packages/core/src/plugin/provider/nvidia.ts b/packages/core/src/plugin/provider/nvidia.ts index c15a7eb6ffc..e8266ffdfd0 100644 --- a/packages/core/src/plugin/provider/nvidia.ts +++ b/packages/core/src/plugin/provider/nvidia.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" export const NvidiaPlugin = define({ diff --git a/packages/core/src/plugin/provider/ollama.ts b/packages/core/src/plugin/provider/ollama.ts index dceafd0132a..9be6b7b58ef 100644 --- a/packages/core/src/plugin/provider/ollama.ts +++ b/packages/core/src/plugin/provider/ollama.ts @@ -1,5 +1,5 @@ -import { define } from "@opencode-ai/plugin/effect/plugin" -import type { Entry } from "@opencode-ai/schema/config" +import { define } from "@opencode/plugin/effect/plugin" +import type { Entry } from "@opencode/schema/config" import { Duration, Effect, Schedule, Schema, Semaphore, Stream } from "effect" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import { Config } from "../../config.js" @@ -74,7 +74,7 @@ export function make(origin = "http://127.0.0.1:11434", interval: Duration.Input catalog.provider.update(providerID, (provider) => { provider.name = "Ollama" provider.activation = "enabled" - provider.package = "@opencode-ai/ai/providers/openai-compatible" + provider.package = "@opencode/ai/providers/openai-compatible" provider.settings = { baseURL: source.current.baseURL, provider: providerID, diff --git a/packages/core/src/plugin/provider/openai-compatible.ts b/packages/core/src/plugin/provider/openai-compatible.ts index 97fbe965d7b..0e256c1b034 100644 --- a/packages/core/src/plugin/provider/openai-compatible.ts +++ b/packages/core/src/plugin/provider/openai-compatible.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" export const OpenAICompatiblePlugin = define({ id: "opencode.provider.openai.compatible", diff --git a/packages/core/src/plugin/provider/openai.ts b/packages/core/src/plugin/provider/openai.ts index 9c5e3b79d7c..72cd1bc438c 100644 --- a/packages/core/src/plugin/provider/openai.ts +++ b/packages/core/src/plugin/provider/openai.ts @@ -1,5 +1,5 @@ -import type { IntegrationOAuthMethodRegistration } from "@opencode-ai/plugin/effect/integration" -import { define } from "@opencode-ai/plugin/effect/plugin" +import type { IntegrationOAuthMethodRegistration } from "@opencode/plugin/effect/integration" +import { define } from "@opencode/plugin/effect/plugin" import { Deferred, Effect, Option, Schema, Semaphore, Stream } from "effect" import type { Server } from "node:http" import { App } from "../../app.js" diff --git a/packages/core/src/plugin/provider/opencode.ts b/packages/core/src/plugin/provider/opencode.ts index a9f5dc99c88..e2917ac1664 100644 --- a/packages/core/src/plugin/provider/opencode.ts +++ b/packages/core/src/plugin/provider/opencode.ts @@ -1,14 +1,14 @@ import { Duration, Effect, Schema, Semaphore, Stream } from "effect" import type { Scope } from "effect" -import type { IntegrationOAuthMethodRegistration } from "@opencode-ai/plugin/effect/integration" -import { define } from "@opencode-ai/plugin/effect/plugin" +import type { IntegrationOAuthMethodRegistration } from "@opencode/plugin/effect/integration" +import { define } from "@opencode/plugin/effect/plugin" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import { Bus } from "../../bus.js" import { Credential } from "../../credential.js" import { Integration } from "../../integration.js" import { Provider } from "../../provider.js" -import { ConfigProvider } from "@opencode-ai/schema/config/provider" -import { Money } from "@opencode-ai/schema/money" +import { ConfigProvider } from "@opencode/schema/config/provider" +import { Money } from "@opencode/schema/money" const defaultServer = "https://opencode.ai/console" const clientID = "opencode-cli" diff --git a/packages/core/src/plugin/provider/openrouter.ts b/packages/core/src/plugin/provider/openrouter.ts index 9fd357eeccc..eb392171d3e 100644 --- a/packages/core/src/plugin/provider/openrouter.ts +++ b/packages/core/src/plugin/provider/openrouter.ts @@ -1,7 +1,7 @@ import { Effect } from "effect" import { Model } from "../../model.js" import { Provider } from "../../provider.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" export const OpenRouterPlugin = define({ id: "opencode.provider.openrouter", diff --git a/packages/core/src/plugin/provider/sap-ai-core.ts b/packages/core/src/plugin/provider/sap-ai-core.ts index f07babc2c29..4085378e84f 100644 --- a/packages/core/src/plugin/provider/sap-ai-core.ts +++ b/packages/core/src/plugin/provider/sap-ai-core.ts @@ -1,6 +1,6 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Npm } from "@opencode-ai/util/npm" +import { define } from "@opencode/plugin/effect/plugin" +import { Npm } from "@opencode/util/npm" import { Provider } from "../../provider.js" import { loadSDKFactory } from "./sdk-factory.js" diff --git a/packages/core/src/plugin/provider/sdk-factory.ts b/packages/core/src/plugin/provider/sdk-factory.ts index 9e7d22d8d48..9a7e6c08d6d 100644 --- a/packages/core/src/plugin/provider/sdk-factory.ts +++ b/packages/core/src/plugin/provider/sdk-factory.ts @@ -1,6 +1,6 @@ import { Effect } from "effect" -import { Npm } from "@opencode-ai/util/npm" -import { importModule, resolveModule } from "@opencode-ai/util/runtime-import" +import { Npm } from "@opencode/util/npm" +import { importModule, resolveModule } from "@opencode/util/runtime-import" export const loadSDKFactory = Effect.fnUntraced(function* (npm: Npm.Interface, packageName: string) { const installedPath = packageName.startsWith("file://") diff --git a/packages/core/src/plugin/provider/snowflake-cortex.ts b/packages/core/src/plugin/provider/snowflake-cortex.ts index 3d9e8e1f0a4..b32fa54836d 100644 --- a/packages/core/src/plugin/provider/snowflake-cortex.ts +++ b/packages/core/src/plugin/provider/snowflake-cortex.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" type FetchLike = (url: string | URL | Request, init?: RequestInit) => Promise diff --git a/packages/core/src/plugin/provider/vercel.ts b/packages/core/src/plugin/provider/vercel.ts index 653742ac6f3..afe3ecede4d 100644 --- a/packages/core/src/plugin/provider/vercel.ts +++ b/packages/core/src/plugin/provider/vercel.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" export const VercelPlugin = define({ diff --git a/packages/core/src/plugin/provider/vllm.ts b/packages/core/src/plugin/provider/vllm.ts index a0e4a6b99f8..36e1a8b2c70 100644 --- a/packages/core/src/plugin/provider/vllm.ts +++ b/packages/core/src/plugin/provider/vllm.ts @@ -1,5 +1,5 @@ -import { define } from "@opencode-ai/plugin/effect/plugin" -import type { Entry } from "@opencode-ai/schema/config" +import { define } from "@opencode/plugin/effect/plugin" +import type { Entry } from "@opencode/schema/config" import { Duration, Effect, Schedule, Schema, Semaphore, Stream } from "effect" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import { Config } from "../../config.js" @@ -40,7 +40,7 @@ export function make(origin = "http://127.0.0.1:8000", interval: Duration.Input } catalog.provider.update(providerID, (provider) => { provider.name = "vLLM" - provider.package = "@opencode-ai/ai/providers/openai-compatible" + provider.package = "@opencode/ai/providers/openai-compatible" provider.settings = { baseURL: source.current.baseURL, provider: providerID, diff --git a/packages/core/src/plugin/provider/xai.ts b/packages/core/src/plugin/provider/xai.ts index 94b0be539eb..99d21c56ace 100644 --- a/packages/core/src/plugin/provider/xai.ts +++ b/packages/core/src/plugin/provider/xai.ts @@ -1,5 +1,5 @@ -import type { IntegrationOAuthMethodRegistration } from "@opencode-ai/plugin/effect/integration" -import { define } from "@opencode-ai/plugin/effect/plugin" +import type { IntegrationOAuthMethodRegistration } from "@opencode/plugin/effect/integration" +import { define } from "@opencode/plugin/effect/plugin" import { Clock, Effect, Option, Schema } from "effect" import { App } from "../../app.js" import { Credential } from "../../credential.js" diff --git a/packages/core/src/plugin/provider/zenmux.ts b/packages/core/src/plugin/provider/zenmux.ts index 738630508b4..8b90bde2b37 100644 --- a/packages/core/src/plugin/provider/zenmux.ts +++ b/packages/core/src/plugin/provider/zenmux.ts @@ -1,5 +1,5 @@ import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Provider } from "../../provider.js" export const ZenmuxPlugin = define({ diff --git a/packages/core/src/plugin/sdk.ts b/packages/core/src/plugin/sdk.ts index 829b9edd5e4..a71b2f98c46 100644 --- a/packages/core/src/plugin/sdk.ts +++ b/packages/core/src/plugin/sdk.ts @@ -1,15 +1,15 @@ export * as SdkPlugins from "./sdk.js" -import type { Plugin } from "@opencode-ai/plugin/effect/plugin" +import type { Plugin } from "@opencode/plugin/effect/plugin" import { Context, Effect, Layer } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Bus } from "../bus.js" import type { Generation } from "../plugin.js" export const Updated = Bus.ephemeral({ type: "sdk.plugin.updated", schema: {} }) /** - * Holds the plugins an embedder (the `@opencode-ai/sdk` host) contributes, + * Holds the plugins an embedder (the `@opencode/sdk` host) contributes, * so the application loader can add them on every Location boot through its * ordinary generation path. Registration publishes an unlocated update so every booted Location * reloads its plugin generation from the shared store. diff --git a/packages/core/src/plugin/service.ts b/packages/core/src/plugin/service.ts index 991f18ba065..b4f1bccf3be 100644 --- a/packages/core/src/plugin/service.ts +++ b/packages/core/src/plugin/service.ts @@ -2,8 +2,8 @@ export * as Plugin from "./service.js" // The service tag lives apart from the layer so Session entry points can wait on activation without // importing the plugin host, which itself depends on Session. -import { Plugin } from "@opencode-ai/schema/plugin" -import type { Plugin as PluginDefinition } from "@opencode-ai/plugin/effect/plugin" +import { Plugin } from "@opencode/schema/plugin" +import type { Plugin as PluginDefinition } from "@opencode/plugin/effect/plugin" import { Context, type Effect, type Exit } from "effect" export interface Interface { diff --git a/packages/core/src/plugin/skill.ts b/packages/core/src/plugin/skill.ts index f65ec249951..05c27eeef95 100644 --- a/packages/core/src/plugin/skill.ts +++ b/packages/core/src/plugin/skill.ts @@ -2,8 +2,8 @@ export * as SkillPlugin from "./skill.js" -import { define, type Context } from "@opencode-ai/plugin/effect/plugin" -import { Document } from "@opencode-ai/schema/config" +import { define, type Context } from "@opencode/plugin/effect/plugin" +import { Document } from "@opencode/schema/config" import { Effect } from "effect" import { AbsolutePath } from "../schema.js" import { Skill } from "../skill.js" diff --git a/packages/core/src/plugin/skill/opencode.md b/packages/core/src/plugin/skill/opencode.md index f8c21723701..08a1f9e84fb 100644 --- a/packages/core/src/plugin/skill/opencode.md +++ b/packages/core/src/plugin/skill/opencode.md @@ -217,10 +217,10 @@ For questions about connecting an application to OpenCode over the network, fetch the full [client guide](https://opencode.ai/v2/docs/build/client) before answering. -`@opencode-ai/client` is the generated TypeScript client for the OpenCode HTTP +`@opencode/client` is the generated TypeScript client for the OpenCode HTTP API. Its methods and types come from the same contract as the API reference. The default entrypoint exposes Promise-based resource clients and async -iterables for streaming endpoints. The `@opencode-ai/client/effect` entrypoint +iterables for streaming endpoints. The `@opencode/client/effect` entrypoint exposes typed Effects, Streams, and decoded OpenCode schema values. Its `Service` API can discover, start, stop, and authenticate with the local background service from a Node application. diff --git a/packages/core/src/plugin/source-directory.ts b/packages/core/src/plugin/source-directory.ts index 887b659cb76..79c247cb0a6 100644 --- a/packages/core/src/plugin/source-directory.ts +++ b/packages/core/src/plugin/source-directory.ts @@ -1,6 +1,6 @@ export * as PluginSourceDirectory from "./source-directory.js" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Effect, Option } from "effect" import path from "path" diff --git a/packages/core/src/plugin/supervisor.ts b/packages/core/src/plugin/supervisor.ts index bc7ed473857..32de3582721 100644 --- a/packages/core/src/plugin/supervisor.ts +++ b/packages/core/src/plugin/supervisor.ts @@ -1,12 +1,12 @@ export * as PluginSupervisor from "./supervisor.js" -import { Event } from "@opencode-ai/schema/config" +import { Event } from "@opencode/schema/config" import { Cause, Effect, Layer, Queue, Stream } from "effect" import path from "path" import { ConfigPluginSource } from "../config/plugin/source.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Bus } from "../bus.js" -import { Npm } from "@opencode-ai/util/npm" +import { Npm } from "@opencode/util/npm" import { Plugin } from "../plugin.js" import { InstancePlugins } from "./instance.js" import { PluginInternal } from "./internal.js" diff --git a/packages/core/src/plugin/update.ts b/packages/core/src/plugin/update.ts index da4aecff8c8..7a9188da85b 100644 --- a/packages/core/src/plugin/update.ts +++ b/packages/core/src/plugin/update.ts @@ -1,9 +1,9 @@ export * as PluginUpdate from "./update.js" import { Clock, Context, Effect, Exit, Layer, Option, PubSub, Stream } from "effect" -import { Npm } from "@opencode-ai/util/npm" -import { EffectFlock } from "@opencode-ai/util/effect-flock" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { Npm } from "@opencode/util/npm" +import { EffectFlock } from "@opencode/util/effect-flock" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { KeyedMutex } from "../effect/keyed-mutex.js" const interval = 24 * 60 * 60 * 1_000 diff --git a/packages/core/src/plugin/variant.ts b/packages/core/src/plugin/variant.ts index f988ecc6e85..0931e68c07c 100644 --- a/packages/core/src/plugin/variant.ts +++ b/packages/core/src/plugin/variant.ts @@ -1,8 +1,8 @@ export * as VariantPlugin from "./variant.js" import { Effect } from "effect" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Model } from "@opencode-ai/schema/model" +import { define } from "@opencode/plugin/effect/plugin" +import { Model } from "@opencode/schema/model" import { Provider } from "../provider.js" export const Plugin = define({ diff --git a/packages/core/src/plugin/vcs/git.ts b/packages/core/src/plugin/vcs/git.ts index dd62b34925d..4a637148a05 100644 --- a/packages/core/src/plugin/vcs/git.ts +++ b/packages/core/src/plugin/vcs/git.ts @@ -1,11 +1,11 @@ export * as VcsGitPlugin from "./git.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect } from "effect" import { ChildProcess } from "effect/unstable/process" -import { FileDiff } from "@opencode-ai/schema/file-diff" -import { Base, BranchList, FileStatus, Info, Mode } from "@opencode-ai/schema/vcs" -import { AppProcess } from "@opencode-ai/util/process" +import { FileDiff } from "@opencode/schema/file-diff" +import { Base, BranchList, FileStatus, Info, Mode } from "@opencode/schema/vcs" +import { AppProcess } from "@opencode/util/process" import { Location } from "../../location.js" import type { Adapter, BranchOptions, DiffOptions } from "../../vcs.js" import { DiffError } from "../../vcs.js" diff --git a/packages/core/src/plugin/vcs/hg.ts b/packages/core/src/plugin/vcs/hg.ts index 0f79dbeb37f..fbf5a09410a 100644 --- a/packages/core/src/plugin/vcs/hg.ts +++ b/packages/core/src/plugin/vcs/hg.ts @@ -3,11 +3,11 @@ export * as VcsHgPlugin from "./hg.js" import path from "path" import { Effect } from "effect" import { ChildProcess } from "effect/unstable/process" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { FileDiff } from "@opencode-ai/schema/file-diff" -import { FileStatus, Info, Mode } from "@opencode-ai/schema/vcs" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { AppProcess } from "@opencode-ai/util/process" +import { define } from "@opencode/plugin/effect/plugin" +import { FileDiff } from "@opencode/schema/file-diff" +import { FileStatus, Info, Mode } from "@opencode/schema/vcs" +import { FSUtil } from "@opencode/util/fs-util" +import { AppProcess } from "@opencode/util/process" import { Location } from "../../location.js" import type { Adapter, DiffOptions } from "../../vcs.js" import { DiffError } from "../../vcs.js" diff --git a/packages/core/src/plugin/warming.ts b/packages/core/src/plugin/warming.ts index 09784145064..afc1465e83d 100644 --- a/packages/core/src/plugin/warming.ts +++ b/packages/core/src/plugin/warming.ts @@ -1,7 +1,7 @@ export * as WarmingPlugin from "./warming.js" -import { define } from "@opencode-ai/plugin/effect/plugin" -import type { Session } from "@opencode-ai/schema/session" +import { define } from "@opencode/plugin/effect/plugin" +import type { Session } from "@opencode/schema/session" import { Clock, Duration, Effect, Scope } from "effect" import { Config } from "../config.js" diff --git a/packages/core/src/plugin/websearch/exa.ts b/packages/core/src/plugin/websearch/exa.ts index 77b380db370..1dc3a26108b 100644 --- a/packages/core/src/plugin/websearch/exa.ts +++ b/packages/core/src/plugin/websearch/exa.ts @@ -1,6 +1,6 @@ export * as WebSearchExa from "./exa.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect, Schema, Scope } from "effect" import { HttpClient } from "effect/unstable/http" import { WebSearchMcp } from "./mcp.js" diff --git a/packages/core/src/plugin/websearch/firecrawl.ts b/packages/core/src/plugin/websearch/firecrawl.ts index 4cb56956405..1ea260e0c5d 100644 --- a/packages/core/src/plugin/websearch/firecrawl.ts +++ b/packages/core/src/plugin/websearch/firecrawl.ts @@ -1,6 +1,6 @@ export * as WebSearchFirecrawl from "./firecrawl.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect, Option, Schema, Scope } from "effect" import { HttpClient } from "effect/unstable/http" import { App } from "../../app.js" diff --git a/packages/core/src/plugin/websearch/parallel.ts b/packages/core/src/plugin/websearch/parallel.ts index 577aafc2546..5184155482b 100644 --- a/packages/core/src/plugin/websearch/parallel.ts +++ b/packages/core/src/plugin/websearch/parallel.ts @@ -1,6 +1,6 @@ export * as WebSearchParallel from "./parallel.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect, Schema, Scope } from "effect" import { HttpClient } from "effect/unstable/http" import { App } from "../../app.js" diff --git a/packages/core/src/plugin/websearch/tavily.ts b/packages/core/src/plugin/websearch/tavily.ts index 34cf739e18e..4b568a1fb0d 100644 --- a/packages/core/src/plugin/websearch/tavily.ts +++ b/packages/core/src/plugin/websearch/tavily.ts @@ -1,6 +1,6 @@ export * as WebSearchTavily from "./tavily.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Duration, Effect, Schema, Scope } from "effect" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import { App } from "../../app.js" diff --git a/packages/core/src/project.ts b/packages/core/src/project.ts index 7d7d0eb607b..bad6d3ab6a9 100644 --- a/packages/core/src/project.ts +++ b/packages/core/src/project.ts @@ -7,12 +7,12 @@ import path from "path" import { AbsolutePath } from "./schema.js" import { Bus } from "./bus.js" import { Database } from "./database/database.js" -import { Worktree } from "@opencode-ai/schema/worktree" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { Worktree } from "@opencode/schema/worktree" +import { FSUtil } from "@opencode/util/fs-util" import { Git } from "./git.js" -import { AppProcess } from "@opencode-ai/util/process" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Hash } from "@opencode-ai/util/hash" +import { AppProcess } from "@opencode/util/process" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Hash } from "@opencode/util/hash" import { ProjectSchema } from "./project/schema.js" import { ProjectTable, upsertProject } from "./project/sql.js" import { WorktreeTable } from "./worktree/sql.js" diff --git a/packages/core/src/project/schema.ts b/packages/core/src/project/schema.ts index 4d30552797e..1c3802c4ac6 100644 --- a/packages/core/src/project/schema.ts +++ b/packages/core/src/project/schema.ts @@ -1,7 +1,7 @@ export * as ProjectSchema from "./schema.js" import { Schema } from "effect" -import { Project } from "@opencode-ai/schema/project" +import { Project } from "@opencode/schema/project" import { AbsolutePath } from "../schema.js" export const ID = Project.ID diff --git a/packages/core/src/provider.ts b/packages/core/src/provider.ts index fe8ab7dd057..ac46e0f7d80 100644 --- a/packages/core/src/provider.ts +++ b/packages/core/src/provider.ts @@ -1,12 +1,12 @@ export * as Provider from "./provider.js" import { Effect, Schema } from "effect" -import { Provider } from "@opencode-ai/schema/provider" -import type { ProviderPackageDefinition } from "@opencode-ai/ai" -import { isRecord } from "@opencode-ai/ai/utils/record" -import { Npm } from "@opencode-ai/util/npm" +import { Provider } from "@opencode/schema/provider" +import type { ProviderPackageDefinition } from "@opencode/ai" +import { isRecord } from "@opencode/ai/utils/record" +import { Npm } from "@opencode/util/npm" import type { DeepMutable } from "./schema.js" -import { importModule, resolveModule } from "@opencode-ai/util/runtime-import" +import { importModule, resolveModule } from "@opencode/util/runtime-import" export const ID = Provider.ID export type ID = typeof ID.Type @@ -18,6 +18,8 @@ export function packageName(value: string): string export function packageName(value: undefined): undefined export function packageName(value: string | undefined): string | undefined export function packageName(value: string | undefined) { + // Native provider entrypoints can persist in user configuration across the npm scope migration. + if (value?.startsWith("@opencode-ai/ai/")) return value.replace("@opencode-ai/", "@opencode/") if (value === undefined || !isAISDK(value)) return value return value.slice(AISDK_PREFIX.length) } @@ -34,55 +36,50 @@ export type ProviderPackage = ProviderPackageDefinition const packages = new Map>() const builtins = new Map Promise>([ - ["@opencode-ai/ai/providers/amazon-bedrock", () => import("@opencode-ai/ai/providers/amazon-bedrock")], - ["@opencode-ai/ai/providers/amazon-bedrock/mantle", () => import("@opencode-ai/ai/providers/amazon-bedrock/mantle")], + ["@opencode/ai/providers/amazon-bedrock", () => import("@opencode/ai/providers/amazon-bedrock")], + ["@opencode/ai/providers/amazon-bedrock/mantle", () => import("@opencode/ai/providers/amazon-bedrock/mantle")], [ - "@opencode-ai/ai/providers/amazon-bedrock/mantle/chat", - () => import("@opencode-ai/ai/providers/amazon-bedrock/mantle/chat"), + "@opencode/ai/providers/amazon-bedrock/mantle/chat", + () => import("@opencode/ai/providers/amazon-bedrock/mantle/chat"), ], [ - "@opencode-ai/ai/providers/amazon-bedrock/mantle/responses", - () => import("@opencode-ai/ai/providers/amazon-bedrock/mantle/responses"), + "@opencode/ai/providers/amazon-bedrock/mantle/responses", + () => import("@opencode/ai/providers/amazon-bedrock/mantle/responses"), ], - ["@opencode-ai/ai/providers/anthropic", () => import("@opencode-ai/ai/providers/anthropic")], - ["@opencode-ai/ai/providers/azure", () => import("@opencode-ai/ai/providers/azure")], - ["@opencode-ai/ai/providers/azure/chat", () => import("@opencode-ai/ai/providers/azure/chat")], - ["@opencode-ai/ai/providers/azure/responses", () => import("@opencode-ai/ai/providers/azure/responses")], - ["@opencode-ai/ai/providers/baseten", () => import("@opencode-ai/ai/providers/baseten")], - ["@opencode-ai/ai/providers/cerebras", () => import("@opencode-ai/ai/providers/cerebras")], - ["@opencode-ai/ai/providers/cloudflare-ai-gateway", () => import("@opencode-ai/ai/providers/cloudflare-ai-gateway")], - ["@opencode-ai/ai/providers/cloudflare-workers-ai", () => import("@opencode-ai/ai/providers/cloudflare-workers-ai")], - ["@opencode-ai/ai/providers/deepinfra", () => import("@opencode-ai/ai/providers/deepinfra")], - ["@opencode-ai/ai/providers/deepseek", () => import("@opencode-ai/ai/providers/deepseek")], - ["@opencode-ai/ai/providers/fireworks", () => import("@opencode-ai/ai/providers/fireworks")], - ["@opencode-ai/ai/providers/google", () => import("@opencode-ai/ai/providers/google")], - ["@opencode-ai/ai/providers/google-vertex", () => import("@opencode-ai/ai/providers/google-vertex")], - ["@opencode-ai/ai/providers/google-vertex/gemini", () => import("@opencode-ai/ai/providers/google-vertex/gemini")], - ["@opencode-ai/ai/providers/google-vertex/chat", () => import("@opencode-ai/ai/providers/google-vertex/chat")], - [ - "@opencode-ai/ai/providers/google-vertex/responses", - () => import("@opencode-ai/ai/providers/google-vertex/responses"), - ], - [ - "@opencode-ai/ai/providers/google-vertex/messages", - () => import("@opencode-ai/ai/providers/google-vertex/messages"), - ], - ["@opencode-ai/ai/providers/groq", () => import("@opencode-ai/ai/providers/groq")], - ["@opencode-ai/ai/providers/mistral", () => import("@opencode-ai/ai/providers/mistral")], - ["@opencode-ai/ai/providers/openai", () => import("@opencode-ai/ai/providers/openai")], - ["@opencode-ai/ai/providers/openai/chat", () => import("@opencode-ai/ai/providers/openai/chat")], - ["@opencode-ai/ai/providers/openai/responses", () => import("@opencode-ai/ai/providers/openai/responses")], - ["@opencode-ai/ai/providers/openai-compatible", () => import("@opencode-ai/ai/providers/openai-compatible")], - ["@opencode-ai/ai/providers/openrouter", () => import("@opencode-ai/ai/providers/openrouter")], - ["@opencode-ai/ai/providers/togetherai", () => import("@opencode-ai/ai/providers/togetherai")], - ["@opencode-ai/ai/providers/xai", () => import("@opencode-ai/ai/providers/xai")], + ["@opencode/ai/providers/anthropic", () => import("@opencode/ai/providers/anthropic")], + ["@opencode/ai/providers/azure", () => import("@opencode/ai/providers/azure")], + ["@opencode/ai/providers/azure/chat", () => import("@opencode/ai/providers/azure/chat")], + ["@opencode/ai/providers/azure/responses", () => import("@opencode/ai/providers/azure/responses")], + ["@opencode/ai/providers/baseten", () => import("@opencode/ai/providers/baseten")], + ["@opencode/ai/providers/cerebras", () => import("@opencode/ai/providers/cerebras")], + ["@opencode/ai/providers/cloudflare-ai-gateway", () => import("@opencode/ai/providers/cloudflare-ai-gateway")], + ["@opencode/ai/providers/cloudflare-workers-ai", () => import("@opencode/ai/providers/cloudflare-workers-ai")], + ["@opencode/ai/providers/deepinfra", () => import("@opencode/ai/providers/deepinfra")], + ["@opencode/ai/providers/deepseek", () => import("@opencode/ai/providers/deepseek")], + ["@opencode/ai/providers/fireworks", () => import("@opencode/ai/providers/fireworks")], + ["@opencode/ai/providers/google", () => import("@opencode/ai/providers/google")], + ["@opencode/ai/providers/google-vertex", () => import("@opencode/ai/providers/google-vertex")], + ["@opencode/ai/providers/google-vertex/gemini", () => import("@opencode/ai/providers/google-vertex/gemini")], + ["@opencode/ai/providers/google-vertex/chat", () => import("@opencode/ai/providers/google-vertex/chat")], + ["@opencode/ai/providers/google-vertex/responses", () => import("@opencode/ai/providers/google-vertex/responses")], + ["@opencode/ai/providers/google-vertex/messages", () => import("@opencode/ai/providers/google-vertex/messages")], + ["@opencode/ai/providers/groq", () => import("@opencode/ai/providers/groq")], + ["@opencode/ai/providers/mistral", () => import("@opencode/ai/providers/mistral")], + ["@opencode/ai/providers/openai", () => import("@opencode/ai/providers/openai")], + ["@opencode/ai/providers/openai/chat", () => import("@opencode/ai/providers/openai/chat")], + ["@opencode/ai/providers/openai/responses", () => import("@opencode/ai/providers/openai/responses")], + ["@opencode/ai/providers/openai-compatible", () => import("@opencode/ai/providers/openai-compatible")], + ["@opencode/ai/providers/openrouter", () => import("@opencode/ai/providers/openrouter")], + ["@opencode/ai/providers/togetherai", () => import("@opencode/ai/providers/togetherai")], + ["@opencode/ai/providers/xai", () => import("@opencode/ai/providers/xai")], ]) -export const loadPackage = Effect.fn("Provider.loadPackage")(function* (specifier: string, npm?: Npm.Interface) { +export const loadPackage = Effect.fn("Provider.loadPackage")(function* (input: string, npm?: Npm.Interface) { + const specifier = packageName(input) const builtin = builtins.get(specifier) if (builtin) return yield* importPackage(specifier, specifier, builtin) const resolved = yield* Effect.sync(() => { - if (specifier.startsWith("file://") || specifier.startsWith("@opencode-ai/ai/")) return specifier + if (specifier.startsWith("file://") || specifier.startsWith("@opencode/ai/")) return specifier try { return import.meta.resolve(specifier) } catch { diff --git a/packages/core/src/pty.ts b/packages/core/src/pty.ts index c7219d5ae1a..3e3b631237e 100644 --- a/packages/core/src/pty.ts +++ b/packages/core/src/pty.ts @@ -1,9 +1,9 @@ export * as Pty from "./pty.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import type { Disp, Proc } from "#pty" import { Context, Effect, Layer, Schema, Types } from "effect" -import { Pty } from "@opencode-ai/schema/pty" +import { Pty } from "@opencode/schema/pty" import { Bus } from "./bus.js" import { Location } from "./location.js" import { PtyID } from "./pty/schema.js" @@ -46,7 +46,7 @@ export const UpdateInput = Pty.UpdateInput export type UpdateInput = Types.DeepMutable -export { Event } from "@opencode-ai/schema/pty" +export { Event } from "@opencode/schema/pty" export type AttachInput = { // Absolute output cursor to replay from. -1 tails from the current end; omitted replays the full retained buffer. diff --git a/packages/core/src/pty/schema.ts b/packages/core/src/pty/schema.ts index ab0c40521b1..35c60307d73 100644 --- a/packages/core/src/pty/schema.ts +++ b/packages/core/src/pty/schema.ts @@ -1 +1 @@ -export { ID as PtyID } from "@opencode-ai/schema/pty" +export { ID as PtyID } from "@opencode/schema/pty" diff --git a/packages/core/src/pty/ticket.ts b/packages/core/src/pty/ticket.ts index 49a67cb00f1..677a9b1f984 100644 --- a/packages/core/src/pty/ticket.ts +++ b/packages/core/src/pty/ticket.ts @@ -1,10 +1,10 @@ export * as PtyTicket from "./ticket.js" -import type { Workspace } from "@opencode-ai/schema/workspace" -import { PtyTicket } from "@opencode-ai/schema/pty-ticket" +import type { Workspace } from "@opencode/schema/workspace" +import { PtyTicket } from "@opencode/schema/pty-ticket" import { PtyID } from "./schema.js" import { Cache, Context, Duration, Effect, Layer } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" const DEFAULT_TTL = Duration.seconds(60) const CAPACITY = 10_000 diff --git a/packages/core/src/reference.ts b/packages/core/src/reference.ts index 5e0b965b004..d567abd5f5d 100644 --- a/packages/core/src/reference.ts +++ b/packages/core/src/reference.ts @@ -1,9 +1,9 @@ export * as Reference from "./reference.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Scope } from "effect" -import { Reference } from "@opencode-ai/schema/reference" -import { Global } from "@opencode-ai/util/global" +import { Reference } from "@opencode/schema/reference" +import { Global } from "@opencode/util/global" import { Bus } from "./bus.js" import { Repository } from "./repository.js" import { RepositoryCache } from "./repository-cache.js" @@ -19,7 +19,7 @@ export type GitSource = Reference.GitSource export const Source = Reference.Source export type Source = Reference.Source -export { Event } from "@opencode-ai/schema/reference" +export { Event } from "@opencode/schema/reference" export const Info = Reference.Info export type Info = Reference.Info diff --git a/packages/core/src/reference/instructions.ts b/packages/core/src/reference/instructions.ts index 2aa84e1a6bb..36d40887339 100644 --- a/packages/core/src/reference/instructions.ts +++ b/packages/core/src/reference/instructions.ts @@ -1,6 +1,6 @@ export * as ReferenceInstructions from "./instructions.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Schema } from "effect" import { Reference } from "../reference.js" import { Instructions } from "../instructions/index.js" diff --git a/packages/core/src/repository-cache.ts b/packages/core/src/repository-cache.ts index a16f6512af3..c6d664a6af4 100644 --- a/packages/core/src/repository-cache.ts +++ b/packages/core/src/repository-cache.ts @@ -7,13 +7,13 @@ */ import path from "path" import { Clock, Context, Duration, Effect, Layer, Option, Schema } from "effect" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Git } from "./git.js" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Repository } from "./repository.js" import { AbsolutePath } from "./schema.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { EffectFlock } from "@opencode-ai/util/effect-flock" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { EffectFlock } from "@opencode/util/effect-flock" import { KV } from "./kv.js" const Refresh = Schema.Struct({ diff --git a/packages/core/src/ripgrep.ts b/packages/core/src/ripgrep.ts index c40b2936918..82841581c6b 100644 --- a/packages/core/src/ripgrep.ts +++ b/packages/core/src/ripgrep.ts @@ -2,9 +2,9 @@ export * as Ripgrep from "./ripgrep.js" import { Context, Effect, Fiber, Layer, Schema, Stream } from "effect" import { ChildProcess } from "effect/unstable/process" -import { Entry, Match } from "@opencode-ai/schema/filesystem" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { collectStream, waitForAbort } from "@opencode-ai/util/process" +import { Entry, Match } from "@opencode/schema/filesystem" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { collectStream, waitForAbort } from "@opencode/util/process" import { Environment } from "./environment/index.js" import { NonNegativeInt, PositiveInt, RelativePath } from "./schema.js" import { RipgrepBinary } from "./ripgrep/binary.js" diff --git a/packages/core/src/ripgrep/binary.ts b/packages/core/src/ripgrep/binary.ts index 594f87f123b..4ca73e8bb8d 100644 --- a/packages/core/src/ripgrep/binary.ts +++ b/packages/core/src/ripgrep/binary.ts @@ -3,11 +3,11 @@ import { Context, Effect, Layer, Stream } from "effect" import { HttpClient, HttpClientRequest } from "effect/unstable/http" import { ChildProcess } from "effect/unstable/process" import { ChildProcessSpawner } from "effect/unstable/process/ChildProcessSpawner" -import { CrossSpawnSpawner } from "@opencode-ai/util/cross-spawn-spawner" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { httpClient } from "@opencode-ai/util/effect/app-node-platform" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { CrossSpawnSpawner } from "@opencode/util/cross-spawn-spawner" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { httpClient } from "@opencode/util/effect/app-node-platform" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { which } from "../util/which.js" export namespace RipgrepBinary { diff --git a/packages/core/src/rpc.ts b/packages/core/src/rpc.ts index d085abc890d..94bd3763799 100644 --- a/packages/core/src/rpc.ts +++ b/packages/core/src/rpc.ts @@ -1,13 +1,13 @@ export * as Rpc from "./rpc.js" -export { define } from "@opencode-ai/schema/rpc" -export type { Definition, EventPayload, Failure } from "@opencode-ai/schema/rpc" +export { define } from "@opencode/schema/rpc" +export type { Definition, EventPayload, Failure } from "@opencode/schema/rpc" -import type { RpcClient, RpcDomain, RpcHandlers } from "@opencode-ai/plugin/effect/rpc" -import type { Rpc } from "@opencode-ai/schema/rpc" -import { Event } from "@opencode-ai/schema/event" -import type { Tool } from "@opencode-ai/schema/tool" +import type { RpcClient, RpcDomain, RpcHandlers } from "@opencode/plugin/effect/rpc" +import type { Rpc } from "@opencode/schema/rpc" +import { Event } from "@opencode/schema/event" +import type { Tool } from "@opencode/schema/tool" import type { StandardSchemaV1 } from "@standard-schema/spec" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, JsonSchema, Layer, Schema, SchemaRepresentation, Stream } from "effect" import { Bus } from "./bus.js" import { Location } from "./location.js" diff --git a/packages/core/src/schema.ts b/packages/core/src/schema.ts index 24c2c68baf7..eb0ae4b07dc 100644 --- a/packages/core/src/schema.ts +++ b/packages/core/src/schema.ts @@ -7,7 +7,7 @@ import { PositiveInt, RelativePath, statics, -} from "@opencode-ai/schema/schema" +} from "@opencode/schema/schema" export { AbsolutePath, DateTimeUtcFromMillis, NonNegativeInt, optional, PositiveInt, RelativePath, statics } diff --git a/packages/core/src/session.ts b/packages/core/src/session.ts index 3e8fdb57777..04429fd2315 100644 --- a/packages/core/src/session.ts +++ b/packages/core/src/session.ts @@ -2,14 +2,14 @@ export * as Session from "./session.js" export * from "./session/schema.js" import { Effect, Layer, Schema, Context, Stream } from "effect" -import { LLMClient } from "@opencode-ai/ai" -import { ListAnchor } from "@opencode-ai/schema/session" +import { LLMClient } from "@opencode/ai" +import { ListAnchor } from "@opencode/schema/session" import { and, desc, eq } from "drizzle-orm" import { Project } from "./project.js" -import { Model } from "@opencode-ai/schema/model" +import { Model } from "@opencode/schema/model" import { Location } from "./location.js" import { SessionMessage } from "./session/message.js" -import { PromptInput } from "@opencode-ai/schema/prompt-input" +import { PromptInput } from "@opencode/schema/prompt-input" import { Bus } from "./bus.js" import { Instance } from "./instance/service.js" import { Database } from "./database/database.js" @@ -17,7 +17,7 @@ import { SessionProjector } from "./session/projector.js" import { SessionMessageTable } from "./session/sql.js" import { SessionSchema } from "./session/schema.js" import { RelativePath } from "./schema.js" -import { Agent } from "@opencode-ai/schema/agent" +import { Agent } from "@opencode/schema/agent" import { App } from "./app.js" import { Slug } from "./util/slug.js" import path from "path" @@ -40,8 +40,8 @@ import { SkillNotFoundError, SyntheticConflictError, } from "./session/error.js" -import { Node } from "@opencode-ai/util/effect/app-node" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Node } from "@opencode/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" import { SessionEvent } from "./session/event.js" import { SessionInbox } from "./session/inbox.js" import { InstructionState } from "./session/instruction-state.js" @@ -57,8 +57,8 @@ import { SessionModelTransport } from "./session/model-transport.js" import { llmClient } from "./effect/app-node-platform.js" import { Snapshot } from "./snapshot.js" import { Session } from "./session/session.js" -import { FSUtil } from "@opencode-ai/util/fs-util" -import type { EventLog } from "@opencode-ai/schema/event-log" +import { FSUtil } from "@opencode/util/fs-util" +import type { EventLog } from "@opencode/schema/event-log" import { Job } from "./job.js" import type { Command } from "./command.js" import { SessionEnvironment } from "./session/environment.js" diff --git a/packages/core/src/session/command.ts b/packages/core/src/session/command.ts index e7bba05bc76..302f12e40c4 100644 --- a/packages/core/src/session/command.ts +++ b/packages/core/src/session/command.ts @@ -1,8 +1,8 @@ export * as SessionCommand from "./command.js" -import type { PromptInput } from "@opencode-ai/schema/prompt-input" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" +import type { PromptInput } from "@opencode/schema/prompt-input" +import type { Session } from "@opencode/schema/session" +import type { SessionInbox } from "@opencode/schema/session-inbox" import { Effect } from "effect" import { Command } from "../command.js" import { Instance } from "../instance/service.js" diff --git a/packages/core/src/session/compaction.ts b/packages/core/src/session/compaction.ts index 38da673fc1d..d3d44ee4965 100644 --- a/packages/core/src/session/compaction.ts +++ b/packages/core/src/session/compaction.ts @@ -10,13 +10,13 @@ import { LLMRequest, Message, type ContentPart, -} from "@opencode-ai/ai" -import { Agent } from "@opencode-ai/schema/agent" -import { SessionError } from "@opencode-ai/schema/session-error" +} from "@opencode/ai" +import { Agent } from "@opencode/schema/agent" +import { SessionError } from "@opencode/schema/session-error" import { Context, Effect, Layer, Stream } from "effect" import { Bus } from "../bus.js" import { Database } from "../database/database.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { llmClient } from "../effect/app-node-platform.js" import { SessionEvent } from "./event.js" import type { SessionContext } from "./context.js" diff --git a/packages/core/src/session/context.ts b/packages/core/src/session/context.ts index 81afec73872..f2afd986dde 100644 --- a/packages/core/src/session/context.ts +++ b/packages/core/src/session/context.ts @@ -1,12 +1,12 @@ export * as SessionContext from "./context.js" -import { Model } from "@opencode-ai/schema/model" +import { Model } from "@opencode/schema/model" import { Context, Effect, Layer } from "effect" import { Agent } from "../agent.js" import { Catalog } from "../catalog.js" import { CodeModeInstructions } from "../codemode/instructions.js" import { Database } from "../database/database.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { InstructionDiscovery } from "../instruction-discovery.js" import { Instructions } from "../instructions/index.js" import { InstructionBuiltIns } from "../instructions/builtins.js" diff --git a/packages/core/src/session/environment.ts b/packages/core/src/session/environment.ts index d6671703ad2..0991badb57d 100644 --- a/packages/core/src/session/environment.ts +++ b/packages/core/src/session/environment.ts @@ -1,7 +1,7 @@ export * as SessionEnvironment from "./environment.js" import { Context, Effect, Layer } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { SessionSchema } from "./schema.js" export type Variables = Readonly> diff --git a/packages/core/src/session/error.ts b/packages/core/src/session/error.ts index 13eaae975f0..2f98c65ee0b 100644 --- a/packages/core/src/session/error.ts +++ b/packages/core/src/session/error.ts @@ -1,11 +1,11 @@ export * as SessionErrors from "./error.js" import { Schema } from "effect" -import { Agent } from "@opencode-ai/schema/agent" -import { Skill } from "@opencode-ai/schema/skill" +import { Agent } from "@opencode/schema/agent" +import { Skill } from "@opencode/schema/skill" import { SessionMessage } from "./message.js" import { SessionSchema } from "./schema.js" -import { SessionError } from "@opencode-ai/schema/session-error" +import { SessionError } from "@opencode/schema/session-error" export class NotFoundError extends Schema.TaggedError()("Session.NotFoundError", { sessionID: SessionSchema.ID, diff --git a/packages/core/src/session/event.ts b/packages/core/src/session/event.ts index 78e40a69941..bc59fe63bd2 100644 --- a/packages/core/src/session/event.ts +++ b/packages/core/src/session/event.ts @@ -1,2 +1,2 @@ -export * from "@opencode-ai/schema/session-event" -export * as SessionEvent from "@opencode-ai/schema/session-event" +export * from "@opencode/schema/session-event" +export * as SessionEvent from "@opencode/schema/session-event" diff --git a/packages/core/src/session/execution.ts b/packages/core/src/session/execution.ts index 3e15f306ba4..0932c5f5b5d 100644 --- a/packages/core/src/session/execution.ts +++ b/packages/core/src/session/execution.ts @@ -5,7 +5,7 @@ import { Bus } from "../bus.js" import { Database } from "../database/database.js" import { Job } from "../job.js" import { Instance } from "../instance/service.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { SessionEvent } from "./event.js" import { SessionRunCoordinator } from "./run-coordinator.js" import { SessionRunner } from "./runner/index.js" diff --git a/packages/core/src/session/execution/restart.ts b/packages/core/src/session/execution/restart.ts index af048a1e9da..72f606416c3 100644 --- a/packages/core/src/session/execution/restart.ts +++ b/packages/core/src/session/execution/restart.ts @@ -1,7 +1,7 @@ export * as SessionRestart from "./restart.js" import { Context, Effect, Layer } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Bus } from "../../bus.js" import { Job } from "../../job.js" import { Session } from "../../session.js" diff --git a/packages/core/src/session/generate.ts b/packages/core/src/session/generate.ts index 71694f8683d..47b9dd1f6e5 100644 --- a/packages/core/src/session/generate.ts +++ b/packages/core/src/session/generate.ts @@ -1,6 +1,6 @@ export * as SessionGenerate from "./generate.js" -import { LLMClient, Message, type AIError } from "@opencode-ai/ai" +import { LLMClient, Message, type AIError } from "@opencode/ai" import { Effect } from "effect" import { Database } from "../database/database.js" import { Instance } from "../instance/service.js" diff --git a/packages/core/src/session/inbox.ts b/packages/core/src/session/inbox.ts index 727389c9644..a91eed65af1 100644 --- a/packages/core/src/session/inbox.ts +++ b/packages/core/src/session/inbox.ts @@ -2,7 +2,7 @@ export * as SessionInbox from "./inbox.js" import { and, asc, eq, or } from "drizzle-orm" import { Context, DateTime, Effect, Layer, Schema } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Compaction, CompactionPayload, @@ -15,7 +15,7 @@ import { SyntheticPayload, User, UserPayload, -} from "@opencode-ai/schema/session-inbox" +} from "@opencode/schema/session-inbox" import { Database } from "../database/database.js" import { Bus } from "../bus.js" import { KeyedMutex } from "../effect/keyed-mutex.js" diff --git a/packages/core/src/session/info.ts b/packages/core/src/session/info.ts index d5fe96885fa..1ae8adc3a20 100644 --- a/packages/core/src/session/info.ts +++ b/packages/core/src/session/info.ts @@ -1,15 +1,15 @@ import { DateTime, Schema } from "effect" -import { Agent } from "@opencode-ai/schema/agent" -import { Location } from "@opencode-ai/schema/location" -import { Model } from "@opencode-ai/schema/model" -import { Project } from "@opencode-ai/schema/project" -import { Provider } from "@opencode-ai/schema/provider" +import { Agent } from "@opencode/schema/agent" +import { Location } from "@opencode/schema/location" +import { Model } from "@opencode/schema/model" +import { Project } from "@opencode/schema/project" +import { Provider } from "@opencode/schema/provider" import { AbsolutePath, RelativePath } from "../schema.js" -import { Workspace } from "@opencode-ai/schema/workspace" +import { Workspace } from "@opencode/schema/workspace" import { SessionSchema } from "./schema.js" import type { SessionTable } from "./sql.js" -import { PersistedRevert } from "@opencode-ai/schema/session-revert" -import { Money } from "@opencode-ai/schema/money" +import { PersistedRevert } from "@opencode/schema/session-revert" +import { Money } from "@opencode/schema/money" const decodeRevert = Schema.decodeUnknownSync(PersistedRevert) diff --git a/packages/core/src/session/instruction-entry.ts b/packages/core/src/session/instruction-entry.ts index 8a7ed643909..517e7766743 100644 --- a/packages/core/src/session/instruction-entry.ts +++ b/packages/core/src/session/instruction-entry.ts @@ -2,9 +2,9 @@ export * as InstructionEntry from "./instruction-entry.js" import { and, asc, eq, isNotNull, isNull, ne, or } from "drizzle-orm" import { Context, Effect, Layer, Schema } from "effect" -import { InstructionEntry } from "@opencode-ai/schema/instruction-entry" +import { InstructionEntry } from "@opencode/schema/instruction-entry" import { Database } from "../database/database.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Instructions } from "../instructions/index.js" import { SessionSchema } from "./schema.js" import { InstructionEntryTable } from "./sql.js" diff --git a/packages/core/src/session/instructions.ts b/packages/core/src/session/instructions.ts index 190003b3b41..1165ea6e6d1 100644 --- a/packages/core/src/session/instructions.ts +++ b/packages/core/src/session/instructions.ts @@ -2,9 +2,9 @@ export * as SessionInstructions from "./instructions.js" import { relative } from "path" import { Context, Effect, Layer, Option, Ref, Schema } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Bus } from "../bus.js" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Location } from "../location.js" import { SessionEvent } from "./event.js" import { MessageDecodeError } from "./error.js" diff --git a/packages/core/src/session/message.ts b/packages/core/src/session/message.ts index d1d7189b1db..5ced40fa772 100644 --- a/packages/core/src/session/message.ts +++ b/packages/core/src/session/message.ts @@ -1,2 +1,2 @@ -export * as SessionMessage from "@opencode-ai/schema/session-message" -export * from "@opencode-ai/schema/session-message" +export * as SessionMessage from "@opencode/schema/session-message" +export * from "@opencode/schema/session-message" diff --git a/packages/core/src/session/model-request.ts b/packages/core/src/session/model-request.ts index ce097b4940b..83a27358bdd 100644 --- a/packages/core/src/session/model-request.ts +++ b/packages/core/src/session/model-request.ts @@ -1,14 +1,14 @@ export * as SessionModelRequest from "./model-request.js" -import { HttpOptions, LanguageModel, LLM, LLMRequest, Message, SystemPart } from "@opencode-ai/ai" -import type { StreamOptions } from "@opencode-ai/ai/route" -import type { SessionRequestKind } from "@opencode-ai/plugin/effect/session" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Model } from "@opencode-ai/schema/model" -import type { Content } from "@opencode-ai/schema/tool" +import { HttpOptions, LanguageModel, LLM, LLMRequest, Message, SystemPart } from "@opencode/ai" +import type { StreamOptions } from "@opencode/ai/route" +import type { SessionRequestKind } from "@opencode/plugin/effect/session" +import type { Agent } from "@opencode/schema/agent" +import type { Model } from "@opencode/schema/model" +import type { Content } from "@opencode/schema/tool" import { Cause, Config, Context, Effect, Layer, Result, Stream } from "effect" import { HttpClientRequest, HttpClientResponse } from "effect/unstable/http" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { App } from "../app.js" import { Permission } from "../permission.js" import { PluginHooks } from "../plugin/hooks.js" diff --git a/packages/core/src/session/model-transport.ts b/packages/core/src/session/model-transport.ts index b6d8f3a3a21..5877443d24b 100644 --- a/packages/core/src/session/model-transport.ts +++ b/packages/core/src/session/model-transport.ts @@ -9,12 +9,12 @@ import { type WebSocketChannelExecutor, type WebSocketConnection, type WebSocketConnector, -} from "@opencode-ai/ai/route" -import { AIError, AIErrorReason, TransportError, type TransportOperation } from "@opencode-ai/ai" -import { Hash } from "@opencode-ai/util/hash" +} from "@opencode/ai/route" +import { AIError, AIErrorReason, TransportError, type TransportOperation } from "@opencode/ai" +import { Hash } from "@opencode/util/hash" import { Cause, Clock, Context, Effect, Fiber, Layer, Metric, Queue, Scope, Semaphore, Stream } from "effect" import { Socket } from "effect/unstable/socket" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { SessionSchema } from "./schema.js" import { webSocketConstructor } from "../effect/app-node-platform.js" diff --git a/packages/core/src/session/move.ts b/packages/core/src/session/move.ts index 1a66df00cba..f11e4990031 100644 --- a/packages/core/src/session/move.ts +++ b/packages/core/src/session/move.ts @@ -1,9 +1,9 @@ export * as SessionMove from "./move.js" -import type { Session } from "@opencode-ai/schema/session" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import type { Session } from "@opencode/schema/session" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { Cause, Context, Effect, Layer, Schema } from "effect" import path from "path" import { Bus } from "../bus.js" diff --git a/packages/core/src/session/projector.ts b/packages/core/src/session/projector.ts index 8cebd9c1dab..dbc9d90950d 100644 --- a/packages/core/src/session/projector.ts +++ b/packages/core/src/session/projector.ts @@ -5,22 +5,22 @@ import { DateTime, Effect, Layer, Schema, Stream } from "effect" import path from "path" import { Database } from "../database/database.js" import { Bus } from "../bus.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Agent } from "@opencode-ai/schema/agent" -import { Model } from "@opencode-ai/schema/model" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Agent } from "@opencode/schema/agent" +import { Model } from "@opencode/schema/model" import { SessionEvent } from "./event.js" import { SessionMessage } from "./message.js" import { SessionMessageUpdater } from "./message-updater.js" import { SessionInbox } from "./inbox.js" -import { Workspace } from "@opencode-ai/schema/workspace" +import { Workspace } from "@opencode/schema/workspace" import { InstructionState } from "./instruction-state.js" import { SessionInboxTable, SessionMessageTable, SessionTable } from "./sql.js" import { InstructionEntry } from "./instruction-entry.js" import { Slug } from "../util/slug.js" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Money } from "@opencode-ai/schema/money" -import { Worktree } from "@opencode-ai/schema/worktree" -import { Project } from "@opencode-ai/schema/project" +import { FSUtil } from "@opencode/util/fs-util" +import { Money } from "@opencode/schema/money" +import { Worktree } from "@opencode/schema/worktree" +import { Project } from "@opencode/schema/project" import { AbsolutePath, RelativePath } from "../schema.js" import type { SessionSchema } from "./schema.js" import { ProjectTable } from "../project/sql.js" diff --git a/packages/core/src/session/prompt.ts b/packages/core/src/session/prompt.ts index e06290bd1a6..bb552681e77 100644 --- a/packages/core/src/session/prompt.ts +++ b/packages/core/src/session/prompt.ts @@ -1,11 +1,11 @@ export * as SessionPrompt from "./prompt.js" -import { Base64, FileAttachment, Prompt } from "@opencode-ai/schema/prompt" -import { PromptInput } from "@opencode-ai/schema/prompt-input" -import { SessionInbox } from "@opencode-ai/schema/session-inbox" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionMessage } from "@opencode-ai/schema/session-message" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { Base64, FileAttachment, Prompt } from "@opencode/schema/prompt" +import { PromptInput } from "@opencode/schema/prompt-input" +import { SessionInbox } from "@opencode/schema/session-inbox" +import type { Session } from "@opencode/schema/session" +import type { SessionMessage } from "@opencode/schema/session-message" +import { FSUtil } from "@opencode/util/fs-util" import { Effect } from "effect" import path from "path" import { fileURLToPath } from "url" diff --git a/packages/core/src/session/provider-context.ts b/packages/core/src/session/provider-context.ts index 4880a45772e..b6d22302eda 100644 --- a/packages/core/src/session/provider-context.ts +++ b/packages/core/src/session/provider-context.ts @@ -1,10 +1,10 @@ export * as SessionProviderContext from "./provider-context.js" -import { Message } from "@opencode-ai/ai" -import { SessionProviderContext } from "@opencode-ai/schema/session-provider-context" +import { Message } from "@opencode/ai" +import { SessionProviderContext } from "@opencode/schema/session-provider-context" import { Schema } from "effect" import { isDeepStrictEqual } from "node:util" -import { Hash } from "@opencode-ai/util/hash" +import { Hash } from "@opencode/util/hash" import type { SessionMessage } from "./message.js" import type { SessionRunnerModel } from "./runner/model.js" diff --git a/packages/core/src/session/runner/index.ts b/packages/core/src/session/runner/index.ts index 38cb3afdef4..749902ee748 100644 --- a/packages/core/src/session/runner/index.ts +++ b/packages/core/src/session/runner/index.ts @@ -1,6 +1,6 @@ export * as SessionRunner from "./index.js" -import type { AIError } from "@opencode-ai/ai" +import type { AIError } from "@opencode/ai" import { Context, Data, Effect } from "effect" import { SessionSchema } from "../schema.js" import type { Promotable } from "../inbox.js" diff --git a/packages/core/src/session/runner/llm.ts b/packages/core/src/session/runner/llm.ts index e0bc68fa574..d6c6992fd6a 100644 --- a/packages/core/src/session/runner/llm.ts +++ b/packages/core/src/session/runner/llm.ts @@ -1,6 +1,6 @@ export * as SessionRunnerLLM from "./llm.js" -import { Message } from "@opencode-ai/ai" +import { Message } from "@opencode/ai" import { and, desc, eq, sql } from "drizzle-orm" import { Cause, Effect, Exit, FiberMap, Layer } from "effect" import { Database } from "../../database/database.js" @@ -21,7 +21,7 @@ import { SessionMessageTable } from "../sql.js" import { SessionTitle } from "../title.js" import { DrainResult, Service, type Interface } from "./index.js" import { Snapshot } from "../../snapshot.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { llmClient } from "../../effect/app-node-platform.js" import { StepFailedError } from "../error.js" import { SessionRunnerRetry } from "./retry.js" diff --git a/packages/core/src/session/runner/model.ts b/packages/core/src/session/runner/model.ts index 2afc1af49e2..a6f6734d41b 100644 --- a/packages/core/src/session/runner/model.ts +++ b/packages/core/src/session/runner/model.ts @@ -1,9 +1,9 @@ export * as SessionRunnerModel from "./model.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { LanguageModel } from "@opencode-ai/ai" -import { Model } from "@opencode-ai/schema/model" -import { Provider } from "@opencode-ai/schema/provider" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { LanguageModel } from "@opencode/ai" +import { Model } from "@opencode/schema/model" +import { Provider } from "@opencode/schema/provider" import { Context, Effect, Layer, Schema } from "effect" import { ModelResolver } from "../../model-resolver.js" import { SessionSchema } from "../schema.js" diff --git a/packages/core/src/session/runner/publish-llm-event.ts b/packages/core/src/session/runner/publish-llm-event.ts index eed6e5b8b55..729f70d8678 100644 --- a/packages/core/src/session/runner/publish-llm-event.ts +++ b/packages/core/src/session/runner/publish-llm-event.ts @@ -1,16 +1,16 @@ -import { type LLMEvent, type ProviderMetadata, type ToolResultValue } from "@opencode-ai/ai" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Model } from "@opencode-ai/schema/model" -import type { RelativePath } from "@opencode-ai/schema/schema" -import type { Snapshot } from "@opencode-ai/schema/snapshot" +import { type LLMEvent, type ProviderMetadata, type ToolResultValue } from "@opencode/ai" +import type { Agent } from "@opencode/schema/agent" +import type { Model } from "@opencode/schema/model" +import type { RelativePath } from "@opencode/schema/schema" +import type { Snapshot } from "@opencode/schema/snapshot" import { Effect, Fiber, Iterable } from "effect" import { isReadonlyArrayNonEmpty } from "effect/Array" import { Bus } from "../../bus.js" import { SessionEvent } from "../event.js" import { SessionMessage } from "../message.js" import { SessionSchema } from "../schema.js" -import { SessionError } from "@opencode-ai/schema/session-error" -import { Money } from "@opencode-ai/schema/money" +import { SessionError } from "@opencode/schema/session-error" +import { Money } from "@opencode/schema/money" import { SessionUsage } from "../usage.js" import type { Tool } from "../../tool.js" diff --git a/packages/core/src/session/runner/retry.ts b/packages/core/src/session/runner/retry.ts index f508c6981bd..a010a8e52f0 100644 --- a/packages/core/src/session/runner/retry.ts +++ b/packages/core/src/session/runner/retry.ts @@ -1,9 +1,9 @@ export * as SessionRunnerRetry from "./retry.js" -import { AIError, isContextOverflowFailure } from "@opencode-ai/ai" -import { Agent } from "@opencode-ai/schema/agent" -import { Model } from "@opencode-ai/schema/model" -import { SessionError } from "@opencode-ai/schema/session-error" +import { AIError, isContextOverflowFailure } from "@opencode/ai" +import { Agent } from "@opencode/schema/agent" +import { Model } from "@opencode/schema/model" +import { SessionError } from "@opencode/schema/session-error" import { Clock, Duration, Effect, Pull, Schedule } from "effect" import { Bus } from "../../bus.js" import type { PluginHooks } from "../../plugin/hooks.js" diff --git a/packages/core/src/session/runner/step.ts b/packages/core/src/session/runner/step.ts index e827c216b5e..919ea8676fa 100644 --- a/packages/core/src/session/runner/step.ts +++ b/packages/core/src/session/runner/step.ts @@ -8,10 +8,10 @@ import { isContextOverflowFailure, type ProviderErrorEvent, type ToolCall, -} from "@opencode-ai/ai" -import type { Agent } from "@opencode-ai/schema/agent" +} from "@opencode/ai" +import type { Agent } from "@opencode/schema/agent" import { Cause, Data, Effect, Exit, Fiber, Option, Stream } from "effect" -import { SessionError } from "@opencode-ai/schema/session-error" +import { SessionError } from "@opencode/schema/session-error" import { Bus } from "../../bus.js" import { Permission } from "../../permission.js" import { Snapshot } from "../../snapshot.js" diff --git a/packages/core/src/session/runner/to-llm-message.ts b/packages/core/src/session/runner/to-llm-message.ts index 17fb423c5b4..37840abc0c0 100644 --- a/packages/core/src/session/runner/to-llm-message.ts +++ b/packages/core/src/session/runner/to-llm-message.ts @@ -1,10 +1,10 @@ -import { Message, ToolCallPart, ToolResultPart, type ContentPart, type ProviderMetadata } from "@opencode-ai/ai" -import type { Model } from "@opencode-ai/schema/model" +import { Message, ToolCallPart, ToolResultPart, type ContentPart, type ProviderMetadata } from "@opencode/ai" +import type { Model } from "@opencode/schema/model" import { Option, Schema } from "effect" import { fileURLToPath } from "url" import { SessionMessage } from "../message.js" import { SessionProviderContext } from "../provider-context.js" -import type { FileAttachment } from "@opencode-ai/schema/prompt" +import type { FileAttachment } from "@opencode/schema/prompt" const imageMimes = new Set(["image/png", "image/jpeg", "image/gif", "image/webp"]) @@ -299,7 +299,7 @@ ${message.recent} } } -/** Translate projected Session history into canonical @opencode-ai/ai context. */ +/** Translate projected Session history into canonical @opencode/ai context. */ export const toLLMMessages = ( messages: readonly SessionMessage.Info[], model: Model.Ref, diff --git a/packages/core/src/session/schema.ts b/packages/core/src/session/schema.ts index bba2b61e9ea..175ec9829d6 100644 --- a/packages/core/src/session/schema.ts +++ b/packages/core/src/session/schema.ts @@ -1,6 +1,6 @@ -export * as SessionSchema from "@opencode-ai/schema/session" +export * as SessionSchema from "@opencode/schema/session" -import { Session } from "@opencode-ai/schema/session" +import { Session } from "@opencode/schema/session" export const ID = Session.ID export type ID = typeof ID.Type diff --git a/packages/core/src/session/session.ts b/packages/core/src/session/session.ts index b67366ce004..52023e41029 100644 --- a/packages/core/src/session/session.ts +++ b/packages/core/src/session/session.ts @@ -1,10 +1,10 @@ export * as Session from "./session.js" import { DateTime, Effect, Fiber, Schema, Scope } from "effect" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Model } from "@opencode-ai/schema/model" -import { Event } from "@opencode-ai/schema/event" -import { FSUtil } from "@opencode-ai/util/fs-util" +import type { Agent } from "@opencode/schema/agent" +import type { Model } from "@opencode/schema/model" +import { Event } from "@opencode/schema/event" +import { FSUtil } from "@opencode/util/fs-util" import { Bus } from "../bus.js" import { Database } from "../database/database.js" import { Instance } from "../instance/service.js" diff --git a/packages/core/src/session/shell.ts b/packages/core/src/session/shell.ts index 7ed73d9035d..b4e2a1a7d3d 100644 --- a/packages/core/src/session/shell.ts +++ b/packages/core/src/session/shell.ts @@ -1,6 +1,6 @@ export * as SessionShell from "./shell.js" -import type { Session } from "@opencode-ai/schema/session" +import type { Session } from "@opencode/schema/session" import { Effect } from "effect" import { Instance } from "../instance/service.js" import { Plugin } from "../plugin/service.js" diff --git a/packages/core/src/session/skill.ts b/packages/core/src/session/skill.ts index 0300e51e5f7..69d200c1d58 100644 --- a/packages/core/src/session/skill.ts +++ b/packages/core/src/session/skill.ts @@ -1,6 +1,6 @@ export * as SessionSkill from "./skill.js" -import type { Session } from "@opencode-ai/schema/session" +import type { Session } from "@opencode/schema/session" import { Effect } from "effect" import { Instance } from "../instance/service.js" import { Plugin } from "../plugin/service.js" diff --git a/packages/core/src/session/sql.ts b/packages/core/src/session/sql.ts index facad140a46..59d3a7231da 100644 --- a/packages/core/src/session/sql.ts +++ b/packages/core/src/session/sql.ts @@ -4,16 +4,16 @@ import { directoryColumn, pathColumn } from "../database/path.js" import { ProjectTable } from "../project/sql.js" import type { SessionMessage } from "./message.js" import type { SessionInbox } from "./inbox.js" -import type { FileDiff } from "@opencode-ai/schema/file-diff" -import type { PermissionV1 } from "@opencode-ai/schema/permission-v1" -import type { Project } from "@opencode-ai/schema/project" +import type { FileDiff } from "@opencode/schema/file-diff" +import type { PermissionV1 } from "@opencode/schema/permission-v1" +import type { Project } from "@opencode/schema/project" import type { SessionSchema } from "./schema.js" -import type { Workspace } from "@opencode-ai/schema/workspace" +import type { Workspace } from "@opencode/schema/workspace" import { Timestamps } from "../database/schema.sql.js" -import type { Instruction } from "@opencode-ai/schema/instruction" -import type { Session } from "@opencode-ai/schema/session" -import type { CompactionPayload, MovePayload, SyntheticPayload, UserPayload } from "@opencode-ai/schema/session-inbox" -import type { RevertV1 } from "@opencode-ai/schema/session-revert" +import type { Instruction } from "@opencode/schema/instruction" +import type { Session } from "@opencode/schema/session" +import type { CompactionPayload, MovePayload, SyntheticPayload, UserPayload } from "@opencode/schema/session-inbox" +import type { RevertV1 } from "@opencode/schema/session-revert" import type { Schema } from "effect" type DistributiveOmit = T extends unknown ? Omit : never diff --git a/packages/core/src/session/stats.ts b/packages/core/src/session/stats.ts index 0704d97bf6d..952c6e9f50d 100644 --- a/packages/core/src/session/stats.ts +++ b/packages/core/src/session/stats.ts @@ -2,13 +2,13 @@ export * as SessionStats from "./stats.js" import { DateTime, Effect, Option, Schema } from "effect" import { and, eq, gte, inArray, lt, sql } from "drizzle-orm" -import { Model } from "@opencode-ai/schema/model" -import { Money } from "@opencode-ai/schema/money" -import { Project } from "@opencode-ai/schema/project" -import { Provider } from "@opencode-ai/schema/provider" -import { SessionEvent } from "@opencode-ai/schema/session-event" -import { ToolMode } from "@opencode-ai/schema/session-stats" -import { TokenUsage } from "@opencode-ai/schema/token-usage" +import { Model } from "@opencode/schema/model" +import { Money } from "@opencode/schema/money" +import { Project } from "@opencode/schema/project" +import { Provider } from "@opencode/schema/provider" +import { SessionEvent } from "@opencode/schema/session-event" +import { ToolMode } from "@opencode/schema/session-stats" +import { TokenUsage } from "@opencode/schema/token-usage" import { Database } from "../database/database.js" import { EventTable } from "../event/sql.js" import { SessionMessageTable, SessionTable } from "./sql.js" diff --git a/packages/core/src/session/store.ts b/packages/core/src/session/store.ts index 427d62601ba..c01abb3e2e2 100644 --- a/packages/core/src/session/store.ts +++ b/packages/core/src/session/store.ts @@ -2,15 +2,15 @@ export * as SessionStore from "./store.js" import { and, asc, desc, eq, gt, isNotNull, isNull, like, lt, notInArray, or, sql, type SQL } from "drizzle-orm" import { Context, Effect, Layer, Schema } from "effect" -import { Project } from "@opencode-ai/schema/project" -import { Workspace } from "@opencode-ai/schema/workspace" -import { AbsolutePath, PositiveInt, RelativePath } from "@opencode-ai/schema/schema" +import { Project } from "@opencode/schema/project" +import { Workspace } from "@opencode/schema/workspace" +import { AbsolutePath, PositiveInt, RelativePath } from "@opencode/schema/schema" import { Database } from "../database/database.js" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { SessionHistory } from "./history.js" import { MessageDecodeError } from "./error.js" import { SessionMessage } from "./message.js" -import { Session } from "@opencode-ai/schema/session" +import { Session } from "@opencode/schema/session" import { SessionMessageTable, SessionTable } from "./sql.js" import { fromRow } from "./info.js" diff --git a/packages/core/src/session/title.ts b/packages/core/src/session/title.ts index 7fbbfdcf1ab..83066d1e790 100644 --- a/packages/core/src/session/title.ts +++ b/packages/core/src/session/title.ts @@ -1,13 +1,13 @@ export * as SessionTitle from "./title.js" import { isDeepStrictEqual } from "node:util" -import { LLMClient, LLMEvent, Message, SystemPart } from "@opencode-ai/ai" -import type { Agent } from "@opencode-ai/schema/agent" +import { LLMClient, LLMEvent, Message, SystemPart } from "@opencode/ai" +import type { Agent } from "@opencode/schema/agent" import { Context, DateTime, Effect, Layer, Stream } from "effect" import { Database } from "../database/database.js" import { Bus } from "../bus.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { isExactRootFallback } from "@opencode-ai/util/session-title-fallback" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { isExactRootFallback } from "@opencode/util/session-title-fallback" import { llmClient } from "../effect/app-node-platform.js" import { SessionContext } from "./context.js" import { SessionEvent } from "./event.js" diff --git a/packages/core/src/session/to-session-error.ts b/packages/core/src/session/to-session-error.ts index bcbc9626e01..e9306f9491d 100644 --- a/packages/core/src/session/to-session-error.ts +++ b/packages/core/src/session/to-session-error.ts @@ -1,6 +1,6 @@ -import { AIError, ToolFailure } from "@opencode-ai/ai" -import { Tool } from "@opencode-ai/schema/tool" -import { SessionError } from "@opencode-ai/schema/session-error" +import { AIError, ToolFailure } from "@opencode/ai" +import { Tool } from "@opencode/schema/tool" +import { SessionError } from "@opencode/schema/session-error" import { Permission } from "../permission.js" import { Integration } from "../integration.js" import { AgentNotFoundError, StepFailedError, UserInterruptedError } from "./error.js" diff --git a/packages/core/src/session/transfer.ts b/packages/core/src/session/transfer.ts index 6484602cb93..9f018c66b12 100644 --- a/packages/core/src/session/transfer.ts +++ b/packages/core/src/session/transfer.ts @@ -1,13 +1,13 @@ export * as SessionTransfer from "./transfer.js" -import { SessionTransfer } from "@opencode-ai/schema/session-transfer" -import { Tool } from "@opencode-ai/schema/tool" -import { Skill } from "@opencode-ai/schema/skill" +import { SessionTransfer } from "@opencode/schema/session-transfer" +import { Tool } from "@opencode/schema/tool" +import { Skill } from "@opencode/schema/skill" import { eq } from "drizzle-orm" import { Clock, Context, DateTime, Effect, Layer, Schema } from "effect" import { map } from "effect/Array" import path from "path" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { App } from "../app.js" import { Bus } from "../bus.js" import { Database } from "../database/database.js" diff --git a/packages/core/src/session/usage.ts b/packages/core/src/session/usage.ts index 569da6df93f..5a6f39a2cc6 100644 --- a/packages/core/src/session/usage.ts +++ b/packages/core/src/session/usage.ts @@ -1,9 +1,9 @@ export * as SessionUsage from "./usage.js" -import type { Usage } from "@opencode-ai/ai" -import { Money } from "@opencode-ai/schema/money" -import type { TokenUsage } from "@opencode-ai/schema/token-usage" -import type { Model } from "@opencode-ai/schema/model" +import type { Usage } from "@opencode/ai" +import { Money } from "@opencode/schema/money" +import type { TokenUsage } from "@opencode/schema/token-usage" +import type { Model } from "@opencode/schema/model" const finite = (value: number) => (Number.isFinite(value) ? value : 0) const safe = (value: number | undefined) => Math.max(0, finite(value ?? 0)) diff --git a/packages/core/src/shell.ts b/packages/core/src/shell.ts index bf147ab41a3..6f1d0363515 100644 --- a/packages/core/src/shell.ts +++ b/packages/core/src/shell.ts @@ -4,17 +4,17 @@ import path from "path" import { Context, Deferred, Duration, Effect, Fiber, Latch, Layer, Schema, Schedule, Stream } from "effect" import { ChildProcess } from "effect/unstable/process" import { produce } from "immer" -import { Shell } from "@opencode-ai/schema/shell" -import { AppProcess } from "@opencode-ai/util/process" -import { makeGlobalNode, makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { Shell } from "@opencode/schema/shell" +import { AppProcess } from "@opencode/util/process" +import { makeGlobalNode, makeLocationNode } from "@opencode/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" import { Bus } from "./bus.js" import { Environment } from "./environment/index.js" import { FileRetention } from "./file-retention.js" import { Location } from "./location.js" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { ShellSelect } from "./shell/select.js" -import type { ShellCreateBefore } from "@opencode-ai/plugin/effect/shell" +import type { ShellCreateBefore } from "@opencode/plugin/effect/shell" import { PluginHooks } from "./plugin/hooks.js" import { SessionEnvironment } from "./session/environment.js" import { SessionSchema } from "./session/schema.js" diff --git a/packages/core/src/shell/result.ts b/packages/core/src/shell/result.ts index 4c377e779b7..8860486d9fa 100644 --- a/packages/core/src/shell/result.ts +++ b/packages/core/src/shell/result.ts @@ -1,6 +1,6 @@ export * as ShellResult from "./result.js" -import type { Shell } from "@opencode-ai/schema/shell" +import type { Shell } from "@opencode/schema/shell" export type Result = { info: Shell.Info diff --git a/packages/core/src/shell/select.ts b/packages/core/src/shell/select.ts index 44445fd7783..5d0cfb022a1 100644 --- a/packages/core/src/shell/select.ts +++ b/packages/core/src/shell/select.ts @@ -4,9 +4,9 @@ import path from "path" import { readFile } from "fs/promises" import { statSync } from "fs" import { Context, Effect, Layer, Schema } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { State } from "../state.js" import { which } from "../util/which.js" diff --git a/packages/core/src/skill.ts b/packages/core/src/skill.ts index ed56dbe5d8e..c6a08eb88f1 100644 --- a/packages/core/src/skill.ts +++ b/packages/core/src/skill.ts @@ -1,11 +1,11 @@ export * as Skill from "./skill.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import type { FSUtil } from "@opencode-ai/util/fs-util" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import type { FSUtil } from "@opencode/util/fs-util" import path from "path" import { Context, Effect, Layer, Types } from "effect" -import type { Agent } from "@opencode-ai/schema/agent" -import { Skill } from "@opencode-ai/schema/skill" +import type { Agent } from "@opencode/schema/agent" +import { Skill } from "@opencode/schema/skill" import { Bus } from "./bus.js" import { Permission } from "./permission.js" import { State } from "./state.js" @@ -29,7 +29,7 @@ export type ID = Skill.ID export const Name = Skill.Name export type Name = Skill.Name -export { Event } from "@opencode-ai/schema/skill" +export { Event } from "@opencode/schema/skill" export const available = (skills: ReadonlyArray, agent: Agent.Info) => skills.filter((skill) => Permission.evaluate("skill", skill.id, agent.permissions).effect !== "deny") diff --git a/packages/core/src/skill/discovery.ts b/packages/core/src/skill/discovery.ts index 783d4c23602..f3173184cec 100644 --- a/packages/core/src/skill/discovery.ts +++ b/packages/core/src/skill/discovery.ts @@ -3,12 +3,12 @@ export * as SkillDiscovery from "./discovery.js" import path from "path" import { Context, Effect, Layer, Schedule, Schema } from "effect" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { httpClient } from "@opencode-ai/util/effect/app-node-platform" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { httpClient } from "@opencode/util/effect/app-node-platform" import { AbsolutePath } from "../schema.js" -import { Hash } from "@opencode-ai/util/hash" +import { Hash } from "@opencode/util/hash" const skillConcurrency = 4 const fileConcurrency = 8 diff --git a/packages/core/src/skill/instructions.ts b/packages/core/src/skill/instructions.ts index 1d23cdc693a..2cac66a4454 100644 --- a/packages/core/src/skill/instructions.ts +++ b/packages/core/src/skill/instructions.ts @@ -1,6 +1,6 @@ export * as SkillInstructions from "./instructions.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Schema } from "effect" import { Agent } from "../agent.js" import { Skill } from "../skill.js" diff --git a/packages/core/src/snapshot.ts b/packages/core/src/snapshot.ts index 25e79d29e09..0e0a4f42fa4 100644 --- a/packages/core/src/snapshot.ts +++ b/packages/core/src/snapshot.ts @@ -1,16 +1,16 @@ export * as Snapshot from "./snapshot.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import path from "path" import { Context, Effect, Fiber, Layer, Schema, Scope } from "effect" import { File } from "./file.js" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Git } from "./git.js" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Location } from "./location.js" import { AbsolutePath, RelativePath } from "./schema.js" -import { ID } from "@opencode-ai/schema/snapshot" -import { Hash } from "@opencode-ai/util/hash" +import { ID } from "@opencode/schema/snapshot" +import { Hash } from "@opencode/util/hash" import { State } from "./state.js" export { ID } diff --git a/packages/core/src/tool-output.ts b/packages/core/src/tool-output.ts index 53738be14be..68f5c1595b6 100644 --- a/packages/core/src/tool-output.ts +++ b/packages/core/src/tool-output.ts @@ -3,9 +3,9 @@ export * as ToolOutput from "./tool-output.js" import path from "path" import type { Tool } from "./tool.js" import { Context, Duration, Effect, Layer, Schedule } from "effect" -import { makeGlobalNode, makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { makeGlobalNode, makeLocationNode } from "@opencode/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { FileRetention } from "./file-retention.js" import { Identifier } from "./id/id.js" import { State } from "./state.js" diff --git a/packages/core/src/tool.ts b/packages/core/src/tool.ts index cc66732df8a..23f1959fbcf 100644 --- a/packages/core/src/tool.ts +++ b/packages/core/src/tool.ts @@ -1,11 +1,11 @@ export * as Tool from "./tool.js" -export { CallID, Content, Error, FileContent, TextContent } from "@opencode-ai/schema/tool" -export type { Context, Metadata, Namespace, Options, Result } from "@opencode-ai/schema/tool" +export { CallID, Content, Error, FileContent, TextContent } from "@opencode/schema/tool" +export type { Context, Metadata, Namespace, Options, Result } from "@opencode/schema/tool" -import { ToolDefinition, type ToolCall } from "@opencode-ai/ai" -import { Tool } from "@opencode-ai/schema/tool" +import { ToolDefinition, type ToolCall } from "@opencode/ai" +import { Tool } from "@opencode/schema/tool" import { Context, Effect, Layer, Result, Schema, SchemaIssue, Types } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import type { Agent } from "./agent.js" import { CodeModeCatalog } from "./codemode/catalog.js" import { CodeModeTool } from "./codemode/tool.js" diff --git a/packages/core/src/tool/mcp.ts b/packages/core/src/tool/mcp.ts index 8bc5ec14e6b..810cac466d9 100644 --- a/packages/core/src/tool/mcp.ts +++ b/packages/core/src/tool/mcp.ts @@ -1,9 +1,9 @@ export * as McpTool from "./mcp.js" -import { ToolFailure } from "@opencode-ai/ai" -import { McpEvent } from "@opencode-ai/schema/mcp-event" +import { ToolFailure } from "@opencode/ai" +import { McpEvent } from "@opencode/schema/mcp-event" import { Context, Effect, Fiber, type JsonSchema, Layer, PubSub, Semaphore, Stream } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Bus } from "../bus.js" import { Mcp } from "../mcp/index.js" diff --git a/packages/core/src/tool/plugin/edit.ts b/packages/core/src/tool/plugin/edit.ts index d5033c76969..b736c45beb3 100644 --- a/packages/core/src/tool/plugin/edit.ts +++ b/packages/core/src/tool/plugin/edit.ts @@ -6,10 +6,10 @@ */ export * as EditTool from "./edit.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { ToolFailure } from "@opencode-ai/ai" -import { FileDiff } from "@opencode-ai/schema/file-diff" -import { Bom } from "@opencode-ai/util/bom" +import type { Context } from "@opencode/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" +import { FileDiff } from "@opencode/schema/file-diff" +import { Bom } from "@opencode/util/bom" import { Effect, Schema } from "effect" import { Environment } from "../../environment/index.js" import { FileMutation } from "../../file-mutation.js" diff --git a/packages/core/src/tool/plugin/file-diff.ts b/packages/core/src/tool/plugin/file-diff.ts index 250390c0f4a..b40f11c967f 100644 --- a/packages/core/src/tool/plugin/file-diff.ts +++ b/packages/core/src/tool/plugin/file-diff.ts @@ -1,4 +1,4 @@ -import { FileDiff } from "@opencode-ai/schema/file-diff" +import { FileDiff } from "@opencode/schema/file-diff" import { createTwoFilesPatch, diffLines } from "diff" export function fileDiff( diff --git a/packages/core/src/tool/plugin/glob.ts b/packages/core/src/tool/plugin/glob.ts index 6847e106e09..ebe9af112cd 100644 --- a/packages/core/src/tool/plugin/glob.ts +++ b/packages/core/src/tool/plugin/glob.ts @@ -1,7 +1,7 @@ export * as GlobTool from "./glob.js" -import { ToolFailure } from "@opencode-ai/ai" -import type { Context } from "@opencode-ai/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" +import type { Context } from "@opencode/plugin/effect/plugin" import { Effect, Schema } from "effect" import path from "path" import { Environment } from "../../environment/index.js" diff --git a/packages/core/src/tool/plugin/grep.ts b/packages/core/src/tool/plugin/grep.ts index 0f1b321da0b..e13466a37e1 100644 --- a/packages/core/src/tool/plugin/grep.ts +++ b/packages/core/src/tool/plugin/grep.ts @@ -1,7 +1,7 @@ export * as GrepTool from "./grep.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { ToolFailure } from "@opencode-ai/ai" +import type { Context } from "@opencode/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" import { Effect, Schema } from "effect" import path from "path" import { Environment } from "../../environment/index.js" diff --git a/packages/core/src/tool/plugin/opencode.ts b/packages/core/src/tool/plugin/opencode.ts index d43e6c087dd..352a54e3a55 100644 --- a/packages/core/src/tool/plugin/opencode.ts +++ b/packages/core/src/tool/plugin/opencode.ts @@ -1,9 +1,9 @@ export * as OpenCodeTools from "./opencode.js" -import { SystemPart, ToolFailure } from "@opencode-ai/ai" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { AbsolutePath } from "@opencode-ai/schema/schema" -import { Session } from "@opencode-ai/schema/session" +import { SystemPart, ToolFailure } from "@opencode/ai" +import type { Context } from "@opencode/plugin/effect/plugin" +import { AbsolutePath } from "@opencode/schema/schema" +import { Session } from "@opencode/schema/session" import { Effect, Schema } from "effect" export const RenameInput = Schema.Struct({ diff --git a/packages/core/src/tool/plugin/patch.ts b/packages/core/src/tool/plugin/patch.ts index 1a3e73dce83..98fca2f7f41 100644 --- a/packages/core/src/tool/plugin/patch.ts +++ b/packages/core/src/tool/plugin/patch.ts @@ -1,16 +1,16 @@ export * as PatchTool from "./patch.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { ToolFailure } from "@opencode-ai/ai" -import { FileDiff } from "@opencode-ai/schema/file-diff" +import type { Context } from "@opencode/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" +import { FileDiff } from "@opencode/schema/file-diff" import { Effect, Result, Schema } from "effect" -import { Bom } from "@opencode-ai/util/bom" +import { Bom } from "@opencode/util/bom" import { Environment } from "../../environment/index.js" import { Formatter } from "../../formatter.js" import { FileMutation } from "../../file-mutation.js" import { Location } from "../../location.js" import { FileAccess } from "../../file-access.js" -import { Patch } from "@opencode-ai/util/patch" +import { Patch } from "@opencode/util/patch" import { Permission } from "../../permission.js" import DESCRIPTION from "../patch.txt" import { fileDiff } from "./file-diff.js" diff --git a/packages/core/src/tool/plugin/question.ts b/packages/core/src/tool/plugin/question.ts index 21bd40b4d77..29eaa874a3e 100644 --- a/packages/core/src/tool/plugin/question.ts +++ b/packages/core/src/tool/plugin/question.ts @@ -1,11 +1,11 @@ export * as QuestionTool from "./question.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { ToolFailure } from "@opencode-ai/ai" +import type { Context } from "@opencode/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" import { Effect, Schema } from "effect" import { Form } from "../../form.js" import { Permission } from "../../permission.js" -import { Question } from "@opencode-ai/schema/question" +import { Question } from "@opencode/schema/question" export const name = "question" diff --git a/packages/core/src/tool/plugin/read.ts b/packages/core/src/tool/plugin/read.ts index e3b34a0244b..4618ddcbacb 100644 --- a/packages/core/src/tool/plugin/read.ts +++ b/packages/core/src/tool/plugin/read.ts @@ -1,10 +1,10 @@ export * as ReadTool from "./read.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" +import type { Context } from "@opencode/plugin/effect/plugin" import { basename, dirname, join } from "path" -import { ToolFailure } from "@opencode-ai/ai" +import { ToolFailure } from "@opencode/ai" import { Effect, Schema } from "effect" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Location } from "../../location.js" import { FileAccess } from "../../file-access.js" import { SessionInstructions } from "../../session/instructions.js" diff --git a/packages/core/src/tool/plugin/shell.ts b/packages/core/src/tool/plugin/shell.ts index b286df95a24..c3cd52c20e9 100644 --- a/packages/core/src/tool/plugin/shell.ts +++ b/packages/core/src/tool/plugin/shell.ts @@ -1,9 +1,9 @@ export * as ShellTool from "./shell.js" -import { ToolFailure } from "@opencode-ai/ai" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import type { ShellCreateBefore } from "@opencode-ai/plugin/effect/shell" -import type { Tool } from "@opencode-ai/schema/tool" +import { ToolFailure } from "@opencode/ai" +import type { Context } from "@opencode/plugin/effect/plugin" +import type { ShellCreateBefore } from "@opencode/plugin/effect/shell" +import type { Tool } from "@opencode/schema/tool" import { Deferred, Effect, Schema, Scope } from "effect" import { Config } from "../../config.js" import { Environment } from "../../environment/index.js" diff --git a/packages/core/src/tool/plugin/skill.ts b/packages/core/src/tool/plugin/skill.ts index 1ed68adaf8a..225ed7c06d0 100644 --- a/packages/core/src/tool/plugin/skill.ts +++ b/packages/core/src/tool/plugin/skill.ts @@ -1,9 +1,9 @@ export * as SkillTool from "./skill.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { ToolFailure } from "@opencode-ai/ai" +import type { Context } from "@opencode/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" import { Effect, Schema } from "effect" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Skill } from "../../skill.js" import { Permission } from "../../permission.js" diff --git a/packages/core/src/tool/plugin/subagent.ts b/packages/core/src/tool/plugin/subagent.ts index c12eaeccbe3..2ccb2827c56 100644 --- a/packages/core/src/tool/plugin/subagent.ts +++ b/packages/core/src/tool/plugin/subagent.ts @@ -1,7 +1,7 @@ export * as SubagentTool from "./subagent.js" -import { ToolFailure } from "@opencode-ai/ai" -import type { Context } from "@opencode-ai/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" +import type { Context } from "@opencode/plugin/effect/plugin" import { Effect, Schema } from "effect" import { Agent } from "../../agent.js" import { Config } from "../../config.js" diff --git a/packages/core/src/tool/plugin/webfetch.ts b/packages/core/src/tool/plugin/webfetch.ts index 415b69aa388..ec445e469b5 100644 --- a/packages/core/src/tool/plugin/webfetch.ts +++ b/packages/core/src/tool/plugin/webfetch.ts @@ -1,7 +1,7 @@ export * as WebFetchTool from "./webfetch.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { ToolFailure } from "@opencode-ai/ai" +import type { Context } from "@opencode/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" import { Duration, Effect, Schema } from "effect" import { HttpClient, type HttpClientError, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import { Parser } from "htmlparser2" diff --git a/packages/core/src/tool/plugin/websearch.ts b/packages/core/src/tool/plugin/websearch.ts index ae27ab1957f..a8cb48455a6 100644 --- a/packages/core/src/tool/plugin/websearch.ts +++ b/packages/core/src/tool/plugin/websearch.ts @@ -1,7 +1,7 @@ export * as WebSearchTool from "./websearch.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { ToolFailure } from "@opencode-ai/ai" +import type { Context } from "@opencode/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" import { Effect, Schema, Semaphore } from "effect" import { HttpClientError } from "effect/unstable/http" import { Form } from "../../form.js" diff --git a/packages/core/src/tool/plugin/write.ts b/packages/core/src/tool/plugin/write.ts index 62ab149ac0b..17996009036 100644 --- a/packages/core/src/tool/plugin/write.ts +++ b/packages/core/src/tool/plugin/write.ts @@ -6,10 +6,10 @@ */ export * as WriteTool from "./write.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { ToolFailure } from "@opencode-ai/ai" +import type { Context } from "@opencode/plugin/effect/plugin" +import { ToolFailure } from "@opencode/ai" import { Effect, Schema } from "effect" -import { Bom } from "@opencode-ai/util/bom" +import { Bom } from "@opencode/util/bom" import { Environment } from "../../environment/index.js" import { FileMutation } from "../../file-mutation.js" import { Formatter } from "../../formatter.js" diff --git a/packages/core/src/tool/read-filesystem.ts b/packages/core/src/tool/read-filesystem.ts index 2198e688a7c..abafaea32b9 100644 --- a/packages/core/src/tool/read-filesystem.ts +++ b/packages/core/src/tool/read-filesystem.ts @@ -2,7 +2,7 @@ export * as ReadToolFileSystem from "./read-filesystem.js" import path from "path" import { pathToFileURL } from "url" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Schema } from "effect" import { lookup } from "mime-types" import { Environment } from "../environment/index.js" diff --git a/packages/core/src/tool/runtime.ts b/packages/core/src/tool/runtime.ts index b08f231e6b5..f21c67a533e 100644 --- a/packages/core/src/tool/runtime.ts +++ b/packages/core/src/tool/runtime.ts @@ -1,5 +1,5 @@ -import type { ToolDefinition } from "@opencode-ai/ai" -import { Tool } from "@opencode-ai/schema/tool" +import type { ToolDefinition } from "@opencode/ai" +import { Tool } from "@opencode/schema/tool" import type { StandardJSONSchemaV1, StandardSchemaV1 } from "@standard-schema/spec" import { Cache, Effect, JsonSchema, Schema, SchemaIssue, SchemaRepresentation } from "effect" import { $ZodType, toJSONSchema } from "zod/v4/core" diff --git a/packages/core/src/util/identifier.ts b/packages/core/src/util/identifier.ts index 442fbb39833..dfaa0443b39 100644 --- a/packages/core/src/util/identifier.ts +++ b/packages/core/src/util/identifier.ts @@ -1 +1 @@ -export * as Identifier from "@opencode-ai/schema/identifier" +export * as Identifier from "@opencode/schema/identifier" diff --git a/packages/core/src/util/process-lock.ts b/packages/core/src/util/process-lock.ts index 28856618e2b..7c9a05e8856 100644 --- a/packages/core/src/util/process-lock.ts +++ b/packages/core/src/util/process-lock.ts @@ -3,7 +3,7 @@ import { closeSync, mkdirSync, openSync } from "node:fs" import { connect, createServer, type Server, type Socket } from "node:net" import path from "node:path" import { Effect, Schema } from "effect" -import { Hash } from "@opencode-ai/util/hash" +import { Hash } from "@opencode/util/hash" export namespace ProcessLock { export class HeldError extends Schema.TaggedError()("ProcessLockHeldError", { diff --git a/packages/core/src/v1/config/config.ts b/packages/core/src/v1/config/config.ts index 1e9e59d6405..ff77cc8d38b 100644 --- a/packages/core/src/v1/config/config.ts +++ b/packages/core/src/v1/config/config.ts @@ -1,7 +1,7 @@ export * as ConfigV1 from "./config.js" import { Schema } from "effect" -import { ConfigReference } from "@opencode-ai/schema/config/reference" +import { ConfigReference } from "@opencode/schema/config/reference" import { NonNegativeInt, PositiveInt, type DeepMutable } from "../../schema.js" import { ConfigAgentV1 } from "./agent.js" import { ConfigAttachmentV1 } from "./attachment.js" diff --git a/packages/core/src/v1/config/migrate.ts b/packages/core/src/v1/config/migrate.ts index 271689ce412..ccc70d87820 100644 --- a/packages/core/src/v1/config/migrate.ts +++ b/packages/core/src/v1/config/migrate.ts @@ -1,7 +1,7 @@ export * as ConfigMigrateV1 from "./migrate.js" -import { Info } from "@opencode-ai/schema/config" -import { ConfigAgent } from "@opencode-ai/schema/config/agent" +import { Info } from "@opencode/schema/config" +import { ConfigAgent } from "@opencode/schema/config/agent" import { Schema } from "effect" import { ConfigV1 } from "./config.js" import { ConfigAgentV1 } from "./agent.js" diff --git a/packages/core/src/v1/permission.ts b/packages/core/src/v1/permission.ts index 0e8ea590a9e..4eb16b24713 100644 --- a/packages/core/src/v1/permission.ts +++ b/packages/core/src/v1/permission.ts @@ -1,8 +1,8 @@ export * as PermissionV1 from "./permission.js" import { Schema } from "effect" -export * from "@opencode-ai/schema/permission-v1" -import { ID } from "@opencode-ai/schema/permission-v1" +export * from "@opencode/schema/permission-v1" +import { ID } from "@opencode/schema/permission-v1" export class RejectedError extends Schema.TaggedError()("PermissionRejectedError", {}) { override get message() { diff --git a/packages/core/src/vcs.ts b/packages/core/src/vcs.ts index 389b5b8ec27..1bbe9196def 100644 --- a/packages/core/src/vcs.ts +++ b/packages/core/src/vcs.ts @@ -2,13 +2,13 @@ export * as Vcs from "./vcs.js" import path from "path" import { Cause, Context, Effect, FiberSet, Layer, Schema, Semaphore, Stream } from "effect" -import type { VcsDefinition, VcsEditor } from "@opencode-ai/plugin/effect/vcs" -import { FileDiff } from "@opencode-ai/schema/file-diff" -import { FileSystem } from "@opencode-ai/schema/filesystem" -import { Base, BranchList, FileStatus, Info, Mode } from "@opencode-ai/schema/vcs" -import { VcsEvent } from "@opencode-ai/schema/vcs-event" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { FSUtil } from "@opencode-ai/util/fs-util" +import type { VcsDefinition, VcsEditor } from "@opencode/plugin/effect/vcs" +import { FileDiff } from "@opencode/schema/file-diff" +import { FileSystem } from "@opencode/schema/filesystem" +import { Base, BranchList, FileStatus, Info, Mode } from "@opencode/schema/vcs" +import { VcsEvent } from "@opencode/schema/vcs-event" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" import { Location } from "./location.js" import { Bus } from "./bus.js" import { State } from "./state.js" diff --git a/packages/core/src/websearch.ts b/packages/core/src/websearch.ts index ea0e1b90776..7ec63bb7b97 100644 --- a/packages/core/src/websearch.ts +++ b/packages/core/src/websearch.ts @@ -1,11 +1,11 @@ export * as WebSearch from "./websearch.js" -import { WebSearch } from "@opencode-ai/schema/websearch" -import type { Session } from "@opencode-ai/schema/session" -import { SessionEvent } from "@opencode-ai/schema/session-event" +import { WebSearch } from "@opencode/schema/websearch" +import type { Session } from "@opencode/schema/session" +import { SessionEvent } from "@opencode/schema/session-event" import { Clock, Context, Effect, Layer, Option, Schema, Stream } from "effect" import { HttpClientError } from "effect/unstable/http" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Bus } from "./bus.js" import { KV } from "./kv.js" import { State } from "./state.js" @@ -16,7 +16,7 @@ export type ID = WebSearch.ID export const Provider = WebSearch.Provider export type Provider = WebSearch.Provider -export { Event } from "@opencode-ai/schema/websearch" +export { Event } from "@opencode/schema/websearch" export const Input = WebSearch.Input export type Input = WebSearch.Input diff --git a/packages/core/src/wellknown.ts b/packages/core/src/wellknown.ts index 1160a8edd45..206e42071fb 100644 --- a/packages/core/src/wellknown.ts +++ b/packages/core/src/wellknown.ts @@ -1,11 +1,11 @@ export * as WellKnown from "./wellknown.js" -import { Integration } from "@opencode-ai/schema/integration" +import { Integration } from "@opencode/schema/integration" import { Context, Effect, Layer, Ref, Schema, Semaphore } from "effect" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import { isDeepStrictEqual } from "node:util" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { httpClient } from "@opencode-ai/util/effect/app-node-platform" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { httpClient } from "@opencode/util/effect/app-node-platform" import { Bus } from "./bus.js" import { KV } from "./kv.js" diff --git a/packages/core/src/wellknown/plugin.ts b/packages/core/src/wellknown/plugin.ts index 4a1da602c08..23b2e4052e7 100644 --- a/packages/core/src/wellknown/plugin.ts +++ b/packages/core/src/wellknown/plugin.ts @@ -1,6 +1,6 @@ export * as WellKnownPlugin from "./plugin.js" -import { define } from "@opencode-ai/plugin/effect/plugin" +import { define } from "@opencode/plugin/effect/plugin" import { Effect, Stream } from "effect" import { Bus } from "../bus.js" import { WellKnown } from "../wellknown.js" diff --git a/packages/core/src/workspace.ts b/packages/core/src/workspace.ts index 43347228325..a71b84bfba7 100644 --- a/packages/core/src/workspace.ts +++ b/packages/core/src/workspace.ts @@ -1,7 +1,7 @@ export * as Workspace from "./workspace.js" -import { Workspace } from "@opencode-ai/schema/workspace" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { Workspace } from "@opencode/schema/workspace" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { eq } from "drizzle-orm" import { Clock, Context, Deferred, Duration, Effect, Exit, FiberSet, Layer, Ref, Schedule, Schema, Scope } from "effect" import { systemError } from "effect/PlatformError" diff --git a/packages/core/src/workspace/driver.ts b/packages/core/src/workspace/driver.ts index 4ddab5579c7..fcb6f641ae7 100644 --- a/packages/core/src/workspace/driver.ts +++ b/packages/core/src/workspace/driver.ts @@ -1,7 +1,7 @@ export * as WorkspaceDriver from "./driver.js" -import { Workspace } from "@opencode-ai/schema/workspace" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { Workspace } from "@opencode/schema/workspace" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Context, Effect, Layer, Schema } from "effect" import type { Scope } from "effect" import type { EnvironmentDriver } from "../environment/driver.js" diff --git a/packages/core/src/workspace/sql.ts b/packages/core/src/workspace/sql.ts index 4fc3ac0a47f..488f697081b 100644 --- a/packages/core/src/workspace/sql.ts +++ b/packages/core/src/workspace/sql.ts @@ -1,4 +1,4 @@ -import { Workspace } from "@opencode-ai/schema/workspace" +import { Workspace } from "@opencode/schema/workspace" import { integer, sqliteTable, text } from "drizzle-orm/sqlite-core" import type { WorkspaceDriver } from "./driver.js" diff --git a/packages/core/src/worktree.ts b/packages/core/src/worktree.ts index c196815604a..62f3a7bc627 100644 --- a/packages/core/src/worktree.ts +++ b/packages/core/src/worktree.ts @@ -4,27 +4,27 @@ import { Context, Effect, Layer, Schema } from "effect" import { and, asc, desc, eq, isNull, sql } from "drizzle-orm" import path from "path" import { AbsolutePath } from "./schema.js" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { Git } from "./git.js" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { Global } from "@opencode-ai/util/global" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { Global } from "@opencode/util/global" import { ProjectSchema } from "./project/schema.js" import { Slug } from "./util/slug.js" import { Bus } from "./bus.js" import { Database } from "./database/database.js" import { Location } from "./location.js" -import { Worktree } from "@opencode-ai/schema/worktree" +import { Worktree } from "@opencode/schema/worktree" import { WorktreeTable } from "./worktree/sql.js" import { canonical, DirectoryUnavailableError } from "./worktree/directory.js" import { WorktreeGit } from "./worktree/git.js" import type { EffectDrizzleSqlite } from "./database/drizzle.js" import { ProjectTable } from "./project/sql.js" -import { AppProcess } from "@opencode-ai/util/process" +import { AppProcess } from "@opencode/util/process" import { ChildProcess } from "effect/unstable/process" import { State } from "./state.js" export { DirectoryUnavailableError } from "./worktree/directory.js" -export { OperationError } from "@opencode-ai/schema/worktree" +export { OperationError } from "@opencode/schema/worktree" export const StrategyID = Worktree.StrategyID export type StrategyID = typeof StrategyID.Type diff --git a/packages/core/src/worktree/directory.ts b/packages/core/src/worktree/directory.ts index 9321027173b..7bbbe7b6f85 100644 --- a/packages/core/src/worktree/directory.ts +++ b/packages/core/src/worktree/directory.ts @@ -1,7 +1,7 @@ export * as WorktreeDirectory from "./directory.js" import { Effect, Schema } from "effect" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { FSUtil } from "@opencode/util/fs-util" import { AbsolutePath } from "../schema.js" export class DirectoryUnavailableError extends Schema.TaggedError()( diff --git a/packages/core/src/worktree/git.ts b/packages/core/src/worktree/git.ts index 6889d5b167c..854a0e2581a 100644 --- a/packages/core/src/worktree/git.ts +++ b/packages/core/src/worktree/git.ts @@ -1,8 +1,8 @@ export * as WorktreeGit from "./git.js" import { Effect } from "effect" -import { Worktree } from "@opencode-ai/schema/worktree" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { Worktree } from "@opencode/schema/worktree" +import { FSUtil } from "@opencode/util/fs-util" import { Git } from "../git.js" import { canonical, DirectoryUnavailableError } from "./directory.js" import type { ListEntry, Strategy } from "../worktree.js" diff --git a/packages/core/src/worktree/refresh.ts b/packages/core/src/worktree/refresh.ts index 1aa7defbbb2..e706337d2e4 100644 --- a/packages/core/src/worktree/refresh.ts +++ b/packages/core/src/worktree/refresh.ts @@ -1,7 +1,7 @@ export * as WorktreeRefresh from "./refresh.js" import { Effect, Layer } from "effect" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Location } from "../location.js" import { Plugin } from "../plugin.js" import { PluginSupervisor } from "../plugin/supervisor.js" diff --git a/packages/core/test/agent.test.ts b/packages/core/test/agent.test.ts index 6f87cff5fc3..1784bf5655d 100644 --- a/packages/core/test/agent.test.ts +++ b/packages/core/test/agent.test.ts @@ -1,15 +1,15 @@ import path from "path" import { describe, expect } from "bun:test" import { Effect, Exit, Fiber, Layer, Scope, Stream } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { Bus } from "@opencode-ai/core/bus" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Location } from "@opencode-ai/core/location" -import { Permission } from "@opencode-ai/core/permission" -import { AgentPlugin } from "@opencode-ai/core/plugin/agent" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Global } from "@opencode-ai/util/global" +import { Agent } from "@opencode/core/agent" +import { Bus } from "@opencode/core/bus" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Location } from "@opencode/core/location" +import { Permission } from "@opencode/core/permission" +import { AgentPlugin } from "@opencode/core/plugin/agent" +import { AbsolutePath } from "@opencode/core/schema" +import { Global } from "@opencode/util/global" import { location } from "./fixture/location" import { testEffect } from "./lib/effect" import { agentHost, host } from "./plugin/host" diff --git a/packages/core/test/aisdk-native.test.ts b/packages/core/test/aisdk-native.test.ts index 146d87f8aeb..1f6caccbd63 100644 --- a/packages/core/test/aisdk-native.test.ts +++ b/packages/core/test/aisdk-native.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { AISDKNative } from "@opencode-ai/core/aisdk-native" +import { AISDKNative } from "@opencode/core/aisdk-native" const map = (packageName: string, settings: Readonly>, modelID = "test-model") => AISDKNative.map({ packageName, settings, modelID, providerID: "test-provider" }) @@ -17,7 +17,7 @@ describe("AISDKNative", () => { truncation: "auto", }), ).toEqual({ - package: "@opencode-ai/ai/providers/openai", + package: "@opencode/ai/providers/openai", settings: { apiKey: "secret", baseURL: "https://api.meta.ai/v1", @@ -31,7 +31,7 @@ describe("AISDKNative", () => { }, }) expect(map("@ai-sdk/openai-compatible", { baseURL: "https://example.com/v1", reasoningEffort: "high" })).toEqual({ - package: "@opencode-ai/ai/providers/openai-compatible", + package: "@opencode/ai/providers/openai-compatible", settings: { baseURL: "https://example.com/v1", provider: "test-provider", @@ -49,7 +49,7 @@ describe("AISDKNative", () => { effort: "high", }), ).toEqual({ - package: "@opencode-ai/ai/providers/anthropic", + package: "@opencode/ai/providers/anthropic", settings: { authToken: "token", baseURL: "https://anthropic.example/v1", @@ -73,7 +73,7 @@ describe("AISDKNative", () => { customOption: { enabled: true }, }), ).toEqual({ - package: `@opencode-ai/ai/providers/${name}`, + package: `@opencode/ai/providers/${name}`, settings: { apiKey: "secret", baseURL: `https://${name}.example/v1`, @@ -82,7 +82,7 @@ describe("AISDKNative", () => { headers: { "x-provider": name }, }) expect(map(`@ai-sdk/${name}`, {})).toEqual({ - package: `@opencode-ai/ai/providers/${name}`, + package: `@opencode/ai/providers/${name}`, settings: {}, }) } @@ -97,7 +97,7 @@ describe("AISDKNative", () => { thinkingConfig: { thinkingLevel: "high" }, }), ).toEqual({ - package: "@opencode-ai/ai/providers/google-vertex", + package: "@opencode/ai/providers/google-vertex", settings: { project: "project", location: "us-central1", @@ -129,7 +129,7 @@ describe("AISDKNative", () => { unsupported: true, }), ).toEqual({ - package: "@opencode-ai/ai/providers/mistral", + package: "@opencode/ai/providers/mistral", settings: { apiKey: "secret", baseURL: "https://mistral.example/v1", @@ -164,18 +164,18 @@ describe("AISDKNative", () => { generateId: "ignored", }), ).toEqual({ - package: "@opencode-ai/ai/providers/mistral", + package: "@opencode/ai/providers/mistral", settings: {}, }) }) test("maps both models.dev Bedrock packages to native providers", () => { expect(map("@ai-sdk/amazon-bedrock", { region: "us-east-1" })).toEqual({ - package: "@opencode-ai/ai/providers/amazon-bedrock", + package: "@opencode/ai/providers/amazon-bedrock", settings: { region: "us-east-1" }, }) expect(map("@ai-sdk/amazon-bedrock/mantle", { region: "us-east-1" }, "openai.gpt-oss-120b")).toEqual({ - package: "@opencode-ai/ai/providers/amazon-bedrock/mantle/responses", + package: "@opencode/ai/providers/amazon-bedrock/mantle/responses", settings: { region: "us-east-1" }, }) }) @@ -190,7 +190,7 @@ describe("AISDKNative", () => { reasoningEffort: "high", } expect(map("@ai-sdk/azure", settings, "deployment")).toEqual({ - package: "@opencode-ai/ai/providers/azure/responses", + package: "@opencode/ai/providers/azure/responses", settings: { apiKey: "secret", resourceName: "resource", @@ -201,7 +201,7 @@ describe("AISDKNative", () => { }, }) expect(map("@ai-sdk/azure", { ...settings, useCompletionUrls: true }, "custom-deployment")?.package).toBe( - "@opencode-ai/ai/providers/azure/chat", + "@opencode/ai/providers/azure/chat", ) }) @@ -225,7 +225,7 @@ describe("AISDKNative", () => { "anthropic.claude-sonnet-4-6-v1", ), ).toEqual({ - package: "@opencode-ai/ai/providers/amazon-bedrock", + package: "@opencode/ai/providers/amazon-bedrock", settings: { region: "us-east-1", topP: 0.8 }, headers: { "x-test": "value" }, body: { @@ -269,7 +269,7 @@ describe("AISDKNative", () => { } expect(map("@ai-sdk/amazon-bedrock/mantle", settings, "openai.gpt-oss-120b")).toEqual({ - package: "@opencode-ai/ai/providers/amazon-bedrock/mantle/responses", + package: "@opencode/ai/providers/amazon-bedrock/mantle/responses", settings: { apiKey: "token", baseURL: "https://mantle.test/v1", @@ -284,7 +284,7 @@ describe("AISDKNative", () => { }) for (const modelID of ["openai.gpt-oss-safeguard-20b", "openai.gpt-oss-safeguard-120b"]) { expect(map("@ai-sdk/amazon-bedrock/mantle", settings, modelID)?.package).toBe( - "@opencode-ai/ai/providers/amazon-bedrock/mantle/chat", + "@opencode/ai/providers/amazon-bedrock/mantle/chat", ) } expect( @@ -318,7 +318,7 @@ describe("AISDKNative", () => { "openai.gpt-oss-120b", ), ).toEqual({ - package: "@opencode-ai/ai/providers/amazon-bedrock/mantle/responses", + package: "@opencode/ai/providers/amazon-bedrock/mantle/responses", settings: { credentials: { accessKeyId: "key", @@ -336,11 +336,11 @@ describe("AISDKNative", () => { expect( map("@ai-sdk/amazon-bedrock", { profile: "work", auth: "sigv4", region: "eu-west-1" }, "anthropic.claude"), ).toEqual({ - package: "@opencode-ai/ai/providers/amazon-bedrock", + package: "@opencode/ai/providers/amazon-bedrock", settings: { profile: "work", auth: "sigv4", region: "eu-west-1" }, }) expect(map("@ai-sdk/amazon-bedrock", { auth: "bogus" }, "anthropic.claude")).toEqual({ - package: "@opencode-ai/ai/providers/amazon-bedrock", + package: "@opencode/ai/providers/amazon-bedrock", settings: {}, }) }) @@ -369,7 +369,7 @@ describe("AISDKNative", () => { future_option: { enabled: true }, }), ).toEqual({ - package: "@opencode-ai/ai/providers/openrouter", + package: "@opencode/ai/providers/openrouter", settings: { providerOptions: { models: ["anthropic/claude-sonnet-4.6"], @@ -401,7 +401,7 @@ describe("AISDKNative", () => { }, }), ).toEqual({ - package: "@opencode-ai/ai/providers/google", + package: "@opencode/ai/providers/google", settings: { providerOptions: { cachedContent: "cachedContents/example", @@ -455,7 +455,7 @@ describe("AISDKNative", () => { thinkingConfig: { thinkingLevel: "high" }, }), ).toEqual({ - package: "@opencode-ai/ai/providers/google-vertex", + package: "@opencode/ai/providers/google-vertex", settings: { accessToken: "vertex-token", baseURL: "https://vertex.example/v1", @@ -482,7 +482,7 @@ describe("AISDKNative", () => { effort: "high", }), ).toEqual({ - package: "@opencode-ai/ai/providers/google-vertex/messages", + package: "@opencode/ai/providers/google-vertex/messages", settings: { accessToken: "vertex-token", baseURL: "https://vertex.example/v1", @@ -506,7 +506,7 @@ describe("AISDKNative", () => { store: true, }), ).toEqual({ - package: "@opencode-ai/ai/providers/xai", + package: "@opencode/ai/providers/xai", settings: { apiKey: "secret", baseURL: "https://xai.example/v1", @@ -530,7 +530,7 @@ describe("AISDKNative", () => { searchParameters: { mode: "auto" }, }), ).toEqual({ - package: "@opencode-ai/ai/providers/xai", + package: "@opencode/ai/providers/xai", settings: {}, }) }) diff --git a/packages/core/test/aisdk.test.ts b/packages/core/test/aisdk.test.ts index 9d890a8c719..ec362a6740b 100644 --- a/packages/core/test/aisdk.test.ts +++ b/packages/core/test/aisdk.test.ts @@ -2,11 +2,11 @@ import { APICallError } from "@ai-sdk/provider" import type { LanguageModelV3, LanguageModelV3StreamPart } from "@ai-sdk/provider" import { createMistral } from "@ai-sdk/mistral" import { createOpenAICompatible } from "@ai-sdk/openai-compatible" -import { AISDK } from "@opencode-ai/core/aisdk" -import { SessionRunnerRetry } from "@opencode-ai/core/session/runner/retry" -import { toSessionError } from "@opencode-ai/core/session/to-session-error" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" +import { AISDK } from "@opencode/core/aisdk" +import { SessionRunnerRetry } from "@opencode/core/session/runner/retry" +import { toSessionError } from "@opencode/core/session/to-session-error" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" import { LLM, AIError, @@ -19,9 +19,9 @@ import { TransportError, UnknownProviderError, isContextOverflowFailure, -} from "@opencode-ai/ai" -import { LLMClient, RequestExecutor } from "@opencode-ai/ai/route" -import { compileRequest } from "@opencode-ai/ai/route/client" +} from "@opencode/ai" +import { LLMClient, RequestExecutor } from "@opencode/ai/route" +import { compileRequest } from "@opencode/ai/route/client" import { expect } from "bun:test" import { Effect, Layer } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/app.test.ts b/packages/core/test/app.test.ts index 06bac015e7a..1fefbeac9dc 100644 --- a/packages/core/test/app.test.ts +++ b/packages/core/test/app.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { App } from "@opencode-ai/core/app" +import { App } from "@opencode/core/app" test("formats app metadata as a user agent", () => { expect(App.useragent(App.make({ name: "sdk", version: "1.2.3", channel: "beta" }))).toBe("opencode/beta/1.2.3/sdk") diff --git a/packages/core/test/bus-session-routing.test.ts b/packages/core/test/bus-session-routing.test.ts index c3cf7b78c0e..deb47fe131c 100644 --- a/packages/core/test/bus-session-routing.test.ts +++ b/packages/core/test/bus-session-routing.test.ts @@ -1,21 +1,21 @@ import { describe, expect } from "bun:test" import { Deferred, Effect, Exit, Fiber, Stream } from "effect" import { eq } from "drizzle-orm" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionMessageTable, SessionTable } from "@opencode-ai/core/session/sql" -import { Event } from "@opencode-ai/schema/event" -import { Project } from "@opencode-ai/schema/project" -import { AbsolutePath } from "@opencode-ai/schema/schema" -import { SessionID } from "@opencode-ai/schema/session-id" -import { SessionEvent } from "@opencode-ai/schema/session-event" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { WorkspaceID } from "@opencode-ai/schema/workspace-id" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { ProjectTable } from "@opencode/core/project/sql" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionMessageTable, SessionTable } from "@opencode/core/session/sql" +import { Event } from "@opencode/schema/event" +import { Project } from "@opencode/schema/project" +import { AbsolutePath } from "@opencode/schema/schema" +import { SessionID } from "@opencode/schema/session-id" +import { SessionEvent } from "@opencode/schema/session-event" +import { SessionMessage } from "@opencode/schema/session-message" +import { WorkspaceID } from "@opencode/schema/workspace-id" +import { LayerNode } from "@opencode/util/effect/layer-node" import { location } from "./fixture/location" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/bus.test.ts b/packages/core/test/bus.test.ts index 26f638986c4..48a2d994017 100644 --- a/packages/core/test/bus.test.ts +++ b/packages/core/test/bus.test.ts @@ -1,16 +1,16 @@ import { describe, expect } from "bun:test" import { Cause, Deferred, Effect, Exit, Fiber, Layer, Ref, Schema, Stream } from "effect" -import { Bus } from "@opencode-ai/core/bus" -import { Event } from "@opencode-ai/schema/event" -import { Session } from "@opencode-ai/schema/session" -import { SessionEvent } from "@opencode-ai/schema/session-event" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { EventSequenceTable, EventTable } from "@opencode-ai/core/event/sql" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Workspace } from "@opencode-ai/core/workspace" +import { Bus } from "@opencode/core/bus" +import { Event } from "@opencode/schema/event" +import { Session } from "@opencode/schema/session" +import { SessionEvent } from "@opencode/schema/session-event" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { EventSequenceTable, EventTable } from "@opencode/core/event/sql" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { Workspace } from "@opencode/core/workspace" import { eq } from "drizzle-orm" import { location } from "./fixture/location" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/catalog.test.ts b/packages/core/test/catalog.test.ts index 0a1213621f2..4c06bdd6de7 100644 --- a/packages/core/test/catalog.test.ts +++ b/packages/core/test/catalog.test.ts @@ -1,18 +1,18 @@ import { describe, expect } from "bun:test" -import { LanguageModel } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" +import { LanguageModel } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" import { Effect, Fiber, Layer, Stream } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Integration } from "@opencode-ai/core/integration" -import { Credential } from "@opencode-ai/core/credential" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { Model } from "@opencode-ai/core/model" -import { ModelResolver } from "@opencode-ai/core/model-resolver" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { Catalog } from "@opencode/core/catalog" +import { Integration } from "@opencode/core/integration" +import { Credential } from "@opencode/core/credential" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { Model } from "@opencode/core/model" +import { ModelResolver } from "@opencode/core/model-resolver" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" import { location } from "./fixture/location" import { testEffect } from "./lib/effect" @@ -40,7 +40,7 @@ describe("Catalog", () => { const modelID = Model.ID.make("fixture-model") yield* catalog.transform((editor) => editor.model.update(providerID, modelID, (model) => { - model.package = path === "aisdk" ? Provider.aisdk("@ai-sdk/fixture") : "@opencode-ai/ai/providers/openai" + model.package = path === "aisdk" ? Provider.aisdk("@ai-sdk/fixture") : "@opencode/ai/providers/openai" model.settings = { apiKey: path === "empty-key" ? "" : "fixture-key", baseURL: "https://fixture.example/v1", diff --git a/packages/core/test/codemode.test.ts b/packages/core/test/codemode.test.ts index 28f1e1847f8..8f94541bdca 100644 --- a/packages/core/test/codemode.test.ts +++ b/packages/core/test/codemode.test.ts @@ -1,8 +1,8 @@ import { describe, expect } from "bun:test" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Tool } from "@opencode-ai/core/tool" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { Tool } from "@opencode/core/tool" import { Effect, Schema } from "effect" import { it } from "./lib/effect" diff --git a/packages/core/test/codemode/catalog.test.ts b/packages/core/test/codemode/catalog.test.ts index 730bcc6e8d0..3534ea3b6b7 100644 --- a/packages/core/test/codemode/catalog.test.ts +++ b/packages/core/test/codemode/catalog.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" -import { CodeModeCatalog } from "@opencode-ai/core/codemode/catalog" -import { CodeModeInstructions } from "@opencode-ai/core/codemode/instructions" +import { CodeModeCatalog } from "@opencode/core/codemode/catalog" +import { CodeModeInstructions } from "@opencode/core/codemode/instructions" const entry = (path: string, description: string, signature?: string, pinned = false): CodeModeCatalog.Tool => ({ type: "tool", diff --git a/packages/core/test/codemode/instructions.test.ts b/packages/core/test/codemode/instructions.test.ts index 427649dc436..c2892d021ea 100644 --- a/packages/core/test/codemode/instructions.test.ts +++ b/packages/core/test/codemode/instructions.test.ts @@ -1,10 +1,10 @@ import { describe, expect } from "bun:test" -import { CodeModeCatalog } from "@opencode-ai/core/codemode/catalog" -import { CodeModeInstructions } from "@opencode-ai/core/codemode/instructions" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Tool } from "@opencode-ai/core/tool" +import { CodeModeCatalog } from "@opencode/core/codemode/catalog" +import { CodeModeInstructions } from "@opencode/core/codemode/instructions" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { Tool } from "@opencode/core/tool" import { Effect, Schema } from "effect" import { it } from "../lib/effect" import { readInitial, readUpdate } from "../lib/instructions" diff --git a/packages/core/test/command.test.ts b/packages/core/test/command.test.ts index 9cb5db7f638..263d8638c39 100644 --- a/packages/core/test/command.test.ts +++ b/packages/core/test/command.test.ts @@ -1,7 +1,7 @@ import { describe, expect } from "bun:test" -import { Command } from "@opencode-ai/core/command" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Session } from "@opencode-ai/schema/session" +import { Command } from "@opencode/core/command" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Session } from "@opencode/schema/session" import { Effect } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/config/agent.test.ts b/packages/core/test/config/agent.test.ts index 7dcd90773e6..f9be179ef0f 100644 --- a/packages/core/test/config/agent.test.ts +++ b/packages/core/test/config/agent.test.ts @@ -2,20 +2,20 @@ import { describe, expect, test } from "bun:test" import fs from "fs/promises" import path from "path" import { Effect, Fiber, Schema, Stream } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { Directory, Document, Event, Info } from "@opencode-ai/schema/config" -import { ConfigAgentPlugin } from "@opencode-ai/core/config/plugin/agent" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { Permission } from "@opencode-ai/core/permission" -import { AgentPlugin } from "@opencode-ai/core/plugin/agent" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { ConfigMigrateV1 } from "@opencode-ai/core/v1/config/migrate" -import { ConfigAgentV1 } from "@opencode-ai/core/v1/config/agent" +import { Agent } from "@opencode/core/agent" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { Directory, Document, Event, Info } from "@opencode/schema/config" +import { ConfigAgentPlugin } from "@opencode/core/config/plugin/agent" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { Permission } from "@opencode/core/permission" +import { AgentPlugin } from "@opencode/core/plugin/agent" +import { AbsolutePath } from "@opencode/core/schema" +import { ConfigMigrateV1 } from "@opencode/core/v1/config/migrate" +import { ConfigAgentV1 } from "@opencode/core/v1/config/agent" import { advance, drain } from "../lib/clock" import { tmpdir } from "../fixture/tmpdir" import { testEffect } from "../lib/effect" diff --git a/packages/core/test/config/command-subagent.test.ts b/packages/core/test/config/command-subagent.test.ts index 44db54dbede..a5351e0a1dd 100644 --- a/packages/core/test/config/command-subagent.test.ts +++ b/packages/core/test/config/command-subagent.test.ts @@ -1,21 +1,21 @@ import { describe, expect } from "bun:test" import path from "path" import { Effect, Layer } from "effect" -import { LanguageModel } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols/openai-chat" -import { TestLLM } from "@opencode-ai/ai/testing" -import { Agent } from "@opencode-ai/core/agent" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNodePlatform } from "@opencode-ai/core/effect/app-node-platform" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" +import { LanguageModel } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols/openai-chat" +import { TestLLM } from "@opencode/ai/testing" +import { Agent } from "@opencode/core/agent" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNodePlatform } from "@opencode/core/effect/app-node-platform" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" import { tempGlobalLayer } from "../fixture/global" import { offlineModels } from "../fixture/models" import { tmpdirScoped } from "../fixture/tmpdir" diff --git a/packages/core/test/config/command.test.ts b/packages/core/test/config/command.test.ts index 86fdd0582f7..35832b22a5f 100644 --- a/packages/core/test/config/command.test.ts +++ b/packages/core/test/config/command.test.ts @@ -3,29 +3,29 @@ import path from "path" import { describe, expect } from "bun:test" import { DateTime, Deferred, Effect, Fiber, Layer, Option, PubSub, Schema, Stream } from "effect" import { advance, drain } from "../lib/clock" -import { Directory, Document, Event, Info } from "@opencode-ai/schema/config" -import { Session } from "@opencode-ai/core/session" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { Job } from "@opencode-ai/core/job" -import { Agent } from "@opencode-ai/core/agent" -import { SessionInbox } from "@opencode-ai/schema/session-inbox" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { Command } from "@opencode-ai/core/command" -import { Config } from "@opencode-ai/core/config" -import { ConfigCommandPlugin } from "@opencode-ai/core/config/plugin/command" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Bus } from "@opencode-ai/core/bus" -import { Credential } from "@opencode-ai/core/credential" -import { WellKnown } from "@opencode-ai/core/wellknown" -import { Global } from "@opencode-ai/util/global" -import { AppProcess } from "@opencode-ai/util/process" -import { Location } from "@opencode-ai/core/location" -import { Mcp } from "@opencode-ai/core/mcp/index" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { ShellSelect } from "@opencode-ai/core/shell/select" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" +import { Directory, Document, Event, Info } from "@opencode/schema/config" +import { Session } from "@opencode/core/session" +import { SessionExecution } from "@opencode/core/session/execution" +import { Job } from "@opencode/core/job" +import { Agent } from "@opencode/core/agent" +import { SessionInbox } from "@opencode/schema/session-inbox" +import { SessionMessage } from "@opencode/schema/session-message" +import { Command } from "@opencode/core/command" +import { Config } from "@opencode/core/config" +import { ConfigCommandPlugin } from "@opencode/core/config/plugin/command" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FSUtil } from "@opencode/util/fs-util" +import { Bus } from "@opencode/core/bus" +import { Credential } from "@opencode/core/credential" +import { WellKnown } from "@opencode/core/wellknown" +import { Global } from "@opencode/util/global" +import { AppProcess } from "@opencode/util/process" +import { Location } from "@opencode/core/location" +import { Mcp } from "@opencode/core/mcp/index" +import { AbsolutePath } from "@opencode/core/schema" +import { ShellSelect } from "@opencode/core/shell/select" +import { Watcher } from "@opencode/core/filesystem/watcher" import { emptyCredentialNode, emptyWellknownNode } from "../fixture/config-nodes" import { emptyConfigLayer, emptyMcpLayer, testLocationLayer } from "../fixture/mcp" import { location } from "../fixture/location" diff --git a/packages/core/test/config/compaction.test.ts b/packages/core/test/config/compaction.test.ts index 16950880c33..5db8a10d97d 100644 --- a/packages/core/test/config/compaction.test.ts +++ b/packages/core/test/config/compaction.test.ts @@ -1,25 +1,25 @@ import { describe, expect } from "bun:test" -import { LanguageModel, LLMClient, LLMEvent } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { ConfigCompactionPlugin } from "@opencode-ai/core/config/plugin/compaction" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { llmClient } from "@opencode-ai/core/effect/app-node-platform" -import { SessionCompaction } from "@opencode-ai/core/session/compaction" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionModelRequest } from "@opencode-ai/core/session/model-request" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { Session } from "@opencode-ai/core/session" -import { Agent } from "@opencode-ai/core/agent" -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { ConfigCompaction } from "@opencode-ai/schema/config/compaction" -import { Document, Event, Info } from "@opencode-ai/schema/config" -import { Money } from "@opencode-ai/schema/money" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LanguageModel, LLMClient, LLMEvent } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { ConfigCompactionPlugin } from "@opencode/core/config/plugin/compaction" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { llmClient } from "@opencode/core/effect/app-node-platform" +import { SessionCompaction } from "@opencode/core/session/compaction" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionModelRequest } from "@opencode/core/session/model-request" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { Session } from "@opencode/core/session" +import { Agent } from "@opencode/core/agent" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" +import { ConfigCompaction } from "@opencode/schema/config/compaction" +import { Document, Event, Info } from "@opencode/schema/config" +import { Money } from "@opencode/schema/money" +import { LayerNode } from "@opencode/util/effect/layer-node" import { DateTime, Effect, Fiber, Layer, Option, Schema, Stream } from "effect" import { testEffect } from "../lib/effect" import { host } from "../plugin/host" diff --git a/packages/core/test/config/config.test.ts b/packages/core/test/config/config.test.ts index 3e1e40ecc98..b593c19dd6c 100644 --- a/packages/core/test/config/config.test.ts +++ b/packages/core/test/config/config.test.ts @@ -3,26 +3,26 @@ import fs from "fs/promises" import { describe, expect, test } from "bun:test" import { Effect, Fiber, Layer, Logger, Schema, Stream } from "effect" import { FastCheck } from "effect/testing" -import { Config } from "@opencode-ai/core/config" -import { AgentsDirectory, Directory, Document, Event, Info } from "@opencode-ai/schema/config" -import { ConfigModel } from "@opencode-ai/schema/config/model" -import { ConfigProvider } from "@opencode-ai/schema/config/provider" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Credential } from "@opencode-ai/core/credential" -import { ConfigMigrateV1 } from "@opencode-ai/core/v1/config/migrate" -import { ConfigV1 } from "@opencode-ai/core/v1/config/config" -import { ConfigNormalize } from "@opencode-ai/core/config/normalize" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { Bus } from "@opencode-ai/core/bus" -import { Global } from "@opencode-ai/util/global" -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { WellKnown } from "@opencode-ai/core/wellknown" -import { Integration } from "@opencode-ai/schema/integration" +import { Config } from "@opencode/core/config" +import { AgentsDirectory, Directory, Document, Event, Info } from "@opencode/schema/config" +import { ConfigModel } from "@opencode/schema/config/model" +import { ConfigProvider } from "@opencode/schema/config/provider" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Credential } from "@opencode/core/credential" +import { ConfigMigrateV1 } from "@opencode/core/v1/config/migrate" +import { ConfigV1 } from "@opencode/core/v1/config/config" +import { ConfigNormalize } from "@opencode/core/config/normalize" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { Bus } from "@opencode/core/bus" +import { Global } from "@opencode/util/global" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { WellKnown } from "@opencode/core/wellknown" +import { Integration } from "@opencode/schema/integration" import { emptyCredentialNode, emptyWellknownNode } from "../fixture/config-nodes" import { location } from "../fixture/location" import { tmpdir } from "../fixture/tmpdir" diff --git a/packages/core/test/config/entry-observer.test.ts b/packages/core/test/config/entry-observer.test.ts index 42ff6354c4f..03d5c6a57f5 100644 --- a/packages/core/test/config/entry-observer.test.ts +++ b/packages/core/test/config/entry-observer.test.ts @@ -1,7 +1,7 @@ import { describe, expect } from "bun:test" -import { Config } from "@opencode-ai/core/config" -import { Document, Info, type Entry } from "@opencode-ai/schema/config" -import { Event } from "@opencode-ai/schema/event" +import { Config } from "@opencode/core/config" +import { Document, Info, type Entry } from "@opencode/schema/config" +import { Event } from "@opencode/schema/event" import { Deferred, Effect, PubSub, Ref, Stream } from "effect" import { ConfigEntryObserver } from "../../src/config/plugin/entry-observer" import { it } from "../lib/effect" diff --git a/packages/core/test/config/image.test.ts b/packages/core/test/config/image.test.ts index 38c75092e3d..f8185f7083a 100644 --- a/packages/core/test/config/image.test.ts +++ b/packages/core/test/config/image.test.ts @@ -1,12 +1,12 @@ import { describe, expect } from "bun:test" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { ConfigImagePlugin } from "@opencode-ai/core/config/plugin/image" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Image } from "@opencode-ai/core/image" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { Document, Event, Info, type Entry } from "@opencode-ai/schema/config" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { ConfigImagePlugin } from "@opencode/core/config/plugin/image" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Image } from "@opencode/core/image" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { Document, Event, Info, type Entry } from "@opencode/schema/config" import { Effect, Layer, Schema, Stream } from "effect" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "../plugin/fixture" diff --git a/packages/core/test/config/model.test.ts b/packages/core/test/config/model.test.ts index 940e9eeef47..516b7040217 100644 --- a/packages/core/test/config/model.test.ts +++ b/packages/core/test/config/model.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" -import { ConfigModel } from "@opencode-ai/schema/config/model" -import { Model } from "@opencode-ai/schema/model" -import { Provider } from "@opencode-ai/schema/provider" +import { ConfigModel } from "@opencode/schema/config/model" +import { Model } from "@opencode/schema/model" +import { Provider } from "@opencode/schema/provider" import { Schema } from "effect" const decode = Schema.decodeUnknownSync(ConfigModel.Selection) diff --git a/packages/core/test/config/normalization.test.ts b/packages/core/test/config/normalization.test.ts index f4e913aaad9..28702520f24 100644 --- a/packages/core/test/config/normalization.test.ts +++ b/packages/core/test/config/normalization.test.ts @@ -1,8 +1,8 @@ import { describe, expect, test } from "bun:test" import { Duration, Schema } from "effect" import { FastCheck } from "effect/testing" -import { ConfigNormalize } from "@opencode-ai/core/config/normalize" -import { Info } from "@opencode-ai/schema/config" +import { ConfigNormalize } from "@opencode/core/config/normalize" +import { Info } from "@opencode/schema/config" const options = { errors: "all", onExcessProperty: "ignore", propertyOrder: "original" } as const diff --git a/packages/core/test/config/policy.test.ts b/packages/core/test/config/policy.test.ts index bc5286e1c3d..c58f7159f06 100644 --- a/packages/core/test/config/policy.test.ts +++ b/packages/core/test/config/policy.test.ts @@ -1,12 +1,12 @@ import { describe, expect } from "bun:test" -import { Document, Event, Info, type Entry } from "@opencode-ai/schema/config" -import { Catalog } from "@opencode-ai/core/catalog" -import { Config } from "@opencode-ai/core/config" -import { ConfigPolicyPlugin } from "@opencode-ai/core/config/plugin/policy" -import { Bus } from "@opencode-ai/core/bus" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { Provider } from "@opencode-ai/core/provider" +import { Document, Event, Info, type Entry } from "@opencode/schema/config" +import { Catalog } from "@opencode/core/catalog" +import { Config } from "@opencode/core/config" +import { ConfigPolicyPlugin } from "@opencode/core/config/plugin/policy" +import { Bus } from "@opencode/core/bus" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { Provider } from "@opencode/core/provider" import { Effect, Schema } from "effect" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "../plugin/fixture" diff --git a/packages/core/test/config/provider-options.test.ts b/packages/core/test/config/provider-options.test.ts index ac746e44417..0cb3ada7459 100644 --- a/packages/core/test/config/provider-options.test.ts +++ b/packages/core/test/config/provider-options.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { ConfigProviderOptionsV1 } from "@opencode-ai/core/v1/config/provider-options" +import { ConfigProviderOptionsV1 } from "@opencode/core/v1/config/provider-options" describe("ConfigProviderOptionsV1", () => { test("splits provider overlays without changing package settings", () => { diff --git a/packages/core/test/config/provider.test.ts b/packages/core/test/config/provider.test.ts index 5e9d9ad74f0..5b129c2a769 100644 --- a/packages/core/test/config/provider.test.ts +++ b/packages/core/test/config/provider.test.ts @@ -1,17 +1,17 @@ import { describe, expect } from "bun:test" -import { Money } from "@opencode-ai/schema/money" -import { Document, Info, type Entry } from "@opencode-ai/schema/config" +import { Money } from "@opencode/schema/money" +import { Document, Info, type Entry } from "@opencode/schema/config" import { Effect, Schema } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Config } from "@opencode-ai/core/config" -import { ConfigProviderPlugin } from "@opencode-ai/core/config/plugin/provider" -import { ConfigNormalize } from "@opencode-ai/core/config/normalize" -import { Integration } from "@opencode-ai/core/integration" -import { Model } from "@opencode-ai/core/model" -import { ModelResolver } from "@opencode-ai/core/model-resolver" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Config } from "@opencode/core/config" +import { ConfigProviderPlugin } from "@opencode/core/config/plugin/provider" +import { ConfigNormalize } from "@opencode/core/config/normalize" +import { Integration } from "@opencode/core/integration" +import { Model } from "@opencode/core/model" +import { ModelResolver } from "@opencode/core/model-resolver" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { Provider } from "@opencode/core/provider" import { withEnv } from "../fixture/env" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "../plugin/fixture" @@ -41,17 +41,17 @@ describe("ConfigProviderPlugin.Plugin", () => { info: decode({ providers: { custom: { - package: "@opencode-ai/ai/providers/openai/responses", + package: "@opencode/ai/providers/openai/responses", compaction: { mode: "provider", threshold: 120_000 }, models: { native: {}, reset: { compaction: { mode: "provider" } }, threshold: { compaction: { mode: "provider", threshold: 90_000 } }, - local: { compaction: { mode: "local" }, package: "@opencode-ai/ai/providers/openai/chat" }, - unsupported: { package: "@opencode-ai/ai/providers/openai/chat" }, + local: { compaction: { mode: "local" }, package: "@opencode/ai/providers/openai/chat" }, + unsupported: { package: "@opencode/ai/providers/openai/chat" }, }, }, - default: { package: "@opencode-ai/ai/providers/openai/chat", models: { chat: {} } }, + default: { package: "@opencode/ai/providers/openai/chat", models: { chat: {} } }, }, }), }), diff --git a/packages/core/test/config/reload.test.ts b/packages/core/test/config/reload.test.ts index dedb1c8928f..17f0609ae6d 100644 --- a/packages/core/test/config/reload.test.ts +++ b/packages/core/test/config/reload.test.ts @@ -2,35 +2,35 @@ import path from "path" import fs from "fs/promises" import { writeFileSync } from "node:fs" import { describe, expect } from "bun:test" -import { Document, Event, Info } from "@opencode-ai/schema/config" -import { Agent } from "@opencode-ai/core/agent" -import { Catalog } from "@opencode-ai/core/catalog" -import { Command } from "@opencode-ai/core/command" -import { Config } from "@opencode-ai/core/config" -import { ConfigAgentPlugin } from "@opencode-ai/core/config/plugin/agent" -import { ConfigCommandPlugin } from "@opencode-ai/core/config/plugin/command" -import { ConfigProviderPlugin } from "@opencode-ai/core/config/plugin/provider" -import { ConfigReferencePlugin } from "@opencode-ai/core/config/plugin/reference" -import { ConfigSkillPlugin } from "@opencode-ai/core/config/plugin/skill" -import { Bus } from "@opencode-ai/core/bus" -import { Integration } from "@opencode-ai/core/integration" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Provider } from "@opencode-ai/core/provider" -import { Reference } from "@opencode-ai/core/reference" -import { Skill } from "@opencode-ai/core/skill" -import { ShellSelect } from "@opencode-ai/core/shell/select" -import { Job } from "@opencode-ai/core/job" -import { Global } from "@opencode-ai/util/global" -import { Location } from "@opencode-ai/core/location" -import { Credential } from "@opencode-ai/core/credential" -import { WellKnown } from "@opencode-ai/core/wellknown" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { AppProcess } from "@opencode-ai/util/process" +import { Document, Event, Info } from "@opencode/schema/config" +import { Agent } from "@opencode/core/agent" +import { Catalog } from "@opencode/core/catalog" +import { Command } from "@opencode/core/command" +import { Config } from "@opencode/core/config" +import { ConfigAgentPlugin } from "@opencode/core/config/plugin/agent" +import { ConfigCommandPlugin } from "@opencode/core/config/plugin/command" +import { ConfigProviderPlugin } from "@opencode/core/config/plugin/provider" +import { ConfigReferencePlugin } from "@opencode/core/config/plugin/reference" +import { ConfigSkillPlugin } from "@opencode/core/config/plugin/skill" +import { Bus } from "@opencode/core/bus" +import { Integration } from "@opencode/core/integration" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Provider } from "@opencode/core/provider" +import { Reference } from "@opencode/core/reference" +import { Skill } from "@opencode/core/skill" +import { ShellSelect } from "@opencode/core/shell/select" +import { Job } from "@opencode/core/job" +import { Global } from "@opencode/util/global" +import { Location } from "@opencode/core/location" +import { Credential } from "@opencode/core/credential" +import { WellKnown } from "@opencode/core/wellknown" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { AppProcess } from "@opencode/util/process" import { Deferred, Effect, Layer, Schema } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { AbsolutePath } from "@opencode/core/schema" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "../plugin/fixture" import { emptyCredentialNode, emptyWellknownNode } from "../fixture/config-nodes" diff --git a/packages/core/test/config/shell.test.ts b/packages/core/test/config/shell.test.ts index 7ecb664cd85..c0bb0f29edb 100644 --- a/packages/core/test/config/shell.test.ts +++ b/packages/core/test/config/shell.test.ts @@ -1,13 +1,13 @@ import { describe, expect } from "bun:test" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { ConfigShellPlugin } from "@opencode-ai/core/config/plugin/shell" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ShellSelect } from "@opencode-ai/core/shell/select" -import { Document, Event, Info } from "@opencode-ai/schema/config" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { ConfigShellPlugin } from "@opencode/core/config/plugin/shell" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ShellSelect } from "@opencode/core/shell/select" +import { Document, Event, Info } from "@opencode/schema/config" +import { FSUtil } from "@opencode/util/fs-util" import { Effect, Layer } from "effect" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "../plugin/fixture" diff --git a/packages/core/test/config/skill.test.ts b/packages/core/test/config/skill.test.ts index 4213e7d5894..af02cadd682 100644 --- a/packages/core/test/config/skill.test.ts +++ b/packages/core/test/config/skill.test.ts @@ -2,22 +2,22 @@ import fs from "fs/promises" import path from "path" import { describe, expect, test } from "bun:test" import { Deferred, Effect, Fiber, Layer, Schema, Stream } from "effect" -import { Config } from "@opencode-ai/core/config" -import { AgentsDirectory, ClaudeDirectory, Directory, Document, type Entry, Info } from "@opencode-ai/schema/config" -import { ConfigSkillPlugin } from "@opencode-ai/core/config/plugin/skill" -import { SkillFile } from "@opencode-ai/core/config/plugin/skill-file" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { Bus } from "@opencode-ai/core/bus" -import { Credential } from "@opencode-ai/core/credential" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Skill } from "@opencode-ai/core/skill" -import { SkillDiscovery } from "@opencode-ai/core/skill/discovery" -import { WellKnown } from "@opencode-ai/core/wellknown" +import { Config } from "@opencode/core/config" +import { AgentsDirectory, ClaudeDirectory, Directory, Document, type Entry, Info } from "@opencode/schema/config" +import { ConfigSkillPlugin } from "@opencode/core/config/plugin/skill" +import { SkillFile } from "@opencode/core/config/plugin/skill-file" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { Bus } from "@opencode/core/bus" +import { Credential } from "@opencode/core/credential" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { Skill } from "@opencode/core/skill" +import { SkillDiscovery } from "@opencode/core/skill/discovery" +import { WellKnown } from "@opencode/core/wellknown" import { emptyCredentialNode, emptyWellknownNode } from "../fixture/config-nodes" import { tmpdir } from "../fixture/tmpdir" import { location } from "../fixture/location" diff --git a/packages/core/test/config/snapshot.test.ts b/packages/core/test/config/snapshot.test.ts index 42e7489afa3..33423b45a62 100644 --- a/packages/core/test/config/snapshot.test.ts +++ b/packages/core/test/config/snapshot.test.ts @@ -2,17 +2,17 @@ import { $ } from "bun" import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { ConfigSnapshotPlugin } from "@opencode-ai/core/config/plugin/snapshot" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { Document, Event, Info } from "@opencode-ai/schema/config" -import { Global } from "@opencode-ai/util/global" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { ConfigSnapshotPlugin } from "@opencode/core/config/plugin/snapshot" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { AbsolutePath } from "@opencode/core/schema" +import { Snapshot } from "@opencode/core/snapshot" +import { Document, Event, Info } from "@opencode/schema/config" +import { Global } from "@opencode/util/global" import { Effect } from "effect" import { tmpdir } from "../fixture/tmpdir" import { it } from "../lib/effect" diff --git a/packages/core/test/config/tool-output.test.ts b/packages/core/test/config/tool-output.test.ts index 81c1a76e6c3..a86db85680e 100644 --- a/packages/core/test/config/tool-output.test.ts +++ b/packages/core/test/config/tool-output.test.ts @@ -1,14 +1,14 @@ import { describe, expect } from "bun:test" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { ConfigToolOutputPlugin } from "@opencode-ai/core/config/plugin/tool-output" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ToolOutput } from "@opencode-ai/core/tool-output" -import { Document, Event, Info } from "@opencode-ai/schema/config" -import { ConfigToolOutput } from "@opencode-ai/schema/config/tool-output" -import { Global } from "@opencode-ai/util/global" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { ConfigToolOutputPlugin } from "@opencode/core/config/plugin/tool-output" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ToolOutput } from "@opencode/core/tool-output" +import { Document, Event, Info } from "@opencode/schema/config" +import { ConfigToolOutput } from "@opencode/schema/config/tool-output" +import { Global } from "@opencode/util/global" import { Effect } from "effect" import { tmpdir } from "../fixture/tmpdir" import { it } from "../lib/effect" diff --git a/packages/core/test/config/warming.test.ts b/packages/core/test/config/warming.test.ts index 6b1ebfbce63..104b18ba1a3 100644 --- a/packages/core/test/config/warming.test.ts +++ b/packages/core/test/config/warming.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { Duration, Schema } from "effect" -import { Info } from "@opencode-ai/schema/config" +import { Info } from "@opencode/schema/config" const decode = Schema.decodeUnknownSync(Info) diff --git a/packages/core/test/config/watch.test.ts b/packages/core/test/config/watch.test.ts index 7fb3d06f074..303b0749361 100644 --- a/packages/core/test/config/watch.test.ts +++ b/packages/core/test/config/watch.test.ts @@ -1,8 +1,8 @@ import path from "path" import { describe, expect, test } from "bun:test" -import type { ConfigDiscovery } from "@opencode-ai/core/config/discovery" -import { ConfigWatch } from "@opencode-ai/core/config/watch" -import { AbsolutePath } from "@opencode-ai/core/schema" +import type { ConfigDiscovery } from "@opencode/core/config/discovery" +import { ConfigWatch } from "@opencode/core/config/watch" +import { AbsolutePath } from "@opencode/core/schema" const project = path.resolve("watch-plan-project") const root = AbsolutePath.make(path.join(project, ".opencode")) diff --git a/packages/core/test/config/websearch.test.ts b/packages/core/test/config/websearch.test.ts index d9a4519d1c3..50ae5c000e5 100644 --- a/packages/core/test/config/websearch.test.ts +++ b/packages/core/test/config/websearch.test.ts @@ -1,12 +1,12 @@ import { describe, expect } from "bun:test" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { ConfigWebSearchPlugin } from "@opencode-ai/core/config/plugin/websearch" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { WebSearch } from "@opencode-ai/core/websearch" -import { Document, Event, Info } from "@opencode-ai/schema/config" -import { ConfigWebSearch } from "@opencode-ai/schema/config/websearch" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { ConfigWebSearchPlugin } from "@opencode/core/config/plugin/websearch" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { WebSearch } from "@opencode/core/websearch" +import { Document, Event, Info } from "@opencode/schema/config" +import { ConfigWebSearch } from "@opencode/schema/config/websearch" import { Effect } from "effect" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "../plugin/fixture" diff --git a/packages/core/test/credential.test.ts b/packages/core/test/credential.test.ts index 7bc0f74680f..f68e635c4da 100644 --- a/packages/core/test/credential.test.ts +++ b/packages/core/test/credential.test.ts @@ -1,16 +1,16 @@ import { describe, expect } from "bun:test" import { eq } from "drizzle-orm" import { Effect } from "effect" -import { Bus } from "@opencode-ai/core/bus" -import { Credential } from "@opencode-ai/core/credential" -import { CredentialTable } from "@opencode-ai/core/credential/sql" -import { Database } from "@opencode-ai/core/database/database" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Workspace } from "@opencode-ai/core/workspace" -import { Event } from "@opencode-ai/schema/event" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Integration } from "@opencode-ai/core/integration" +import { Bus } from "@opencode/core/bus" +import { Credential } from "@opencode/core/credential" +import { CredentialTable } from "@opencode/core/credential/sql" +import { Database } from "@opencode/core/database/database" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { Workspace } from "@opencode/core/workspace" +import { Event } from "@opencode/schema/event" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Integration } from "@opencode/core/integration" import { location } from "./fixture/location" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/database-drizzle.test.ts b/packages/core/test/database-drizzle.test.ts index 57922fb2284..d2c0958dcef 100644 --- a/packages/core/test/database-drizzle.test.ts +++ b/packages/core/test/database-drizzle.test.ts @@ -9,7 +9,7 @@ import { integer, sqliteTable, text } from "drizzle-orm/sqlite-core" import { Cause, Effect, Tracer } from "effect" import type { SqlClient } from "effect/unstable/sql/SqlClient" import { isSqlError } from "effect/unstable/sql/SqlError" -import { EffectDrizzleSqlite } from "@opencode-ai/core/database/drizzle" +import { EffectDrizzleSqlite } from "@opencode/core/database/drizzle" import { EffectDrizzleQueryError } from "drizzle-orm/effect-core/errors" const users = sqliteTable("users", { diff --git a/packages/core/test/database-migration.test.ts b/packages/core/test/database-migration.test.ts index 3708a5dc6ca..33e35017585 100644 --- a/packages/core/test/database-migration.test.ts +++ b/packages/core/test/database-migration.test.ts @@ -3,24 +3,24 @@ import { $ } from "bun" import { fileURLToPath } from "url" import path from "path" import { SqliteClient } from "@effect/sql-sqlite-bun" -import { EffectDrizzleSqlite } from "@opencode-ai/core/database/drizzle" +import { EffectDrizzleSqlite } from "@opencode/core/database/drizzle" import { Deferred, Effect, Fiber, Layer } from "effect" import { Reactivity } from "effect/unstable/reactivity" import { SqlClient, Statement } from "effect/unstable/sql" import { sql } from "drizzle-orm" -import { DatabaseMigration } from "@opencode-ai/core/database/migration" -import { migrations } from "@opencode-ai/core/database/migration.gen" -import workspaceNameMigration from "@opencode-ai/core/database/migration/20260410174513_workspace-name" -import { Database } from "@opencode-ai/core/database/database" +import { DatabaseMigration } from "@opencode/core/database/migration" +import { migrations } from "@opencode/core/database/migration.gen" +import workspaceNameMigration from "@opencode/core/database/migration/20260410174513_workspace-name" +import { Database } from "@opencode/core/database/database" import { tmpdir } from "./fixture/tmpdir" -import legacyCredentialsMigration from "@opencode-ai/core/database/migration/20260805200742_import_legacy_credentials" -import worktreeMigration from "@opencode-ai/core/database/migration/20260812213948_worktree" -import previousV2Migration from "@opencode-ai/core/database/migration/20260804233008_loose_psylocke" -import workspaceMigration from "@opencode-ai/core/database/migration/20260808023530_workspace_domain" -import executionClaimsMigration from "@opencode-ai/core/database/migration/20260811161259_execution_claim_attempts" -import sessionInboxMigration from "@opencode-ai/core/database/migration/20260812181746_session_inbox" -import sessionViewedStateMigration from "@opencode-ai/core/database/migration/20260819222447_session_viewed_state" -import { Global } from "@opencode-ai/util/global" +import legacyCredentialsMigration from "@opencode/core/database/migration/20260805200742_import_legacy_credentials" +import worktreeMigration from "@opencode/core/database/migration/20260812213948_worktree" +import previousV2Migration from "@opencode/core/database/migration/20260804233008_loose_psylocke" +import workspaceMigration from "@opencode/core/database/migration/20260808023530_workspace_domain" +import executionClaimsMigration from "@opencode/core/database/migration/20260811161259_execution_claim_attempts" +import sessionInboxMigration from "@opencode/core/database/migration/20260812181746_session_inbox" +import sessionViewedStateMigration from "@opencode/core/database/migration/20260819222447_session_viewed_state" +import { Global } from "@opencode/util/global" const run = ( effect: Effect.Effect, diff --git a/packages/core/test/effect-app-node-platform.test.ts b/packages/core/test/effect-app-node-platform.test.ts index 0e987a5015f..380852721cf 100644 --- a/packages/core/test/effect-app-node-platform.test.ts +++ b/packages/core/test/effect-app-node-platform.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" -import { WebSocketTransport } from "@opencode-ai/ai/route" -import { WebSocketConstructor } from "@opencode-ai/core/effect/websocket-constructor" +import { WebSocketTransport } from "@opencode/ai/route" +import { WebSocketConstructor } from "@opencode/core/effect/websocket-constructor" import { Effect } from "effect" import { Headers } from "effect/unstable/http" import { Socket } from "effect/unstable/socket" diff --git a/packages/core/test/effect/cross-spawn-spawner.test.ts b/packages/core/test/effect/cross-spawn-spawner.test.ts index 3c3a018f814..a7887642723 100644 --- a/packages/core/test/effect/cross-spawn-spawner.test.ts +++ b/packages/core/test/effect/cross-spawn-spawner.test.ts @@ -4,8 +4,8 @@ import os from "node:os" import path from "node:path" import { Deferred, Effect, Exit, PlatformError, Stream } from "effect" import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process" -import { CrossSpawnSpawner } from "@opencode-ai/util/cross-spawn-spawner" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { CrossSpawnSpawner } from "@opencode/util/cross-spawn-spawner" +import { LayerNode } from "@opencode/util/effect/layer-node" import { testEffect } from "../lib/effect" const live = LayerNode.compile(CrossSpawnSpawner.node) diff --git a/packages/core/test/effect/keyed-mutex.test.ts b/packages/core/test/effect/keyed-mutex.test.ts index b6638ff4b19..6d939a829fc 100644 --- a/packages/core/test/effect/keyed-mutex.test.ts +++ b/packages/core/test/effect/keyed-mutex.test.ts @@ -1,6 +1,6 @@ import { describe, expect } from "bun:test" import { Deferred, Effect, Fiber } from "effect" -import { KeyedMutex } from "@opencode-ai/core/effect/keyed-mutex" +import { KeyedMutex } from "@opencode/core/effect/keyed-mutex" import { it } from "../lib/effect" describe("KeyedMutex", () => { diff --git a/packages/core/test/effect/layer-node/layer-node-types.test.ts b/packages/core/test/effect/layer-node/layer-node-types.test.ts index d1208b28baa..6d44b37cfc6 100644 --- a/packages/core/test/effect/layer-node/layer-node-types.test.ts +++ b/packages/core/test/effect/layer-node/layer-node-types.test.ts @@ -1,7 +1,7 @@ import { test } from "bun:test" import { Context, Effect, Layer } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode, makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode, makeLocationNode } from "@opencode/util/effect/app-node" class A extends Context.Service()("test/LayerNodeA") {} class B extends Context.Service()("test/LayerNodeB") {} diff --git a/packages/core/test/effect/layer-node/layer-node.test.ts b/packages/core/test/effect/layer-node/layer-node.test.ts index ec530319048..bfb82a8f93e 100644 --- a/packages/core/test/effect/layer-node/layer-node.test.ts +++ b/packages/core/test/effect/layer-node/layer-node.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { Context, Deferred, Duration, Effect, Fiber, Layer, LayerMap, Option } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LayerNode } from "@opencode/util/effect/layer-node" import { testEffect } from "../../lib/effect" class Value extends Context.Service()("test/LayerNodeValue") {} diff --git a/packages/core/test/effect/layer-node/node-build.test.ts b/packages/core/test/effect/layer-node/node-build.test.ts index baed42e3b07..4343c7fc049 100644 --- a/packages/core/test/effect/layer-node/node-build.test.ts +++ b/packages/core/test/effect/layer-node/node-build.test.ts @@ -1,13 +1,13 @@ import { describe, expect, test } from "bun:test" import { Context, Effect, Layer, Option } from "effect" -import { Node } from "@opencode-ai/util/effect/app-node" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Location } from "@opencode-ai/core/location" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { buildLocationServiceMap } from "@opencode-ai/core/location-services" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { Node } from "@opencode/util/effect/app-node" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Location } from "@opencode/core/location" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { buildLocationServiceMap } from "@opencode/core/location-services" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" import { tmpdir } from "../../fixture/tmpdir" import { testEffect } from "../../lib/effect" diff --git a/packages/core/test/effect/observability.test.ts b/packages/core/test/effect/observability.test.ts index 0c190fd0af6..7bdad6fc514 100644 --- a/packages/core/test/effect/observability.test.ts +++ b/packages/core/test/effect/observability.test.ts @@ -4,8 +4,8 @@ import { Effect, Layer, Logger } from "effect" import fs from "fs/promises" import os from "os" import path from "path" -import { fileLogger } from "@opencode-ai/util/observability/logging" -import { resource } from "@opencode-ai/util/observability/otlp" +import { fileLogger } from "@opencode/util/observability/logging" +import { resource } from "@opencode/util/observability/otlp" const otelResourceAttributes = process.env.OTEL_RESOURCE_ATTRIBUTES @@ -61,7 +61,7 @@ test("falls back to local logging when OTLP initialization fails", async () => { "--eval", ` import { Effect } from "effect" - import { Observability } from "@opencode-ai/util/observability" + import { Observability } from "@opencode/util/observability" await Effect.void.pipe(Effect.provide(Observability.layer()), Effect.scoped, Effect.runPromise) `, ], diff --git a/packages/core/test/environment.test.ts b/packages/core/test/environment.test.ts index 94fbc04a188..a093eab9ec7 100644 --- a/packages/core/test/environment.test.ts +++ b/packages/core/test/environment.test.ts @@ -2,8 +2,8 @@ import fs from "node:fs/promises" import { describe, expect } from "bun:test" import { Effect } from "effect" import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process" -import { CrossSpawnSpawner } from "@opencode-ai/util/cross-spawn-spawner" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { CrossSpawnSpawner } from "@opencode/util/cross-spawn-spawner" +import { LayerNode } from "@opencode/util/effect/layer-node" import { EnvironmentUnavailable } from "../src/environment/unavailable" import { execDefaults, diff --git a/packages/core/test/event-logger.test.ts b/packages/core/test/event-logger.test.ts index fe91ceae953..ca1d651102e 100644 --- a/packages/core/test/event-logger.test.ts +++ b/packages/core/test/event-logger.test.ts @@ -1,15 +1,15 @@ import { describe, expect, test } from "bun:test" import { Effect, Logger } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Database } from "@opencode-ai/core/database/database" -import { Bus } from "@opencode-ai/core/bus" -import { EventLogger } from "@opencode-ai/core/event-logger" -import { Agent } from "@opencode-ai/schema/agent" -import { Catalog } from "@opencode-ai/schema/catalog" -import { Command } from "@opencode-ai/schema/command" -import { Config } from "@opencode-ai/schema/config" -import { McpEvent } from "@opencode-ai/schema/mcp-event" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Database } from "@opencode/core/database/database" +import { Bus } from "@opencode/core/bus" +import { EventLogger } from "@opencode/core/event-logger" +import { Agent } from "@opencode/schema/agent" +import { Catalog } from "@opencode/schema/catalog" +import { Command } from "@opencode/schema/command" +import { Config } from "@opencode/schema/config" +import { McpEvent } from "@opencode/schema/mcp-event" const UnlistedUpdated = Bus.ephemeral({ type: "test.updated", schema: {} }) diff --git a/packages/core/test/file-access-path.test.ts b/packages/core/test/file-access-path.test.ts index 80cc925a3cb..b514c519666 100644 --- a/packages/core/test/file-access-path.test.ts +++ b/packages/core/test/file-access-path.test.ts @@ -2,12 +2,12 @@ import fs from "fs/promises" import path from "path" import { describe, expect, test } from "bun:test" import { Effect, Layer, Schema } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Location } from "@opencode-ai/core/location" -import { FileAccess } from "@opencode-ai/core/file-access" -import { Permission } from "@opencode-ai/core/permission" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Global } from "@opencode-ai/util/global" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Location } from "@opencode/core/location" +import { FileAccess } from "@opencode/core/file-access" +import { Permission } from "@opencode/core/permission" +import { AbsolutePath } from "@opencode/core/schema" +import { Global } from "@opencode/util/global" import { tmpdirScoped, withTempDir } from "./fixture/tmpdir" import { location } from "./fixture/location" import { it } from "./lib/effect" diff --git a/packages/core/test/file-access.test.ts b/packages/core/test/file-access.test.ts index 5e9d44af217..7d7497b434f 100644 --- a/packages/core/test/file-access.test.ts +++ b/packages/core/test/file-access.test.ts @@ -2,14 +2,14 @@ import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" import { Effect } from "effect" -import { FileAccess } from "@opencode-ai/core/file-access" -import { Location } from "@opencode-ai/core/location" -import { Permission } from "@opencode-ai/core/permission" -import { Session } from "@opencode-ai/core/session" -import { Tool } from "@opencode-ai/core/tool" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { FileAccess } from "@opencode/core/file-access" +import { Location } from "@opencode/core/location" +import { Permission } from "@opencode/core/permission" +import { Session } from "@opencode/core/session" +import { Tool } from "@opencode/core/tool" +import { AbsolutePath } from "@opencode/core/schema" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" import { tempLocationLayer } from "./fixture/location" import { tmpdirScoped } from "./fixture/tmpdir" import { it } from "./lib/effect" diff --git a/packages/core/test/file-mutation.test.ts b/packages/core/test/file-mutation.test.ts index 9ac33e0b7c6..b3bb756555a 100644 --- a/packages/core/test/file-mutation.test.ts +++ b/packages/core/test/file-mutation.test.ts @@ -2,14 +2,14 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" import { Deferred, Effect, Fiber, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FileMutation } from "@opencode-ai/core/file-mutation" -import { Environment } from "@opencode-ai/core/environment/index" -import { Location } from "@opencode-ai/core/location" -import { FileAccess } from "@opencode-ai/core/file-access" -import { Permission } from "@opencode-ai/core/permission" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FileMutation } from "@opencode/core/file-mutation" +import { Environment } from "@opencode/core/environment/index" +import { Location } from "@opencode/core/location" +import { FileAccess } from "@opencode/core/file-access" +import { Permission } from "@opencode/core/permission" +import { AbsolutePath } from "@opencode/core/schema" import { type EnvironmentFilesTransform, transformEnvironmentFiles } from "./fixture/environment" import { location } from "./fixture/location" import { withTempDir } from "./fixture/tmpdir" diff --git a/packages/core/test/filesystem/filesystem.test.ts b/packages/core/test/filesystem/filesystem.test.ts index de5dc5cdea0..e24dc33940e 100644 --- a/packages/core/test/filesystem/filesystem.test.ts +++ b/packages/core/test/filesystem/filesystem.test.ts @@ -1,8 +1,8 @@ import { describe, test, expect } from "bun:test" import { Effect, FileSystem, Layer } from "effect" -import { LayerNodePlatform } from "@opencode-ai/util/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { LayerNodePlatform } from "@opencode/util/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FSUtil } from "@opencode/util/fs-util" import { testEffect } from "../lib/effect" import path from "path" diff --git a/packages/core/test/filesystem/ignore.test.ts b/packages/core/test/filesystem/ignore.test.ts index 88f210b1bc7..bda0f757d78 100644 --- a/packages/core/test/filesystem/ignore.test.ts +++ b/packages/core/test/filesystem/ignore.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { Ignore } from "@opencode-ai/core/filesystem/ignore" +import { Ignore } from "@opencode/core/filesystem/ignore" // @ts-ignore import { createWrapper } from "@parcel/watcher/wrapper" diff --git a/packages/core/test/filesystem/location-watcher-policy.test.ts b/packages/core/test/filesystem/location-watcher-policy.test.ts index 9936729d425..ed6f8fdd3bb 100644 --- a/packages/core/test/filesystem/location-watcher-policy.test.ts +++ b/packages/core/test/filesystem/location-watcher-policy.test.ts @@ -1,8 +1,8 @@ import { describe, expect } from "bun:test" import { Effect, Scope } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LocationWatcherPolicy } from "@opencode-ai/core/filesystem/location-watcher-policy" -import { State } from "@opencode-ai/core/state" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LocationWatcherPolicy } from "@opencode/core/filesystem/location-watcher-policy" +import { State } from "@opencode/core/state" import { testEffect } from "../lib/effect" const it = testEffect(AppNodeBuilder.build(LocationWatcherPolicy.node)) diff --git a/packages/core/test/filesystem/search.test.ts b/packages/core/test/filesystem/search.test.ts index ff8e5da2175..4a3f0c9e03c 100644 --- a/packages/core/test/filesystem/search.test.ts +++ b/packages/core/test/filesystem/search.test.ts @@ -5,14 +5,14 @@ import os from "os" import path from "path" import { Deferred, Effect, Layer } from "effect" import { TestClock } from "effect/testing" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { FileSystem } from "@opencode-ai/core/filesystem" -import { Protected } from "@opencode-ai/core/filesystem/protected" -import { FileSystemSearch } from "@opencode-ai/core/filesystem/search" -import { Location } from "@opencode-ai/core/location" -import { Ripgrep } from "@opencode-ai/core/ripgrep" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" -import { Workspace } from "@opencode-ai/core/workspace" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { FileSystem } from "@opencode/core/filesystem" +import { Protected } from "@opencode/core/filesystem/protected" +import { FileSystemSearch } from "@opencode/core/filesystem/search" +import { Location } from "@opencode/core/location" +import { Ripgrep } from "@opencode/core/ripgrep" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" +import { Workspace } from "@opencode/core/workspace" import { location } from "../fixture/location" import { tmpdir } from "../fixture/tmpdir" import { it } from "../lib/effect" diff --git a/packages/core/test/filesystem/watcher.test.ts b/packages/core/test/filesystem/watcher.test.ts index ee023636ad8..feaaeecb8fe 100644 --- a/packages/core/test/filesystem/watcher.test.ts +++ b/packages/core/test/filesystem/watcher.test.ts @@ -3,22 +3,22 @@ import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" import { Deferred, Duration, Effect, Fiber, Layer, Option, Schedule, Stream } from "effect" -import { Config } from "@opencode-ai/core/config" -import { ConfigLocationWatcherPlugin } from "@opencode-ai/core/config/plugin/location-watcher" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { LocationWatcher } from "@opencode-ai/core/filesystem/location-watcher" -import { LocationWatcherPolicy } from "@opencode-ai/core/filesystem/location-watcher-policy" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { FileSystem } from "@opencode-ai/schema/filesystem" -import { Document, Event, Info, type Entry } from "@opencode-ai/schema/config" -import { Location } from "@opencode-ai/core/location" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginSupervisor } from "@opencode-ai/core/plugin/supervisor" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { Config } from "@opencode/core/config" +import { ConfigLocationWatcherPlugin } from "@opencode/core/config/plugin/location-watcher" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { FSUtil } from "@opencode/util/fs-util" +import { LocationWatcher } from "@opencode/core/filesystem/location-watcher" +import { LocationWatcherPolicy } from "@opencode/core/filesystem/location-watcher-policy" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { FileSystem } from "@opencode/schema/filesystem" +import { Document, Event, Info, type Entry } from "@opencode/schema/config" +import { Location } from "@opencode/core/location" +import { Plugin } from "@opencode/core/plugin" +import { PluginSupervisor } from "@opencode/core/plugin/supervisor" +import { AbsolutePath } from "@opencode/core/schema" import { location } from "../fixture/location" import { tmpdir } from "../fixture/tmpdir" import { testEffect } from "../lib/effect" diff --git a/packages/core/test/fixture/config-nodes.ts b/packages/core/test/fixture/config-nodes.ts index 71a1fd2acbb..5f4cb935331 100644 --- a/packages/core/test/fixture/config-nodes.ts +++ b/packages/core/test/fixture/config-nodes.ts @@ -1,7 +1,7 @@ import { Effect, Layer } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Credential } from "@opencode-ai/core/credential" -import { WellKnown } from "@opencode-ai/core/wellknown" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Credential } from "@opencode/core/credential" +import { WellKnown } from "@opencode/core/wellknown" export const emptyCredentialNode = makeGlobalNode({ service: Credential.Service, diff --git a/packages/core/test/fixture/durable-object-storage.ts b/packages/core/test/fixture/durable-object-storage.ts index fcb5a43a581..a961d71c4cc 100644 --- a/packages/core/test/fixture/durable-object-storage.ts +++ b/packages/core/test/fixture/durable-object-storage.ts @@ -1,5 +1,5 @@ import { Database } from "bun:sqlite" -import type { DurableObjectStorage } from "@opencode-ai/core/database/sqlite.workerd" +import type { DurableObjectStorage } from "@opencode/core/database/sqlite.workerd" // Emulates the Durable Object storage API over bun:sqlite so the workerd // adapter and the workerd server profile can be verified without workerd or diff --git a/packages/core/test/fixture/effect-flock-worker.ts b/packages/core/test/fixture/effect-flock-worker.ts index 894254f2956..d9c4aa01b86 100644 --- a/packages/core/test/fixture/effect-flock-worker.ts +++ b/packages/core/test/fixture/effect-flock-worker.ts @@ -1,9 +1,9 @@ import fs from "fs/promises" import os from "os" import { Effect } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { EffectFlock } from "@opencode-ai/util/effect-flock" -import { Global } from "@opencode-ai/util/global" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { EffectFlock } from "@opencode/util/effect-flock" +import { Global } from "@opencode/util/global" type Msg = { key: string diff --git a/packages/core/test/fixture/environment.ts b/packages/core/test/fixture/environment.ts index 3f43043b1c5..31c31535d0f 100644 --- a/packages/core/test/fixture/environment.ts +++ b/packages/core/test/fixture/environment.ts @@ -1,6 +1,6 @@ -import { Environment } from "@opencode-ai/core/environment/index" -import { CrossSpawnSpawner } from "@opencode-ai/util/cross-spawn-spawner" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Environment } from "@opencode/core/environment/index" +import { CrossSpawnSpawner } from "@opencode/util/cross-spawn-spawner" +import { LayerNode } from "@opencode/util/effect/layer-node" import { Effect, Layer } from "effect" import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process" diff --git a/packages/core/test/fixture/flock-worker.ts b/packages/core/test/fixture/flock-worker.ts index ece4dc6f501..efccd7c5d3f 100644 --- a/packages/core/test/fixture/flock-worker.ts +++ b/packages/core/test/fixture/flock-worker.ts @@ -1,5 +1,5 @@ import fs from "fs/promises" -import { Flock } from "@opencode-ai/util/flock" +import { Flock } from "@opencode/util/flock" type Msg = { key: string diff --git a/packages/core/test/fixture/git.ts b/packages/core/test/fixture/git.ts index 94610e90a51..2fadb80f4da 100644 --- a/packages/core/test/fixture/git.ts +++ b/packages/core/test/fixture/git.ts @@ -4,7 +4,7 @@ import fs from "fs/promises" import path from "path" import { promisify } from "util" import { pathToFileURL } from "url" -import { Repository } from "@opencode-ai/core/repository" +import { Repository } from "@opencode/core/repository" import { Effect } from "effect" import { tmpdir } from "./tmpdir" diff --git a/packages/core/test/fixture/global.ts b/packages/core/test/fixture/global.ts index f9248dca862..dbe8797b1e1 100644 --- a/packages/core/test/fixture/global.ts +++ b/packages/core/test/fixture/global.ts @@ -1,5 +1,5 @@ import path from "path" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Effect, Layer } from "effect" import { tmpdir } from "./tmpdir" diff --git a/packages/core/test/fixture/location.ts b/packages/core/test/fixture/location.ts index d82d439943a..73734033531 100644 --- a/packages/core/test/fixture/location.ts +++ b/packages/core/test/fixture/location.ts @@ -1,6 +1,6 @@ -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" import { Effect, Layer } from "effect" import { tmpdir } from "./tmpdir" diff --git a/packages/core/test/fixture/mcp.ts b/packages/core/test/fixture/mcp.ts index e4200f1452e..e39dd6ab9db 100644 --- a/packages/core/test/fixture/mcp.ts +++ b/packages/core/test/fixture/mcp.ts @@ -1,8 +1,8 @@ import { Effect, Layer } from "effect" -import { Config } from "@opencode-ai/core/config" -import { Location } from "@opencode-ai/core/location" -import { Mcp } from "@opencode-ai/core/mcp/index" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { Config } from "@opencode/core/config" +import { Location } from "@opencode/core/location" +import { Mcp } from "@opencode/core/mcp/index" +import { AbsolutePath } from "@opencode/core/schema" import { location } from "./location" export const emptyMcpLayer = Layer.succeed( diff --git a/packages/core/test/fixture/models.ts b/packages/core/test/fixture/models.ts index dfad11c4aef..fc0831086d5 100644 --- a/packages/core/test/fixture/models.ts +++ b/packages/core/test/fixture/models.ts @@ -1,4 +1,4 @@ -import { ModelsDev } from "@opencode-ai/core/models-dev" +import { ModelsDev } from "@opencode/core/models-dev" // Core is env-free, so the default ModelsDev node refreshes from models.dev // unless the graph says otherwise. Real-Location fixtures opt out here; the diff --git a/packages/core/test/fixture/process-lock-worker.ts b/packages/core/test/fixture/process-lock-worker.ts index 8a283c68fed..2f8a063b8fd 100644 --- a/packages/core/test/fixture/process-lock-worker.ts +++ b/packages/core/test/fixture/process-lock-worker.ts @@ -1,4 +1,4 @@ -import { ProcessLock } from "@opencode-ai/core/util/process-lock" +import { ProcessLock } from "@opencode/core/util/process-lock" import { Effect, Schema } from "effect" import fs from "node:fs/promises" diff --git a/packages/core/test/fixture/prompt-location.ts b/packages/core/test/fixture/prompt-location.ts index 79a092f9937..13f2a42c3b3 100644 --- a/packages/core/test/fixture/prompt-location.ts +++ b/packages/core/test/fixture/prompt-location.ts @@ -1,13 +1,13 @@ -import { Bus } from "@opencode-ai/core/bus" -import { Image } from "@opencode-ai/core/image" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import type { LocationServices } from "@opencode-ai/core/location-services" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { Skill } from "@opencode-ai/core/skill" -import type { Location } from "@opencode-ai/schema/location" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Image } from "@opencode/core/image" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import type { LocationServices } from "@opencode/core/location-services" +import { Plugin } from "@opencode/core/plugin" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { Skill } from "@opencode/core/skill" +import type { Location } from "@opencode/schema/location" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" import { Effect, Layer, LayerMap } from "effect" // Plain-prompt unit fixtures use virtual directories. diff --git a/packages/core/test/form.test.ts b/packages/core/test/form.test.ts index 29c790b4b53..fe929fd97b4 100644 --- a/packages/core/test/form.test.ts +++ b/packages/core/test/form.test.ts @@ -1,10 +1,10 @@ import { describe, expect } from "bun:test" import { Deferred, Effect, Exit, Fiber } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Form } from "@opencode-ai/core/form" -import { SessionSchema } from "@opencode-ai/core/session/schema" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Form } from "@opencode/core/form" +import { SessionSchema } from "@opencode/core/session/schema" import { testEffect } from "./lib/effect" const forms = AppNodeBuilder.build(LayerNode.group([Bus.node, Form.node])) diff --git a/packages/core/test/formatter.test.ts b/packages/core/test/formatter.test.ts index 837813b2f22..2d03c3620ef 100644 --- a/packages/core/test/formatter.test.ts +++ b/packages/core/test/formatter.test.ts @@ -2,16 +2,16 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" import { Deferred, Effect, Fiber } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { Plugin } from "@opencode-ai/core/plugin" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Info } from "@opencode-ai/schema/config" -import { Global } from "@opencode-ai/util/global" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { LocationServiceMap } from "@opencode/core/location-services" +import { Plugin } from "@opencode/core/plugin" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { AbsolutePath } from "@opencode/core/schema" +import { Info } from "@opencode/schema/config" +import { Global } from "@opencode/util/global" +import { LayerNode } from "@opencode/util/effect/layer-node" import { Formatter } from "../src/formatter" import { Location } from "../src/location" import { tempGlobalLayer } from "./fixture/global" diff --git a/packages/core/test/generate.test.ts b/packages/core/test/generate.test.ts index 494bcca2cee..a85ae654593 100644 --- a/packages/core/test/generate.test.ts +++ b/packages/core/test/generate.test.ts @@ -1,15 +1,15 @@ import { expect } from "bun:test" -import { LanguageModel } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { TestLLM } from "@opencode-ai/ai/testing" -import { AISDK } from "@opencode-ai/core/aisdk" -import { Catalog } from "@opencode-ai/core/catalog" -import { Generate } from "@opencode-ai/core/generate" -import { Integration } from "@opencode-ai/core/integration" -import { ModelResolver } from "@opencode-ai/core/model-resolver" -import { ID, Info, Ref } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { Npm } from "@opencode-ai/util/npm" +import { LanguageModel } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { TestLLM } from "@opencode/ai/testing" +import { AISDK } from "@opencode/core/aisdk" +import { Catalog } from "@opencode/core/catalog" +import { Generate } from "@opencode/core/generate" +import { Integration } from "@opencode/core/integration" +import { ModelResolver } from "@opencode/core/model-resolver" +import { ID, Info, Ref } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { Npm } from "@opencode/util/npm" import { Effect, Layer } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/git.test.ts b/packages/core/test/git.test.ts index 49b3e59db29..3a07e7d69e3 100644 --- a/packages/core/test/git.test.ts +++ b/packages/core/test/git.test.ts @@ -3,9 +3,9 @@ import { $ } from "bun" import fs from "fs/promises" import path from "path" import { Effect } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Git } from "@opencode-ai/core/git" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Git } from "@opencode/core/git" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" import { branch, commit, initRepo, read, withRemote } from "./fixture/git" import { tmpdir } from "./fixture/tmpdir" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/github-copilot/convert-to-copilot-messages.test.ts b/packages/core/test/github-copilot/convert-to-copilot-messages.test.ts index 2654810441d..0cb57d347de 100644 --- a/packages/core/test/github-copilot/convert-to-copilot-messages.test.ts +++ b/packages/core/test/github-copilot/convert-to-copilot-messages.test.ts @@ -1,4 +1,4 @@ -import { convertToOpenAICompatibleChatMessages } from "@opencode-ai/core/github-copilot/chat/convert-to-openai-compatible-chat-messages" +import { convertToOpenAICompatibleChatMessages } from "@opencode/core/github-copilot/chat/convert-to-openai-compatible-chat-messages" import { describe, test, expect } from "bun:test" describe("system messages", () => { diff --git a/packages/core/test/github-copilot/copilot-chat-model.test.ts b/packages/core/test/github-copilot/copilot-chat-model.test.ts index 0bc388787d5..7568b98eabf 100644 --- a/packages/core/test/github-copilot/copilot-chat-model.test.ts +++ b/packages/core/test/github-copilot/copilot-chat-model.test.ts @@ -1,4 +1,4 @@ -import { OpenAICompatibleChatLanguageModel } from "@opencode-ai/core/github-copilot/chat/openai-compatible-chat-language-model" +import { OpenAICompatibleChatLanguageModel } from "@opencode/core/github-copilot/chat/openai-compatible-chat-language-model" import { describe, test, expect, mock } from "bun:test" import type { LanguageModelV3Prompt } from "@ai-sdk/provider" diff --git a/packages/core/test/github-copilot/models.test.ts b/packages/core/test/github-copilot/models.test.ts index 0c323cc4c2f..b08a4f6e194 100644 --- a/packages/core/test/github-copilot/models.test.ts +++ b/packages/core/test/github-copilot/models.test.ts @@ -1,7 +1,7 @@ import { expect, test } from "bun:test" -import { CopilotModels } from "@opencode-ai/core/github-copilot/models" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" +import { CopilotModels } from "@opencode/core/github-copilot/models" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" test("defensively syncs advertised Copilot models", async () => { const server = Bun.serve({ diff --git a/packages/core/test/github-copilot/openai-responses-language-model.test.ts b/packages/core/test/github-copilot/openai-responses-language-model.test.ts index a68c8f469bc..5a3b2108637 100644 --- a/packages/core/test/github-copilot/openai-responses-language-model.test.ts +++ b/packages/core/test/github-copilot/openai-responses-language-model.test.ts @@ -1,5 +1,5 @@ -import { OpenAIResponsesLanguageModel } from "@opencode-ai/core/github-copilot/responses/openai-responses-language-model" -import { convertToOpenAIResponsesInput } from "@opencode-ai/core/github-copilot/responses/convert-to-openai-responses-input" +import { OpenAIResponsesLanguageModel } from "@opencode/core/github-copilot/responses/openai-responses-language-model" +import { convertToOpenAIResponsesInput } from "@opencode/core/github-copilot/responses/convert-to-openai-responses-input" import { describe, test, expect, mock } from "bun:test" import type { LanguageModelV3Prompt, LanguageModelV3ProviderTool, LanguageModelV3StreamPart } from "@ai-sdk/provider" diff --git a/packages/core/test/github-copilot/openai-responses-prepare-tools.test.ts b/packages/core/test/github-copilot/openai-responses-prepare-tools.test.ts index 154392662de..66b0f81d9c8 100644 --- a/packages/core/test/github-copilot/openai-responses-prepare-tools.test.ts +++ b/packages/core/test/github-copilot/openai-responses-prepare-tools.test.ts @@ -4,7 +4,7 @@ import type { LanguageModelV3FunctionTool, LanguageModelV3ProviderTool, } from "@ai-sdk/provider" -import { prepareResponsesTools } from "@opencode-ai/core/github-copilot/responses/openai-responses-prepare-tools" +import { prepareResponsesTools } from "@opencode/core/github-copilot/responses/openai-responses-prepare-tools" function prepare(strict: boolean | undefined, strictJsonSchema: boolean) { const tool: LanguageModelV3FunctionTool = { diff --git a/packages/core/test/instance-vanilla.test.ts b/packages/core/test/instance-vanilla.test.ts index 3db41381aef..75d450aa56d 100644 --- a/packages/core/test/instance-vanilla.test.ts +++ b/packages/core/test/instance-vanilla.test.ts @@ -2,16 +2,16 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" import { Duration, Effect, Layer, LayerMap } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" -import { Config } from "@opencode-ai/core/config" -import { Instance } from "@opencode-ai/core/instance" -import { InstructionDiscovery } from "@opencode-ai/core/instruction-discovery" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { Location } from "@opencode-ai/core/location" -import { Plugin } from "@opencode-ai/core/plugin" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { Config } from "@opencode/core/config" +import { Instance } from "@opencode/core/instance" +import { InstructionDiscovery } from "@opencode/core/instruction-discovery" +import { LocationServiceMap } from "@opencode/core/location-services" +import { Location } from "@opencode/core/location" +import { Plugin } from "@opencode/core/plugin" +import { AbsolutePath } from "@opencode/core/schema" import { tmpdir } from "./fixture/tmpdir" import { tempGlobalLayer } from "./fixture/global" import { offlineModels } from "./fixture/models" diff --git a/packages/core/test/instruction-discovery.test.ts b/packages/core/test/instruction-discovery.test.ts index f6c21957954..e5a4d701284 100644 --- a/packages/core/test/instruction-discovery.test.ts +++ b/packages/core/test/instruction-discovery.test.ts @@ -2,16 +2,16 @@ import { describe, expect } from "bun:test" import { Deferred, Effect, Fiber, Layer, Stream } from "effect" import fs from "fs/promises" import path from "path" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Bus } from "@opencode-ai/core/bus" -import { ConfigInstructionPlugin } from "@opencode-ai/core/config/plugin/instruction" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { InstructionDiscovery } from "@opencode-ai/core/instruction-discovery" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Bus } from "@opencode/core/bus" +import { ConfigInstructionPlugin } from "@opencode/core/config/plugin/instruction" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { InstructionDiscovery } from "@opencode/core/instruction-discovery" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { LayerNode } from "@opencode/util/effect/layer-node" import { tempGlobalLayer } from "./fixture/global" import { location } from "./fixture/location" import { tmpdir } from "./fixture/tmpdir" diff --git a/packages/core/test/instruction-state.test.ts b/packages/core/test/instruction-state.test.ts index 023c9a0b4b0..13abc386782 100644 --- a/packages/core/test/instruction-state.test.ts +++ b/packages/core/test/instruction-state.test.ts @@ -1,25 +1,25 @@ import { describe, expect } from "bun:test" import { and, asc, eq } from "drizzle-orm" import { Effect, Schema } from "effect" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Event } from "@opencode-ai/schema/event" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Instructions } from "@opencode-ai/core/instructions/index" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { InstructionState } from "@opencode-ai/core/session/instruction-state" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionSchema } from "@opencode-ai/core/session/schema" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Event } from "@opencode/schema/event" +import { EventTable } from "@opencode/core/event/sql" +import { Instructions } from "@opencode/core/instructions/index" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { InstructionState } from "@opencode/core/session/instruction-state" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionSchema } from "@opencode/core/session/schema" import { InstructionBlobTable, InstructionStateTable, SessionMessageTable, SessionTable, -} from "@opencode-ai/core/session/sql" +} from "@opencode/core/session/sql" import { testEffect } from "./lib/effect" const it = testEffect( diff --git a/packages/core/test/instructions/builtins.test.ts b/packages/core/test/instructions/builtins.test.ts index 60453fa8101..c6e7df1b8e6 100644 --- a/packages/core/test/instructions/builtins.test.ts +++ b/packages/core/test/instructions/builtins.test.ts @@ -2,13 +2,13 @@ import { describe, expect } from "bun:test" import os from "os" import { Effect, Layer } from "effect" import { TestClock } from "effect/testing" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { InstructionBuiltIns } from "@opencode-ai/core/instructions/builtins" -import { SessionSchema } from "@opencode-ai/core/session/schema" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { AbsolutePath } from "@opencode/core/schema" +import { InstructionBuiltIns } from "@opencode/core/instructions/builtins" +import { SessionSchema } from "@opencode/core/session/schema" import { location } from "../fixture/location" import { testEffect } from "../lib/effect" import { readInitial, readUpdate } from "../lib/instructions" diff --git a/packages/core/test/instructions/index.test.ts b/packages/core/test/instructions/index.test.ts index e54483d6eaa..4b02a925082 100644 --- a/packages/core/test/instructions/index.test.ts +++ b/packages/core/test/instructions/index.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { Cause, Effect, Exit, Option, Schema } from "effect" -import { Instructions } from "@opencode-ai/core/instructions/index" +import { Instructions } from "@opencode/core/instructions/index" import { it } from "../lib/effect" const key = (value: string) => Instructions.Key.make(value) diff --git a/packages/core/test/integration.test.ts b/packages/core/test/integration.test.ts index cd43187366a..f670f8f1847 100644 --- a/packages/core/test/integration.test.ts +++ b/packages/core/test/integration.test.ts @@ -1,13 +1,13 @@ import { describe, expect } from "bun:test" import { Cause, Clock, Duration, Effect, Exit, Fiber, Layer, Scope, Stream } from "effect" import { TestClock } from "effect/testing" -import { Credential } from "@opencode-ai/core/credential" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Integration } from "@opencode-ai/core/integration" -import { State } from "@opencode-ai/core/state" +import { Credential } from "@opencode/core/credential" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Integration } from "@opencode/core/integration" +import { State } from "@opencode/core/state" import { testEffect } from "./lib/effect" const it = testEffect(AppNodeBuilder.build(LayerNode.group([Integration.node, Credential.node, Bus.node]))) diff --git a/packages/core/test/job.test.ts b/packages/core/test/job.test.ts index 62302facd2e..5c30051e6ae 100644 --- a/packages/core/test/job.test.ts +++ b/packages/core/test/job.test.ts @@ -1,10 +1,10 @@ import { describe, expect } from "bun:test" -import { Job } from "@opencode-ai/core/job" -import { KV } from "@opencode-ai/core/kv" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Job } from "@opencode/core/job" +import { KV } from "@opencode/core/kv" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" import { Deferred, Effect, Exit, Fiber, Scope } from "effect" -import { SessionSchema } from "@opencode-ai/core/session/schema" +import { SessionSchema } from "@opencode/core/session/schema" import { testEffect } from "./lib/effect" const it = testEffect(AppNodeBuilder.build(LayerNode.group([Job.node, KV.node]))) diff --git a/packages/core/test/kv.test.ts b/packages/core/test/kv.test.ts index 5eba7e75c96..f3b7743d5c1 100644 --- a/packages/core/test/kv.test.ts +++ b/packages/core/test/kv.test.ts @@ -1,7 +1,7 @@ import { describe, expect } from "bun:test" import { Effect } from "effect" -import { KV } from "@opencode-ai/core/kv" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { KV } from "@opencode/core/kv" +import { LayerNode } from "@opencode/util/effect/layer-node" import { testEffect } from "./lib/effect" const it = testEffect(LayerNode.compile(KV.node)) diff --git a/packages/core/test/lib/environment-conformance.ts b/packages/core/test/lib/environment-conformance.ts index 786407c7b89..63d96924c72 100644 --- a/packages/core/test/lib/environment-conformance.ts +++ b/packages/core/test/lib/environment-conformance.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Failed, NotFound, WrongKind, type Files } from "@opencode-ai/core/environment/index" +import { Failed, NotFound, WrongKind, type Files } from "@opencode/core/environment/index" export interface EnvironmentHarness { readonly files: Files diff --git a/packages/core/test/lib/image.ts b/packages/core/test/lib/image.ts index 72ac03fdf1e..60289ad3cde 100644 --- a/packages/core/test/lib/image.ts +++ b/packages/core/test/lib/image.ts @@ -1,4 +1,4 @@ -import { Image } from "@opencode-ai/core/image" +import { Image } from "@opencode/core/image" import { Effect, Layer } from "effect" /** Passthrough resizer for tests that build Tool.node without a Location. */ diff --git a/packages/core/test/lib/instructions.ts b/packages/core/test/lib/instructions.ts index aae2d283744..060bb7683f3 100644 --- a/packages/core/test/lib/instructions.ts +++ b/packages/core/test/lib/instructions.ts @@ -1,5 +1,5 @@ import { Effect, Option, Schema } from "effect" -import { Instructions } from "@opencode-ai/core/instructions/index" +import { Instructions } from "@opencode/core/instructions/index" export interface State { readonly values: Readonly> diff --git a/packages/core/test/lib/permission.ts b/packages/core/test/lib/permission.ts index 63787794ecf..6c8d2420a3a 100644 --- a/packages/core/test/lib/permission.ts +++ b/packages/core/test/lib/permission.ts @@ -1,4 +1,4 @@ -import { Permission } from "@opencode-ai/core/permission" +import { Permission } from "@opencode/core/permission" import { Layer } from "effect" export const permissionLayer = (overrides: Partial = {}) => diff --git a/packages/core/test/lib/project.ts b/packages/core/test/lib/project.ts index 9c45d984a7e..5ae3a27af62 100644 --- a/packages/core/test/lib/project.ts +++ b/packages/core/test/lib/project.ts @@ -1,7 +1,7 @@ -import { Database } from "@opencode-ai/core/database/database" -import { Project } from "@opencode-ai/core/project" -import { upsertProject } from "@opencode-ai/core/project/sql" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { Database } from "@opencode/core/database/database" +import { Project } from "@opencode/core/project" +import { upsertProject } from "@opencode/core/project/sql" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Effect, Layer } from "effect" export const globalProjectNode = makeGlobalNode({ diff --git a/packages/core/test/lib/tool.ts b/packages/core/test/lib/tool.ts index ce02d51de3c..6275ffbfcea 100644 --- a/packages/core/test/lib/tool.ts +++ b/packages/core/test/lib/tool.ts @@ -1,11 +1,11 @@ -import { Agent } from "@opencode-ai/core/agent" -import { CodeModeCatalog } from "@opencode-ai/core/codemode/catalog" -import type { Permission } from "@opencode-ai/core/permission" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { toSessionError } from "@opencode-ai/core/session/to-session-error" -import type { SessionError } from "@opencode-ai/schema/session-error" -import { Tool } from "@opencode-ai/core/tool" -import type { Context } from "@opencode-ai/plugin/effect/plugin" +import { Agent } from "@opencode/core/agent" +import { CodeModeCatalog } from "@opencode/core/codemode/catalog" +import type { Permission } from "@opencode/core/permission" +import { SessionMessage } from "@opencode/core/session/message" +import { toSessionError } from "@opencode/core/session/to-session-error" +import type { SessionError } from "@opencode/schema/session-error" +import { Tool } from "@opencode/core/tool" +import type { Context } from "@opencode/plugin/effect/plugin" import { Effect, type Scope } from "effect" import { host } from "../plugin/host" diff --git a/packages/core/test/lib/websearch.ts b/packages/core/test/lib/websearch.ts index ac3bae2da97..defe86af230 100644 --- a/packages/core/test/lib/websearch.ts +++ b/packages/core/test/lib/websearch.ts @@ -2,12 +2,12 @@ export * as TestWebSearch from "./websearch" import { Context, Deferred, Effect, Layer } from "effect" import { HttpClientError, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { KV } from "@opencode-ai/core/kv" -import { WebSearch } from "@opencode-ai/core/websearch" -import type { Session } from "@opencode-ai/schema/session" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { KV } from "@opencode/core/kv" +import { WebSearch } from "@opencode/core/websearch" +import type { Session } from "@opencode/schema/session" export interface Interface extends WebSearch.Interface { readonly queries: readonly WebSearch.Input[] diff --git a/packages/core/test/location-activity.test.ts b/packages/core/test/location-activity.test.ts index 689d0392220..4ca873afbc0 100644 --- a/packages/core/test/location-activity.test.ts +++ b/packages/core/test/location-activity.test.ts @@ -1,25 +1,25 @@ import { describe, expect } from "bun:test" import { Context, Deferred, Duration, Effect, Fiber, Layer, LayerMap, RcMap, Schema } from "effect" import { TestClock } from "effect/testing" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { Form } from "@opencode-ai/core/form" -import { Location } from "@opencode-ai/core/location" -import { LocationActivity } from "@opencode-ai/core/location-activity" -import { LocationServiceMap, type LocationServices } from "@opencode-ai/core/location-services" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionRunner } from "@opencode-ai/core/session/runner/index" -import { SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Workspace } from "@opencode-ai/core/workspace" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { Form } from "@opencode/core/form" +import { Location } from "@opencode/core/location" +import { LocationActivity } from "@opencode/core/location-activity" +import { LocationServiceMap, type LocationServices } from "@opencode/core/location-services" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionRunner } from "@opencode/core/session/runner/index" +import { SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { Workspace } from "@opencode/core/workspace" import { testEffect } from "./lib/effect" // Keep real execution ownership, location caching, forms, and eviction. The fixture diff --git a/packages/core/test/location-filesystem.test.ts b/packages/core/test/location-filesystem.test.ts index 5e8e291b82a..8ce5a27b02e 100644 --- a/packages/core/test/location-filesystem.test.ts +++ b/packages/core/test/location-filesystem.test.ts @@ -2,11 +2,11 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" import { Effect, Exit, Layer } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FileSystem } from "@opencode-ai/core/filesystem" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" -import { Workspace } from "@opencode-ai/core/workspace" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FileSystem } from "@opencode/core/filesystem" +import { Location } from "@opencode/core/location" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" +import { Workspace } from "@opencode/core/workspace" import { location } from "./fixture/location" import { tmpdir } from "./fixture/tmpdir" import { it } from "./lib/effect" diff --git a/packages/core/test/location-layer.test.ts b/packages/core/test/location-layer.test.ts index 41216cba752..8c9f28cf984 100644 --- a/packages/core/test/location-layer.test.ts +++ b/packages/core/test/location-layer.test.ts @@ -1,8 +1,8 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" -import { Config } from "@opencode-ai/schema/config" -import { Money } from "@opencode-ai/schema/money" +import { Config } from "@opencode/schema/config" +import { Money } from "@opencode/schema/money" import { Cause, DateTime, @@ -22,24 +22,24 @@ import { Stream, } from "effect" import { TestClock } from "effect/testing" -import { Agent } from "@opencode-ai/core/agent" -import { Catalog } from "@opencode-ai/core/catalog" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" -import { LocationServiceMap, type LocationServices } from "@opencode-ai/core/location-services" -import { LocationActivity } from "@opencode-ai/core/location-activity" -import { Location } from "@opencode-ai/core/location" -import { LocationWatcher } from "@opencode-ai/core/filesystem/location-watcher" -import { Plugin } from "@opencode-ai/core/plugin" -import { Model } from "@opencode-ai/core/model" -import { Project } from "@opencode-ai/core/project" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { Workspace } from "@opencode-ai/core/workspace" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" +import { Agent } from "@opencode/core/agent" +import { Catalog } from "@opencode/core/catalog" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { LocationServiceMap, type LocationServices } from "@opencode/core/location-services" +import { LocationActivity } from "@opencode/core/location-activity" +import { Location } from "@opencode/core/location" +import { LocationWatcher } from "@opencode/core/filesystem/location-watcher" +import { Plugin } from "@opencode/core/plugin" +import { Model } from "@opencode/core/model" +import { Project } from "@opencode/core/project" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { Workspace } from "@opencode/core/workspace" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" import { tmpdir, tmpdirScoped } from "./fixture/tmpdir" import { tempGlobalLayer } from "./fixture/global" import { offlineModels } from "./fixture/models" diff --git a/packages/core/test/location.test.ts b/packages/core/test/location.test.ts index 3512c8f2ee6..499b0e61d1b 100644 --- a/packages/core/test/location.test.ts +++ b/packages/core/test/location.test.ts @@ -1,10 +1,10 @@ import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Workspace } from "@opencode-ai/core/workspace" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" +import { Workspace } from "@opencode/core/workspace" import { testEffect } from "./lib/effect" const workspaceID = Workspace.ID.make("wrk_test") diff --git a/packages/core/test/logging.test.ts b/packages/core/test/logging.test.ts index 88269ce5630..1b3aab27518 100644 --- a/packages/core/test/logging.test.ts +++ b/packages/core/test/logging.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import path from "path" -import { Global } from "@opencode-ai/util/global" -import { Logging } from "@opencode-ai/util/observability/logging" +import { Global } from "@opencode/util/global" +import { Logging } from "@opencode/util/observability/logging" describe("Logging", () => { test("uses a local-specific log file for local installs", () => { diff --git a/packages/core/test/mcp-instructions.test.ts b/packages/core/test/mcp-instructions.test.ts index 870974dacd2..8deac660c0d 100644 --- a/packages/core/test/mcp-instructions.test.ts +++ b/packages/core/test/mcp-instructions.test.ts @@ -1,11 +1,11 @@ import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Mcp } from "@opencode-ai/core/mcp/index" -import { McpInstructions } from "@opencode-ai/core/mcp/instructions" -import { Permission } from "@opencode-ai/core/permission" -import { McpTool } from "@opencode-ai/core/tool/mcp" +import { Agent } from "@opencode/core/agent" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Mcp } from "@opencode/core/mcp/index" +import { McpInstructions } from "@opencode/core/mcp/instructions" +import { Permission } from "@opencode/core/permission" +import { McpTool } from "@opencode/core/tool/mcp" import { it } from "./lib/effect" import { readInitial, readUpdate } from "./lib/instructions" diff --git a/packages/core/test/mcp-oauth.test.ts b/packages/core/test/mcp-oauth.test.ts index cfad7553257..6fd6656a6e0 100644 --- a/packages/core/test/mcp-oauth.test.ts +++ b/packages/core/test/mcp-oauth.test.ts @@ -1,9 +1,9 @@ import { afterAll, describe, expect, test } from "bun:test" import { auth, refreshAuthorization } from "@modelcontextprotocol/sdk/client/auth.js" -import { ConfigMCP } from "@opencode-ai/schema/config/mcp" -import { Credential } from "@opencode-ai/schema/credential" -import { Integration } from "@opencode-ai/core/integration" -import { McpOAuth } from "@opencode-ai/core/mcp/oauth" +import { ConfigMCP } from "@opencode/schema/config/mcp" +import { Credential } from "@opencode/schema/credential" +import { Integration } from "@opencode/core/integration" +import { McpOAuth } from "@opencode/core/mcp/oauth" import { Effect } from "effect" const authServer = Bun.serve({ port: 0, fetch: () => new Response(null, { status: 404 }) }) diff --git a/packages/core/test/mcp.test.ts b/packages/core/test/mcp.test.ts index 68039b86ce1..ac0ebde5b5e 100644 --- a/packages/core/test/mcp.test.ts +++ b/packages/core/test/mcp.test.ts @@ -13,30 +13,30 @@ import { ListToolsRequestSchema, ReadResourceRequestSchema, } from "@modelcontextprotocol/sdk/types.js" -import { Document, Event, Info } from "@opencode-ai/schema/config" -import { ConfigMCP } from "@opencode-ai/schema/config/mcp" -import { McpEvent } from "@opencode-ai/schema/mcp-event" -import { Config } from "@opencode-ai/core/config" -import { ConfigMcpPlugin } from "@opencode-ai/core/config/plugin/mcp" -import { Credential } from "@opencode-ai/core/credential" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { ID, type Payload } from "@opencode-ai/schema/event" -import { Form } from "@opencode-ai/core/form" -import { Integration } from "@opencode-ai/core/integration" -import { Environment } from "@opencode-ai/core/environment/index" -import { EnvironmentUnavailable } from "@opencode-ai/core/environment/unavailable" -import { Location } from "@opencode-ai/core/location" -import { Mcp } from "@opencode-ai/core/mcp/index" -import { McpClient } from "@opencode-ai/core/mcp/client" -import { McpStdio } from "@opencode-ai/core/mcp/stdio" -import { Permission } from "@opencode-ai/core/permission" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { State } from "@opencode-ai/core/state" -import { McpTool } from "@opencode-ai/core/tool/mcp" -import { Tool } from "@opencode-ai/core/tool" +import { Document, Event, Info } from "@opencode/schema/config" +import { ConfigMCP } from "@opencode/schema/config/mcp" +import { McpEvent } from "@opencode/schema/mcp-event" +import { Config } from "@opencode/core/config" +import { ConfigMcpPlugin } from "@opencode/core/config/plugin/mcp" +import { Credential } from "@opencode/core/credential" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { ID, type Payload } from "@opencode/schema/event" +import { Form } from "@opencode/core/form" +import { Integration } from "@opencode/core/integration" +import { Environment } from "@opencode/core/environment/index" +import { EnvironmentUnavailable } from "@opencode/core/environment/unavailable" +import { Location } from "@opencode/core/location" +import { Mcp } from "@opencode/core/mcp/index" +import { McpClient } from "@opencode/core/mcp/client" +import { McpStdio } from "@opencode/core/mcp/stdio" +import { Permission } from "@opencode/core/permission" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { State } from "@opencode/core/state" +import { McpTool } from "@opencode/core/tool/mcp" +import { Tool } from "@opencode/core/tool" import { Context, Deferred, @@ -55,7 +55,7 @@ import { import { TestClock } from "effect/testing" import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process" import { ExitCode, makeHandle, ProcessId } from "effect/unstable/process/ChildProcessSpawner" -import { Image } from "@opencode-ai/core/image" +import { Image } from "@opencode/core/image" import { advance, drain } from "./lib/clock" import { testEffect } from "./lib/effect" import { imagePassthrough } from "./lib/image" diff --git a/packages/core/test/modal/models.test.ts b/packages/core/test/modal/models.test.ts index a74e9d15ed1..fb12f0446cb 100644 --- a/packages/core/test/modal/models.test.ts +++ b/packages/core/test/modal/models.test.ts @@ -1,9 +1,9 @@ import { expect, test } from "bun:test" -import { ModalModels } from "@opencode-ai/core/modal/models" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { Money } from "@opencode-ai/schema/money" +import { ModalModels } from "@opencode/core/modal/models" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { Money } from "@opencode/schema/money" const providerID = Provider.ID.make("modal") diff --git a/packages/core/test/model-resolver.test.ts b/packages/core/test/model-resolver.test.ts index 02f9cd04c3e..c11a997eeaf 100644 --- a/packages/core/test/model-resolver.test.ts +++ b/packages/core/test/model-resolver.test.ts @@ -1,17 +1,17 @@ import { describe, expect } from "bun:test" -import { LLM, LanguageModel, Message } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { compileRequest } from "@opencode-ai/ai/route/client" +import { LLM, LanguageModel, Message } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { compileRequest } from "@opencode/ai/route/client" import { ConfigProvider, Effect, Layer } from "effect" import { Headers } from "effect/unstable/http" -import { Credential } from "@opencode-ai/core/credential" -import { Integration } from "@opencode-ai/core/integration" -import { Compatibility, ID, Info, VariantID } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { ModelResolver } from "@opencode-ai/core/model-resolver" -import { Catalog } from "@opencode-ai/core/catalog" -import { AISDK } from "@opencode-ai/core/aisdk" -import { Npm } from "@opencode-ai/util/npm" +import { Credential } from "@opencode/core/credential" +import { Integration } from "@opencode/core/integration" +import { Compatibility, ID, Info, VariantID } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { ModelResolver } from "@opencode/core/model-resolver" +import { Catalog } from "@opencode/core/catalog" +import { AISDK } from "@opencode/core/aisdk" +import { Npm } from "@opencode/util/npm" import { it } from "./lib/effect" interface ModelOptions { @@ -315,13 +315,13 @@ describe("ModelResolver", () => { settings: { baseURL: "https://mistral.example.com/v1" }, headers: { "cf-access-token": "access-token" }, }), - model("@opencode-ai/ai/providers/mistral", { + model("@opencode/ai/providers/mistral", { providerID: Provider.ID.make("gateway"), settings: { baseURL: "https://native-mistral.example.com/v1" }, headers: { "cf-access-token": "access-token" }, }), ...["baseten", "cloudflare-ai-gateway", "cloudflare-workers-ai", "deepseek", "fireworks"].map((name) => - model(`@opencode-ai/ai/providers/${name}`, { + model(`@opencode/ai/providers/${name}`, { providerID: Provider.ID.make("gateway"), settings: { baseURL: `https://${name}.example.com/v1` }, headers: { "cf-access-token": "access-token" }, @@ -718,7 +718,7 @@ describe("ModelResolver", () => { it.effect("applies plugin-projected OpenAI endpoint and headers", () => Effect.gen(function* () { const resolved = yield* ModelResolver.fromCatalogModel( - model("@opencode-ai/ai/providers/openai", { + model("@opencode/ai/providers/openai", { settings: { baseURL: "https://chatgpt.com/backend-api/codex" }, headers: { "chatgpt-account-id": "acct_123" }, body: {}, @@ -768,7 +768,7 @@ describe("ModelResolver", () => { it.effect("does not route native OpenAI-compatible packages to the codex backend", () => Effect.gen(function* () { const resolved = yield* ModelResolver.fromCatalogModel( - model("@opencode-ai/ai/providers/openai-compatible", { + model("@opencode/ai/providers/openai-compatible", { settings: { baseURL: "https://compatible.example/v1" }, }), Credential.OAuth.make({ @@ -841,7 +841,7 @@ describe("ModelResolver", () => { }), ) const resolved = yield* ModelResolver.fromCatalogModel( - model("@opencode-ai/ai/providers/custom", { + model("@opencode/ai/providers/custom", { settings: { region: "test" }, headers: { "x-package": "header" }, body: { custom: true }, @@ -849,7 +849,7 @@ describe("ModelResolver", () => { undefined, { loadPackage: (specifier) => { - expect(specifier).toBe("@opencode-ai/ai/providers/custom") + expect(specifier).toBe("@opencode/ai/providers/custom") return Effect.succeed({ model: (modelID, settings) => { expect(modelID).toBe("api-test-model") @@ -884,13 +884,13 @@ describe("ModelResolver", () => { expires: Date.now() + 60_000, }) const packages = [ - ["@opencode-ai/ai/providers/google-vertex", "accessToken"], - ["@opencode-ai/ai/providers/google-vertex/gemini", "accessToken"], - ["@opencode-ai/ai/providers/google-vertex/chat", "accessToken"], - ["@opencode-ai/ai/providers/google-vertex/responses", "accessToken"], - ["@opencode-ai/ai/providers/google-vertex/messages", "accessToken"], - ["@opencode-ai/ai/providers/anthropic", "authToken"], - ["@opencode-ai/ai/providers/anthropic-compatible", "authToken"], + ["@opencode/ai/providers/google-vertex", "accessToken"], + ["@opencode/ai/providers/google-vertex/gemini", "accessToken"], + ["@opencode/ai/providers/google-vertex/chat", "accessToken"], + ["@opencode/ai/providers/google-vertex/responses", "accessToken"], + ["@opencode/ai/providers/google-vertex/messages", "accessToken"], + ["@opencode/ai/providers/anthropic", "authToken"], + ["@opencode/ai/providers/anthropic-compatible", "authToken"], ] as const yield* Effect.forEach(packages, ([specifier, key]) => @@ -914,7 +914,7 @@ describe("ModelResolver", () => { const packages = [ [ "@ai-sdk/openai", - "@opencode-ai/ai/providers/openai", + "@opencode/ai/providers/openai", { reasoningEffort: "xhigh", reasoningSummary: "auto", @@ -928,55 +928,55 @@ describe("ModelResolver", () => { ], [ "@ai-sdk/anthropic", - "@opencode-ai/ai/providers/anthropic", + "@opencode/ai/providers/anthropic", { thinking: { type: "adaptive", display: "summarized" }, effort: "high" }, { thinking: { type: "adaptive", display: "summarized" }, effort: "high" }, ], [ "@ai-sdk/cerebras", - "@opencode-ai/ai/providers/cerebras", + "@opencode/ai/providers/cerebras", { reasoningEffort: "high" }, { reasoningEffort: "high" }, ], [ "@ai-sdk/deepinfra", - "@opencode-ai/ai/providers/deepinfra", + "@opencode/ai/providers/deepinfra", { reasoningEffort: "none" }, { reasoningEffort: "none" }, ], [ "@ai-sdk/openai-compatible", - "@opencode-ai/ai/providers/openai-compatible", + "@opencode/ai/providers/openai-compatible", { reasoningEffort: "high" }, { reasoningEffort: "high" }, ], [ "@ai-sdk/google", - "@opencode-ai/ai/providers/google", + "@opencode/ai/providers/google", { thinkingConfig: { thinkingLevel: "high" } }, { thinkingConfig: { thinkingLevel: "high" } }, ], [ "@ai-sdk/google-vertex", - "@opencode-ai/ai/providers/google-vertex", + "@opencode/ai/providers/google-vertex", { thinkingConfig: { thinkingLevel: "high" } }, { thinkingConfig: { thinkingLevel: "high" } }, ], [ "@openrouter/ai-sdk-provider", - "@opencode-ai/ai/providers/openrouter", + "@opencode/ai/providers/openrouter", { reasoning: { effort: "high" } }, { reasoning: { effort: "high" } }, ], [ "@ai-sdk/groq", - "@opencode-ai/ai/providers/groq", + "@opencode/ai/providers/groq", { reasoningEffort: "high", parallelToolCalls: false }, { reasoningEffort: "high", parallelToolCalls: false }, ], [ "@ai-sdk/mistral", - "@opencode-ai/ai/providers/mistral", + "@opencode/ai/providers/mistral", { safePrompt: true, documentImageLimit: 4, @@ -994,11 +994,11 @@ describe("ModelResolver", () => { ], [ "@ai-sdk/togetherai", - "@opencode-ai/ai/providers/togetherai", + "@opencode/ai/providers/togetherai", { reasoningEffort: "high" }, { reasoningEffort: "high" }, ], - ["@ai-sdk/xai", "@opencode-ai/ai/providers/xai", { reasoningEffort: "high" }, { reasoningEffort: "high" }], + ["@ai-sdk/xai", "@opencode/ai/providers/xai", { reasoningEffort: "high" }, { reasoningEffort: "high" }], ] as const yield* Effect.forEach(packages, ([catalogPackage, nativePackage, sourceOptions, providerOptions]) => @@ -1037,26 +1037,26 @@ describe("ModelResolver", () => { it.effect("never loads the AI SDK for packages with native implementations", () => Effect.gen(function* () { const packages = [ - ["@ai-sdk/anthropic", "@opencode-ai/ai/providers/anthropic", "api-model"], - ["@ai-sdk/amazon-bedrock", "@opencode-ai/ai/providers/amazon-bedrock", "api-model"], + ["@ai-sdk/anthropic", "@opencode/ai/providers/anthropic", "api-model"], + ["@ai-sdk/amazon-bedrock", "@opencode/ai/providers/amazon-bedrock", "api-model"], [ "@ai-sdk/amazon-bedrock/mantle", - "@opencode-ai/ai/providers/amazon-bedrock/mantle/responses", + "@opencode/ai/providers/amazon-bedrock/mantle/responses", "openai.gpt-oss-120b", ], - ["@ai-sdk/azure", "@opencode-ai/ai/providers/azure/responses", "api-model"], - ["@ai-sdk/cerebras", "@opencode-ai/ai/providers/cerebras", "api-model"], - ["@ai-sdk/deepinfra", "@opencode-ai/ai/providers/deepinfra", "api-model"], - ["@ai-sdk/google", "@opencode-ai/ai/providers/google", "api-model"], - ["@ai-sdk/google-vertex", "@opencode-ai/ai/providers/google-vertex", "api-model"], - ["@ai-sdk/google-vertex/anthropic", "@opencode-ai/ai/providers/google-vertex/messages", "claude-sonnet-4-6"], - ["@ai-sdk/groq", "@opencode-ai/ai/providers/groq", "api-model"], - ["@ai-sdk/mistral", "@opencode-ai/ai/providers/mistral", "api-model"], - ["@ai-sdk/openai", "@opencode-ai/ai/providers/openai", "api-model"], - ["@ai-sdk/openai-compatible", "@opencode-ai/ai/providers/openai-compatible", "api-model"], - ["@openrouter/ai-sdk-provider", "@opencode-ai/ai/providers/openrouter", "api-model"], - ["@ai-sdk/togetherai", "@opencode-ai/ai/providers/togetherai", "api-model"], - ["@ai-sdk/xai", "@opencode-ai/ai/providers/xai", "api-model"], + ["@ai-sdk/azure", "@opencode/ai/providers/azure/responses", "api-model"], + ["@ai-sdk/cerebras", "@opencode/ai/providers/cerebras", "api-model"], + ["@ai-sdk/deepinfra", "@opencode/ai/providers/deepinfra", "api-model"], + ["@ai-sdk/google", "@opencode/ai/providers/google", "api-model"], + ["@ai-sdk/google-vertex", "@opencode/ai/providers/google-vertex", "api-model"], + ["@ai-sdk/google-vertex/anthropic", "@opencode/ai/providers/google-vertex/messages", "claude-sonnet-4-6"], + ["@ai-sdk/groq", "@opencode/ai/providers/groq", "api-model"], + ["@ai-sdk/mistral", "@opencode/ai/providers/mistral", "api-model"], + ["@ai-sdk/openai", "@opencode/ai/providers/openai", "api-model"], + ["@ai-sdk/openai-compatible", "@opencode/ai/providers/openai-compatible", "api-model"], + ["@openrouter/ai-sdk-provider", "@opencode/ai/providers/openrouter", "api-model"], + ["@ai-sdk/togetherai", "@opencode/ai/providers/togetherai", "api-model"], + ["@ai-sdk/xai", "@opencode/ai/providers/xai", "api-model"], ] as const yield* Effect.forEach(packages, ([catalogPackage, nativePackage, modelID]) => @@ -1104,7 +1104,7 @@ describe("ModelResolver", () => { credential, { loadPackage: (specifier) => { - expect(specifier).toBe("@opencode-ai/ai/providers/google-vertex/messages") + expect(specifier).toBe("@opencode/ai/providers/google-vertex/messages") return Effect.succeed({ model: (modelID, settings) => { expect(modelID).toBe("claude-sonnet-4-6") @@ -1421,7 +1421,7 @@ describe("ModelResolver", () => { it.effect("reports whether a catalog model declares a provider package", () => Effect.sync(() => { expect(ModelResolver.hasPackage(model(Provider.aisdk("@ai-sdk/openai")))).toBe(true) - expect(ModelResolver.hasPackage(model("@opencode-ai/ai/providers/custom"))).toBe(true) + expect(ModelResolver.hasPackage(model("@opencode/ai/providers/custom"))).toBe(true) expect(ModelResolver.hasPackage(model(undefined))).toBe(false) }), ) diff --git a/packages/core/test/model.test.ts b/packages/core/test/model.test.ts index 3844e42a0dd..065e9781231 100644 --- a/packages/core/test/model.test.ts +++ b/packages/core/test/model.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import { Schema } from "effect" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" const decode = Schema.decodeUnknownSync(Model.Ref) diff --git a/packages/core/test/models.test.ts b/packages/core/test/models.test.ts index 2c0fed83a3d..1672464ce92 100644 --- a/packages/core/test/models.test.ts +++ b/packages/core/test/models.test.ts @@ -1,15 +1,15 @@ import { describe, expect, test } from "bun:test" -import { Money } from "@opencode-ai/schema/money" +import { Money } from "@opencode/schema/money" import { Effect, Fiber, Layer, Ref, Scope, Stream } from "effect" import { HttpClient, HttpClientResponse } from "effect/unstable/http" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNodePlatform } from "@opencode-ai/util/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { KV } from "@opencode-ai/core/kv" -import { Model } from "@opencode-ai/core/model" -import { bodyDigest, ModelsDev } from "@opencode-ai/core/models-dev" -import { Provider } from "@opencode-ai/core/provider" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNodePlatform } from "@opencode/util/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { KV } from "@opencode/core/kv" +import { Model } from "@opencode/core/model" +import { bodyDigest, ModelsDev } from "@opencode/core/models-dev" +import { Provider } from "@opencode/core/provider" import { it } from "./lib/effect" const cacheKey = "models-dev:catalog" diff --git a/packages/core/test/network-guard.test.ts b/packages/core/test/network-guard.test.ts index cf55ff07d78..c4b8481afb7 100644 --- a/packages/core/test/network-guard.test.ts +++ b/packages/core/test/network-guard.test.ts @@ -1,8 +1,8 @@ import { describe, expect, test } from "bun:test" import { Effect, Layer } from "effect" import { FetchHttpClient, HttpClient, HttpClientResponse } from "effect/unstable/http" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNodePlatform } from "@opencode-ai/util/effect/app-node-platform" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNodePlatform } from "@opencode/util/effect/app-node-platform" import { it, refuseNetwork } from "./lib/effect" describe("test harness network guard", () => { diff --git a/packages/core/test/npm-config.test.ts b/packages/core/test/npm-config.test.ts index a2faba8eb36..de155643925 100644 --- a/packages/core/test/npm-config.test.ts +++ b/packages/core/test/npm-config.test.ts @@ -1,7 +1,7 @@ import path from "path" import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { NpmConfig } from "@opencode-ai/util/npm-config" +import { NpmConfig } from "@opencode/util/npm-config" import { tmpdir } from "./fixture/tmpdir" describe("NpmConfig.load", () => { diff --git a/packages/core/test/npm.test.ts b/packages/core/test/npm.test.ts index 8df1c49a4bf..ff73b82a954 100644 --- a/packages/core/test/npm.test.ts +++ b/packages/core/test/npm.test.ts @@ -3,9 +3,9 @@ import path from "path" import { pathToFileURL } from "url" import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Global } from "@opencode-ai/util/global" -import { Npm } from "@opencode-ai/util/npm" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Global } from "@opencode/util/global" +import { Npm } from "@opencode/util/npm" import { tmpdir } from "./fixture/tmpdir" const win = process.platform === "win32" diff --git a/packages/core/test/patch.test.ts b/packages/core/test/patch.test.ts index f4056439db5..22df2a13271 100644 --- a/packages/core/test/patch.test.ts +++ b/packages/core/test/patch.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { Patch } from "@opencode-ai/util/patch" +import { Patch } from "@opencode/util/patch" import { Result } from "effect" const parse = (input: string) => Result.getOrThrow(Patch.parse(input)) diff --git a/packages/core/test/permission.test.ts b/packages/core/test/permission.test.ts index 6dba198515b..54ae17bb28a 100644 --- a/packages/core/test/permission.test.ts +++ b/packages/core/test/permission.test.ts @@ -1,21 +1,21 @@ import { describe, expect } from "bun:test" import { Cause, Deferred, Effect, Fiber, Layer } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { Permission } from "@opencode-ai/core/permission" -import { PermissionTable } from "@opencode-ai/core/permission/sql" -import { PermissionSaved } from "@opencode-ai/core/permission/saved" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { ShellParse } from "@opencode-ai/core/shell/parse" +import { Agent } from "@opencode/core/agent" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { Permission } from "@opencode/core/permission" +import { PermissionTable } from "@opencode/core/permission/sql" +import { PermissionSaved } from "@opencode/core/permission/saved" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { ShellParse } from "@opencode/core/shell/parse" import { eq } from "drizzle-orm" import { location } from "./fixture/location" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/plugin-failure.test.ts b/packages/core/test/plugin-failure.test.ts index d0ca5a24a9c..a800b5d8578 100644 --- a/packages/core/test/plugin-failure.test.ts +++ b/packages/core/test/plugin-failure.test.ts @@ -1,10 +1,10 @@ import { expect } from "bun:test" import { Deferred, Effect, Exit, Fiber, Schema } from "effect" -import { Bus } from "@opencode-ai/core/bus" -import { Command } from "@opencode-ai/core/command" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { Rpc } from "@opencode-ai/core/rpc" +import { Bus } from "@opencode/core/bus" +import { Command } from "@opencode/core/command" +import { Plugin } from "@opencode/core/plugin" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { Rpc } from "@opencode/core/rpc" import { testEffect } from "./lib/effect" import { PluginTestLayer } from "./plugin/fixture" diff --git a/packages/core/test/plugin.test.ts b/packages/core/test/plugin.test.ts index ea5757e472c..1b71e18978d 100644 --- a/packages/core/test/plugin.test.ts +++ b/packages/core/test/plugin.test.ts @@ -2,15 +2,15 @@ import { expect } from "bun:test" import path from "path" import { Clock, Deferred, Effect } from "effect" import { TestClock } from "effect/testing" -import { Command } from "@opencode-ai/core/command" -import { Bus } from "@opencode-ai/core/bus" -import { Credential } from "@opencode-ai/core/credential" -import { Integration } from "@opencode-ai/core/integration" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginModule } from "@opencode-ai/core/plugin/module" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { fromPromise } from "@opencode-ai/plugin/promise/adapter" -import { Session } from "@opencode-ai/schema/session" +import { Command } from "@opencode/core/command" +import { Bus } from "@opencode/core/bus" +import { Credential } from "@opencode/core/credential" +import { Integration } from "@opencode/core/integration" +import { Plugin } from "@opencode/core/plugin" +import { PluginModule } from "@opencode/core/plugin/module" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { fromPromise } from "@opencode/plugin/promise/adapter" +import { Session } from "@opencode/schema/session" import { testEffect } from "./lib/effect" import { PluginTestLayer } from "./plugin/fixture" diff --git a/packages/core/test/plugin/command.test.ts b/packages/core/test/plugin/command.test.ts index cf802ecc4d5..f953b94ddf2 100644 --- a/packages/core/test/plugin/command.test.ts +++ b/packages/core/test/plugin/command.test.ts @@ -1,16 +1,16 @@ import { describe, expect, test } from "bun:test" import { Effect, Layer } from "effect" -import { Command } from "@opencode-ai/core/command" -import { Bus } from "@opencode-ai/core/bus" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { Mcp } from "@opencode-ai/core/mcp/index" -import { CommandPlugin } from "@opencode-ai/core/plugin/command" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/schema/session" -import { SessionInbox } from "@opencode-ai/schema/session-inbox" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Command } from "@opencode/core/command" +import { Bus } from "@opencode/core/bus" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { Mcp } from "@opencode/core/mcp/index" +import { CommandPlugin } from "@opencode/core/plugin/command" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/schema/session" +import { SessionInbox } from "@opencode/schema/session-inbox" +import { SessionMessage } from "@opencode/schema/session-message" +import { LayerNode } from "@opencode/util/effect/layer-node" import { DateTime } from "effect" import { emptyMcpLayer } from "../fixture/mcp" import { location } from "../fixture/location" diff --git a/packages/core/test/plugin/fixture.ts b/packages/core/test/plugin/fixture.ts index 9f323bec9ee..bf848c8b742 100644 --- a/packages/core/test/plugin/fixture.ts +++ b/packages/core/test/plugin/fixture.ts @@ -1,38 +1,38 @@ -import { Agent } from "@opencode-ai/core/agent" -import { AISDK } from "@opencode-ai/core/aisdk" -import { Catalog } from "@opencode-ai/core/catalog" -import { Command } from "@opencode-ai/core/command" -import { Config } from "@opencode-ai/core/config" -import { Credential } from "@opencode-ai/core/credential" -import { LayerNodePlatform } from "@opencode-ai/util/effect/app-node-platform" -import { AppProcess } from "@opencode-ai/util/process" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { FileSystem } from "@opencode-ai/core/filesystem" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Form } from "@opencode-ai/core/form" -import { Generate } from "@opencode-ai/core/generate" -import { Integration } from "@opencode-ai/core/integration" -import { KV } from "@opencode-ai/core/kv" -import { Location } from "@opencode-ai/core/location" -import { Mcp } from "@opencode-ai/core/mcp/index" -import { Npm } from "@opencode-ai/util/npm" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { Session } from "@opencode-ai/core/session" -import { PersistentPty } from "@opencode-ai/core/persistent-pty" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Permission } from "@opencode-ai/core/permission" -import { Reference } from "@opencode-ai/core/reference" -import { Rpc } from "@opencode-ai/core/rpc" -import { Skill } from "@opencode-ai/core/skill" -import { SkillDiscovery } from "@opencode-ai/core/skill/discovery" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { Tool } from "@opencode-ai/core/tool" -import { Vcs } from "@opencode-ai/core/vcs" -import { WebSearch } from "@opencode-ai/core/websearch" -import { Worktree } from "@opencode-ai/core/worktree" +import { Agent } from "@opencode/core/agent" +import { AISDK } from "@opencode/core/aisdk" +import { Catalog } from "@opencode/core/catalog" +import { Command } from "@opencode/core/command" +import { Config } from "@opencode/core/config" +import { Credential } from "@opencode/core/credential" +import { LayerNodePlatform } from "@opencode/util/effect/app-node-platform" +import { AppProcess } from "@opencode/util/process" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { FileSystem } from "@opencode/core/filesystem" +import { FSUtil } from "@opencode/util/fs-util" +import { Form } from "@opencode/core/form" +import { Generate } from "@opencode/core/generate" +import { Integration } from "@opencode/core/integration" +import { KV } from "@opencode/core/kv" +import { Location } from "@opencode/core/location" +import { Mcp } from "@opencode/core/mcp/index" +import { Npm } from "@opencode/util/npm" +import { Plugin } from "@opencode/core/plugin" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { Session } from "@opencode/core/session" +import { PersistentPty } from "@opencode/core/persistent-pty" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Permission } from "@opencode/core/permission" +import { Reference } from "@opencode/core/reference" +import { Rpc } from "@opencode/core/rpc" +import { Skill } from "@opencode/core/skill" +import { SkillDiscovery } from "@opencode/core/skill/discovery" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { Tool } from "@opencode/core/tool" +import { Vcs } from "@opencode/core/vcs" +import { WebSearch } from "@opencode/core/websearch" +import { Worktree } from "@opencode/core/worktree" import { Effect, Layer } from "effect" import { tempLocationLayer } from "../fixture/location" import { emptyMcpLayer } from "../fixture/mcp" diff --git a/packages/core/test/plugin/fixtures/greeting.ts b/packages/core/test/plugin/fixtures/greeting.ts index 1c2f47c3fe9..3b7547f1a19 100644 --- a/packages/core/test/plugin/fixtures/greeting.ts +++ b/packages/core/test/plugin/fixtures/greeting.ts @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "greeting", diff --git a/packages/core/test/plugin/host.ts b/packages/core/test/plugin/host.ts index 76fe9a62ad6..3cbe696ab4e 100644 --- a/packages/core/test/plugin/host.ts +++ b/packages/core/test/plugin/host.ts @@ -1,15 +1,15 @@ -import { Plugin } from "@opencode-ai/plugin/effect" -import type { IntegrationMethod } from "@opencode-ai/plugin/effect/integration" -import { Agent } from "@opencode-ai/core/agent" -import { Catalog } from "@opencode-ai/core/catalog" -import { Credential } from "@opencode-ai/core/credential" -import { Integration } from "@opencode-ai/core/integration" -import { Location } from "@opencode-ai/core/location" -import { Model } from "@opencode-ai/core/model" -import { Project } from "@opencode-ai/core/project" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { WebSearch } from "@opencode-ai/core/websearch" +import { Plugin } from "@opencode/plugin/effect" +import type { IntegrationMethod } from "@opencode/plugin/effect/integration" +import { Agent } from "@opencode/core/agent" +import { Catalog } from "@opencode/core/catalog" +import { Credential } from "@opencode/core/credential" +import { Integration } from "@opencode/core/integration" +import { Location } from "@opencode/core/location" +import { Model } from "@opencode/core/model" +import { Project } from "@opencode/core/project" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { WebSearch } from "@opencode/core/websearch" import { Effect, Stream } from "effect" type Overrides = Partial> & { diff --git a/packages/core/test/plugin/mcp-codemode-exclusion.test.ts b/packages/core/test/plugin/mcp-codemode-exclusion.test.ts index fafa4604d04..5ab4f316345 100644 --- a/packages/core/test/plugin/mcp-codemode-exclusion.test.ts +++ b/packages/core/test/plugin/mcp-codemode-exclusion.test.ts @@ -1,6 +1,6 @@ import { expect } from "bun:test" -import { McpCodeModeExclusionPlugin } from "@opencode-ai/core/plugin/mcp-codemode-exclusion" -import type { Mcp } from "@opencode-ai/schema/mcp" +import { McpCodeModeExclusionPlugin } from "@opencode/core/plugin/mcp-codemode-exclusion" +import type { Mcp } from "@opencode/schema/mcp" import { Effect, type Types } from "effect" import { it } from "../lib/effect" import { host } from "./host" diff --git a/packages/core/test/plugin/models-dev.test.ts b/packages/core/test/plugin/models-dev.test.ts index d4177ffec40..7ad621c8de7 100644 --- a/packages/core/test/plugin/models-dev.test.ts +++ b/packages/core/test/plugin/models-dev.test.ts @@ -1,22 +1,22 @@ import path from "path" import { describe, expect } from "bun:test" -import { Money } from "@opencode-ai/schema/money" +import { Money } from "@opencode/schema/money" import { Context, Effect, Exit, Layer, Scope } from "effect" import { TestClock } from "effect/testing" -import { Catalog } from "@opencode-ai/core/catalog" -import { Integration } from "@opencode-ai/core/integration" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { Model } from "@opencode-ai/core/model" -import { ModelsDev } from "@opencode-ai/core/models-dev" -import { ModelsDevPlugin } from "@opencode-ai/core/plugin/models-dev" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { Catalog } from "@opencode/core/catalog" +import { Integration } from "@opencode/core/integration" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { Model } from "@opencode/core/model" +import { ModelsDev } from "@opencode/core/models-dev" +import { ModelsDevPlugin } from "@opencode/core/plugin/models-dev" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" import { withEnv } from "../fixture/env" import { location } from "../fixture/location" import { testEffect } from "../lib/effect" diff --git a/packages/core/test/plugin/module.test.ts b/packages/core/test/plugin/module.test.ts index b1039d6bd7c..d93716f4e0d 100644 --- a/packages/core/test/plugin/module.test.ts +++ b/packages/core/test/plugin/module.test.ts @@ -1,11 +1,11 @@ import { expect } from "bun:test" import path from "node:path" import { Deferred, Effect, Exit, Fiber, Layer, Schedule, Scope, Stream } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { PluginModule } from "@opencode-ai/core/plugin/module" -import { Global } from "@opencode-ai/util/global" -import { Npm } from "@opencode-ai/util/npm" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { PluginModule } from "@opencode/core/plugin/module" +import { Global } from "@opencode/util/global" +import { Npm } from "@opencode/util/npm" import { tempGlobalLayer } from "../fixture/global" import { tmpdirScoped } from "../fixture/tmpdir" import { testEffect } from "../lib/effect" diff --git a/packages/core/test/plugin/optimize.test.ts b/packages/core/test/plugin/optimize.test.ts index fd6dc3ea75e..3519d431888 100644 --- a/packages/core/test/plugin/optimize.test.ts +++ b/packages/core/test/plugin/optimize.test.ts @@ -1,16 +1,16 @@ import { describe, expect, test } from "bun:test" -import { SystemPart } from "@opencode-ai/ai" -import { Agent } from "@opencode-ai/core/agent" -import { Catalog } from "@opencode-ai/core/catalog" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { OptimizePlugin } from "@opencode-ai/core/plugin/optimize" -import { Session } from "@opencode-ai/core/session" -import { SessionSystemPrompt } from "@opencode-ai/core/session/system-prompt" -import type { SessionHooks } from "@opencode-ai/plugin/effect/session" -import { Model } from "@opencode-ai/schema/model" -import { Provider } from "@opencode-ai/schema/provider" +import { SystemPart } from "@opencode/ai" +import { Agent } from "@opencode/core/agent" +import { Catalog } from "@opencode/core/catalog" +import { Plugin } from "@opencode/core/plugin" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { PluginHost } from "@opencode/core/plugin/host" +import { OptimizePlugin } from "@opencode/core/plugin/optimize" +import { Session } from "@opencode/core/session" +import { SessionSystemPrompt } from "@opencode/core/session/system-prompt" +import type { SessionHooks } from "@opencode/plugin/effect/session" +import { Model } from "@opencode/schema/model" +import { Provider } from "@opencode/schema/provider" import { Effect } from "effect" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/plan.test.ts b/packages/core/test/plugin/plan.test.ts index 25b14394b2b..bb2f948bdcf 100644 --- a/packages/core/test/plugin/plan.test.ts +++ b/packages/core/test/plugin/plan.test.ts @@ -1,21 +1,21 @@ import { describe, expect } from "bun:test" -import { Message, ToolFailure } from "@opencode-ai/ai" +import { Message, ToolFailure } from "@opencode/ai" import { DateTime, Effect, Option, Stream, Types } from "effect" -import type { SessionContext } from "@opencode-ai/plugin/effect/session" -import type { ToolHooks } from "@opencode-ai/plugin/effect/tool" -import { Agent } from "@opencode-ai/core/agent" -import { Environment } from "@opencode-ai/core/environment/index" -import { Event } from "@opencode-ai/schema/event" -import { Model } from "@opencode-ai/core/model" -import { PlanPlugin } from "@opencode-ai/core/plugin/plan" -import { Permission } from "@opencode-ai/core/permission" -import { Provider } from "@opencode-ai/core/provider" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { Tool } from "@opencode-ai/schema/tool" -import { Global } from "@opencode-ai/util/global" +import type { SessionContext } from "@opencode/plugin/effect/session" +import type { ToolHooks } from "@opencode/plugin/effect/tool" +import { Agent } from "@opencode/core/agent" +import { Environment } from "@opencode/core/environment/index" +import { Event } from "@opencode/schema/event" +import { Model } from "@opencode/core/model" +import { PlanPlugin } from "@opencode/core/plugin/plan" +import { Permission } from "@opencode/core/permission" +import { Provider } from "@opencode/core/provider" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionInbox } from "@opencode/core/session/inbox" +import { SessionMessage } from "@opencode/core/session/message" +import { Tool } from "@opencode/schema/tool" +import { Global } from "@opencode/util/global" import path from "path" import { it } from "../lib/effect" import { host } from "./host" diff --git a/packages/core/test/plugin/provider-amazon-bedrock.test.ts b/packages/core/test/plugin/provider-amazon-bedrock.test.ts index c486b7c21f7..44e6a57c4bb 100644 --- a/packages/core/test/plugin/provider-amazon-bedrock.test.ts +++ b/packages/core/test/plugin/provider-amazon-bedrock.test.ts @@ -1,11 +1,11 @@ import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Integration } from "@opencode-ai/core/integration" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { AmazonBedrockPlugin } from "@opencode-ai/core/plugin/provider/amazon-bedrock" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Integration } from "@opencode/core/integration" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { AmazonBedrockPlugin } from "@opencode/core/plugin/provider/amazon-bedrock" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" @@ -209,7 +209,7 @@ describe("AmazonBedrockPlugin", () => { item.package = Provider.aisdk("@ai-sdk/amazon-bedrock/mantle") }) catalog.provider.update(Provider.ID.make("native"), (item) => { - item.package = "@opencode-ai/ai/providers/amazon-bedrock" + item.package = "@opencode/ai/providers/amazon-bedrock" }) catalog.provider.update(Provider.ID.make("other"), (item) => { item.package = Provider.aisdk("@ai-sdk/anthropic") diff --git a/packages/core/test/plugin/provider-anthropic.test.ts b/packages/core/test/plugin/provider-anthropic.test.ts index 40ccaee4f6a..0d670cc5826 100644 --- a/packages/core/test/plugin/provider-anthropic.test.ts +++ b/packages/core/test/plugin/provider-anthropic.test.ts @@ -1,12 +1,12 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { AnthropicPlugin } from "@opencode-ai/core/plugin/provider/anthropic" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { AnthropicPlugin } from "@opencode/core/plugin/provider/anthropic" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-azure.test.ts b/packages/core/test/plugin/provider-azure.test.ts index 942270782d9..8aacb8dc37c 100644 --- a/packages/core/test/plugin/provider-azure.test.ts +++ b/packages/core/test/plugin/provider-azure.test.ts @@ -1,20 +1,20 @@ import { chmod } from "node:fs/promises" -import { Agent } from "@opencode-ai/core/agent" -import { AISDK } from "@opencode-ai/core/aisdk" +import { Agent } from "@opencode/core/agent" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect } from "bun:test" import { Effect, Schedule } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Credential } from "@opencode-ai/core/credential" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { AzurePlugin } from "@opencode-ai/core/plugin/provider/azure" -import { Provider } from "@opencode-ai/core/provider" -import { Integration } from "@opencode-ai/core/integration" -import { Location } from "@opencode-ai/core/location" -import { Session } from "@opencode-ai/core/session" -import { AppProcess } from "@opencode-ai/util/process" +import { Catalog } from "@opencode/core/catalog" +import { Credential } from "@opencode/core/credential" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { AzurePlugin } from "@opencode/core/plugin/provider/azure" +import { Provider } from "@opencode/core/provider" +import { Integration } from "@opencode/core/integration" +import { Location } from "@opencode/core/location" +import { Session } from "@opencode/core/session" +import { AppProcess } from "@opencode/util/process" import { fakeSelectorSdk } from "../fixture/selector" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-cerebras.test.ts b/packages/core/test/plugin/provider-cerebras.test.ts index 51511f6a3a3..9940c5b5bd5 100644 --- a/packages/core/test/plugin/provider-cerebras.test.ts +++ b/packages/core/test/plugin/provider-cerebras.test.ts @@ -1,10 +1,10 @@ import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { CerebrasPlugin } from "@opencode-ai/core/plugin/provider/cerebras" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { CerebrasPlugin } from "@opencode/core/plugin/provider/cerebras" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" @@ -49,7 +49,7 @@ describe("CerebrasPlugin", () => { const providerID = Provider.ID.make("custom-cerebras") yield* catalog.transform((catalog) => { catalog.provider.update(providerID, (item) => { - item.package = "@opencode-ai/ai/providers/cerebras" + item.package = "@opencode/ai/providers/cerebras" item.headers = { Existing: "1" } }) }) diff --git a/packages/core/test/plugin/provider-cloudflare-ai-gateway.test.ts b/packages/core/test/plugin/provider-cloudflare-ai-gateway.test.ts index db02833508b..c4ac8fcbe7e 100644 --- a/packages/core/test/plugin/provider-cloudflare-ai-gateway.test.ts +++ b/packages/core/test/plugin/provider-cloudflare-ai-gateway.test.ts @@ -1,14 +1,14 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect, mock } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { CloudflareAIGatewayPlugin } from "@opencode-ai/core/plugin/provider/cloudflare-ai-gateway" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { CloudflareAIGatewayPlugin } from "@opencode/core/plugin/provider/cloudflare-ai-gateway" +import { Provider } from "@opencode/core/provider" import { withEnv } from "../fixture/env" -import { Integration } from "@opencode-ai/core/integration" +import { Integration } from "@opencode/core/integration" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-cloudflare-workers-ai.test.ts b/packages/core/test/plugin/provider-cloudflare-workers-ai.test.ts index 74603029f2a..1d2d525268d 100644 --- a/packages/core/test/plugin/provider-cloudflare-workers-ai.test.ts +++ b/packages/core/test/plugin/provider-cloudflare-workers-ai.test.ts @@ -1,13 +1,13 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { CloudflareWorkersAIPlugin } from "@opencode-ai/core/plugin/provider/cloudflare-workers-ai" -import { Provider } from "@opencode-ai/core/provider" -import { Integration } from "@opencode-ai/core/integration" +import { Catalog } from "@opencode/core/catalog" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { CloudflareWorkersAIPlugin } from "@opencode/core/plugin/provider/cloudflare-workers-ai" +import { Provider } from "@opencode/core/provider" +import { Integration } from "@opencode/core/integration" import { fakeSelectorSdk } from "../fixture/selector" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-digitalocean.test.ts b/packages/core/test/plugin/provider-digitalocean.test.ts index 3323fa34bb5..9986435570c 100644 --- a/packages/core/test/plugin/provider-digitalocean.test.ts +++ b/packages/core/test/plugin/provider-digitalocean.test.ts @@ -2,15 +2,15 @@ import { describe, expect, test } from "bun:test" import { Clock, Effect, Schedule } from "effect" import { TestClock } from "effect/testing" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" -import { Catalog } from "@opencode-ai/core/catalog" -import { Credential } from "@opencode-ai/core/credential" -import { Integration } from "@opencode-ai/core/integration" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { Provider } from "@opencode-ai/core/provider" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { DigitalOceanPlugin } from "@opencode-ai/core/plugin/provider/digitalocean" +import { Catalog } from "@opencode/core/catalog" +import { Credential } from "@opencode/core/credential" +import { Integration } from "@opencode/core/integration" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { Provider } from "@opencode/core/provider" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { DigitalOceanPlugin } from "@opencode/core/plugin/provider/digitalocean" import { drain } from "../lib/clock" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-dynamic.test.ts b/packages/core/test/plugin/provider-dynamic.test.ts index c07deaf9393..c29767ba136 100644 --- a/packages/core/test/plugin/provider-dynamic.test.ts +++ b/packages/core/test/plugin/provider-dynamic.test.ts @@ -1,16 +1,16 @@ -import { Npm } from "@opencode-ai/util/npm" +import { Npm } from "@opencode/util/npm" import { describe, expect } from "bun:test" import { Cause, Effect, Layer } from "effect" import fs from "fs/promises" import os from "os" import path from "path" -import { AISDK } from "@opencode-ai/core/aisdk" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { DynamicProviderPlugin } from "@opencode-ai/core/plugin/provider/dynamic" -import { Provider } from "@opencode-ai/core/provider" +import { AISDK } from "@opencode/core/aisdk" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { DynamicProviderPlugin } from "@opencode/core/plugin/provider/dynamic" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-factory.test.ts b/packages/core/test/plugin/provider-factory.test.ts index 2b1f44f2939..cb6e3901dba 100644 --- a/packages/core/test/plugin/provider-factory.test.ts +++ b/packages/core/test/plugin/provider-factory.test.ts @@ -1,16 +1,16 @@ import { expect } from "bun:test" import { Effect } from "effect" -import { AISDK } from "@opencode-ai/core/aisdk" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { AlibabaPlugin } from "@opencode-ai/core/plugin/provider/alibaba" -import { CoherePlugin } from "@opencode-ai/core/plugin/provider/cohere" -import { GatewayPlugin } from "@opencode-ai/core/plugin/provider/gateway" -import { MistralPlugin } from "@opencode-ai/core/plugin/provider/mistral" -import { PerplexityPlugin } from "@opencode-ai/core/plugin/provider/perplexity" -import { VenicePlugin } from "@opencode-ai/core/plugin/provider/venice" -import { Provider } from "@opencode-ai/core/provider" +import { AISDK } from "@opencode/core/aisdk" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { AlibabaPlugin } from "@opencode/core/plugin/provider/alibaba" +import { CoherePlugin } from "@opencode/core/plugin/provider/cohere" +import { GatewayPlugin } from "@opencode/core/plugin/provider/gateway" +import { MistralPlugin } from "@opencode/core/plugin/provider/mistral" +import { PerplexityPlugin } from "@opencode/core/plugin/provider/perplexity" +import { VenicePlugin } from "@opencode/core/plugin/provider/venice" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-github-copilot.test.ts b/packages/core/test/plugin/provider-github-copilot.test.ts index e9ee64ea904..6e4c53aac72 100644 --- a/packages/core/test/plugin/provider-github-copilot.test.ts +++ b/packages/core/test/plugin/provider-github-copilot.test.ts @@ -1,25 +1,25 @@ -import { AISDK } from "@opencode-ai/core/aisdk" -import { App } from "@opencode-ai/core/app" -import { Agent } from "@opencode-ai/schema/agent" -import { Session } from "@opencode-ai/core/session" -import { Location } from "@opencode-ai/core/location" +import { AISDK } from "@opencode/core/aisdk" +import { App } from "@opencode/core/app" +import { Agent } from "@opencode/schema/agent" +import { Session } from "@opencode/core/session" +import { Location } from "@opencode/core/location" import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Model } from "@opencode-ai/core/model" -import { ModelResolver } from "@opencode-ai/core/model-resolver" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" +import { Catalog } from "@opencode/core/catalog" +import { Model } from "@opencode/core/model" +import { ModelResolver } from "@opencode/core/model-resolver" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { PluginHooks } from "@opencode/core/plugin/hooks" import { copilotBaseURL, copilotEntitlementError, copilotFetch, GithubCopilotPlugin, -} from "@opencode-ai/core/plugin/provider/github-copilot" -import { Provider } from "@opencode-ai/core/provider" -import { Integration } from "@opencode-ai/core/integration" -import type { SessionRequestKind } from "@opencode-ai/plugin/effect/session" +} from "@opencode/core/plugin/provider/github-copilot" +import { Provider } from "@opencode/core/provider" +import { Integration } from "@opencode/core/integration" +import type { SessionRequestKind } from "@opencode/plugin/effect/session" import { fakeSelectorSdk } from "../fixture/selector" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-gitlab.test.ts b/packages/core/test/plugin/provider-gitlab.test.ts index b8f72bcfd00..03be47cc1fe 100644 --- a/packages/core/test/plugin/provider-gitlab.test.ts +++ b/packages/core/test/plugin/provider-gitlab.test.ts @@ -1,11 +1,11 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect, mock } from "bun:test" import { Effect } from "effect" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { GitLabPlugin } from "@opencode-ai/core/plugin/provider/gitlab" -import { Provider } from "@opencode-ai/core/provider" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { GitLabPlugin } from "@opencode/core/plugin/provider/gitlab" +import { Provider } from "@opencode/core/provider" import { withEnv } from "../fixture/env" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-google-vertex.test.ts b/packages/core/test/plugin/provider-google-vertex.test.ts index 40530330a8b..6f625d35935 100644 --- a/packages/core/test/plugin/provider-google-vertex.test.ts +++ b/packages/core/test/plugin/provider-google-vertex.test.ts @@ -1,12 +1,12 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect, mock } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { GoogleVertexPlugin } from "@opencode-ai/core/plugin/provider/google-vertex" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { GoogleVertexPlugin } from "@opencode/core/plugin/provider/google-vertex" +import { Provider } from "@opencode/core/provider" import { fakeSelectorSdk } from "../fixture/selector" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-kilo.test.ts b/packages/core/test/plugin/provider-kilo.test.ts index 6b9635da20f..ccfd90241c9 100644 --- a/packages/core/test/plugin/provider-kilo.test.ts +++ b/packages/core/test/plugin/provider-kilo.test.ts @@ -1,11 +1,11 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { KiloPlugin } from "@opencode-ai/core/plugin/provider/kilo" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { KiloPlugin } from "@opencode/core/plugin/provider/kilo" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-llmgateway.test.ts b/packages/core/test/plugin/provider-llmgateway.test.ts index 06cc4324a15..5f8e381983f 100644 --- a/packages/core/test/plugin/provider-llmgateway.test.ts +++ b/packages/core/test/plugin/provider-llmgateway.test.ts @@ -1,12 +1,12 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Integration } from "@opencode-ai/core/integration" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { LLMGatewayPlugin } from "@opencode-ai/core/plugin/provider/llmgateway" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Integration } from "@opencode/core/integration" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { LLMGatewayPlugin } from "@opencode/core/plugin/provider/llmgateway" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-lmstudio.test.ts b/packages/core/test/plugin/provider-lmstudio.test.ts index b0cc276c5d9..ede3939fc34 100644 --- a/packages/core/test/plugin/provider-lmstudio.test.ts +++ b/packages/core/test/plugin/provider-lmstudio.test.ts @@ -1,14 +1,14 @@ -import { Bus } from "@opencode-ai/core/bus" -import { Catalog } from "@opencode-ai/core/catalog" -import { Config } from "@opencode-ai/core/config" -import { Integration } from "@opencode-ai/core/integration" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { LMStudioPlugin, make } from "@opencode-ai/core/plugin/provider/lmstudio" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { Provider } from "@opencode-ai/core/provider" -import { Document, Event, Info } from "@opencode-ai/schema/config" +import { Bus } from "@opencode/core/bus" +import { Catalog } from "@opencode/core/catalog" +import { Config } from "@opencode/core/config" +import { Integration } from "@opencode/core/integration" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { LMStudioPlugin, make } from "@opencode/core/plugin/provider/lmstudio" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { Provider } from "@opencode/core/provider" +import { Document, Event, Info } from "@opencode/schema/config" import { describe, expect, test } from "bun:test" import { Duration, Effect, Layer, Schema } from "effect" import { testEffect } from "../lib/effect" @@ -101,7 +101,7 @@ describe("LMStudioPlugin", () => { id: providerID, name: "LM Studio", activation: "enabled", - package: "@opencode-ai/ai/providers/openai-compatible", + package: "@opencode/ai/providers/openai-compatible", settings: { baseURL: `${server.url.origin}/v1`, provider: "lmstudio", apiKey: "" }, }) expect((yield* catalog.provider.available()).map((provider) => provider.id)).toContain(providerID) diff --git a/packages/core/test/plugin/provider-nvidia.test.ts b/packages/core/test/plugin/provider-nvidia.test.ts index 23e5c185a74..667fc6c44ae 100644 --- a/packages/core/test/plugin/provider-nvidia.test.ts +++ b/packages/core/test/plugin/provider-nvidia.test.ts @@ -1,11 +1,11 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { NvidiaPlugin } from "@opencode-ai/core/plugin/provider/nvidia" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { NvidiaPlugin } from "@opencode/core/plugin/provider/nvidia" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-ollama.test.ts b/packages/core/test/plugin/provider-ollama.test.ts index 3ef226774a5..1bf3fb7d789 100644 --- a/packages/core/test/plugin/provider-ollama.test.ts +++ b/packages/core/test/plugin/provider-ollama.test.ts @@ -1,14 +1,14 @@ -import { Bus } from "@opencode-ai/core/bus" -import { Catalog } from "@opencode-ai/core/catalog" -import { Config } from "@opencode-ai/core/config" -import { Integration } from "@opencode-ai/core/integration" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { OllamaPlugin, make } from "@opencode-ai/core/plugin/provider/ollama" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { Provider } from "@opencode-ai/core/provider" -import { Document, Event, Info } from "@opencode-ai/schema/config" +import { Bus } from "@opencode/core/bus" +import { Catalog } from "@opencode/core/catalog" +import { Config } from "@opencode/core/config" +import { Integration } from "@opencode/core/integration" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { OllamaPlugin, make } from "@opencode/core/plugin/provider/ollama" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { Provider } from "@opencode/core/provider" +import { Document, Event, Info } from "@opencode/schema/config" import { describe, expect } from "bun:test" import { Duration, Effect, Layer, Schema } from "effect" import { testEffect } from "../lib/effect" @@ -93,7 +93,7 @@ describe("OllamaPlugin", () => { id: providerID, name: "Ollama", activation: "enabled", - package: "@opencode-ai/ai/providers/openai-compatible", + package: "@opencode/ai/providers/openai-compatible", settings: { baseURL: `${server.url.origin}/v1`, provider: "ollama", apiKey: "" }, }) expect(model).toMatchObject({ diff --git a/packages/core/test/plugin/provider-openai-compatible.test.ts b/packages/core/test/plugin/provider-openai-compatible.test.ts index 280949f6468..f9a4b815c31 100644 --- a/packages/core/test/plugin/provider-openai-compatible.test.ts +++ b/packages/core/test/plugin/provider-openai-compatible.test.ts @@ -1,11 +1,11 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { OpenAICompatiblePlugin } from "@opencode-ai/core/plugin/provider/openai-compatible" -import { Provider } from "@opencode-ai/core/provider" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { OpenAICompatiblePlugin } from "@opencode/core/plugin/provider/openai-compatible" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-openai.test.ts b/packages/core/test/plugin/provider-openai.test.ts index a31f786e57b..992d0295bc2 100644 --- a/packages/core/test/plugin/provider-openai.test.ts +++ b/packages/core/test/plugin/provider-openai.test.ts @@ -1,25 +1,25 @@ -import { Money } from "@opencode-ai/schema/money" -import { Agent } from "@opencode-ai/schema/agent" -import { Session } from "@opencode-ai/schema/session" -import { OpenAIResponses } from "@opencode-ai/ai/protocols/openai-responses" +import { Money } from "@opencode/schema/money" +import { Agent } from "@opencode/schema/agent" +import { Session } from "@opencode/schema/session" +import { OpenAIResponses } from "@opencode/ai/protocols/openai-responses" import { describe, expect } from "bun:test" import { ConfigProvider, DateTime, Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Credential } from "@opencode-ai/core/credential" -import { Integration } from "@opencode-ai/core/integration" -import { Location } from "@opencode-ai/core/location" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { GithubCopilotPlugin } from "@opencode-ai/core/plugin/provider/github-copilot" -import { OpenAIPlugin } from "@opencode-ai/core/plugin/provider/openai" -import { Project } from "@opencode-ai/core/project" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { SessionModelRequest } from "@opencode-ai/core/session/model-request" -import { SessionModelTransport } from "@opencode-ai/core/session/model-transport" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" +import { Catalog } from "@opencode/core/catalog" +import { Credential } from "@opencode/core/credential" +import { Integration } from "@opencode/core/integration" +import { Location } from "@opencode/core/location" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { GithubCopilotPlugin } from "@opencode/core/plugin/provider/github-copilot" +import { OpenAIPlugin } from "@opencode/core/plugin/provider/openai" +import { Project } from "@opencode/core/project" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { SessionModelRequest } from "@opencode/core/session/model-request" +import { SessionModelTransport } from "@opencode/core/session/model-transport" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-opencode.test.ts b/packages/core/test/plugin/provider-opencode.test.ts index 11119a7bc1f..57d4d7e7387 100644 --- a/packages/core/test/plugin/provider-opencode.test.ts +++ b/packages/core/test/plugin/provider-opencode.test.ts @@ -1,18 +1,18 @@ import { describe, expect } from "bun:test" -import { LLM } from "@opencode-ai/ai" -import { LLMClient, RequestExecutor } from "@opencode-ai/ai/route" -import { Money } from "@opencode-ai/schema/money" +import { LLM } from "@opencode/ai" +import { LLMClient, RequestExecutor } from "@opencode/ai/route" +import { Money } from "@opencode/schema/money" import { Effect, Layer, Stream } from "effect" import { HttpClient, HttpClientResponse } from "effect/unstable/http" -import { Catalog } from "@opencode-ai/core/catalog" -import { Credential } from "@opencode-ai/core/credential" -import { Integration } from "@opencode-ai/core/integration" -import { Model } from "@opencode-ai/core/model" -import { ModelResolver } from "@opencode-ai/core/model-resolver" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { OpencodePlugin } from "@opencode-ai/core/plugin/provider/opencode" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Credential } from "@opencode/core/credential" +import { Integration } from "@opencode/core/integration" +import { Model } from "@opencode/core/model" +import { ModelResolver } from "@opencode/core/model-resolver" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { OpencodePlugin } from "@opencode/core/plugin/provider/opencode" +import { Provider } from "@opencode/core/provider" import { withEnv } from "../fixture/env" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-openrouter.test.ts b/packages/core/test/plugin/provider-openrouter.test.ts index e93b2a9172b..3a4061852bd 100644 --- a/packages/core/test/plugin/provider-openrouter.test.ts +++ b/packages/core/test/plugin/provider-openrouter.test.ts @@ -1,12 +1,12 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { OpenRouterPlugin } from "@opencode-ai/core/plugin/provider/openrouter" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { OpenRouterPlugin } from "@opencode/core/plugin/provider/openrouter" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-sap-ai-core.test.ts b/packages/core/test/plugin/provider-sap-ai-core.test.ts index 4dbbae924cb..18df46c2d0b 100644 --- a/packages/core/test/plugin/provider-sap-ai-core.test.ts +++ b/packages/core/test/plugin/provider-sap-ai-core.test.ts @@ -1,12 +1,12 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { Npm } from "@opencode-ai/util/npm" -import { SapAICorePlugin } from "@opencode-ai/core/plugin/provider/sap-ai-core" -import { Provider } from "@opencode-ai/core/provider" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { Npm } from "@opencode/util/npm" +import { SapAICorePlugin } from "@opencode/core/plugin/provider/sap-ai-core" +import { Provider } from "@opencode/core/provider" import { withEnv } from "../fixture/env" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-snowflake-cortex.test.ts b/packages/core/test/plugin/provider-snowflake-cortex.test.ts index 9caed67b7ae..1f1c108d294 100644 --- a/packages/core/test/plugin/provider-snowflake-cortex.test.ts +++ b/packages/core/test/plugin/provider-snowflake-cortex.test.ts @@ -1,12 +1,12 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { SnowflakeCortexPlugin, cortexFetch } from "@opencode-ai/core/plugin/provider/snowflake-cortex" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { Provider } from "@opencode-ai/core/provider" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { SnowflakeCortexPlugin, cortexFetch } from "@opencode/core/plugin/provider/snowflake-cortex" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-vercel.test.ts b/packages/core/test/plugin/provider-vercel.test.ts index e5cc83a4d7f..a2c34f856f1 100644 --- a/packages/core/test/plugin/provider-vercel.test.ts +++ b/packages/core/test/plugin/provider-vercel.test.ts @@ -1,12 +1,12 @@ -import { AISDK } from "@opencode-ai/core/aisdk" +import { AISDK } from "@opencode/core/aisdk" import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { VercelPlugin } from "@opencode-ai/core/plugin/provider/vercel" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { VercelPlugin } from "@opencode/core/plugin/provider/vercel" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-vllm.test.ts b/packages/core/test/plugin/provider-vllm.test.ts index 672252ccc27..8a855cc1681 100644 --- a/packages/core/test/plugin/provider-vllm.test.ts +++ b/packages/core/test/plugin/provider-vllm.test.ts @@ -1,14 +1,14 @@ -import { Bus } from "@opencode-ai/core/bus" -import { Catalog } from "@opencode-ai/core/catalog" -import { Config } from "@opencode-ai/core/config" -import { Integration } from "@opencode-ai/core/integration" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { make, VLLMPlugin } from "@opencode-ai/core/plugin/provider/vllm" -import { Provider } from "@opencode-ai/core/provider" -import { Document, Event, Info } from "@opencode-ai/schema/config" +import { Bus } from "@opencode/core/bus" +import { Catalog } from "@opencode/core/catalog" +import { Config } from "@opencode/core/config" +import { Integration } from "@opencode/core/integration" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { make, VLLMPlugin } from "@opencode/core/plugin/provider/vllm" +import { Provider } from "@opencode/core/provider" +import { Document, Event, Info } from "@opencode/schema/config" import { describe, expect } from "bun:test" import { Duration, Effect, Layer, Schema } from "effect" import { testEffect } from "../lib/effect" @@ -92,7 +92,7 @@ describe("VLLMPlugin", () => { expect(yield* catalog.provider.get(providerID)).toEqual({ id: providerID, name: "vLLM", - package: "@opencode-ai/ai/providers/openai-compatible", + package: "@opencode/ai/providers/openai-compatible", settings: { baseURL: `${server.url.origin}/v1`, provider: "vllm", apiKey: "" }, activation: "enabled", }) diff --git a/packages/core/test/plugin/provider-xai.test.ts b/packages/core/test/plugin/provider-xai.test.ts index 40f4cd46723..9dbbacf2f40 100644 --- a/packages/core/test/plugin/provider-xai.test.ts +++ b/packages/core/test/plugin/provider-xai.test.ts @@ -1,13 +1,13 @@ import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Credential } from "@opencode-ai/core/credential" -import { Integration } from "@opencode-ai/core/integration" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { XAIPlugin } from "@opencode-ai/core/plugin/provider/xai" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Credential } from "@opencode/core/credential" +import { Integration } from "@opencode/core/integration" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { XAIPlugin } from "@opencode/core/plugin/provider/xai" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/provider-zenmux.test.ts b/packages/core/test/plugin/provider-zenmux.test.ts index e88ceac88de..9ada80a90d2 100644 --- a/packages/core/test/plugin/provider-zenmux.test.ts +++ b/packages/core/test/plugin/provider-zenmux.test.ts @@ -1,11 +1,11 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Catalog } from "@opencode-ai/core/catalog" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHost } from "@opencode-ai/core/plugin/host" -import { ProviderPlugins } from "@opencode-ai/core/plugin/provider" -import { ZenmuxPlugin } from "@opencode-ai/core/plugin/provider/zenmux" -import { Provider } from "@opencode-ai/core/provider" +import { Catalog } from "@opencode/core/catalog" +import { Plugin } from "@opencode/core/plugin" +import { PluginHost } from "@opencode/core/plugin/host" +import { ProviderPlugins } from "@opencode/core/plugin/provider" +import { ZenmuxPlugin } from "@opencode/core/plugin/provider/zenmux" +import { Provider } from "@opencode/core/provider" import { testEffect } from "../lib/effect" import { PluginTestLayer } from "./fixture" diff --git a/packages/core/test/plugin/skill.test.ts b/packages/core/test/plugin/skill.test.ts index b92ba84c4bb..66fdbed8931 100644 --- a/packages/core/test/plugin/skill.test.ts +++ b/packages/core/test/plugin/skill.test.ts @@ -1,10 +1,10 @@ import { describe, expect } from "bun:test" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Config } from "@opencode-ai/core/config" -import { Document, Info } from "@opencode-ai/schema/config" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Config } from "@opencode/core/config" +import { Document, Info } from "@opencode/schema/config" import { Effect, Layer, Stream } from "effect" -import { SkillPlugin } from "@opencode-ai/core/plugin/skill" -import { Skill } from "@opencode-ai/core/skill" +import { SkillPlugin } from "@opencode/core/plugin/skill" +import { Skill } from "@opencode/core/skill" import { testEffect } from "../lib/effect" import { host } from "./host" diff --git a/packages/core/test/plugin/supervisor-reload.test.ts b/packages/core/test/plugin/supervisor-reload.test.ts index 30005221854..c4005882e69 100644 --- a/packages/core/test/plugin/supervisor-reload.test.ts +++ b/packages/core/test/plugin/supervisor-reload.test.ts @@ -3,23 +3,23 @@ import fs from "fs/promises" import path from "path" import { Deferred, Duration, Effect, Fiber, Layer, LayerMap, Schedule } from "effect" import { TestClock } from "effect/testing" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Event } from "@opencode-ai/schema/config" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" -import { Npm } from "@opencode-ai/util/npm" -import { Bus } from "@opencode-ai/core/bus" -import { Command } from "@opencode-ai/core/command" -import { Database } from "@opencode-ai/core/database/database" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { Instance } from "@opencode-ai/core/instance" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { Location } from "@opencode-ai/core/location" -import { Plugin } from "@opencode-ai/core/plugin" -import { Rpc } from "@opencode-ai/core/rpc" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { define } from "@opencode/plugin/effect/plugin" +import { Event } from "@opencode/schema/config" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { Npm } from "@opencode/util/npm" +import { Bus } from "@opencode/core/bus" +import { Command } from "@opencode/core/command" +import { Database } from "@opencode/core/database/database" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { Instance } from "@opencode/core/instance" +import { LocationServiceMap } from "@opencode/core/location-services" +import { Location } from "@opencode/core/location" +import { Plugin } from "@opencode/core/plugin" +import { Rpc } from "@opencode/core/rpc" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { AbsolutePath } from "@opencode/core/schema" import { tempGlobalLayer } from "../fixture/global" import { offlineModels } from "../fixture/models" import { tmpdirScoped } from "../fixture/tmpdir" diff --git a/packages/core/test/plugin/supervisor.test.ts b/packages/core/test/plugin/supervisor.test.ts index 9113fee0df6..b96c3afed73 100644 --- a/packages/core/test/plugin/supervisor.test.ts +++ b/packages/core/test/plugin/supervisor.test.ts @@ -1,18 +1,18 @@ import { describe, expect } from "bun:test" import { Deferred, Duration, Effect, Layer, LayerMap, Stream } from "effect" import { TestClock } from "effect/testing" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" -import { Command } from "@opencode-ai/core/command" -import { ConfigPluginSource } from "@opencode-ai/core/config/plugin/source" -import { Instance } from "@opencode-ai/core/instance" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { Location } from "@opencode-ai/core/location" -import { Plugin } from "@opencode-ai/core/plugin" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { define } from "@opencode/plugin/effect/plugin" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { Command } from "@opencode/core/command" +import { ConfigPluginSource } from "@opencode/core/config/plugin/source" +import { Instance } from "@opencode/core/instance" +import { LocationServiceMap } from "@opencode/core/location-services" +import { Location } from "@opencode/core/location" +import { Plugin } from "@opencode/core/plugin" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { AbsolutePath } from "@opencode/core/schema" import { Database } from "../../src/database/database" import { Bus } from "../../src/bus" import { tempGlobalLayer } from "../fixture/global" diff --git a/packages/core/test/plugin/variant.test.ts b/packages/core/test/plugin/variant.test.ts index 2a253634704..249364592a6 100644 --- a/packages/core/test/plugin/variant.test.ts +++ b/packages/core/test/plugin/variant.test.ts @@ -1,11 +1,11 @@ import { describe, expect } from "bun:test" -import { Catalog } from "@opencode-ai/core/catalog" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { Model } from "@opencode-ai/core/model" -import { VariantPlugin } from "@opencode-ai/core/plugin/variant" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { Catalog } from "@opencode/core/catalog" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { Model } from "@opencode/core/model" +import { VariantPlugin } from "@opencode/core/plugin/variant" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" import { Effect, Layer } from "effect" import { location } from "../fixture/location" import { testEffect } from "../lib/effect" diff --git a/packages/core/test/plugin/websearch-fixture.ts b/packages/core/test/plugin/websearch-fixture.ts index 4067c1bd594..3933adcde16 100644 --- a/packages/core/test/plugin/websearch-fixture.ts +++ b/packages/core/test/plugin/websearch-fixture.ts @@ -1,13 +1,13 @@ import { Effect, Layer } from "effect" import { HttpClient, HttpClientResponse } from "effect/unstable/http" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Credential } from "@opencode-ai/core/credential" -import { Config } from "@opencode-ai/core/config" -import { Bus } from "@opencode-ai/core/bus" -import { Form } from "@opencode-ai/core/form" -import { Integration } from "@opencode-ai/core/integration" -import { WebSearch } from "@opencode-ai/core/websearch" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Credential } from "@opencode/core/credential" +import { Config } from "@opencode/core/config" +import { Bus } from "@opencode/core/bus" +import { Form } from "@opencode/core/form" +import { Integration } from "@opencode/core/integration" +import { WebSearch } from "@opencode/core/websearch" import { testEffect } from "../lib/effect" interface WebSearchRequest { diff --git a/packages/core/test/plugin/websearch.test.ts b/packages/core/test/plugin/websearch.test.ts index d1ba027d17a..4d8b60493ea 100644 --- a/packages/core/test/plugin/websearch.test.ts +++ b/packages/core/test/plugin/websearch.test.ts @@ -1,11 +1,11 @@ import { beforeEach, describe, expect } from "bun:test" import { Effect } from "effect" -import { Integration } from "@opencode-ai/core/integration" -import { WebSearch } from "@opencode-ai/core/websearch" -import { WebSearchExa } from "@opencode-ai/core/plugin/websearch/exa" -import { WebSearchFirecrawl } from "@opencode-ai/core/plugin/websearch/firecrawl" -import { WebSearchParallel } from "@opencode-ai/core/plugin/websearch/parallel" -import { WebSearchTavily } from "@opencode-ai/core/plugin/websearch/tavily" +import { Integration } from "@opencode/core/integration" +import { WebSearch } from "@opencode/core/websearch" +import { WebSearchExa } from "@opencode/core/plugin/websearch/exa" +import { WebSearchFirecrawl } from "@opencode/core/plugin/websearch/firecrawl" +import { WebSearchParallel } from "@opencode/core/plugin/websearch/parallel" +import { WebSearchTavily } from "@opencode/core/plugin/websearch/tavily" import { host, integrationHost, webSearchHost } from "./host" import { requests, signals, resetWebSearchFixture, webSearchIntegrationTest } from "./websearch-fixture" diff --git a/packages/core/test/plugin/worktree.test.ts b/packages/core/test/plugin/worktree.test.ts index 1e9ef6bf307..56aac88ea2e 100644 --- a/packages/core/test/plugin/worktree.test.ts +++ b/packages/core/test/plugin/worktree.test.ts @@ -1,9 +1,9 @@ import { expect } from "bun:test" import { Cause, Deferred, Effect, Exit, Fiber } from "effect" -import { Plugin } from "@opencode-ai/plugin" -import type { WorktreeDefinition } from "@opencode-ai/plugin/effect/worktree" -import { PluginPromise } from "@opencode-ai/core/plugin/promise" -import { State } from "@opencode-ai/core/state" +import { Plugin } from "@opencode/plugin" +import type { WorktreeDefinition } from "@opencode/plugin/effect/worktree" +import { PluginPromise } from "@opencode/core/plugin/promise" +import { State } from "@opencode/core/state" import { it } from "../lib/effect" import { host } from "./host" diff --git a/packages/core/test/preload.test.ts b/packages/core/test/preload.test.ts index 33595e11c4c..986281d8115 100644 --- a/packages/core/test/preload.test.ts +++ b/packages/core/test/preload.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import os from "os" import path from "path" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" describe("Core test environment", () => { test("disables public npm security audits", () => { diff --git a/packages/core/test/process/process.test.ts b/packages/core/test/process/process.test.ts index aadd111ac1d..1ee13c4cbb7 100644 --- a/packages/core/test/process/process.test.ts +++ b/packages/core/test/process/process.test.ts @@ -6,8 +6,8 @@ import { tmpdir } from "node:os" import path from "node:path" import { Effect, Exit, Fiber, Stream } from "effect" import { ChildProcess } from "effect/unstable/process" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { AppProcess } from "@opencode-ai/util/process" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { AppProcess } from "@opencode/util/process" import { testEffect } from "../lib/effect" const it = testEffect(LayerNode.compile(AppProcess.node)) diff --git a/packages/core/test/project.test.ts b/packages/core/test/project.test.ts index 7dc43e6f890..3c50b57bb31 100644 --- a/packages/core/test/project.test.ts +++ b/packages/core/test/project.test.ts @@ -3,15 +3,15 @@ import { $ } from "bun" import fs from "fs/promises" import path from "path" import { Effect, Stream } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { Project } from "@opencode-ai/core/project" -import { ProjectSchema } from "@opencode-ai/core/project/schema" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Hash } from "@opencode-ai/util/hash" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { Project } from "@opencode/core/project" +import { ProjectSchema } from "@opencode/core/project/schema" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Hash } from "@opencode/util/hash" import { tmpdir } from "./fixture/tmpdir" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/provider.test.ts b/packages/core/test/provider.test.ts index 199f1253d04..1dfb50edc08 100644 --- a/packages/core/test/provider.test.ts +++ b/packages/core/test/provider.test.ts @@ -1,25 +1,25 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" -import { Provider } from "@opencode-ai/core/provider" +import { Provider } from "@opencode/core/provider" describe("Provider", () => { test("loads bundled native provider entrypoints", async () => { const packages = [ - "@opencode-ai/ai/providers/baseten", - "@opencode-ai/ai/providers/cerebras", - "@opencode-ai/ai/providers/cloudflare-ai-gateway", - "@opencode-ai/ai/providers/cloudflare-workers-ai", - "@opencode-ai/ai/providers/deepinfra", - "@opencode-ai/ai/providers/deepseek", - "@opencode-ai/ai/providers/fireworks", - "@opencode-ai/ai/providers/google-vertex", - "@opencode-ai/ai/providers/google-vertex/gemini", - "@opencode-ai/ai/providers/google-vertex/chat", - "@opencode-ai/ai/providers/google-vertex/responses", - "@opencode-ai/ai/providers/google-vertex/messages", - "@opencode-ai/ai/providers/groq", - "@opencode-ai/ai/providers/mistral", - "@opencode-ai/ai/providers/togetherai", + "@opencode/ai/providers/baseten", + "@opencode/ai/providers/cerebras", + "@opencode/ai/providers/cloudflare-ai-gateway", + "@opencode/ai/providers/cloudflare-workers-ai", + "@opencode/ai/providers/deepinfra", + "@opencode/ai/providers/deepseek", + "@opencode/ai/providers/fireworks", + "@opencode/ai/providers/google-vertex", + "@opencode/ai/providers/google-vertex/gemini", + "@opencode/ai/providers/google-vertex/chat", + "@opencode/ai/providers/google-vertex/responses", + "@opencode/ai/providers/google-vertex/messages", + "@opencode/ai/providers/groq", + "@opencode/ai/providers/mistral", + "@opencode/ai/providers/togetherai", ] for (const specifier of packages) { diff --git a/packages/core/test/pty/info-schema.test.ts b/packages/core/test/pty/info-schema.test.ts index 6cdf263a5bb..9af99bed5fa 100644 --- a/packages/core/test/pty/info-schema.test.ts +++ b/packages/core/test/pty/info-schema.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import { Schema } from "effect" -import { Pty } from "@opencode-ai/core/pty" +import { Pty } from "@opencode/core/pty" const sample = (pid: number) => ({ id: "pty_01J5Y5H0AH4Q4NXJ6P4C3P5V2K", diff --git a/packages/core/test/pty/protocol.test.ts b/packages/core/test/pty/protocol.test.ts index 2bf9610595f..85090d44387 100644 --- a/packages/core/test/pty/protocol.test.ts +++ b/packages/core/test/pty/protocol.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { PtyProtocol } from "@opencode-ai/core/pty/protocol" +import { PtyProtocol } from "@opencode/core/pty/protocol" describe("pty protocol", () => { test("drops invalid binary input frames and decodes valid ones", () => { diff --git a/packages/core/test/pty/pty-session.test.ts b/packages/core/test/pty/pty-session.test.ts index b9dfa200f35..f22f487cac0 100644 --- a/packages/core/test/pty/pty-session.test.ts +++ b/packages/core/test/pty/pty-session.test.ts @@ -1,13 +1,13 @@ import { describe, expect } from "bun:test" import { Cause, Deferred, Effect, Exit, Layer, Queue } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { Pty } from "@opencode-ai/core/pty" -import { PtyID } from "@opencode-ai/core/pty/schema" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { ShellSelect } from "@opencode-ai/core/shell/select" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { Pty } from "@opencode/core/pty" +import { PtyID } from "@opencode/core/pty/schema" +import { AbsolutePath } from "@opencode/core/schema" +import { ShellSelect } from "@opencode/core/shell/select" import { location } from "../fixture/location" import { testEffect } from "../lib/effect" diff --git a/packages/core/test/pty/ticket.test.ts b/packages/core/test/pty/ticket.test.ts index 31c87de49af..1a9e6d2bb55 100644 --- a/packages/core/test/pty/ticket.test.ts +++ b/packages/core/test/pty/ticket.test.ts @@ -1,9 +1,9 @@ import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { PtyID } from "@opencode-ai/core/pty/schema" -import { PtyTicket } from "@opencode-ai/core/pty/ticket" -import { Workspace } from "@opencode-ai/core/workspace" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { PtyID } from "@opencode/core/pty/schema" +import { PtyTicket } from "@opencode/core/pty/ticket" +import { Workspace } from "@opencode/core/workspace" import { testEffect } from "../lib/effect" const it = testEffect(LayerNode.compile(PtyTicket.node)) diff --git a/packages/core/test/reference-instructions.test.ts b/packages/core/test/reference-instructions.test.ts index 2baf4cb15cb..b1e8fce2777 100644 --- a/packages/core/test/reference-instructions.test.ts +++ b/packages/core/test/reference-instructions.test.ts @@ -1,9 +1,9 @@ import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Reference } from "@opencode-ai/core/reference" -import { ReferenceInstructions } from "@opencode-ai/core/reference/instructions" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { AbsolutePath } from "@opencode/core/schema" +import { Reference } from "@opencode/core/reference" +import { ReferenceInstructions } from "@opencode/core/reference/instructions" import { it } from "./lib/effect" import { readInitial, readUpdate } from "./lib/instructions" diff --git a/packages/core/test/reference.test.ts b/packages/core/test/reference.test.ts index 1e1d14020c8..826101d6ae2 100644 --- a/packages/core/test/reference.test.ts +++ b/packages/core/test/reference.test.ts @@ -1,14 +1,14 @@ import { describe, expect } from "bun:test" import { Deferred, Effect, Exit, Layer, Scope } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Bus } from "@opencode-ai/core/bus" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { State } from "@opencode-ai/core/state" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" -import { Reference } from "@opencode-ai/core/reference" -import { Repository } from "@opencode-ai/core/repository" -import { RepositoryCache } from "@opencode-ai/core/repository-cache" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Bus } from "@opencode/core/bus" +import { AbsolutePath } from "@opencode/core/schema" +import { State } from "@opencode/core/state" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { Reference } from "@opencode/core/reference" +import { Repository } from "@opencode/core/repository" +import { RepositoryCache } from "@opencode/core/repository-cache" import { it } from "./lib/effect" const cache = Layer.mock(RepositoryCache.Service, { diff --git a/packages/core/test/repository-cache.test.ts b/packages/core/test/repository-cache.test.ts index 4b9f2ee2074..fde7c331589 100644 --- a/packages/core/test/repository-cache.test.ts +++ b/packages/core/test/repository-cache.test.ts @@ -3,13 +3,13 @@ import fs from "fs/promises" import path from "path" import { pathToFileURL } from "url" import { Clock, Duration, Effect, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Global } from "@opencode-ai/util/global" -import { Repository } from "@opencode-ai/core/repository" -import { RepositoryCache } from "@opencode-ai/core/repository-cache" -import { Database } from "@opencode-ai/core/database/database" -import { KV } from "@opencode-ai/core/kv" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Global } from "@opencode/util/global" +import { Repository } from "@opencode/core/repository" +import { RepositoryCache } from "@opencode/core/repository-cache" +import { Database } from "@opencode/core/database/database" +import { KV } from "@opencode/core/kv" +import { LayerNode } from "@opencode/util/effect/layer-node" import { branch, commit, git, read, withRemote } from "./fixture/git" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/repository.test.ts b/packages/core/test/repository.test.ts index 1a6af675d12..a877b6dd92b 100644 --- a/packages/core/test/repository.test.ts +++ b/packages/core/test/repository.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import path from "path" import { pathToFileURL } from "url" -import { Repository } from "@opencode-ai/core/repository" +import { Repository } from "@opencode/core/repository" describe("Repository", () => { test("parses github shorthand and builds an explicit-root cache path", () => { diff --git a/packages/core/test/ripgrep.test.ts b/packages/core/test/ripgrep.test.ts index 08bbbe53384..8937161ada6 100644 --- a/packages/core/test/ripgrep.test.ts +++ b/packages/core/test/ripgrep.test.ts @@ -2,10 +2,10 @@ import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" import { Effect } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { Ripgrep } from "@opencode-ai/core/ripgrep" -import { RelativePath } from "@opencode-ai/core/schema" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { Ripgrep } from "@opencode/core/ripgrep" +import { RelativePath } from "@opencode/core/schema" import { tmpdir } from "./fixture/tmpdir" import { testEffect } from "./lib/effect" import { tempLocationLayer } from "./fixture/location" diff --git a/packages/core/test/rpc-handler-errors.test.ts b/packages/core/test/rpc-handler-errors.test.ts index bcf77f799c6..6dad9b0d15f 100644 --- a/packages/core/test/rpc-handler-errors.test.ts +++ b/packages/core/test/rpc-handler-errors.test.ts @@ -1,8 +1,8 @@ import { expect } from "bun:test" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { Rpc } from "@opencode-ai/core/rpc" -import { AbsolutePath } from "@opencode-ai/core/schema" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { Rpc } from "@opencode/core/rpc" +import { AbsolutePath } from "@opencode/core/schema" import { Effect, Layer, Logger, Schema } from "effect" import { location } from "./fixture/location" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-activation.test.ts b/packages/core/test/session-activation.test.ts index b2ba2358bcd..8a7482fb3c8 100644 --- a/packages/core/test/session-activation.test.ts +++ b/packages/core/test/session-activation.test.ts @@ -1,17 +1,17 @@ import { describe, expect, setDefaultTimeout } from "bun:test" import { Effect } from "effect" import path from "path" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionProjector } from "@opencode/core/session/projector" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" import { tempGlobalLayer } from "./fixture/global" import { offlineModels } from "./fixture/models" import { tmpdirScoped } from "./fixture/tmpdir" diff --git a/packages/core/test/session-checkpoint-transport.test.ts b/packages/core/test/session-checkpoint-transport.test.ts index b2b2a42c55a..16726a4ad43 100644 --- a/packages/core/test/session-checkpoint-transport.test.ts +++ b/packages/core/test/session-checkpoint-transport.test.ts @@ -1,10 +1,10 @@ import { expect } from "bun:test" -import { LLM, LLMRequest, Message } from "@opencode-ai/ai" -import { LLMClient, RequestExecutor } from "@opencode-ai/ai/route" -import { configure } from "@opencode-ai/ai/providers/openai" +import { LLM, LLMRequest, Message } from "@opencode/ai" +import { LLMClient, RequestExecutor } from "@opencode/ai/route" +import { configure } from "@opencode/ai/providers/openai" import { SessionModelTransport } from "../src/session/model-transport" import { WebSocketConstructor } from "../src/effect/websocket-constructor" -import { Session } from "@opencode-ai/schema/session" +import { Session } from "@opencode/schema/session" import { Effect, Layer, Schema } from "effect" import { FetchHttpClient } from "effect/unstable/http" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-compact.test.ts b/packages/core/test/session-compact.test.ts index c15112d7aed..496d599fbdb 100644 --- a/packages/core/test/session-compact.test.ts +++ b/packages/core/test/session-compact.test.ts @@ -1,24 +1,24 @@ import { describe, expect } from "bun:test" -import { LLMClient, LLMEvent, LanguageModel, type LLMRequest } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { Config } from "@opencode-ai/core/config" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import type { LocationServices } from "@opencode-ai/core/location-services" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionCompaction } from "@opencode-ai/core/session/compaction" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { SessionStore } from "@opencode-ai/core/session/store" +import { LLMClient, LLMEvent, LanguageModel, type LLMRequest } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { Config } from "@opencode/core/config" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import type { LocationServices } from "@opencode/core/location-services" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionCompaction } from "@opencode/core/session/compaction" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { SessionStore } from "@opencode/core/session/store" import { Effect, Layer, LayerMap, Stream } from "effect" import { testEffect } from "./lib/effect" import { globalProjectNode } from "./lib/project" diff --git a/packages/core/test/session-compaction-transport.test.ts b/packages/core/test/session-compaction-transport.test.ts index c060536a50b..96b01be6685 100644 --- a/packages/core/test/session-compaction-transport.test.ts +++ b/packages/core/test/session-compaction-transport.test.ts @@ -1,10 +1,10 @@ import { expect } from "bun:test" -import { LLM, LLMClient, LLMRequest, Message } from "@opencode-ai/ai" -import { OpenAI } from "@opencode-ai/ai/providers" -import { RequestExecutor, WebSocketTransport } from "@opencode-ai/ai/route" -import { SessionModelTransport } from "@opencode-ai/core/session/model-transport" -import { WebSocketConstructor } from "@opencode-ai/core/effect/websocket-constructor" -import { Session } from "@opencode-ai/schema/session" +import { LLM, LLMClient, LLMRequest, Message } from "@opencode/ai" +import { OpenAI } from "@opencode/ai/providers" +import { RequestExecutor, WebSocketTransport } from "@opencode/ai/route" +import { SessionModelTransport } from "@opencode/core/session/model-transport" +import { WebSocketConstructor } from "@opencode/core/effect/websocket-constructor" +import { Session } from "@opencode/schema/session" import { Effect, Latch, Layer, Schema } from "effect" import { FetchHttpClient } from "effect/unstable/http" import { Socket } from "effect/unstable/socket" diff --git a/packages/core/test/session-compaction.test.ts b/packages/core/test/session-compaction.test.ts index 3c50dc1e1a1..5384eb99efe 100644 --- a/packages/core/test/session-compaction.test.ts +++ b/packages/core/test/session-compaction.test.ts @@ -1,32 +1,32 @@ import { expect, test } from "bun:test" -import { LLMClient, LLMEvent, LanguageModel, ToolDefinition, type LLMRequest } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { llmClient } from "@opencode-ai/core/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { EventTable } from "@opencode-ai/core/event/sql" -import { SessionCompaction } from "@opencode-ai/core/session/compaction" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionModelRequest } from "@opencode-ai/core/session/model-request" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Session } from "@opencode-ai/core/session" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { App } from "@opencode-ai/core/app" -import { Agent } from "@opencode-ai/core/agent" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Money } from "@opencode-ai/schema/money" -import { Skill } from "@opencode-ai/schema/skill" -import { Shell } from "@opencode-ai/schema/shell" +import { LLMClient, LLMEvent, LanguageModel, ToolDefinition, type LLMRequest } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { llmClient } from "@opencode/core/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { EventTable } from "@opencode/core/event/sql" +import { SessionCompaction } from "@opencode/core/session/compaction" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionModelRequest } from "@opencode/core/session/model-request" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { Session } from "@opencode/core/session" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { App } from "@opencode/core/app" +import { Agent } from "@opencode/core/agent" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { Money } from "@opencode/schema/money" +import { Skill } from "@opencode/schema/skill" +import { Shell } from "@opencode/schema/shell" import { DateTime, Effect, Fiber, Layer, Schema, Stream } from "effect" import { asc, eq } from "drizzle-orm" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-create.test.ts b/packages/core/test/session-create.test.ts index b30334e9d19..dc2f31ee5ea 100644 --- a/packages/core/test/session-create.test.ts +++ b/packages/core/test/session-create.test.ts @@ -4,38 +4,38 @@ import fs from "fs/promises" import path from "path" import { DateTime, Effect, Layer, Stream } from "effect" import { TestClock } from "effect/testing" -import { Money } from "@opencode-ai/schema/money" -import { Shell } from "@opencode-ai/schema/shell" -import { Skill } from "@opencode-ai/schema/skill" -import { Agent } from "@opencode-ai/core/agent" +import { Money } from "@opencode/schema/money" +import { Shell } from "@opencode/schema/shell" +import { Skill } from "@opencode/schema/skill" +import { Agent } from "@opencode/core/agent" import { asc, eq } from "drizzle-orm" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Hash } from "@opencode-ai/util/hash" -import { Bus } from "@opencode-ai/core/bus" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Instructions } from "@opencode-ai/core/instructions/index" -import { Location } from "@opencode-ai/core/location" -import { Model } from "@opencode-ai/core/model" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { InstructionEntry } from "@opencode-ai/core/session/instruction-entry" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { SessionTransfer } from "@opencode-ai/core/session/transfer" -import { Workspace } from "@opencode-ai/core/workspace" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Hash } from "@opencode/util/hash" +import { Bus } from "@opencode/core/bus" +import { EventTable } from "@opencode/core/event/sql" +import { Instructions } from "@opencode/core/instructions/index" +import { Location } from "@opencode/core/location" +import { Model } from "@opencode/core/model" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionInbox } from "@opencode/core/session/inbox" +import { InstructionEntry } from "@opencode/core/session/instruction-entry" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { SessionTransfer } from "@opencode/core/session/transfer" +import { Workspace } from "@opencode/core/workspace" import { Expected } from "./lib/session-message" import { testEffect } from "./lib/effect" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" +import { LocationServiceMap } from "@opencode/core/location-service-map" import { offlineModels } from "./fixture/models" import { promptLocationNode } from "./fixture/prompt-location" import { globalProjectNode } from "./lib/project" diff --git a/packages/core/test/session-environment.test.ts b/packages/core/test/session-environment.test.ts index ee1db0736e8..4c38e95f473 100644 --- a/packages/core/test/session-environment.test.ts +++ b/packages/core/test/session-environment.test.ts @@ -1,8 +1,8 @@ import { describe, expect } from "bun:test" import { Effect } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Session } from "@opencode-ai/core/session" -import { SessionEnvironment } from "@opencode-ai/core/session/environment" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Session } from "@opencode/core/session" +import { SessionEnvironment } from "@opencode/core/session/environment" import { testEffect } from "./lib/effect" const it = testEffect(AppNodeBuilder.build(SessionEnvironment.node)) diff --git a/packages/core/test/session-error.test.ts b/packages/core/test/session-error.test.ts index 8febfa53f2e..6de68bfe14c 100644 --- a/packages/core/test/session-error.test.ts +++ b/packages/core/test/session-error.test.ts @@ -16,14 +16,14 @@ import { UnknownProviderError, ToolFailure, HttpContext, -} from "@opencode-ai/ai" -import { Permission } from "@opencode-ai/core/permission" -import { ID } from "@opencode-ai/core/model" -import { ModelResolver } from "@opencode-ai/core/model-resolver" -import { Provider } from "@opencode-ai/core/provider" -import { Tool } from "@opencode-ai/schema/tool" -import { toSessionError } from "@opencode-ai/core/session/to-session-error" -import { SessionRunnerRetry } from "@opencode-ai/core/session/runner/retry" +} from "@opencode/ai" +import { Permission } from "@opencode/core/permission" +import { ID } from "@opencode/core/model" +import { ModelResolver } from "@opencode/core/model-resolver" +import { Provider } from "@opencode/core/provider" +import { Tool } from "@opencode/schema/tool" +import { toSessionError } from "@opencode/core/session/to-session-error" +import { SessionRunnerRetry } from "@opencode/core/session/runner/retry" const llm = (reason: AIError["reason"]) => new AIError({ reason }) diff --git a/packages/core/test/session-execution.test.ts b/packages/core/test/session-execution.test.ts index 3d34e97f2c0..ba6234b60ab 100644 --- a/packages/core/test/session-execution.test.ts +++ b/packages/core/test/session-execution.test.ts @@ -1,27 +1,27 @@ import { describe, expect, test } from "bun:test" -import { AIError, TransportError } from "@opencode-ai/ai" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Instance } from "@opencode-ai/core/instance/service" -import { Job } from "@opencode-ai/core/job" -import { KV } from "@opencode-ai/core/kv" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import type { LocationServices } from "@opencode-ai/core/location-services" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionRestart } from "@opencode-ai/core/session/execution/restart" -import { UserInterruptedError } from "@opencode-ai/core/session/error" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionRunner } from "@opencode-ai/core/session/runner/index" -import { SessionInboxTable, SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" +import { AIError, TransportError } from "@opencode/ai" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Instance } from "@opencode/core/instance/service" +import { Job } from "@opencode/core/job" +import { KV } from "@opencode/core/kv" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import type { LocationServices } from "@opencode/core/location-services" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionRestart } from "@opencode/core/session/execution/restart" +import { UserInterruptedError } from "@opencode/core/session/error" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionInbox } from "@opencode/core/session/inbox" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionRunner } from "@opencode/core/session/runner/index" +import { SessionInboxTable, SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" import { Cause, Context, Deferred, Effect, Exit, Fiber, Layer, LayerMap, Scope } from "effect" import { eq } from "drizzle-orm" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-generate.test.ts b/packages/core/test/session-generate.test.ts index 39c5b381691..573390728f9 100644 --- a/packages/core/test/session-generate.test.ts +++ b/packages/core/test/session-generate.test.ts @@ -1,45 +1,45 @@ import { expect } from "bun:test" -import { LLMClient, LLMEvent, LLMResponse, LanguageModel, ToolDefinition, type LLMRequest } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import type { StreamOptions } from "@opencode-ai/ai/route" -import { Agent } from "@opencode-ai/core/agent" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { llmClient } from "@opencode-ai/core/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { EventTable } from "@opencode-ai/core/event/sql" -import { InstructionDiscovery } from "@opencode-ai/core/instruction-discovery" -import { Instance } from "@opencode-ai/core/instance/service" -import { Instructions } from "@opencode-ai/core/instructions/index" -import { InstructionBuiltIns } from "@opencode-ai/core/instructions/builtins" -import { Location } from "@opencode-ai/core/location" -import { McpInstructions } from "@opencode-ai/core/mcp/instructions" -import { ID } from "@opencode-ai/core/model" -import { Project } from "@opencode-ai/core/project" -import { Provider } from "@opencode-ai/core/provider" -import { ReferenceInstructions } from "@opencode-ai/core/reference/instructions" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionContext } from "@opencode-ai/core/session/context" -import { SessionGenerate } from "@opencode-ai/core/session/generate" -import { InstructionState } from "@opencode-ai/core/session/instruction-state" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { SessionSchema } from "@opencode-ai/core/session/schema" +import { LLMClient, LLMEvent, LLMResponse, LanguageModel, ToolDefinition, type LLMRequest } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import type { StreamOptions } from "@opencode/ai/route" +import { Agent } from "@opencode/core/agent" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { llmClient } from "@opencode/core/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { EventTable } from "@opencode/core/event/sql" +import { InstructionDiscovery } from "@opencode/core/instruction-discovery" +import { Instance } from "@opencode/core/instance/service" +import { Instructions } from "@opencode/core/instructions/index" +import { InstructionBuiltIns } from "@opencode/core/instructions/builtins" +import { Location } from "@opencode/core/location" +import { McpInstructions } from "@opencode/core/mcp/instructions" +import { ID } from "@opencode/core/model" +import { Project } from "@opencode/core/project" +import { Provider } from "@opencode/core/provider" +import { ReferenceInstructions } from "@opencode/core/reference/instructions" +import { AbsolutePath } from "@opencode/core/schema" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionContext } from "@opencode/core/session/context" +import { SessionGenerate } from "@opencode/core/session/generate" +import { InstructionState } from "@opencode/core/session/instruction-state" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { SessionSchema } from "@opencode/core/session/schema" import { InstructionBlobTable, InstructionStateTable, SessionMessageTable, SessionInboxTable, SessionTable, -} from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { SkillInstructions } from "@opencode-ai/core/skill/instructions" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginSupervisor } from "@opencode-ai/core/plugin/supervisor" -import { Tool } from "@opencode-ai/core/tool" +} from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { SkillInstructions } from "@opencode/core/skill/instructions" +import { Plugin } from "@opencode/core/plugin" +import { PluginSupervisor } from "@opencode/core/plugin/supervisor" +import { Tool } from "@opencode/core/tool" import { asc, eq } from "drizzle-orm" import { Effect, Layer, Schema, Stream } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-instructions.test.ts b/packages/core/test/session-instructions.test.ts index 418c708e054..d9401195b24 100644 --- a/packages/core/test/session-instructions.test.ts +++ b/packages/core/test/session-instructions.test.ts @@ -2,35 +2,35 @@ import { describe, expect, test } from "bun:test" import fs from "fs/promises" import path from "path" import { DateTime, Effect, Layer } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Config } from "@opencode-ai/core/config" -import { Database } from "@opencode-ai/core/database/database" -import { Bus } from "@opencode-ai/core/bus" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { Image } from "@opencode-ai/core/image" -import { Location } from "@opencode-ai/core/location" -import { FileAccess } from "@opencode-ai/core/file-access" -import { Model } from "@opencode-ai/core/model" -import { Permission } from "@opencode-ai/core/permission" -import { Project } from "@opencode-ai/core/project" -import { Provider } from "@opencode-ai/core/provider" -import { ReadTool } from "@opencode-ai/core/tool/plugin/read" -import { ReadToolFileSystem } from "@opencode-ai/core/tool/read-filesystem" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionInstructions } from "@opencode-ai/core/session/instructions" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Session } from "@opencode-ai/core/session" -import { toLLMMessages } from "@opencode-ai/core/session/runner/to-llm-message" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { Tool } from "@opencode-ai/core/tool" +import { Agent } from "@opencode/core/agent" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Config } from "@opencode/core/config" +import { Database } from "@opencode/core/database/database" +import { Bus } from "@opencode/core/bus" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { Image } from "@opencode/core/image" +import { Location } from "@opencode/core/location" +import { FileAccess } from "@opencode/core/file-access" +import { Model } from "@opencode/core/model" +import { Permission } from "@opencode/core/permission" +import { Project } from "@opencode/core/project" +import { Provider } from "@opencode/core/provider" +import { ReadTool } from "@opencode/core/tool/plugin/read" +import { ReadToolFileSystem } from "@opencode/core/tool/read-filesystem" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionInstructions } from "@opencode/core/session/instructions" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionStore } from "@opencode/core/session/store" +import { Session } from "@opencode/core/session" +import { toLLMMessages } from "@opencode/core/session/runner/to-llm-message" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { Tool } from "@opencode/core/tool" import { tempLocationLayer } from "./fixture/location" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { testEffect } from "./lib/effect" import { permissionLayer } from "./lib/permission" import { globalProjectNode } from "./lib/project" diff --git a/packages/core/test/session-log.test.ts b/packages/core/test/session-log.test.ts index a0a739428c7..9f2501569c8 100644 --- a/packages/core/test/session-log.test.ts +++ b/packages/core/test/session-log.test.ts @@ -1,20 +1,20 @@ import { describe, expect } from "bun:test" import { Effect, Fiber, Schema, Stream } from "effect" -import { Database } from "@opencode-ai/core/database/database" -import { Agent } from "@opencode-ai/core/agent" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Event } from "@opencode-ai/schema/event" -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionStore } from "@opencode-ai/core/session/store" -import { SessionTable } from "@opencode-ai/core/session/sql" +import { Database } from "@opencode/core/database/database" +import { Agent } from "@opencode/core/agent" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Event } from "@opencode/schema/event" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionStore } from "@opencode/core/session/store" +import { SessionTable } from "@opencode/core/session/sql" import { testEffect } from "./lib/effect" import { globalProjectNode } from "./lib/project" diff --git a/packages/core/test/session-message-update.test.ts b/packages/core/test/session-message-update.test.ts index 25076956662..b89bd2d2ac8 100644 --- a/packages/core/test/session-message-update.test.ts +++ b/packages/core/test/session-message-update.test.ts @@ -2,25 +2,25 @@ import { describe, expect } from "bun:test" import path from "path" import { Effect, Layer, Stream } from "effect" import { asc, eq } from "drizzle-orm" -import { Agent } from "@opencode-ai/core/agent" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Location } from "@opencode-ai/core/location" -import { Model } from "@opencode-ai/core/model" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Money } from "@opencode-ai/schema/money" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Agent } from "@opencode/core/agent" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { EventTable } from "@opencode/core/event/sql" +import { Location } from "@opencode/core/location" +import { Model } from "@opencode/core/model" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionStore } from "@opencode/core/session/store" +import { Money } from "@opencode/schema/money" +import { LayerNode } from "@opencode/util/effect/layer-node" import { tmpdirScoped } from "./fixture/tmpdir" import { testEffect } from "./lib/effect" import { globalProjectNode } from "./lib/project" diff --git a/packages/core/test/session-model-request-hooks.test.ts b/packages/core/test/session-model-request-hooks.test.ts index 6082fe77494..16fb9e593ce 100644 --- a/packages/core/test/session-model-request-hooks.test.ts +++ b/packages/core/test/session-model-request-hooks.test.ts @@ -1,16 +1,16 @@ import { describe, expect } from "bun:test" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { Agent } from "@opencode-ai/schema/agent" -import { Money } from "@opencode-ai/schema/money" -import { Session } from "@opencode-ai/schema/session" -import type { SessionRequestKind } from "@opencode-ai/plugin/effect/session" -import { Location } from "@opencode-ai/core/location" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { SessionModelRequest } from "@opencode-ai/core/session/model-request" -import { SessionModelTransport } from "@opencode-ai/core/session/model-transport" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" +import { OpenAIChat } from "@opencode/ai/protocols" +import { Agent } from "@opencode/schema/agent" +import { Money } from "@opencode/schema/money" +import { Session } from "@opencode/schema/session" +import type { SessionRequestKind } from "@opencode/plugin/effect/session" +import { Location } from "@opencode/core/location" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" +import { SessionModelRequest } from "@opencode/core/session/model-request" +import { SessionModelTransport } from "@opencode/core/session/model-transport" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" import { DateTime, Effect } from "effect" import { HttpClientRequest, HttpClientResponse } from "effect/unstable/http" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-model-request.test.ts b/packages/core/test/session-model-request.test.ts index f87ab1e085a..17238d59177 100644 --- a/packages/core/test/session-model-request.test.ts +++ b/packages/core/test/session-model-request.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" -import { Message, ToolResultPart } from "@opencode-ai/ai" -import { boundImages, unsupportedParts } from "@opencode-ai/core/session/model-request" +import { Message, ToolResultPart } from "@opencode/ai" +import { boundImages, unsupportedParts } from "@opencode/core/session/model-request" const capabilities = (input: string[]) => ({ tools: true, input, output: ["text"] }) diff --git a/packages/core/test/session-model-transport-live.test.ts b/packages/core/test/session-model-transport-live.test.ts index 4aad9c8daf7..4946408e32c 100644 --- a/packages/core/test/session-model-transport-live.test.ts +++ b/packages/core/test/session-model-transport-live.test.ts @@ -1,16 +1,16 @@ import { describe, expect, test } from "bun:test" -import { AIError, LLM, Message } from "@opencode-ai/ai" +import { AIError, LLM, Message } from "@opencode/ai" import { LLMClient, RequestExecutor, WebSocketTransport, type ChannelObservation, type WebSocketChannelExchange, -} from "@opencode-ai/ai/route" -import { configure } from "@opencode-ai/ai/providers/openai" -import { SessionModelTransport } from "@opencode-ai/core/session/model-transport" -import { WebSocketConstructor } from "@opencode-ai/core/effect/websocket-constructor" -import { Session } from "@opencode-ai/schema/session" +} from "@opencode/ai/route" +import { configure } from "@opencode/ai/providers/openai" +import { SessionModelTransport } from "@opencode/core/session/model-transport" +import { WebSocketConstructor } from "@opencode/core/effect/websocket-constructor" +import { Session } from "@opencode/schema/session" import { Effect, Fiber, Layer, Stream } from "effect" import { Headers } from "effect/unstable/http" import { Socket } from "effect/unstable/socket" diff --git a/packages/core/test/session-model-transport.test.ts b/packages/core/test/session-model-transport.test.ts index 1970bb04833..b86d267e42a 100644 --- a/packages/core/test/session-model-transport.test.ts +++ b/packages/core/test/session-model-transport.test.ts @@ -1,13 +1,13 @@ import { describe, expect, test } from "bun:test" -import { AIError, HttpContext, TransportError } from "@opencode-ai/ai" +import { AIError, HttpContext, TransportError } from "@opencode/ai" import type { ChannelObservation, WebSocketChannelExchange, WebSocketConnection, WebSocketConnector, -} from "@opencode-ai/ai/route" -import { SessionModelTransport } from "@opencode-ai/core/session/model-transport" -import { Session } from "@opencode-ai/schema/session" +} from "@opencode/ai/route" +import { SessionModelTransport } from "@opencode/core/session/model-transport" +import { Session } from "@opencode/schema/session" import { Cause, Deferred, Effect, Fiber, Metric, Queue, Stream } from "effect" import { TestClock } from "effect/testing" import { Headers } from "effect/unstable/http" diff --git a/packages/core/test/session-move.test.ts b/packages/core/test/session-move.test.ts index e235206f6ab..b3797515af0 100644 --- a/packages/core/test/session-move.test.ts +++ b/packages/core/test/session-move.test.ts @@ -2,28 +2,28 @@ import { describe, expect } from "bun:test" import path from "path" import { chmod, mkdir, readdir, rm } from "fs/promises" import { Cause, Context, Deferred, Duration, Effect, Exit, Fiber, Layer, LayerMap, Queue } from "effect" -import { Worktree } from "@opencode-ai/schema/worktree" -import { Workspace } from "@opencode-ai/schema/workspace" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Instance } from "@opencode-ai/core/instance" -import { Location } from "@opencode-ai/core/location" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import type { LocationServices } from "@opencode-ai/core/location-services" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionMove } from "@opencode-ai/core/session/move" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionRunner } from "@opencode-ai/core/session/runner/index" -import { SessionStore } from "@opencode-ai/core/session/store" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Global } from "@opencode-ai/util/global" +import { Worktree } from "@opencode/schema/worktree" +import { Workspace } from "@opencode/schema/workspace" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Instance } from "@opencode/core/instance" +import { Location } from "@opencode/core/location" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import type { LocationServices } from "@opencode/core/location-services" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionMove } from "@opencode/core/session/move" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionRunner } from "@opencode/core/session/runner/index" +import { SessionStore } from "@opencode/core/session/store" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Global } from "@opencode/util/global" import { tempGlobalLayer } from "./fixture/global" import { offlineModels } from "./fixture/models" import { tmpdirScoped } from "./fixture/tmpdir" diff --git a/packages/core/test/session-native-compaction.test.ts b/packages/core/test/session-native-compaction.test.ts index 3262b1406f6..7a68439fff1 100644 --- a/packages/core/test/session-native-compaction.test.ts +++ b/packages/core/test/session-native-compaction.test.ts @@ -1,29 +1,29 @@ import { expect, test } from "bun:test" -import { LLMClient, LanguageModel, Message, ToolDefinition } from "@opencode-ai/ai" -import { OpenAI } from "@opencode-ai/ai/providers" -import { Agent } from "@opencode-ai/core/agent" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { llmClient } from "@opencode-ai/core/effect/app-node-platform" -import { Instructions } from "@opencode-ai/core/instructions/index" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { SessionCompaction } from "@opencode-ai/core/session/compaction" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionHistory } from "@opencode-ai/core/session/history" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { InstructionState } from "@opencode-ai/core/session/instruction-state" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionModelRequest } from "@opencode-ai/core/session/model-request" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionProviderContext } from "@opencode-ai/core/session/provider-context" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { SessionSchema } from "@opencode-ai/core/session/schema" -import { SessionStore } from "@opencode-ai/core/session/store" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LLMClient, LanguageModel, Message, ToolDefinition } from "@opencode/ai" +import { OpenAI } from "@opencode/ai/providers" +import { Agent } from "@opencode/core/agent" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { llmClient } from "@opencode/core/effect/app-node-platform" +import { Instructions } from "@opencode/core/instructions/index" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { SessionCompaction } from "@opencode/core/session/compaction" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionHistory } from "@opencode/core/session/history" +import { SessionInbox } from "@opencode/core/session/inbox" +import { InstructionState } from "@opencode/core/session/instruction-state" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionModelRequest } from "@opencode/core/session/model-request" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionProviderContext } from "@opencode/core/session/provider-context" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { SessionSchema } from "@opencode/core/session/schema" +import { SessionStore } from "@opencode/core/session/store" +import { LayerNode } from "@opencode/util/effect/layer-node" import { DateTime, Deferred, Effect, Fiber, Schema } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-owned.test.ts b/packages/core/test/session-owned.test.ts index 64ec38edb35..ffb8e253c88 100644 --- a/packages/core/test/session-owned.test.ts +++ b/packages/core/test/session-owned.test.ts @@ -1,16 +1,16 @@ import { describe, expect } from "bun:test" import { and, eq } from "drizzle-orm" import { Cause, Context, DateTime, Deferred, Effect, Exit, Fiber, Layer, Scope } from "effect" -import { Agent } from "@opencode-ai/schema/agent" -import { Event } from "@opencode-ai/schema/event" -import { Model } from "@opencode-ai/schema/model" -import { Money } from "@opencode-ai/schema/money" -import { Project } from "@opencode-ai/schema/project" -import { Provider } from "@opencode-ai/schema/provider" -import { ID, Info, Output } from "@opencode-ai/schema/shell" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { Agent } from "@opencode/schema/agent" +import { Event } from "@opencode/schema/event" +import { Model } from "@opencode/schema/model" +import { Money } from "@opencode/schema/money" +import { Project } from "@opencode/schema/project" +import { Provider } from "@opencode/schema/provider" +import { ID, Info, Output } from "@opencode/schema/shell" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { Bus } from "../src/bus.js" import { Database } from "../src/database/database.js" import { EventTable } from "../src/event/sql.js" diff --git a/packages/core/test/session-projector.test.ts b/packages/core/test/session-projector.test.ts index 0043dffdf4d..3f678c0d2f5 100644 --- a/packages/core/test/session-projector.test.ts +++ b/packages/core/test/session-projector.test.ts @@ -1,36 +1,36 @@ import { describe, expect } from "bun:test" import { DateTime, Effect, Fiber, Option, Schema, Stream } from "effect" import { asc, eq, sql } from "drizzle-orm" -import { Database } from "@opencode-ai/core/database/database" -import { Agent } from "@opencode-ai/core/agent" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Bus } from "@opencode-ai/core/bus" -import { Event } from "@opencode-ai/schema/event" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Model } from "@opencode-ai/core/model" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { Money } from "@opencode-ai/schema/money" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { fromRow } from "@opencode-ai/core/session/info" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Shell } from "@opencode-ai/schema/shell" +import { Database } from "@opencode/core/database/database" +import { Agent } from "@opencode/core/agent" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Bus } from "@opencode/core/bus" +import { Event } from "@opencode/schema/event" +import { EventTable } from "@opencode/core/event/sql" +import { Model } from "@opencode/core/model" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionMessage } from "@opencode/core/session/message" +import { Money } from "@opencode/schema/money" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionExecution } from "@opencode/core/session/execution" +import { fromRow } from "@opencode/core/session/info" +import { SessionInbox } from "@opencode/core/session/inbox" +import { SessionStore } from "@opencode/core/session/store" +import { Shell } from "@opencode/schema/shell" import { InstructionStateTable, SessionInboxTable, SessionMessageTable, SessionTable, -} from "@opencode-ai/core/session/sql" +} from "@opencode/core/session/sql" import { testEffect } from "./lib/effect" -import { Snapshot } from "@opencode-ai/core/snapshot" +import { Snapshot } from "@opencode/core/snapshot" const it = testEffect( AppNodeBuilder.build( diff --git a/packages/core/test/session-prompt.test.ts b/packages/core/test/session-prompt.test.ts index ba6784e40f4..adce8aeabc6 100644 --- a/packages/core/test/session-prompt.test.ts +++ b/packages/core/test/session-prompt.test.ts @@ -3,34 +3,34 @@ import { DateTime, Effect, Fiber, Layer, LayerMap, Schema, Stream } from "effect import path from "path" import { pathToFileURL } from "url" import { eq } from "drizzle-orm" -import { Database } from "@opencode-ai/core/database/database" -import { Agent } from "@opencode-ai/core/agent" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Bus } from "@opencode-ai/core/bus" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Location } from "@opencode-ai/schema/location" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionInboxTable, SessionMessageTable, SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import type { LocationServices } from "@opencode-ai/core/location-services" -import { Image } from "@opencode-ai/core/image" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { Skill } from "@opencode-ai/core/skill" +import { Database } from "@opencode/core/database/database" +import { Agent } from "@opencode/core/agent" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Bus } from "@opencode/core/bus" +import { EventTable } from "@opencode/core/event/sql" +import { Location } from "@opencode/schema/location" +import { SessionEvent } from "@opencode/core/session/event" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionInbox } from "@opencode/core/session/inbox" +import { SessionInboxTable, SessionMessageTable, SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import type { LocationServices } from "@opencode/core/location-services" +import { Image } from "@opencode/core/image" +import { Plugin } from "@opencode/core/plugin" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { Snapshot } from "@opencode/core/snapshot" +import { Skill } from "@opencode/core/skill" import { tmpdirScoped } from "./fixture/tmpdir" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-provider-context.test.ts b/packages/core/test/session-provider-context.test.ts index 02ede815735..a98b024cd1b 100644 --- a/packages/core/test/session-provider-context.test.ts +++ b/packages/core/test/session-provider-context.test.ts @@ -1,28 +1,28 @@ import { expect, test } from "bun:test" -import { CompactionPart, LanguageModel, Message, ToolCallPart } from "@opencode-ai/ai" -import { OpenAIResponses } from "@opencode-ai/ai/protocols" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Instructions } from "@opencode-ai/core/instructions/index" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionHistory } from "@opencode-ai/core/session/history" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { InstructionState } from "@opencode-ai/core/session/instruction-state" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionProviderContext } from "@opencode-ai/core/session/provider-context" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { toLLMMessages } from "@opencode-ai/core/session/runner/to-llm-message" -import { SessionSchema } from "@opencode-ai/core/session/schema" -import { InstructionStateTable, SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Model } from "@opencode-ai/schema/model" +import { CompactionPart, LanguageModel, Message, ToolCallPart } from "@opencode/ai" +import { OpenAIResponses } from "@opencode/ai/protocols" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { EventTable } from "@opencode/core/event/sql" +import { Instructions } from "@opencode/core/instructions/index" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionHistory } from "@opencode/core/session/history" +import { SessionInbox } from "@opencode/core/session/inbox" +import { InstructionState } from "@opencode/core/session/instruction-state" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionProviderContext } from "@opencode/core/session/provider-context" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { toLLMMessages } from "@opencode/core/session/runner/to-llm-message" +import { SessionSchema } from "@opencode/core/session/schema" +import { InstructionStateTable, SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Model } from "@opencode/schema/model" import { asc, eq } from "drizzle-orm" import { Effect, Schema } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-remove.test.ts b/packages/core/test/session-remove.test.ts index 42b4e7d49a7..2e39ee6233c 100644 --- a/packages/core/test/session-remove.test.ts +++ b/packages/core/test/session-remove.test.ts @@ -1,20 +1,20 @@ import { describe, expect } from "bun:test" import { Effect, Layer, RcMap, Scope } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Database } from "@opencode-ai/core/database/database" -import { Bus } from "@opencode-ai/core/bus" -import { Instance } from "@opencode-ai/core/instance/service" -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionModelTransport } from "@opencode-ai/core/session/model-transport" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionStore } from "@opencode-ai/core/session/store" -import { SessionEnvironment } from "@opencode-ai/core/session/environment" -import { LocationServiceMap } from "@opencode-ai/core/location-services" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Database } from "@opencode/core/database/database" +import { Bus } from "@opencode/core/bus" +import { Instance } from "@opencode/core/instance/service" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionModelTransport } from "@opencode/core/session/model-transport" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionStore } from "@opencode/core/session/store" +import { SessionEnvironment } from "@opencode/core/session/environment" +import { LocationServiceMap } from "@opencode/core/location-services" import { testEffect } from "./lib/effect" import { globalProjectNode } from "./lib/project" import { offlineModels } from "./fixture/models" diff --git a/packages/core/test/session-revert.test.ts b/packages/core/test/session-revert.test.ts index 629a5f3693e..4853f615403 100644 --- a/packages/core/test/session-revert.test.ts +++ b/packages/core/test/session-revert.test.ts @@ -3,25 +3,25 @@ import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" import { Effect } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { Model } from "@opencode-ai/core/model" -import { Plugin } from "@opencode-ai/core/plugin" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { Money } from "@opencode-ai/schema/money" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" +import { Agent } from "@opencode/core/agent" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { Model } from "@opencode/core/model" +import { Plugin } from "@opencode/core/plugin" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionInbox } from "@opencode/core/session/inbox" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { Snapshot } from "@opencode/core/snapshot" +import { Money } from "@opencode/schema/money" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" import { tempGlobalLayer } from "./fixture/global" import { offlineModels } from "./fixture/models" import { tmpdirScoped } from "./fixture/tmpdir" diff --git a/packages/core/test/session-run-coordinator.test.ts b/packages/core/test/session-run-coordinator.test.ts index e04ea8e16bd..e02a84511d5 100644 --- a/packages/core/test/session-run-coordinator.test.ts +++ b/packages/core/test/session-run-coordinator.test.ts @@ -1,7 +1,7 @@ import { describe, expect } from "bun:test" import { Cause, Deferred, Effect, Exit, Fiber, Layer } from "effect" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionRunCoordinator } from "@opencode-ai/core/session/run-coordinator" +import { SessionInbox } from "@opencode/core/session/inbox" +import { SessionRunCoordinator } from "@opencode/core/session/run-coordinator" import { testEffect } from "./lib/effect" const it = testEffect(Layer.empty) diff --git a/packages/core/test/session-runner-message.test.ts b/packages/core/test/session-runner-message.test.ts index 5f37a4d19aa..2f51aa49a61 100644 --- a/packages/core/test/session-runner-message.test.ts +++ b/packages/core/test/session-runner-message.test.ts @@ -1,15 +1,15 @@ import { describe, expect, test } from "bun:test" -import { Message } from "@opencode-ai/ai" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { AgentAttachment, Base64, FileAttachment, SkillAttachment } from "@opencode-ai/schema/prompt" -import { Skill } from "@opencode-ai/schema/skill" -import { toLLMMessages } from "@opencode-ai/core/session/runner/to-llm-message" -import { Agent } from "@opencode-ai/core/agent" -import { Shell } from "@opencode-ai/schema/shell" -import { Location } from "@opencode-ai/schema/location" -import { AbsolutePath } from "@opencode-ai/schema/schema" +import { Message } from "@opencode/ai" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { SessionMessage } from "@opencode/core/session/message" +import { AgentAttachment, Base64, FileAttachment, SkillAttachment } from "@opencode/schema/prompt" +import { Skill } from "@opencode/schema/skill" +import { toLLMMessages } from "@opencode/core/session/runner/to-llm-message" +import { Agent } from "@opencode/core/agent" +import { Shell } from "@opencode/schema/shell" +import { Location } from "@opencode/schema/location" +import { AbsolutePath } from "@opencode/schema/schema" import { DateTime } from "effect" import path from "path" import { pathToFileURL } from "url" diff --git a/packages/core/test/session-runner-recorded.test.ts b/packages/core/test/session-runner-recorded.test.ts index 75a24fa14fa..03346d4976d 100644 --- a/packages/core/test/session-runner-recorded.test.ts +++ b/packages/core/test/session-runner-recorded.test.ts @@ -1,47 +1,47 @@ -import { HttpRecorder } from "@opencode-ai/http-recorder" -import { OpenAIChat } from "@opencode-ai/ai/protocols/openai-chat" -import { Auth, LLMClient, type LLMClientService, RequestExecutor } from "@opencode-ai/ai/route" -import { Catalog } from "@opencode-ai/core/catalog" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNodePlatform } from "@opencode-ai/core/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Permission } from "@opencode-ai/core/permission" -import { Agent } from "@opencode-ai/core/agent" -import { Config } from "@opencode-ai/core/config" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionRunCoordinator } from "@opencode-ai/core/session/run-coordinator" -import { SessionRunner } from "@opencode-ai/core/session/runner/index" -import { SessionRunnerLLM } from "@opencode-ai/core/session/runner/llm" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { Tool } from "@opencode-ai/core/tool" -import { SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Location } from "@opencode-ai/core/location" -import { InstructionBuiltIns } from "@opencode-ai/core/instructions/builtins" -import { InstructionDiscovery } from "@opencode-ai/core/instruction-discovery" -import { Instructions } from "@opencode-ai/core/instructions/index" -import { SkillInstructions } from "@opencode-ai/core/skill/instructions" -import { ReferenceInstructions } from "@opencode-ai/core/reference/instructions" -import { McpInstructions } from "@opencode-ai/core/mcp/instructions" -import { PluginSupervisor } from "@opencode-ai/core/plugin/supervisor" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { OptimizePlugin } from "@opencode-ai/core/plugin/optimize" +import { HttpRecorder } from "@opencode/http-recorder" +import { OpenAIChat } from "@opencode/ai/protocols/openai-chat" +import { Auth, LLMClient, type LLMClientService, RequestExecutor } from "@opencode/ai/route" +import { Catalog } from "@opencode/core/catalog" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNodePlatform } from "@opencode/core/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { EventTable } from "@opencode/core/event/sql" +import { Permission } from "@opencode/core/permission" +import { Agent } from "@opencode/core/agent" +import { Config } from "@opencode/core/config" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { Snapshot } from "@opencode/core/snapshot" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionRunCoordinator } from "@opencode/core/session/run-coordinator" +import { SessionRunner } from "@opencode/core/session/runner/index" +import { SessionRunnerLLM } from "@opencode/core/session/runner/llm" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { Tool } from "@opencode/core/tool" +import { SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { Location } from "@opencode/core/location" +import { InstructionBuiltIns } from "@opencode/core/instructions/builtins" +import { InstructionDiscovery } from "@opencode/core/instruction-discovery" +import { Instructions } from "@opencode/core/instructions/index" +import { SkillInstructions } from "@opencode/core/skill/instructions" +import { ReferenceInstructions } from "@opencode/core/reference/instructions" +import { McpInstructions } from "@opencode/core/mcp/instructions" +import { PluginSupervisor } from "@opencode/core/plugin/supervisor" +import { Plugin } from "@opencode/core/plugin" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { OptimizePlugin } from "@opencode/core/plugin/optimize" import { describe, expect } from "bun:test" import { eq } from "drizzle-orm" import { Effect, Layer } from "effect" import path from "node:path" import { testEffect } from "./lib/effect" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" +import { LocationServiceMap } from "@opencode/core/location-service-map" import { promptLocationNode } from "./fixture/prompt-location" import { permissionLayer } from "./lib/permission" import { agentHost, catalogHost, host } from "./plugin/host" diff --git a/packages/core/test/session-runner-tool-events.test.ts b/packages/core/test/session-runner-tool-events.test.ts index 4e0fdc9121d..24255e62d93 100644 --- a/packages/core/test/session-runner-tool-events.test.ts +++ b/packages/core/test/session-runner-tool-events.test.ts @@ -1,27 +1,27 @@ import { expect, test } from "bun:test" import { Cause, Deferred, Effect, Exit, Fiber, Schema } from "effect" import { eq } from "drizzle-orm" -import { LLMEvent } from "@opencode-ai/ai" -import { Money } from "@opencode-ai/schema/money" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Event } from "@opencode-ai/schema/event" -import { Agent } from "@opencode-ai/core/agent" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { Session } from "@opencode-ai/core/session" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionMessageTable, SessionTable } from "@opencode-ai/core/session/sql" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { createLLMEventPublisher } from "@opencode-ai/core/session/runner/publish-llm-event" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LLMEvent } from "@opencode/ai" +import { Money } from "@opencode/schema/money" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { EventTable } from "@opencode/core/event/sql" +import { Event } from "@opencode/schema/event" +import { Agent } from "@opencode/core/agent" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionMessage } from "@opencode/core/session/message" +import { Session } from "@opencode/core/session" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionMessageTable, SessionTable } from "@opencode/core/session/sql" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" +import { Snapshot } from "@opencode/core/snapshot" +import { createLLMEventPublisher } from "@opencode/core/session/runner/publish-llm-event" +import { LayerNode } from "@opencode/util/effect/layer-node" import { it, testEffect } from "./lib/effect" import { TestClock } from "effect/testing" diff --git a/packages/core/test/session-runner.test.ts b/packages/core/test/session-runner.test.ts index 15ff0b97a03..14c442af845 100644 --- a/packages/core/test/session-runner.test.ts +++ b/packages/core/test/session-runner.test.ts @@ -15,81 +15,81 @@ import { InvalidRequestError, RateLimitError, UnknownProviderError, -} from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols/openai-chat" -import { AnthropicMessages, OpenAIResponses } from "@opencode-ai/ai/protocols" -import { compileRequest } from "@opencode-ai/ai/route/client" -import { TestLLM } from "@opencode-ai/ai/testing" -import { Catalog } from "@opencode-ai/core/catalog" -import { Database } from "@opencode-ai/core/database/database" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNodePlatform } from "@opencode-ai/core/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Event } from "@opencode-ai/schema/event" -import { App } from "@opencode-ai/core/app" -import { Permission } from "@opencode-ai/core/permission" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { Form } from "@opencode-ai/core/form" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionCompaction } from "@opencode-ai/core/session/compaction" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionModelTransport } from "@opencode-ai/core/session/model-transport" -import { SessionProviderContext } from "@opencode-ai/core/session/provider-context" -import { Money } from "@opencode-ai/schema/money" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionRunCoordinator } from "@opencode-ai/core/session/run-coordinator" -import { SessionRunner } from "@opencode-ai/core/session/runner/index" -import { SessionRunnerLLM } from "@opencode-ai/core/session/runner/llm" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { SessionUsage } from "@opencode-ai/core/session/usage" -import { PluginSupervisor } from "@opencode-ai/core/plugin/supervisor" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { OptimizePlugin } from "@opencode-ai/core/plugin/optimize" -import { QuestionTool } from "@opencode-ai/core/tool/plugin/question" -import { Agent } from "@opencode-ai/core/agent" -import { Config } from "@opencode-ai/core/config" -import { Document, Info } from "@opencode-ai/schema/config" -import { ConfigCompaction } from "@opencode-ai/schema/config/compaction" -import { Tool } from "@opencode-ai/core/tool" -import type { Info as ToolInfo } from "@opencode-ai/schema/tool" +} from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols/openai-chat" +import { AnthropicMessages, OpenAIResponses } from "@opencode/ai/protocols" +import { compileRequest } from "@opencode/ai/route/client" +import { TestLLM } from "@opencode/ai/testing" +import { Catalog } from "@opencode/core/catalog" +import { Database } from "@opencode/core/database/database" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNodePlatform } from "@opencode/core/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Event } from "@opencode/schema/event" +import { App } from "@opencode/core/app" +import { Permission } from "@opencode/core/permission" +import { EventTable } from "@opencode/core/event/sql" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { Form } from "@opencode/core/form" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { Snapshot } from "@opencode/core/snapshot" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionCompaction } from "@opencode/core/session/compaction" +import { SessionInbox } from "@opencode/core/session/inbox" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionModelTransport } from "@opencode/core/session/model-transport" +import { SessionProviderContext } from "@opencode/core/session/provider-context" +import { Money } from "@opencode/schema/money" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionRunCoordinator } from "@opencode/core/session/run-coordinator" +import { SessionRunner } from "@opencode/core/session/runner/index" +import { SessionRunnerLLM } from "@opencode/core/session/runner/llm" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { SessionUsage } from "@opencode/core/session/usage" +import { PluginSupervisor } from "@opencode/core/plugin/supervisor" +import { Plugin } from "@opencode/core/plugin" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { OptimizePlugin } from "@opencode/core/plugin/optimize" +import { QuestionTool } from "@opencode/core/tool/plugin/question" +import { Agent } from "@opencode/core/agent" +import { Config } from "@opencode/core/config" +import { Document, Info } from "@opencode/schema/config" +import { ConfigCompaction } from "@opencode/schema/config/compaction" +import { Tool } from "@opencode/core/tool" +import type { Info as ToolInfo } from "@opencode/schema/tool" import { InstructionStateTable, SessionInboxTable, SessionMessageTable, SessionTable, -} from "@opencode-ai/core/session/sql" -import { InstructionEntry } from "@opencode-ai/core/session/instruction-entry" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Instructions } from "@opencode-ai/core/instructions/index" -import { InstructionBuiltIns } from "@opencode-ai/core/instructions/builtins" -import { InstructionDiscovery } from "@opencode-ai/core/instruction-discovery" -import { SkillInstructions } from "@opencode-ai/core/skill/instructions" -import { ReferenceInstructions } from "@opencode-ai/core/reference/instructions" -import { McpInstructions } from "@opencode-ai/core/mcp/instructions" -import { SessionSystemPrompt } from "@opencode-ai/core/session/system-prompt" -import { ID, Model } from "@opencode-ai/core/model" -import { Location } from "@opencode-ai/core/location" -import { Provider } from "@opencode-ai/core/provider" +} from "@opencode/core/session/sql" +import { InstructionEntry } from "@opencode/core/session/instruction-entry" +import { SessionStore } from "@opencode/core/session/store" +import { Instructions } from "@opencode/core/instructions/index" +import { InstructionBuiltIns } from "@opencode/core/instructions/builtins" +import { InstructionDiscovery } from "@opencode/core/instruction-discovery" +import { SkillInstructions } from "@opencode/core/skill/instructions" +import { ReferenceInstructions } from "@opencode/core/reference/instructions" +import { McpInstructions } from "@opencode/core/mcp/instructions" +import { SessionSystemPrompt } from "@opencode/core/session/system-prompt" +import { ID, Model } from "@opencode/core/model" +import { Location } from "@opencode/core/location" +import { Provider } from "@opencode/core/provider" import { Cause, Context, Deferred, Effect, Exit, Fiber, Layer, Queue, Schema, Scope, Stream } from "effect" import { TestClock } from "effect/testing" import { asc, desc, eq, sql } from "drizzle-orm" import { testEffect } from "./lib/effect" import { promptLocationNode } from "./fixture/prompt-location" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" +import { LocationServiceMap } from "@opencode/core/location-service-map" import { Expected } from "./lib/session-message" import { permissionLayer } from "./lib/permission" import { agentHost, catalogHost, host } from "./plugin/host" -import { CodeModeInstructions } from "@opencode-ai/core/codemode/instructions" +import { CodeModeInstructions } from "@opencode/core/codemode/instructions" const emptyCodeMode = `\n\n${CodeModeInstructions.render({ total: 0, shown: 0, namespaces: [] })}` type ToolBarrier = { diff --git a/packages/core/test/session-shell.test.ts b/packages/core/test/session-shell.test.ts index ecff6a27693..f93b6aa21f7 100644 --- a/packages/core/test/session-shell.test.ts +++ b/packages/core/test/session-shell.test.ts @@ -2,17 +2,17 @@ import { describe, expect, setDefaultTimeout } from "bun:test" import fs from "fs/promises" import path from "path" import { Cause, Context, Deferred, Effect, Exit, Fiber, Layer, Option, Schedule, Stream } from "effect" -import { Bus } from "@opencode-ai/core/bus" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Location } from "@opencode-ai/core/location" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionRunCoordinator } from "@opencode-ai/core/session/run-coordinator" -import { Shell } from "@opencode-ai/core/shell" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Location } from "@opencode/core/location" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionRunCoordinator } from "@opencode/core/session/run-coordinator" +import { Shell } from "@opencode/core/shell" +import { LayerNode } from "@opencode/util/effect/layer-node" import { location } from "./fixture/location" import { offlineModels } from "./fixture/models" import { tmpdirScoped } from "./fixture/tmpdir" diff --git a/packages/core/test/session-skill.test.ts b/packages/core/test/session-skill.test.ts index 3214f5310eb..c15ad5d60f8 100644 --- a/packages/core/test/session-skill.test.ts +++ b/packages/core/test/session-skill.test.ts @@ -1,28 +1,28 @@ import path from "path" import { describe, expect } from "bun:test" import { Effect, Layer, LayerMap } from "effect" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Bus } from "@opencode-ai/core/bus" -import { Image } from "@opencode-ai/core/image" -import { Location } from "@opencode-ai/core/location" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import type { LocationServices } from "@opencode-ai/core/location-services" -import { Project } from "@opencode-ai/core/project" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionStore } from "@opencode-ai/core/session/store" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { Skill } from "@opencode-ai/core/skill" -import { Event } from "@opencode-ai/schema/event" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Bus } from "@opencode/core/bus" +import { Image } from "@opencode/core/image" +import { Location } from "@opencode/core/location" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import type { LocationServices } from "@opencode/core/location-services" +import { Project } from "@opencode/core/project" +import { Plugin } from "@opencode/core/plugin" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionStore } from "@opencode/core/session/store" +import { SessionInbox } from "@opencode/core/session/inbox" +import { Skill } from "@opencode/core/skill" +import { Event } from "@opencode/schema/event" import { testEffect } from "./lib/effect" import { globalProjectNode } from "./lib/project" diff --git a/packages/core/test/session-sql.types.ts b/packages/core/test/session-sql.types.ts index dccb39cde91..ad4b0184dcb 100644 --- a/packages/core/test/session-sql.types.ts +++ b/packages/core/test/session-sql.types.ts @@ -1,4 +1,4 @@ -import { SessionMessageTable } from "@opencode-ai/core/session/sql" +import { SessionMessageTable } from "@opencode/core/session/sql" type MessageData = (typeof SessionMessageTable.$inferInsert)["data"] diff --git a/packages/core/test/session-stats.test.ts b/packages/core/test/session-stats.test.ts index 6321cf6c8ed..2cdb4c005c4 100644 --- a/packages/core/test/session-stats.test.ts +++ b/packages/core/test/session-stats.test.ts @@ -1,20 +1,20 @@ import { describe, expect } from "bun:test" -import { Agent } from "@opencode-ai/schema/agent" -import { Event } from "@opencode-ai/schema/event" -import { Model } from "@opencode-ai/schema/model" -import { Money } from "@opencode-ai/schema/money" -import { Project } from "@opencode-ai/schema/project" -import { Provider } from "@opencode-ai/schema/provider" -import { Session } from "@opencode-ai/schema/session" -import { SessionEvent } from "@opencode-ai/schema/session-event" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Database } from "@opencode-ai/core/database/database" -import { EventSequenceTable, EventTable } from "@opencode-ai/core/event/sql" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { SessionMessageTable, SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStats } from "@opencode-ai/core/session/stats" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" +import { Agent } from "@opencode/schema/agent" +import { Event } from "@opencode/schema/event" +import { Model } from "@opencode/schema/model" +import { Money } from "@opencode/schema/money" +import { Project } from "@opencode/schema/project" +import { Provider } from "@opencode/schema/provider" +import { Session } from "@opencode/schema/session" +import { SessionEvent } from "@opencode/schema/session-event" +import { SessionMessage } from "@opencode/schema/session-message" +import { AbsolutePath } from "@opencode/core/schema" +import { Database } from "@opencode/core/database/database" +import { EventSequenceTable, EventTable } from "@opencode/core/event/sql" +import { ProjectTable } from "@opencode/core/project/sql" +import { SessionMessageTable, SessionTable } from "@opencode/core/session/sql" +import { SessionStats } from "@opencode/core/session/stats" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" import { DateTime, Effect, Schema } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-step.test.ts b/packages/core/test/session-step.test.ts index b8f9fa3a633..5c6150b549b 100644 --- a/packages/core/test/session-step.test.ts +++ b/packages/core/test/session-step.test.ts @@ -1,25 +1,25 @@ import { expect } from "bun:test" -import { LanguageModel, LLM, LLMEvent } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols/openai-chat" -import { TestLLM } from "@opencode-ai/ai/testing" -import { Agent } from "@opencode-ai/core/agent" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { SessionStep } from "@opencode-ai/core/session/runner/step" -import { SessionMessageTable, SessionTable } from "@opencode-ai/core/session/sql" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { ToolOutput } from "@opencode-ai/core/tool-output" -import { Money } from "@opencode-ai/schema/money" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LanguageModel, LLM, LLMEvent } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols/openai-chat" +import { TestLLM } from "@opencode/ai/testing" +import { Agent } from "@opencode/core/agent" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { EventTable } from "@opencode/core/event/sql" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { SessionStep } from "@opencode/core/session/runner/step" +import { SessionMessageTable, SessionTable } from "@opencode/core/session/sql" +import { Snapshot } from "@opencode/core/snapshot" +import { ToolOutput } from "@opencode/core/tool-output" +import { Money } from "@opencode/schema/money" +import { LayerNode } from "@opencode/util/effect/layer-node" import { asc, eq } from "drizzle-orm" import { Effect, Exit, Layer } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-store.test.ts b/packages/core/test/session-store.test.ts index ae72cfc52e8..19292795d14 100644 --- a/packages/core/test/session-store.test.ts +++ b/packages/core/test/session-store.test.ts @@ -1,18 +1,18 @@ import { describe, expect } from "bun:test" import { Effect } from "effect" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Event } from "@opencode-ai/schema/event" -import { Project } from "@opencode-ai/schema/project" -import { AbsolutePath } from "@opencode-ai/schema/schema" -import { Session } from "@opencode-ai/schema/session" -import { SessionEvent } from "@opencode-ai/schema/session-event" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { ProjectTable } from "@opencode/core/project/sql" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionStore } from "@opencode/core/session/store" +import { Event } from "@opencode/schema/event" +import { Project } from "@opencode/schema/project" +import { AbsolutePath } from "@opencode/schema/schema" +import { Session } from "@opencode/schema/session" +import { SessionEvent } from "@opencode/schema/session-event" +import { SessionMessage } from "@opencode/schema/session-message" +import { LayerNode } from "@opencode/util/effect/layer-node" import { testEffect } from "./lib/effect" const it = testEffect( diff --git a/packages/core/test/session-system-prompt.test.ts b/packages/core/test/session-system-prompt.test.ts index cfa29702b35..874c1725a06 100644 --- a/packages/core/test/session-system-prompt.test.ts +++ b/packages/core/test/session-system-prompt.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { SessionSystemPrompt } from "@opencode-ai/core/session/system-prompt" +import { SessionSystemPrompt } from "@opencode/core/session/system-prompt" test("renders the default system prompt instructions", () => { const prompt = SessionSystemPrompt.make(["edit", "read", "shell"]) diff --git a/packages/core/test/session-title.test.ts b/packages/core/test/session-title.test.ts index 00ba75502d9..ccd2fb86dd0 100644 --- a/packages/core/test/session-title.test.ts +++ b/packages/core/test/session-title.test.ts @@ -1,31 +1,31 @@ import { beforeEach, expect } from "bun:test" -import { AIError, LLMClient, LLMEvent, LanguageModel, TransportError, type LLMRequest } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { Agent } from "@opencode-ai/core/agent" -import { Catalog } from "@opencode-ai/core/catalog" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { llmClient } from "@opencode-ai/core/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { SessionTitle } from "@opencode-ai/core/session/title" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { PluginSupervisor } from "@opencode-ai/core/plugin/supervisor" -import { Location } from "@opencode-ai/core/location" -import { Session } from "@opencode-ai/core/session" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { App } from "@opencode-ai/core/app" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Money } from "@opencode-ai/schema/money" +import { AIError, LLMClient, LLMEvent, LanguageModel, TransportError, type LLMRequest } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { Agent } from "@opencode/core/agent" +import { Catalog } from "@opencode/core/catalog" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { llmClient } from "@opencode/core/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { SessionTitle } from "@opencode/core/session/title" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { PluginSupervisor } from "@opencode/core/plugin/supervisor" +import { Location } from "@opencode/core/location" +import { Session } from "@opencode/core/session" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { App } from "@opencode/core/app" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { Money } from "@opencode/schema/money" import { Deferred, Effect, Fiber, Layer, Stream } from "effect" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/session-tool-progress.test.ts b/packages/core/test/session-tool-progress.test.ts index 191d8be18bd..505dff452f9 100644 --- a/packages/core/test/session-tool-progress.test.ts +++ b/packages/core/test/session-tool-progress.test.ts @@ -1,22 +1,22 @@ import { describe, expect } from "bun:test" import { asc, eq } from "drizzle-orm" import { Effect, Schema } from "effect" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Agent } from "@opencode-ai/core/agent" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Model } from "@opencode-ai/core/model" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionTable, SessionMessageTable } from "@opencode-ai/core/session/sql" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Agent } from "@opencode/core/agent" +import { EventTable } from "@opencode/core/event/sql" +import { Model } from "@opencode/core/model" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionTable, SessionMessageTable } from "@opencode/core/session/sql" import { testEffect } from "./lib/effect" const it = testEffect( diff --git a/packages/core/test/session-view.test.ts b/packages/core/test/session-view.test.ts index e6b244785bc..1092abf68e0 100644 --- a/packages/core/test/session-view.test.ts +++ b/packages/core/test/session-view.test.ts @@ -1,20 +1,20 @@ import { describe, expect } from "bun:test" import path from "path" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { EventTable } from "@opencode-ai/core/event/sql" -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionTable } from "@opencode-ai/core/session/sql" -import { SessionStore } from "@opencode-ai/core/session/store" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { EventTable } from "@opencode/core/event/sql" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionTable } from "@opencode/core/session/sql" +import { SessionStore } from "@opencode/core/session/store" +import { LayerNode } from "@opencode/util/effect/layer-node" import { DateTime, Effect, Layer } from "effect" import { asc, eq } from "drizzle-orm" import { tmpdirScoped } from "./fixture/tmpdir" diff --git a/packages/core/test/session-wait.test.ts b/packages/core/test/session-wait.test.ts index 1f01d9803c0..03bbbabebdd 100644 --- a/packages/core/test/session-wait.test.ts +++ b/packages/core/test/session-wait.test.ts @@ -1,16 +1,16 @@ import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { Database } from "@opencode-ai/core/database/database" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionProjector } from "@opencode-ai/core/session/projector" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionStore } from "@opencode-ai/core/session/store" +import { Database } from "@opencode/core/database/database" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionProjector } from "@opencode/core/session/projector" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionStore } from "@opencode/core/session/store" import { testEffect } from "./lib/effect" import { globalProjectNode } from "./lib/project" diff --git a/packages/core/test/shared-schema.test.ts b/packages/core/test/shared-schema.test.ts index 50fbea8effe..9279d2082d0 100644 --- a/packages/core/test/shared-schema.test.ts +++ b/packages/core/test/shared-schema.test.ts @@ -1,33 +1,33 @@ import { expect, test } from "bun:test" import { Schema } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { Session } from "@opencode-ai/core/session" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Location } from "@opencode-ai/schema/location" -import { Model } from "@opencode-ai/schema/model" -import { Provider } from "@opencode-ai/schema/provider" -import { Project } from "@opencode-ai/schema/project" -import { Worktree } from "@opencode-ai/schema/worktree" -import { PermissionV1 } from "@opencode-ai/schema/permission-v1" -import { Prompt } from "@opencode-ai/schema/prompt" -import { SessionInbox } from "@opencode-ai/schema/session-inbox" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { Workspace } from "@opencode-ai/schema/workspace" -import { Command } from "@opencode-ai/schema/command" -import { Connection } from "@opencode-ai/schema/connection" -import { Credential } from "@opencode-ai/schema/credential" -import { FileSystem } from "@opencode-ai/schema/filesystem" -import { Integration } from "@opencode-ai/schema/integration" -import { LLM } from "@opencode-ai/schema/llm" -import { Permission } from "@opencode-ai/schema/permission" -import { Pty } from "@opencode-ai/schema/pty" -import { Reference } from "@opencode-ai/schema/reference" -import { Skill } from "@opencode-ai/schema/skill" -import { AbsolutePath, optional, statics } from "@opencode-ai/schema/schema" +import { Agent } from "@opencode/core/agent" +import { Session } from "@opencode/core/session" +import { SessionStore } from "@opencode/core/session/store" +import { Location } from "@opencode/schema/location" +import { Model } from "@opencode/schema/model" +import { Provider } from "@opencode/schema/provider" +import { Project } from "@opencode/schema/project" +import { Worktree } from "@opencode/schema/worktree" +import { PermissionV1 } from "@opencode/schema/permission-v1" +import { Prompt } from "@opencode/schema/prompt" +import { SessionInbox } from "@opencode/schema/session-inbox" +import { SessionMessage } from "@opencode/schema/session-message" +import { Workspace } from "@opencode/schema/workspace" +import { Command } from "@opencode/schema/command" +import { Connection } from "@opencode/schema/connection" +import { Credential } from "@opencode/schema/credential" +import { FileSystem } from "@opencode/schema/filesystem" +import { Integration } from "@opencode/schema/integration" +import { LLM } from "@opencode/schema/llm" +import { Permission } from "@opencode/schema/permission" +import { Pty } from "@opencode/schema/pty" +import { Reference } from "@opencode/schema/reference" +import { Skill } from "@opencode/schema/skill" +import { AbsolutePath, optional, statics } from "@opencode/schema/schema" test("Core reuses the canonical shared schemas", async () => { - const schemaAgent = await import("@opencode-ai/schema/agent") - const schemaSession = await import("@opencode-ai/schema/session") + const schemaAgent = await import("@opencode/schema/agent") + const schemaSession = await import("@opencode/schema/session") const [ coreCommand, coreConnection, @@ -50,26 +50,26 @@ test("Core reuses the canonical shared schemas", async () => { coreSchema, coreWorkspace, ] = await Promise.all([ - import("@opencode-ai/core/command"), - import("@opencode-ai/core/integration/connection"), - import("@opencode-ai/core/credential"), - import("@opencode-ai/core/filesystem"), - import("@opencode-ai/core/integration"), - import("@opencode-ai/core/location"), - import("@opencode-ai/ai"), - import("@opencode-ai/core/model"), - import("@opencode-ai/core/permission"), - import("@opencode-ai/core/v1/permission"), - import("@opencode-ai/core/worktree"), - import("@opencode-ai/core/pty"), - import("@opencode-ai/core/project/schema"), - import("@opencode-ai/core/provider"), - import("@opencode-ai/core/reference"), - import("@opencode-ai/core/session/inbox"), - import("@opencode-ai/core/session/message"), - import("@opencode-ai/core/skill"), - import("@opencode-ai/core/schema"), - import("@opencode-ai/core/workspace"), + import("@opencode/core/command"), + import("@opencode/core/integration/connection"), + import("@opencode/core/credential"), + import("@opencode/core/filesystem"), + import("@opencode/core/integration"), + import("@opencode/core/location"), + import("@opencode/ai"), + import("@opencode/core/model"), + import("@opencode/core/permission"), + import("@opencode/core/v1/permission"), + import("@opencode/core/worktree"), + import("@opencode/core/pty"), + import("@opencode/core/project/schema"), + import("@opencode/core/provider"), + import("@opencode/core/reference"), + import("@opencode/core/session/inbox"), + import("@opencode/core/session/message"), + import("@opencode/core/skill"), + import("@opencode/core/schema"), + import("@opencode/core/workspace"), ]) const schemas = [ diff --git a/packages/core/test/shell-cleanup.test.ts b/packages/core/test/shell-cleanup.test.ts index 30b8cdd315d..ddd9f1aa2fd 100644 --- a/packages/core/test/shell-cleanup.test.ts +++ b/packages/core/test/shell-cleanup.test.ts @@ -1,11 +1,11 @@ import { describe, expect } from "bun:test" import path from "path" import { Effect } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Shell } from "@opencode-ai/core/shell" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Shell } from "@opencode/core/shell" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" import { tmpdir } from "./fixture/tmpdir" import { it } from "./lib/effect" diff --git a/packages/core/test/shell-parse.test.ts b/packages/core/test/shell-parse.test.ts index 5ad4a43e928..39e35b46ecc 100644 --- a/packages/core/test/shell-parse.test.ts +++ b/packages/core/test/shell-parse.test.ts @@ -2,7 +2,7 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" import os from "os" import path from "path" -import { ShellParse } from "@opencode-ai/core/shell/parse" +import { ShellParse } from "@opencode/core/shell/parse" describe("ShellParse", () => { test("splits bash commands and derives reusable prefixes", async () => { diff --git a/packages/core/test/shell-retention.test.ts b/packages/core/test/shell-retention.test.ts index 33bddfa9cc4..d0a400d8230 100644 --- a/packages/core/test/shell-retention.test.ts +++ b/packages/core/test/shell-retention.test.ts @@ -2,12 +2,12 @@ import { expect } from "bun:test" import { Deferred, Effect, Fiber, Layer, Queue, Scope, Sink, Stream } from "effect" import { ChildProcessSpawner } from "effect/unstable/process" import { ExitCode, makeHandle, ProcessId } from "effect/unstable/process/ChildProcessSpawner" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Config } from "@opencode-ai/core/config" -import { Environment } from "@opencode-ai/core/environment/index" -import { Location } from "@opencode-ai/core/location" -import { Shell } from "@opencode-ai/core/shell" -import { Global } from "@opencode-ai/util/global" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Config } from "@opencode/core/config" +import { Environment } from "@opencode/core/environment/index" +import { Location } from "@opencode/core/location" +import { Shell } from "@opencode/core/shell" +import { Global } from "@opencode/util/global" import { hostEnvironmentLayer } from "./fixture/environment" import { tempGlobalLayer } from "./fixture/global" import { tempLocationLayer } from "./fixture/location" diff --git a/packages/core/test/shell.test.ts b/packages/core/test/shell.test.ts index 11fb974c8e8..204d6e146d7 100644 --- a/packages/core/test/shell.test.ts +++ b/packages/core/test/shell.test.ts @@ -1,8 +1,8 @@ import { describe, expect, test } from "bun:test" import path from "path" -import { ShellSelect } from "@opencode-ai/core/shell/select" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { which } from "@opencode-ai/core/util/which" +import { ShellSelect } from "@opencode/core/shell/select" +import { FSUtil } from "@opencode/util/fs-util" +import { which } from "@opencode/core/util/which" import fs from "node:fs/promises" import { tmpdir } from "./fixture/tmpdir" diff --git a/packages/core/test/skill-discovery.test.ts b/packages/core/test/skill-discovery.test.ts index 0c49d558301..fb60bf9014c 100644 --- a/packages/core/test/skill-discovery.test.ts +++ b/packages/core/test/skill-discovery.test.ts @@ -5,9 +5,9 @@ import { describe, expect } from "bun:test" import { NodeHttpServer } from "@effect/platform-node" import { Effect } from "effect" import { HttpServer, HttpServerRequest, HttpServerResponse } from "effect/unstable/http" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Global } from "@opencode-ai/util/global" -import { SkillDiscovery } from "@opencode-ai/core/skill/discovery" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Global } from "@opencode/util/global" +import { SkillDiscovery } from "@opencode/core/skill/discovery" import { tmpdir } from "./fixture/tmpdir" import { it } from "./lib/effect" diff --git a/packages/core/test/skill.test.ts b/packages/core/test/skill.test.ts index a3221069d97..87f01953550 100644 --- a/packages/core/test/skill.test.ts +++ b/packages/core/test/skill.test.ts @@ -1,11 +1,11 @@ import { describe, expect } from "bun:test" import { Deferred, Effect, Fiber, Stream } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Skill } from "@opencode-ai/core/skill" +import { Agent } from "@opencode/core/agent" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { AbsolutePath } from "@opencode/core/schema" +import { Skill } from "@opencode/core/skill" import { testEffect } from "./lib/effect" const it = testEffect(AppNodeBuilder.build(LayerNode.group([Skill.node, Agent.node, Bus.node]))) diff --git a/packages/core/test/skill/instructions.test.ts b/packages/core/test/skill/instructions.test.ts index c3e352dc650..6026b1b751b 100644 --- a/packages/core/test/skill/instructions.test.ts +++ b/packages/core/test/skill/instructions.test.ts @@ -1,11 +1,11 @@ import path from "path" import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { Agent } from "@opencode-ai/core/agent" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Skill } from "@opencode-ai/core/skill" -import { SkillInstructions } from "@opencode-ai/core/skill/instructions" +import { Agent } from "@opencode/core/agent" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { AbsolutePath } from "@opencode/core/schema" +import { Skill } from "@opencode/core/skill" +import { SkillInstructions } from "@opencode/core/skill/instructions" import { it } from "../lib/effect" import { readInitial, readUpdate } from "../lib/instructions" diff --git a/packages/core/test/snapshot.test.ts b/packages/core/test/snapshot.test.ts index 9e1b03956ac..e1ca564a330 100644 --- a/packages/core/test/snapshot.test.ts +++ b/packages/core/test/snapshot.test.ts @@ -3,13 +3,13 @@ import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" import { Deferred, Effect, Fiber, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Git } from "@opencode-ai/core/git" -import { Global } from "@opencode-ai/util/global" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { Hash } from "@opencode-ai/util/hash" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Git } from "@opencode/core/git" +import { Global } from "@opencode/util/global" +import { Location } from "@opencode/core/location" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" +import { Snapshot } from "@opencode/core/snapshot" +import { Hash } from "@opencode/util/hash" import { tmpdir } from "./fixture/tmpdir" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/sqlite-workerd.test.ts b/packages/core/test/sqlite-workerd.test.ts index e539b5efe8a..8bfdaf3663c 100644 --- a/packages/core/test/sqlite-workerd.test.ts +++ b/packages/core/test/sqlite-workerd.test.ts @@ -2,8 +2,8 @@ import { describe, expect, test } from "bun:test" import { Effect, Layer } from "effect" import { SqlClient } from "effect/unstable/sql" import { SqlError } from "effect/unstable/sql/SqlError" -import { sqliteLayer } from "@opencode-ai/core/database/sqlite.workerd" -import type { DurableObjectStorage } from "@opencode-ai/core/database/sqlite.workerd" +import { sqliteLayer } from "@opencode/core/database/sqlite.workerd" +import type { DurableObjectStorage } from "@opencode/core/database/sqlite.workerd" import { makeDurableObjectStorage } from "./fixture/durable-object-storage" import { tempGlobalLayer } from "./fixture/global" @@ -79,7 +79,7 @@ describe("sqlite.workerd", () => { test("boots the full database layer with migrations over injected storage", async () => { const storage = makeDurableObjectStorage() - const core = await import("@opencode-ai/core/database/database") + const core = await import("@opencode/core/database/database") await Effect.runPromise( Effect.scoped( Layer.build( diff --git a/packages/core/test/state-group.test.ts b/packages/core/test/state-group.test.ts index 8bc34a1c365..3caca356fbb 100644 --- a/packages/core/test/state-group.test.ts +++ b/packages/core/test/state-group.test.ts @@ -1,6 +1,6 @@ import { expect } from "bun:test" import { Effect } from "effect" -import { State } from "@opencode-ai/core/state" +import { State } from "@opencode/core/state" import { it } from "./lib/effect" it.effect("detaches every registration of a failed group and refreshes every affected domain", () => diff --git a/packages/core/test/state-replay.test.ts b/packages/core/test/state-replay.test.ts index 4c92c1a4b97..299f42255f3 100644 --- a/packages/core/test/state-replay.test.ts +++ b/packages/core/test/state-replay.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import { State } from "@opencode-ai/core/state" +import { State } from "@opencode/core/state" import { Effect } from "effect" import { FastCheck } from "effect/testing" diff --git a/packages/core/test/state.test.ts b/packages/core/test/state.test.ts index 8aa05c9ebf1..1a73acf2891 100644 --- a/packages/core/test/state.test.ts +++ b/packages/core/test/state.test.ts @@ -1,5 +1,5 @@ import { describe, expect } from "bun:test" -import { State } from "@opencode-ai/core/state" +import { State } from "@opencode/core/state" import { Cause, Deferred, Effect, Exit, Fiber, Scope } from "effect" import { it } from "./lib/effect" diff --git a/packages/core/test/tool-edit.test.ts b/packages/core/test/tool-edit.test.ts index 2e7f0b1337d..ef5698fef38 100644 --- a/packages/core/test/tool-edit.test.ts +++ b/packages/core/test/tool-edit.test.ts @@ -2,22 +2,22 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Environment } from "@opencode-ai/core/environment/index" -import { FileMutation } from "@opencode-ai/core/file-mutation" -import { Formatter } from "@opencode-ai/core/formatter" -import { Location } from "@opencode-ai/core/location" -import { FileAccess } from "@opencode-ai/core/file-access" -import { Permission } from "@opencode-ai/core/permission" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { Tool } from "@opencode-ai/core/tool" -import { EditTool } from "@opencode-ai/core/tool/plugin/edit" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Environment } from "@opencode/core/environment/index" +import { FileMutation } from "@opencode/core/file-mutation" +import { Formatter } from "@opencode/core/formatter" +import { Location } from "@opencode/core/location" +import { FileAccess } from "@opencode/core/file-access" +import { Permission } from "@opencode/core/permission" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { Tool } from "@opencode/core/tool" +import { EditTool } from "@opencode/core/tool/plugin/edit" import { transformEnvironmentFiles } from "./fixture/environment" import { location } from "./fixture/location" import { tmpdir, withTempDir } from "./fixture/tmpdir" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { testEffect } from "./lib/effect" import { permissionLayer } from "./lib/permission" import { toolIdentity, executeTool, registerToolPlugin, toolDefinitions } from "./lib/tool" diff --git a/packages/core/test/tool-execute.test.ts b/packages/core/test/tool-execute.test.ts index f76a18a08c5..e99d73701c1 100644 --- a/packages/core/test/tool-execute.test.ts +++ b/packages/core/test/tool-execute.test.ts @@ -1,11 +1,11 @@ import { expect, test } from "bun:test" -import { CodeModeTool } from "@opencode-ai/core/codemode/tool" -import { Tool } from "@opencode-ai/core/tool" -import { execute } from "@opencode-ai/core/tool/runtime" -import { Agent } from "@opencode-ai/schema/agent" -import { Session } from "@opencode-ai/schema/session" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import type { Info } from "@opencode-ai/schema/tool" +import { CodeModeTool } from "@opencode/core/codemode/tool" +import { Tool } from "@opencode/core/tool" +import { execute } from "@opencode/core/tool/runtime" +import { Agent } from "@opencode/schema/agent" +import { Session } from "@opencode/schema/session" +import { SessionMessage } from "@opencode/schema/session-message" +import type { Info } from "@opencode/schema/tool" import { Effect, Schema } from "effect" const context = { diff --git a/packages/core/test/tool-output.test.ts b/packages/core/test/tool-output.test.ts index 35dfef6a3c2..35255063bd8 100644 --- a/packages/core/test/tool-output.test.ts +++ b/packages/core/test/tool-output.test.ts @@ -1,13 +1,13 @@ import { describe, expect } from "bun:test" import path from "path" import { Effect } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { ToolOutput } from "@opencode-ai/core/tool-output" -import type { Tool } from "@opencode-ai/core/tool" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { Identifier } from "@opencode-ai/core/id/id" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { ToolOutput } from "@opencode/core/tool-output" +import type { Tool } from "@opencode/core/tool" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { Identifier } from "@opencode/core/id/id" import { tmpdir } from "./fixture/tmpdir" import { it } from "./lib/effect" diff --git a/packages/core/test/tool-patch.test.ts b/packages/core/test/tool-patch.test.ts index 99055430d27..4fdfb487f58 100644 --- a/packages/core/test/tool-patch.test.ts +++ b/packages/core/test/tool-patch.test.ts @@ -2,22 +2,22 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" import { Effect, Exit, Layer, Schema } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Environment } from "@opencode-ai/core/environment/index" -import { Formatter } from "@opencode-ai/core/formatter" -import { FileMutation } from "@opencode-ai/core/file-mutation" -import { Location } from "@opencode-ai/core/location" -import { FileAccess } from "@opencode-ai/core/file-access" -import { Permission } from "@opencode-ai/core/permission" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { Tool } from "@opencode-ai/core/tool" -import { PatchTool } from "@opencode-ai/core/tool/plugin/patch" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Environment } from "@opencode/core/environment/index" +import { Formatter } from "@opencode/core/formatter" +import { FileMutation } from "@opencode/core/file-mutation" +import { Location } from "@opencode/core/location" +import { FileAccess } from "@opencode/core/file-access" +import { Permission } from "@opencode/core/permission" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { Tool } from "@opencode/core/tool" +import { PatchTool } from "@opencode/core/tool/plugin/patch" import { transformEnvironmentFiles } from "./fixture/environment" import { location } from "./fixture/location" import { tmpdir } from "./fixture/tmpdir" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { testEffect } from "./lib/effect" import { permissionLayer } from "./lib/permission" import { toolIdentity, executeTool, registerToolPlugin, toolDefinitions } from "./lib/tool" diff --git a/packages/core/test/tool-question.test.ts b/packages/core/test/tool-question.test.ts index ec5becae5fd..bd397f8ea45 100644 --- a/packages/core/test/tool-question.test.ts +++ b/packages/core/test/tool-question.test.ts @@ -1,17 +1,17 @@ import { describe, expect } from "bun:test" import { Cause, Effect, Exit, Fiber, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Form } from "@opencode-ai/core/form" -import { Permission } from "@opencode-ai/core/permission" -import { Session } from "@opencode-ai/core/session" -import { Tool } from "@opencode-ai/core/tool" -import { QuestionTool } from "@opencode-ai/core/tool/plugin/question" -import { Image } from "@opencode-ai/core/image" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Form } from "@opencode/core/form" +import { Permission } from "@opencode/core/permission" +import { Session } from "@opencode/core/session" +import { Tool } from "@opencode/core/tool" +import { QuestionTool } from "@opencode/core/tool/plugin/question" +import { Image } from "@opencode/core/image" import { testEffect } from "./lib/effect" import { imagePassthrough } from "./lib/image" import { permissionLayer } from "./lib/permission" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { toolIdentity, executeTool, registerToolPlugin, toolDefinitions } from "./lib/tool" const sessionID = Session.ID.make("ses_question_tool_test") diff --git a/packages/core/test/tool-read-filesystem.test.ts b/packages/core/test/tool-read-filesystem.test.ts index 41c673599e1..2e5d0bb6f03 100644 --- a/packages/core/test/tool-read-filesystem.test.ts +++ b/packages/core/test/tool-read-filesystem.test.ts @@ -1,12 +1,12 @@ import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" -import { Environment } from "@opencode-ai/core/environment/index" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { ReadToolFileSystem } from "@opencode-ai/core/tool/read-filesystem" -import { CrossSpawnSpawner } from "@opencode-ai/util/cross-spawn-spawner" -import { LayerNodePlatform } from "@opencode-ai/util/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Environment } from "@opencode/core/environment/index" +import { AbsolutePath } from "@opencode/core/schema" +import { ReadToolFileSystem } from "@opencode/core/tool/read-filesystem" +import { CrossSpawnSpawner } from "@opencode/util/cross-spawn-spawner" +import { LayerNodePlatform } from "@opencode/util/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" import { Effect, FileSystem } from "effect" import { ChildProcessSpawner } from "effect/unstable/process" import { testEffect } from "./lib/effect" diff --git a/packages/core/test/tool-read.test.ts b/packages/core/test/tool-read.test.ts index 61e646ffd10..f24c5c4aab9 100644 --- a/packages/core/test/tool-read.test.ts +++ b/packages/core/test/tool-read.test.ts @@ -1,25 +1,25 @@ import { beforeEach, describe, expect } from "bun:test" import path from "path" import { Effect, Exit, Layer, Result } from "effect" -import { Config } from "@opencode-ai/core/config" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FileSystem } from "@opencode-ai/core/filesystem" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Location } from "@opencode-ai/core/location" -import { Image } from "@opencode-ai/core/image" -import { Permission } from "@opencode-ai/core/permission" -import { Session } from "@opencode-ai/core/session" -import { AbsolutePath, RelativePath } from "@opencode-ai/core/schema" -import { Global } from "@opencode-ai/util/global" -import { FileAccess } from "@opencode-ai/core/file-access" +import { Config } from "@opencode/core/config" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FileSystem } from "@opencode/core/filesystem" +import { FSUtil } from "@opencode/util/fs-util" +import { Location } from "@opencode/core/location" +import { Image } from "@opencode/core/image" +import { Permission } from "@opencode/core/permission" +import { Session } from "@opencode/core/session" +import { AbsolutePath, RelativePath } from "@opencode/core/schema" +import { Global } from "@opencode/util/global" +import { FileAccess } from "@opencode/core/file-access" import { location } from "./fixture/location" -import { Tool } from "@opencode-ai/core/tool" -import { ReadTool } from "@opencode-ai/core/tool/plugin/read" -import { ReadToolFileSystem } from "@opencode-ai/core/tool/read-filesystem" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { SessionInstructions } from "@opencode-ai/core/session/instructions" -import { Environment } from "@opencode-ai/core/environment/index" +import { Tool } from "@opencode/core/tool" +import { ReadTool } from "@opencode/core/tool/plugin/read" +import { ReadToolFileSystem } from "@opencode/core/tool/read-filesystem" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { SessionInstructions } from "@opencode/core/session/instructions" +import { Environment } from "@opencode/core/environment/index" import { testEffect } from "./lib/effect" import { permissionLayer } from "./lib/permission" import { toolIdentity, executeTool, registerToolPlugin, toolDefinitions } from "./lib/tool" diff --git a/packages/core/test/tool-registry.test.ts b/packages/core/test/tool-registry.test.ts index f7d7c761db9..1fbabfe1d0f 100644 --- a/packages/core/test/tool-registry.test.ts +++ b/packages/core/test/tool-registry.test.ts @@ -1,15 +1,15 @@ import { describe, expect } from "bun:test" -import { Agent } from "@opencode-ai/core/agent" -import type { Permission } from "@opencode-ai/core/permission" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Image } from "@opencode-ai/core/image" -import { PluginHooks } from "@opencode-ai/core/plugin/hooks" -import { Session } from "@opencode-ai/core/session" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { State } from "@opencode-ai/core/state" -import { Tool } from "@opencode-ai/core/tool" -import type { Info } from "@opencode-ai/schema/tool" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Agent } from "@opencode/core/agent" +import type { Permission } from "@opencode/core/permission" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Image } from "@opencode/core/image" +import { PluginHooks } from "@opencode/core/plugin/hooks" +import { Session } from "@opencode/core/session" +import { SessionMessage } from "@opencode/core/session/message" +import { State } from "@opencode/core/state" +import { Tool } from "@opencode/core/tool" +import type { Info } from "@opencode/schema/tool" +import { LayerNode } from "@opencode/util/effect/layer-node" import { codeModeListings, executeTool, toolDefinitions } from "./lib/tool" import { Deferred, Effect, Exit, Fiber, Layer, Logger, Schema, SchemaGetter, SchemaIssue, Scope } from "effect" import { z } from "zod" diff --git a/packages/core/test/tool-schema.test.ts b/packages/core/test/tool-schema.test.ts index 443fa88ee03..7e90941edde 100644 --- a/packages/core/test/tool-schema.test.ts +++ b/packages/core/test/tool-schema.test.ts @@ -1,10 +1,10 @@ import { expect, test } from "bun:test" import { Effect, Schema } from "effect" import { z } from "zod" -import { Agent } from "@opencode-ai/schema/agent" -import { Session } from "@opencode-ai/schema/session" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import type { Info } from "@opencode-ai/schema/tool" +import { Agent } from "@opencode/schema/agent" +import { Session } from "@opencode/schema/session" +import { SessionMessage } from "@opencode/schema/session-message" +import type { Info } from "@opencode/schema/tool" import { Tool } from "../src/tool" import { definition, execute } from "../src/tool/runtime" diff --git a/packages/core/test/tool-search.test.ts b/packages/core/test/tool-search.test.ts index 99fbde1bd98..26314e46cf8 100644 --- a/packages/core/test/tool-search.test.ts +++ b/packages/core/test/tool-search.test.ts @@ -2,20 +2,20 @@ import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" import { Effect, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Environment } from "@opencode-ai/core/environment/index" -import { FileSystem } from "@opencode-ai/core/filesystem" -import { Location } from "@opencode-ai/core/location" -import { FileAccess } from "@opencode-ai/core/file-access" -import { Permission } from "@opencode-ai/core/permission" -import { Ripgrep } from "@opencode-ai/core/ripgrep" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { GlobTool } from "@opencode-ai/core/tool/plugin/glob" -import { GrepTool } from "@opencode-ai/core/tool/plugin/grep" -import { Tool } from "@opencode-ai/core/tool" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Environment } from "@opencode/core/environment/index" +import { FileSystem } from "@opencode/core/filesystem" +import { Location } from "@opencode/core/location" +import { FileAccess } from "@opencode/core/file-access" +import { Permission } from "@opencode/core/permission" +import { Ripgrep } from "@opencode/core/ripgrep" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { GlobTool } from "@opencode/core/tool/plugin/glob" +import { GrepTool } from "@opencode/core/tool/plugin/grep" +import { Tool } from "@opencode/core/tool" import { location } from "./fixture/location" import { tmpdir } from "./fixture/tmpdir" import { it } from "./lib/effect" diff --git a/packages/core/test/tool-shell.test.ts b/packages/core/test/tool-shell.test.ts index 4096abcc0e0..e7d92732f69 100644 --- a/packages/core/test/tool-shell.test.ts +++ b/packages/core/test/tool-shell.test.ts @@ -4,40 +4,40 @@ import os from "os" import path from "path" import { describe, expect } from "bun:test" import { Cause, Deferred, Duration, Effect, Exit, Fiber, Layer, Queue, Scope, Stream } from "effect" -import { Money } from "@opencode-ai/schema/money" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode, makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { filesystem } from "@opencode-ai/util/effect/app-node-platform" -import { Database } from "@opencode-ai/core/database/database" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { Environment } from "@opencode-ai/core/environment/index" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Global } from "@opencode-ai/util/global" -import { Location } from "@opencode-ai/core/location" -import { FileAccess } from "@opencode-ai/core/file-access" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Agent } from "@opencode-ai/core/agent" -import { Job } from "@opencode-ai/core/job" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Permission } from "@opencode-ai/core/permission" -import { PermissionSaved } from "@opencode-ai/core/permission/saved" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginSupervisor } from "@opencode-ai/core/plugin/supervisor" -import { Shell } from "@opencode-ai/core/shell" -import { ShellSelect } from "@opencode-ai/core/shell/select" -import { ID } from "@opencode-ai/schema/shell" -import { ShellTool } from "@opencode-ai/core/tool/plugin/shell" -import { ToolOutput } from "@opencode-ai/core/tool-output" -import { Tool } from "@opencode-ai/core/tool" +import { Money } from "@opencode/schema/money" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode, makeLocationNode } from "@opencode/util/effect/app-node" +import { filesystem } from "@opencode/util/effect/app-node-platform" +import { Database } from "@opencode/core/database/database" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { Environment } from "@opencode/core/environment/index" +import { FSUtil } from "@opencode/util/fs-util" +import { Global } from "@opencode/util/global" +import { Location } from "@opencode/core/location" +import { FileAccess } from "@opencode/core/file-access" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { Agent } from "@opencode/core/agent" +import { Job } from "@opencode/core/job" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionStore } from "@opencode/core/session/store" +import { Permission } from "@opencode/core/permission" +import { PermissionSaved } from "@opencode/core/permission/saved" +import { Plugin } from "@opencode/core/plugin" +import { PluginSupervisor } from "@opencode/core/plugin/supervisor" +import { Shell } from "@opencode/core/shell" +import { ShellSelect } from "@opencode/core/shell/select" +import { ID } from "@opencode/schema/shell" +import { ShellTool } from "@opencode/core/tool/plugin/shell" +import { ToolOutput } from "@opencode/core/tool-output" +import { Tool } from "@opencode/core/tool" import { tmpdir, tmpdirScoped } from "./fixture/tmpdir" import { tempGlobalLayer } from "./fixture/global" import { offlineModels } from "./fixture/models" diff --git a/packages/core/test/tool-skill.test.ts b/packages/core/test/tool-skill.test.ts index ecd27383a03..fc1b9c8a656 100644 --- a/packages/core/test/tool-skill.test.ts +++ b/packages/core/test/tool-skill.test.ts @@ -2,21 +2,21 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Permission } from "@opencode-ai/core/permission" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { Skill } from "@opencode-ai/core/skill" -import { SkillTool } from "@opencode-ai/core/tool/plugin/skill" -import { Tool } from "@opencode-ai/core/tool" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Permission } from "@opencode/core/permission" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { Skill } from "@opencode/core/skill" +import { SkillTool } from "@opencode/core/tool/plugin/skill" +import { Tool } from "@opencode/core/tool" import { tmpdir } from "./fixture/tmpdir" -import { Image } from "@opencode-ai/core/image" +import { Image } from "@opencode/core/image" import { it } from "./lib/effect" import { imagePassthrough } from "./lib/image" import { permissionLayer } from "./lib/permission" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { FSUtil } from "@opencode-ai/util/fs-util" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { FSUtil } from "@opencode/util/fs-util" import { toolIdentity, executeTool, registerToolPlugin, toolDefinitions } from "./lib/tool" const skillToolNode = makeLocationNode({ diff --git a/packages/core/test/tool-subagent.test.ts b/packages/core/test/tool-subagent.test.ts index 6b800e1c7a8..4981bba667b 100644 --- a/packages/core/test/tool-subagent.test.ts +++ b/packages/core/test/tool-subagent.test.ts @@ -1,39 +1,39 @@ import { describe, expect } from "bun:test" import { Deferred, Effect, Fiber, Layer, Schema, Stream } from "effect" -import { LanguageModel } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { TestLLM } from "@opencode-ai/ai/testing" +import { LanguageModel } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { TestLLM } from "@opencode/ai/testing" import path from "path" -import { Money } from "@opencode-ai/schema/money" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNodePlatform } from "@opencode-ai/core/effect/app-node-platform" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Global } from "@opencode-ai/util/global" -import { makeGlobalNode, makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { Database } from "@opencode-ai/core/database/database" -import { Bus } from "@opencode-ai/core/bus" -import { Config } from "@opencode-ai/core/config" -import { Location } from "@opencode-ai/core/location" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Agent } from "@opencode-ai/core/agent" -import { Job } from "@opencode-ai/core/job" -import { KV } from "@opencode-ai/core/kv" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionRestart } from "@opencode-ai/core/session/execution/restart" -import { SessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { SessionStore } from "@opencode-ai/core/session/store" -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginSupervisor } from "@opencode-ai/core/plugin/supervisor" -import { Permission } from "@opencode-ai/core/permission" -import { SubagentTool } from "@opencode-ai/core/tool/plugin/subagent" -import { Tool } from "@opencode-ai/core/tool" +import { Money } from "@opencode/schema/money" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNodePlatform } from "@opencode/core/effect/app-node-platform" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Global } from "@opencode/util/global" +import { makeGlobalNode, makeLocationNode } from "@opencode/util/effect/app-node" +import { Database } from "@opencode/core/database/database" +import { Bus } from "@opencode/core/bus" +import { Config } from "@opencode/core/config" +import { Location } from "@opencode/core/location" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { AbsolutePath } from "@opencode/core/schema" +import { Agent } from "@opencode/core/agent" +import { Job } from "@opencode/core/job" +import { KV } from "@opencode/core/kv" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionRestart } from "@opencode/core/session/execution/restart" +import { SessionInbox } from "@opencode/core/session/inbox" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { SessionStore } from "@opencode/core/session/store" +import { Plugin } from "@opencode/core/plugin" +import { PluginSupervisor } from "@opencode/core/plugin/supervisor" +import { Permission } from "@opencode/core/permission" +import { SubagentTool } from "@opencode/core/tool/plugin/subagent" +import { Tool } from "@opencode/core/tool" import { tmpdir } from "./fixture/tmpdir" import { tempGlobalLayer } from "./fixture/global" import { offlineModels } from "./fixture/models" diff --git a/packages/core/test/tool-webfetch.test.ts b/packages/core/test/tool-webfetch.test.ts index f58f6cf8bc4..1f1ec9aee9b 100644 --- a/packages/core/test/tool-webfetch.test.ts +++ b/packages/core/test/tool-webfetch.test.ts @@ -2,15 +2,15 @@ import { describe, expect, test } from "bun:test" import { Duration, Effect, Fiber, Layer, Schema } from "effect" import * as TestClock from "effect/testing/TestClock" import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { LayerNodePlatform } from "@opencode-ai/util/effect/app-node-platform" -import { Permission } from "@opencode-ai/core/permission" -import { Session } from "@opencode-ai/core/session" -import { Tool } from "@opencode-ai/core/tool" -import { WebFetchTool } from "@opencode-ai/core/tool/plugin/webfetch" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { Image } from "@opencode-ai/core/image" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { LayerNodePlatform } from "@opencode/util/effect/app-node-platform" +import { Permission } from "@opencode/core/permission" +import { Session } from "@opencode/core/session" +import { Tool } from "@opencode/core/tool" +import { WebFetchTool } from "@opencode/core/tool/plugin/webfetch" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { Image } from "@opencode/core/image" import { testEffect } from "./lib/effect" import { imagePassthrough } from "./lib/image" import { permissionLayer } from "./lib/permission" diff --git a/packages/core/test/tool-websearch.test.ts b/packages/core/test/tool-websearch.test.ts index bbe2a86ed9a..7e3f8e8dd72 100644 --- a/packages/core/test/tool-websearch.test.ts +++ b/packages/core/test/tool-websearch.test.ts @@ -1,18 +1,18 @@ import { describe, expect } from "bun:test" import { Context, Effect, Layer } from "effect" import type { HttpClientError } from "effect/unstable/http" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Permission } from "@opencode-ai/core/permission" -import { KV } from "@opencode-ai/core/kv" -import { Form } from "@opencode-ai/core/form" -import { WebSearch } from "@opencode-ai/core/websearch" -import { Session } from "@opencode-ai/core/session" -import { toSessionError } from "@opencode-ai/core/session/to-session-error" -import { Tool } from "@opencode-ai/core/tool" -import { WebSearchTool } from "@opencode-ai/core/tool/plugin/websearch" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" -import { Image } from "@opencode-ai/core/image" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Permission } from "@opencode/core/permission" +import { KV } from "@opencode/core/kv" +import { Form } from "@opencode/core/form" +import { WebSearch } from "@opencode/core/websearch" +import { Session } from "@opencode/core/session" +import { toSessionError } from "@opencode/core/session/to-session-error" +import { Tool } from "@opencode/core/tool" +import { WebSearchTool } from "@opencode/core/tool/plugin/websearch" +import { makeLocationNode } from "@opencode/util/effect/app-node" +import { Image } from "@opencode/core/image" import { testEffect } from "./lib/effect" import { imagePassthrough } from "./lib/image" import { permissionLayer } from "./lib/permission" diff --git a/packages/core/test/tool-write.test.ts b/packages/core/test/tool-write.test.ts index 0c734a27e40..4e5b6422585 100644 --- a/packages/core/test/tool-write.test.ts +++ b/packages/core/test/tool-write.test.ts @@ -2,22 +2,22 @@ import fs from "fs/promises" import path from "path" import { describe, expect } from "bun:test" import { Effect, Layer } from "effect" -import { FileMutation } from "@opencode-ai/core/file-mutation" -import { Formatter } from "@opencode-ai/core/formatter" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Environment } from "@opencode-ai/core/environment/index" -import { Location } from "@opencode-ai/core/location" -import { FileAccess } from "@opencode-ai/core/file-access" -import { Permission } from "@opencode-ai/core/permission" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { Tool } from "@opencode-ai/core/tool" -import { WriteTool } from "@opencode-ai/core/tool/plugin/write" +import { FileMutation } from "@opencode/core/file-mutation" +import { Formatter } from "@opencode/core/formatter" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Environment } from "@opencode/core/environment/index" +import { Location } from "@opencode/core/location" +import { FileAccess } from "@opencode/core/file-access" +import { Permission } from "@opencode/core/permission" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { Tool } from "@opencode/core/tool" +import { WriteTool } from "@opencode/core/tool/plugin/write" import { transformEnvironmentFiles } from "./fixture/environment" import { location } from "./fixture/location" import { tmpdir, withTempDir } from "./fixture/tmpdir" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { testEffect } from "./lib/effect" import { permissionLayer } from "./lib/permission" import { toolIdentity, executeTool, registerToolPlugin, toolDefinitions } from "./lib/tool" diff --git a/packages/core/test/util/effect-flock.test.ts b/packages/core/test/util/effect-flock.test.ts index ff4e074e30b..947ea6191e3 100644 --- a/packages/core/test/util/effect-flock.test.ts +++ b/packages/core/test/util/effect-flock.test.ts @@ -4,10 +4,10 @@ import path from "path" import os from "os" import { Cause, Effect, Exit } from "effect" import { testEffect } from "../lib/effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { EffectFlock } from "@opencode-ai/util/effect-flock" -import { Global } from "@opencode-ai/util/global" -import { Hash } from "@opencode-ai/util/hash" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { EffectFlock } from "@opencode/util/effect-flock" +import { Global } from "@opencode/util/global" +import { Hash } from "@opencode/util/hash" import { runLockWorker, spawnLockWorker, stopLockWorker, waitForFile } from "../fixture/lock-worker" import { tmpdir } from "../fixture/tmpdir" diff --git a/packages/core/test/util/flock.test.ts b/packages/core/test/util/flock.test.ts index b3db99740f0..2c5eee410f6 100644 --- a/packages/core/test/util/flock.test.ts +++ b/packages/core/test/util/flock.test.ts @@ -1,8 +1,8 @@ import { describe, expect, test } from "bun:test" import fs from "fs/promises" import path from "path" -import { Flock } from "@opencode-ai/util/flock" -import { Hash } from "@opencode-ai/util/hash" +import { Flock } from "@opencode/util/flock" +import { Hash } from "@opencode/util/hash" import { runLockWorker, spawnLockWorker, stopLockWorker, waitForFile } from "../fixture/lock-worker" import { tmpdir } from "../fixture/tmpdir" diff --git a/packages/core/test/util/process-lock.test.ts b/packages/core/test/util/process-lock.test.ts index 9457b9c08e5..eb52b53537d 100644 --- a/packages/core/test/util/process-lock.test.ts +++ b/packages/core/test/util/process-lock.test.ts @@ -1,5 +1,5 @@ import { expect } from "bun:test" -import { ProcessLock } from "@opencode-ai/core/util/process-lock" +import { ProcessLock } from "@opencode/core/util/process-lock" import { Effect } from "effect" import fs from "node:fs/promises" import os from "node:os" diff --git a/packages/core/test/util/which.test.ts b/packages/core/test/util/which.test.ts index d07e2670720..bbf8821e406 100644 --- a/packages/core/test/util/which.test.ts +++ b/packages/core/test/util/which.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import fs from "fs/promises" import path from "path" -import { which } from "@opencode-ai/core/util/which" +import { which } from "@opencode/core/util/which" import { tmpdir } from "../fixture/tmpdir" async function cmd(dir: string, name: string, exec = true) { diff --git a/packages/core/test/v1-migration.test.ts b/packages/core/test/v1-migration.test.ts index b8ca1879f08..fdddbdc421b 100644 --- a/packages/core/test/v1-migration.test.ts +++ b/packages/core/test/v1-migration.test.ts @@ -1,16 +1,16 @@ import { describe, expect, test } from "bun:test" import { SqliteClient } from "@effect/sql-sqlite-bun" -import { EffectDrizzleSqlite } from "@opencode-ai/core/database/drizzle" -import { Database } from "@opencode-ai/core/database/database" -import { DatabaseMigration } from "@opencode-ai/core/database/migration" -import { V1Migration } from "@opencode-ai/core/database/v1-migration" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionSchema } from "@opencode-ai/core/session/schema" -import { SessionTable } from "@opencode-ai/core/session/sql" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Global } from "@opencode-ai/util/global" +import { EffectDrizzleSqlite } from "@opencode/core/database/drizzle" +import { Database } from "@opencode/core/database/database" +import { DatabaseMigration } from "@opencode/core/database/migration" +import { V1Migration } from "@opencode/core/database/v1-migration" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionSchema } from "@opencode/core/session/schema" +import { SessionTable } from "@opencode/core/session/sql" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { AbsolutePath } from "@opencode/core/schema" +import { Global } from "@opencode/util/global" import { Effect, Fiber, Layer, Logger, Schedule, Schema, Scope } from "effect" import { eq, sql } from "drizzle-orm" import type { SqlClient } from "effect/unstable/sql/SqlClient" diff --git a/packages/core/test/vcs-hg.test.ts b/packages/core/test/vcs-hg.test.ts index 3563b70fa98..73aaf20ff69 100644 --- a/packages/core/test/vcs-hg.test.ts +++ b/packages/core/test/vcs-hg.test.ts @@ -3,16 +3,16 @@ import { describe, expect } from "bun:test" import fs from "fs/promises" import path from "path" import { Effect, Fiber, Layer, Stream } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { AppProcess } from "@opencode-ai/util/process" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Vcs } from "@opencode-ai/core/vcs" -import { VcsHgPlugin } from "@opencode-ai/core/plugin/vcs/hg" -import { FileSystem } from "@opencode-ai/schema/filesystem" -import { VcsEvent } from "@opencode-ai/schema/vcs-event" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { FSUtil } from "@opencode/util/fs-util" +import { AppProcess } from "@opencode/util/process" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { Vcs } from "@opencode/core/vcs" +import { VcsHgPlugin } from "@opencode/core/plugin/vcs/hg" +import { FileSystem } from "@opencode/schema/filesystem" +import { VcsEvent } from "@opencode/schema/vcs-event" import { location } from "./fixture/location" import { tmpdir } from "./fixture/tmpdir" import { it } from "./lib/effect" diff --git a/packages/core/test/vcs.test.ts b/packages/core/test/vcs.test.ts index 4d8db4ff2a8..00148b294f3 100644 --- a/packages/core/test/vcs.test.ts +++ b/packages/core/test/vcs.test.ts @@ -4,19 +4,19 @@ import fs from "fs/promises" import path from "path" import { Cause, Context, Deferred, Effect, Exit, Fiber, Layer, Option, Schema, Scope, Stream } from "effect" import { TestClock } from "effect/testing" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { AppProcess } from "@opencode-ai/util/process" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Git } from "@opencode-ai/core/git" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { State } from "@opencode-ai/core/state" -import { Vcs } from "@opencode-ai/core/vcs" -import { VcsGitPlugin } from "@opencode-ai/core/plugin/vcs/git" -import type { VcsDefinition, VcsDiffInput } from "@opencode-ai/plugin/effect/vcs" -import { FileSystem } from "@opencode-ai/schema/filesystem" -import { VcsEvent } from "@opencode-ai/schema/vcs-event" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { AppProcess } from "@opencode/util/process" +import { FSUtil } from "@opencode/util/fs-util" +import { Git } from "@opencode/core/git" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { AbsolutePath } from "@opencode/core/schema" +import { State } from "@opencode/core/state" +import { Vcs } from "@opencode/core/vcs" +import { VcsGitPlugin } from "@opencode/core/plugin/vcs/git" +import type { VcsDefinition, VcsDiffInput } from "@opencode/plugin/effect/vcs" +import { FileSystem } from "@opencode/schema/filesystem" +import { VcsEvent } from "@opencode/schema/vcs-event" import { location } from "./fixture/location" import { tmpdir } from "./fixture/tmpdir" import { it, testEffect } from "./lib/effect" diff --git a/packages/core/test/websearch.test.ts b/packages/core/test/websearch.test.ts index f147b34ce1f..59f0c32d105 100644 --- a/packages/core/test/websearch.test.ts +++ b/packages/core/test/websearch.test.ts @@ -1,13 +1,13 @@ import { describe, expect } from "bun:test" import { Deferred, Effect, Exit, Fiber, Scope } from "effect" import { TestClock } from "effect/testing" -import { KV } from "@opencode-ai/core/kv" -import { Bus } from "@opencode-ai/core/bus" -import { WebSearch } from "@opencode-ai/core/websearch" -import { Session } from "@opencode-ai/schema/session" -import { SessionEvent } from "@opencode-ai/schema/session-event" -import { Project } from "@opencode-ai/schema/project" -import { AbsolutePath } from "@opencode-ai/schema/schema" +import { KV } from "@opencode/core/kv" +import { Bus } from "@opencode/core/bus" +import { WebSearch } from "@opencode/core/websearch" +import { Session } from "@opencode/schema/session" +import { SessionEvent } from "@opencode/schema/session-event" +import { Project } from "@opencode/schema/project" +import { AbsolutePath } from "@opencode/schema/schema" import { testEffect } from "./lib/effect" import { TestWebSearch } from "./lib/websearch" diff --git a/packages/core/test/wellknown.test.ts b/packages/core/test/wellknown.test.ts index 9a2e4e10677..1e49c90e8b8 100644 --- a/packages/core/test/wellknown.test.ts +++ b/packages/core/test/wellknown.test.ts @@ -1,10 +1,10 @@ import { expect } from "bun:test" import { Effect, Fiber, Stream } from "effect" import { FetchHttpClient } from "effect/unstable/http" -import { KV } from "@opencode-ai/core/kv" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { WellKnown } from "@opencode-ai/core/wellknown" +import { KV } from "@opencode/core/kv" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { WellKnown } from "@opencode/core/wellknown" import { testEffect } from "./lib/effect" const it = testEffect(FetchHttpClient.layer) diff --git a/packages/core/test/workspace.test.ts b/packages/core/test/workspace.test.ts index 3797cfdffe5..8666b05e226 100644 --- a/packages/core/test/workspace.test.ts +++ b/packages/core/test/workspace.test.ts @@ -1,11 +1,11 @@ import { beforeEach, expect } from "bun:test" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Database } from "@opencode-ai/core/database/database" -import { makeMemoryDriver } from "@opencode-ai/core/environment/index" -import { Workspace } from "@opencode-ai/core/workspace" -import { WorkspaceDriver } from "@opencode-ai/core/workspace/driver" -import { WorkspaceTable } from "@opencode-ai/core/workspace/sql" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Database } from "@opencode/core/database/database" +import { makeMemoryDriver } from "@opencode/core/environment/index" +import { Workspace } from "@opencode/core/workspace" +import { WorkspaceDriver } from "@opencode/core/workspace/driver" +import { WorkspaceTable } from "@opencode/core/workspace/sql" +import { LayerNode } from "@opencode/util/effect/layer-node" import { eq } from "drizzle-orm" import { Deferred, Effect, Fiber } from "effect" import { TestClock } from "effect/testing" diff --git a/packages/core/test/worktree.test.ts b/packages/core/test/worktree.test.ts index 9a65b33c36f..151799a4081 100644 --- a/packages/core/test/worktree.test.ts +++ b/packages/core/test/worktree.test.ts @@ -4,27 +4,27 @@ import fs from "fs/promises" import path from "path" import { and, eq, isNull } from "drizzle-orm" import { Context, Effect, Exit, Fiber, Layer, Queue, Scope, Stream } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Git } from "@opencode-ai/core/git" -import { Database } from "@opencode-ai/core/database/database" -import { Bus } from "@opencode-ai/core/bus" -import { Project } from "@opencode-ai/core/project" -import { ProjectTable } from "@opencode-ai/core/project/sql" -import { Worktree } from "@opencode-ai/core/worktree" -import { WorktreeDirectory } from "@opencode-ai/core/worktree/directory" -import { WorktreeTable } from "@opencode-ai/core/worktree/sql" -import { WorktreeGit } from "@opencode-ai/core/worktree/git" -import { Location } from "@opencode-ai/core/location" -import { Global } from "@opencode-ai/util/global" -import { FSUtil } from "@opencode-ai/util/fs-util" -import { Config } from "@opencode-ai/core/config" -import { ConfigWorktreePlugin } from "@opencode-ai/core/config/plugin/worktree" -import { ConfigNormalize } from "@opencode-ai/core/config/normalize" -import { Document, Event, Info } from "@opencode-ai/schema/config" -import { EventManifest } from "@opencode-ai/schema/event-manifest" -import { Workspace } from "@opencode-ai/schema/workspace" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { AbsolutePath } from "@opencode/core/schema" +import { Git } from "@opencode/core/git" +import { Database } from "@opencode/core/database/database" +import { Bus } from "@opencode/core/bus" +import { Project } from "@opencode/core/project" +import { ProjectTable } from "@opencode/core/project/sql" +import { Worktree } from "@opencode/core/worktree" +import { WorktreeDirectory } from "@opencode/core/worktree/directory" +import { WorktreeTable } from "@opencode/core/worktree/sql" +import { WorktreeGit } from "@opencode/core/worktree/git" +import { Location } from "@opencode/core/location" +import { Global } from "@opencode/util/global" +import { FSUtil } from "@opencode/util/fs-util" +import { Config } from "@opencode/core/config" +import { ConfigWorktreePlugin } from "@opencode/core/config/plugin/worktree" +import { ConfigNormalize } from "@opencode/core/config/normalize" +import { Document, Event, Info } from "@opencode/schema/config" +import { EventManifest } from "@opencode/schema/event-manifest" +import { Workspace } from "@opencode/schema/workspace" import { host } from "./plugin/host" import { initRepo } from "./fixture/git" import { tmpdir } from "./fixture/tmpdir" diff --git a/packages/desktop/electron.vite.config.ts b/packages/desktop/electron.vite.config.ts index 8a4b44c63e1..feb761fe5b8 100644 --- a/packages/desktop/electron.vite.config.ts +++ b/packages/desktop/electron.vite.config.ts @@ -10,7 +10,7 @@ const channel = (() => { const nodePtyPkg = `@lydell/node-pty-${process.platform}-${process.arch}` -const appPlugin = (await import("@opencode-ai/app/vite")).default +const appPlugin = (await import("@opencode/app/vite")).default const sentry = process.env.SENTRY_AUTH_TOKEN && process.env.SENTRY_ORG && process.env.SENTRY_PROJECT ? (await import("@sentry/vite-plugin")).sentryVitePlugin({ diff --git a/packages/desktop/package.json b/packages/desktop/package.json index 7f79a04e3d9..317278d5bd7 100644 --- a/packages/desktop/package.json +++ b/packages/desktop/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/desktop", + "name": "@opencode/desktop", "private": true, "version": "1.18.15", "type": "module", @@ -36,11 +36,11 @@ "@brendonovich/vite-plugin-opencode": "0.1.3", "@effect/platform-node": "catalog:", "@lydell/node-pty": "catalog:", - "@opencode-ai/app": "workspace:*", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/schema": "workspace:*", + "@opencode/app": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/schema": "workspace:*", "@opencode/plugin-browser": "workspace:*", - "@opencode-ai/ui": "workspace:*", + "@opencode/ui": "workspace:*", "@sentry/solid": "catalog:", "@sentry/vite-plugin": "catalog:", "@solid-primitives/storage": "catalog:", diff --git a/packages/desktop/scripts/prepare.ts b/packages/desktop/scripts/prepare.ts index 0dfd5a35cbf..2240290abe1 100755 --- a/packages/desktop/scripts/prepare.ts +++ b/packages/desktop/scripts/prepare.ts @@ -1,5 +1,5 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" await import("./prebuild") diff --git a/packages/desktop/scripts/utils.ts b/packages/desktop/scripts/utils.ts index 8c6b0e72298..4142481f96c 100644 --- a/packages/desktop/scripts/utils.ts +++ b/packages/desktop/scripts/utils.ts @@ -17,37 +17,37 @@ export function resolveChannel(): Channel { export const CLI_BINARIES: Array<{ target: string; package: string; os: string; cpu: string }> = [ { target: "aarch64-apple-darwin", - package: "@opencode-ai/cli-darwin-arm64", + package: "@opencode/cli-darwin-arm64", os: "darwin", cpu: "arm64", }, { target: "x86_64-apple-darwin", - package: "@opencode-ai/cli-darwin-x64-baseline", + package: "@opencode/cli-darwin-x64-baseline", os: "darwin", cpu: "x64", }, { target: "aarch64-pc-windows-msvc", - package: "@opencode-ai/cli-windows-arm64", + package: "@opencode/cli-windows-arm64", os: "win32", cpu: "arm64", }, { target: "x86_64-pc-windows-msvc", - package: "@opencode-ai/cli-windows-x64-baseline", + package: "@opencode/cli-windows-x64-baseline", os: "win32", cpu: "x64", }, { target: "x86_64-unknown-linux-gnu", - package: "@opencode-ai/cli-linux-x64-baseline", + package: "@opencode/cli-linux-x64-baseline", os: "linux", cpu: "x64", }, { target: "aarch64-unknown-linux-gnu", - package: "@opencode-ai/cli-linux-arm64", + package: "@opencode/cli-linux-arm64", os: "linux", cpu: "arm64", }, @@ -88,7 +88,7 @@ export async function downloadCliToResources(version = CLI_VERSION, dest = windo export async function copyBuiltCliToResources(root: string, dest = windowsify("resources/opencode-cli")) { const cli = getCurrentCli() - const directory = cli.package.replace("@opencode-ai/", "") + const directory = cli.package.replace("@opencode/", "") await copyCliToResources(join(root, directory, "bin", cli.os === "win32" ? "opencode2.exe" : "opencode2"), dest) } diff --git a/packages/desktop/src/main/browser-pane.ts b/packages/desktop/src/main/browser-pane.ts index 8f4ae105c9d..21b8c8b7e50 100644 --- a/packages/desktop/src/main/browser-pane.ts +++ b/packages/desktop/src/main/browser-pane.ts @@ -1,8 +1,8 @@ -import type { BrowserPaneCommand, BrowserPaneLayout, BrowserPaneTarget } from "@opencode-ai/app/desktop" +import type { BrowserPaneCommand, BrowserPaneLayout, BrowserPaneTarget } from "@opencode/app/desktop" import { NodeHttpClient } from "@effect/platform-node" import { Browser } from "@opencode/plugin-browser/rpc" -import { OpenCode } from "@opencode-ai/client/effect" -import { SessionID } from "@opencode-ai/schema/session-id" +import { OpenCode } from "@opencode/client/effect" +import { SessionID } from "@opencode/schema/session-id" import type { BrowserWindow } from "electron" import { Deferred, Effect, ManagedRuntime, Queue, Schedule, Schema, Stream } from "effect" import { HttpClient, HttpClientRequest } from "effect/unstable/http" diff --git a/packages/desktop/src/main/browser/network.ts b/packages/desktop/src/main/browser/network.ts index 0942bb76e33..4969085d1de 100644 --- a/packages/desktop/src/main/browser/network.ts +++ b/packages/desktop/src/main/browser/network.ts @@ -1,6 +1,6 @@ import { session, type WebContents } from "electron" -import type { RpcClient } from "@opencode-ai/client/effect/api" -import type { Session } from "@opencode-ai/schema/session" +import type { RpcClient } from "@opencode/client/effect/api" +import type { Session } from "@opencode/schema/session" import { Browser } from "@opencode/plugin-browser/rpc" import { BrowserProxy } from "@opencode/plugin-browser/proxy" import { Effect, Encoding } from "effect" diff --git a/packages/desktop/src/main/ipc-handlers/app.ts b/packages/desktop/src/main/ipc-handlers/app.ts index 6d69709c7b6..f605f4179d5 100644 --- a/packages/desktop/src/main/ipc-handlers/app.ts +++ b/packages/desktop/src/main/ipc-handlers/app.ts @@ -1,5 +1,5 @@ import { BrowserWindow } from "electron" -import { parseDesktopNativeBundle } from "@opencode-ai/app/i18n/desktop-native" +import { parseDesktopNativeBundle } from "@opencode/app/i18n/desktop-native" import { Effect } from "effect" import { AppRpcs } from "../../shared/ipc-rpc" import { openExternalURL } from "../files" diff --git a/packages/desktop/src/main/native/menu-actions.ts b/packages/desktop/src/main/native/menu-actions.ts index b1a20358bb9..8e1d4a34982 100644 --- a/packages/desktop/src/main/native/menu-actions.ts +++ b/packages/desktop/src/main/native/menu-actions.ts @@ -1,5 +1,5 @@ import { BrowserWindow } from "electron" -import type { DesktopMenuAction } from "@opencode-ai/app/desktop-menu" +import type { DesktopMenuAction } from "@opencode/app/desktop-menu" import { setZoomFactor } from "../windows" export type DesktopMenuActionHandlers = Partial<{ diff --git a/packages/desktop/src/main/native/menu.ts b/packages/desktop/src/main/native/menu.ts index 44121e2c79e..d8640337e7c 100644 --- a/packages/desktop/src/main/native/menu.ts +++ b/packages/desktop/src/main/native/menu.ts @@ -5,7 +5,7 @@ import { desktopMenuVisible, type DesktopMenuEntry, type DesktopMenuRole, -} from "@opencode-ai/app/desktop-menu" +} from "@opencode/app/desktop-menu" import { MenuCommandTriggered } from "../../shared/ipc-rpc/events" import { emitIpcEvent } from "../ipc-events" diff --git a/packages/desktop/src/main/native/translations.ts b/packages/desktop/src/main/native/translations.ts index 80e5caf412e..5d20bc24eee 100644 --- a/packages/desktop/src/main/native/translations.ts +++ b/packages/desktop/src/main/native/translations.ts @@ -4,7 +4,7 @@ import { formatDesktopNativeMessage, type DesktopNativeBundle, type DesktopNativeKey, -} from "@opencode-ai/app/i18n/desktop-native" +} from "@opencode/app/i18n/desktop-native" let bundle: DesktopNativeBundle = { locale: "en", messages: { ...DESKTOP_NATIVE_ENGLISH } } diff --git a/packages/desktop/src/main/service/background-service.ts b/packages/desktop/src/main/service/background-service.ts index a051341917d..ab6ef067767 100644 --- a/packages/desktop/src/main/service/background-service.ts +++ b/packages/desktop/src/main/service/background-service.ts @@ -35,7 +35,7 @@ const connect = Effect.fn("BackgroundService.connect")(function* (mode: "initial const cli = yield* desktopCli.resolve const version = mode === "initial" ? cli.version : undefined if (isolated) process.env.XDG_STATE_HOME = app.getPath("userData") - const client = yield* Effect.promise(() => import("@opencode-ai/client/service")) + const client = yield* Effect.promise(() => import("@opencode/client/service")) const service = yield* Effect.tryPromise(() => client.Service.ensure({ file: diff --git a/packages/desktop/src/main/storage/store.ts b/packages/desktop/src/main/storage/store.ts index 497e51b9ec8..5e5df974737 100644 --- a/packages/desktop/src/main/storage/store.ts +++ b/packages/desktop/src/main/storage/store.ts @@ -13,7 +13,7 @@ const cache = new Map() // We cannot instantiate the electron-store at module load time because // module import hoisting causes this to run before app.setPath("userData", ...) // in index.ts has executed, which would result in files being written to the default directory -// (e.g. bad: %APPDATA%\@opencode-ai\desktop\opencode.settings vs good: %APPDATA%\ai.opencode.desktop.dev\opencode.settings). +// (e.g. bad: %APPDATA%\@opencode\desktop\opencode.settings vs good: %APPDATA%\ai.opencode.desktop.dev\opencode.settings). export function getStore(name = SETTINGS_STORE) { const cached = cache.get(name) if (cached) return cached diff --git a/packages/desktop/src/main/updater/index.ts b/packages/desktop/src/main/updater/index.ts index 516c3835dc3..4fc58ccb311 100644 --- a/packages/desktop/src/main/updater/index.ts +++ b/packages/desktop/src/main/updater/index.ts @@ -2,7 +2,7 @@ export * as Updater from "./index" import type { WebContents } from "electron" import { Context, Deferred, Effect, Exit, Fiber, Layer } from "effect" -import type { UpdaterState } from "@opencode-ai/app/updater" +import type { UpdaterState } from "@opencode/app/updater" import { UpdaterStateChanged } from "../../shared/ipc-rpc/events" import { emitIpcEvent } from "../ipc-events" diff --git a/packages/desktop/src/main/updater/live.ts b/packages/desktop/src/main/updater/live.ts index b5f1a0dc2a2..149918a1303 100644 --- a/packages/desktop/src/main/updater/live.ts +++ b/packages/desktop/src/main/updater/live.ts @@ -2,7 +2,7 @@ export * as UpdaterLive from "./live" import { dialog } from "electron" import { Effect, Layer } from "effect" -import type { UpdaterState } from "@opencode-ai/app/updater" +import type { UpdaterState } from "@opencode/app/updater" import { UPDATER_ENABLED } from "../constants" import { DesktopInitialization } from "../lifecycle/desktop-initialization" import { ApplicationLifecycle } from "../lifecycle" diff --git a/packages/desktop/src/main/windows/appearance.ts b/packages/desktop/src/main/windows/appearance.ts index 9b6800348ff..ac36abc9851 100644 --- a/packages/desktop/src/main/windows/appearance.ts +++ b/packages/desktop/src/main/windows/appearance.ts @@ -1,5 +1,5 @@ -import { resolveThemeVariant } from "@opencode-ai/ui/theme/resolve" -import type { DesktopTheme } from "@opencode-ai/ui/theme/types" +import { resolveThemeVariant } from "@opencode/ui/theme/resolve" +import type { DesktopTheme } from "@opencode/ui/theme/types" import oc2ThemeJson from "../../../../ui/src/theme/themes/oc-2.json" import { app, BrowserWindow, nativeImage, nativeTheme } from "electron" import type { Path } from "effect" diff --git a/packages/desktop/src/main/wsl/ipc.ts b/packages/desktop/src/main/wsl/ipc.ts index c0765027863..123dc07d148 100644 --- a/packages/desktop/src/main/wsl/ipc.ts +++ b/packages/desktop/src/main/wsl/ipc.ts @@ -2,7 +2,7 @@ export * as WslIpc from "./ipc" import { app } from "electron" import type { WebContents } from "electron" -import type { WslServerConfig, WslServersState } from "@opencode-ai/app/wsl/types" +import type { WslServerConfig, WslServersState } from "@opencode/app/wsl/types" import { Effect } from "effect" import { WslServersChanged } from "../../shared/ipc-rpc/events" import { emitIpcEvent } from "../ipc-events" diff --git a/packages/desktop/src/main/wsl/runtime.ts b/packages/desktop/src/main/wsl/runtime.ts index 662ad260ec9..ff534b26e91 100644 --- a/packages/desktop/src/main/wsl/runtime.ts +++ b/packages/desktop/src/main/wsl/runtime.ts @@ -1,6 +1,6 @@ import { spawn } from "node:child_process" import * as pty from "@lydell/node-pty" -import type { WslDistroProbe, WslInstalledDistro, WslOnlineDistro, WslRuntimeCheck } from "@opencode-ai/app/wsl/types" +import type { WslDistroProbe, WslInstalledDistro, WslOnlineDistro, WslRuntimeCheck } from "@opencode/app/wsl/types" import { Effect, FileSystem, Path } from "effect" import { nativeT } from "../native/translations" import { parseCliVersion } from "../service/cli-version" diff --git a/packages/desktop/src/main/wsl/servers.test.ts b/packages/desktop/src/main/wsl/servers.test.ts index 557bde87b8d..0bc37412a83 100644 --- a/packages/desktop/src/main/wsl/servers.test.ts +++ b/packages/desktop/src/main/wsl/servers.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import type { WslServerConfig } from "@opencode-ai/app/wsl/types" +import type { WslServerConfig } from "@opencode/app/wsl/types" import { Effect } from "effect" import { wslCliInstallCommand } from "./runtime" import { createWslServersController } from "./servers" diff --git a/packages/desktop/src/main/wsl/servers.ts b/packages/desktop/src/main/wsl/servers.ts index 259e2267373..b251f69d4e3 100644 --- a/packages/desktop/src/main/wsl/servers.ts +++ b/packages/desktop/src/main/wsl/servers.ts @@ -7,7 +7,7 @@ import type { WslServerRuntime, WslServersEvent, WslServersState, -} from "@opencode-ai/app/wsl/types" +} from "@opencode/app/wsl/types" import { Effect } from "effect" import { nativeT } from "../native/translations" import { diff --git a/packages/desktop/src/renderer/api-types.ts b/packages/desktop/src/renderer/api-types.ts index aea01a8f246..a4ef9be06f6 100644 --- a/packages/desktop/src/renderer/api-types.ts +++ b/packages/desktop/src/renderer/api-types.ts @@ -1,8 +1,8 @@ -import type { BrowserPaneEvent } from "@opencode-ai/app/desktop" -import type { DesktopMenuAction } from "@opencode-ai/app/desktop-menu" -import type { DesktopNativeBundle } from "@opencode-ai/app/i18n/desktop-native" -import type { UpdaterState } from "@opencode-ai/app/updater" -import type { WslServersPlatform } from "@opencode-ai/app/wsl/types" +import type { BrowserPaneEvent } from "@opencode/app/desktop" +import type { DesktopMenuAction } from "@opencode/app/desktop-menu" +import type { DesktopNativeBundle } from "@opencode/app/i18n/desktop-native" +import type { UpdaterState } from "@opencode/app/updater" +import type { WslServersPlatform } from "@opencode/app/wsl/types" import type { BrowserPaneRequest } from "../shared/ipc-rpc/browser" import type { ClipboardImage, diff --git a/packages/desktop/src/renderer/api.ts b/packages/desktop/src/renderer/api.ts index 71d4ad3a825..ff2ee9ddd45 100644 --- a/packages/desktop/src/renderer/api.ts +++ b/packages/desktop/src/renderer/api.ts @@ -1,5 +1,5 @@ import type { ElectronAPI } from "./api-types" -import type { UpdaterState } from "@opencode-ai/app/updater" +import type { UpdaterState } from "@opencode/app/updater" import { invoke, listen, send } from "./ipc-client" type Mutable = diff --git a/packages/desktop/src/renderer/desktop-app.tsx b/packages/desktop/src/renderer/desktop-app.tsx index 9c5f36e8395..608af6deef9 100644 --- a/packages/desktop/src/renderer/desktop-app.tsx +++ b/packages/desktop/src/renderer/desktop-app.tsx @@ -15,8 +15,8 @@ import { useWslServers, type LayoutRoute, type UpdaterPlatform, -} from "@opencode-ai/app/desktop" -import { useTheme } from "@opencode-ai/ui/theme/context" +} from "@opencode/app/desktop" +import { useTheme } from "@opencode/ui/theme/context" import type { BaseRouterProps } from "@solidjs/router" import { createEffect, createMemo, createResource, lazy, Show, Suspense } from "solid-js" import { createStore } from "solid-js/store" diff --git a/packages/desktop/src/renderer/migration-status.tsx b/packages/desktop/src/renderer/migration-status.tsx index 18717746baf..cc3b4a9fdf5 100644 --- a/packages/desktop/src/renderer/migration-status.tsx +++ b/packages/desktop/src/renderer/migration-status.tsx @@ -1,7 +1,7 @@ -import { OpenCode, type MigrationV1StatusOutput } from "@opencode-ai/client/promise" -import { useLanguage } from "@opencode-ai/app/desktop" -import { Loader } from "@opencode-ai/ui/loader" -import { showToast, toaster, Toast } from "@opencode-ai/ui/toast" +import { OpenCode, type MigrationV1StatusOutput } from "@opencode/client/promise" +import { useLanguage } from "@opencode/app/desktop" +import { Loader } from "@opencode/ui/loader" +import { showToast, toaster, Toast } from "@opencode/ui/toast" import { createRoot, createSignal, onCleanup, onMount } from "solid-js" import type { ServerReadyData } from "../shared/ipc-contract" diff --git a/packages/desktop/src/renderer/onboarding/index.tsx b/packages/desktop/src/renderer/onboarding/index.tsx index c890f15ff9f..869a4d61897 100644 --- a/packages/desktop/src/renderer/onboarding/index.tsx +++ b/packages/desktop/src/renderer/onboarding/index.tsx @@ -1,4 +1,4 @@ -import { ServerConnection, useServers, useTabs } from "@opencode-ai/app/desktop" +import { ServerConnection, useServers, useTabs } from "@opencode/app/desktop" import { onMount } from "solid-js" import type { ElectronAPI } from "../api-types" diff --git a/packages/desktop/src/renderer/platform/files.ts b/packages/desktop/src/renderer/platform/files.ts index 67b7a352251..401bb59bcac 100644 --- a/packages/desktop/src/renderer/platform/files.ts +++ b/packages/desktop/src/renderer/platform/files.ts @@ -1,4 +1,4 @@ -import type { Platform } from "@opencode-ai/app/desktop" +import type { Platform } from "@opencode/app/desktop" import type { ElectronAPI } from "../api-types" type DesktopOS = Extract["os"] diff --git a/packages/desktop/src/renderer/platform/index.ts b/packages/desktop/src/renderer/platform/index.ts index 9b01958ec17..3e939440dc2 100644 --- a/packages/desktop/src/renderer/platform/index.ts +++ b/packages/desktop/src/renderer/platform/index.ts @@ -3,7 +3,7 @@ import { ServerConnection, type Platform, type UpdaterPlatform, -} from "@opencode-ai/app/desktop" +} from "@opencode/app/desktop" import type { ElectronAPI } from "../api-types" import { setPinchZoomEnabled, webviewZoom } from "../window/zoom" import { windowFullscreen } from "../window/fullscreen" diff --git a/packages/desktop/src/renderer/platform/menu.ts b/packages/desktop/src/renderer/platform/menu.ts index 77edecb17e4..8edddf3c588 100644 --- a/packages/desktop/src/renderer/platform/menu.ts +++ b/packages/desktop/src/renderer/platform/menu.ts @@ -1,4 +1,4 @@ -import type { Platform } from "@opencode-ai/app/desktop" +import type { Platform } from "@opencode/app/desktop" import type { ElectronAPI } from "../api-types" import { resetZoom, zoomIn, zoomOut } from "../window/zoom" diff --git a/packages/desktop/src/renderer/platform/notifications.ts b/packages/desktop/src/renderer/platform/notifications.ts index 4d802f24d10..c9a7ebe95eb 100644 --- a/packages/desktop/src/renderer/platform/notifications.ts +++ b/packages/desktop/src/renderer/platform/notifications.ts @@ -1,4 +1,4 @@ -import type { Platform } from "@opencode-ai/app/desktop" +import type { Platform } from "@opencode/app/desktop" import type { ElectronAPI } from "../api-types" export function createDesktopNotify(api: ElectronAPI): Platform["notify"] { diff --git a/packages/desktop/src/renderer/platform/storage.ts b/packages/desktop/src/renderer/platform/storage.ts index b14d5a281c9..5bea3bf7a9e 100644 --- a/packages/desktop/src/renderer/platform/storage.ts +++ b/packages/desktop/src/renderer/platform/storage.ts @@ -4,7 +4,7 @@ import { flushPersisted, type NamespaceStorage, type Platform, -} from "@opencode-ai/app/desktop" +} from "@opencode/app/desktop" import type { ElectronAPI } from "../api-types" import { onBeforeDispose } from "../ipc-client" diff --git a/packages/desktop/src/renderer/platform/updater.ts b/packages/desktop/src/renderer/platform/updater.ts index d293517d440..cdba497b3e1 100644 --- a/packages/desktop/src/renderer/platform/updater.ts +++ b/packages/desktop/src/renderer/platform/updater.ts @@ -1,4 +1,4 @@ -import type { UpdaterPlatform, UpdaterState } from "@opencode-ai/app/desktop" +import type { UpdaterPlatform, UpdaterState } from "@opencode/app/desktop" import { createSignal } from "solid-js" import type { ElectronAPI } from "../api-types" diff --git a/packages/desktop/src/renderer/startup/locale.ts b/packages/desktop/src/renderer/startup/locale.ts index ced84615312..19eab71ef8d 100644 --- a/packages/desktop/src/renderer/startup/locale.ts +++ b/packages/desktop/src/renderer/startup/locale.ts @@ -1,4 +1,4 @@ -import { loadLocaleDict, normalizeLocale, type Locale, type Platform } from "@opencode-ai/app/desktop" +import { loadLocaleDict, normalizeLocale, type Locale, type Platform } from "@opencode/app/desktop" import { storedLocaleValue } from "./locale-value" export async function preloadStoredLocale(platform: Platform) { diff --git a/packages/desktop/src/renderer/startup/splash.tsx b/packages/desktop/src/renderer/startup/splash.tsx index 26dd78c0f4b..49911de2b52 100644 --- a/packages/desktop/src/renderer/startup/splash.tsx +++ b/packages/desktop/src/renderer/startup/splash.tsx @@ -1,4 +1,4 @@ -import { Splash } from "@opencode-ai/ui/logo" +import { Splash } from "@opencode/ui/logo" export function LoadingSplash(props: { deep: boolean }) { return ( diff --git a/packages/desktop/src/renderer/wsl/connections.test.ts b/packages/desktop/src/renderer/wsl/connections.test.ts index 417566efd9e..b05a9e00f1f 100644 --- a/packages/desktop/src/renderer/wsl/connections.test.ts +++ b/packages/desktop/src/renderer/wsl/connections.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { WslServersState } from "@opencode-ai/app/wsl/types" +import type { WslServersState } from "@opencode/app/wsl/types" import { availableStartupServer, readyWslConnections } from "./connections" const state = (kind: "starting" | "ready" | "failed" | "stopped"): WslServersState => ({ diff --git a/packages/desktop/src/renderer/wsl/connections.ts b/packages/desktop/src/renderer/wsl/connections.ts index 8cbb6f9fd13..c7db9cc1133 100644 --- a/packages/desktop/src/renderer/wsl/connections.ts +++ b/packages/desktop/src/renderer/wsl/connections.ts @@ -1,4 +1,4 @@ -import type { WslServersState } from "@opencode-ai/app/wsl/types" +import type { WslServersState } from "@opencode/app/wsl/types" export function readyWslConnections(state?: WslServersState, label = "WSL") { return (state?.servers ?? []).flatMap((item) => { diff --git a/packages/desktop/test/browser/contract.ts b/packages/desktop/test/browser/contract.ts index 5bf43bac10d..1ccc32ba868 100644 --- a/packages/desktop/test/browser/contract.ts +++ b/packages/desktop/test/browser/contract.ts @@ -1,5 +1,5 @@ -import { Rpc } from "@opencode-ai/schema/rpc" -import { Session } from "@opencode-ai/schema/session" +import { Rpc } from "@opencode/schema/rpc" +import { Session } from "@opencode/schema/session" import { Schema } from "effect" export const Smoke = Rpc.define({ diff --git a/packages/desktop/test/browser/native.ts b/packages/desktop/test/browser/native.ts index 498ff3e287f..e71878d1afb 100644 --- a/packages/desktop/test/browser/native.ts +++ b/packages/desktop/test/browser/native.ts @@ -5,7 +5,7 @@ import { createHash } from "node:crypto" import path from "node:path" import { app, BrowserWindow, nativeImage } from "electron" import { Browser } from "@opencode/plugin-browser/rpc" -import { OpenCode } from "@opencode-ai/client" +import { OpenCode } from "@opencode/client" import { Effect, Fiber, Schema, Stream } from "effect" import { createBrowserPane } from "../../src/main/browser-pane" import { bindIpcEvents, ipcEventStream } from "../../src/main/ipc-events" diff --git a/packages/desktop/test/browser/plugin/index.ts b/packages/desktop/test/browser/plugin/index.ts index 3ce0cc93fea..b66783fd4c3 100644 --- a/packages/desktop/test/browser/plugin/index.ts +++ b/packages/desktop/test/browser/plugin/index.ts @@ -1,7 +1,7 @@ -import { Plugin } from "@opencode-ai/plugin/effect" -import { Agent } from "@opencode-ai/schema/agent" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { Tool } from "@opencode-ai/schema/tool" +import { Plugin } from "@opencode/plugin/effect" +import { Agent } from "@opencode/schema/agent" +import { SessionMessage } from "@opencode/schema/session-message" +import { Tool } from "@opencode/schema/tool" import { CodeModeTool } from "../../../../core/src/codemode/tool" import { execute } from "../../../../core/src/tool/runtime" import { Effect, Schema } from "effect" diff --git a/packages/enterprise/package.json b/packages/enterprise/package.json index 93a523b21b5..12d5d6f6625 100644 --- a/packages/enterprise/package.json +++ b/packages/enterprise/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/enterprise", + "name": "@opencode/enterprise", "version": "1.18.15", "private": true, "type": "module", @@ -13,13 +13,13 @@ "shell-prod": "sst shell --target Teams --stage production" }, "dependencies": { - "@opencode-ai/client": "workspace:*", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/schema": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/schema": "workspace:*", "@opencode-ai/sdk": "1.18.21", - "@opencode-ai/session-ui": "workspace:*", - "@opencode-ai/ui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/session-ui": "workspace:*", + "@opencode/ui": "workspace:*", + "@opencode/util": "workspace:*", "aws4fetch": "^1.0.20", "@pierre/diffs": "catalog:", "@solidjs/router": "catalog:", diff --git a/packages/enterprise/src/app.css b/packages/enterprise/src/app.css index ba08d986853..a78fea2f56a 100644 --- a/packages/enterprise/src/app.css +++ b/packages/enterprise/src/app.css @@ -1,3 +1,3 @@ -@import "@opencode-ai/ui/styles/tailwind"; -@import "@opencode-ai/session-ui/styles"; -@import "@opencode-ai/ui/styles/tokens"; +@import "@opencode/ui/styles/tailwind"; +@import "@opencode/session-ui/styles"; +@import "@opencode/ui/styles/tokens"; diff --git a/packages/enterprise/src/app.tsx b/packages/enterprise/src/app.tsx index cca18b7a6d7..dc61d1a73d2 100644 --- a/packages/enterprise/src/app.tsx +++ b/packages/enterprise/src/app.tsx @@ -1,10 +1,10 @@ import { Router } from "@solidjs/router" import { FileRoutes } from "@solidjs/start/router" -import { Font } from "@opencode-ai/ui/font" +import { Font } from "@opencode/ui/font" import { MetaProvider } from "@solidjs/meta" -import { MarkedProvider } from "@opencode-ai/ui/context/marked" -import { DialogProvider } from "@opencode-ai/ui/context/dialog" -import { I18nProvider } from "@opencode-ai/ui/context" +import { MarkedProvider } from "@opencode/ui/context/marked" +import { DialogProvider } from "@opencode/ui/context/dialog" +import { I18nProvider } from "@opencode/ui/context" import { pluralCategory, pluralKey, @@ -12,13 +12,13 @@ import { type UiI18nPluralKey, type UiPluralCategory, type UiTranslate, -} from "@opencode-ai/ui/context/i18n" -import { dict as uiEn } from "@opencode-ai/ui/i18n/en" -import { dict as uiZh } from "@opencode-ai/ui/i18n/zh" +} from "@opencode/ui/context/i18n" +import { dict as uiEn } from "@opencode/ui/i18n/en" +import { dict as uiZh } from "@opencode/ui/i18n/zh" import { createEffect, createMemo, Suspense, type ParentProps } from "solid-js" import { getRequestEvent } from "solid-js/web" import "./app.css" -import { Favicon } from "@opencode-ai/ui/favicon" +import { Favicon } from "@opencode/ui/favicon" function resolveTemplate(text: string, params?: UiI18nParams) { if (!params) return text diff --git a/packages/enterprise/src/core/share-document.ts b/packages/enterprise/src/core/share-document.ts index 491ec251cb4..b07c55bf2a0 100644 --- a/packages/enterprise/src/core/share-document.ts +++ b/packages/enterprise/src/core/share-document.ts @@ -8,8 +8,8 @@ import type { SessionMessageCompaction, SessionMessageInfo, SessionMessageUser, -} from "@opencode-ai/client/promise" -import type { SessionV1 } from "@opencode-ai/schema/session-v1" +} from "@opencode/client/promise" +import type { SessionV1 } from "@opencode/schema/session-v1" import type { Share } from "./share" type Entry = Extract["data"] @@ -38,7 +38,7 @@ async function mapFromLegacySession(blob: { parts: Entry<"part">[] }) { const [{ SessionV1 }, { Option, Schema }] = await Promise.all([ - import("@opencode-ai/schema/session-v1"), + import("@opencode/schema/session-v1"), import("effect"), ]) const session = Schema.decodeUnknownSync(SessionV1.SessionInfo)(legacySessionDefaults(blob.session)) diff --git a/packages/enterprise/src/core/share.ts b/packages/enterprise/src/core/share.ts index e962e782779..910cefaa990 100644 --- a/packages/enterprise/src/core/share.ts +++ b/packages/enterprise/src/core/share.ts @@ -1,5 +1,5 @@ import { Message, Model, Part, Session, SnapshotFileDiff } from "@opencode-ai/sdk/v2" -import type { SessionInfo, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionInfo, SessionMessageInfo } from "@opencode/client/promise" import z from "zod" import { Storage } from "./storage" diff --git a/packages/enterprise/src/core/storage.ts b/packages/enterprise/src/core/storage.ts index 58d61aca789..e5b50efff8d 100644 --- a/packages/enterprise/src/core/storage.ts +++ b/packages/enterprise/src/core/storage.ts @@ -1,5 +1,5 @@ import { AwsClient } from "aws4fetch" -import { lazy } from "@opencode-ai/core/util/lazy" +import { lazy } from "@opencode/core/util/lazy" export namespace Storage { export interface Adapter { diff --git a/packages/enterprise/src/routes/share/[shareID].tsx b/packages/enterprise/src/routes/share/[shareID].tsx index ebe9b426619..15faca14dba 100644 --- a/packages/enterprise/src/routes/share/[shareID].tsx +++ b/packages/enterprise/src/routes/share/[shareID].tsx @@ -1,35 +1,35 @@ -import { SessionTimeline } from "@opencode-ai/session-ui/timeline" -import type { SessionDocument } from "@opencode-ai/session-ui/document" -import type { SessionMessageInfo } from "@opencode-ai/client/promise" -import { SessionReview } from "@opencode-ai/session-ui/session-review" -import { DataProvider } from "@opencode-ai/session-ui/context" -import { FileComponentProvider } from "@opencode-ai/ui/context/file" -import { WorkerPoolProvider } from "@opencode-ai/ui/context/worker-pool" -import { withTimestampedFallback } from "@opencode-ai/util/session-title-fallback" +import { SessionTimeline } from "@opencode/session-ui/timeline" +import type { SessionDocument } from "@opencode/session-ui/document" +import type { SessionMessageInfo } from "@opencode/client/promise" +import { SessionReview } from "@opencode/session-ui/session-review" +import { DataProvider } from "@opencode/session-ui/context" +import { FileComponentProvider } from "@opencode/ui/context/file" +import { WorkerPoolProvider } from "@opencode/ui/context/worker-pool" +import { withTimestampedFallback } from "@opencode/util/session-title-fallback" import { createAsync, query, useParams } from "@solidjs/router" import { createMemo, createSignal, ErrorBoundary, Match, Show, Switch, type JSX } from "solid-js" import { Share } from "~/core/share" import { readShareDocument } from "~/core/share-document" -import { Logo, Mark } from "@opencode-ai/ui/logo" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Icon } from "@opencode-ai/ui/icon" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" -import { iife } from "@opencode-ai/core/util/iife" -import { Binary } from "@opencode-ai/util/binary" -import { NamedError } from "@opencode-ai/core/util/error" +import { Logo, Mark } from "@opencode/ui/logo" +import { IconButton } from "@opencode/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" +import { iife } from "@opencode/core/util/iife" +import { Binary } from "@opencode/util/binary" +import { NamedError } from "@opencode/core/util/error" import { DateTime } from "luxon" import { createStore } from "solid-js/store" import NotFound from "../[...404]" -import { Tabs } from "@opencode-ai/ui/tabs" -import { MessageNav } from "@opencode-ai/session-ui/message-nav" -import { FileSSR } from "@opencode-ai/session-ui/file-ssr" +import { Tabs } from "@opencode/ui/tabs" +import { MessageNav } from "@opencode/session-ui/message-nav" +import { FileSSR } from "@opencode/session-ui/file-ssr" import { clientOnly } from "@solidjs/start" import { Meta, Title } from "@solidjs/meta" import { Base64 } from "js-base64" import { getRequestEvent } from "solid-js/web" const ClientOnlyWorkerPoolProvider = clientOnly(() => - import("@opencode-ai/session-ui/pierre/worker").then((m) => ({ + import("@opencode/session-ui/pierre/worker").then((m) => ({ default: (props: { children: JSX.Element }) => ( {props.children} ), diff --git a/packages/enterprise/test/core/share.test.ts b/packages/enterprise/test/core/share.test.ts index b81da94da45..ce9b2d3639d 100644 --- a/packages/enterprise/test/core/share.test.ts +++ b/packages/enterprise/test/core/share.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import { Share } from "../../src/core/share" import { Storage } from "../../src/core/storage" -import { Identifier } from "@opencode-ai/core/util/identifier" +import { Identifier } from "@opencode/core/util/identifier" describe.concurrent("core.share", () => { test("should create a share", async () => { diff --git a/packages/function/package.json b/packages/function/package.json index 1cae807ebe4..687c379d417 100644 --- a/packages/function/package.json +++ b/packages/function/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/function", + "name": "@opencode/function", "version": "1.18.15", "$schema": "https://json.schemastore.org/package.json", "private": true, diff --git a/packages/http-recorder/README.md b/packages/http-recorder/README.md index f5f5bb1c4c1..05cde80c963 100644 --- a/packages/http-recorder/README.md +++ b/packages/http-recorder/README.md @@ -1,4 +1,4 @@ -# @opencode-ai/http-recorder +# @opencode/http-recorder Record real Effect HTTP and WebSocket traffic once, then replay it from deterministic JSON cassettes. @@ -10,7 +10,7 @@ Use it for provider integrations, retries, polling, multi-step flows, and any te ```sh bun add effect@4.0.0-beta.107 -bun add -d @opencode-ai/http-recorder @effect/vitest@4.0.0-beta.107 vitest@^4 +bun add -d @opencode/http-recorder @effect/vitest@4.0.0-beta.107 vitest@^4 ``` The package supports Node.js 22+ and Bun. It is not intended for browsers, workers, or Deno. @@ -31,7 +31,7 @@ Effect `4.0.0-beta.107` currently contains unresolved symbols in its published d import { assert, describe, it } from "@effect/vitest" import { Effect, Schema } from "effect" import { HttpClient, HttpClientRequest } from "effect/unstable/http" -import { HttpRecorder } from "@opencode-ai/http-recorder" +import { HttpRecorder } from "@opencode/http-recorder" const User = Schema.Struct({ id: Schema.Number, @@ -113,7 +113,7 @@ import { NodeSocket } from "@effect/platform-node" import { it } from "@effect/vitest" import { Deferred, Effect, Layer } from "effect" import { Socket } from "effect/unstable/socket" -import { HttpRecorder } from "@opencode-ai/http-recorder" +import { HttpRecorder } from "@opencode/http-recorder" const roundTrip = Effect.fn("Echo.roundTrip")(function* (url: string, message: string) { const socket = yield* Socket.makeWebSocket(url, { closeCodeIsError: () => false }) diff --git a/packages/http-recorder/package.json b/packages/http-recorder/package.json index aa5b49d5cdf..080665caa59 100644 --- a/packages/http-recorder/package.json +++ b/packages/http-recorder/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "version": "1.18.15", - "name": "@opencode-ai/http-recorder", + "name": "@opencode/http-recorder", "description": "Record and replay Effect HTTP and WebSocket traffic with deterministic cassettes", "type": "module", "license": "MIT", diff --git a/packages/http-recorder/script/build.ts b/packages/http-recorder/script/build.ts index 9d9de65e625..065450ec235 100644 --- a/packages/http-recorder/script/build.ts +++ b/packages/http-recorder/script/build.ts @@ -12,7 +12,7 @@ const build = await Bun.build({ format: "esm", packages: "external", }) -if (!build.success) throw new AggregateError(build.logs, "Failed to build @opencode-ai/http-recorder") +if (!build.success) throw new AggregateError(build.logs, "Failed to build @opencode/http-recorder") await Promise.all( (await readdir("dist", { recursive: true })) diff --git a/packages/http-recorder/script/verify-package.ts b/packages/http-recorder/script/verify-package.ts index 04f1f2bca5c..bc4beb54042 100644 --- a/packages/http-recorder/script/verify-package.ts +++ b/packages/http-recorder/script/verify-package.ts @@ -24,7 +24,7 @@ export const verifyPackage = async (archive: string) => { ) await writeFile( path.join(directory, "consumer.ts"), - `import { HttpRecorder } from "@opencode-ai/http-recorder" + `import { HttpRecorder } from "@opencode/http-recorder" import { NodeSocket } from "@effect/platform-node" import { Layer } from "effect" import { HttpClient } from "effect/unstable/http" @@ -48,9 +48,9 @@ HttpRecorder.layerSocket("consumer/socket", { match: () => true }) ) await writeFile( path.join(directory, "exports.mjs"), - `import { HttpRecorder } from "@opencode-ai/http-recorder" + `import { HttpRecorder } from "@opencode/http-recorder" -const root = Object.keys(await import("@opencode-ai/http-recorder")).sort() +const root = Object.keys(await import("@opencode/http-recorder")).sort() if (JSON.stringify(root) !== JSON.stringify(["HttpRecorder"])) { throw new Error(\`Unexpected root exports: \${root}\`) } @@ -63,7 +63,7 @@ if (JSON.stringify(namespace) !== JSON.stringify(["hasCassetteSync", "layer", "l ) await writeFile( path.join(directory, "deep-import.mjs"), - `import "@opencode-ai/http-recorder/internal" + `import "@opencode/http-recorder/internal" `, ) await writeFile( diff --git a/packages/http-recorder/src/cassette/store.ts b/packages/http-recorder/src/cassette/store.ts index e1fba898877..a1805850d27 100644 --- a/packages/http-recorder/src/cassette/store.ts +++ b/packages/http-recorder/src/cassette/store.ts @@ -47,7 +47,7 @@ export interface Interface { readonly list: () => Effect.Effect> } -export class Service extends Context.Service()("@opencode-ai/http-recorder/Cassette") {} +export class Service extends Context.Service()("@opencode/http-recorder/Cassette") {} const cassettePath = (directory: string, name: string) => { if (!name || path.isAbsolute(name) || path.win32.isAbsolute(name) || name.split(/[\\/]/).includes("..")) diff --git a/packages/httpapi-codegen/README.md b/packages/httpapi-codegen/README.md index 9f45ebc31f1..63e524562e6 100644 --- a/packages/httpapi-codegen/README.md +++ b/packages/httpapi-codegen/README.md @@ -1,4 +1,4 @@ -# @opencode-ai/httpapi-codegen +# @opencode/httpapi-codegen Build-time source generation for domain-oriented Promise and Effect APIs derived directly from `HttpApi` and Effect Schema contracts. diff --git a/packages/httpapi-codegen/package.json b/packages/httpapi-codegen/package.json index f2a5e4da79a..aa3bfc7c080 100644 --- a/packages/httpapi-codegen/package.json +++ b/packages/httpapi-codegen/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/httpapi-codegen", + "name": "@opencode/httpapi-codegen", "version": "0.0.0", "private": true, "type": "module", diff --git a/packages/httpapi-codegen/src/index.ts b/packages/httpapi-codegen/src/index.ts index 001c5ae2123..e686a8be4c6 100644 --- a/packages/httpapi-codegen/src/index.ts +++ b/packages/httpapi-codegen/src/index.ts @@ -437,7 +437,7 @@ function renderEffectShape( ] : [`readonly ${JSON.stringify(group.identifier)}: ${groupShapeName(group)}`], ) - return `// Generated by @opencode-ai/httpapi-codegen. Do not edit. + return `// Generated by @opencode/httpapi-codegen. Do not edit. import type { Effect, Stream } from "effect" ${[...imports].join("\n")} @@ -756,7 +756,7 @@ function renderImportedEffectFiles( options.shapeModule === undefined ? "" : `const preserveEffect = () => (effect: Effect.Effect) => effect\n${usesStream ? "const preserveStream = () => (stream: Stream.Stream) => stream\n" : ""}\n` - const client = `// Generated by @opencode-ai/httpapi-codegen. Do not edit.\nimport { Effect${usesStream ? ", Stream" : ""}, Schema } from "effect"\nimport { Sse } from "effect/unstable/encoding"\nimport { HttpClientError } from "effect/unstable/http"\n${httpApiImport}${imports}\n${shapeImport}import { ClientError } from "./client-error.js"\n\n${projection?.source ?? ""}type RawClient = HttpApiClient.ForApi\n\nconst mapClientError = (error: E) => HttpClientError.isHttpClientError(error) || Schema.isSchemaError(error) || Sse.Retry.is(error) ? new ClientError({ cause: error }) : error\n\n${preserve}${adapters.join("\n\n")}\n\nconst adaptClient = (raw: RawClient) => ({ ${fields.join(", ")} })\n\nexport const make = (options?: { readonly baseUrl?: URL | string }) => HttpApiClient.make(${api}, options).pipe(Effect.map(adaptClient))\n` + const client = `// Generated by @opencode/httpapi-codegen. Do not edit.\nimport { Effect${usesStream ? ", Stream" : ""}, Schema } from "effect"\nimport { Sse } from "effect/unstable/encoding"\nimport { HttpClientError } from "effect/unstable/http"\n${httpApiImport}${imports}\n${shapeImport}import { ClientError } from "./client-error.js"\n\n${projection?.source ?? ""}type RawClient = HttpApiClient.ForApi\n\nconst mapClientError = (error: E) => HttpClientError.isHttpClientError(error) || Schema.isSchemaError(error) || Sse.Retry.is(error) ? new ClientError({ cause: error }) : error\n\n${preserve}${adapters.join("\n\n")}\n\nconst adaptClient = (raw: RawClient) => ({ ${fields.join(", ")} })\n\nexport const make = (options?: { readonly baseUrl?: URL | string }) => HttpApiClient.make(${api}, options).pipe(Effect.map(adaptClient))\n` return [ { path: "client-error.ts", @@ -1861,7 +1861,7 @@ function renderGroup(group: Group) { ? `HttpApiClient.Client` : `HttpApiClient.Client.Group` const usesStream = group.endpoints.some((item) => item.operation.success === "stream") - return `// Generated by @opencode-ai/httpapi-codegen. Do not edit.\nimport { Effect, Schema${usesStream ? ", Stream" : ""} } from "effect"\nimport { Sse } from "effect/unstable/encoding"\nimport { HttpClientError } from "effect/unstable/http"\nimport { HttpApiClient, HttpApiEndpoint, HttpApiGroup${usesHttpApiSchema ? ", HttpApiSchema" : ""} } from "effect/unstable/httpapi"\nimport { ClientError } from "./client-error.js"\n\n${declarations}\n\nexport const Group${name} = ${groupSource}\n\ntype RawGroup = ${rawGroup}\n\n${adapters.join("\n\n")}\n\nexport const adaptGroup${name} = (raw: RawGroup) => ({ ${methods} })\n` + return `// Generated by @opencode/httpapi-codegen. Do not edit.\nimport { Effect, Schema${usesStream ? ", Stream" : ""} } from "effect"\nimport { Sse } from "effect/unstable/encoding"\nimport { HttpClientError } from "effect/unstable/http"\nimport { HttpApiClient, HttpApiEndpoint, HttpApiGroup${usesHttpApiSchema ? ", HttpApiSchema" : ""} } from "effect/unstable/httpapi"\nimport { ClientError } from "./client-error.js"\n\n${declarations}\n\nexport const Group${name} = ${groupSource}\n\ntype RawGroup = ${rawGroup}\n\n${adapters.join("\n\n")}\n\nexport const adaptGroup${name} = (raw: RawGroup) => ({ ${methods} })\n` } function renderEffectRequestPart( @@ -1946,5 +1946,5 @@ function renderClient(groups: ReadonlyArray) { const raw = `{ ${group.endpoints.map((item) => `${JSON.stringify(item.endpoint.identifier)}: raw[${JSON.stringify(item.endpoint.identifier)}]`).join(", ")} }` return [`...adaptGroup${groupTypeName(group)}(${raw})`] }) - return `// Generated by @opencode-ai/httpapi-codegen. Do not edit.\nimport { Effect } from "effect"\nimport { HttpApi, HttpApiClient } from "effect/unstable/httpapi"\n${imports}\n\nconst Api = ${api}\nconst adaptClient = (raw: HttpApiClient.ForApi) => ({ ${fields.join(", ")} })\n\nexport const make = (options?: { readonly baseUrl?: URL | string }) =>\n HttpApiClient.make(Api, options).pipe(Effect.map(adaptClient))\n` + return `// Generated by @opencode/httpapi-codegen. Do not edit.\nimport { Effect } from "effect"\nimport { HttpApi, HttpApiClient } from "effect/unstable/httpapi"\n${imports}\n\nconst Api = ${api}\nconst adaptClient = (raw: HttpApiClient.ForApi) => ({ ${fields.join(", ")} })\n\nexport const make = (options?: { readonly baseUrl?: URL | string }) =>\n HttpApiClient.make(Api, options).pipe(Effect.map(adaptClient))\n` } diff --git a/packages/httpapi-codegen/test/generated/client.ts b/packages/httpapi-codegen/test/generated/client.ts index 8379f4d9afe..0e412b20ef5 100644 --- a/packages/httpapi-codegen/test/generated/client.ts +++ b/packages/httpapi-codegen/test/generated/client.ts @@ -1,4 +1,4 @@ -// Generated by @opencode-ai/httpapi-codegen. Do not edit. +// Generated by @opencode/httpapi-codegen. Do not edit. import { Effect } from "effect" import { HttpApi, HttpApiClient } from "effect/unstable/httpapi" import { adaptGroupSession, GroupSession } from "./session" diff --git a/packages/httpapi-codegen/test/generated/event.ts b/packages/httpapi-codegen/test/generated/event.ts index d1799d2ad1b..1f6411dfb26 100644 --- a/packages/httpapi-codegen/test/generated/event.ts +++ b/packages/httpapi-codegen/test/generated/event.ts @@ -1,4 +1,4 @@ -// Generated by @opencode-ai/httpapi-codegen. Do not edit. +// Generated by @opencode/httpapi-codegen. Do not edit. import { Effect, Schema, Stream } from "effect" import { Sse } from "effect/unstable/encoding" import { HttpClientError } from "effect/unstable/http" diff --git a/packages/httpapi-codegen/test/generated/session.ts b/packages/httpapi-codegen/test/generated/session.ts index 24706d83fa1..23c35b74b0a 100644 --- a/packages/httpapi-codegen/test/generated/session.ts +++ b/packages/httpapi-codegen/test/generated/session.ts @@ -1,4 +1,4 @@ -// Generated by @opencode-ai/httpapi-codegen. Do not edit. +// Generated by @opencode/httpapi-codegen. Do not edit. import { Effect, Schema } from "effect" import { Sse } from "effect/unstable/encoding" import { HttpClientError } from "effect/unstable/http" diff --git a/packages/httpapi-codegen/test/generated/system.ts b/packages/httpapi-codegen/test/generated/system.ts index 4cd56d9c965..7b85ecd6011 100644 --- a/packages/httpapi-codegen/test/generated/system.ts +++ b/packages/httpapi-codegen/test/generated/system.ts @@ -1,4 +1,4 @@ -// Generated by @opencode-ai/httpapi-codegen. Do not edit. +// Generated by @opencode/httpapi-codegen. Do not edit. import { Effect, Schema } from "effect" import { Sse } from "effect/unstable/encoding" import { HttpClientError } from "effect/unstable/http" diff --git a/packages/latex/package.json b/packages/latex/package.json index f21ea473bba..c03db470846 100644 --- a/packages/latex/package.json +++ b/packages/latex/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/latex", + "name": "@opencode/latex", "version": "0.0.0", "private": true, "type": "module", @@ -13,7 +13,7 @@ "typecheck": "tsgo --noEmit" }, "dependencies": { - "@opencode-ai/plugin": "workspace:*", + "@opencode/plugin": "workspace:*", "@opentui/core": "catalog:", "string-width": "catalog:" }, diff --git a/packages/latex/src/plugin.ts b/packages/latex/src/plugin.ts index 39a648c04be..2a427297b24 100644 --- a/packages/latex/src/plugin.ts +++ b/packages/latex/src/plugin.ts @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { createLatexCodeBlockRenderer } from "./markdown" export default Plugin.define({ diff --git a/packages/merman/package.json b/packages/merman/package.json index 66877df294e..32779908950 100644 --- a/packages/merman/package.json +++ b/packages/merman/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/merman", + "name": "@opencode/merman", "version": "0.0.0", "private": true, "type": "module", @@ -15,7 +15,7 @@ "typecheck": "tsgo --noEmit" }, "dependencies": { - "@opencode-ai/plugin": "workspace:*", + "@opencode/plugin": "workspace:*", "@opentui/core": "catalog:", "entities": "7.0.1", "string-width": "catalog:" diff --git a/packages/merman/src/plugin.ts b/packages/merman/src/plugin.ts index 6c4d55ec1f9..6d955de4725 100644 --- a/packages/merman/src/plugin.ts +++ b/packages/merman/src/plugin.ts @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { createMermaidCodeBlockRenderer } from "./markdown.js" import { resolveOpenCodeDiagramPalette } from "./palette.js" diff --git a/packages/plugin-browser/package.json b/packages/plugin-browser/package.json index 268f09b9e88..ec449d63999 100644 --- a/packages/plugin-browser/package.json +++ b/packages/plugin-browser/package.json @@ -27,8 +27,8 @@ "test": "bun test" }, "dependencies": { - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/schema": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/schema": "workspace:*", "effect": "catalog:" }, "devDependencies": { diff --git a/packages/plugin-browser/script/publish.ts b/packages/plugin-browser/script/publish.ts index 41cbd570e4d..be0b257090f 100644 --- a/packages/plugin-browser/script/publish.ts +++ b/packages/plugin-browser/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/plugin-browser/src/connection.ts b/packages/plugin-browser/src/connection.ts index 6b5b4f82e34..5842e223450 100644 --- a/packages/plugin-browser/src/connection.ts +++ b/packages/plugin-browser/src/connection.ts @@ -1,9 +1,9 @@ export * as BrowserConnection from "./connection.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import type { RpcRegistration } from "@opencode-ai/plugin/effect/rpc" -import type { Session } from "@opencode-ai/schema/session" -import { Tool } from "@opencode-ai/schema/tool" +import type { Context } from "@opencode/plugin/effect/plugin" +import type { RpcRegistration } from "@opencode/plugin/effect/rpc" +import type { Session } from "@opencode/schema/session" +import { Tool } from "@opencode/schema/tool" import { Deferred, Effect, Schema, Stream } from "effect" import { Browser } from "./rpc.js" import { BrowserTunnel } from "./tunnel.js" diff --git a/packages/plugin-browser/src/files.ts b/packages/plugin-browser/src/files.ts index 01fe5e09aed..b8741c0c3d2 100644 --- a/packages/plugin-browser/src/files.ts +++ b/packages/plugin-browser/src/files.ts @@ -1,7 +1,7 @@ export * as BrowserFiles from "./files.js" import { Browser } from "./rpc.js" -import { Tool } from "@opencode-ai/schema/tool" +import { Tool } from "@opencode/schema/tool" import { Effect } from "effect" // Files cross machines as bytes. Only this endpoint interprets its local paths. diff --git a/packages/plugin-browser/src/index.ts b/packages/plugin-browser/src/index.ts index 00900b9cc7d..3ef7c6b8779 100644 --- a/packages/plugin-browser/src/index.ts +++ b/packages/plugin-browser/src/index.ts @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" import { BrowserConnection } from "./connection.js" import { BrowserTools } from "./tools.js" diff --git a/packages/plugin-browser/src/rpc.ts b/packages/plugin-browser/src/rpc.ts index 22dbe2449f0..1e44a86350c 100644 --- a/packages/plugin-browser/src/rpc.ts +++ b/packages/plugin-browser/src/rpc.ts @@ -1,9 +1,9 @@ export * as Browser from "./rpc.js" import { Schema } from "effect" -import { Rpc } from "@opencode-ai/schema/rpc" -import { Session } from "@opencode-ai/schema/session" -import { optional } from "@opencode-ai/schema/schema" +import { Rpc } from "@opencode/schema/rpc" +import { Session } from "@opencode/schema/session" +import { optional } from "@opencode/schema/schema" export const MAX_FILE_BYTES = 5 * 1024 * 1024 export const TUNNEL_CHUNK_BYTES = 64 * 1024 diff --git a/packages/plugin-browser/src/tools.ts b/packages/plugin-browser/src/tools.ts index e5cc986c7aa..3224876dd03 100644 --- a/packages/plugin-browser/src/tools.ts +++ b/packages/plugin-browser/src/tools.ts @@ -1,7 +1,7 @@ export * as BrowserTools from "./tools.js" -import type { Context } from "@opencode-ai/plugin/effect/plugin" -import { Tool } from "@opencode-ai/schema/tool" +import type { Context } from "@opencode/plugin/effect/plugin" +import { Tool } from "@opencode/schema/tool" import { Effect, Encoding, Result, Schema } from "effect" import type { BrowserConnection } from "./connection.js" import { BrowserFiles } from "./files.js" diff --git a/packages/plugin/AGENTS.md b/packages/plugin/AGENTS.md index 0d98cecc888..65623af766d 100644 --- a/packages/plugin/AGENTS.md +++ b/packages/plugin/AGENTS.md @@ -1,6 +1,6 @@ # Plugin Package Guide - The plugin package has two versions: Effect and Promise. -- In the Effect version, every domain must extend the corresponding Effect API client interface from `@opencode-ai/client/effect/api`. +- In the Effect version, every domain must extend the corresponding Effect API client interface from `@opencode/client/effect/api`. - Do not redefine functions that already exist on the Effect API client interface. - Plugin domains add only the additional functions that make sense in the plugin context. diff --git a/packages/plugin/package.json b/packages/plugin/package.json index c05b94fdf1d..f80ad6e81ec 100644 --- a/packages/plugin/package.json +++ b/packages/plugin/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/plugin", + "name": "@opencode/plugin", "version": "1.18.15", "type": "module", "license": "MIT", @@ -28,23 +28,23 @@ ], "dependencies": { "@ai-sdk/provider": "3.0.8", - "@opencode-ai/ai": "workspace:*", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/protocol": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/ai": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/protocol": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/util": "workspace:*", "@standard-schema/spec": "catalog:", "effect": "catalog:", "zod": "catalog:" }, "peerDependencies": { - "@opencode-ai/theme": "workspace:*", + "@opencode/theme": "workspace:*", "@opentui/core": ">=0.5.10", "@opentui/solid": ">=0.5.10", "solid-js": ">=1.9.0" }, "peerDependenciesMeta": { - "@opencode-ai/theme": { + "@opencode/theme": { "optional": true }, "@opentui/core": { @@ -58,7 +58,7 @@ } }, "devDependencies": { - "@opencode-ai/theme": "workspace:*", + "@opencode/theme": "workspace:*", "@opentui/core": "catalog:", "@opentui/solid": "catalog:", "@tsconfig/bun": "catalog:", diff --git a/packages/plugin/script/publish.ts b/packages/plugin/script/publish.ts index 73b3799b8ae..9613f179c77 100755 --- a/packages/plugin/script/publish.ts +++ b/packages/plugin/script/publish.ts @@ -1,5 +1,5 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { fileURLToPath } from "url" diff --git a/packages/plugin/src/README.md b/packages/plugin/src/README.md index df75ce7866c..284b2cb4347 100644 --- a/packages/plugin/src/README.md +++ b/packages/plugin/src/README.md @@ -1,6 +1,6 @@ # OpenCode V2 Promise Plugin API -The Promise plugin API at `@opencode-ai/plugin` is the async/await equivalent of `@opencode-ai/plugin/effect`. It grants plugins the same two in-process capabilities: +The Promise plugin API at `@opencode/plugin` is the async/await equivalent of `@opencode/plugin/effect`. It grants plugins the same two in-process capabilities: - `hook` installs behavior at an OpenCode extension point. - `reload` reruns every transform hook for a stateful domain. @@ -12,7 +12,7 @@ editor callbacks remain synchronous. ## Defining A Plugin ```ts -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "example", diff --git a/packages/plugin/src/effect/PLAN.md b/packages/plugin/src/effect/PLAN.md index bd9dfc2104d..30c27a84dad 100644 --- a/packages/plugin/src/effect/PLAN.md +++ b/packages/plugin/src/effect/PLAN.md @@ -7,8 +7,8 @@ This document describes the agreed target design for the V2 plugin system. It is ## Goals - Internal and external plugins use the same public plugin API. -- Effect plugins import `@opencode-ai/plugin/effect`, not `@opencode-ai/core`. -- Public domain values use generated `@opencode-ai/sdk` types. +- Effect plugins import `@opencode/plugin/effect`, not `@opencode/core`. +- Public domain values use generated `@opencode/sdk` types. - Core may retain branded IDs, decoded Effect schemas, and internal service types. - Plugins may register replayable domain transforms and runtime hooks imperatively during setup. - Registrations are scoped, independently disposable, ordered, and removable. @@ -424,7 +424,7 @@ The Effect implementation remains the canonical runtime. Promise and embedding w ### 1. Define Public Contracts -- Define `PluginHost` domain capabilities in `@opencode-ai/plugin/effect`. +- Define `PluginHost` domain capabilities in `@opencode/plugin/effect`. - Define SDK-typed editors for agent, catalog, command, integration, reference, skill, and tool. - Define typed runtime hook maps per domain. - Define `Registration`. diff --git a/packages/plugin/src/effect/README.md b/packages/plugin/src/effect/README.md index 33785038a92..4a678a03651 100644 --- a/packages/plugin/src/effect/README.md +++ b/packages/plugin/src/effect/README.md @@ -8,7 +8,7 @@ The Effect plugin API grants plugins two in-process capabilities: ## Defining A Plugin ```ts -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" export default Plugin.define({ diff --git a/packages/plugin/src/effect/agent.ts b/packages/plugin/src/effect/agent.ts index 6233434691b..3719bf17632 100644 --- a/packages/plugin/src/effect/agent.ts +++ b/packages/plugin/src/effect/agent.ts @@ -1,5 +1,5 @@ -import type { AgentApi } from "@opencode-ai/client/effect/api" -import type { Agent } from "@opencode-ai/schema/agent" +import type { AgentApi } from "@opencode/client/effect/api" +import type { Agent } from "@opencode/schema/agent" import type { Effect, Types } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/aisdk.ts b/packages/plugin/src/effect/aisdk.ts index 37d68179cd2..9516b306259 100644 --- a/packages/plugin/src/effect/aisdk.ts +++ b/packages/plugin/src/effect/aisdk.ts @@ -1,5 +1,5 @@ import type { LanguageModelV3 } from "@ai-sdk/provider" -import type { Model } from "@opencode-ai/schema/model" +import type { Model } from "@opencode/schema/model" import type { ModelHooks } from "./registration.js" export interface AISDKHooks { diff --git a/packages/plugin/src/effect/catalog.ts b/packages/plugin/src/effect/catalog.ts index 27e5e8163de..20f89e38091 100644 --- a/packages/plugin/src/effect/catalog.ts +++ b/packages/plugin/src/effect/catalog.ts @@ -1,6 +1,6 @@ -import type { CatalogApi } from "@opencode-ai/client/effect/api" -import { Model } from "@opencode-ai/schema/model" -import { Provider } from "@opencode-ai/schema/provider" +import type { CatalogApi } from "@opencode/client/effect/api" +import { Model } from "@opencode/schema/model" +import { Provider } from "@opencode/schema/provider" import type { Effect, Types } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/command.ts b/packages/plugin/src/effect/command.ts index 22bb3a86926..c8b10bb26e1 100644 --- a/packages/plugin/src/effect/command.ts +++ b/packages/plugin/src/effect/command.ts @@ -1,7 +1,7 @@ -import type { CommandApi } from "@opencode-ai/client/effect/api" -import type { PromptInput } from "@opencode-ai/schema/prompt-input" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" +import type { CommandApi } from "@opencode/client/effect/api" +import type { PromptInput } from "@opencode/schema/prompt-input" +import type { Session } from "@opencode/schema/session" +import type { SessionInbox } from "@opencode/schema/session-inbox" import type { Effect } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/event.ts b/packages/plugin/src/effect/event.ts index 283d4109f05..d4ab10c0f4b 100644 --- a/packages/plugin/src/effect/event.ts +++ b/packages/plugin/src/effect/event.ts @@ -1,3 +1,3 @@ -import type { EventApi } from "@opencode-ai/client/effect/api" +import type { EventApi } from "@opencode/client/effect/api" export interface EventDomain extends Pick, "subscribe"> {} diff --git a/packages/plugin/src/effect/index.ts b/packages/plugin/src/effect/index.ts index d0bf50fab14..9f4047f075d 100644 --- a/packages/plugin/src/effect/index.ts +++ b/packages/plugin/src/effect/index.ts @@ -1,19 +1,19 @@ export * as Plugin from "./plugin.js" export type { StorageEntry, StorageScanOptions, StorageScanResult } from "../storage.js" -export { Agent } from "@opencode-ai/schema/agent" -export { Command } from "@opencode-ai/schema/command" -export { Connection } from "@opencode-ai/schema/connection" -export { Credential } from "@opencode-ai/schema/credential" -export { Integration } from "@opencode-ai/schema/integration" -export { Location } from "@opencode-ai/schema/location" -export { Mcp } from "@opencode-ai/schema/mcp" -export { Model } from "@opencode-ai/schema/model" -export { PersistentPty } from "@opencode-ai/schema/persistent-pty" -export { Provider } from "@opencode-ai/schema/provider" -export { Reference } from "@opencode-ai/schema/reference" -export { Rpc } from "@opencode-ai/schema/rpc" -export { Skill } from "@opencode-ai/schema/skill" -export { Vcs } from "@opencode-ai/schema/vcs" -export { WebSearch } from "@opencode-ai/schema/websearch" -export { Worktree } from "@opencode-ai/schema/worktree" +export { Agent } from "@opencode/schema/agent" +export { Command } from "@opencode/schema/command" +export { Connection } from "@opencode/schema/connection" +export { Credential } from "@opencode/schema/credential" +export { Integration } from "@opencode/schema/integration" +export { Location } from "@opencode/schema/location" +export { Mcp } from "@opencode/schema/mcp" +export { Model } from "@opencode/schema/model" +export { PersistentPty } from "@opencode/schema/persistent-pty" +export { Provider } from "@opencode/schema/provider" +export { Reference } from "@opencode/schema/reference" +export { Rpc } from "@opencode/schema/rpc" +export { Skill } from "@opencode/schema/skill" +export { Vcs } from "@opencode/schema/vcs" +export { WebSearch } from "@opencode/schema/websearch" +export { Worktree } from "@opencode/schema/worktree" diff --git a/packages/plugin/src/effect/integration.ts b/packages/plugin/src/effect/integration.ts index 5c42d4068a6..1848d3a6e40 100644 --- a/packages/plugin/src/effect/integration.ts +++ b/packages/plugin/src/effect/integration.ts @@ -1,7 +1,7 @@ -import type { ConnectionInfo } from "@opencode-ai/client" -import type { IntegrationApi } from "@opencode-ai/client/effect/api" -import { Credential } from "@opencode-ai/schema/credential" -import { Form } from "@opencode-ai/schema/form" +import type { ConnectionInfo } from "@opencode/client" +import type { IntegrationApi } from "@opencode/client/effect/api" +import { Credential } from "@opencode/schema/credential" +import { Form } from "@opencode/schema/form" import type { Effect, Scope } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/mcp.ts b/packages/plugin/src/effect/mcp.ts index e614991139d..9e920682e61 100644 --- a/packages/plugin/src/effect/mcp.ts +++ b/packages/plugin/src/effect/mcp.ts @@ -1,5 +1,5 @@ -import type { McpApi } from "@opencode-ai/client/effect/api" -import type { Mcp } from "@opencode-ai/schema/mcp" +import type { McpApi } from "@opencode/client/effect/api" +import type { Mcp } from "@opencode/schema/mcp" import type { Effect, Types } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/permission.ts b/packages/plugin/src/effect/permission.ts index 01f72484c46..e97fbf3ebe5 100644 --- a/packages/plugin/src/effect/permission.ts +++ b/packages/plugin/src/effect/permission.ts @@ -1,7 +1,7 @@ -import type { PermissionApi } from "@opencode-ai/client/effect/api" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Permission } from "@opencode-ai/schema/permission" -import type { Session } from "@opencode-ai/schema/session" +import type { PermissionApi } from "@opencode/client/effect/api" +import type { Agent } from "@opencode/schema/agent" +import type { Permission } from "@opencode/schema/permission" +import type { Session } from "@opencode/schema/session" import type { Hooks } from "./registration.js" export interface PermissionEvaluation { diff --git a/packages/plugin/src/effect/plugin.ts b/packages/plugin/src/effect/plugin.ts index 4500ac13f36..5f4ce665399 100644 --- a/packages/plugin/src/effect/plugin.ts +++ b/packages/plugin/src/effect/plugin.ts @@ -1,5 +1,5 @@ -import type { ExperimentalApi, GenerateApi, PluginApi } from "@opencode-ai/client/effect/api" -import type { Location } from "@opencode-ai/schema/location" +import type { ExperimentalApi, GenerateApi, PluginApi } from "@opencode/client/effect/api" +import type { Location } from "@opencode/schema/location" import type { Effect, Scope } from "effect" import type { PluginOptions } from "../options.js" import type { App } from "../app.js" diff --git a/packages/plugin/src/effect/reference.ts b/packages/plugin/src/effect/reference.ts index bdb84f02a34..f714f8ac41b 100644 --- a/packages/plugin/src/effect/reference.ts +++ b/packages/plugin/src/effect/reference.ts @@ -1,5 +1,5 @@ -import type { ReferenceGitSource, ReferenceLocalSource } from "@opencode-ai/client" -import type { ReferenceApi } from "@opencode-ai/client/effect/api" +import type { ReferenceGitSource, ReferenceLocalSource } from "@opencode/client" +import type { ReferenceApi } from "@opencode/client/effect/api" import type { Effect } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/rpc.ts b/packages/plugin/src/effect/rpc.ts index 5378d1474cc..f4109c3e85d 100644 --- a/packages/plugin/src/effect/rpc.ts +++ b/packages/plugin/src/effect/rpc.ts @@ -1,6 +1,6 @@ -import type { RpcApi } from "@opencode-ai/client/effect/api" -export type { RpcClient } from "@opencode-ai/client/effect/api" -import type { Rpc } from "@opencode-ai/schema/rpc" +import type { RpcApi } from "@opencode/client/effect/api" +export type { RpcClient } from "@opencode/client/effect/api" +import type { Rpc } from "@opencode/schema/rpc" import type { Effect, Scope } from "effect" import type { Registration } from "./registration.js" diff --git a/packages/plugin/src/effect/session.ts b/packages/plugin/src/effect/session.ts index 19ee5a9f2b3..89cb42bc7c4 100644 --- a/packages/plugin/src/effect/session.ts +++ b/packages/plugin/src/effect/session.ts @@ -1,12 +1,12 @@ -import type { SessionApi } from "@opencode-ai/client/effect/api" -import type { GenerationOptionsFields, Message, SystemPart } from "@opencode-ai/ai" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Model } from "@opencode-ai/schema/model" -import type { PromptInput } from "@opencode-ai/schema/prompt-input" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" -import type { SessionError } from "@opencode-ai/schema/session-error" -import type { SessionMessage } from "@opencode-ai/schema/session-message" +import type { SessionApi } from "@opencode/client/effect/api" +import type { GenerationOptionsFields, Message, SystemPart } from "@opencode/ai" +import type { Agent } from "@opencode/schema/agent" +import type { Model } from "@opencode/schema/model" +import type { PromptInput } from "@opencode/schema/prompt-input" +import type { Session } from "@opencode/schema/session" +import type { SessionInbox } from "@opencode/schema/session-inbox" +import type { SessionError } from "@opencode/schema/session-error" +import type { SessionMessage } from "@opencode/schema/session-message" import type { JsonSchema, Types } from "effect" import type { ModelHooks } from "./registration.js" diff --git a/packages/plugin/src/effect/skill.ts b/packages/plugin/src/effect/skill.ts index 2008171812e..b86587dc261 100644 --- a/packages/plugin/src/effect/skill.ts +++ b/packages/plugin/src/effect/skill.ts @@ -1,5 +1,5 @@ -import type { SkillApi } from "@opencode-ai/client/effect/api" -import { Skill } from "@opencode-ai/schema/skill" +import type { SkillApi } from "@opencode/client/effect/api" +import { Skill } from "@opencode/schema/skill" import type { Effect, Types } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/tool.ts b/packages/plugin/src/effect/tool.ts index 56b8e30015a..1fd90a5113e 100644 --- a/packages/plugin/src/effect/tool.ts +++ b/packages/plugin/src/effect/tool.ts @@ -1,7 +1,7 @@ -import { Tool } from "@opencode-ai/schema/tool" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionMessage } from "@opencode-ai/schema/session-message" +import { Tool } from "@opencode/schema/tool" +import type { Agent } from "@opencode/schema/agent" +import type { Session } from "@opencode/schema/session" +import type { SessionMessage } from "@opencode/schema/session-message" import type { Effect, Types } from "effect" import type { Hooks, Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/vcs.ts b/packages/plugin/src/effect/vcs.ts index 20386cce8f6..36a2e2c5c93 100644 --- a/packages/plugin/src/effect/vcs.ts +++ b/packages/plugin/src/effect/vcs.ts @@ -1,6 +1,6 @@ -import type { VcsApi } from "@opencode-ai/client/effect/api" -import type { FileDiff } from "@opencode-ai/schema/file-diff" -import type { Vcs } from "@opencode-ai/schema/vcs" +import type { VcsApi } from "@opencode/client/effect/api" +import type { FileDiff } from "@opencode/schema/file-diff" +import type { Vcs } from "@opencode/schema/vcs" import type { Effect } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/websearch.ts b/packages/plugin/src/effect/websearch.ts index 9e3acbc8778..66caffd8115 100644 --- a/packages/plugin/src/effect/websearch.ts +++ b/packages/plugin/src/effect/websearch.ts @@ -1,5 +1,5 @@ -import type { WebSearch } from "@opencode-ai/schema/websearch" -import type { WebSearchApi } from "@opencode-ai/client/effect/api" +import type { WebSearch } from "@opencode/schema/websearch" +import type { WebSearchApi } from "@opencode/client/effect/api" import type { Effect } from "effect" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/effect/worktree.ts b/packages/plugin/src/effect/worktree.ts index 4b3dd8e358b..33cbe48c093 100644 --- a/packages/plugin/src/effect/worktree.ts +++ b/packages/plugin/src/effect/worktree.ts @@ -1,4 +1,4 @@ -import type { WorktreeApi } from "@opencode-ai/client/effect/api" +import type { WorktreeApi } from "@opencode/client/effect/api" import type { Effect } from "effect" import type { WorktreeCreateInput, WorktreeEntry, WorktreeRemoveInput, WorktreeResult } from "../worktree.js" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/host.ts b/packages/plugin/src/host.ts index 259ceddab0d..80a2b03972c 100644 --- a/packages/plugin/src/host.ts +++ b/packages/plugin/src/host.ts @@ -1,7 +1,7 @@ export * as Host from "./host.js" import path from "node:path" -import { importModule, resolveModule } from "@opencode-ai/util/runtime-import" +import { importModule, resolveModule } from "@opencode/util/runtime-import" export interface Target { readonly directory: string diff --git a/packages/plugin/src/promise/adapter.ts b/packages/plugin/src/promise/adapter.ts index ec5b6dc294d..8e09b61e1e8 100644 --- a/packages/plugin/src/promise/adapter.ts +++ b/packages/plugin/src/promise/adapter.ts @@ -1,6 +1,6 @@ -import { Tool } from "@opencode-ai/schema/tool" -import type { Rpc } from "@opencode-ai/schema/rpc" -import type { RpcCallOptions, RpcEventPayload } from "@opencode-ai/client/promise/api" +import { Tool } from "@opencode/schema/tool" +import type { Rpc } from "@opencode/schema/rpc" +import type { RpcCallOptions, RpcEventPayload } from "@opencode/client/promise/api" import { Effect, Schema, SchemaAST, Stream } from "effect" import type { Scope } from "effect" import { HttpApiEndpoint, HttpApiSchema } from "effect/unstable/httpapi" @@ -217,7 +217,7 @@ export function fromPromise(plugin: Plugin) { effect: (host) => Effect.gen(function* () { const [{ ClientApi }, { OpenCodeEvent }] = yield* Effect.promise(() => - Promise.all([import("@opencode-ai/protocol/client"), import("@opencode-ai/protocol/groups/event")]), + Promise.all([import("@opencode/protocol/client"), import("@opencode/protocol/groups/event")]), ) const AgentEndpoints = ClientApi.groups["server.agent"].endpoints const CommandEndpoints = ClientApi.groups["server.command"].endpoints diff --git a/packages/plugin/src/promise/agent.ts b/packages/plugin/src/promise/agent.ts index 228a6c7aa68..b6b8e3bfd9d 100644 --- a/packages/plugin/src/promise/agent.ts +++ b/packages/plugin/src/promise/agent.ts @@ -1,5 +1,5 @@ -import type { AgentApi } from "@opencode-ai/client/promise/api" -import type { Agent } from "@opencode-ai/schema/agent" +import type { AgentApi } from "@opencode/client/promise/api" +import type { Agent } from "@opencode/schema/agent" import type { Transform } from "./registration.js" import type { DeepMutable } from "./types.js" diff --git a/packages/plugin/src/promise/aisdk.ts b/packages/plugin/src/promise/aisdk.ts index 37d68179cd2..9516b306259 100644 --- a/packages/plugin/src/promise/aisdk.ts +++ b/packages/plugin/src/promise/aisdk.ts @@ -1,5 +1,5 @@ import type { LanguageModelV3 } from "@ai-sdk/provider" -import type { Model } from "@opencode-ai/schema/model" +import type { Model } from "@opencode/schema/model" import type { ModelHooks } from "./registration.js" export interface AISDKHooks { diff --git a/packages/plugin/src/promise/catalog.ts b/packages/plugin/src/promise/catalog.ts index 018ad992459..48bee160d0f 100644 --- a/packages/plugin/src/promise/catalog.ts +++ b/packages/plugin/src/promise/catalog.ts @@ -1,6 +1,6 @@ -import type { CatalogApi } from "@opencode-ai/client/promise/api" -import type { Model } from "@opencode-ai/schema/model" -import type { Provider } from "@opencode-ai/schema/provider" +import type { CatalogApi } from "@opencode/client/promise/api" +import type { Model } from "@opencode/schema/model" +import type { Provider } from "@opencode/schema/provider" import type { Transform } from "./registration.js" import type { DeepMutable } from "./types.js" diff --git a/packages/plugin/src/promise/command.ts b/packages/plugin/src/promise/command.ts index c51b0549d81..5a6231f89a4 100644 --- a/packages/plugin/src/promise/command.ts +++ b/packages/plugin/src/promise/command.ts @@ -1,7 +1,7 @@ -import type { CommandApi } from "@opencode-ai/client/promise/api" -import type { PromptInput } from "@opencode-ai/schema/prompt-input" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" +import type { CommandApi } from "@opencode/client/promise/api" +import type { PromptInput } from "@opencode/schema/prompt-input" +import type { Session } from "@opencode/schema/session" +import type { SessionInbox } from "@opencode/schema/session-inbox" import type { Transform } from "./registration.js" export interface CommandInvocation { diff --git a/packages/plugin/src/promise/event.ts b/packages/plugin/src/promise/event.ts index 344f5d6f30a..74ac6e5fde2 100644 --- a/packages/plugin/src/promise/event.ts +++ b/packages/plugin/src/promise/event.ts @@ -1,3 +1,3 @@ -import type { EventApi } from "@opencode-ai/client/promise/api" +import type { EventApi } from "@opencode/client/promise/api" export interface EventDomain extends Pick {} diff --git a/packages/plugin/src/promise/index.ts b/packages/plugin/src/promise/index.ts index b2e06aaf772..1a8b1bb1e4d 100644 --- a/packages/plugin/src/promise/index.ts +++ b/packages/plugin/src/promise/index.ts @@ -2,19 +2,19 @@ export type { PluginOptions } from "../options.js" export type { StorageEntry, StorageScanOptions, StorageScanResult } from "../storage.js" export * as Plugin from "./plugin.js" -export { Agent } from "@opencode-ai/schema/agent" -export { Command } from "@opencode-ai/schema/command" -export { Connection } from "@opencode-ai/schema/connection" -export { Credential } from "@opencode-ai/schema/credential" -export { Integration } from "@opencode-ai/schema/integration" -export { Location } from "@opencode-ai/schema/location" -export { Mcp } from "@opencode-ai/schema/mcp" -export { Model } from "@opencode-ai/schema/model" -export { PersistentPty } from "@opencode-ai/schema/persistent-pty" -export { Provider } from "@opencode-ai/schema/provider" -export { Reference } from "@opencode-ai/schema/reference" -export { Rpc } from "@opencode-ai/schema/rpc" -export { Skill } from "@opencode-ai/schema/skill" -export { Vcs } from "@opencode-ai/schema/vcs" -export { WebSearch } from "@opencode-ai/schema/websearch" -export { Worktree } from "@opencode-ai/schema/worktree" +export { Agent } from "@opencode/schema/agent" +export { Command } from "@opencode/schema/command" +export { Connection } from "@opencode/schema/connection" +export { Credential } from "@opencode/schema/credential" +export { Integration } from "@opencode/schema/integration" +export { Location } from "@opencode/schema/location" +export { Mcp } from "@opencode/schema/mcp" +export { Model } from "@opencode/schema/model" +export { PersistentPty } from "@opencode/schema/persistent-pty" +export { Provider } from "@opencode/schema/provider" +export { Reference } from "@opencode/schema/reference" +export { Rpc } from "@opencode/schema/rpc" +export { Skill } from "@opencode/schema/skill" +export { Vcs } from "@opencode/schema/vcs" +export { WebSearch } from "@opencode/schema/websearch" +export { Worktree } from "@opencode/schema/worktree" diff --git a/packages/plugin/src/promise/integration.ts b/packages/plugin/src/promise/integration.ts index 84f59501188..c8e488f6cd4 100644 --- a/packages/plugin/src/promise/integration.ts +++ b/packages/plugin/src/promise/integration.ts @@ -1,7 +1,7 @@ -import type { ConnectionInfo } from "@opencode-ai/client" -import type { IntegrationApi } from "@opencode-ai/client/promise/api" -import { Credential } from "@opencode-ai/schema/credential" -import { Form } from "@opencode-ai/schema/form" +import type { ConnectionInfo } from "@opencode/client" +import type { IntegrationApi } from "@opencode/client/promise/api" +import { Credential } from "@opencode/schema/credential" +import { Form } from "@opencode/schema/form" import type { Transform } from "./registration.js" type IntegrationRef = { id: string; name: string } diff --git a/packages/plugin/src/promise/mcp.ts b/packages/plugin/src/promise/mcp.ts index e2a0f488ed9..bffe93a89f8 100644 --- a/packages/plugin/src/promise/mcp.ts +++ b/packages/plugin/src/promise/mcp.ts @@ -1,5 +1,5 @@ -import type { McpApi } from "@opencode-ai/client/promise/api" -import type { Mcp } from "@opencode-ai/schema/mcp" +import type { McpApi } from "@opencode/client/promise/api" +import type { Mcp } from "@opencode/schema/mcp" import type { Transform } from "./registration.js" import type { DeepMutable } from "./types.js" diff --git a/packages/plugin/src/promise/permission.ts b/packages/plugin/src/promise/permission.ts index 8dcfdb1e779..1729cac29b5 100644 --- a/packages/plugin/src/promise/permission.ts +++ b/packages/plugin/src/promise/permission.ts @@ -1,7 +1,7 @@ -import type { PermissionApi } from "@opencode-ai/client/promise/api" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Permission } from "@opencode-ai/schema/permission" -import type { Session } from "@opencode-ai/schema/session" +import type { PermissionApi } from "@opencode/client/promise/api" +import type { Agent } from "@opencode/schema/agent" +import type { Permission } from "@opencode/schema/permission" +import type { Session } from "@opencode/schema/session" import type { Hooks } from "./registration.js" export interface PermissionEvaluation { diff --git a/packages/plugin/src/promise/plugin.ts b/packages/plugin/src/promise/plugin.ts index 423c6779e92..ec4d7331709 100644 --- a/packages/plugin/src/promise/plugin.ts +++ b/packages/plugin/src/promise/plugin.ts @@ -1,6 +1,6 @@ -import type { OpenCodeClient } from "@opencode-ai/client" -import type { GenerateApi, PluginApi } from "@opencode-ai/client/promise/api" -import type { Location } from "@opencode-ai/schema/location" +import type { OpenCodeClient } from "@opencode/client" +import type { GenerateApi, PluginApi } from "@opencode/client/promise/api" +import type { Location } from "@opencode/schema/location" import type { PluginOptions } from "../options.js" import type { App } from "../app.js" import type { AgentDomain } from "./agent.js" diff --git a/packages/plugin/src/promise/reference.ts b/packages/plugin/src/promise/reference.ts index fc07c308903..77d6bb07a38 100644 --- a/packages/plugin/src/promise/reference.ts +++ b/packages/plugin/src/promise/reference.ts @@ -1,5 +1,5 @@ -import type { ReferenceApi } from "@opencode-ai/client/promise/api" -import type { ReferenceGitSource, ReferenceLocalSource } from "@opencode-ai/client" +import type { ReferenceApi } from "@opencode/client/promise/api" +import type { ReferenceGitSource, ReferenceLocalSource } from "@opencode/client" import type { Transform } from "./registration.js" export interface ReferenceEditor { diff --git a/packages/plugin/src/promise/rpc.ts b/packages/plugin/src/promise/rpc.ts index 12075742953..45d3f984ad0 100644 --- a/packages/plugin/src/promise/rpc.ts +++ b/packages/plugin/src/promise/rpc.ts @@ -1,8 +1,8 @@ -import type { RpcApi, RpcCallOptions } from "@opencode-ai/client/promise/api" -import type { Rpc } from "@opencode-ai/schema/rpc" +import type { RpcApi, RpcCallOptions } from "@opencode/client/promise/api" +import type { Rpc } from "@opencode/schema/rpc" import type { Registration } from "./registration.js" -export type { RpcEventPayload } from "@opencode-ai/client/promise/api" +export type { RpcEventPayload } from "@opencode/client/promise/api" export interface RpcCallContext { readonly signal: AbortSignal diff --git a/packages/plugin/src/promise/session.ts b/packages/plugin/src/promise/session.ts index cf0f6832504..2a89c007d58 100644 --- a/packages/plugin/src/promise/session.ts +++ b/packages/plugin/src/promise/session.ts @@ -1,12 +1,12 @@ -import type { SessionApi } from "@opencode-ai/client/promise/api" -import type { GenerationOptionsFields, Message, SystemPart } from "@opencode-ai/ai" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Model } from "@opencode-ai/schema/model" -import type { PromptInput } from "@opencode-ai/schema/prompt-input" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" -import type { SessionError } from "@opencode-ai/schema/session-error" -import type { SessionMessage } from "@opencode-ai/schema/session-message" +import type { SessionApi } from "@opencode/client/promise/api" +import type { GenerationOptionsFields, Message, SystemPart } from "@opencode/ai" +import type { Agent } from "@opencode/schema/agent" +import type { Model } from "@opencode/schema/model" +import type { PromptInput } from "@opencode/schema/prompt-input" +import type { Session } from "@opencode/schema/session" +import type { SessionInbox } from "@opencode/schema/session-inbox" +import type { SessionError } from "@opencode/schema/session-error" +import type { SessionMessage } from "@opencode/schema/session-message" import type { JsonSchema, Types } from "effect" import type { ModelHooks } from "./registration.js" diff --git a/packages/plugin/src/promise/skill.ts b/packages/plugin/src/promise/skill.ts index 61b1a068598..a0733f86a31 100644 --- a/packages/plugin/src/promise/skill.ts +++ b/packages/plugin/src/promise/skill.ts @@ -1,5 +1,5 @@ -import type { SkillApi } from "@opencode-ai/client/promise/api" -import type { Skill } from "@opencode-ai/schema/skill" +import type { SkillApi } from "@opencode/client/promise/api" +import type { Skill } from "@opencode/schema/skill" import type { Transform } from "./registration.js" import type { DeepMutable } from "./types.js" diff --git a/packages/plugin/src/promise/tool.ts b/packages/plugin/src/promise/tool.ts index 35d823107fd..729cb7e5493 100644 --- a/packages/plugin/src/promise/tool.ts +++ b/packages/plugin/src/promise/tool.ts @@ -1,10 +1,10 @@ -export { CallID, Error } from "@opencode-ai/schema/tool" -export type { Metadata, Options, Result } from "@opencode-ai/schema/tool" +export { CallID, Error } from "@opencode/schema/tool" +export type { Metadata, Options, Result } from "@opencode/schema/tool" -import { Tool } from "@opencode-ai/schema/tool" -import type { Agent } from "@opencode-ai/schema/agent" -import type { Session } from "@opencode-ai/schema/session" -import type { SessionMessage } from "@opencode-ai/schema/session-message" +import { Tool } from "@opencode/schema/tool" +import type { Agent } from "@opencode/schema/agent" +import type { Session } from "@opencode/schema/session" +import type { SessionMessage } from "@opencode/schema/session-message" import type { Types } from "effect" import type { Hooks, Transform } from "./registration.js" diff --git a/packages/plugin/src/promise/vcs.ts b/packages/plugin/src/promise/vcs.ts index 9d32a826ce4..5792d665bcd 100644 --- a/packages/plugin/src/promise/vcs.ts +++ b/packages/plugin/src/promise/vcs.ts @@ -1,6 +1,6 @@ -import type { VcsApi } from "@opencode-ai/client/promise/api" -import type { FileDiff } from "@opencode-ai/schema/file-diff" -import type { Vcs } from "@opencode-ai/schema/vcs" +import type { VcsApi } from "@opencode/client/promise/api" +import type { FileDiff } from "@opencode/schema/file-diff" +import type { Vcs } from "@opencode/schema/vcs" import type { Transform } from "./registration.js" export interface VcsScope { diff --git a/packages/plugin/src/promise/websearch.ts b/packages/plugin/src/promise/websearch.ts index 7916414e8fd..516fa4f508f 100644 --- a/packages/plugin/src/promise/websearch.ts +++ b/packages/plugin/src/promise/websearch.ts @@ -1,5 +1,5 @@ -import type { WebSearch } from "@opencode-ai/schema/websearch" -import type { WebSearchApi } from "@opencode-ai/client/promise/api" +import type { WebSearch } from "@opencode/schema/websearch" +import type { WebSearchApi } from "@opencode/client/promise/api" import type { Transform } from "./registration.js" export interface WebSearchDefinition { diff --git a/packages/plugin/src/promise/worktree.ts b/packages/plugin/src/promise/worktree.ts index b71077fc59b..1d083ed97f1 100644 --- a/packages/plugin/src/promise/worktree.ts +++ b/packages/plugin/src/promise/worktree.ts @@ -1,4 +1,4 @@ -import type { WorktreeApi } from "@opencode-ai/client/promise/api" +import type { WorktreeApi } from "@opencode/client/promise/api" import type { WorktreeCreateInput, WorktreeEntry, WorktreeRemoveInput, WorktreeResult } from "../worktree.js" import type { Transform } from "./registration.js" diff --git a/packages/plugin/src/rpc.ts b/packages/plugin/src/rpc.ts index 5b5665e4243..f383b5e9294 100644 --- a/packages/plugin/src/rpc.ts +++ b/packages/plugin/src/rpc.ts @@ -1 +1 @@ -export { Rpc } from "@opencode-ai/schema/rpc" +export { Rpc } from "@opencode/schema/rpc" diff --git a/packages/plugin/src/source.ts b/packages/plugin/src/source.ts index 1c941e4bb8b..4eb82892a74 100644 --- a/packages/plugin/src/source.ts +++ b/packages/plugin/src/source.ts @@ -1,7 +1,7 @@ import { readFileSync, readdirSync } from "node:fs" import { fileURLToPath, pathToFileURL } from "node:url" import path from "node:path" -import { Hash } from "@opencode-ai/util/hash" +import { Hash } from "@opencode/util/hash" // Keep source fingerprints and import attempts together. Filesystem events // should reload changed local graphs, not repeat unchanged evaluations. diff --git a/packages/plugin/src/tui/context.ts b/packages/plugin/src/tui/context.ts index 16066dbbe4b..365a07d7f28 100644 --- a/packages/plugin/src/tui/context.ts +++ b/packages/plugin/src/tui/context.ts @@ -22,8 +22,8 @@ import type { ShellInfo, SkillInfo, VcsInfo, -} from "@opencode-ai/client" -import type { ResolvedTheme } from "@opencode-ai/theme/tui" +} from "@opencode/client" +import type { ResolvedTheme } from "@opencode/theme/tui" import type { CliRenderer, KeyEvent, MarkdownCodeBlockRenderer, Renderable } from "@opentui/core" import type { JSX } from "@opentui/solid" import type { Store } from "solid-js/store" diff --git a/packages/posts/package.json b/packages/posts/package.json index 1a3ec752673..bdb245501bc 100644 --- a/packages/posts/package.json +++ b/packages/posts/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/posts", + "name": "@opencode/posts", "private": true, "type": "module", "scripts": { diff --git a/packages/protocol/package.json b/packages/protocol/package.json index 11b6ecd9393..faa62805beb 100644 --- a/packages/protocol/package.json +++ b/packages/protocol/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/protocol", + "name": "@opencode/protocol", "version": "1.17.11", "type": "module", "license": "MIT", @@ -26,7 +26,7 @@ "typecheck": "tsgo --noEmit" }, "dependencies": { - "@opencode-ai/schema": "workspace:*", + "@opencode/schema": "workspace:*", "effect": "catalog:" }, "devDependencies": { diff --git a/packages/protocol/script/publish.ts b/packages/protocol/script/publish.ts index 8e37674b644..30538cbc1cb 100644 --- a/packages/protocol/script/publish.ts +++ b/packages/protocol/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/protocol/src/api.ts b/packages/protocol/src/api.ts index 4f4c9161ff3..00473c6d0cf 100644 --- a/packages/protocol/src/api.ts +++ b/packages/protocol/src/api.ts @@ -13,7 +13,7 @@ import { CommandGroup } from "./groups/command.js" import { SkillGroup } from "./groups/skill.js" import { RpcGroup } from "./groups/rpc.js" import { EventGroup, makeEventGroup } from "./groups/event.js" -import type { Definition } from "@opencode-ai/schema/event" +import type { Definition } from "@opencode/schema/event" import { AgentGroup } from "./groups/agent.js" import { PluginGroup } from "./groups/plugin.js" import { HealthGroup } from "./groups/health.js" diff --git a/packages/protocol/src/client.ts b/packages/protocol/src/client.ts index 0417f872a53..9c940d6b8d7 100644 --- a/packages/protocol/src/client.ts +++ b/packages/protocol/src/client.ts @@ -6,11 +6,11 @@ import { HttpApiMiddleware } from "effect/unstable/httpapi" import type { EventGroup } from "./groups/event.js" class LocationMiddleware extends HttpApiMiddleware.Service()( - "@opencode-ai/client/LocationMiddleware", + "@opencode/client/LocationMiddleware", ) {} class SessionLocationMiddleware extends HttpApiMiddleware.Service()( - "@opencode-ai/client/SessionLocationMiddleware", + "@opencode/client/SessionLocationMiddleware", { error: [InvalidRequestError, SessionNotFoundError] }, ) {} diff --git a/packages/protocol/src/errors.ts b/packages/protocol/src/errors.ts index 54f8b396638..ae68f38577d 100644 --- a/packages/protocol/src/errors.ts +++ b/packages/protocol/src/errors.ts @@ -1,5 +1,5 @@ import { Schema } from "effect" -import { Skill } from "@opencode-ai/schema/skill" +import { Skill } from "@opencode/schema/skill" export class InvalidRequestError extends Schema.TaggedError()( "InvalidRequestError", diff --git a/packages/protocol/src/groups/agent.ts b/packages/protocol/src/groups/agent.ts index cdfaaf5a72f..8e6cba69810 100644 --- a/packages/protocol/src/groups/agent.ts +++ b/packages/protocol/src/groups/agent.ts @@ -1,5 +1,5 @@ -import { Agent } from "@opencode-ai/schema/agent" -import { Location } from "@opencode-ai/schema/location" +import { Agent } from "@opencode/schema/agent" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/command.ts b/packages/protocol/src/groups/command.ts index cc27e0f12ec..937c30f1c3f 100644 --- a/packages/protocol/src/groups/command.ts +++ b/packages/protocol/src/groups/command.ts @@ -1,5 +1,5 @@ -import { Command } from "@opencode-ai/schema/command" -import { Location } from "@opencode-ai/schema/location" +import { Command } from "@opencode/schema/command" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/config.ts b/packages/protocol/src/groups/config.ts index b078ad9042e..15b65298daf 100644 --- a/packages/protocol/src/groups/config.ts +++ b/packages/protocol/src/groups/config.ts @@ -1,4 +1,4 @@ -import { Config } from "@opencode-ai/schema/config" +import { Config } from "@opencode/schema/config" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/credential.ts b/packages/protocol/src/groups/credential.ts index 92961eb0488..1dfc76142e2 100644 --- a/packages/protocol/src/groups/credential.ts +++ b/packages/protocol/src/groups/credential.ts @@ -1,4 +1,4 @@ -import { Credential } from "@opencode-ai/schema/credential" +import { Credential } from "@opencode/schema/credential" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/debug.ts b/packages/protocol/src/groups/debug.ts index fd7cd9def51..32014a210dd 100644 --- a/packages/protocol/src/groups/debug.ts +++ b/packages/protocol/src/groups/debug.ts @@ -1,4 +1,4 @@ -import { Location } from "@opencode-ai/schema/location" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/event.ts b/packages/protocol/src/groups/event.ts index 6fbc12ba050..38133ecdd8f 100644 --- a/packages/protocol/src/groups/event.ts +++ b/packages/protocol/src/groups/event.ts @@ -1,7 +1,7 @@ -import { Event } from "@opencode-ai/schema/event" -import { EventManifest } from "@opencode-ai/schema/event-manifest" -import { Location } from "@opencode-ai/schema/location" -import type { Definition } from "@opencode-ai/schema/event" +import { Event } from "@opencode/schema/event" +import { EventManifest } from "@opencode/schema/event-manifest" +import { Location } from "@opencode/schema/location" +import type { Definition } from "@opencode/schema/event" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" diff --git a/packages/protocol/src/groups/form.ts b/packages/protocol/src/groups/form.ts index 198b5f06fc3..59e36656fbf 100644 --- a/packages/protocol/src/groups/form.ts +++ b/packages/protocol/src/groups/form.ts @@ -1,5 +1,5 @@ -import { Form } from "@opencode-ai/schema/form" -import { Location } from "@opencode-ai/schema/location" +import { Form } from "@opencode/schema/form" +import { Location } from "@opencode/schema/location" import { Context, Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiMiddleware, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { diff --git a/packages/protocol/src/groups/fs.ts b/packages/protocol/src/groups/fs.ts index 47812af8ed0..593406a0abd 100644 --- a/packages/protocol/src/groups/fs.ts +++ b/packages/protocol/src/groups/fs.ts @@ -1,6 +1,6 @@ -import { FileSystem } from "@opencode-ai/schema/filesystem" -import { Location } from "@opencode-ai/schema/location" -import { PositiveInt } from "@opencode-ai/schema/schema" +import { FileSystem } from "@opencode/schema/filesystem" +import { Location } from "@opencode/schema/location" +import { PositiveInt } from "@opencode/schema/schema" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/generate.ts b/packages/protocol/src/groups/generate.ts index e4280d81076..16187c9c4a9 100644 --- a/packages/protocol/src/groups/generate.ts +++ b/packages/protocol/src/groups/generate.ts @@ -1,4 +1,4 @@ -import { Model } from "@opencode-ai/schema/model" +import { Model } from "@opencode/schema/model" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { InvalidRequestError, ServiceUnavailableError } from "../errors.js" diff --git a/packages/protocol/src/groups/integration.ts b/packages/protocol/src/groups/integration.ts index 2a40425dc88..f03e3ba5619 100644 --- a/packages/protocol/src/groups/integration.ts +++ b/packages/protocol/src/groups/integration.ts @@ -1,6 +1,6 @@ -import { Integration } from "@opencode-ai/schema/integration" -import { Location } from "@opencode-ai/schema/location" -import { Form } from "@opencode-ai/schema/form" +import { Integration } from "@opencode/schema/integration" +import { Location } from "@opencode/schema/location" +import { Form } from "@opencode/schema/form" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { InvalidRequestError } from "../errors.js" diff --git a/packages/protocol/src/groups/location.ts b/packages/protocol/src/groups/location.ts index 4723b8a46a9..1de8fb671ef 100644 --- a/packages/protocol/src/groups/location.ts +++ b/packages/protocol/src/groups/location.ts @@ -1,4 +1,4 @@ -import { Location } from "@opencode-ai/schema/location" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" diff --git a/packages/protocol/src/groups/mcp.ts b/packages/protocol/src/groups/mcp.ts index e7ad15a04d9..fe3252f748c 100644 --- a/packages/protocol/src/groups/mcp.ts +++ b/packages/protocol/src/groups/mcp.ts @@ -1,5 +1,5 @@ -import { Mcp } from "@opencode-ai/schema/mcp" -import { Location } from "@opencode-ai/schema/location" +import { Mcp } from "@opencode/schema/mcp" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { McpServerNotFoundError } from "../errors.js" diff --git a/packages/protocol/src/groups/message.ts b/packages/protocol/src/groups/message.ts index 5b47146316d..559961e710f 100644 --- a/packages/protocol/src/groups/message.ts +++ b/packages/protocol/src/groups/message.ts @@ -1,5 +1,5 @@ -import { Session } from "@opencode-ai/schema/session" -import { SessionMessage } from "@opencode-ai/schema/session-message" +import { Session } from "@opencode/schema/session" +import { SessionMessage } from "@opencode/schema/session-message" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { InvalidCursorError, SessionNotFoundError, UnknownError } from "../errors.js" diff --git a/packages/protocol/src/groups/model.ts b/packages/protocol/src/groups/model.ts index c3f6828770e..936b2895089 100644 --- a/packages/protocol/src/groups/model.ts +++ b/packages/protocol/src/groups/model.ts @@ -1,5 +1,5 @@ -import { Model } from "@opencode-ai/schema/model" -import { Location } from "@opencode-ai/schema/location" +import { Model } from "@opencode/schema/model" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { ServiceUnavailableError } from "../errors.js" diff --git a/packages/protocol/src/groups/permission.ts b/packages/protocol/src/groups/permission.ts index 6fdef8405fd..64cf8a81898 100644 --- a/packages/protocol/src/groups/permission.ts +++ b/packages/protocol/src/groups/permission.ts @@ -1,9 +1,9 @@ -import { Agent } from "@opencode-ai/schema/agent" -import { Location } from "@opencode-ai/schema/location" -import { Permission } from "@opencode-ai/schema/permission" -import { PermissionSaved } from "@opencode-ai/schema/permission-saved" -import { Project } from "@opencode-ai/schema/project" -import { Session } from "@opencode-ai/schema/session" +import { Agent } from "@opencode/schema/agent" +import { Location } from "@opencode/schema/location" +import { Permission } from "@opencode/schema/permission" +import { PermissionSaved } from "@opencode/schema/permission-saved" +import { Project } from "@opencode/schema/project" +import { Session } from "@opencode/schema/session" import { Context, Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiMiddleware, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { PermissionNotFoundError, SessionNotFoundError } from "../errors.js" diff --git a/packages/protocol/src/groups/persistent-pty.ts b/packages/protocol/src/groups/persistent-pty.ts index f14111d4cb9..4ea83c7e7df 100644 --- a/packages/protocol/src/groups/persistent-pty.ts +++ b/packages/protocol/src/groups/persistent-pty.ts @@ -1,7 +1,7 @@ -import { PersistentPty } from "@opencode-ai/schema/persistent-pty" -import { Pty } from "@opencode-ai/schema/pty" -import { PtyTicket } from "@opencode-ai/schema/pty-ticket" -import { Session } from "@opencode-ai/schema/session" +import { PersistentPty } from "@opencode/schema/persistent-pty" +import { Pty } from "@opencode/schema/pty" +import { PtyTicket } from "@opencode/schema/pty-ticket" +import { Session } from "@opencode/schema/session" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { ForbiddenError, InvalidRequestError, PtyNotFoundError, ServiceUnavailableError } from "../errors.js" diff --git a/packages/protocol/src/groups/plugin.ts b/packages/protocol/src/groups/plugin.ts index 0ff90d1cc5c..868b5b702da 100644 --- a/packages/protocol/src/groups/plugin.ts +++ b/packages/protocol/src/groups/plugin.ts @@ -1,5 +1,5 @@ -import { Location } from "@opencode-ai/schema/location" -import { Plugin } from "@opencode-ai/schema/plugin" +import { Location } from "@opencode/schema/location" +import { Plugin } from "@opencode/schema/plugin" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { InvalidRequestError, ServiceUnavailableError } from "../errors.js" diff --git a/packages/protocol/src/groups/project.ts b/packages/protocol/src/groups/project.ts index 80dbffb8d17..52a83e7ed52 100644 --- a/packages/protocol/src/groups/project.ts +++ b/packages/protocol/src/groups/project.ts @@ -1,4 +1,4 @@ -import { Project } from "@opencode-ai/schema/project" +import { Project } from "@opencode/schema/project" import { Schema, Struct } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/provider.ts b/packages/protocol/src/groups/provider.ts index 25854aab6b6..41de1d02615 100644 --- a/packages/protocol/src/groups/provider.ts +++ b/packages/protocol/src/groups/provider.ts @@ -1,5 +1,5 @@ -import { Provider } from "@opencode-ai/schema/provider" -import { Location } from "@opencode-ai/schema/location" +import { Provider } from "@opencode/schema/provider" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { ProviderNotFoundError, ServiceUnavailableError } from "../errors.js" diff --git a/packages/protocol/src/groups/pty.ts b/packages/protocol/src/groups/pty.ts index 35db87dddfc..69bec804097 100644 --- a/packages/protocol/src/groups/pty.ts +++ b/packages/protocol/src/groups/pty.ts @@ -1,6 +1,6 @@ -import { Pty } from "@opencode-ai/schema/pty" -import { PtyTicket } from "@opencode-ai/schema/pty-ticket" -import { Location } from "@opencode-ai/schema/location" +import { Pty } from "@opencode/schema/pty" +import { PtyTicket } from "@opencode/schema/pty-ticket" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { ForbiddenError, PtyNotFoundError } from "../errors.js" diff --git a/packages/protocol/src/groups/reference.ts b/packages/protocol/src/groups/reference.ts index 0302f434b90..19e3d07afc4 100644 --- a/packages/protocol/src/groups/reference.ts +++ b/packages/protocol/src/groups/reference.ts @@ -1,5 +1,5 @@ -import { Location } from "@opencode-ai/schema/location" -import { Reference } from "@opencode-ai/schema/reference" +import { Location } from "@opencode/schema/location" +import { Reference } from "@opencode/schema/reference" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/rpc.ts b/packages/protocol/src/groups/rpc.ts index e291dce94a5..a58d22ad207 100644 --- a/packages/protocol/src/groups/rpc.ts +++ b/packages/protocol/src/groups/rpc.ts @@ -1,4 +1,4 @@ -import { optional } from "@opencode-ai/schema/schema" +import { optional } from "@opencode/schema/schema" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { RpcError, RpcInternalError } from "../errors.js" diff --git a/packages/protocol/src/groups/session.ts b/packages/protocol/src/groups/session.ts index b42d13b0e8f..ffac096dd32 100644 --- a/packages/protocol/src/groups/session.ts +++ b/packages/protocol/src/groups/session.ts @@ -1,14 +1,14 @@ -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { SessionTransfer } from "@opencode-ai/schema/session-transfer" -import { SessionInbox } from "@opencode-ai/schema/session-inbox" -import { PromptInput } from "@opencode-ai/schema/prompt-input" -import { Session } from "@opencode-ai/schema/session" -import { SessionStats } from "@opencode-ai/schema/session-stats" -import { InstructionEntry } from "@opencode-ai/schema/instruction-entry" -import { Project } from "@opencode-ai/schema/project" -import { AbsolutePath, NonNegativeInt, PositiveInt, RelativePath, statics } from "@opencode-ai/schema/schema" -import { Event } from "@opencode-ai/schema/event" -import { Workspace } from "@opencode-ai/schema/workspace" +import { SessionMessage } from "@opencode/schema/session-message" +import { SessionTransfer } from "@opencode/schema/session-transfer" +import { SessionInbox } from "@opencode/schema/session-inbox" +import { PromptInput } from "@opencode/schema/prompt-input" +import { Session } from "@opencode/schema/session" +import { SessionStats } from "@opencode/schema/session-stats" +import { InstructionEntry } from "@opencode/schema/instruction-entry" +import { Project } from "@opencode/schema/project" +import { AbsolutePath, NonNegativeInt, PositiveInt, RelativePath, statics } from "@opencode/schema/schema" +import { Event } from "@opencode/schema/event" +import { Workspace } from "@opencode/schema/workspace" import { Context, Effect, Encoding, Result, Schema, SchemaGetter, Struct } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiMiddleware, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { @@ -24,12 +24,12 @@ import { SkillNotFoundError, UnknownError, } from "../errors.js" -import { Agent } from "@opencode-ai/schema/agent" -import { Skill } from "@opencode-ai/schema/skill" -import { Model } from "@opencode-ai/schema/model" -import { Location } from "@opencode-ai/schema/location" -import { SessionEvent } from "@opencode-ai/schema/session-event" -import { EventLog } from "@opencode-ai/schema/event-log" +import { Agent } from "@opencode/schema/agent" +import { Skill } from "@opencode/schema/skill" +import { Model } from "@opencode/schema/model" +import { Location } from "@opencode/schema/location" +import { SessionEvent } from "@opencode/schema/session-event" +import { EventLog } from "@opencode/schema/event-log" const ParentIDFilter = Schema.Union([ Session.ID, diff --git a/packages/protocol/src/groups/shell.ts b/packages/protocol/src/groups/shell.ts index 0b4cc081f69..3414fad4799 100644 --- a/packages/protocol/src/groups/shell.ts +++ b/packages/protocol/src/groups/shell.ts @@ -1,6 +1,6 @@ -import { Shell } from "@opencode-ai/schema/shell" -import { Location } from "@opencode-ai/schema/location" -import { NonNegativeInt } from "@opencode-ai/schema/schema" +import { Shell } from "@opencode/schema/shell" +import { Location } from "@opencode/schema/location" +import { NonNegativeInt } from "@opencode/schema/schema" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { ShellNotFoundError } from "../errors.js" diff --git a/packages/protocol/src/groups/skill.ts b/packages/protocol/src/groups/skill.ts index 9d4e372633d..d9bc36fecfc 100644 --- a/packages/protocol/src/groups/skill.ts +++ b/packages/protocol/src/groups/skill.ts @@ -1,5 +1,5 @@ -import { Skill } from "@opencode-ai/schema/skill" -import { Location } from "@opencode-ai/schema/location" +import { Skill } from "@opencode/schema/skill" +import { Location } from "@opencode/schema/location" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/vcs.ts b/packages/protocol/src/groups/vcs.ts index 3d9221c178e..f6674970c74 100644 --- a/packages/protocol/src/groups/vcs.ts +++ b/packages/protocol/src/groups/vcs.ts @@ -1,7 +1,7 @@ -import { FileDiff } from "@opencode-ai/schema/file-diff" -import { Location } from "@opencode-ai/schema/location" -import { NonNegativeInt, PositiveInt, optional } from "@opencode-ai/schema/schema" -import { Vcs } from "@opencode-ai/schema/vcs" +import { FileDiff } from "@opencode/schema/file-diff" +import { Location } from "@opencode/schema/location" +import { NonNegativeInt, PositiveInt, optional } from "@opencode/schema/schema" +import { Vcs } from "@opencode/schema/vcs" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/src/groups/websearch.ts b/packages/protocol/src/groups/websearch.ts index 0ebf5674df1..7861e03dbce 100644 --- a/packages/protocol/src/groups/websearch.ts +++ b/packages/protocol/src/groups/websearch.ts @@ -1,5 +1,5 @@ -import { Location } from "@opencode-ai/schema/location" -import { WebSearch } from "@opencode-ai/schema/websearch" +import { Location } from "@opencode/schema/location" +import { WebSearch } from "@opencode/schema/websearch" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { InvalidRequestError, ServiceUnavailableError } from "../errors.js" diff --git a/packages/protocol/src/groups/workspace.ts b/packages/protocol/src/groups/workspace.ts index 2c1950553ca..1f962e1fa1f 100644 --- a/packages/protocol/src/groups/workspace.ts +++ b/packages/protocol/src/groups/workspace.ts @@ -1,4 +1,4 @@ -import { Workspace } from "@opencode-ai/schema/workspace" +import { Workspace } from "@opencode/schema/workspace" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi" import { ConflictError, ProviderNotFoundError, UnknownError } from "../errors.js" diff --git a/packages/protocol/src/groups/worktree.ts b/packages/protocol/src/groups/worktree.ts index 977b36fc69a..7cec0a867fb 100644 --- a/packages/protocol/src/groups/worktree.ts +++ b/packages/protocol/src/groups/worktree.ts @@ -1,4 +1,4 @@ -import { Worktree } from "@opencode-ai/schema/worktree" +import { Worktree } from "@opencode/schema/worktree" import { Schema } from "effect" import { HttpApiEndpoint, HttpApiGroup, HttpApiSchema, OpenApi } from "effect/unstable/httpapi" import { LocationQuery, locationQueryOpenApi } from "./location.js" diff --git a/packages/protocol/test/session-cursor.test.ts b/packages/protocol/test/session-cursor.test.ts index 86c78d9503a..63e4acee30d 100644 --- a/packages/protocol/test/session-cursor.test.ts +++ b/packages/protocol/test/session-cursor.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" import { SessionsCursor } from "../src/groups/session.js" -import { Session } from "@opencode-ai/schema/session" +import { Session } from "@opencode/schema/session" describe("SessionsCursor", () => { test("round trips without Node globals", async () => { diff --git a/packages/schema/AGENTS.md b/packages/schema/AGENTS.md index 8ef3387d4c3..3b4c6a818af 100644 --- a/packages/schema/AGENTS.md +++ b/packages/schema/AGENTS.md @@ -1,10 +1,10 @@ # Schema Package Guide -`@opencode-ai/schema` owns browser-safe wire and storage contracts shared by protocol, server, core, and generated SDKs. Keep runtime behavior, service layers, side effects, and host-local implementation details in the domain package that owns them. +`@opencode/schema` owns browser-safe wire and storage contracts shared by protocol, server, core, and generated SDKs. Keep runtime behavior, service layers, side effects, and host-local implementation details in the domain package that owns them. ## Package Boundary -- Preserve the dependency direction: `@opencode-ai/schema <- @opencode-ai/protocol <- @opencode-ai/server`. +- Preserve the dependency direction: `@opencode/schema <- @opencode/protocol <- @opencode/server`. - Schema values should be serializable contract definitions, not service implementations or runtime registries. - A domain may keep a minimal public wire contract here when SDK generation needs it, but do not move the broader runtime model into Schema just because an event is public. `plugin.updated` is the current example: Schema may own the minimum browser-safe event payload, while plugin runtime behavior stays outside Schema. - The root barrel exports canonical current domain contracts. Specialized event modules, manifests, infrastructure modules, and V1 contracts use direct entrypoints instead of becoming first-class root exports. @@ -16,7 +16,7 @@ - Do not preserve `V2` as the permanent name for the replacement architecture. Remove `V2` from current namespaces, brands, and identifiers as the contracts are normalized. - Retained V1 contracts live under `src/v1/`. New/current code must not depend on that subtree. - V1 coexistence is temporary. Keep compatibility entrypoints only where migration requires them, and delete the V1 subtree when the legacy runtime is retired. -- `@opencode-ai/protocol` and `@opencode-ai/sdk` are current `/api/...` surfaces. +- `@opencode/protocol` and `@opencode/sdk` are current `/api/...` surfaces. ## Events @@ -37,7 +37,7 @@ ## Public Re-exports - Public leaf packages re-export the canonical domain namespaces used by their APIs so consumers install and version one package. Keep the list curated by public API reachability rather than mirroring the Schema root. -- Re-export directly from `@opencode-ai/schema/` and preserve the exact canonical values and types. Do not wrap schemas, duplicate definitions, or route exports through another facade package. +- Re-export directly from `@opencode/schema/` and preserve the exact canonical values and types. Do not wrap schemas, duplicate definitions, or route exports through another facade package. - Internal packages import contracts directly from their canonical Schema owner. Import a Core domain facade only when runtime behavior from that facade is required. - Resolve name collisions by retaining the domain namespace and qualifying its members, such as `Session.Info` and `Agent.Info`. Do not introduce aliases such as `SessionSchema`, `AgentSchema`, or `ModelSchema`. diff --git a/packages/schema/package.json b/packages/schema/package.json index 04551ef505f..1b062721e5d 100644 --- a/packages/schema/package.json +++ b/packages/schema/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/schema", + "name": "@opencode/schema", "version": "1.17.11", "type": "module", "license": "MIT", diff --git a/packages/schema/script/publish.ts b/packages/schema/script/publish.ts index 8e37674b644..30538cbc1cb 100644 --- a/packages/schema/script/publish.ts +++ b/packages/schema/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/script/package.json b/packages/script/package.json index be46b963c0f..12abf3847ac 100644 --- a/packages/script/package.json +++ b/packages/script/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package", - "name": "@opencode-ai/script", + "name": "@opencode/script", "type": "module", "license": "MIT", "dependencies": { diff --git a/packages/script/src/index.ts b/packages/script/src/index.ts index 55c89ddf7a0..5d6508758dc 100644 --- a/packages/script/src/index.ts +++ b/packages/script/src/index.ts @@ -34,7 +34,7 @@ const IS_PREVIEW = CHANNEL !== "latest" const VERSION = await (async () => { if (env.OPENCODE_VERSION) return env.OPENCODE_VERSION if (IS_PREVIEW) return `0.0.0-${CHANNEL}-${previewBuildNumber()}` - const version = await fetch("https://registry.npmjs.org/@opencode-ai%2fcli/latest") + const version = await fetch("https://registry.npmjs.org/@opencode%2fcli/latest") .then((res) => { if (!res.ok) throw new Error(res.statusText) return res.json() diff --git a/packages/sdk/README.md b/packages/sdk/README.md index 511a61d0d2b..d4810556f27 100644 --- a/packages/sdk/README.md +++ b/packages/sdk/README.md @@ -1,9 +1,9 @@ -# @opencode-ai/sdk +# @opencode/sdk In-process OpenCode host for Promise and Effect applications. The SDK executes Server's assembled HTTP router in memory, opening no listener and adding no network hop. ```ts -import { OpenCode } from "@opencode-ai/sdk" +import { OpenCode } from "@opencode/sdk" await using opencode = await OpenCode.create() const session = await opencode.sessions.create({ @@ -13,7 +13,7 @@ const session = await opencode.sessions.create({ Pass imported Promise plugins in `plugins`, or register one later with `await opencode.plugin(plugin)`. -The Promise API uses the same values, errors, request options, and `AsyncIterable` streams as `@opencode-ai/client`. +The Promise API uses the same values, errors, request options, and `AsyncIterable` streams as `@opencode/client`. Embedded hosts are silent by default. Set `log` to receive structured log entries: @@ -33,7 +33,7 @@ await using opencode = await OpenCode.create({ Use `instances` when Sessions in the same directory need different application plugins. The application selects a stable key from Session metadata; the SDK constructs and caches an instance for that key and the Session's current Location. ```ts -import { OpenCode } from "@opencode-ai/sdk" +import { OpenCode } from "@opencode/sdk" import { threads } from "./threads" import { slackPlugin } from "./slack-plugin" @@ -80,7 +80,7 @@ Promise plugin resources should be acquired in `setup` and released by its clean Use the Workerd entrypoint inside a Cloudflare Durable Object. Hold one host for the lifetime of the object instance rather than creating one per request. ```ts -import { OpenCodeWorkerd } from "@opencode-ai/sdk/workerd" +import { OpenCodeWorkerd } from "@opencode/sdk/workerd" import myPlugin from "./my-plugin" export class OpenCodeDO { @@ -107,21 +107,21 @@ export class OpenCodeDO { ## Effect -The Effect-native API remains available from `@opencode-ai/sdk/effect`: +The Effect-native API remains available from `@opencode/sdk/effect`: ```ts -import { OpenCode } from "@opencode-ai/sdk/effect" +import { OpenCode } from "@opencode/sdk/effect" const opencode = yield * OpenCode.create() const session = yield * opencode.sessions.get({ sessionID }) ``` -The Effect Workerd entrypoint is `@opencode-ai/sdk/workerd/effect`. +The Effect Workerd entrypoint is `@opencode/sdk/workerd/effect`. Effect configuration uses the same keys and lifetime rules, with canonical `Session.Info` values and an Effect-returning factory. `configure` may require services; `OpenCode.create` and `OpenCode.layer` carry those requirements, so the application satisfies them where it builds the SDK, as with any other Effect callback: ```ts -import { OpenCode } from "@opencode-ai/sdk/effect" +import { OpenCode } from "@opencode/sdk/effect" import { Effect, Layer, Schema } from "effect" import { Threads } from "./threads-effect" import { slackPlugin } from "./slack-plugin-effect" diff --git a/packages/sdk/package.json b/packages/sdk/package.json index a595fef58dd..b9d26191cd2 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "version": "1.18.4", - "name": "@opencode-ai/sdk", + "name": "@opencode/sdk", "type": "module", "license": "MIT", "repository": { @@ -28,18 +28,18 @@ "verify:package": "bun run script/verify-package.ts" }, "dependencies": { - "@opencode-ai/client": "workspace:*", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/server": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/server": "workspace:*", + "@opencode/util": "workspace:*", "effect": "catalog:" }, "devDependencies": { - "@opencode-ai/ai": "workspace:*", - "@opencode-ai/httpapi-codegen": "workspace:*", - "@opencode-ai/protocol": "workspace:*", + "@opencode/ai": "workspace:*", + "@opencode/httpapi-codegen": "workspace:*", + "@opencode/protocol": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:" diff --git a/packages/sdk/script/publish.ts b/packages/sdk/script/publish.ts index 3a15bce35a9..ad892ce120e 100644 --- a/packages/sdk/script/publish.ts +++ b/packages/sdk/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/sdk/script/verify-package.ts b/packages/sdk/script/verify-package.ts index a044941311f..bea585925ca 100644 --- a/packages/sdk/script/verify-package.ts +++ b/packages/sdk/script/verify-package.ts @@ -101,8 +101,8 @@ try { ), Bun.write( join(consumer, "worker.js"), - `import { bodyDigest } from "@opencode-ai/core/models-dev" -import { OpenCodeWorkerd } from "@opencode-ai/sdk/workerd" + `import { bodyDigest } from "@opencode/core/models-dev" +import { OpenCodeWorkerd } from "@opencode/sdk/workerd" export class OpenCodeDO { constructor(state) { @@ -191,10 +191,10 @@ try { Bun.write( join(consumer, "imports.mjs"), `const modules = await Promise.all([ - import("@opencode-ai/sdk"), - import("@opencode-ai/sdk/effect"), - import("@opencode-ai/sdk/workerd"), - import("@opencode-ai/sdk/workerd/effect"), + import("@opencode/sdk"), + import("@opencode/sdk/effect"), + import("@opencode/sdk/workerd"), + import("@opencode/sdk/workerd/effect"), ]) for (const module of modules) { @@ -205,7 +205,7 @@ for (const module of modules) { ), ]) - const sdk = archives.get("@opencode-ai/sdk") + const sdk = archives.get("@opencode/sdk") if (!sdk) throw new Error("Packed SDK archive was not created") await $`npm install --ignore-scripts --no-audit --no-fund --package-lock=false ${sdk} wrangler@4.110.0`.cwd(consumer) const runtimes = (await $`npm ls effect --all --parseable`.cwd(consumer).text()).trim().split("\n") diff --git a/packages/sdk/src/contracts.ts b/packages/sdk/src/contracts.ts index 7778b8fbb32..bb7e2a1a20a 100644 --- a/packages/sdk/src/contracts.ts +++ b/packages/sdk/src/contracts.ts @@ -1,26 +1,26 @@ -export { Agent } from "@opencode-ai/schema/agent" -export { Command } from "@opencode-ai/schema/command" -export { Config } from "@opencode-ai/schema/config" -export { Credential } from "@opencode-ai/schema/credential" -export { Event } from "@opencode-ai/schema/event" -export { FileSystem } from "@opencode-ai/schema/filesystem" -export { Integration } from "@opencode-ai/schema/integration" -export { Location } from "@opencode-ai/schema/location" -export { Model } from "@opencode-ai/schema/model" -export { Permission } from "@opencode-ai/schema/permission" -export { PermissionSaved } from "@opencode-ai/schema/permission-saved" -export { Project } from "@opencode-ai/schema/project" -export { Worktree } from "@opencode-ai/schema/worktree" -export { Prompt } from "@opencode-ai/schema/prompt" -export { PromptInput } from "@opencode-ai/schema/prompt-input" -export { Provider } from "@opencode-ai/schema/provider" -export { Pty } from "@opencode-ai/schema/pty" -export { Question } from "@opencode-ai/schema/question" -export { Reference } from "@opencode-ai/schema/reference" -export { WebSearch } from "@opencode-ai/schema/websearch" -export { AbsolutePath, RelativePath } from "@opencode-ai/schema/schema" -export { Session } from "@opencode-ai/schema/session" -export { SessionInbox } from "@opencode-ai/schema/session-inbox" -export { SessionMessage } from "@opencode-ai/schema/session-message" -export { Skill } from "@opencode-ai/schema/skill" -export { Workspace } from "@opencode-ai/schema/workspace" +export { Agent } from "@opencode/schema/agent" +export { Command } from "@opencode/schema/command" +export { Config } from "@opencode/schema/config" +export { Credential } from "@opencode/schema/credential" +export { Event } from "@opencode/schema/event" +export { FileSystem } from "@opencode/schema/filesystem" +export { Integration } from "@opencode/schema/integration" +export { Location } from "@opencode/schema/location" +export { Model } from "@opencode/schema/model" +export { Permission } from "@opencode/schema/permission" +export { PermissionSaved } from "@opencode/schema/permission-saved" +export { Project } from "@opencode/schema/project" +export { Worktree } from "@opencode/schema/worktree" +export { Prompt } from "@opencode/schema/prompt" +export { PromptInput } from "@opencode/schema/prompt-input" +export { Provider } from "@opencode/schema/provider" +export { Pty } from "@opencode/schema/pty" +export { Question } from "@opencode/schema/question" +export { Reference } from "@opencode/schema/reference" +export { WebSearch } from "@opencode/schema/websearch" +export { AbsolutePath, RelativePath } from "@opencode/schema/schema" +export { Session } from "@opencode/schema/session" +export { SessionInbox } from "@opencode/schema/session-inbox" +export { SessionMessage } from "@opencode/schema/session-message" +export { Skill } from "@opencode/schema/skill" +export { Workspace } from "@opencode/schema/workspace" diff --git a/packages/sdk/src/effect/index.ts b/packages/sdk/src/effect/index.ts index 9597380c85e..6523aa5fbab 100644 --- a/packages/sdk/src/effect/index.ts +++ b/packages/sdk/src/effect/index.ts @@ -1,6 +1,6 @@ export * as OpenCode from "./opencode" export * as Tool from "./tool" -export { ClientError } from "@opencode-ai/client/effect" -export type { OpenCodeEvent } from "@opencode-ai/client/effect" +export { ClientError } from "@opencode/client/effect" +export type { OpenCodeEvent } from "@opencode/client/effect" export * from "../contracts" diff --git a/packages/sdk/src/effect/opencode.ts b/packages/sdk/src/effect/opencode.ts index b71050808fe..5898eefba87 100644 --- a/packages/sdk/src/effect/opencode.ts +++ b/packages/sdk/src/effect/opencode.ts @@ -1,7 +1,7 @@ export * as OpenCode from "./opencode" -import { OpenCode, type OpenCodeClient } from "@opencode-ai/client/effect" -import type { Workspace } from "@opencode-ai/core/workspace" +import { OpenCode, type OpenCodeClient } from "@opencode/client/effect" +import type { Workspace } from "@opencode/core/workspace" import { Context, Effect, Layer } from "effect" import type { Config, Scope } from "effect" import { FetchHttpClient, HttpClient } from "effect/unstable/http" @@ -57,7 +57,7 @@ export const create: ( } }) -export class Service extends Context.Service()("@opencode-ai/sdk/OpenCode") {} +export class Service extends Context.Service()("@opencode/sdk/OpenCode") {} export const layer = ( options: CreateOptions = {}, diff --git a/packages/sdk/src/effect/tool.ts b/packages/sdk/src/effect/tool.ts index af878df5fd5..6e6eb1d8885 100644 --- a/packages/sdk/src/effect/tool.ts +++ b/packages/sdk/src/effect/tool.ts @@ -1,3 +1,3 @@ -export { RegistrationError } from "@opencode-ai/core/tool" -export { Error } from "@opencode-ai/schema/tool" -export type { Context, Info } from "@opencode-ai/schema/tool" +export { RegistrationError } from "@opencode/core/tool" +export { Error } from "@opencode/schema/tool" +export type { Context, Info } from "@opencode/schema/tool" diff --git a/packages/sdk/src/index.ts b/packages/sdk/src/index.ts index 220720d96c1..937560cf479 100644 --- a/packages/sdk/src/index.ts +++ b/packages/sdk/src/index.ts @@ -1,6 +1,6 @@ export * as OpenCode from "./opencode" export * as Tool from "./tool" -export { ClientError } from "@opencode-ai/client" -export type { OpenCodeEvent } from "@opencode-ai/client" +export { ClientError } from "@opencode/client" +export type { OpenCodeEvent } from "@opencode/client" export * from "./contracts" diff --git a/packages/sdk/src/internal/host.ts b/packages/sdk/src/internal/host.ts index 26ade32e843..6682346b03c 100644 --- a/packages/sdk/src/internal/host.ts +++ b/packages/sdk/src/internal/host.ts @@ -1,12 +1,12 @@ export * as EmbeddedHost from "./host" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { SessionRestart } from "@opencode-ai/core/session/execution/restart" -import { Workspace } from "@opencode-ai/core/workspace" -import { WorkspaceDriver } from "@opencode-ai/core/workspace/driver" -import { createEmbeddedRoutes } from "@opencode-ai/server/routes" -import type { ServerOptions } from "@opencode-ai/server/options" -import type { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { SessionRestart } from "@opencode/core/session/execution/restart" +import { Workspace } from "@opencode/core/workspace" +import { WorkspaceDriver } from "@opencode/core/workspace/driver" +import { createEmbeddedRoutes } from "@opencode/server/routes" +import type { ServerOptions } from "@opencode/server/options" +import type { LayerNode } from "@opencode/util/effect/layer-node" import { Context, Effect, Layer, ManagedRuntime, Scope } from "effect" import { HttpEffect, HttpRouter, HttpServer, HttpServerRequest } from "effect/unstable/http" import { context, layer, type LogOptions } from "../logging" diff --git a/packages/sdk/src/internal/instances.ts b/packages/sdk/src/internal/instances.ts index d6e9cdf39b6..bf0f468003d 100644 --- a/packages/sdk/src/internal/instances.ts +++ b/packages/sdk/src/internal/instances.ts @@ -1,13 +1,13 @@ export * as SdkInstances from "./instances" -import { Instance } from "@opencode-ai/core/instance" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { Plugin } from "@opencode-ai/core/plugin" -import type { InstancePlugins } from "@opencode-ai/core/plugin/instance" -import { Location } from "@opencode-ai/schema/location" -import type { Session } from "@opencode-ai/schema/session" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import type { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { Instance } from "@opencode/core/instance" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { Plugin } from "@opencode/core/plugin" +import type { InstancePlugins } from "@opencode/core/plugin/instance" +import { Location } from "@opencode/schema/location" +import type { Session } from "@opencode/schema/session" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import type { LayerNode } from "@opencode/util/effect/layer-node" import { Context, Duration, Effect, Layer, LayerMap, Scope } from "effect" export interface Configuration { diff --git a/packages/sdk/src/internal/workerd.ts b/packages/sdk/src/internal/workerd.ts index e9724f37c79..13db7a0cc62 100644 --- a/packages/sdk/src/internal/workerd.ts +++ b/packages/sdk/src/internal/workerd.ts @@ -1,7 +1,7 @@ export * as WorkerdProfile from "./workerd" -import type { Config } from "@opencode-ai/schema/config" -import { ServerWorkerd } from "@opencode-ai/server/workerd" +import type { Config } from "@opencode/schema/config" +import { ServerWorkerd } from "@opencode/server/workerd" export type Configuration = Omit diff --git a/packages/sdk/src/promise.ts b/packages/sdk/src/promise.ts index 3d770bb2c56..61d3a31793b 100644 --- a/packages/sdk/src/promise.ts +++ b/packages/sdk/src/promise.ts @@ -1,8 +1,8 @@ export * as PromiseSdk from "./promise" -import { OpenCode, type OpenCodeClient } from "@opencode-ai/client" -import type { Plugin } from "@opencode-ai/plugin" -import { Session } from "@opencode-ai/schema/session" +import { OpenCode, type OpenCodeClient } from "@opencode/client" +import type { Plugin } from "@opencode/plugin" +import { Session } from "@opencode/schema/session" import { Effect, Schema } from "effect" import { EmbeddedHost } from "./internal/host" @@ -41,7 +41,7 @@ export async function create(options: CreateOptions = {}, embed: EmbeddedHost.Em key: (session) => instances.key(Schema.encodeSync(Session.Info)(session)), configure: (key) => Effect.gen(function* () { - const { PluginPromise } = yield* Effect.promise(() => import("@opencode-ai/core/plugin/promise")) + const { PluginPromise } = yield* Effect.promise(() => import("@opencode/core/plugin/promise")) const configuration = yield* Effect.tryPromise(async () => instances.configure(key)) return { plugins: configuration.plugins.map(PluginPromise.fromPromise) } }), @@ -53,7 +53,7 @@ export async function create(options: CreateOptions = {}, embed: EmbeddedHost.Em ) const client = OpenCode.make({ baseUrl: "http://opencode.local", fetch: host.fetch }) const register = async (plugin: Plugin.Plugin) => { - const { PluginPromise } = await import("@opencode-ai/core/plugin/promise") + const { PluginPromise } = await import("@opencode/core/plugin/promise") return host.runtime.runPromise(host.plugins.register(PluginPromise.fromPromise(plugin))) } for (const plugin of plugins ?? []) await register(plugin) diff --git a/packages/sdk/src/tool.ts b/packages/sdk/src/tool.ts index 7ab994a3c1b..572c29ce1e2 100644 --- a/packages/sdk/src/tool.ts +++ b/packages/sdk/src/tool.ts @@ -1,3 +1,3 @@ -export { RegistrationError } from "@opencode-ai/core/tool" -export { Error } from "@opencode-ai/schema/tool" -export type { ToolContext as Context, Info } from "@opencode-ai/plugin/promise/tool" +export { RegistrationError } from "@opencode/core/tool" +export { Error } from "@opencode/schema/tool" +export type { ToolContext as Context, Info } from "@opencode/plugin/promise/tool" diff --git a/packages/sdk/test/contract-identity.test.ts b/packages/sdk/test/contract-identity.test.ts index 282fdc2a1b0..6e6920e5054 100644 --- a/packages/sdk/test/contract-identity.test.ts +++ b/packages/sdk/test/contract-identity.test.ts @@ -1,30 +1,30 @@ import { expect, test } from "bun:test" -import { Location as CoreLocation } from "@opencode-ai/core/location" -import { SessionInbox as CoreSessionInbox } from "@opencode-ai/core/session/inbox" -import { SessionMessage as CoreSessionMessage } from "@opencode-ai/core/session/message" -import { Agent } from "@opencode-ai/schema/agent" -import { Config } from "@opencode-ai/schema/config" -import { Event } from "@opencode-ai/schema/event" -import { Location } from "@opencode-ai/schema/location" -import { Model } from "@opencode-ai/schema/model" -import { Project } from "@opencode-ai/schema/project" -import { Provider } from "@opencode-ai/schema/provider" -import { WebSearch } from "@opencode-ai/schema/websearch" -import { Session } from "@opencode-ai/schema/session" -import { SessionInbox } from "@opencode-ai/schema/session-inbox" -import { SessionMessage } from "@opencode-ai/schema/session-message" -import { Workspace } from "@opencode-ai/schema/workspace" -import { Worktree } from "@opencode-ai/schema/worktree" -import { Api } from "@opencode-ai/server/api" -import { ClientApi, groupNames, promiseOmitEndpoints } from "@opencode-ai/protocol/client" -import { compile, emitPromise } from "@opencode-ai/httpapi-codegen" +import { Location as CoreLocation } from "@opencode/core/location" +import { SessionInbox as CoreSessionInbox } from "@opencode/core/session/inbox" +import { SessionMessage as CoreSessionMessage } from "@opencode/core/session/message" +import { Agent } from "@opencode/schema/agent" +import { Config } from "@opencode/schema/config" +import { Event } from "@opencode/schema/event" +import { Location } from "@opencode/schema/location" +import { Model } from "@opencode/schema/model" +import { Project } from "@opencode/schema/project" +import { Provider } from "@opencode/schema/provider" +import { WebSearch } from "@opencode/schema/websearch" +import { Session } from "@opencode/schema/session" +import { SessionInbox } from "@opencode/schema/session-inbox" +import { SessionMessage } from "@opencode/schema/session-message" +import { Workspace } from "@opencode/schema/workspace" +import { Worktree } from "@opencode/schema/worktree" +import { Api } from "@opencode/server/api" +import { ClientApi, groupNames, promiseOmitEndpoints } from "@opencode/protocol/client" +import { compile, emitPromise } from "@opencode/httpapi-codegen" const SDK = await import("../src/index") -const CoreAgent = await import("@opencode-ai/core/agent") -const CoreModel = await import("@opencode-ai/core/model") -const CoreProject = await import("@opencode-ai/core/project") -const CoreSession = await import("@opencode-ai/core/session") -const CoreWorktree = await import("@opencode-ai/core/worktree") +const CoreAgent = await import("@opencode/core/agent") +const CoreModel = await import("@opencode/core/model") +const CoreProject = await import("@opencode/core/project") +const CoreSession = await import("@opencode/core/session") +const CoreWorktree = await import("@opencode/core/worktree") test("re-exports canonical contracts directly from Schema", () => { expect(SDK.Agent).toBe(Agent) diff --git a/packages/sdk/test/embedded.test.ts b/packages/sdk/test/embedded.test.ts index f3c0c854717..aa1dc538851 100644 --- a/packages/sdk/test/embedded.test.ts +++ b/packages/sdk/test/embedded.test.ts @@ -1,13 +1,13 @@ import fs from "fs/promises" import path from "path" import { expect } from "bun:test" -import { LanguageModel, LLMClient } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { TestLLM } from "@opencode-ai/ai/testing" -import { llmClient } from "@opencode-ai/core/effect/app-node-platform" -import { makeMemoryDriver } from "@opencode-ai/core/environment/index" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { WorkspaceDriver } from "@opencode-ai/core/workspace/driver" +import { LanguageModel, LLMClient } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { TestLLM } from "@opencode/ai/testing" +import { llmClient } from "@opencode/core/effect/app-node-platform" +import { makeMemoryDriver } from "@opencode/core/environment/index" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { WorkspaceDriver } from "@opencode/core/workspace/driver" import { Deferred, Effect, Fiber, Latch, Layer, Option, Schedule, Stream } from "effect" import { testEffect } from "../../core/test/lib/effect" import { tmpdir } from "../../core/test/fixture/tmpdir" diff --git a/packages/sdk/test/import-boundaries.test.ts b/packages/sdk/test/import-boundaries.test.ts index 03a64b496a2..57779a47506 100644 --- a/packages/sdk/test/import-boundaries.test.ts +++ b/packages/sdk/test/import-boundaries.test.ts @@ -8,7 +8,7 @@ const core = resolve(import.meta.dir, "../../core") const server = resolve(import.meta.dir, "../../server") test("bundles the Promise and Effect clients with the in-memory host", async () => { - const bundles = await Promise.all([bundleInputs("@opencode-ai/sdk"), bundleInputs("@opencode-ai/sdk/effect")]) + const bundles = await Promise.all([bundleInputs("@opencode/sdk"), bundleInputs("@opencode/sdk/effect")]) for (const inputs of bundles) { expect(within(inputs, client).length).toBeGreaterThan(0) diff --git a/packages/sdk/test/instances-effect.test.ts b/packages/sdk/test/instances-effect.test.ts index 9dc2628a048..ca4d7d2294b 100644 --- a/packages/sdk/test/instances-effect.test.ts +++ b/packages/sdk/test/instances-effect.test.ts @@ -1,13 +1,13 @@ import { expect } from "bun:test" import path from "path" -import { LanguageModel, LLMClient } from "@opencode-ai/ai" -import { OpenAIChat } from "@opencode-ai/ai/protocols" -import { TestLLM } from "@opencode-ai/ai/testing" -import { llmClient } from "@opencode-ai/core/effect/app-node-platform" -import { makeMemoryDriver } from "@opencode-ai/core/environment/index" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { WorkspaceDriver } from "@opencode-ai/core/workspace/driver" -import { Plugin } from "@opencode-ai/plugin/effect" +import { LanguageModel, LLMClient } from "@opencode/ai" +import { OpenAIChat } from "@opencode/ai/protocols" +import { TestLLM } from "@opencode/ai/testing" +import { llmClient } from "@opencode/core/effect/app-node-platform" +import { makeMemoryDriver } from "@opencode/core/environment/index" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { WorkspaceDriver } from "@opencode/core/workspace/driver" +import { Plugin } from "@opencode/plugin/effect" import { Context, Deferred, Effect, Exit, Layer, Schema, Scope } from "effect" import { tmpdirScoped } from "../../core/test/fixture/tmpdir" import { testEffect } from "../../core/test/lib/effect" diff --git a/packages/sdk/test/instances-lifecycle.test.ts b/packages/sdk/test/instances-lifecycle.test.ts index b3e96fbacd9..7d78288a746 100644 --- a/packages/sdk/test/instances-lifecycle.test.ts +++ b/packages/sdk/test/instances-lifecycle.test.ts @@ -1,8 +1,8 @@ import { expect } from "bun:test" -import { Instance } from "@opencode-ai/core/instance/service" -import { Session } from "@opencode-ai/core/session" -import { Location } from "@opencode-ai/schema/location" -import { AbsolutePath } from "@opencode-ai/schema/schema" +import { Instance } from "@opencode/core/instance/service" +import { Session } from "@opencode/core/session" +import { Location } from "@opencode/schema/location" +import { AbsolutePath } from "@opencode/schema/schema" import { Context, Deferred, Effect, Exit, Fiber, Layer } from "effect" import { tmpdirScoped } from "../../core/test/fixture/tmpdir" import { testEffect } from "../../core/test/lib/effect" diff --git a/packages/server/package.json b/packages/server/package.json index 637d75f1b4e..27c81908f9a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/server", + "name": "@opencode/server", "version": "1.18.4", "type": "module", "license": "MIT", @@ -27,17 +27,17 @@ "dependencies": { "@effect/platform-node": "catalog:", "@effect/platform-node-shared": "catalog:", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/protocol": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/simulation": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/protocol": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/simulation": "workspace:*", + "@opencode/util": "workspace:*", "drizzle-orm": "catalog:", "effect": "catalog:" }, "devDependencies": { - "@opencode-ai/client": "workspace:*", - "@opencode-ai/plugin": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/plugin": "workspace:*", "@tsconfig/bun": "catalog:", "@types/bun": "catalog:", "@typescript/native-preview": "catalog:" diff --git a/packages/server/script/publish.ts b/packages/server/script/publish.ts index e56ff22d286..421d83e3479 100644 --- a/packages/server/script/publish.ts +++ b/packages/server/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/server/src/api.ts b/packages/server/src/api.ts index 60831abc206..2e137d08e02 100644 --- a/packages/server/src/api.ts +++ b/packages/server/src/api.ts @@ -1,4 +1,4 @@ -import { makeDefaultApi } from "@opencode-ai/protocol/api" +import { makeDefaultApi } from "@opencode/protocol/api" import { LocationMiddleware } from "./location" import { FormLocationMiddleware } from "./middleware/form-location" import { SessionLocationMiddleware } from "./middleware/session-location" diff --git a/packages/server/src/event-feed.ts b/packages/server/src/event-feed.ts index 870ae221f4b..f22c393fe29 100644 --- a/packages/server/src/event-feed.ts +++ b/packages/server/src/event-feed.ts @@ -1,8 +1,8 @@ export * as EventFeed from "./event-feed" -import { Bus } from "@opencode-ai/core/bus" -import { Event } from "@opencode-ai/schema/event" -import { isOpenCodeEvent, type OpenCodeEvent } from "@opencode-ai/protocol/groups/event" +import { Bus } from "@opencode/core/bus" +import { Event } from "@opencode/schema/event" +import { isOpenCodeEvent, type OpenCodeEvent } from "@opencode/protocol/groups/event" import { Cause, Context, Effect, Layer, Queue, Schema, Scope, Stream } from "effect" export const SubscriberCapacity = 4_096 diff --git a/packages/server/src/fetch.ts b/packages/server/src/fetch.ts index 2dbf7f36c1b..88a52634897 100644 --- a/packages/server/src/fetch.ts +++ b/packages/server/src/fetch.ts @@ -2,8 +2,8 @@ export * as ServerFetch from "./fetch" import { Context, Effect, Layer } from "effect" import { HttpEffect, HttpMiddleware, HttpRouter, HttpServer } from "effect/unstable/http" -import { SessionRestart } from "@opencode-ai/core/session/execution/restart" -import type { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { SessionRestart } from "@opencode/core/session/execution/restart" +import type { LayerNode } from "@opencode/util/effect/layer-node" import { isAllowedCorsOrigin } from "./cors" import { createRoutes } from "./routes" import type { ServerOptions } from "./options" diff --git a/packages/server/src/handlers/agent.ts b/packages/server/src/handlers/agent.ts index d395b01bb39..713cf3f6262 100644 --- a/packages/server/src/handlers/agent.ts +++ b/packages/server/src/handlers/agent.ts @@ -1,9 +1,9 @@ -import { Agent } from "@opencode-ai/core/agent" +import { Agent } from "@opencode/core/agent" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" import { response } from "../location" -import { AgentNotFoundError } from "@opencode-ai/protocol/errors" +import { AgentNotFoundError } from "@opencode/protocol/errors" export const AgentHandler = HttpApiBuilder.group(Api, "server.agent", (handlers) => handlers diff --git a/packages/server/src/handlers/command.ts b/packages/server/src/handlers/command.ts index 8e3f01b3c70..bf289721bc8 100644 --- a/packages/server/src/handlers/command.ts +++ b/packages/server/src/handlers/command.ts @@ -1,4 +1,4 @@ -import { Command } from "@opencode-ai/core/command" +import { Command } from "@opencode/core/command" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" import { response } from "../location" diff --git a/packages/server/src/handlers/config.ts b/packages/server/src/handlers/config.ts index 1509c4ecd5f..176a3b71075 100644 --- a/packages/server/src/handlers/config.ts +++ b/packages/server/src/handlers/config.ts @@ -1,4 +1,4 @@ -import { Config } from "@opencode-ai/core/config" +import { Config } from "@opencode/core/config" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/credential.ts b/packages/server/src/handlers/credential.ts index 7ee746fbe13..cc7580f2980 100644 --- a/packages/server/src/handlers/credential.ts +++ b/packages/server/src/handlers/credential.ts @@ -1,4 +1,4 @@ -import { Integration } from "@opencode-ai/core/integration" +import { Integration } from "@opencode/core/integration" import { Effect } from "effect" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/debug.ts b/packages/server/src/handlers/debug.ts index ec797c00321..dd5b83762f6 100644 --- a/packages/server/src/handlers/debug.ts +++ b/packages/server/src/handlers/debug.ts @@ -1,4 +1,4 @@ -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" +import { LocationServiceMap } from "@opencode/core/location-service-map" import { Effect, Option, RcMap } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/event.ts b/packages/server/src/handlers/event.ts index a0d1b81cd3b..af1d26b5e41 100644 --- a/packages/server/src/handlers/event.ts +++ b/packages/server/src/handlers/event.ts @@ -1,5 +1,5 @@ -import { Bus } from "@opencode-ai/core/bus" -import { Event } from "@opencode-ai/schema/event" +import { Bus } from "@opencode/core/bus" +import { Event } from "@opencode/schema/event" import { Effect, Stream } from "effect" import { HttpServerResponse } from "effect/unstable/http" import { HttpApiBuilder } from "effect/unstable/httpapi" diff --git a/packages/server/src/handlers/form.ts b/packages/server/src/handlers/form.ts index 117fb5fc76d..9be44d32f20 100644 --- a/packages/server/src/handlers/form.ts +++ b/packages/server/src/handlers/form.ts @@ -1,14 +1,14 @@ -import { Form } from "@opencode-ai/core/form" -import { Instance } from "@opencode-ai/core/instance/service" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { Session } from "@opencode-ai/core/session" +import { Form } from "@opencode/core/form" +import { Instance } from "@opencode/core/instance/service" +import { LocationServiceMap } from "@opencode/core/location-services" +import { Session } from "@opencode/core/session" import { ConflictError, FormAlreadySettledError, FormInvalidAnswerError, FormNotFoundError, InvalidRequestError, -} from "@opencode-ai/protocol/errors" +} from "@opencode/protocol/errors" import { Effect } from "effect" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/fs.ts b/packages/server/src/handlers/fs.ts index d623f2d7e64..2bc6a33e7c1 100644 --- a/packages/server/src/handlers/fs.ts +++ b/packages/server/src/handlers/fs.ts @@ -1,5 +1,5 @@ -import { FileSystem } from "@opencode-ai/core/filesystem" -import { RelativePath } from "@opencode-ai/core/schema" +import { FileSystem } from "@opencode/core/filesystem" +import { RelativePath } from "@opencode/core/schema" import { Effect } from "effect" import { HttpServerResponse } from "effect/unstable/http" import { HttpApiBuilder } from "effect/unstable/httpapi" diff --git a/packages/server/src/handlers/generate.ts b/packages/server/src/handlers/generate.ts index 5de473b03ac..57fefbe1249 100644 --- a/packages/server/src/handlers/generate.ts +++ b/packages/server/src/handlers/generate.ts @@ -1,9 +1,9 @@ -import { Generate } from "@opencode-ai/core/generate" -import { Location } from "@opencode-ai/core/location" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { InvalidRequestError, ServiceUnavailableError } from "@opencode-ai/protocol/errors" -import { Global } from "@opencode-ai/util/global" +import { Generate } from "@opencode/core/generate" +import { Location } from "@opencode/core/location" +import { LocationServiceMap } from "@opencode/core/location-services" +import { AbsolutePath } from "@opencode/core/schema" +import { InvalidRequestError, ServiceUnavailableError } from "@opencode/protocol/errors" +import { Global } from "@opencode/util/global" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/integration.ts b/packages/server/src/handlers/integration.ts index 9143fb91377..150e10dbf40 100644 --- a/packages/server/src/handlers/integration.ts +++ b/packages/server/src/handlers/integration.ts @@ -1,10 +1,10 @@ -import { Integration } from "@opencode-ai/core/integration" +import { Integration } from "@opencode/core/integration" import { Effect } from "effect" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" import { Api } from "../api" -import { InvalidRequestError } from "@opencode-ai/protocol/errors" +import { InvalidRequestError } from "@opencode/protocol/errors" import { response } from "../location" -import { WellKnown } from "@opencode-ai/core/wellknown" +import { WellKnown } from "@opencode/core/wellknown" const authorize = (effect: Effect.Effect) => effect.pipe( diff --git a/packages/server/src/handlers/location.ts b/packages/server/src/handlers/location.ts index ded8c8c2e0a..24732444ac0 100644 --- a/packages/server/src/handlers/location.ts +++ b/packages/server/src/handlers/location.ts @@ -1,4 +1,4 @@ -import { Location } from "@opencode-ai/core/location" +import { Location } from "@opencode/core/location" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/mcp.ts b/packages/server/src/handlers/mcp.ts index b52ae637808..47933234585 100644 --- a/packages/server/src/handlers/mcp.ts +++ b/packages/server/src/handlers/mcp.ts @@ -1,5 +1,5 @@ -import { Mcp } from "@opencode-ai/core/mcp/index" -import { McpServerNotFoundError } from "@opencode-ai/protocol/errors" +import { Mcp } from "@opencode/core/mcp/index" +import { McpServerNotFoundError } from "@opencode/protocol/errors" import { Effect } from "effect" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/message.ts b/packages/server/src/handlers/message.ts index 6339e6f9427..cfc6b6deee5 100644 --- a/packages/server/src/handlers/message.ts +++ b/packages/server/src/handlers/message.ts @@ -1,9 +1,9 @@ -import { SessionMessage } from "@opencode-ai/core/session/message" -import { Session } from "@opencode-ai/core/session" +import { SessionMessage } from "@opencode/core/session/message" +import { Session } from "@opencode/core/session" import { Effect, Schema } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" -import { InvalidCursorError } from "@opencode-ai/protocol/errors" +import { InvalidCursorError } from "@opencode/protocol/errors" import { failedMessageDecode, missingSession } from "./session-error" const DefaultMessagesLimit = 50 diff --git a/packages/server/src/handlers/migration.ts b/packages/server/src/handlers/migration.ts index 230f69d73e4..1c287560050 100644 --- a/packages/server/src/handlers/migration.ts +++ b/packages/server/src/handlers/migration.ts @@ -1,4 +1,4 @@ -import { V1Migration } from "@opencode-ai/core/database/v1-migration" +import { V1Migration } from "@opencode/core/database/v1-migration" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Effect } from "effect" import { Api } from "../api" diff --git a/packages/server/src/handlers/model.ts b/packages/server/src/handlers/model.ts index 5059804354b..aebb3b42a54 100644 --- a/packages/server/src/handlers/model.ts +++ b/packages/server/src/handlers/model.ts @@ -1,4 +1,4 @@ -import { Catalog } from "@opencode-ai/core/catalog" +import { Catalog } from "@opencode/core/catalog" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/permission.ts b/packages/server/src/handlers/permission.ts index 84267664b44..823b5fcac97 100644 --- a/packages/server/src/handlers/permission.ts +++ b/packages/server/src/handlers/permission.ts @@ -1,12 +1,12 @@ -import { Instance } from "@opencode-ai/core/instance/service" -import { Location } from "@opencode-ai/core/location" -import { Permission } from "@opencode-ai/core/permission" -import { PermissionSaved } from "@opencode-ai/core/permission/saved" -import { Session } from "@opencode-ai/core/session" +import { Instance } from "@opencode/core/instance/service" +import { Location } from "@opencode/core/location" +import { Permission } from "@opencode/core/permission" +import { PermissionSaved } from "@opencode/core/permission/saved" +import { Session } from "@opencode/core/session" import { Effect } from "effect" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" import { Api } from "../api" -import { PermissionNotFoundError } from "@opencode-ai/protocol/errors" +import { PermissionNotFoundError } from "@opencode/protocol/errors" import { response, sessionInfo } from "../location" import { missingSession } from "./session-error" diff --git a/packages/server/src/handlers/persistent-pty.ts b/packages/server/src/handlers/persistent-pty.ts index d12ada7bba0..76aa3a025bf 100644 --- a/packages/server/src/handlers/persistent-pty.ts +++ b/packages/server/src/handlers/persistent-pty.ts @@ -1,11 +1,11 @@ -import { PersistentPty } from "@opencode-ai/core/persistent-pty" -import { PtyTicket } from "@opencode-ai/core/pty/ticket" -import { ForbiddenError, PtyNotFoundError, ServiceUnavailableError } from "@opencode-ai/protocol/errors" +import { PersistentPty } from "@opencode/core/persistent-pty" +import { PtyTicket } from "@opencode/core/pty/ticket" +import { ForbiddenError, PtyNotFoundError, ServiceUnavailableError } from "@opencode/protocol/errors" import { PTY_CONNECT_TICKET_QUERY, PTY_CONNECT_TOKEN_HEADER, PTY_CONNECT_TOKEN_HEADER_VALUE, -} from "@opencode-ai/protocol/groups/persistent-pty" +} from "@opencode/protocol/groups/persistent-pty" import { Effect, Queue, Semaphore } from "effect" import { HttpServerRequest, HttpServerResponse } from "effect/unstable/http" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" diff --git a/packages/server/src/handlers/plugin.ts b/packages/server/src/handlers/plugin.ts index 6615fd980d1..8e60a54c45b 100644 --- a/packages/server/src/handlers/plugin.ts +++ b/packages/server/src/handlers/plugin.ts @@ -1,6 +1,6 @@ -import { Plugin } from "@opencode-ai/core/plugin" -import { PluginUpdate } from "@opencode-ai/core/plugin/update" -import { InvalidRequestError, ServiceUnavailableError } from "@opencode-ai/protocol/errors" +import { Plugin } from "@opencode/core/plugin" +import { PluginUpdate } from "@opencode/core/plugin/update" +import { InvalidRequestError, ServiceUnavailableError } from "@opencode/protocol/errors" import { Cause, Effect, Exit } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/project.ts b/packages/server/src/handlers/project.ts index e5e58a74914..467183eb235 100644 --- a/packages/server/src/handlers/project.ts +++ b/packages/server/src/handlers/project.ts @@ -1,9 +1,9 @@ -import { Location } from "@opencode-ai/core/location" -import { Project } from "@opencode-ai/core/project" +import { Location } from "@opencode/core/location" +import { Project } from "@opencode/core/project" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" -import { ProjectNotFoundError } from "@opencode-ai/protocol/errors" +import { ProjectNotFoundError } from "@opencode/protocol/errors" export const ProjectHandler = HttpApiBuilder.group(Api, "server.project", (handlers) => handlers diff --git a/packages/server/src/handlers/provider.ts b/packages/server/src/handlers/provider.ts index 35945eede6e..3a9b70c2c7b 100644 --- a/packages/server/src/handlers/provider.ts +++ b/packages/server/src/handlers/provider.ts @@ -1,5 +1,5 @@ -import { Catalog } from "@opencode-ai/core/catalog" -import { ProviderNotFoundError } from "@opencode-ai/protocol/errors" +import { Catalog } from "@opencode/core/catalog" +import { ProviderNotFoundError } from "@opencode/protocol/errors" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/pty.ts b/packages/server/src/handlers/pty.ts index 48a90e497b5..4e8f922edbb 100644 --- a/packages/server/src/handlers/pty.ts +++ b/packages/server/src/handlers/pty.ts @@ -1,19 +1,19 @@ -import { Pty } from "@opencode-ai/core/pty" -import { PtyProtocol } from "@opencode-ai/core/pty/protocol" -import { PtyTicket } from "@opencode-ai/core/pty/ticket" -import { Location } from "@opencode-ai/core/location" +import { Pty } from "@opencode/core/pty" +import { PtyProtocol } from "@opencode/core/pty/protocol" +import { PtyTicket } from "@opencode/core/pty/ticket" +import { Location } from "@opencode/core/location" import { Effect, Queue } from "effect" import { HttpServerRequest, HttpServerResponse } from "effect/unstable/http" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" import { Socket } from "effect/unstable/socket" import { Api } from "../api" import { CorsConfig, isAllowedRequestOrigin } from "../cors" -import { ForbiddenError, PtyNotFoundError } from "@opencode-ai/protocol/errors" +import { ForbiddenError, PtyNotFoundError } from "@opencode/protocol/errors" import { PTY_CONNECT_TICKET_QUERY, PTY_CONNECT_TOKEN_HEADER, PTY_CONNECT_TOKEN_HEADER_VALUE, -} from "@opencode-ai/protocol/groups/pty" +} from "@opencode/protocol/groups/pty" import { response } from "../location" import { PtyEnvironment } from "../pty-environment" import { runPtySocket } from "./pty-socket" diff --git a/packages/server/src/handlers/reference.ts b/packages/server/src/handlers/reference.ts index 543c9790dc8..3fb20bc328c 100644 --- a/packages/server/src/handlers/reference.ts +++ b/packages/server/src/handlers/reference.ts @@ -1,4 +1,4 @@ -import { Reference } from "@opencode-ai/core/reference" +import { Reference } from "@opencode/core/reference" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" import { response } from "../location" diff --git a/packages/server/src/handlers/rpc.ts b/packages/server/src/handlers/rpc.ts index 27f1e04a17c..a0bd96a28e7 100644 --- a/packages/server/src/handlers/rpc.ts +++ b/packages/server/src/handlers/rpc.ts @@ -1,6 +1,6 @@ -import { Rpc } from "@opencode-ai/core/rpc" -import { Plugin } from "@opencode-ai/core/plugin" -import { RpcError, RpcInternalError } from "@opencode-ai/protocol/errors" +import { Rpc } from "@opencode/core/rpc" +import { Plugin } from "@opencode/core/plugin" +import { RpcError, RpcInternalError } from "@opencode/protocol/errors" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/session-error.ts b/packages/server/src/handlers/session-error.ts index 65be0f03cee..8dd6c75d9f7 100644 --- a/packages/server/src/handlers/session-error.ts +++ b/packages/server/src/handlers/session-error.ts @@ -1,5 +1,5 @@ -import { Session } from "@opencode-ai/core/session" -import { SessionNotFoundError, UnknownError } from "@opencode-ai/protocol/errors" +import { Session } from "@opencode/core/session" +import { SessionNotFoundError, UnknownError } from "@opencode/protocol/errors" import { Effect } from "effect" export function missingSession(error: Session.NotFoundError) { diff --git a/packages/server/src/handlers/session.ts b/packages/server/src/handlers/session.ts index a8e8db9ba31..34574967098 100644 --- a/packages/server/src/handlers/session.ts +++ b/packages/server/src/handlers/session.ts @@ -1,12 +1,12 @@ -import { Session } from "@opencode-ai/core/session" -import { SessionStats } from "@opencode-ai/core/session/stats" -import { SessionTitle } from "@opencode-ai/core/session/title" -import { SessionTransfer } from "@opencode-ai/core/session/transfer" -import { InstructionEntry } from "@opencode-ai/core/session/instruction-entry" +import { Session } from "@opencode/core/session" +import { SessionStats } from "@opencode/core/session/stats" +import { SessionTitle } from "@opencode/core/session/title" +import { SessionTransfer } from "@opencode/core/session/transfer" +import { InstructionEntry } from "@opencode/core/session/instruction-entry" import { DateTime, Effect, Stream } from "effect" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" import { Api } from "../api" -import { SessionsCursor } from "@opencode-ai/protocol/groups/session" +import { SessionsCursor } from "@opencode/protocol/groups/session" import { ConflictError, CommandExecutionError, @@ -18,8 +18,8 @@ import { SessionBusyError, SkillNotFoundError, UnknownError, -} from "@opencode-ai/protocol/errors" -import { AbsolutePath } from "@opencode-ai/core/schema" +} from "@opencode/protocol/errors" +import { AbsolutePath } from "@opencode/core/schema" import { failedMessageDecode, missingSession } from "./session-error" const DefaultSessionsLimit = 50 diff --git a/packages/server/src/handlers/shell.ts b/packages/server/src/handlers/shell.ts index 96d7530cd81..c53480fbd89 100644 --- a/packages/server/src/handlers/shell.ts +++ b/packages/server/src/handlers/shell.ts @@ -1,8 +1,8 @@ -import { Shell } from "@opencode-ai/core/shell" -import { Location } from "@opencode-ai/core/location" +import { Shell } from "@opencode/core/shell" +import { Location } from "@opencode/core/location" import { Effect } from "effect" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" -import { ShellNotFoundError } from "@opencode-ai/protocol/errors" +import { ShellNotFoundError } from "@opencode/protocol/errors" import { Api } from "../api" import { response } from "../location" diff --git a/packages/server/src/handlers/skill.ts b/packages/server/src/handlers/skill.ts index 2b22851253d..a0cba465d33 100644 --- a/packages/server/src/handlers/skill.ts +++ b/packages/server/src/handlers/skill.ts @@ -1,4 +1,4 @@ -import { Skill } from "@opencode-ai/core/skill" +import { Skill } from "@opencode/core/skill" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" import { response } from "../location" diff --git a/packages/server/src/handlers/vcs.ts b/packages/server/src/handlers/vcs.ts index 3d4ee269bac..2c0fbd8c07f 100644 --- a/packages/server/src/handlers/vcs.ts +++ b/packages/server/src/handlers/vcs.ts @@ -1,5 +1,5 @@ -import { Vcs } from "@opencode-ai/core/vcs" -import { ServiceUnavailableError } from "@opencode-ai/protocol/errors" +import { Vcs } from "@opencode/core/vcs" +import { ServiceUnavailableError } from "@opencode/protocol/errors" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/websearch.ts b/packages/server/src/handlers/websearch.ts index 71979d77d9d..bb838a6173c 100644 --- a/packages/server/src/handlers/websearch.ts +++ b/packages/server/src/handlers/websearch.ts @@ -1,5 +1,5 @@ -import { WebSearch } from "@opencode-ai/core/websearch" -import { InvalidRequestError, ServiceUnavailableError } from "@opencode-ai/protocol/errors" +import { WebSearch } from "@opencode/core/websearch" +import { InvalidRequestError, ServiceUnavailableError } from "@opencode/protocol/errors" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/workspace.ts b/packages/server/src/handlers/workspace.ts index 6ef6597fc6b..ff25059f6ce 100644 --- a/packages/server/src/handlers/workspace.ts +++ b/packages/server/src/handlers/workspace.ts @@ -1,5 +1,5 @@ -import { Workspace } from "@opencode-ai/core/workspace" -import { ConflictError, ProviderNotFoundError, UnknownError } from "@opencode-ai/protocol/errors" +import { Workspace } from "@opencode/core/workspace" +import { ConflictError, ProviderNotFoundError, UnknownError } from "@opencode/protocol/errors" import { Effect } from "effect" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/handlers/worktree.ts b/packages/server/src/handlers/worktree.ts index 8eaebc80d3b..139c16871fa 100644 --- a/packages/server/src/handlers/worktree.ts +++ b/packages/server/src/handlers/worktree.ts @@ -1,7 +1,7 @@ -import { Git } from "@opencode-ai/core/git" -import { Worktree } from "@opencode-ai/core/worktree" -import { Plugin } from "@opencode-ai/core/plugin" -import { WorktreeError } from "@opencode-ai/protocol/groups/worktree" +import { Git } from "@opencode/core/git" +import { Worktree } from "@opencode/core/worktree" +import { Plugin } from "@opencode/core/plugin" +import { WorktreeError } from "@opencode/protocol/groups/worktree" import { Effect } from "effect" import { HttpApiBuilder, HttpApiSchema } from "effect/unstable/httpapi" import { Api } from "../api" diff --git a/packages/server/src/location.ts b/packages/server/src/location.ts index 7dd5b867df8..2222e7a127e 100644 --- a/packages/server/src/location.ts +++ b/packages/server/src/location.ts @@ -1,9 +1,9 @@ -import { Location } from "@opencode-ai/core/location" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { Workspace } from "@opencode-ai/core/workspace" -import { InvalidRequestError } from "@opencode-ai/protocol/errors" +import { Location } from "@opencode/core/location" +import { LocationServiceMap } from "@opencode/core/location-services" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { Workspace } from "@opencode/core/workspace" +import { InvalidRequestError } from "@opencode/protocol/errors" import { Effect, Layer, Schema } from "effect" import { HttpServerRequest } from "effect/unstable/http" import { HttpApiMiddleware } from "effect/unstable/httpapi" diff --git a/packages/server/src/middleware/authorization.ts b/packages/server/src/middleware/authorization.ts index a4c60fb2152..b4255f02769 100644 --- a/packages/server/src/middleware/authorization.ts +++ b/packages/server/src/middleware/authorization.ts @@ -1,9 +1,9 @@ import { ServerAuth } from "../auth" -import { UnauthorizedError } from "@opencode-ai/protocol/errors" -import { Authorization } from "@opencode-ai/protocol/middleware/authorization" -export { Authorization } from "@opencode-ai/protocol/middleware/authorization" -import { hasPtyConnectTicketURL } from "@opencode-ai/protocol/groups/pty" -import { hasPersistentPtyConnectTicketURL } from "@opencode-ai/protocol/groups/persistent-pty" +import { UnauthorizedError } from "@opencode/protocol/errors" +import { Authorization } from "@opencode/protocol/middleware/authorization" +export { Authorization } from "@opencode/protocol/middleware/authorization" +import { hasPtyConnectTicketURL } from "@opencode/protocol/groups/pty" +import { hasPersistentPtyConnectTicketURL } from "@opencode/protocol/groups/persistent-pty" import { Effect, Encoding, Layer, Redacted } from "effect" import { HttpEffect, HttpServerRequest, HttpServerResponse } from "effect/unstable/http" diff --git a/packages/server/src/middleware/form-location.ts b/packages/server/src/middleware/form-location.ts index d089d20f407..dc18de75fbd 100644 --- a/packages/server/src/middleware/form-location.ts +++ b/packages/server/src/middleware/form-location.ts @@ -1,7 +1,7 @@ -import { Instance } from "@opencode-ai/core/instance/service" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { Session } from "@opencode-ai/core/session" -import { InvalidRequestError, SessionNotFoundError } from "@opencode-ai/protocol/errors" +import { Instance } from "@opencode/core/instance/service" +import { LocationServiceMap } from "@opencode/core/location-services" +import { Session } from "@opencode/core/session" +import { InvalidRequestError, SessionNotFoundError } from "@opencode/protocol/errors" import { Effect, Layer } from "effect" import { HttpRouter, HttpServerRequest } from "effect/unstable/http" import { HttpApiMiddleware } from "effect/unstable/httpapi" diff --git a/packages/server/src/middleware/schema-error.ts b/packages/server/src/middleware/schema-error.ts index 37013285b9d..6762cd46161 100644 --- a/packages/server/src/middleware/schema-error.ts +++ b/packages/server/src/middleware/schema-error.ts @@ -1,8 +1,8 @@ import { Effect } from "effect" import { HttpApiMiddleware } from "effect/unstable/httpapi" -import { InvalidRequestError } from "@opencode-ai/protocol/errors" -import { SchemaErrorMiddleware } from "@opencode-ai/protocol/middleware/schema-error" -export { SchemaErrorMiddleware } from "@opencode-ai/protocol/middleware/schema-error" +import { InvalidRequestError } from "@opencode/protocol/errors" +import { SchemaErrorMiddleware } from "@opencode/protocol/middleware/schema-error" +export { SchemaErrorMiddleware } from "@opencode/protocol/middleware/schema-error" const REASON_LIMIT = 1024 diff --git a/packages/server/src/middleware/session-location.ts b/packages/server/src/middleware/session-location.ts index b0f91ab4989..f3a9a223448 100644 --- a/packages/server/src/middleware/session-location.ts +++ b/packages/server/src/middleware/session-location.ts @@ -1,9 +1,9 @@ -import { Instance } from "@opencode-ai/core/instance/service" -import { Session } from "@opencode-ai/core/session" +import { Instance } from "@opencode/core/instance/service" +import { Session } from "@opencode/core/session" import { Effect, Layer } from "effect" import { HttpRouter } from "effect/unstable/http" import { HttpApiMiddleware } from "effect/unstable/httpapi" -import { InvalidRequestError, SessionNotFoundError } from "@opencode-ai/protocol/errors" +import { InvalidRequestError, SessionNotFoundError } from "@opencode/protocol/errors" import { sessionInfo, type LocationServices } from "../location" export class SessionLocationMiddleware extends HttpApiMiddleware.Service< diff --git a/packages/server/src/options.ts b/packages/server/src/options.ts index c7bd5ef0b88..489006a3623 100644 --- a/packages/server/src/options.ts +++ b/packages/server/src/options.ts @@ -1,6 +1,6 @@ -import { Database } from "@opencode-ai/core/database/database" -import { ModelsDev } from "@opencode-ai/core/models-dev" -import { PersistentPty } from "@opencode-ai/core/persistent-pty" +import { Database } from "@opencode/core/database/database" +import { ModelsDev } from "@opencode/core/models-dev" +import { PersistentPty } from "@opencode/core/persistent-pty" import { Schema } from "effect" export const ServerOptions = Schema.Struct({ diff --git a/packages/server/src/process.ts b/packages/server/src/process.ts index 87157304913..47c691136c4 100644 --- a/packages/server/src/process.ts +++ b/packages/server/src/process.ts @@ -1,11 +1,11 @@ export * as ServerProcess from "./process" import { NodeHttpServer } from "@effect/platform-node" -import { Bus } from "@opencode-ai/core/bus" -import { SessionRestart } from "@opencode-ai/core/session/execution/restart" -import { InstallationEvent } from "@opencode-ai/schema/installation-event" -import { hasPtyConnectTicketURL } from "@opencode-ai/protocol/groups/pty" -import { hasPersistentPtyConnectTicketURL } from "@opencode-ai/protocol/groups/persistent-pty" +import { Bus } from "@opencode/core/bus" +import { SessionRestart } from "@opencode/core/session/execution/restart" +import { InstallationEvent } from "@opencode/schema/installation-event" +import { hasPtyConnectTicketURL } from "@opencode/protocol/groups/pty" +import { hasPersistentPtyConnectTicketURL } from "@opencode/protocol/groups/persistent-pty" import { Cause, Context, Effect, Exit, Latch, Layer, Option, Ref, Scope } from "effect" import { HttpMiddleware, diff --git a/packages/server/src/pty-environment.ts b/packages/server/src/pty-environment.ts index 0d8e3381a5a..c93854e89fe 100644 --- a/packages/server/src/pty-environment.ts +++ b/packages/server/src/pty-environment.ts @@ -1,7 +1,7 @@ export * as PtyEnvironment from "./pty-environment" import { Context, Effect, Layer } from "effect" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" export interface Interface { readonly get: (input: { directory: string; cwd: string }) => Effect.Effect> diff --git a/packages/server/src/routes.ts b/packages/server/src/routes.ts index 5598557d971..274e61a0edc 100644 --- a/packages/server/src/routes.ts +++ b/packages/server/src/routes.ts @@ -1,36 +1,36 @@ -import { Database } from "@opencode-ai/core/database/database" -import { V1Migration } from "@opencode-ai/core/database/v1-migration" -import { App } from "@opencode-ai/core/app" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Node } from "@opencode-ai/util/effect/app-node" -import { httpClient } from "@opencode-ai/util/effect/app-node-platform" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Bus } from "@opencode-ai/core/bus" -import { EventLogger } from "@opencode-ai/core/event-logger" -import { FileSystemSearch } from "@opencode-ai/core/filesystem/search" -import { Credential } from "@opencode-ai/core/credential" -import { Config } from "@opencode-ai/core/config" -import { PermissionSaved } from "@opencode-ai/core/permission/saved" -import { PtyTicket } from "@opencode-ai/core/pty/ticket" -import { PersistentPty } from "@opencode-ai/core/persistent-pty" -import { Project } from "@opencode-ai/core/project" -import { Session } from "@opencode-ai/core/session" -import { Instance } from "@opencode-ai/core/instance/service" -import { SessionTransfer } from "@opencode-ai/core/session/transfer" -import { ShellSelect } from "@opencode-ai/core/shell/select" -import { Job } from "@opencode-ai/core/job" -import { Mcp } from "@opencode-ai/core/mcp/index" -import { Global } from "@opencode-ai/util/global" -import { InstructionDiscovery } from "@opencode-ai/core/instruction-discovery" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { LocationActivity } from "@opencode-ai/core/location-activity" -import { ModelsDev } from "@opencode-ai/core/models-dev" -import { SessionRestart } from "@opencode-ai/core/session/execution/restart" -import { PluginUpdate } from "@opencode-ai/core/plugin/update" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { WellKnown } from "@opencode-ai/core/wellknown" -import { Workspace } from "@opencode-ai/core/workspace" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" +import { Database } from "@opencode/core/database/database" +import { V1Migration } from "@opencode/core/database/v1-migration" +import { App } from "@opencode/core/app" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Node } from "@opencode/util/effect/app-node" +import { httpClient } from "@opencode/util/effect/app-node-platform" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Bus } from "@opencode/core/bus" +import { EventLogger } from "@opencode/core/event-logger" +import { FileSystemSearch } from "@opencode/core/filesystem/search" +import { Credential } from "@opencode/core/credential" +import { Config } from "@opencode/core/config" +import { PermissionSaved } from "@opencode/core/permission/saved" +import { PtyTicket } from "@opencode/core/pty/ticket" +import { PersistentPty } from "@opencode/core/persistent-pty" +import { Project } from "@opencode/core/project" +import { Session } from "@opencode/core/session" +import { Instance } from "@opencode/core/instance/service" +import { SessionTransfer } from "@opencode/core/session/transfer" +import { ShellSelect } from "@opencode/core/shell/select" +import { Job } from "@opencode/core/job" +import { Mcp } from "@opencode/core/mcp/index" +import { Global } from "@opencode/util/global" +import { InstructionDiscovery } from "@opencode/core/instruction-discovery" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { LocationActivity } from "@opencode/core/location-activity" +import { ModelsDev } from "@opencode/core/models-dev" +import { SessionRestart } from "@opencode/core/session/execution/restart" +import { PluginUpdate } from "@opencode/core/plugin/update" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { WellKnown } from "@opencode/core/wellknown" +import { Workspace } from "@opencode/core/workspace" +import { Watcher } from "@opencode/core/filesystem/watcher" import { HttpRouter } from "effect/unstable/http" import { HttpApiBuilder } from "effect/unstable/httpapi" import { Context, Effect, Layer, Option } from "effect" @@ -147,7 +147,7 @@ function makeRoutes( const serviceLayer = options.simulation ? Layer.unwrap( Effect.gen(function* () { - const { simulationReplacements } = yield* Effect.promise(() => import("@opencode-ai/simulation/backend")) + const { simulationReplacements } = yield* Effect.promise(() => import("@opencode/simulation/backend")) const simulation = yield* simulationReplacements({ version: App.make(options.app).version }) return build([...overrides, ...simulation]) }), diff --git a/packages/server/src/server-info.ts b/packages/server/src/server-info.ts index 1f4f8c5afa7..278de0d8b38 100644 --- a/packages/server/src/server-info.ts +++ b/packages/server/src/server-info.ts @@ -5,7 +5,7 @@ import type { ServerOptions } from "./options" export class Service extends Context.Service< Service, { readonly urls: () => ReadonlyArray; readonly app: NonNullable } ->()("@opencode-ai/server/ServerInfo") {} +>()("@opencode/server/ServerInfo") {} export function layer(urls: () => ReadonlyArray, app: ServerOptions["app"] = {}) { return Layer.succeed(Service, Service.of({ urls, app })) diff --git a/packages/server/src/workerd.ts b/packages/server/src/workerd.ts index 2d2e23f865e..77fc1daef03 100644 --- a/packages/server/src/workerd.ts +++ b/packages/server/src/workerd.ts @@ -1,18 +1,18 @@ export * as ServerWorkerd from "./workerd" import { Effect, Layer } from "effect" -import { ConfigPluginSource } from "@opencode-ai/core/config/plugin/source" -import { Database } from "@opencode-ai/core/database/database" -import { sqliteLayer } from "@opencode-ai/core/database/sqlite.workerd" -import type { DurableObjectStorage } from "@opencode-ai/core/database/sqlite.workerd" -import { EnvironmentUnavailable } from "@opencode-ai/core/environment/unavailable" -import { FileSystem } from "@opencode-ai/core/filesystem" -import { FileSystemSearch } from "@opencode-ai/core/filesystem/search" -import { Pty } from "@opencode-ai/core/pty" -import { Snapshot } from "@opencode-ai/core/snapshot" -import { Vcs } from "@opencode-ai/core/vcs" -import { CrossSpawnSpawner } from "@opencode-ai/util/cross-spawn-spawner" -import type { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { ConfigPluginSource } from "@opencode/core/config/plugin/source" +import { Database } from "@opencode/core/database/database" +import { sqliteLayer } from "@opencode/core/database/sqlite.workerd" +import type { DurableObjectStorage } from "@opencode/core/database/sqlite.workerd" +import { EnvironmentUnavailable } from "@opencode/core/environment/unavailable" +import { FileSystem } from "@opencode/core/filesystem" +import { FileSystemSearch } from "@opencode/core/filesystem/search" +import { Pty } from "@opencode/core/pty" +import { Snapshot } from "@opencode/core/snapshot" +import { Vcs } from "@opencode/core/vcs" +import { CrossSpawnSpawner } from "@opencode/util/cross-spawn-spawner" +import type { LayerNode } from "@opencode/util/effect/layer-node" import { ServerFetch } from "./fetch" import type { ServerOptions } from "./options" diff --git a/packages/server/test/auth.test.ts b/packages/server/test/auth.test.ts index 1000103a42b..7a94f23e48d 100644 --- a/packages/server/test/auth.test.ts +++ b/packages/server/test/auth.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { ServerAuth } from "@opencode-ai/server/auth" +import { ServerAuth } from "@opencode/server/auth" import { Option, Redacted } from "effect" test("accepts only the fixed opencode username", () => { diff --git a/packages/server/test/config.test.ts b/packages/server/test/config.test.ts index 01086b2394b..fc4301e0782 100644 --- a/packages/server/test/config.test.ts +++ b/packages/server/test/config.test.ts @@ -1,12 +1,12 @@ import fs from "node:fs/promises" import path from "node:path" import { expect } from "bun:test" -import { Config } from "@opencode-ai/schema/config" +import { Config } from "@opencode/schema/config" import { Effect, Schema } from "effect" import { tmpdir } from "../../core/test/fixture/tmpdir" import { it } from "../../core/test/lib/effect" import { startServer } from "./fixture/server" -import { AbsolutePath } from "@opencode-ai/schema/schema" +import { AbsolutePath } from "@opencode/schema/schema" it.live("returns ordered config entries for the requested directory", () => Effect.gen(function* () { diff --git a/packages/server/test/event-feed.test.ts b/packages/server/test/event-feed.test.ts index e7443b01222..861546f2d76 100644 --- a/packages/server/test/event-feed.test.ts +++ b/packages/server/test/event-feed.test.ts @@ -1,9 +1,9 @@ import { describe, expect, test } from "bun:test" -import { Agent } from "@opencode-ai/core/agent" -import { Bus } from "@opencode-ai/core/bus" -import { Credential } from "@opencode-ai/schema/credential" -import { Event } from "@opencode-ai/schema/event" -import { IntegrationID } from "@opencode-ai/schema/integration-id" +import { Agent } from "@opencode/core/agent" +import { Bus } from "@opencode/core/bus" +import { Credential } from "@opencode/schema/credential" +import { Event } from "@opencode/schema/event" +import { IntegrationID } from "@opencode/schema/integration-id" import { Deferred, Effect, Exit, Fiber, Option, Schema, Stream } from "effect" import { it } from "../../core/test/lib/effect" import { EventFeed } from "../src/event-feed" diff --git a/packages/server/test/fetch.test.ts b/packages/server/test/fetch.test.ts index 5f34a1ee9ff..e6df1b5dca8 100644 --- a/packages/server/test/fetch.test.ts +++ b/packages/server/test/fetch.test.ts @@ -1,10 +1,10 @@ import { expect } from "bun:test" import { createServer } from "node:http" -import { makeMemoryDriver } from "@opencode-ai/core/environment/index" -import { Workspace } from "@opencode-ai/core/workspace" -import { WorkspaceDriver } from "@opencode-ai/core/workspace/driver" -import { Agent } from "@opencode-ai/schema/agent" -import { Integration } from "@opencode-ai/schema/integration" +import { makeMemoryDriver } from "@opencode/core/environment/index" +import { Workspace } from "@opencode/core/workspace" +import { WorkspaceDriver } from "@opencode/core/workspace/driver" +import { Agent } from "@opencode/schema/agent" +import { Integration } from "@opencode/schema/integration" import { Effect, Schedule, Schema } from "effect" import { tmpdir } from "../../core/test/fixture/tmpdir" import { it } from "../../core/test/lib/effect" diff --git a/packages/server/test/fixture/worktree-delegate/index.ts b/packages/server/test/fixture/worktree-delegate/index.ts index d56342b8ce9..32a75ca11e8 100644 --- a/packages/server/test/fixture/worktree-delegate/index.ts +++ b/packages/server/test/fixture/worktree-delegate/index.ts @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "test.worktree-delegate", diff --git a/packages/server/test/fixture/worktree-plugin/index.ts b/packages/server/test/fixture/worktree-plugin/index.ts index b49b89a8c89..542a5e74429 100644 --- a/packages/server/test/fixture/worktree-plugin/index.ts +++ b/packages/server/test/fixture/worktree-plugin/index.ts @@ -1,4 +1,4 @@ -import { Plugin, Worktree } from "@opencode-ai/plugin" +import { Plugin, Worktree } from "@opencode/plugin" export default Plugin.define({ id: "test.worktree", diff --git a/packages/server/test/generate.test.ts b/packages/server/test/generate.test.ts index cb0a8f57bbf..c0983e8353b 100644 --- a/packages/server/test/generate.test.ts +++ b/packages/server/test/generate.test.ts @@ -1,9 +1,9 @@ import fs from "node:fs/promises" import path from "node:path" import { expect } from "bun:test" -import { Config } from "@opencode-ai/core/config" -import { Generate } from "@opencode-ai/core/generate" -import { makeLocationNode } from "@opencode-ai/util/effect/app-node" +import { Config } from "@opencode/core/config" +import { Generate } from "@opencode/core/generate" +import { makeLocationNode } from "@opencode/util/effect/app-node" import { Effect, Layer, Predicate } from "effect" import { tmpdir } from "../../core/test/fixture/tmpdir" import { it } from "../../core/test/lib/effect" diff --git a/packages/server/test/handler-policy.test.ts b/packages/server/test/handler-policy.test.ts index 89d87ccac68..d5beac089f2 100644 --- a/packages/server/test/handler-policy.test.ts +++ b/packages/server/test/handler-policy.test.ts @@ -1,6 +1,6 @@ -import { Session } from "@opencode-ai/core/session" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { SessionNotFoundError, UnknownError } from "@opencode-ai/protocol/errors" +import { Session } from "@opencode/core/session" +import { SessionMessage } from "@opencode/core/session/message" +import { SessionNotFoundError, UnknownError } from "@opencode/protocol/errors" import { expect, test } from "bun:test" import { Effect, Logger, References } from "effect" import { failedMessageDecode, missingSession } from "../src/handlers/session-error" diff --git a/packages/server/test/options.test.ts b/packages/server/test/options.test.ts index d41327b7121..1da08f031b9 100644 --- a/packages/server/test/options.test.ts +++ b/packages/server/test/options.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { ServerOptions } from "@opencode-ai/server/options" +import { ServerOptions } from "@opencode/server/options" import { Option, Schema } from "effect" const decode = Schema.decodeUnknownOption(ServerOptions) diff --git a/packages/server/test/persistent-pty.test.ts b/packages/server/test/persistent-pty.test.ts index 6a1708a67ac..1d4b85fe9aa 100644 --- a/packages/server/test/persistent-pty.test.ts +++ b/packages/server/test/persistent-pty.test.ts @@ -3,8 +3,8 @@ import fs from "node:fs/promises" import os from "node:os" import path from "node:path" import { expect } from "bun:test" -import { PersistentPty } from "@opencode-ai/schema/persistent-pty" -import { Session } from "@opencode-ai/schema/session" +import { PersistentPty } from "@opencode/schema/persistent-pty" +import { Session } from "@opencode/schema/session" import { Effect, Exit, Schema, Scope } from "effect" import { HttpServer } from "effect/unstable/http" import { OpenCode } from "../../client/src/promise/index" diff --git a/packages/server/test/plugin-activation.test.ts b/packages/server/test/plugin-activation.test.ts index 382ea6b519f..c278d2a1a48 100644 --- a/packages/server/test/plugin-activation.test.ts +++ b/packages/server/test/plugin-activation.test.ts @@ -1,8 +1,8 @@ import { expect } from "bun:test" import { mkdir } from "node:fs/promises" import path from "node:path" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { Plugin } from "@opencode-ai/plugin/effect" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { Plugin } from "@opencode/plugin/effect" import { Context, Deferred, Effect, Fiber, Layer } from "effect" import { HttpEffect, HttpRouter, HttpServer } from "effect/unstable/http" import { tmpdirScoped } from "../../core/test/fixture/tmpdir" diff --git a/packages/server/test/provider.test.ts b/packages/server/test/provider.test.ts index 3323078c186..b044fe57c8f 100644 --- a/packages/server/test/provider.test.ts +++ b/packages/server/test/provider.test.ts @@ -1,6 +1,6 @@ import { expect } from "bun:test" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { Plugin } from "@opencode-ai/plugin/effect" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { Plugin } from "@opencode/plugin/effect" import { Context, Deferred, Effect, Fiber, Layer } from "effect" import { HttpEffect, HttpRouter, HttpServer } from "effect/unstable/http" import { tmpdirScoped } from "../../core/test/fixture/tmpdir" @@ -27,7 +27,7 @@ it.live( providers: { custom: { name: "Configured Custom Provider", - package: "@opencode-ai/ai/providers/openai-compatible", + package: "@opencode/ai/providers/openai-compatible", settings: { apiKey: "secret" }, models: { chat: {} }, }, @@ -86,7 +86,7 @@ it.live( id: "custom", name: "Configured Custom Provider", activation: "enabled", - package: "@opencode-ai/ai/providers/openai-compatible", + package: "@opencode/ai/providers/openai-compatible", settings: { apiKey: "secret" }, } const configuredList = yield* request("GET", "/api/provider").pipe(Effect.timeout("2 seconds")) diff --git a/packages/server/test/rpc-handler-errors.test.ts b/packages/server/test/rpc-handler-errors.test.ts index 51f6c5bd1b2..c99377ef67e 100644 --- a/packages/server/test/rpc-handler-errors.test.ts +++ b/packages/server/test/rpc-handler-errors.test.ts @@ -1,7 +1,7 @@ import { expect } from "bun:test" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Rpc } from "@opencode-ai/schema/rpc" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { define } from "@opencode/plugin/effect/plugin" +import { Rpc } from "@opencode/schema/rpc" import { Context, Effect, Layer, Schema } from "effect" import { HttpEffect, HttpRouter, HttpServer } from "effect/unstable/http" import { tmpdirScoped } from "../../core/test/fixture/tmpdir" diff --git a/packages/server/test/session-import.test.ts b/packages/server/test/session-import.test.ts index 67b12cf4896..23d14746c20 100644 --- a/packages/server/test/session-import.test.ts +++ b/packages/server/test/session-import.test.ts @@ -1,5 +1,5 @@ import { expect } from "bun:test" -import { Session } from "@opencode-ai/schema/session" +import { Session } from "@opencode/schema/session" import { Effect, Schema } from "effect" import { it } from "../../core/test/lib/effect" import { ServerFetch } from "../src/fetch" diff --git a/packages/server/test/session-instances.test.ts b/packages/server/test/session-instances.test.ts index e23b973057e..5da4e646097 100644 --- a/packages/server/test/session-instances.test.ts +++ b/packages/server/test/session-instances.test.ts @@ -1,24 +1,24 @@ import { expect } from "bun:test" -import { App } from "@opencode-ai/core/app" -import { Bus } from "@opencode-ai/core/bus" -import { Database } from "@opencode-ai/core/database/database" -import { llmClient } from "@opencode-ai/core/effect/app-node-platform" -import { Watcher } from "@opencode-ai/core/filesystem/watcher" -import { Form } from "@opencode-ai/core/form" -import { Instance } from "@opencode-ai/core/instance" -import { LocationServiceMap } from "@opencode-ai/core/location-service-map" -import { ModelsDev } from "@opencode-ai/core/models-dev" -import { Permission } from "@opencode-ai/core/permission" -import { Plugin } from "@opencode-ai/core/plugin" -import { Session } from "@opencode-ai/core/session" -import { SessionRunnerModel } from "@opencode-ai/core/session/runner/model" -import { define } from "@opencode-ai/plugin/effect/plugin" -import { Agent } from "@opencode-ai/schema/agent" -import { Location } from "@opencode-ai/schema/location" -import { AbsolutePath } from "@opencode-ai/schema/schema" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { Global } from "@opencode-ai/util/global" +import { App } from "@opencode/core/app" +import { Bus } from "@opencode/core/bus" +import { Database } from "@opencode/core/database/database" +import { llmClient } from "@opencode/core/effect/app-node-platform" +import { Watcher } from "@opencode/core/filesystem/watcher" +import { Form } from "@opencode/core/form" +import { Instance } from "@opencode/core/instance" +import { LocationServiceMap } from "@opencode/core/location-service-map" +import { ModelsDev } from "@opencode/core/models-dev" +import { Permission } from "@opencode/core/permission" +import { Plugin } from "@opencode/core/plugin" +import { Session } from "@opencode/core/session" +import { SessionRunnerModel } from "@opencode/core/session/runner/model" +import { define } from "@opencode/plugin/effect/plugin" +import { Agent } from "@opencode/schema/agent" +import { Location } from "@opencode/schema/location" +import { AbsolutePath } from "@opencode/schema/schema" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { Global } from "@opencode/util/global" import { Context, Duration, Effect, Layer, LayerMap, RcMap, Schema } from "effect" import { HttpEffect, HttpRouter, HttpServer } from "effect/unstable/http" import { LanguageModel, LLMClient } from "../../ai/src" diff --git a/packages/server/test/session-message-update.test.ts b/packages/server/test/session-message-update.test.ts index 91f4c64c722..0e5d95f5744 100644 --- a/packages/server/test/session-message-update.test.ts +++ b/packages/server/test/session-message-update.test.ts @@ -1,14 +1,14 @@ import { expect, setDefaultTimeout } from "bun:test" -import { Agent } from "@opencode-ai/core/agent" -import { Bus } from "@opencode-ai/core/bus" -import { Model } from "@opencode-ai/core/model" -import { Provider } from "@opencode-ai/core/provider" -import { Session } from "@opencode-ai/core/session" -import { SessionEvent } from "@opencode-ai/core/session/event" -import { SessionExecution } from "@opencode-ai/core/session/execution" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { Money } from "@opencode-ai/schema/money" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" +import { Agent } from "@opencode/core/agent" +import { Bus } from "@opencode/core/bus" +import { Model } from "@opencode/core/model" +import { Provider } from "@opencode/core/provider" +import { Session } from "@opencode/core/session" +import { SessionEvent } from "@opencode/core/session/event" +import { SessionExecution } from "@opencode/core/session/execution" +import { SessionMessage } from "@opencode/core/session/message" +import { Money } from "@opencode/schema/money" +import { makeGlobalNode } from "@opencode/util/effect/app-node" import { Effect, Layer } from "effect" import { it } from "../../core/test/lib/effect" import { ServerFetch } from "../src/fetch" diff --git a/packages/server/test/vcs.test.ts b/packages/server/test/vcs.test.ts index 11ad26d1b84..735b1460927 100644 --- a/packages/server/test/vcs.test.ts +++ b/packages/server/test/vcs.test.ts @@ -1,7 +1,7 @@ import path from "node:path" import { $ } from "bun" import { expect } from "bun:test" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" +import { SdkPlugins } from "@opencode/core/plugin/sdk" import { Effect, Layer, Schedule } from "effect" import { tmpdir } from "../../core/test/fixture/tmpdir" import { it } from "../../core/test/lib/effect" diff --git a/packages/server/test/worktree.test.ts b/packages/server/test/worktree.test.ts index 9244183a369..bc237cf5267 100644 --- a/packages/server/test/worktree.test.ts +++ b/packages/server/test/worktree.test.ts @@ -6,7 +6,7 @@ import { Effect } from "effect" import { tmpdir } from "../../core/test/fixture/tmpdir" import { it } from "../../core/test/lib/effect" import { startServer } from "./fixture/server" -import { OpenCode } from "@opencode-ai/client" +import { OpenCode } from "@opencode/client" import { initRepo } from "../../core/test/fixture/git" it.live( diff --git a/packages/session-ui/component-tests/markdown.fixture.tsx b/packages/session-ui/component-tests/markdown.fixture.tsx index 0c1a4c46fd1..c47474aaa70 100644 --- a/packages/session-ui/component-tests/markdown.fixture.tsx +++ b/packages/session-ui/component-tests/markdown.fixture.tsx @@ -3,7 +3,7 @@ import { render } from "solid-js/web" import { Markdown } from "../src/components/markdown" import { preloadMarkdown } from "../src/components/markdown-cache" import { MarkdownProvider } from "../src/context/markdown" -import { OpenCode } from "@opencode-ai/client/promise" +import { OpenCode } from "@opencode/client/promise" import { readLocalImage } from "../../app/src/runtime/server/image" export { diff --git a/packages/session-ui/component-tests/read-image.fixture.tsx b/packages/session-ui/component-tests/read-image.fixture.tsx index 293ee5f90ea..4b503a8d4a6 100644 --- a/packages/session-ui/component-tests/read-image.fixture.tsx +++ b/packages/session-ui/component-tests/read-image.fixture.tsx @@ -1,7 +1,7 @@ import { createMemo, Show } from "solid-js" import { createStore } from "solid-js/store" import { render } from "solid-js/web" -import { OpenCode } from "@opencode-ai/client/promise" +import { OpenCode } from "@opencode/client/promise" import { readLocalImage } from "../../app/src/runtime/server/image" import { MarkdownProvider } from "../src/context/markdown" import { CurrentSessionProviders } from "../src/storybook/current-session-story" diff --git a/packages/session-ui/package.json b/packages/session-ui/package.json index 7b7c8692112..d2970d81a62 100644 --- a/packages/session-ui/package.json +++ b/packages/session-ui/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/session-ui", + "name": "@opencode/session-ui", "version": "1.18.15", "private": true, "type": "module", @@ -63,9 +63,9 @@ }, "dependencies": { "@kobalte/core": "catalog:", - "@opencode-ai/client": "workspace:*", - "@opencode-ai/ui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/ui": "workspace:*", + "@opencode/util": "workspace:*", "@pierre/diffs": "catalog:", "@shikijs/stream": "catalog:", "@solid-primitives/event-listener": "catalog:", diff --git a/packages/session-ui/performance/highlighting/build.ts b/packages/session-ui/performance/highlighting/build.ts index 4565941cc5d..b87e1f4f1b3 100644 --- a/packages/session-ui/performance/highlighting/build.ts +++ b/packages/session-ui/performance/highlighting/build.ts @@ -6,9 +6,9 @@ import { createHash } from "node:crypto" const outDir = process.env.HIGHLIGHT_BUNDLE if (!outDir) throw new Error("Set HIGHLIGHT_BUNDLE to an external artifact directory") -const ui = realpathSync(path.resolve(import.meta.dir, "../../node_modules/@opencode-ai/ui")) +const ui = realpathSync(path.resolve(import.meta.dir, "../../node_modules/@opencode/ui")) if (ui !== realpathSync(path.resolve(import.meta.dir, "../../../ui"))) throw new Error(`Wrong workspace source: ${ui}`) -const util = realpathSync(path.resolve(import.meta.dir, "../../node_modules/@opencode-ai/util")) +const util = realpathSync(path.resolve(import.meta.dir, "../../node_modules/@opencode/util")) if (util !== realpathSync(path.resolve(import.meta.dir, "../../../util"))) throw new Error(`Wrong workspace source: ${util}`) await build({ configFile: false, diff --git a/packages/session-ui/performance/markdown-lifetime/fixture.tsx b/packages/session-ui/performance/markdown-lifetime/fixture.tsx index 66e51338519..3f5d9a3c120 100644 --- a/packages/session-ui/performance/markdown-lifetime/fixture.tsx +++ b/packages/session-ui/performance/markdown-lifetime/fixture.tsx @@ -3,8 +3,8 @@ import { render } from "solid-js/web" import { Markdown } from "../../src/components/markdown" import { getCachedMarkdown } from "../../src/components/markdown-cache" import type { MarkdownWorkerRequest, MarkdownWorkerResponse } from "../../src/components/markdown-worker-protocol" -import "@opencode-ai/ui/styles" -import "@opencode-ai/ui/styles/tokens" +import "@opencode/ui/styles" +import "@opencode/ui/styles/tokens" import "../../src/components/markdown.css" const scenario = new URLSearchParams(location.search).get("scenario") ?? "mounted" diff --git a/packages/session-ui/src/actions.ts b/packages/session-ui/src/actions.ts index b69ef5cb092..493f967c9c7 100644 --- a/packages/session-ui/src/actions.ts +++ b/packages/session-ui/src/actions.ts @@ -1,4 +1,4 @@ -import type { PromptFileAttachment } from "@opencode-ai/client/promise" +import type { PromptFileAttachment } from "@opencode/client/promise" export type SessionUserComment = { path: string diff --git a/packages/session-ui/src/components/apply-patch-file.ts b/packages/session-ui/src/components/apply-patch-file.ts index dc3da09406e..317c410e6b8 100644 --- a/packages/session-ui/src/components/apply-patch-file.ts +++ b/packages/session-ui/src/components/apply-patch-file.ts @@ -1,4 +1,4 @@ -import type { FileDiffInfo } from "@opencode-ai/client/promise" +import type { FileDiffInfo } from "@opencode/client/promise" import { completePatchContents, normalize, type ViewDiff } from "./session-diff" type Kind = "add" | "update" | "delete" diff --git a/packages/session-ui/src/components/basic-tool.tsx b/packages/session-ui/src/components/basic-tool.tsx index 0026ecdc535..db6e641465e 100644 --- a/packages/session-ui/src/components/basic-tool.tsx +++ b/packages/session-ui/src/components/basic-tool.tsx @@ -12,11 +12,11 @@ import { type JSX, } from "solid-js" import { animate, type AnimationPlaybackControls } from "motion" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { useI18n } from "@opencode/ui/context/i18n" import { createStore } from "solid-js/store" -import { Collapsible } from "@opencode-ai/ui/collapsible" -import type { IconProps } from "@opencode-ai/ui/icon" -import { TextShimmer } from "@opencode-ai/ui/text-shimmer" +import { Collapsible } from "@opencode/ui/collapsible" +import type { IconProps } from "@opencode/ui/icon" +import { TextShimmer } from "@opencode/ui/text-shimmer" export type TriggerTitle = { title: string diff --git a/packages/session-ui/src/components/dock-prompt.stories.tsx b/packages/session-ui/src/components/dock-prompt.stories.tsx index 93400c9c6b7..0fdae7c1950 100644 --- a/packages/session-ui/src/components/dock-prompt.stories.tsx +++ b/packages/session-ui/src/components/dock-prompt.stories.tsx @@ -1,4 +1,4 @@ -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" import { DockPrompt } from "./dock-prompt" export default { diff --git a/packages/session-ui/src/components/dock-prompt.tsx b/packages/session-ui/src/components/dock-prompt.tsx index 75563e47b86..3cf3d897e13 100644 --- a/packages/session-ui/src/components/dock-prompt.tsx +++ b/packages/session-ui/src/components/dock-prompt.tsx @@ -1,5 +1,5 @@ import type { JSX } from "solid-js" -import { DockShell, DockTray } from "@opencode-ai/ui/dock-surface" +import { DockShell, DockTray } from "@opencode/ui/dock-surface" export function DockPrompt(props: { kind: "question" | "permission" diff --git a/packages/session-ui/src/components/file-media.tsx b/packages/session-ui/src/components/file-media.tsx index 4ffe03ff963..216873f1747 100644 --- a/packages/session-ui/src/components/file-media.tsx +++ b/packages/session-ui/src/components/file-media.tsx @@ -1,7 +1,7 @@ import type { PresentationFileContent } from "../file-presentation" import { createEffect, createMemo, Match, on, onCleanup, Show, Switch, untrack, type JSX } from "solid-js" import { createStore } from "solid-js/store" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { useI18n } from "@opencode/ui/context/i18n" import { dataUrlFromMediaValue, hasMediaValue, diff --git a/packages/session-ui/src/components/file-search.tsx b/packages/session-ui/src/components/file-search.tsx index e00ea929839..384ae8e216b 100644 --- a/packages/session-ui/src/components/file-search.tsx +++ b/packages/session-ui/src/components/file-search.tsx @@ -1,6 +1,6 @@ import { Portal } from "solid-js/web" -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { Icon } from "@opencode-ai/ui/icon" +import { useI18n } from "@opencode/ui/context/i18n" +import { Icon } from "@opencode/ui/icon" export function FileSearchBar(props: { pos: { top: number; right: number } diff --git a/packages/session-ui/src/components/file-ssr.tsx b/packages/session-ui/src/components/file-ssr.tsx index 68b5568edc6..f192dbcfb42 100644 --- a/packages/session-ui/src/components/file-ssr.tsx +++ b/packages/session-ui/src/components/file-ssr.tsx @@ -2,7 +2,7 @@ import { DIFFS_TAG_NAME, FileDiff, VirtualizedFileDiff } from "@pierre/diffs" import { type PreloadFileDiffResult, type PreloadMultiFileDiffResult } from "@pierre/diffs/ssr" import { createEffect, onCleanup, onMount, Show, splitProps } from "solid-js" import { Dynamic, isServer } from "solid-js/web" -import { useWorkerPool } from "@opencode-ai/ui/context/worker-pool" +import { useWorkerPool } from "@opencode/ui/context/worker-pool" import { createDefaultOptions, styleVariables } from "../pierre" import { markCommentedDiffLines } from "../pierre/commented-lines" import { fixDiffSelection } from "../pierre/diff-selection" diff --git a/packages/session-ui/src/components/file.tsx b/packages/session-ui/src/components/file.tsx index 1c4fafc096d..64c9f567942 100644 --- a/packages/session-ui/src/components/file.tsx +++ b/packages/session-ui/src/components/file.tsx @@ -1,4 +1,4 @@ -import { sampledChecksum } from "@opencode-ai/util/encode" +import { sampledChecksum } from "@opencode/util/encode" import { areFilesEqual, areOptionsEqual, diff --git a/packages/session-ui/src/components/line-comment-annotations.tsx b/packages/session-ui/src/components/line-comment-annotations.tsx index c1040a6c381..5ba0ac36c6c 100644 --- a/packages/session-ui/src/components/line-comment-annotations.tsx +++ b/packages/session-ui/src/components/line-comment-annotations.tsx @@ -2,7 +2,7 @@ import { type DiffLineAnnotation, type SelectedLineRange } from "@pierre/diffs" import { createEffect, createMemo, createSignal, onCleanup, Show, type Accessor, type JSX } from "solid-js" import { createStore } from "solid-js/store" import { render as renderSolid } from "solid-js/web" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { useI18n } from "@opencode/ui/context/i18n" import { createHoverCommentUtility } from "../pierre/comment-hover" import { cloneSelectedLineRange, formatSelectedLineLabel, lineInSelectedRange } from "../pierre/selection-bridge" import { LineComment, LineCommentEditor, type LineCommentEditorProps } from "./line-comment" diff --git a/packages/session-ui/src/components/line-comment.tsx b/packages/session-ui/src/components/line-comment.tsx index 3c47e56f443..6f4206770e0 100644 --- a/packages/session-ui/src/components/line-comment.tsx +++ b/packages/session-ui/src/components/line-comment.tsx @@ -1,11 +1,11 @@ -import { useFilteredList } from "@opencode-ai/ui/hooks" -import { getDirectory, getFilename } from "@opencode-ai/util/path" +import { useFilteredList } from "@opencode/ui/hooks" +import { getDirectory, getFilename } from "@opencode/util/path" import { createSignal, For, onMount, Show, splitProps, type JSX } from "solid-js" -import { Button } from "@opencode-ai/ui/button" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { Icon } from "@opencode-ai/ui/icon" +import { Button } from "@opencode/ui/button" +import { FileIcon } from "@opencode/ui/file-icon" +import { Icon } from "@opencode/ui/icon" import { installLineCommentStyles } from "./line-comment-styles" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { useI18n } from "@opencode/ui/context/i18n" installLineCommentStyles() diff --git a/packages/session-ui/src/components/markdown-cache.tsx b/packages/session-ui/src/components/markdown-cache.tsx index 1a8d587484f..454adc2e347 100644 --- a/packages/session-ui/src/components/markdown-cache.tsx +++ b/packages/session-ui/src/components/markdown-cache.tsx @@ -1,5 +1,5 @@ -import { checksum } from "@opencode-ai/util/encode" -import { parseSmallMarkdown } from "@opencode-ai/ui/context/marked-base" +import { checksum } from "@opencode/util/encode" +import { parseSmallMarkdown } from "@opencode/ui/context/marked-base" import DOMPurify from "dompurify" import { MarkdownWorkerDisposedError, parseMarkdown } from "./markdown-worker" import { localImagePath } from "./markdown-image" diff --git a/packages/session-ui/src/components/markdown-inline-code-kind.test.ts b/packages/session-ui/src/components/markdown-inline-code-kind.test.ts index e5cfa22c0fd..a3d8f3cc8f4 100644 --- a/packages/session-ui/src/components/markdown-inline-code-kind.test.ts +++ b/packages/session-ui/src/components/markdown-inline-code-kind.test.ts @@ -8,7 +8,7 @@ describe("inlineCodeKind", () => { ).toBeUndefined() expect(inlineCodeKind(``)).toBeUndefined() expect(inlineCodeKind(`from sync.data.form + sync.data.session.`)).toBeUndefined() - expect(inlineCodeKind(`@opencode-ai/app )`)).toBeUndefined() + expect(inlineCodeKind(`@opencode/app )`)).toBeUndefined() expect(inlineCodeKind(`sync.data.session`)).toBeUndefined() expect(inlineCodeKind(`window.api`)).toBeUndefined() expect(inlineCodeKind(`1.2`)).toBeUndefined() @@ -31,7 +31,7 @@ describe("inlineCodeKind", () => { expect(inlineCodeKind(`pnpm-lock.yaml`)).toBe("path") expect(inlineCodeKind(`packages/desktop-electron`)).toBe("path") expect(inlineCodeKind(`~/.config/opencode`)).toBe("path") - expect(inlineCodeKind(`@opencode-ai/app`)).toBe("path") + expect(inlineCodeKind(`@opencode/app`)).toBe("path") expect(inlineCodeKind(`session/status`)).toBe("path") }) diff --git a/packages/session-ui/src/components/markdown.stories.tsx b/packages/session-ui/src/components/markdown.stories.tsx index 7cb70ad5462..b1a175022d9 100644 --- a/packages/session-ui/src/components/markdown.stories.tsx +++ b/packages/session-ui/src/components/markdown.stories.tsx @@ -1,4 +1,4 @@ -import { markdown } from "@opencode-ai/ui/storybook/fixtures" +import { markdown } from "@opencode/ui/storybook/fixtures" import { createSignal, onCleanup } from "solid-js" import { Markdown } from "./markdown" diff --git a/packages/session-ui/src/components/markdown.tsx b/packages/session-ui/src/components/markdown.tsx index 3616215c21c..267a1e12017 100644 --- a/packages/session-ui/src/components/markdown.tsx +++ b/packages/session-ui/src/components/markdown.tsx @@ -1,5 +1,5 @@ -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { checksum } from "@opencode-ai/util/encode" +import { useI18n } from "@opencode/ui/context/i18n" +import { checksum } from "@opencode/util/encode" import { type ComponentProps, createEffect, @@ -11,9 +11,9 @@ import { splitProps, } from "solid-js" import { isServer, render } from "solid-js/web" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Tooltip } from "@opencode/ui/tooltip" import { canReusePendingBlock, completedProjection } from "./markdown-projection" import type { Block, Projection } from "./markdown-stream" import { diff --git a/packages/session-ui/src/components/markdown.worker.ts b/packages/session-ui/src/components/markdown.worker.ts index 7bdabd4f132..a12ec681f09 100644 --- a/packages/session-ui/src/components/markdown.worker.ts +++ b/packages/session-ui/src/components/markdown.worker.ts @@ -1,8 +1,8 @@ /// import { ShikiStreamTokenizer } from "@shikijs/stream" -import { createMarkdownParser } from "@opencode-ai/ui/context/marked-parser" -import { OpenCodeTheme } from "@opencode-ai/ui/context/marked-theme" +import { createMarkdownParser } from "@opencode/ui/context/marked-parser" +import { OpenCodeTheme } from "@opencode/ui/context/marked-theme" import { bundledLanguages, createHighlighter, diff --git a/packages/session-ui/src/components/message-file.ts b/packages/session-ui/src/components/message-file.ts index 120d2151095..21e4977fa81 100644 --- a/packages/session-ui/src/components/message-file.ts +++ b/packages/session-ui/src/components/message-file.ts @@ -1,5 +1,5 @@ import { bundledLanguagesInfo } from "shiki" -import { getFilename } from "@opencode-ai/util/path" +import { getFilename } from "@opencode/util/path" // language metadata only; grammars stay behind shiki's lazy imports const LANGUAGE_NAMES = new Map( diff --git a/packages/session-ui/src/components/message-nav.tsx b/packages/session-ui/src/components/message-nav.tsx index 70cdb6c652f..547d9946e42 100644 --- a/packages/session-ui/src/components/message-nav.tsx +++ b/packages/session-ui/src/components/message-nav.tsx @@ -1,7 +1,7 @@ -import type { FileDiffInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { FileDiffInfo, SessionMessageUser } from "@opencode/client/promise" import { HoverCard } from "@kobalte/core/hover-card" import { ComponentProps, For, Match, Show, createMemo, createSignal, splitProps, Switch } from "solid-js" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { useI18n } from "@opencode/ui/context/i18n" export function MessageNav( props: ComponentProps<"ul"> & { diff --git a/packages/session-ui/src/components/session-diff.ts b/packages/session-ui/src/components/session-diff.ts index 96cf1e062fc..d670671d66e 100644 --- a/packages/session-ui/src/components/session-diff.ts +++ b/packages/session-ui/src/components/session-diff.ts @@ -1,7 +1,7 @@ import { parseDiffFromFile, parsePatchFiles, type FileDiffMetadata } from "@pierre/diffs" import { parsePatch } from "diff" -import { checksum } from "@opencode-ai/util/encode" -import type { FileDiffInfo } from "@opencode-ai/client/promise" +import { checksum } from "@opencode/util/encode" +import type { FileDiffInfo } from "@opencode/client/promise" import type { PresentationFileDiff } from "../file-presentation" type LegacyDiff = { diff --git a/packages/session-ui/src/components/session-error.tsx b/packages/session-ui/src/components/session-error.tsx index c4414a627c0..4ab3941e8db 100644 --- a/packages/session-ui/src/components/session-error.tsx +++ b/packages/session-ui/src/components/session-error.tsx @@ -1,6 +1,6 @@ import { createMemo, Show } from "solid-js" -import { Card } from "@opencode-ai/ui/card" -import { Icon } from "@opencode-ai/ui/icon" +import { Card } from "@opencode/ui/card" +import { Icon } from "@opencode/ui/icon" export function SessionErrorMessage(props: { message: string }) { const content = createMemo(() => { diff --git a/packages/session-ui/src/components/session-retry.tsx b/packages/session-ui/src/components/session-retry.tsx index 13605e2bfa6..f8f36910d80 100644 --- a/packages/session-ui/src/components/session-retry.tsx +++ b/packages/session-ui/src/components/session-retry.tsx @@ -1,10 +1,10 @@ import { createEffect, createMemo, createSignal, on, onCleanup, Show } from "solid-js" -import type { SessionStatus } from "@opencode-ai/client/promise" -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { Card } from "@opencode-ai/ui/card" -import { Icon } from "@opencode-ai/ui/icon" -import { TextShimmer } from "@opencode-ai/ui/text-shimmer" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import type { SessionStatus } from "@opencode/client/promise" +import { useI18n } from "@opencode/ui/context/i18n" +import { Card } from "@opencode/ui/card" +import { Icon } from "@opencode/ui/icon" +import { TextShimmer } from "@opencode/ui/text-shimmer" +import { Tooltip } from "@opencode/ui/tooltip" import { SessionErrorMessage } from "./session-error" export function SessionRetry(props: { status: SessionStatus; show?: boolean }) { diff --git a/packages/session-ui/src/components/session-review.tsx b/packages/session-ui/src/components/session-review.tsx index b40ffe7fde4..f3ce2cc067b 100644 --- a/packages/session-ui/src/components/session-review.tsx +++ b/packages/session-ui/src/components/session-review.tsx @@ -1,21 +1,21 @@ -import { Accordion } from "@opencode-ai/ui/accordion" -import { Button } from "@opencode-ai/ui/button" -import { Menu } from "@opencode-ai/ui/menu" -import { SegmentedControl, SegmentedControlItem } from "@opencode-ai/ui/segmented-control" -import { DiffChanges } from "@opencode-ai/ui/diff-changes" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { StickyAccordionHeader } from "@opencode-ai/ui/sticky-accordion-header" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { ScrollView } from "@opencode-ai/ui/scroll-view" -import { useFileComponent } from "@opencode-ai/ui/context/file" -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { getDirectory, getFilename } from "@opencode-ai/util/path" -import { checksum } from "@opencode-ai/util/encode" +import { Accordion } from "@opencode/ui/accordion" +import { Button } from "@opencode/ui/button" +import { Menu } from "@opencode/ui/menu" +import { SegmentedControl, SegmentedControlItem } from "@opencode/ui/segmented-control" +import { DiffChanges } from "@opencode/ui/diff-changes" +import { FileIcon } from "@opencode/ui/file-icon" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { StickyAccordionHeader } from "@opencode/ui/sticky-accordion-header" +import { Tooltip } from "@opencode/ui/tooltip" +import { ScrollView } from "@opencode/ui/scroll-view" +import { useFileComponent } from "@opencode/ui/context/file" +import { useI18n } from "@opencode/ui/context/i18n" +import { getDirectory, getFilename } from "@opencode/util/path" +import { checksum } from "@opencode/util/encode" import { createEffect, createMemo, For, Match, onCleanup, Show, Switch, untrack, type JSX } from "solid-js" import { createStore } from "solid-js/store" -import type { FileDiffInfo } from "@opencode-ai/client/promise" +import type { FileDiffInfo } from "@opencode/client/promise" import type { PresentationFileContent, PresentationFileDiff } from "../file-presentation" import { PreloadMultiFileDiffResult } from "@pierre/diffs/ssr" import { type SelectedLineRange } from "@pierre/diffs" diff --git a/packages/session-ui/src/components/timeline-separator.tsx b/packages/session-ui/src/components/timeline-separator.tsx index d6bdef894f2..dfe1d0a5825 100644 --- a/packages/session-ui/src/components/timeline-separator.tsx +++ b/packages/session-ui/src/components/timeline-separator.tsx @@ -1,4 +1,4 @@ -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { Show } from "solid-js" export function TimelineSeparator(props: { label: string; providerID?: string; variant?: string }) { diff --git a/packages/session-ui/src/components/tool-count-label.tsx b/packages/session-ui/src/components/tool-count-label.tsx index c1281e17a30..d6a7d05a778 100644 --- a/packages/session-ui/src/components/tool-count-label.tsx +++ b/packages/session-ui/src/components/tool-count-label.tsx @@ -1,6 +1,6 @@ import { createMemo } from "solid-js" -import { AnimatedNumber } from "@opencode-ai/ui/animated-number" -import { pluralCategory, pluralKey, useI18n, type UiI18nPluralKey } from "@opencode-ai/ui/context/i18n" +import { AnimatedNumber } from "@opencode/ui/animated-number" +import { pluralCategory, pluralKey, useI18n, type UiI18nPluralKey } from "@opencode/ui/context/i18n" function split(text: string) { const match = /{{\s*count\s*}}/.exec(text) diff --git a/packages/session-ui/src/components/tool-count-summary.stories.tsx b/packages/session-ui/src/components/tool-count-summary.stories.tsx index 3f4636a9166..0b10c8b8ecd 100644 --- a/packages/session-ui/src/components/tool-count-summary.stories.tsx +++ b/packages/session-ui/src/components/tool-count-summary.stories.tsx @@ -1,4 +1,4 @@ -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" import { createStore } from "solid-js/store" import { AnimatedCountList, type CountItem } from "./tool-count-summary" import { ToolStatusTitle } from "./tool-status-title" diff --git a/packages/session-ui/src/components/tool-count-summary.tsx b/packages/session-ui/src/components/tool-count-summary.tsx index 407dcbc1bdd..50897dfa265 100644 --- a/packages/session-ui/src/components/tool-count-summary.tsx +++ b/packages/session-ui/src/components/tool-count-summary.tsx @@ -1,5 +1,5 @@ import { Index, createMemo } from "solid-js" -import type { UiI18nPluralKey } from "@opencode-ai/ui/context" +import type { UiI18nPluralKey } from "@opencode/ui/context" import { AnimatedCountLabel } from "./tool-count-label" export type CountItem = { diff --git a/packages/session-ui/src/components/tool-error-card.tsx b/packages/session-ui/src/components/tool-error-card.tsx index 5f995bca263..80bf8ab16c5 100644 --- a/packages/session-ui/src/components/tool-error-card.tsx +++ b/packages/session-ui/src/components/tool-error-card.tsx @@ -1,11 +1,11 @@ import { type ComponentProps, createMemo, Show, splitProps } from "solid-js" import { createStore } from "solid-js/store" -import { Card, CardDescription } from "@opencode-ai/ui/card" -import { Collapsible } from "@opencode-ai/ui/collapsible" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { Card, CardDescription } from "@opencode/ui/card" +import { Collapsible } from "@opencode/ui/collapsible" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Tooltip } from "@opencode/ui/tooltip" +import { useI18n } from "@opencode/ui/context/i18n" export interface ToolErrorCardProps extends Omit, "children" | "variant"> { tool: string diff --git a/packages/session-ui/src/components/tool-status-title.tsx b/packages/session-ui/src/components/tool-status-title.tsx index ef9ef6da61f..694077f44ef 100644 --- a/packages/session-ui/src/components/tool-status-title.tsx +++ b/packages/session-ui/src/components/tool-status-title.tsx @@ -1,6 +1,6 @@ import { Show, createEffect, createMemo, on, onCleanup } from "solid-js" import { createStore } from "solid-js/store" -import { TextShimmer } from "@opencode-ai/ui/text-shimmer" +import { TextShimmer } from "@opencode/ui/text-shimmer" function common(active: string, done: string) { const a = Array.from(active) diff --git a/packages/session-ui/src/context/data.tsx b/packages/session-ui/src/context/data.tsx index 2d8378ef82d..d4343b3650a 100644 --- a/packages/session-ui/src/context/data.tsx +++ b/packages/session-ui/src/context/data.tsx @@ -4,8 +4,8 @@ import type { SessionStatus, ShellOutputInput, ShellOutputOutput, -} from "@opencode-ai/client/promise" -import { createSimpleContext } from "@opencode-ai/ui/context" +} from "@opencode/client/promise" +import { createSimpleContext } from "@opencode/ui/context" import { PreloadMultiFileDiffResult } from "@pierre/diffs/ssr" export type SessionSummary = Pick diff --git a/packages/session-ui/src/document.ts b/packages/session-ui/src/document.ts index 8f0d6bef0a9..94798fbf2d2 100644 --- a/packages/session-ui/src/document.ts +++ b/packages/session-ui/src/document.ts @@ -1,4 +1,4 @@ -import type { FileDiffInfo, SessionMessageInfo, SessionStatus } from "@opencode-ai/client/promise" +import type { FileDiffInfo, SessionMessageInfo, SessionStatus } from "@opencode/client/promise" export type SessionDocument = { sessionID: string diff --git a/packages/session-ui/src/import-boundaries.test.ts b/packages/session-ui/src/import-boundaries.test.ts index 1b7274cda1c..1070e163b5e 100644 --- a/packages/session-ui/src/import-boundaries.test.ts +++ b/packages/session-ui/src/import-boundaries.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import { Effect } from "effect" -const forbidden = /["']@opencode-ai\/(?:core|sdk|server)(?:\/[^"']*)?["']/ +const forbidden = /["']@opencode\/(?:core|sdk|server)(?:\/[^"']*)?["']/ const oldSession = /(?:SessionV1|session-v1|legacy-message|legacy-message-values)/ describe("Session UI package boundaries", () => { @@ -13,9 +13,9 @@ describe("Session UI package boundaries", () => { const pkg = await Bun.file(new URL("../package.json", import.meta.url)).json() const dependencies = pkg.dependencies as Record - expect(dependencies["@opencode-ai/core"]).toBeUndefined() - expect(dependencies["@opencode-ai/sdk"]).toBeUndefined() - expect(dependencies["@opencode-ai/server"]).toBeUndefined() + expect(dependencies["@opencode/core"]).toBeUndefined() + expect(dependencies["@opencode/sdk"]).toBeUndefined() + expect(dependencies["@opencode/server"]).toBeUndefined() }) test("does not contain old Session message boundaries", async () => { diff --git a/packages/session-ui/src/message/comment-card.tsx b/packages/session-ui/src/message/comment-card.tsx index 232a691a088..5bae4c47ddc 100644 --- a/packages/session-ui/src/message/comment-card.tsx +++ b/packages/session-ui/src/message/comment-card.tsx @@ -1,7 +1,7 @@ import { createSignal, onCleanup, onMount, Show } from "solid-js" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { getFilenameTruncated } from "@opencode-ai/util/path" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { FileIcon } from "@opencode/ui/file-icon" +import { getFilenameTruncated } from "@opencode/util/path" +import { Tooltip } from "@opencode/ui/tooltip" import { AttachmentCard } from "./attachment-card" export function CommentCard(props: { diff --git a/packages/session-ui/src/message/current-message.test.ts b/packages/session-ui/src/message/current-message.test.ts index c94f7c724a1..2459fbdfd04 100644 --- a/packages/session-ui/src/message/current-message.test.ts +++ b/packages/session-ui/src/message/current-message.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { JsonValue, SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { JsonValue, SessionMessageAssistantTool } from "@opencode/client/promise" import { currentContentDefaultOpen } from "./current-tool-state" function tool(name: string, files: JsonValue[] = []): SessionMessageAssistantTool { diff --git a/packages/session-ui/src/message/current-message.tsx b/packages/session-ui/src/message/current-message.tsx index cfe53b02ad9..b061968dd68 100644 --- a/packages/session-ui/src/message/current-message.tsx +++ b/packages/session-ui/src/message/current-message.tsx @@ -2,7 +2,7 @@ import type { SessionMessageAssistant, SessionMessageAssistantTool, SessionMessageUser, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { Match, Switch, type ComponentProps } from "solid-js" import type { SessionUserActions, SessionUserComment } from "../actions" import { AssistantReasoningContent, AssistantTextContent, CurrentUserMessageDisplay } from "./message-content" diff --git a/packages/session-ui/src/message/current-tool-state.test.ts b/packages/session-ui/src/message/current-tool-state.test.ts index b0633931326..4a0b9707b95 100644 --- a/packages/session-ui/src/message/current-tool-state.test.ts +++ b/packages/session-ui/src/message/current-tool-state.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { SessionMessageAssistantTool } from "@opencode/client/promise" import { currentToolError, currentToolInput, currentToolMetadata, currentToolOutput } from "./current-tool-state" const time = { created: 1 } diff --git a/packages/session-ui/src/message/current-tool-state.ts b/packages/session-ui/src/message/current-tool-state.ts index b4ba572fad9..0cf9028daa8 100644 --- a/packages/session-ui/src/message/current-tool-state.ts +++ b/packages/session-ui/src/message/current-tool-state.ts @@ -1,4 +1,4 @@ -import type { SessionMessageAssistant, SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, SessionMessageAssistantTool } from "@opencode/client/promise" import { Option, Schema } from "effect" const decodeInput = Schema.decodeUnknownOption(Schema.fromJsonString(Schema.Record(Schema.String, Schema.Unknown))) diff --git a/packages/session-ui/src/message/message-content.tsx b/packages/session-ui/src/message/message-content.tsx index 397d8abf3e1..149e0a60869 100644 --- a/packages/session-ui/src/message/message-content.tsx +++ b/packages/session-ui/src/message/message-content.tsx @@ -1,23 +1,23 @@ import { createEffect, createMemo, createSignal, For, onCleanup, Show, type ComponentProps, type JSX } from "solid-js" import { createStore } from "solid-js/store" import { useData } from "../context" -import { useDialog } from "@opencode-ai/ui/context/dialog" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { useDialog } from "@opencode/ui/context/dialog" +import { useI18n } from "@opencode/ui/context/i18n" import { Markdown } from "../components/markdown" -import { ImagePreview } from "@opencode-ai/ui/image-preview" -import { getFilename } from "@opencode-ai/util/path" +import { ImagePreview } from "@opencode/ui/image-preview" +import { getFilename } from "@opencode/util/path" import { AttachmentCard } from "./attachment-card" import { CommentCard } from "./comment-card" import { TimelineSeparator } from "../components/timeline-separator" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Icon } from "@opencode-ai/ui/icon" -import { Button } from "@opencode-ai/ui/button" -import { TextReveal } from "@opencode-ai/ui/text-reveal" -import { TextShimmer } from "@opencode-ai/ui/text-shimmer" +import { Tooltip } from "@opencode/ui/tooltip" +import { IconButton } from "@opencode/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { Button } from "@opencode/ui/button" +import { TextReveal } from "@opencode/ui/text-reveal" +import { TextShimmer } from "@opencode/ui/text-shimmer" import { BasicTool } from "../components/basic-tool" import { reasoningHeading } from "../timeline/projection" -import { Card } from "@opencode-ai/ui/card" +import { Card } from "@opencode/ui/card" import type { PromptAgentAttachment, PromptFileAttachment, @@ -25,7 +25,7 @@ import type { SessionMessageAssistantReasoning, SessionMessageCompaction, SessionMessageUser, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import type { SessionUserActions, SessionUserComment } from "../actions" import { typeLabel } from "../components/message-file" diff --git a/packages/session-ui/src/pierre/worker.ts b/packages/session-ui/src/pierre/worker.ts index ba5d30dccc1..4e2f14bf7c9 100644 --- a/packages/session-ui/src/pierre/worker.ts +++ b/packages/session-ui/src/pierre/worker.ts @@ -1,6 +1,6 @@ import { WorkerPoolManager } from "@pierre/diffs/worker" import ShikiWorkerUrl from "@pierre/diffs/worker/worker.js?worker&url" -import { registerOpenCodeTheme } from "@opencode-ai/ui/context/marked-theme-register" +import { registerOpenCodeTheme } from "@opencode/ui/context/marked-theme-register" registerOpenCodeTheme() diff --git a/packages/session-ui/src/storybook/current-session-fixtures.ts b/packages/session-ui/src/storybook/current-session-fixtures.ts index f1fe93a01cc..8b52c4e0b62 100644 --- a/packages/session-ui/src/storybook/current-session-fixtures.ts +++ b/packages/session-ui/src/storybook/current-session-fixtures.ts @@ -9,7 +9,7 @@ import type { SessionMessageInfo, SessionMessageUser, SessionStatus, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import type { SessionDocument } from "../document" import type { SessionUserPresentation } from "../timeline/session-timeline" diff --git a/packages/session-ui/src/storybook/current-session-scenarios.ts b/packages/session-ui/src/storybook/current-session-scenarios.ts index 71d6e615a52..30325542d8b 100644 --- a/packages/session-ui/src/storybook/current-session-scenarios.ts +++ b/packages/session-ui/src/storybook/current-session-scenarios.ts @@ -1,4 +1,4 @@ -import type { JsonValue, SessionMessageAssistant, SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { JsonValue, SessionMessageAssistant, SessionMessageAssistantTool } from "@opencode/client/promise" import type { SessionDocument } from "../document" import { CURRENT_SESSION_ID, STORY_MODEL, STORY_TIME, thinkingDocument } from "./current-session-fixtures" diff --git a/packages/session-ui/src/storybook/current-session-story.tsx b/packages/session-ui/src/storybook/current-session-story.tsx index 939bc93afad..40cba38022f 100644 --- a/packages/session-ui/src/storybook/current-session-story.tsx +++ b/packages/session-ui/src/storybook/current-session-story.tsx @@ -4,8 +4,8 @@ import { DataProvider } from "../context/data" import type { SessionUserActions } from "../message/current-message" import type { SessionUserPresentation } from "../timeline/session-timeline" import { SessionTimeline } from "../timeline/session-timeline" -import { FileComponentProvider } from "@opencode-ai/ui/context/file" -import { Button } from "@opencode-ai/ui/button" +import { FileComponentProvider } from "@opencode/ui/context/file" +import { Button } from "@opencode/ui/button" import { Show, createSignal, type JSX } from "solid-js" import { CURRENT_SESSION_ID, STORY_TIME } from "./current-session-fixtures" diff --git a/packages/session-ui/src/timeline/detail.ts b/packages/session-ui/src/timeline/detail.ts index 7af3a788449..0c4b005329a 100644 --- a/packages/session-ui/src/timeline/detail.ts +++ b/packages/session-ui/src/timeline/detail.ts @@ -1,4 +1,4 @@ -import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode/client/promise" import { shellResultFailed } from "../message/current-tool-state" export const timelineCategories = ["shell", "edit", "thinking", "subagents", "notices", "tools"] as const diff --git a/packages/session-ui/src/timeline/projection.test.ts b/packages/session-ui/src/timeline/projection.test.ts index 493d0eb6582..5dec9050ec8 100644 --- a/packages/session-ui/src/timeline/projection.test.ts +++ b/packages/session-ui/src/timeline/projection.test.ts @@ -4,7 +4,7 @@ import type { SessionMessageAssistant, SessionMessageAssistantTool, SessionMessageInfo, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { createStore } from "solid-js/store" import { createTimelineProjection, reuseTimelineRows, Timeline, TimelineRow, type PartGroup } from "./projection" diff --git a/packages/session-ui/src/timeline/projection.ts b/packages/session-ui/src/timeline/projection.ts index 29ee7960158..0b99742a4e5 100644 --- a/packages/session-ui/src/timeline/projection.ts +++ b/packages/session-ui/src/timeline/projection.ts @@ -5,7 +5,7 @@ import type { SessionMessageShell, SessionMessageUser, SessionStatus, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { Option, Schema } from "effect" import { createMemo, mapArray, type Accessor } from "solid-js" import { currentContentDefaultOpen, currentToolFailed, currentToolHasLoadedFiles } from "../message/current-tool-state" diff --git a/packages/session-ui/src/timeline/research-and-agents.stories.tsx b/packages/session-ui/src/timeline/research-and-agents.stories.tsx index 603543d6b94..4692b1827df 100644 --- a/packages/session-ui/src/timeline/research-and-agents.stories.tsx +++ b/packages/session-ui/src/timeline/research-and-agents.stories.tsx @@ -1,4 +1,4 @@ -import type { JsonValue, SessionMessageAssistant, SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { JsonValue, SessionMessageAssistant, SessionMessageAssistantTool } from "@opencode/client/promise" import { createMemo } from "solid-js" import { createStore } from "solid-js/store" import type { SessionDocument } from "../document" diff --git a/packages/session-ui/src/timeline/rows-current.test.ts b/packages/session-ui/src/timeline/rows-current.test.ts index 3a8fae326b1..95705a60a9a 100644 --- a/packages/session-ui/src/timeline/rows-current.test.ts +++ b/packages/session-ui/src/timeline/rows-current.test.ts @@ -3,7 +3,7 @@ import type { SessionMessageAssistant, SessionMessageAssistantTool, SessionMessageInfo, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { storyDocument, storyTool } from "../storybook/current-session-scenarios" import { createTimelineProjection, Timeline, TimelineRow } from "./projection" diff --git a/packages/session-ui/src/timeline/session-timeline-row.tsx b/packages/session-ui/src/timeline/session-timeline-row.tsx index 8a3c266e795..7bd3cccd173 100644 --- a/packages/session-ui/src/timeline/session-timeline-row.tsx +++ b/packages/session-ui/src/timeline/session-timeline-row.tsx @@ -3,9 +3,9 @@ import type { SessionMessageInfo, SessionMessageUser, SessionStatus, -} from "@opencode-ai/client/promise" -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { Tooltip } from "@opencode-ai/ui/tooltip" +} from "@opencode/client/promise" +import { useI18n } from "@opencode/ui/context/i18n" +import { Tooltip } from "@opencode/ui/tooltip" import { For, Show, createMemo, type Accessor, type JSX } from "solid-js" import type { SessionUserActions, SessionUserComment } from "../actions" import { useData } from "../context" diff --git a/packages/session-ui/src/timeline/terminal-work.stories.tsx b/packages/session-ui/src/timeline/terminal-work.stories.tsx index 6a22f7809f0..e080752b41a 100644 --- a/packages/session-ui/src/timeline/terminal-work.stories.tsx +++ b/packages/session-ui/src/timeline/terminal-work.stories.tsx @@ -1,4 +1,4 @@ -import type { SessionMessageAssistant, SessionMessageShell } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, SessionMessageShell } from "@opencode/client/promise" import { createMemo, createSignal } from "solid-js" import { createStore } from "solid-js/store" import { DataProvider } from "../context/data" diff --git a/packages/session-ui/src/timeline/timeline-row.stories.tsx b/packages/session-ui/src/timeline/timeline-row.stories.tsx index 992e13c01a3..3f8149c6fd9 100644 --- a/packages/session-ui/src/timeline/timeline-row.stories.tsx +++ b/packages/session-ui/src/timeline/timeline-row.stories.tsx @@ -1,4 +1,4 @@ -import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client/promise" +import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode/client/promise" import { createMemo } from "solid-js" import { createStore } from "solid-js/store" import type { SessionDocument } from "../document" diff --git a/packages/session-ui/src/tools/tool-renderer.tsx b/packages/session-ui/src/tools/tool-renderer.tsx index ed888e630f7..0f0d2b7e050 100644 --- a/packages/session-ui/src/tools/tool-renderer.tsx +++ b/packages/session-ui/src/tools/tool-renderer.tsx @@ -16,24 +16,24 @@ import { import stripAnsi from "strip-ansi" import { Dynamic } from "solid-js/web" import { type SessionSummary, useData } from "../context" -import { useFileComponent } from "@opencode-ai/ui/context/file" -import { type UiI18n, useI18n } from "@opencode-ai/ui/context/i18n" +import { useFileComponent } from "@opencode/ui/context/file" +import { type UiI18n, useI18n } from "@opencode/ui/context/i18n" import { BasicTool, GenericTool } from "../components/basic-tool" -import { Accordion } from "@opencode-ai/ui/accordion" -import { StickyAccordionHeader } from "@opencode-ai/ui/sticky-accordion-header" -import { Collapsible } from "@opencode-ai/ui/collapsible" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { Icon, type IconProps } from "@opencode-ai/ui/icon" +import { Accordion } from "@opencode/ui/accordion" +import { StickyAccordionHeader } from "@opencode/ui/sticky-accordion-header" +import { Collapsible } from "@opencode/ui/collapsible" +import { FileIcon } from "@opencode/ui/file-icon" +import { Icon, type IconProps } from "@opencode/ui/icon" import { ToolErrorCard } from "../components/tool-error-card" -import { DiffChanges } from "@opencode-ai/ui/diff-changes" +import { DiffChanges } from "@opencode/ui/diff-changes" import { Markdown } from "../components/markdown" import { createMarkdownImages } from "../components/markdown-image" import { useMarkdown } from "../context/markdown" -import { getDirectory, getFilename } from "@opencode-ai/util/path" -import { checksum } from "@opencode-ai/util/encode" -import { Tooltip } from "@opencode-ai/ui/tooltip" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { TextShimmer } from "@opencode-ai/ui/text-shimmer" +import { getDirectory, getFilename } from "@opencode/util/path" +import { checksum } from "@opencode/util/encode" +import { Tooltip } from "@opencode/ui/tooltip" +import { IconButton } from "@opencode/ui/icon-button" +import { TextShimmer } from "@opencode/ui/text-shimmer" import { changedFileDiff, patchFileGroups } from "../components/apply-patch-file" import { animate } from "motion" import { SessionProgressIndicatorV2 } from "../v2/components/session-progress-indicator-v2" @@ -41,7 +41,7 @@ import type { SessionMessageAssistantReasoning, SessionMessageAssistantTool, SessionMessageShell, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { currentToolError, currentToolHasLoadedFiles, diff --git a/packages/session-ui/src/v2/components/line-comment-annotations-v2.tsx b/packages/session-ui/src/v2/components/line-comment-annotations-v2.tsx index 72a69886ba3..919f9ec1a5b 100644 --- a/packages/session-ui/src/v2/components/line-comment-annotations-v2.tsx +++ b/packages/session-ui/src/v2/components/line-comment-annotations-v2.tsx @@ -8,9 +8,9 @@ import { type LineCommentShape, type LineCommentStateProps, } from "../../components/line-comment-annotations" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { useI18n } from "@opencode/ui/context/i18n" import { cloneSelectedLineRange, formatSelectedLineLabel } from "../../pierre/selection-bridge" -import { LineCommentEditor, LineComment, type LineCommentEditorMention } from "@opencode-ai/ui/line-comment" +import { LineCommentEditor, LineComment, type LineCommentEditorMention } from "@opencode/ui/line-comment" type LineCommentControllerV2Props = { comments: Accessor diff --git a/packages/session-ui/src/v2/components/session-review-empty-changes-v2.tsx b/packages/session-ui/src/v2/components/session-review-empty-changes-v2.tsx index 368ed3338f1..4d5dc9e8b96 100644 --- a/packages/session-ui/src/v2/components/session-review-empty-changes-v2.tsx +++ b/packages/session-ui/src/v2/components/session-review-empty-changes-v2.tsx @@ -1,5 +1,5 @@ -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { Icon } from "@opencode-ai/ui/icon" +import { useI18n } from "@opencode/ui/context/i18n" +import { Icon } from "@opencode/ui/icon" import "./session-review-v2.css" export function SessionReviewEmptyChangesV2() { diff --git a/packages/session-ui/src/v2/components/session-review-empty-no-git-v2.tsx b/packages/session-ui/src/v2/components/session-review-empty-no-git-v2.tsx index f96a9b6b120..502efad1fb5 100644 --- a/packages/session-ui/src/v2/components/session-review-empty-no-git-v2.tsx +++ b/packages/session-ui/src/v2/components/session-review-empty-no-git-v2.tsx @@ -1,6 +1,6 @@ -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { Button } from "@opencode-ai/ui/button" +import { FileIcon } from "@opencode/ui/file-icon" +import { useI18n } from "@opencode/ui/context/i18n" +import { Button } from "@opencode/ui/button" import "./session-review-v2.css" export type SessionReviewEmptyNoGitV2Props = { diff --git a/packages/session-ui/src/v2/components/session-review-file-preview-v2.tsx b/packages/session-ui/src/v2/components/session-review-file-preview-v2.tsx index 01ebe66b8fd..0798dfd610b 100644 --- a/packages/session-ui/src/v2/components/session-review-file-preview-v2.tsx +++ b/packages/session-ui/src/v2/components/session-review-file-preview-v2.tsx @@ -1,12 +1,12 @@ -import { getDirectory, getFilename } from "@opencode-ai/util/path" +import { getDirectory, getFilename } from "@opencode/util/path" import type { SelectedLineRange } from "@pierre/diffs" -import { DiffChanges } from "@opencode-ai/ui/diff-changes" -import { FileIcon } from "@opencode-ai/ui/file-icon" -import { useFileComponent } from "@opencode-ai/ui/context/file" -import { useI18n } from "@opencode-ai/ui/context/i18n" +import { DiffChanges } from "@opencode/ui/diff-changes" +import { FileIcon } from "@opencode/ui/file-icon" +import { useFileComponent } from "@opencode/ui/context/file" +import { useI18n } from "@opencode/ui/context/i18n" import { mediaKindFromPath } from "../../pierre/media" import { cloneSelectedLineRange, previewSelectedLines } from "../../pierre/selection-bridge" -import type { FileDiffInfo } from "@opencode-ai/client/promise" +import type { FileDiffInfo } from "@opencode/client/promise" import type { PresentationFileContent, PresentationFileDiff } from "../../file-presentation" import { createEffect, createMemo, onCleanup, Show, untrack } from "solid-js" import { createStore } from "solid-js/store" @@ -24,8 +24,8 @@ import type { import type { SessionReviewExpandMode } from "./session-review-v2" import { createLineCommentControllerV2 } from "./line-comment-annotations-v2" import { shouldVirtualizeReviewDiff } from "./session-review-file-preview-v2-virtualize" -import { LineCommentOverflowIcon } from "@opencode-ai/ui/line-comment" -import { Menu } from "@opencode-ai/ui/menu" +import { LineCommentOverflowIcon } from "@opencode/ui/line-comment" +import { Menu } from "@opencode/ui/menu" import "./session-review-v2.css" type ReviewDiff = (PresentationFileDiff & { file: string }) | FileDiffInfo diff --git a/packages/session-ui/src/v2/components/session-review-v2.tsx b/packages/session-ui/src/v2/components/session-review-v2.tsx index 4781316d7d9..4f60a5c939e 100644 --- a/packages/session-ui/src/v2/components/session-review-v2.tsx +++ b/packages/session-ui/src/v2/components/session-review-v2.tsx @@ -1,13 +1,13 @@ -import { useI18n } from "@opencode-ai/ui/context/i18n" -import { SegmentedControlItem, SegmentedControl } from "@opencode-ai/ui/segmented-control" -import { TextInput } from "@opencode-ai/ui/text-input" -import { Keybind } from "@opencode-ai/ui/keybind" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { useI18n } from "@opencode/ui/context/i18n" +import { SegmentedControlItem, SegmentedControl } from "@opencode/ui/segmented-control" +import { TextInput } from "@opencode/ui/text-input" +import { Keybind } from "@opencode/ui/keybind" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" +import { Tooltip } from "@opencode/ui/tooltip" import type { SessionReviewDiffStyle } from "../../components/session-review" -import { ResizeHandle } from "@opencode-ai/ui/resize-handle" -import { ScrollView } from "@opencode-ai/ui/scroll-view" +import { ResizeHandle } from "@opencode/ui/resize-handle" +import { ScrollView } from "@opencode/ui/scroll-view" import { useLocale } from "@kobalte/core/i18n" import { makeEventListener } from "@solid-primitives/event-listener" import { Show, createEffect, createMemo, createSignal, type JSX } from "solid-js" diff --git a/packages/simulation/package.json b/packages/simulation/package.json index aa747a1cabf..dc842713760 100644 --- a/packages/simulation/package.json +++ b/packages/simulation/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/simulation", + "name": "@opencode/simulation", "version": "1.17.13", "type": "module", "license": "MIT", @@ -29,11 +29,11 @@ "typecheck": "tsgo -b" }, "dependencies": { - "@opencode-ai/core": "workspace:*", - "@opencode-ai/ai": "workspace:*", - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/protocol": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/ai": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/protocol": "workspace:*", + "@opencode/util": "workspace:*", "@opentui/core": "catalog:", "effect": "catalog:", "ws": "8.21.0" diff --git a/packages/simulation/script/publish.ts b/packages/simulation/script/publish.ts index e56ff22d286..421d83e3479 100644 --- a/packages/simulation/script/publish.ts +++ b/packages/simulation/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/simulation/src/backend/index.ts b/packages/simulation/src/backend/index.ts index 04c2d588d34..a3ec0f61dbe 100644 --- a/packages/simulation/src/backend/index.ts +++ b/packages/simulation/src/backend/index.ts @@ -1,7 +1,7 @@ -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { httpClient } from "@opencode-ai/util/effect/app-node-platform" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { httpClient } from "@opencode/util/effect/app-node-platform" +import { SdkPlugins } from "@opencode/core/plugin/sdk" import { Config, Effect, FileSystem, Layer } from "effect" import { HttpClient } from "effect/unstable/http" import { DriveManifest } from "../manifest" diff --git a/packages/simulation/src/backend/openai.ts b/packages/simulation/src/backend/openai.ts index 3130f00febb..ccf67d71655 100644 --- a/packages/simulation/src/backend/openai.ts +++ b/packages/simulation/src/backend/openai.ts @@ -1,7 +1,7 @@ import { Effect, Schema, Stream } from "effect" import { HttpClientResponse } from "effect/unstable/http" import { HttpClientError, TransportError } from "effect/unstable/http/HttpClientError" -import { OpenAIChatEvent, DEFAULT_BASE_URL, PATH } from "@opencode-ai/ai/protocols/openai-chat" +import { OpenAIChatEvent, DEFAULT_BASE_URL, PATH } from "@opencode/ai/protocols/openai-chat" import { SimulationNetwork } from "./network" import { SimulatedProvider } from "./simulated-provider" diff --git a/packages/simulation/src/backend/simulated-provider.ts b/packages/simulation/src/backend/simulated-provider.ts index 2fa73355d07..2e29a2da8a1 100644 --- a/packages/simulation/src/backend/simulated-provider.ts +++ b/packages/simulation/src/backend/simulated-provider.ts @@ -1,6 +1,6 @@ -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { Tool } from "@opencode-ai/core/tool" -import { Plugin } from "@opencode-ai/plugin/effect" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { Tool } from "@opencode/core/tool" +import { Plugin } from "@opencode/plugin/effect" import { createHash } from "node:crypto" import { Cause, diff --git a/packages/simulation/src/manifest.ts b/packages/simulation/src/manifest.ts index 271f12823a3..1b48590db91 100644 --- a/packages/simulation/src/manifest.ts +++ b/packages/simulation/src/manifest.ts @@ -1,7 +1,7 @@ import { homedir } from "node:os" import { isAbsolute, join } from "node:path" import { Config, Effect, FileSystem, Schema } from "effect" -import { PositiveInt } from "@opencode-ai/core/schema" +import { PositiveInt } from "@opencode/core/schema" const InstanceName = Schema.String.check( Schema.makeFilter((value) => diff --git a/packages/simulation/src/protocol/index.ts b/packages/simulation/src/protocol/index.ts index 6d2025724de..b61f67a433f 100644 --- a/packages/simulation/src/protocol/index.ts +++ b/packages/simulation/src/protocol/index.ts @@ -6,5 +6,5 @@ export { JsonRpc, SimulationRequestError, UiRpcs, -} from "@opencode-ai/protocol/simulation" -export * as SimulationProtocol from "@opencode-ai/protocol/simulation" +} from "@opencode/protocol/simulation" +export * as SimulationProtocol from "@opencode/protocol/simulation" diff --git a/packages/simulation/test/openai.test.ts b/packages/simulation/test/openai.test.ts index a4a5b16faba..6b5fd2f5b7d 100644 --- a/packages/simulation/test/openai.test.ts +++ b/packages/simulation/test/openai.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import { DEFAULT_BASE_URL, PATH } from "@opencode-ai/ai/protocols/openai-chat" +import { DEFAULT_BASE_URL, PATH } from "@opencode/ai/protocols/openai-chat" import { Effect, Stream } from "effect" import { HttpClientRequest } from "effect/unstable/http" import { HttpClientError } from "effect/unstable/http/HttpClientError" diff --git a/packages/simulation/test/simulated-provider.test.ts b/packages/simulation/test/simulated-provider.test.ts index 968b59196ab..9cf436868a6 100644 --- a/packages/simulation/test/simulated-provider.test.ts +++ b/packages/simulation/test/simulated-provider.test.ts @@ -2,21 +2,21 @@ import { expect, test } from "bun:test" import { mkdir, mkdtemp, rm } from "node:fs/promises" import { tmpdir } from "node:os" import { join } from "node:path" -import { Agent } from "@opencode-ai/core/agent" -import { Config } from "@opencode-ai/core/config" -import { Database } from "@opencode-ai/core/database/database" -import { makeGlobalNode } from "@opencode-ai/util/effect/app-node" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" -import { Bus } from "@opencode-ai/core/bus" -import { Location } from "@opencode-ai/core/location" -import { LocationServiceMap } from "@opencode-ai/core/location-services" -import { Plugin } from "@opencode-ai/core/plugin" -import { SdkPlugins } from "@opencode-ai/core/plugin/sdk" -import { AbsolutePath } from "@opencode-ai/core/schema" -import { Session } from "@opencode-ai/core/session" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { Tool } from "@opencode-ai/core/tool" +import { Agent } from "@opencode/core/agent" +import { Config } from "@opencode/core/config" +import { Database } from "@opencode/core/database/database" +import { makeGlobalNode } from "@opencode/util/effect/app-node" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { LayerNode } from "@opencode/util/effect/layer-node" +import { Bus } from "@opencode/core/bus" +import { Location } from "@opencode/core/location" +import { LocationServiceMap } from "@opencode/core/location-services" +import { Plugin } from "@opencode/core/plugin" +import { SdkPlugins } from "@opencode/core/plugin/sdk" +import { AbsolutePath } from "@opencode/core/schema" +import { Session } from "@opencode/core/session" +import { SessionMessage } from "@opencode/core/session/message" +import { Tool } from "@opencode/core/tool" import { Deferred, Effect, Fiber, Layer, Queue, Stream } from "effect" import type { Scope } from "effect/Scope" import { SimulatedProvider } from "../src/backend/simulated-provider" diff --git a/packages/stats/app/package.json b/packages/stats/app/package.json index 5d1d57bac41..b1b74af73c9 100644 --- a/packages/stats/app/package.json +++ b/packages/stats/app/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/stats-app", + "name": "@opencode/stats-app", "version": "1.18.15", "private": true, "type": "module", @@ -14,8 +14,8 @@ "dependencies": { "@ibm/plex": "6.4.1", "@kobalte/core": "catalog:", - "@opencode-ai/stats-core": "workspace:*", - "@opencode-ai/ui": "workspace:*", + "@opencode/stats-core": "workspace:*", + "@opencode/ui": "workspace:*", "@solidjs/meta": "catalog:", "@solidjs/router": "catalog:", "@solidjs/start": "catalog:", diff --git a/packages/stats/app/src/component/model-compare-detail.tsx b/packages/stats/app/src/component/model-compare-detail.tsx index 3790789b58b..f324eeabcd0 100644 --- a/packages/stats/app/src/component/model-compare-detail.tsx +++ b/packages/stats/app/src/component/model-compare-detail.tsx @@ -1,12 +1,12 @@ import { Link, Meta, Title } from "@solidjs/meta" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { getStatsModelsComparisonData, type ModelUsagePoint, type StatsModelComparisonInput, type StatsModelComparisonEntry, -} from "@opencode-ai/stats-core/domain/home" -import { runtime } from "@opencode-ai/stats-core/runtime" +} from "@opencode/stats-core/domain/home" +import { runtime } from "@opencode/stats-core/runtime" import { createAsync, query, useParams, useSearchParams } from "@solidjs/router" import { createEffect, createMemo, createSignal, For, onMount, Show } from "solid-js" import { getRequestEvent } from "solid-js/web" diff --git a/packages/stats/app/src/context/i18n.tsx b/packages/stats/app/src/context/i18n.tsx index e844bf987ad..b66805c424e 100644 --- a/packages/stats/app/src/context/i18n.tsx +++ b/packages/stats/app/src/context/i18n.tsx @@ -1,5 +1,5 @@ import { createMemo } from "solid-js" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { dict, type Key } from "../i18n" import { useLanguage } from "./language" diff --git a/packages/stats/app/src/context/language.tsx b/packages/stats/app/src/context/language.tsx index 43214a14d54..61c56bb6603 100644 --- a/packages/stats/app/src/context/language.tsx +++ b/packages/stats/app/src/context/language.tsx @@ -1,7 +1,7 @@ import { createEffect } from "solid-js" import { getRequestEvent } from "solid-js/web" import { createStore } from "solid-js/store" -import { createSimpleContext } from "@opencode-ai/ui/context" +import { createSimpleContext } from "@opencode/ui/context" import { LOCALES, cookie, diff --git a/packages/stats/app/src/routes/[lab]/[model].tsx b/packages/stats/app/src/routes/[lab]/[model].tsx index fb6c19748a5..65900464c85 100644 --- a/packages/stats/app/src/routes/[lab]/[model].tsx +++ b/packages/stats/app/src/routes/[lab]/[model].tsx @@ -1,5 +1,5 @@ import { Meta, Title } from "@solidjs/meta" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { scaleSqrt } from "d3-scale" import countryCodesSource from "i18n-iso-countries/codes.json?raw" import { @@ -8,7 +8,7 @@ import { type ModelPeerEntry, type ModelUsagePoint, type StatsModelData, -} from "@opencode-ai/stats-core/domain/home" +} from "@opencode/stats-core/domain/home" import { createAsync, query, useParams } from "@solidjs/router" import { createMemo, createSignal, createUniqueId, For, onMount, Show, type JSX } from "solid-js" import { getRequestEvent } from "solid-js/web" diff --git a/packages/stats/app/src/routes/[lab]/index.tsx b/packages/stats/app/src/routes/[lab]/index.tsx index ab202fc89f7..be73d322d4f 100644 --- a/packages/stats/app/src/routes/[lab]/index.tsx +++ b/packages/stats/app/src/routes/[lab]/index.tsx @@ -1,5 +1,5 @@ import { Meta, Title } from "@solidjs/meta" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { getStatsLabData, getStatsHomeData, @@ -7,7 +7,7 @@ import { type MarketDay, type ModelUsagePoint, type StatsLabData, -} from "@opencode-ai/stats-core/domain/home" +} from "@opencode/stats-core/domain/home" import { createAsync, query, useParams } from "@solidjs/router" import { createMemo, createSignal, createUniqueId, For, onMount, Show, type JSX } from "solid-js" import { getRequestEvent } from "solid-js/web" diff --git a/packages/stats/app/src/routes/compare-cards.tsx b/packages/stats/app/src/routes/compare-cards.tsx index 24077bc3b9c..5fa81502929 100644 --- a/packages/stats/app/src/routes/compare-cards.tsx +++ b/packages/stats/app/src/routes/compare-cards.tsx @@ -1,4 +1,4 @@ -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { For, Show } from "solid-js" import { catalogSlug, formatCatalogLabName, type ModelCatalogEntry } from "./model-catalog" diff --git a/packages/stats/app/src/routes/compare/index.tsx b/packages/stats/app/src/routes/compare/index.tsx index 861f6949347..6545beed3c3 100644 --- a/packages/stats/app/src/routes/compare/index.tsx +++ b/packages/stats/app/src/routes/compare/index.tsx @@ -1,5 +1,5 @@ import { Meta, Title } from "@solidjs/meta" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { createAsync } from "@solidjs/router" import { createEffect, createMemo, createSignal, For, onMount, Show } from "solid-js" import { getRequestEvent } from "solid-js/web" diff --git a/packages/stats/app/src/routes/index.tsx b/packages/stats/app/src/routes/index.tsx index 398f53f7186..ffa7412debb 100644 --- a/packages/stats/app/src/routes/index.tsx +++ b/packages/stats/app/src/routes/index.tsx @@ -1,5 +1,5 @@ import { Meta, Title } from "@solidjs/meta" -import { ProviderIcon } from "@opencode-ai/ui/provider-icon" +import { ProviderIcon } from "@opencode/ui/provider-icon" import { scaleSqrt } from "d3-scale" import countryCodesSource from "i18n-iso-countries/codes.json?raw" import { @@ -11,7 +11,7 @@ import { type SessionCostEntry, type TokenCostEntry, type UsagePoint, -} from "@opencode-ai/stats-core/domain/home" +} from "@opencode/stats-core/domain/home" import { createAsync, query } from "@solidjs/router" import { createEffect, createMemo, createSignal, For, onCleanup, onMount, Show, type JSX } from "solid-js" import { getRequestEvent } from "solid-js/web" diff --git a/packages/stats/app/src/routes/sitemap.xml.ts b/packages/stats/app/src/routes/sitemap.xml.ts index d3d8cf64c63..4fd806bb118 100644 --- a/packages/stats/app/src/routes/sitemap.xml.ts +++ b/packages/stats/app/src/routes/sitemap.xml.ts @@ -1,5 +1,5 @@ -import { getStatsHomeData } from "@opencode-ai/stats-core/domain/home" -import { runtime } from "@opencode-ai/stats-core/runtime" +import { getStatsHomeData } from "@opencode/stats-core/domain/home" +import { runtime } from "@opencode/stats-core/runtime" import { canonicalFamilyComparisonPath, canonicalModelComparisonPath, diff --git a/packages/stats/core/package.json b/packages/stats/core/package.json index e1caa58ae1b..0ba85b6b5dc 100644 --- a/packages/stats/core/package.json +++ b/packages/stats/core/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/stats-core", + "name": "@opencode/stats-core", "version": "1.18.15", "private": true, "type": "module", diff --git a/packages/stats/server/Dockerfile b/packages/stats/server/Dockerfile index 81faf2ec4a7..56909c7f02f 100644 --- a/packages/stats/server/Dockerfile +++ b/packages/stats/server/Dockerfile @@ -9,7 +9,7 @@ FROM base AS pruner COPY . . -RUN bunx turbo@2.8.13 prune @opencode-ai/stats-server --docker --no-update-notifier --no-color +RUN bunx turbo@2.8.13 prune @opencode/stats-server --docker --no-update-notifier --no-color FROM base AS installer @@ -17,8 +17,8 @@ COPY --from=pruner /app/out/json/ ./ # Bun 1.3.x needs the pruned workspace globs and lockfile metadata refreshed before the frozen production install. RUN bun -e 'const packageJson = await Bun.file("package.json").json(); packageJson.workspaces.packages = Array.from(new Bun.Glob("packages/**/package.json").scanSync(".")).map((file) => file.slice(0, -"/package.json".length)).sort(); await Bun.write("package.json", JSON.stringify(packageJson, null, 2) + "\n")' -RUN rm -f bun.lock && bun install --filter @opencode-ai/stats-server --lockfile-only --ignore-scripts -RUN bun install --filter @opencode-ai/stats-server --frozen-lockfile --production --ignore-scripts +RUN rm -f bun.lock && bun install --filter @opencode/stats-server --lockfile-only --ignore-scripts +RUN bun install --filter @opencode/stats-server --frozen-lockfile --production --ignore-scripts FROM base AS runner diff --git a/packages/stats/server/package.json b/packages/stats/server/package.json index 86cfff56bb6..55c2c9d94da 100644 --- a/packages/stats/server/package.json +++ b/packages/stats/server/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/stats-server", + "name": "@opencode/stats-server", "version": "1.18.15", "private": true, "type": "module", @@ -16,7 +16,7 @@ "dependencies": { "@aws-sdk/client-firehose": "3.933.0", "@effect/platform-node": "catalog:", - "@opencode-ai/stats-core": "workspace:*", + "@opencode/stats-core": "workspace:*", "effect": "catalog:", "sst": "catalog:" }, diff --git a/packages/stats/server/src/stat-sync.ts b/packages/stats/server/src/stat-sync.ts index 613fbec5b7d..bf2c7395db9 100644 --- a/packages/stats/server/src/stat-sync.ts +++ b/packages/stats/server/src/stat-sync.ts @@ -1,8 +1,8 @@ import * as NodeRuntime from "@effect/platform-node/NodeRuntime" -import { Athena } from "@opencode-ai/stats-core/athena" -import { ModelStatRepo } from "@opencode-ai/stats-core/domain/model" -import { layer as statsLayer } from "@opencode-ai/stats-core/runtime" -import { syncStats } from "@opencode-ai/stats-core/stat-sync" +import { Athena } from "@opencode/stats-core/athena" +import { ModelStatRepo } from "@opencode/stats-core/domain/model" +import { layer as statsLayer } from "@opencode/stats-core/runtime" +import { syncStats } from "@opencode/stats-core/stat-sync" import { Cause, Duration, Effect, Layer, Schedule } from "effect" const SYNC_INTERVAL = "1 hour" diff --git a/packages/storybook/.storybook/mocks/app/context/server-sync.ts b/packages/storybook/.storybook/mocks/app/context/server-sync.ts index 4586139d1d2..9d07c566cd2 100644 --- a/packages/storybook/.storybook/mocks/app/context/server-sync.ts +++ b/packages/storybook/.storybook/mocks/app/context/server-sync.ts @@ -1,4 +1,4 @@ -import type { IntegrationMethod } from "@opencode-ai/client/promise" +import type { IntegrationMethod } from "@opencode/client/promise" type ProviderAuthMethod = Extract diff --git a/packages/storybook/.storybook/preview.tsx b/packages/storybook/.storybook/preview.tsx index 111ee6bce28..08d9315664c 100644 --- a/packages/storybook/.storybook/preview.tsx +++ b/packages/storybook/.storybook/preview.tsx @@ -7,10 +7,10 @@ import { MetaProvider } from "@solidjs/meta" import { addons } from "storybook/preview-api" import { GLOBALS_UPDATED } from "storybook/internal/core-events" import { createJSXDecorator, definePreview } from "storybook-solidjs-vite" -import { DialogProvider } from "@opencode-ai/ui/context/dialog" -import { MarkedProvider } from "@opencode-ai/ui/context/marked" -import { ThemeProvider, useTheme, type ColorScheme } from "@opencode-ai/ui/theme" -import { Font } from "@opencode-ai/ui/font" +import { DialogProvider } from "@opencode/ui/context/dialog" +import { MarkedProvider } from "@opencode/ui/context/marked" +import { ThemeProvider, useTheme, type ColorScheme } from "@opencode/ui/theme" +import { Font } from "@opencode/ui/font" import { LanguageProvider, UiI18nBridge, useLanguage } from "@/runtime/i18n/language" function resolveScheme(value: unknown): ColorScheme { diff --git a/packages/storybook/package.json b/packages/storybook/package.json index 5ad6b57a047..99cd0988d20 100644 --- a/packages/storybook/package.json +++ b/packages/storybook/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/storybook", + "name": "@opencode/storybook", "private": true, "type": "module", "scripts": { @@ -8,10 +8,10 @@ "build": "storybook build" }, "devDependencies": { - "@opencode-ai/client": "workspace:*", + "@opencode/client": "workspace:*", "@tailwindcss/vite": "catalog:", - "@opencode-ai/session-ui": "workspace:*", - "@opencode-ai/ui": "workspace:*", + "@opencode/session-ui": "workspace:*", + "@opencode/ui": "workspace:*", "@playwright/test": "catalog:", "@solidjs/meta": "catalog:", "@storybook/addon-a11y": "10.4.4", diff --git a/packages/storybook/playwright/README.md b/packages/storybook/playwright/README.md index b9578e33641..8b8af463f5e 100644 --- a/packages/storybook/playwright/README.md +++ b/packages/storybook/playwright/README.md @@ -26,8 +26,8 @@ bun run test:components -- component-tests/composer.spec.ts Both suites are separately filterable Turbo tasks: ```sh -bun turbo test:components --filter=@opencode-ai/session-ui -bun turbo test:components --filter=@opencode-ai/app +bun turbo test:components --filter=@opencode/session-ui +bun turbo test:components --filter=@opencode/app ``` Component browser coverage deliberately remains separate from each package's default `test` script and from `packages/app`'s `test:e2e`, so expensive Storybook checks can be scheduled independently from required unit and full-app journey CI. Set `PLAYWRIGHT_STORYBOOK_URL` to reuse an existing Storybook instance or `PLAYWRIGHT_STORYBOOK_PORT` to choose its port. diff --git a/packages/theme/package.json b/packages/theme/package.json index 2411ddf22c2..9b82c7f01b1 100644 --- a/packages/theme/package.json +++ b/packages/theme/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/theme", + "name": "@opencode/theme", "version": "0.0.0", "type": "module", "license": "MIT", diff --git a/packages/theme/script/publish.ts b/packages/theme/script/publish.ts index 8e37674b644..30538cbc1cb 100644 --- a/packages/theme/script/publish.ts +++ b/packages/theme/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/tui/package.json b/packages/tui/package.json index c6fe116d07e..fa3161410a3 100644 --- a/packages/tui/package.json +++ b/packages/tui/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/tui", + "name": "@opencode/tui", "version": "1.18.4", "private": true, "type": "module", @@ -76,16 +76,16 @@ } }, "dependencies": { - "@opencode-ai/client": "workspace:*", - "@opencode-ai/core": "workspace:*", - "@opencode-ai/latex": "workspace:*", - "@opencode-ai/merman": "workspace:*", - "@opencode-ai/plugin": "workspace:*", - "@opencode-ai/schema": "workspace:*", - "@opencode-ai/simulation": "workspace:*", - "@opencode-ai/theme": "workspace:*", - "@opencode-ai/ui": "workspace:*", - "@opencode-ai/util": "workspace:*", + "@opencode/client": "workspace:*", + "@opencode/core": "workspace:*", + "@opencode/latex": "workspace:*", + "@opencode/merman": "workspace:*", + "@opencode/plugin": "workspace:*", + "@opencode/schema": "workspace:*", + "@opencode/simulation": "workspace:*", + "@opencode/theme": "workspace:*", + "@opencode/ui": "workspace:*", + "@opencode/util": "workspace:*", "@opentui/core": "catalog:", "@opentui/keymap": "catalog:", "@opentui/solid": "catalog:", diff --git a/packages/tui/src/app.tsx b/packages/tui/src/app.tsx index 721418a7209..d307bfc2afb 100644 --- a/packages/tui/src/app.tsx +++ b/packages/tui/src/app.tsx @@ -1,9 +1,9 @@ import { render, useRenderer, useTerminalDimensions } from "@opentui/solid" import { registerOpencodeSpinner } from "./component/register-spinner" import { Effect, Latch } from "effect" -import { Service, type Endpoint } from "@opencode-ai/client/effect/service" -import { OpenCode, type SessionInfo } from "@opencode-ai/client" -import { Global } from "@opencode-ai/util/global" +import { Service, type Endpoint } from "@opencode/client/effect/service" +import { OpenCode, type SessionInfo } from "@opencode/client" +import { Global } from "@opencode/util/global" import { ClipboardProvider, useClipboard } from "./context/clipboard" import { LogProvider, useLog, type LogSink } from "./context/log" import { ExitProvider, useExit } from "./context/exit" @@ -80,7 +80,7 @@ import { PromptHistoryProvider } from "./prompt/history" import { FrecencyProvider } from "./prompt/frecency" import { PromptStashProvider } from "./prompt/stash" import { Toast, ToastProvider, useToast } from "./ui/toast" -import { isFallbackTitle } from "@opencode-ai/util/session-title-fallback" +import { isFallbackTitle } from "@opencode/util/session-title-fallback" import * as Model from "./util/model" import { ArgsProvider, useArgs, type Args } from "./context/args" import open from "open" @@ -251,7 +251,7 @@ export const run = Effect.fn("Tui.run")(function* (input: TuiInput) { ) } if (process.env.OPENCODE_DRIVE) { - const { Drive } = yield* Effect.promise(() => import("@opencode-ai/simulation/frontend")) + const { Drive } = yield* Effect.promise(() => import("@opencode/simulation/frontend")) return yield* Drive.create(options, input.app.version) } return yield* Effect.acquireRelease( diff --git a/packages/tui/src/attention-sounds.bun.ts b/packages/tui/src/attention-sounds.bun.ts index 09aa5fe82a4..86a6d994fce 100644 --- a/packages/tui/src/attention-sounds.bun.ts +++ b/packages/tui/src/attention-sounds.bun.ts @@ -1,8 +1,8 @@ /// -import defaultSoundPath from "@opencode-ai/ui/audio/bip-bop-01.mp3" with { type: "file" } -import questionSoundPath from "@opencode-ai/ui/audio/bip-bop-03.mp3" with { type: "file" } -import permissionSoundPath from "@opencode-ai/ui/audio/staplebops-06.mp3" with { type: "file" } -import errorSoundPath from "@opencode-ai/ui/audio/nope-03.mp3" with { type: "file" } -import subagentDoneSoundPath from "@opencode-ai/ui/audio/yup-01.mp3" with { type: "file" } +import defaultSoundPath from "@opencode/ui/audio/bip-bop-01.mp3" with { type: "file" } +import questionSoundPath from "@opencode/ui/audio/bip-bop-03.mp3" with { type: "file" } +import permissionSoundPath from "@opencode/ui/audio/staplebops-06.mp3" with { type: "file" } +import errorSoundPath from "@opencode/ui/audio/nope-03.mp3" with { type: "file" } +import subagentDoneSoundPath from "@opencode/ui/audio/yup-01.mp3" with { type: "file" } export { defaultSoundPath, questionSoundPath, permissionSoundPath, errorSoundPath, subagentDoneSoundPath } diff --git a/packages/tui/src/attention-sounds.node.ts b/packages/tui/src/attention-sounds.node.ts index 5169eabfa55..78cedeede84 100644 --- a/packages/tui/src/attention-sounds.node.ts +++ b/packages/tui/src/attention-sounds.node.ts @@ -3,7 +3,7 @@ import path from "node:path" const require = createRequire(import.meta.url) const resolve = (name: string) => { - const key = `@opencode-ai/ui/audio/${name}` + const key = `@opencode/ui/audio/${name}` return process.env.OPENCODE_NODE_ASSETS_DIR ? path.join(process.env.OPENCODE_NODE_ASSETS_DIR, key) : require.resolve(key) diff --git a/packages/tui/src/attention.ts b/packages/tui/src/attention.ts index 14963becc05..2547eb8daae 100644 --- a/packages/tui/src/attention.ts +++ b/packages/tui/src/attention.ts @@ -6,7 +6,7 @@ import type { AttentionNotifySkipReason, AttentionWhen, AttentionSoundName, -} from "@opencode-ai/plugin/tui/context" +} from "@opencode/plugin/tui/context" import { Config } from "./config" import { Schema } from "effect" import stripAnsi from "strip-ansi" diff --git a/packages/tui/src/audio.d.ts b/packages/tui/src/audio.d.ts index 092703e747a..e4be5c7b960 100644 --- a/packages/tui/src/audio.d.ts +++ b/packages/tui/src/audio.d.ts @@ -3,7 +3,7 @@ declare module "*.mp3" { export default path } -declare module "@opencode-ai/ui/audio/*.mp3" { +declare module "@opencode/ui/audio/*.mp3" { const path: string export default path } diff --git a/packages/tui/src/component/dialog-integration.tsx b/packages/tui/src/component/dialog-integration.tsx index 1584a24d279..681111fe4bf 100644 --- a/packages/tui/src/component/dialog-integration.tsx +++ b/packages/tui/src/component/dialog-integration.tsx @@ -10,7 +10,7 @@ import type { FormFields, FormValue, LocationRef, -} from "@opencode-ai/client" +} from "@opencode/client" import open from "open" import { createEffect, createMemo, createSignal, onCleanup, onMount, Show } from "solid-js" import { useClipboard } from "../context/clipboard" diff --git a/packages/tui/src/component/dialog-mcp.tsx b/packages/tui/src/component/dialog-mcp.tsx index dfe07805d68..e2c32baceb9 100644 --- a/packages/tui/src/component/dialog-mcp.tsx +++ b/packages/tui/src/component/dialog-mcp.tsx @@ -7,7 +7,7 @@ import { DialogSelect } from "../ui/dialog-select" import { useDialog } from "../ui/dialog" import { useTheme } from "../context/theme" import { TextAttributes } from "@opentui/core" -import type { McpServer } from "@opencode-ai/client" +import type { McpServer } from "@opencode/client" import { useToast } from "../ui/toast" import { DialogErrorDetails } from "./dialog-error-details" import { DialogIntegration } from "./dialog-integration" diff --git a/packages/tui/src/component/dialog-move-session.tsx b/packages/tui/src/component/dialog-move-session.tsx index 2d1022a14b2..bd4438036e3 100644 --- a/packages/tui/src/component/dialog-move-session.tsx +++ b/packages/tui/src/component/dialog-move-session.tsx @@ -16,7 +16,7 @@ import { isRecord } from "../util/record" import { useToast } from "../ui/toast" import { Spinner } from "./spinner" import { DialogWorkspaceFileChanges } from "./dialog-workspace-file-changes" -import type { WorktreeListOutput } from "@opencode-ai/client" +import type { WorktreeListOutput } from "@opencode/client" import { useRoute } from "../context/route" import { DialogWorktreeName } from "./dialog-worktree-name" diff --git a/packages/tui/src/component/dialog-open.tsx b/packages/tui/src/component/dialog-open.tsx index 4116b882573..941209724a9 100644 --- a/packages/tui/src/component/dialog-open.tsx +++ b/packages/tui/src/component/dialog-open.tsx @@ -1,5 +1,5 @@ import { createMemo, createResource, createSignal, onCleanup, Show } from "solid-js" -import type { OpenCodeEvent, SessionInfo } from "@opencode-ai/client" +import type { OpenCodeEvent, SessionInfo } from "@opencode/client" import { useTerminalDimensions } from "@opentui/solid" import type { RGBA } from "@opentui/core" import { dialogWidth, useDialog } from "../ui/dialog" @@ -16,7 +16,7 @@ import { abbreviateHome } from "../runtime" import { useTuiPaths } from "../context/runtime" import { truncateFilePath } from "../ui/file-path" import { stringWidth } from "../util/string-width" -import { withTimestampedFallback } from "@opencode-ai/util/session-title-fallback" +import { withTimestampedFallback } from "@opencode/util/session-title-fallback" import { Spinner } from "./spinner" import { projectName } from "../util/project" diff --git a/packages/tui/src/component/dialog-session-list.tsx b/packages/tui/src/component/dialog-session-list.tsx index a045a46fb35..4c234f63837 100644 --- a/packages/tui/src/component/dialog-session-list.tsx +++ b/packages/tui/src/component/dialog-session-list.tsx @@ -1,7 +1,7 @@ import { createMemo, createResource, createSignal, onMount, Show } from "solid-js" import path from "path" -import type { SessionInfo } from "@opencode-ai/client" -import { Project } from "@opencode-ai/schema/project" +import type { SessionInfo } from "@opencode/client" +import { Project } from "@opencode/schema/project" import { TextAttributes } from "@opentui/core" import type { RGBA } from "@opentui/core" import { useDialog } from "../ui/dialog" @@ -21,7 +21,7 @@ import { errorMessage } from "../util/error" import { useSessionTabs } from "../context/session-tabs" import { useStorage } from "../context/storage" import { useConfig } from "../config" -import { withTimestampedFallback } from "@opencode-ai/util/session-title-fallback" +import { withTimestampedFallback } from "@opencode/util/session-title-fallback" import { projectName } from "../util/project" import { useLocation } from "../context/location" diff --git a/packages/tui/src/component/dialog-shell-output.tsx b/packages/tui/src/component/dialog-shell-output.tsx index 61c929255d3..6e65c64e7b9 100644 --- a/packages/tui/src/component/dialog-shell-output.tsx +++ b/packages/tui/src/component/dialog-shell-output.tsx @@ -1,6 +1,6 @@ import { TextAttributes, type ScrollBoxRenderable } from "@opentui/core" import { useTerminalDimensions } from "@opentui/solid" -import { isShellNotFoundError, type LocationRef, type ShellInfo } from "@opencode-ai/client" +import { isShellNotFoundError, type LocationRef, type ShellInfo } from "@opencode/client" import { createEffect, createMemo, createSignal, onCleanup, Show, untrack } from "solid-js" import stripAnsi from "strip-ansi" import { useClient } from "../context/client" diff --git a/packages/tui/src/component/dialog-skill.tsx b/packages/tui/src/component/dialog-skill.tsx index bbcd62cf41e..7347fc45f4e 100644 --- a/packages/tui/src/component/dialog-skill.tsx +++ b/packages/tui/src/component/dialog-skill.tsx @@ -5,7 +5,7 @@ import { useDialog } from "../ui/dialog" import { useTheme } from "../context/theme" import { errorMessage } from "../util/error" import { useData } from "../context/data" -import type { LocationRef } from "@opencode-ai/client" +import type { LocationRef } from "@opencode/client" export type DialogSkillProps = { location?: LocationRef diff --git a/packages/tui/src/component/dialog-workspace-file-changes.tsx b/packages/tui/src/component/dialog-workspace-file-changes.tsx index 89eb3c75d04..334467dd7df 100644 --- a/packages/tui/src/component/dialog-workspace-file-changes.tsx +++ b/packages/tui/src/component/dialog-workspace-file-changes.tsx @@ -1,6 +1,6 @@ import { TextAttributes } from "@opentui/core" import { useKeyboard, useTerminalDimensions } from "@opentui/solid" -import type { VcsFileStatus } from "@opencode-ai/client" +import type { VcsFileStatus } from "@opencode/client" import { createMemo, For } from "solid-js" import { createStore } from "solid-js/store" import { FilePath } from "../ui/file-path" diff --git a/packages/tui/src/component/dialog-worktree-name.tsx b/packages/tui/src/component/dialog-worktree-name.tsx index 3acefef48e3..0bef10d54b1 100644 --- a/packages/tui/src/component/dialog-worktree-name.tsx +++ b/packages/tui/src/component/dialog-worktree-name.tsx @@ -1,5 +1,5 @@ import { InputRenderable, TextAttributes } from "@opentui/core" -import { Slug } from "@opencode-ai/core/util/slug" +import { Slug } from "@opencode/core/util/slug" import { createSignal, onMount } from "solid-js" import { Keymap } from "../context/keymap" import { useTheme } from "../context/theme" diff --git a/packages/tui/src/component/prompt/autocomplete.tsx b/packages/tui/src/component/prompt/autocomplete.tsx index 50d71a5d5a8..bb35ea31d29 100644 --- a/packages/tui/src/component/prompt/autocomplete.tsx +++ b/packages/tui/src/component/prompt/autocomplete.tsx @@ -20,8 +20,8 @@ import type { PromptInfo, PromptPartRef } from "../../prompt/history" import { useFrecency } from "../../prompt/frecency" import { Keymap, type KeymapCommand } from "../../context/keymap" import { displayCharAt, mentionTriggerIndex, slashTriggerIndex } from "../../prompt/display" -import type { FileSystemEntry } from "@opencode-ai/client" -import { Skill } from "@opencode-ai/schema/skill" +import type { FileSystemEntry } from "@opencode/client" +import { Skill } from "@opencode/schema/skill" import { stringWidth } from "../../util/string-width" import { parseFileLineRange, stripFileLineRange } from "../../prompt/parse" import { moveSelection, reconcileSelectionWindow, revealSelectionOffset } from "../../ui/select-controller" diff --git a/packages/tui/src/component/prompt/index.tsx b/packages/tui/src/component/prompt/index.tsx index e5486ac2656..eb14f32539a 100644 --- a/packages/tui/src/component/prompt/index.tsx +++ b/packages/tui/src/component/prompt/index.tsx @@ -32,7 +32,7 @@ import { stringWidth } from "../../util/string-width" import { createStore, produce, unwrap } from "solid-js/store" import { emptyPrompt, usePromptHistory, type PromptInfo, type PromptPartRef } from "../../prompt/history" import { saveDraft, takeDraft } from "./draft-stash" -import { Skill } from "@opencode-ai/schema/skill" +import { Skill } from "@opencode/schema/skill" import { computePromptTraits } from "../../prompt/traits" import { expandPastedTextPlaceholders, expandTrackedPastedText } from "../../prompt/part" import { usePromptStash } from "../../prompt/stash" @@ -57,7 +57,7 @@ import { Keymap, type KeymapCommand } from "../../context/keymap" import { useInteractivity } from "../../context/interactivity" import { abbreviateHome } from "../../runtime" import { Slot } from "../../plugin/render" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" +import type { SessionInbox } from "@opencode/schema/session-inbox" import { deduplicatePromptImages, preserveMentionlessPromptAttachments, diff --git a/packages/tui/src/component/terminal-pane.tsx b/packages/tui/src/component/terminal-pane.tsx index 51e4fe9fd11..05515c211a0 100644 --- a/packages/tui/src/component/terminal-pane.tsx +++ b/packages/tui/src/component/terminal-pane.tsx @@ -1,5 +1,5 @@ import { EmbeddedTerminalRenderable, type RGBA } from "@opentui/core" -import type { ResolvedThemeTokens } from "@opencode-ai/theme/tui" +import type { ResolvedThemeTokens } from "@opencode/theme/tui" import { extend, useRenderer } from "@opentui/solid" import { createEffect, createSignal, onCleanup, onMount, Show } from "solid-js" import { useClient } from "../context/client" diff --git a/packages/tui/src/config/index.tsx b/packages/tui/src/config/index.tsx index 55ecd36d3ba..1dd0a464a8b 100644 --- a/packages/tui/src/config/index.tsx +++ b/packages/tui/src/config/index.tsx @@ -1,7 +1,7 @@ export * as Config from "." import { createBindingLookup } from "@opentui/keymap/extras" -import { Vcs } from "@opencode-ai/schema/vcs" +import { Vcs } from "@opencode/schema/vcs" import { Schema } from "effect" import { createContext, onCleanup, type JSX, useContext } from "solid-js" import { createStore, reconcile } from "solid-js/store" diff --git a/packages/tui/src/config/new-session-location.ts b/packages/tui/src/config/new-session-location.ts index 0651e8b7967..ad6313014d6 100644 --- a/packages/tui/src/config/new-session-location.ts +++ b/packages/tui/src/config/new-session-location.ts @@ -1,4 +1,4 @@ -import type { LocationRef } from "@opencode-ai/client/promise" +import type { LocationRef } from "@opencode/client/promise" export function newSessionLocation( mode: "launch" | "inherit", diff --git a/packages/tui/src/context/attention.tsx b/packages/tui/src/context/attention.tsx index bf0f5821653..f6d78964afd 100644 --- a/packages/tui/src/context/attention.tsx +++ b/packages/tui/src/context/attention.tsx @@ -1,4 +1,4 @@ -import type { Attention } from "@opencode-ai/plugin/tui/context" +import type { Attention } from "@opencode/plugin/tui/context" import { useRenderer } from "@opentui/solid" import { createContext, onCleanup, useContext, type ParentProps } from "solid-js" import { createTuiAttention } from "../attention" diff --git a/packages/tui/src/context/client.tsx b/packages/tui/src/context/client.tsx index adf302fc13c..cedd8b92118 100644 --- a/packages/tui/src/context/client.tsx +++ b/packages/tui/src/context/client.tsx @@ -1,5 +1,5 @@ -import type { OpenCodeClient, OpenCodeEvent } from "@opencode-ai/client" -import { createClientConnection, createPersistentPtyClient } from "@opencode-ai/client/solid" +import type { OpenCodeClient, OpenCodeEvent } from "@opencode/client" +import { createClientConnection, createPersistentPtyClient } from "@opencode/client/solid" import { createGlobalEmitter } from "@solid-primitives/event-bus" import { onCleanup } from "solid-js" import { createSimpleContext } from "./helper" diff --git a/packages/tui/src/context/data.tsx b/packages/tui/src/context/data.tsx index fdab4581e8e..3fbff477513 100644 --- a/packages/tui/src/context/data.tsx +++ b/packages/tui/src/context/data.tsx @@ -1,12 +1,12 @@ -import { createData } from "@opencode-ai/client/solid" -import type { LocationRef } from "@opencode-ai/client" -import type { Plugin } from "@opencode-ai/plugin/tui" +import { createData } from "@opencode/client/solid" +import type { LocationRef } from "@opencode/client" +import type { Plugin } from "@opencode/plugin/tui" import { createStore } from "solid-js/store" import { createSimpleContext } from "./helper" import { useClient } from "./client" -export { locationKey } from "@opencode-ai/client/solid" -export type { FormWithLocation } from "@opencode-ai/client/solid" +export { locationKey } from "@opencode/client/solid" +export type { FormWithLocation } from "@opencode/client/solid" export const { use: useData, provider: DataProvider } = createSimpleContext({ name: "Data", diff --git a/packages/tui/src/context/event.ts b/packages/tui/src/context/event.ts index 67d28dfd78b..40519ea7bf5 100644 --- a/packages/tui/src/context/event.ts +++ b/packages/tui/src/context/event.ts @@ -1,4 +1,4 @@ -import type { OpenCodeEvent } from "@opencode-ai/client" +import type { OpenCodeEvent } from "@opencode/client" import { useClient } from "./client" type EventMetadata = { diff --git a/packages/tui/src/context/keymap.tsx b/packages/tui/src/context/keymap.tsx index b1878e7e9d9..bcc98dc5717 100644 --- a/packages/tui/src/context/keymap.tsx +++ b/packages/tui/src/context/keymap.tsx @@ -1,4 +1,4 @@ -import type { KeymapActive, KeymapCommand, KeymapLayer, KeymapPending } from "@opencode-ai/plugin/tui/context" +import type { KeymapActive, KeymapCommand, KeymapLayer, KeymapPending } from "@opencode/plugin/tui/context" import { InputRenderable, TextareaRenderable, type KeyEvent, type Renderable } from "@opentui/core" import { stringifyKeyStroke, type Binding, type CommandContext } from "@opentui/keymap" import { @@ -165,7 +165,7 @@ function Provider(props: ParentProps<{ config?: KeymapConfig }>) { ) } -export type { KeymapCommand, KeymapLayer } from "@opencode-ai/plugin/tui/context" +export type { KeymapCommand, KeymapLayer } from "@opencode/plugin/tui/context" export interface Keymap { /** Dispatches a reachable command by ID. */ diff --git a/packages/tui/src/context/location.tsx b/packages/tui/src/context/location.tsx index 54ae4b34057..8c668757e75 100644 --- a/packages/tui/src/context/location.tsx +++ b/packages/tui/src/context/location.tsx @@ -1,4 +1,4 @@ -import type { LocationGetOutput, LocationRef } from "@opencode-ai/client" +import type { LocationGetOutput, LocationRef } from "@opencode/client" import { createContext, createMemo, createSignal, onCleanup, useContext, type ParentProps } from "solid-js" import { useClient } from "./client" import { useData } from "./data" diff --git a/packages/tui/src/context/panel.tsx b/packages/tui/src/context/panel.tsx index e947c34f89d..8c4abe4b032 100644 --- a/packages/tui/src/context/panel.tsx +++ b/packages/tui/src/context/panel.tsx @@ -1,4 +1,4 @@ -import type { PanelPresentation } from "@opencode-ai/plugin/tui/context" +import type { PanelPresentation } from "@opencode/plugin/tui/context" import { batch, createContext, createMemo, createSignal, useContext, type ParentProps } from "solid-js" export type PanelTarget = { diff --git a/packages/tui/src/context/route.tsx b/packages/tui/src/context/route.tsx index e2ff405e377..ec22baa256c 100644 --- a/packages/tui/src/context/route.tsx +++ b/packages/tui/src/context/route.tsx @@ -1,5 +1,5 @@ import { createStore, reconcile } from "solid-js/store" -import type { LocationRef } from "@opencode-ai/client" +import type { LocationRef } from "@opencode/client" import { createSimpleContext } from "./helper" import type { PromptInfo } from "../prompt/history" import { useTuiStartup } from "./runtime" diff --git a/packages/tui/src/context/session-retention.ts b/packages/tui/src/context/session-retention.ts index 7b2b3d286aa..a6950af95e6 100644 --- a/packages/tui/src/context/session-retention.ts +++ b/packages/tui/src/context/session-retention.ts @@ -1,5 +1,5 @@ import { createEffect, untrack, type Accessor } from "solid-js" -import type { Data } from "@opencode-ai/client/solid" +import type { Data } from "@opencode/client/solid" export function createSessionRetention(input: { session: Pick diff --git a/packages/tui/src/context/session-tabs.tsx b/packages/tui/src/context/session-tabs.tsx index 8bd8fba17fd..0f4f477a5a1 100644 --- a/packages/tui/src/context/session-tabs.tsx +++ b/packages/tui/src/context/session-tabs.tsx @@ -5,7 +5,7 @@ import { isDeepEqual } from "remeda" import { createSimpleContext } from "./helper" import { useClient } from "./client" import { locationKey, useData } from "./data" -import { withTimestampedFallback } from "@opencode-ai/util/session-title-fallback" +import { withTimestampedFallback } from "@opencode/util/session-title-fallback" import { useEvent } from "./event" import { useRoute } from "./route" import { useConfig } from "../config" diff --git a/packages/tui/src/context/session-terminals.tsx b/packages/tui/src/context/session-terminals.tsx index 3c2681e2c3b..bd81afa2005 100644 --- a/packages/tui/src/context/session-terminals.tsx +++ b/packages/tui/src/context/session-terminals.tsx @@ -1,4 +1,4 @@ -import type { PersistentPtyInfo } from "@opencode-ai/client" +import type { PersistentPtyInfo } from "@opencode/client" import { createSignal, onCleanup } from "solid-js" import { createSimpleContext } from "./helper" import { useClient } from "./client" diff --git a/packages/tui/src/context/storage.tsx b/packages/tui/src/context/storage.tsx index 0d1630463c8..e70ba13368f 100644 --- a/packages/tui/src/context/storage.tsx +++ b/packages/tui/src/context/storage.tsx @@ -2,7 +2,7 @@ import { batch, createContext, onCleanup, useContext, type ParentProps } from "s import { createStore, produce, reconcile, type Store } from "solid-js/store" import path from "path" import { mkdirSync, readFileSync, watch } from "fs" -import { Flock } from "@opencode-ai/util/flock" +import { Flock } from "@opencode/util/flock" import { writeJsonAtomic } from "../util/persistence" import { useTuiApp, useTuiPaths } from "./runtime" diff --git a/packages/tui/src/context/theme.tsx b/packages/tui/src/context/theme.tsx index ffddfc75fbc..23cd3055f51 100644 --- a/packages/tui/src/context/theme.tsx +++ b/packages/tui/src/context/theme.tsx @@ -6,7 +6,7 @@ import { themeModes, type ResolvedTheme, type ContextName, -} from "@opencode-ai/theme/tui" +} from "@opencode/theme/tui" import { DEFAULT_THEMES, addTheme, diff --git a/packages/tui/src/feature-plugins/home/footer.tsx b/packages/tui/src/feature-plugins/home/footer.tsx index 06222c60ea6..b13dae51335 100644 --- a/packages/tui/src/feature-plugins/home/footer.tsx +++ b/packages/tui/src/feature-plugins/home/footer.tsx @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { createMemo, Match, Show, Switch } from "solid-js" import { useTerminalDimensions } from "@opentui/solid" import { usePlugin } from "../../plugin/context" diff --git a/packages/tui/src/feature-plugins/prompt/footer.tsx b/packages/tui/src/feature-plugins/prompt/footer.tsx index c25e861d6a1..712745089ed 100644 --- a/packages/tui/src/feature-plugins/prompt/footer.tsx +++ b/packages/tui/src/feature-plugins/prompt/footer.tsx @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { createMemo, createSignal, Match, Show, Switch } from "solid-js" import { contextUsage, formatContextUsage } from "../../util/session" import { useTerminalDimensions } from "@opentui/solid" diff --git a/packages/tui/src/feature-plugins/sidebar/context.tsx b/packages/tui/src/feature-plugins/sidebar/context.tsx index 733683e2743..646cad96cbb 100644 --- a/packages/tui/src/feature-plugins/sidebar/context.tsx +++ b/packages/tui/src/feature-plugins/sidebar/context.tsx @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { createMemo, Show } from "solid-js" import { contextUsage } from "../../util/session" diff --git a/packages/tui/src/feature-plugins/sidebar/footer.tsx b/packages/tui/src/feature-plugins/sidebar/footer.tsx index f1d7d932508..4312fe81526 100644 --- a/packages/tui/src/feature-plugins/sidebar/footer.tsx +++ b/packages/tui/src/feature-plugins/sidebar/footer.tsx @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { createMemo, Show } from "solid-js" import { FilePath } from "../../ui/file-path" import { useWorkingDirectoryActions } from "../../ui/working-directory-actions" diff --git a/packages/tui/src/feature-plugins/sidebar/mcp.tsx b/packages/tui/src/feature-plugins/sidebar/mcp.tsx index 0ea70a11301..e2ecb4b21cd 100644 --- a/packages/tui/src/feature-plugins/sidebar/mcp.tsx +++ b/packages/tui/src/feature-plugins/sidebar/mcp.tsx @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { createMemo, For, Match, Show, Switch, createSignal } from "solid-js" import { DialogMcp } from "../../component/dialog-mcp" diff --git a/packages/tui/src/feature-plugins/system/diff-viewer-file-menu.tsx b/packages/tui/src/feature-plugins/system/diff-viewer-file-menu.tsx index 710f7696bcd..06a8d3f5b80 100644 --- a/packages/tui/src/feature-plugins/system/diff-viewer-file-menu.tsx +++ b/packages/tui/src/feature-plugins/system/diff-viewer-file-menu.tsx @@ -1,5 +1,5 @@ /** @jsxImportSource @opentui/solid */ -import type { Plugin } from "@opencode-ai/plugin/tui" +import type { Plugin } from "@opencode/plugin/tui" import { BoxRenderable, MouseButton } from "@opentui/core" import { Portal, useTerminalDimensions } from "@opentui/solid" import { createSignal, onCleanup } from "solid-js" diff --git a/packages/tui/src/feature-plugins/system/diff-viewer.tsx b/packages/tui/src/feature-plugins/system/diff-viewer.tsx index a5e7d5fe9e7..ce0e568dd8d 100644 --- a/packages/tui/src/feature-plugins/system/diff-viewer.tsx +++ b/packages/tui/src/feature-plugins/system/diff-viewer.tsx @@ -1,8 +1,8 @@ /** @jsxImportSource @opentui/solid */ -import type { FileDiffInfo, LocationRef } from "@opencode-ai/client" -import type { Vcs } from "@opencode-ai/schema/vcs" -import { Plugin } from "@opencode-ai/plugin/tui" -import type { KeymapCommand, Route } from "@opencode-ai/plugin/tui/context" +import type { FileDiffInfo, LocationRef } from "@opencode/client" +import type { Vcs } from "@opencode/schema/vcs" +import { Plugin } from "@opencode/plugin/tui" +import type { KeymapCommand, Route } from "@opencode/plugin/tui/context" import { MouseButton, TextAttributes, diff --git a/packages/tui/src/feature-plugins/system/notifications.ts b/packages/tui/src/feature-plugins/system/notifications.ts index 5b399d50103..7dac4422182 100644 --- a/packages/tui/src/feature-plugins/system/notifications.ts +++ b/packages/tui/src/feature-plugins/system/notifications.ts @@ -1,5 +1,5 @@ -import { Plugin } from "@opencode-ai/plugin/tui" -import type { AttentionSoundName } from "@opencode-ai/plugin/tui/context" +import { Plugin } from "@opencode/plugin/tui" +import type { AttentionSoundName } from "@opencode/plugin/tui/context" function notify( context: Plugin.Context, diff --git a/packages/tui/src/feature-plugins/system/plugins.tsx b/packages/tui/src/feature-plugins/system/plugins.tsx index f1814871714..b26582e7bb0 100644 --- a/packages/tui/src/feature-plugins/system/plugins.tsx +++ b/packages/tui/src/feature-plugins/system/plugins.tsx @@ -1,5 +1,5 @@ -import type { PluginInfo } from "@opencode-ai/client" -import { Plugin } from "@opencode-ai/plugin/tui" +import type { PluginInfo } from "@opencode/client" +import { Plugin } from "@opencode/plugin/tui" import path from "path" import { createEffect, createMemo, createResource, createSignal, onCleanup, onMount, Show } from "solid-js" import { DialogErrorDetails } from "../../component/dialog-error-details" diff --git a/packages/tui/src/feature-plugins/system/stats-data.ts b/packages/tui/src/feature-plugins/system/stats-data.ts index cafd2835320..0c739adee59 100644 --- a/packages/tui/src/feature-plugins/system/stats-data.ts +++ b/packages/tui/src/feature-plugins/system/stats-data.ts @@ -1,5 +1,5 @@ -import type { SessionStatsInfo } from "@opencode-ai/client" -import { TokenUsage } from "@opencode-ai/schema/token-usage" +import type { SessionStatsInfo } from "@opencode/client" +import { TokenUsage } from "@opencode/schema/token-usage" export function statsMetrics(stats: SessionStatsInfo) { return [ diff --git a/packages/tui/src/feature-plugins/system/stats.tsx b/packages/tui/src/feature-plugins/system/stats.tsx index 6dc09f107bd..124f057ec62 100644 --- a/packages/tui/src/feature-plugins/system/stats.tsx +++ b/packages/tui/src/feature-plugins/system/stats.tsx @@ -1,6 +1,6 @@ -import type { SessionStatsInfo } from "@opencode-ai/client" -import { Plugin } from "@opencode-ai/plugin/tui" -import { activityCalendar } from "@opencode-ai/util/activity-calendar" +import type { SessionStatsInfo } from "@opencode/client" +import { Plugin } from "@opencode/plugin/tui" +import { activityCalendar } from "@opencode/util/activity-calendar" import { TextAttributes } from "@opentui/core" import { useTerminalDimensions } from "@opentui/solid" import { createMemo, createResource, createSignal, For, Show } from "solid-js" diff --git a/packages/tui/src/feature-plugins/system/storybook/footer.tsx b/packages/tui/src/feature-plugins/system/storybook/footer.tsx index 722fc23c21a..e9a44099df0 100644 --- a/packages/tui/src/feature-plugins/system/storybook/footer.tsx +++ b/packages/tui/src/feature-plugins/system/storybook/footer.tsx @@ -1,4 +1,4 @@ -import type { Plugin } from "@opencode-ai/plugin/tui" +import type { Plugin } from "@opencode/plugin/tui" import { For, Show } from "solid-js" export type StoryFooterControl = { diff --git a/packages/tui/src/feature-plugins/system/storybook/index.tsx b/packages/tui/src/feature-plugins/system/storybook/index.tsx index 20b959f814b..4830a3f1ae6 100644 --- a/packages/tui/src/feature-plugins/system/storybook/index.tsx +++ b/packages/tui/src/feature-plugins/system/storybook/index.tsx @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { useTerminalDimensions } from "@opentui/solid" import { createSignal, For, type JSX } from "solid-js" import { StoryFooter } from "./footer" diff --git a/packages/tui/src/feature-plugins/system/storybook/merman-layouts.tsx b/packages/tui/src/feature-plugins/system/storybook/merman-layouts.tsx index e2227f35685..1b6b9d4e4bc 100644 --- a/packages/tui/src/feature-plugins/system/storybook/merman-layouts.tsx +++ b/packages/tui/src/feature-plugins/system/storybook/merman-layouts.tsx @@ -1,4 +1,4 @@ -import type { Plugin } from "@opencode-ai/plugin/tui" +import type { Plugin } from "@opencode/plugin/tui" import { useTerminalDimensions } from "@opentui/solid" import { createMemo, createSignal, Show } from "solid-js" import { useTheme, useThemes } from "../../../context/theme" diff --git a/packages/tui/src/feature-plugins/system/storybook/one-cell-spinner.tsx b/packages/tui/src/feature-plugins/system/storybook/one-cell-spinner.tsx index 9cbfbf1daa7..98d1e45b4fb 100644 --- a/packages/tui/src/feature-plugins/system/storybook/one-cell-spinner.tsx +++ b/packages/tui/src/feature-plugins/system/storybook/one-cell-spinner.tsx @@ -1,4 +1,4 @@ -import type { Plugin } from "@opencode-ai/plugin/tui" +import type { Plugin } from "@opencode/plugin/tui" import { TextAttributes, type ScrollBoxRenderable } from "@opentui/core" import { useTerminalDimensions } from "@opentui/solid" import { batch, createEffect, createMemo, createSignal, For, Show } from "solid-js" diff --git a/packages/tui/src/feature-plugins/system/storybook/session-location-missing.tsx b/packages/tui/src/feature-plugins/system/storybook/session-location-missing.tsx index 6b6e9908c57..61c7861418f 100644 --- a/packages/tui/src/feature-plugins/system/storybook/session-location-missing.tsx +++ b/packages/tui/src/feature-plugins/system/storybook/session-location-missing.tsx @@ -1,4 +1,4 @@ -import type { Plugin } from "@opencode-ai/plugin/tui" +import type { Plugin } from "@opencode/plugin/tui" import { useTerminalDimensions } from "@opentui/solid" import { TextAttributes } from "@opentui/core" import { createSignal } from "solid-js" diff --git a/packages/tui/src/feature-plugins/system/storybook/session-tabs.tsx b/packages/tui/src/feature-plugins/system/storybook/session-tabs.tsx index 86ddf5c81b8..d02e9b5c460 100644 --- a/packages/tui/src/feature-plugins/system/storybook/session-tabs.tsx +++ b/packages/tui/src/feature-plugins/system/storybook/session-tabs.tsx @@ -1,4 +1,4 @@ -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { useTerminalDimensions } from "@opentui/solid" import { batch, createSignal, For } from "solid-js" import { createStore, reconcile } from "solid-js/store" diff --git a/packages/tui/src/mini/catalog.shared.ts b/packages/tui/src/mini/catalog.shared.ts index 2210cb3eca3..79edf22b370 100644 --- a/packages/tui/src/mini/catalog.shared.ts +++ b/packages/tui/src/mini/catalog.shared.ts @@ -6,7 +6,7 @@ import type { OpenCodeClient, ProviderListOutput, SkillListOutput, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import type { RunAgent, RunCommand, RunProvider, RunReference } from "./types" type CurrentAgent = AgentListOutput["data"][number] diff --git a/packages/tui/src/mini/demo.ts b/packages/tui/src/mini/demo.ts index 20a9c8c038e..757706aca37 100644 --- a/packages/tui/src/mini/demo.ts +++ b/packages/tui/src/mini/demo.ts @@ -15,7 +15,7 @@ // Demo mode handles permission and Form replies locally, completing or failing // the synthetic tool parts through the same callbacks used by the live footer. import path from "path" -import type { JsonValue, SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { JsonValue, SessionMessageAssistantTool } from "@opencode/client/promise" import { parseSlashHead } from "../prompt/parse" import { writeSessionOutput } from "./stream" import { toolCommit, toolFinalPhase } from "./stream-v2.subagent" diff --git a/packages/tui/src/mini/form.shared.ts b/packages/tui/src/mini/form.shared.ts index e571dabbdcf..da17b5a953f 100644 --- a/packages/tui/src/mini/form.shared.ts +++ b/packages/tui/src/mini/form.shared.ts @@ -1,4 +1,4 @@ -import type { FormAnswer, FormField, FormInfo, FormValue } from "@opencode-ai/client/promise" +import type { FormAnswer, FormField, FormInfo, FormValue } from "@opencode/client/promise" import { formCustom, formDisplayValue, diff --git a/packages/tui/src/mini/runtime.boot.ts b/packages/tui/src/mini/runtime.boot.ts index 46e44ecdc73..3534e8bf03b 100644 --- a/packages/tui/src/mini/runtime.boot.ts +++ b/packages/tui/src/mini/runtime.boot.ts @@ -4,7 +4,7 @@ // needs before the first frame: TUI keymap config, model catalog, and session history for the prompt // history ring. All are async because they read config or hit the SDK, but // none block each other. -import type { LocationRef } from "@opencode-ai/client/promise" +import type { LocationRef } from "@opencode/client/promise" import { resolve } from "../config" import { loadRunProviders } from "./catalog.shared" import { resolveCurrentSession, sessionHistory } from "./session.shared" diff --git a/packages/tui/src/mini/runtime.lifecycle.ts b/packages/tui/src/mini/runtime.lifecycle.ts index 89bb9b150cf..6a103bc8ddf 100644 --- a/packages/tui/src/mini/runtime.lifecycle.ts +++ b/packages/tui/src/mini/runtime.lifecycle.ts @@ -16,7 +16,7 @@ import { type CliRenderer, type ScrollbackWriter, } from "@opentui/core" -import { isFallbackTitle } from "@opencode-ai/util/session-title-fallback" +import { isFallbackTitle } from "@opencode/util/session-title-fallback" import { monoSnapshot } from "./mono" import { entrySplash, exitSplash } from "./splash" import { resolveRunTheme } from "./theme" diff --git a/packages/tui/src/mini/runtime.queue.ts b/packages/tui/src/mini/runtime.queue.ts index cc5c469472b..9cc606bf05c 100644 --- a/packages/tui/src/mini/runtime.queue.ts +++ b/packages/tui/src/mini/runtime.queue.ts @@ -8,7 +8,7 @@ // and tracks per-turn wall-clock duration for the footer status line. // // Resolves when the footer closes and all in-flight work finishes. -import { SessionMessage } from "@opencode-ai/schema/session-message" +import { SessionMessage } from "@opencode/schema/session-message" import { Locale } from "../util/locale" import { isCompactCommand, isExitCommand, isNewCommand } from "./prompt.shared" import type { FooterApi, FooterEvent, RunDelivery, RunPrompt } from "./types" diff --git a/packages/tui/src/mini/runtime.ts b/packages/tui/src/mini/runtime.ts index 5ea8c5500da..f30482e3f16 100644 --- a/packages/tui/src/mini/runtime.ts +++ b/packages/tui/src/mini/runtime.ts @@ -8,8 +8,8 @@ // 3. starts the stream transport (SDK event subscription), lazily for fresh // local sessions, // 4. runs the prompt queue until the footer closes. -import { SessionMessage } from "@opencode-ai/schema/session-message" -import type { LocationRef } from "@opencode-ai/client/promise" +import { SessionMessage } from "@opencode/schema/session-message" +import type { LocationRef } from "@opencode/client/promise" import type { Config } from "../config" import { newSessionLocation } from "../config/new-session-location" import { loadRunAgents, loadRunCommands, loadRunReferences } from "./catalog.shared" diff --git a/packages/tui/src/mini/session.shared.ts b/packages/tui/src/mini/session.shared.ts index 4185937d895..37539674033 100644 --- a/packages/tui/src/mini/session.shared.ts +++ b/packages/tui/src/mini/session.shared.ts @@ -1,4 +1,4 @@ -import type { SessionMessageInfo, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageInfo, SessionMessageUser } from "@opencode/client/promise" import { projectedPromptInput } from "../prompt/codec" import { promptCopy, promptSame } from "./prompt.shared" import type { RunInput, RunPrompt } from "./types" diff --git a/packages/tui/src/mini/stream-v2.image.ts b/packages/tui/src/mini/stream-v2.image.ts index 72ce7d19ade..94623d60276 100644 --- a/packages/tui/src/mini/stream-v2.image.ts +++ b/packages/tui/src/mini/stream-v2.image.ts @@ -1,4 +1,4 @@ -import type { SessionMessageAssistantTool, SessionMessageUser } from "@opencode-ai/client/promise" +import type { SessionMessageAssistantTool, SessionMessageUser } from "@opencode/client/promise" import { deduplicateVisibleImages } from "../prompt/attachment" import { toolDisplayContent } from "../util/tool-display" import type { StreamCommit } from "./types" diff --git a/packages/tui/src/mini/stream-v2.subagent.ts b/packages/tui/src/mini/stream-v2.subagent.ts index c6e1442fb8c..efe5ab72ba9 100644 --- a/packages/tui/src/mini/stream-v2.subagent.ts +++ b/packages/tui/src/mini/stream-v2.subagent.ts @@ -22,7 +22,7 @@ import type { SessionMessageAssistantTool, SessionMessageInfo, SessionMessageUser, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { Locale } from "../util/locale" import { createFragmentReconciler, fragmentRef, type FragmentReconciler } from "./stream-v2.fragment" import { toolImageCommits, userImageCommits } from "./stream-v2.image" diff --git a/packages/tui/src/mini/stream-v2.transport.ts b/packages/tui/src/mini/stream-v2.transport.ts index 03fe7136bf7..0c14e717655 100644 --- a/packages/tui/src/mini/stream-v2.transport.ts +++ b/packages/tui/src/mini/stream-v2.transport.ts @@ -8,9 +8,9 @@ import type { SessionMessageInfo, SessionMessageUser, SessionInboxInfo, -} from "@opencode-ai/client/promise" -import { Event } from "@opencode-ai/schema/event" -import { SessionMessage } from "@opencode-ai/schema/session-message" +} from "@opencode/client/promise" +import { Event } from "@opencode/schema/event" +import { SessionMessage } from "@opencode/schema/session-message" import { blockerStatus, pickBlockerView } from "./session-data" import { writeSessionOutput } from "./stream" import { createFragmentReconciler, fragmentRef, type FragmentReconciler } from "./stream-v2.fragment" diff --git a/packages/tui/src/mini/theme.ts b/packages/tui/src/mini/theme.ts index 0ebd88cf1fa..be3f5da556b 100644 --- a/packages/tui/src/mini/theme.ts +++ b/packages/tui/src/mini/theme.ts @@ -1,5 +1,5 @@ import { RGBA, SyntaxStyle, type CliRenderer, type ColorInput, type TerminalColors } from "@opentui/core" -import { generateSyntax, resolveThemeDocument, themeModes, type ResolvedTheme } from "@opencode-ai/theme/tui" +import { generateSyntax, resolveThemeDocument, themeModes, type ResolvedTheme } from "@opencode/theme/tui" import { allThemes, DEFAULT_THEMES, isThemeSource, parseTheme, type ThemeDocumentSource } from "../theme" import { ansiToRgba } from "../theme/color" import { discoverThemes } from "../theme/discovery" @@ -312,7 +312,7 @@ async function themeSource( mode: "dark" | "light", ): Promise { if (name === "system" && colors) return generateSystem(colors, mode) - const { Global } = await import("@opencode-ai/util/global") + const { Global } = await import("@opencode/util/global") const custom = await discoverThemes( configDirectories(process.env.OPENCODE_CONFIG_DIR ?? Global.Path.config, process.cwd()), ) diff --git a/packages/tui/src/mini/tool.ts b/packages/tui/src/mini/tool.ts index eff72cefa83..c2afca93368 100644 --- a/packages/tui/src/mini/tool.ts +++ b/packages/tui/src/mini/tool.ts @@ -14,7 +14,7 @@ import os from "os" import path from "path" import stripAnsi from "strip-ansi" -import type { SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { SessionMessageAssistantTool } from "@opencode/client/promise" import { LANGUAGE_EXTENSIONS } from "../util/filetype" import { Locale } from "../util/locale" import { diff --git a/packages/tui/src/mini/types.ts b/packages/tui/src/mini/types.ts index a2c806d83a1..64d4972bc49 100644 --- a/packages/tui/src/mini/types.ts +++ b/packages/tui/src/mini/types.ts @@ -20,10 +20,10 @@ import type { PermissionRequest, ReferenceListOutput, SessionMessageAssistantTool, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import type { Config } from "../config" import type { CliRenderer } from "@opentui/core" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" +import type { SessionInbox } from "@opencode/schema/session-inbox" export type RunFilePart = { type: "file" diff --git a/packages/tui/src/plugin/api.tsx b/packages/tui/src/plugin/api.tsx index 7708695214a..61211ab5340 100644 --- a/packages/tui/src/plugin/api.tsx +++ b/packages/tui/src/plugin/api.tsx @@ -1,6 +1,6 @@ -import { PluginContextProvider } from "@opencode-ai/plugin/tui" +import { PluginContextProvider } from "@opencode/plugin/tui" import type { JSX } from "solid-js" -import type { Context, Dialog, Page, SlotClaim, SlotMap, SlotPath, Toast } from "@opencode-ai/plugin/tui/context" +import type { Context, Dialog, Page, SlotClaim, SlotMap, SlotPath, Toast } from "@opencode/plugin/tui/context" import type { Placement, PlacementKind } from "./structure" import { infoStringToFiletype, type MarkdownCodeBlockRenderer } from "@opentui/core" import { useRenderer } from "@opentui/solid" diff --git a/packages/tui/src/plugin/builtins.ts b/packages/tui/src/plugin/builtins.ts index a2cacb8513b..d6a18b9c08c 100644 --- a/packages/tui/src/plugin/builtins.ts +++ b/packages/tui/src/plugin/builtins.ts @@ -8,8 +8,8 @@ import Notifications from "../feature-plugins/system/notifications" import Plugins from "../feature-plugins/system/plugins" import Storybook from "../feature-plugins/system/storybook" import Stats from "../feature-plugins/system/stats" -import Latex from "@opencode-ai/latex/plugin" -import Merman from "@opencode-ai/merman/plugin" +import Latex from "@opencode/latex/plugin" +import Merman from "@opencode/merman/plugin" export const builtins = [ HomeFooter, diff --git a/packages/tui/src/plugin/context.tsx b/packages/tui/src/plugin/context.tsx index b0bd292d727..a3a578b6ecf 100644 --- a/packages/tui/src/plugin/context.tsx +++ b/packages/tui/src/plugin/context.tsx @@ -1,5 +1,5 @@ -import type { PluginInfo } from "@opencode-ai/client" -import type { Plugin } from "@opencode-ai/plugin/tui" +import type { PluginInfo } from "@opencode/client" +import type { Plugin } from "@opencode/plugin/tui" import type { MarkdownCodeBlockRenderer, MarkdownOptions } from "@opentui/core" import { batch, @@ -16,8 +16,8 @@ import { import path from "path" import { stat } from "fs/promises" import { fileURLToPath } from "url" -import type { Page } from "@opencode-ai/plugin/tui/context" -import { Host } from "@opencode-ai/plugin/host" +import type { Page } from "@opencode/plugin/tui/context" +import { Host } from "@opencode/plugin/host" import { resolveSlots, type Claim } from "./structure" import { createStore, produce, reconcile as reconcileStore, unwrap } from "solid-js/store" import { isDeepEqual } from "remeda" diff --git a/packages/tui/src/plugin/discovery.ts b/packages/tui/src/plugin/discovery.ts index 6dd55ff12d1..6fd42bc208c 100644 --- a/packages/tui/src/plugin/discovery.ts +++ b/packages/tui/src/plugin/discovery.ts @@ -1,6 +1,6 @@ import { readdir, stat } from "node:fs/promises" import path from "node:path" -export { localSource } from "@opencode-ai/plugin/source" +export { localSource } from "@opencode/plugin/source" import { isMissingPath, localProjectDirectory, projectConfigDirectories } from "../util/config-directories" export async function localPluginDirectories(cwd: string, configDirectory: string) { diff --git a/packages/tui/src/plugin/render.tsx b/packages/tui/src/plugin/render.tsx index 0a97a1d4949..080114661fc 100644 --- a/packages/tui/src/plugin/render.tsx +++ b/packages/tui/src/plugin/render.tsx @@ -13,7 +13,7 @@ import { type ParentProps, } from "solid-js" import { isShallowEqual } from "remeda" -import type { SlotMap, SlotPath } from "@opencode-ai/plugin/tui/context" +import type { SlotMap, SlotPath } from "@opencode/plugin/tui/context" import type { SlotRender } from "./api" import { contains, emptySlotted, type Claim } from "./structure" import { useRoute } from "../context/route" diff --git a/packages/tui/src/plugin/runtime-plugin-support.bun.ts b/packages/tui/src/plugin/runtime-plugin-support.bun.ts index 409be04a019..e1d7ae2cfa8 100644 --- a/packages/tui/src/plugin/runtime-plugin-support.bun.ts +++ b/packages/tui/src/plugin/runtime-plugin-support.bun.ts @@ -1,8 +1,8 @@ -import { Plugin, PluginContextProvider, usePlugin } from "@opencode-ai/plugin/tui" +import { Plugin, PluginContextProvider, usePlugin } from "@opencode/plugin/tui" import { ensureRuntimePluginSupport } from "@opentui/solid/runtime-plugin-support/configure" ensureRuntimePluginSupport({ additional: { - "@opencode-ai/plugin/tui": { Plugin, PluginContextProvider, usePlugin }, + "@opencode/plugin/tui": { Plugin, PluginContextProvider, usePlugin }, }, }) diff --git a/packages/tui/src/plugin/source.ts b/packages/tui/src/plugin/source.ts index fa6fb53cd42..b3089a24501 100644 --- a/packages/tui/src/plugin/source.ts +++ b/packages/tui/src/plugin/source.ts @@ -1 +1 @@ -export { createPluginSources } from "@opencode-ai/plugin/source" +export { createPluginSources } from "@opencode/plugin/source" diff --git a/packages/tui/src/prompt/attachment.ts b/packages/tui/src/prompt/attachment.ts index edaaaf11252..d3fc469ace2 100644 --- a/packages/tui/src/prompt/attachment.ts +++ b/packages/tui/src/prompt/attachment.ts @@ -1,4 +1,4 @@ -import type { PromptInput } from "@opencode-ai/schema" +import type { PromptInput } from "@opencode/schema" type PromptFile = PromptInput.FileAttachment type PromptFileIdentity = Pick diff --git a/packages/tui/src/prompt/codec.ts b/packages/tui/src/prompt/codec.ts index c4669b78e75..d93130672e8 100644 --- a/packages/tui/src/prompt/codec.ts +++ b/packages/tui/src/prompt/codec.ts @@ -1,5 +1,5 @@ -import type { Prompt, PromptInput } from "@opencode-ai/schema" -import { Skill } from "@opencode-ai/schema/skill" +import type { Prompt, PromptInput } from "@opencode/schema" +import { Skill } from "@opencode/schema/skill" import type { Types } from "effect" export type EditablePromptInput = Types.DeepMutable diff --git a/packages/tui/src/prompt/directory-completion.ts b/packages/tui/src/prompt/directory-completion.ts index a7c8500bca8..33431a4e439 100644 --- a/packages/tui/src/prompt/directory-completion.ts +++ b/packages/tui/src/prompt/directory-completion.ts @@ -1,5 +1,5 @@ -import type { KeymapCommand } from "@opencode-ai/plugin/tui/context" -import type { OpenCodeClient } from "@opencode-ai/client" +import type { KeymapCommand } from "@opencode/plugin/tui/context" +import type { OpenCodeClient } from "@opencode/client" import path from "path" import { displaySlice, promptOffsetWidth } from "./display" import { parseSlashHead } from "./parse" diff --git a/packages/tui/src/prompt/history.tsx b/packages/tui/src/prompt/history.tsx index 4f6d3eda7d0..4efd34f6e5a 100644 --- a/packages/tui/src/prompt/history.tsx +++ b/packages/tui/src/prompt/history.tsx @@ -1,7 +1,7 @@ import path from "path" import { onMount } from "solid-js" import { createStore, produce, unwrap } from "solid-js/store" -import type { PromptInput } from "@opencode-ai/schema" +import type { PromptInput } from "@opencode/schema" import type { Types } from "effect" import { createSimpleContext } from "../context/helper" import { useTuiPaths } from "../context/runtime" diff --git a/packages/tui/src/prompt/mention.ts b/packages/tui/src/prompt/mention.ts index 224e9439419..09ff093cb1d 100644 --- a/packages/tui/src/prompt/mention.ts +++ b/packages/tui/src/prompt/mention.ts @@ -1,4 +1,4 @@ -import type { PromptInput, PromptMention } from "@opencode-ai/schema" +import type { PromptInput, PromptMention } from "@opencode/schema" import type { EditablePromptInput } from "./codec" import { promptOffsetWidth } from "./display" import { expandTrackedPastedText } from "./part" diff --git a/packages/tui/src/routes/session/composer/subagents-tab.tsx b/packages/tui/src/routes/session/composer/subagents-tab.tsx index 4d8a15251e4..5c7473c0859 100644 --- a/packages/tui/src/routes/session/composer/subagents-tab.tsx +++ b/packages/tui/src/routes/session/composer/subagents-tab.tsx @@ -1,7 +1,7 @@ import { createMemo, For, Show, createEffect, onMount, onCleanup } from "solid-js" import { createStore } from "solid-js/store" import { TextAttributes, ScrollBoxRenderable } from "@opentui/core" -import type { SessionInfo } from "@opencode-ai/client" +import type { SessionInfo } from "@opencode/client" import { useRoute, useRouteData } from "../../../context/route" import { useData } from "../../../context/data" import { useClient } from "../../../context/client" @@ -9,7 +9,7 @@ import { useTheme } from "../../../context/theme" import { Locale } from "../../../util/locale" import { Keymap } from "../../../context/keymap" import { useComposerTab } from "./index" -import { withTimestampedFallback } from "@opencode-ai/util/session-title-fallback" +import { withTimestampedFallback } from "@opencode/util/session-title-fallback" import { sessionFamily } from "../../../util/session" interface SubagentEntry { diff --git a/packages/tui/src/routes/session/form.tsx b/packages/tui/src/routes/session/form.tsx index 68bbdfab4d2..c5a007baf04 100644 --- a/packages/tui/src/routes/session/form.tsx +++ b/packages/tui/src/routes/session/form.tsx @@ -11,7 +11,7 @@ import { } from "@opentui/core" import open from "open" import { useTheme, useThemes } from "../../context/theme" -import type { FormAnswer, FormField, FormValue } from "@opencode-ai/client" +import type { FormAnswer, FormField, FormValue } from "@opencode/client" import { useData, type FormWithLocation } from "../../context/data" import { useClipboard } from "../../context/clipboard" import { SplitBorder } from "../../ui/border" diff --git a/packages/tui/src/routes/session/index.tsx b/packages/tui/src/routes/session/index.tsx index 517c3bac71f..4fc7982831c 100644 --- a/packages/tui/src/routes/session/index.tsx +++ b/packages/tui/src/routes/session/index.tsx @@ -37,7 +37,7 @@ import type { SessionMessageAssistantTool, SessionMessageUser, SessionInfo, -} from "@opencode-ai/client" +} from "@opencode/client" import { useLocal } from "../../context/local" import { Locale } from "../../util/locale" import { FilePath } from "../../ui/file-path" @@ -102,10 +102,10 @@ import { switchLabel } from "../../util/model" import { findMessageBoundary, messageNavigationSlack } from "./message-navigation" import { stringWidth } from "../../util/string-width" import { useArgs } from "../../context/args" -import { withTimestampedFallback } from "@opencode-ai/util/session-title-fallback" +import { withTimestampedFallback } from "@opencode/util/session-title-fallback" import { useSessionTabs } from "../../context/session-tabs" import { createSingleFlight } from "../../util/single-flight" -import type { SessionInbox } from "@opencode-ai/schema/session-inbox" +import type { SessionInbox } from "@opencode/schema/session-inbox" import { generateThinkingSyntax } from "./thinking-syntax" import { createDelayedPresence } from "../../util/delayed-presence" import { SessionLocationMissing } from "./location-missing" diff --git a/packages/tui/src/routes/session/message-navigation.ts b/packages/tui/src/routes/session/message-navigation.ts index 5e75fd5df10..6f234371a91 100644 --- a/packages/tui/src/routes/session/message-navigation.ts +++ b/packages/tui/src/routes/session/message-navigation.ts @@ -1,4 +1,4 @@ -import type { SessionMessageInfo } from "@opencode-ai/client" +import type { SessionMessageInfo } from "@opencode/client" type MessageChild = { readonly id?: string diff --git a/packages/tui/src/routes/session/permission.tsx b/packages/tui/src/routes/session/permission.tsx index a80b03ad5e0..fd71965112d 100644 --- a/packages/tui/src/routes/session/permission.tsx +++ b/packages/tui/src/routes/session/permission.tsx @@ -3,7 +3,7 @@ import { createMemo, For, Match, Show, Switch } from "solid-js" import { Portal, useRenderer, useTerminalDimensions, type JSX } from "@opentui/solid" import type { TextareaRenderable } from "@opentui/core" import { useTheme, useThemes } from "../../context/theme" -import type { PermissionReply, PermissionRequest } from "@opencode-ai/client" +import type { PermissionReply, PermissionRequest } from "@opencode/client" import { SplitBorder } from "../../ui/border" import { useData } from "../../context/data" import { filetype } from "../../util/filetype" diff --git a/packages/tui/src/routes/session/rows.ts b/packages/tui/src/routes/session/rows.ts index c1f61f849c1..517b05c6653 100644 --- a/packages/tui/src/routes/session/rows.ts +++ b/packages/tui/src/routes/session/rows.ts @@ -1,4 +1,4 @@ -import type { SessionInboxEnqueued, SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client" +import type { SessionInboxEnqueued, SessionMessageAssistant, SessionMessageInfo } from "@opencode/client" import { createEffect, on, onCleanup, type Accessor } from "solid-js" import { createStore, produce, reconcile } from "solid-js/store" import { useConfig } from "../../config" diff --git a/packages/tui/src/routes/session/sidebar.tsx b/packages/tui/src/routes/session/sidebar.tsx index 533ef1dc5f1..b4b0f67c4ef 100644 --- a/packages/tui/src/routes/session/sidebar.tsx +++ b/packages/tui/src/routes/session/sidebar.tsx @@ -3,7 +3,7 @@ import { createMemo, Show } from "solid-js" import { useTheme } from "../../context/theme" import { useConfig } from "../../config" import { Slot } from "../../plugin/render" -import { withTimestampedFallback } from "@opencode-ai/util/session-title-fallback" +import { withTimestampedFallback } from "@opencode/util/session-title-fallback" import { TextAttributes } from "@opentui/core" import "../../component/title-shimmer" diff --git a/packages/tui/src/simulation/semantics.ts b/packages/tui/src/simulation/semantics.ts index e3368012117..bb0e209528c 100644 --- a/packages/tui/src/simulation/semantics.ts +++ b/packages/tui/src/simulation/semantics.ts @@ -1,5 +1,5 @@ import type { Renderable } from "@opentui/core" -import type { SimulationProtocol } from "@opencode-ai/simulation/protocol" +import type { SimulationProtocol } from "@opencode/simulation/protocol" type Definition = Omit diff --git a/packages/tui/src/theme/component.ts b/packages/tui/src/theme/component.ts index 9ecd37b5ff4..1416c404d10 100644 --- a/packages/tui/src/theme/component.ts +++ b/packages/tui/src/theme/component.ts @@ -1,6 +1,6 @@ import type { RGBA } from "@opentui/core" import type { Accessor } from "solid-js" -import type { Mode, ResolvedTheme, ResolvedThemeTokens } from "@opencode-ai/theme/tui" +import type { Mode, ResolvedTheme, ResolvedThemeTokens } from "@opencode/theme/tui" export function createComponentTheme(current: Accessor, mode: Accessor) { return Object.assign(createComponentThemeView(current, mode), { diff --git a/packages/tui/src/theme/index.ts b/packages/tui/src/theme/index.ts index 205649a28b6..68d7833b3b0 100644 --- a/packages/tui/src/theme/index.ts +++ b/packages/tui/src/theme/index.ts @@ -1,5 +1,5 @@ import { Schema } from "effect" -import { migrateV1, resolveThemeDocument, ThemeDocument, themeDecodeError } from "@opencode-ai/theme/tui" +import { migrateV1, resolveThemeDocument, ThemeDocument, themeDecodeError } from "@opencode/theme/tui" import { resolveThemeColors } from "./resolve" import { DEFAULT_THEMES, type Theme, type ThemeV1Json } from "./v1" diff --git a/packages/tui/src/theme/v1.ts b/packages/tui/src/theme/v1.ts index 6946f9cf728..c1b3426fa80 100644 --- a/packages/tui/src/theme/v1.ts +++ b/packages/tui/src/theme/v1.ts @@ -1,5 +1,5 @@ import { RGBA, SyntaxStyle } from "@opentui/core" -import type { Theme, ThemeV1Json } from "@opencode-ai/theme/tui/v1" +import type { Theme, ThemeV1Json } from "@opencode/theme/tui/v1" import aura from "./assets/aura.json" with { type: "json" } import ayu from "./assets/ayu.json" with { type: "json" } import carbonfox from "./assets/carbonfox.json" with { type: "json" } @@ -34,7 +34,7 @@ import vercel from "./assets/vercel.json" with { type: "json" } import vesper from "./assets/vesper.json" with { type: "json" } import zenburn from "./assets/zenburn.json" with { type: "json" } -export type { ColorValue, HexColor, RefName, Theme, ThemeColor, ThemeV1Json, Variant } from "@opencode-ai/theme/tui/v1" +export type { ColorValue, HexColor, RefName, Theme, ThemeColor, ThemeV1Json, Variant } from "@opencode/theme/tui/v1" export const DEFAULT_THEMES: Record = { aura, diff --git a/packages/tui/src/util/connected-provider.ts b/packages/tui/src/util/connected-provider.ts index 2fbb9f718e0..f75ab97390f 100644 --- a/packages/tui/src/util/connected-provider.ts +++ b/packages/tui/src/util/connected-provider.ts @@ -1,4 +1,4 @@ -import type { IntegrationInfo } from "@opencode-ai/client" +import type { IntegrationInfo } from "@opencode/client" export function hasConnectedProvider(integrations: readonly Pick[]) { return integrations.some((integration) => integration.connections.length > 0) diff --git a/packages/tui/src/util/form.ts b/packages/tui/src/util/form.ts index 67348059501..9a7de27b6ee 100644 --- a/packages/tui/src/util/form.ts +++ b/packages/tui/src/util/form.ts @@ -1,4 +1,4 @@ -import type { FormField, FormValue } from "@opencode-ai/client" +import type { FormField, FormValue } from "@opencode/client" export type FormAnswerField = Exclude diff --git a/packages/tui/src/util/session.ts b/packages/tui/src/util/session.ts index b516dca75f0..7c95b45f98d 100644 --- a/packages/tui/src/util/session.ts +++ b/packages/tui/src/util/session.ts @@ -1,4 +1,4 @@ -import type { ModelInfo, SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client" +import type { ModelInfo, SessionMessageAssistant, SessionMessageInfo } from "@opencode/client" import { Locale } from "./locale" type SessionNode = { diff --git a/packages/tui/src/util/tool-display.ts b/packages/tui/src/util/tool-display.ts index cc851aed1d5..4a626860196 100644 --- a/packages/tui/src/util/tool-display.ts +++ b/packages/tui/src/util/tool-display.ts @@ -47,4 +47,4 @@ export function nonEmptyToolContent(content: ReadonlyArray | undefined): [ const [first, ...rest] = content return first === undefined ? undefined : [first, ...rest] } -import type { SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { SessionMessageAssistantTool } from "@opencode/client/promise" diff --git a/packages/tui/test/app-lifecycle.test.tsx b/packages/tui/test/app-lifecycle.test.tsx index 4f0a067758a..d6ab9e337a9 100644 --- a/packages/tui/test/app-lifecycle.test.tsx +++ b/packages/tui/test/app-lifecycle.test.tsx @@ -2,13 +2,13 @@ import { expect, test } from "bun:test" import { EmbeddedTerminalRenderable } from "@opentui/core" import { createTestRenderer } from "@opentui/core/testing" import { Effect, FileSystem } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Global } from "@opencode-ai/util/global" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Global } from "@opencode/util/global" import path from "node:path" import { createEventStream, createFetch, directory, json } from "./fixture/tui-client" import { tmpdir } from "./fixture/fixture" import { createAppFixture } from "./fixture/app" -import type { PluginInfo } from "@opencode-ai/client" +import type { PluginInfo } from "@opencode/client" test.each([100, 44])("Ctrl-O is immediate, dismissible, and prunes cached deletions at width %s", async (width) => { await using state = await tmpdir() diff --git a/packages/tui/test/cli/cmd/tui/integration-options.test.ts b/packages/tui/test/cli/cmd/tui/integration-options.test.ts index 7f6f1fc0167..79f482feb50 100644 --- a/packages/tui/test/cli/cmd/tui/integration-options.test.ts +++ b/packages/tui/test/cli/cmd/tui/integration-options.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { IntegrationInfo } from "@opencode-ai/client" +import type { IntegrationInfo } from "@opencode/client" import { connectionSummary, connectMethods, diff --git a/packages/tui/test/cli/cmd/tui/notifications.test.ts b/packages/tui/test/cli/cmd/tui/notifications.test.ts index 9918d26238c..b5502eed575 100644 --- a/packages/tui/test/cli/cmd/tui/notifications.test.ts +++ b/packages/tui/test/cli/cmd/tui/notifications.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import Notifications from "../../../../src/feature-plugins/system/notifications" -import type { OpenCodeEvent, PermissionAsked } from "@opencode-ai/client" -import type { AttentionNotifyOptions, Context, Route, ToastOptions } from "@opencode-ai/plugin/tui/context" +import type { OpenCodeEvent, PermissionAsked } from "@opencode/client" +import type { AttentionNotifyOptions, Context, Route, ToastOptions } from "@opencode/plugin/tui/context" type Session = { id: string; title: string; parentID?: string } diff --git a/packages/tui/test/cli/tui/data.test.tsx b/packages/tui/test/cli/tui/data.test.tsx index 2429392b479..c4d518b0664 100644 --- a/packages/tui/test/cli/tui/data.test.tsx +++ b/packages/tui/test/cli/tui/data.test.tsx @@ -1,10 +1,10 @@ /** @jsxImportSource @opentui/solid */ import { expect, test } from "bun:test" import { testRender } from "@opentui/solid" -import type { OpenCodeEvent } from "@opencode-ai/client" -import { SessionMessage } from "@opencode-ai/core/session/message" -import { Bus } from "@opencode-ai/core/bus" -import { Event } from "@opencode-ai/schema/event" +import type { OpenCodeEvent } from "@opencode/client" +import { SessionMessage } from "@opencode/core/session/message" +import { Bus } from "@opencode/core/bus" +import { Event } from "@opencode/schema/event" import { Expected } from "../../../../core/test/lib/session-message" import { createEffect, onMount, type ParentProps } from "solid-js" import { ConfigProvider } from "../../../src/config" diff --git a/packages/tui/test/cli/tui/dialog-integration.test.tsx b/packages/tui/test/cli/tui/dialog-integration.test.tsx index ba52519e872..c2f73d89d57 100644 --- a/packages/tui/test/cli/tui/dialog-integration.test.tsx +++ b/packages/tui/test/cli/tui/dialog-integration.test.tsx @@ -1,6 +1,6 @@ /** @jsxImportSource @opentui/solid */ import { InputRenderable, TextareaRenderable } from "@opentui/core" -import type { LocationRef } from "@opencode-ai/client" +import type { LocationRef } from "@opencode/client" import { testRender } from "@opentui/solid" import { expect, test } from "bun:test" import { onMount } from "solid-js" diff --git a/packages/tui/test/cli/tui/dialog-open.test.tsx b/packages/tui/test/cli/tui/dialog-open.test.tsx index f66842d83c8..7db0c043bea 100644 --- a/packages/tui/test/cli/tui/dialog-open.test.tsx +++ b/packages/tui/test/cli/tui/dialog-open.test.tsx @@ -4,7 +4,7 @@ import { once } from "node:events" import { CliRenderEvents, TextAttributes } from "@opentui/core" import { testRender } from "@opentui/solid" import { createSignal, onMount } from "solid-js" -import type { SessionInfo } from "@opencode-ai/client" +import type { SessionInfo } from "@opencode/client" import { DialogOpen, DialogOpenKey } from "../../../src/component/dialog-open" import { ConfigProvider } from "../../../src/config" import { ClientProvider } from "../../../src/context/client" diff --git a/packages/tui/test/cli/tui/diff-viewer.test.tsx b/packages/tui/test/cli/tui/diff-viewer.test.tsx index 2698c4a934c..94ee08840d4 100644 --- a/packages/tui/test/cli/tui/diff-viewer.test.tsx +++ b/packages/tui/test/cli/tui/diff-viewer.test.tsx @@ -22,7 +22,7 @@ import type { Page, SlotClaim, Route, -} from "@opencode-ai/plugin/tui/context" +} from "@opencode/plugin/tui/context" import { ThemeProvider, useThemes } from "../../../src/context/theme" import { emptyThemeSource, tmpdir } from "../../fixture/fixture" import { StorageProvider, useStorage } from "../../../src/context/storage" diff --git a/packages/tui/test/cli/tui/input-scope.test.tsx b/packages/tui/test/cli/tui/input-scope.test.tsx index 5237eb0efc9..39d6b87524d 100644 --- a/packages/tui/test/cli/tui/input-scope.test.tsx +++ b/packages/tui/test/cli/tui/input-scope.test.tsx @@ -1,5 +1,5 @@ /** @jsxImportSource @opentui/solid */ -import type { PermissionRequest } from "@opencode-ai/client" +import type { PermissionRequest } from "@opencode/client" import type { TextareaRenderable } from "@opentui/core" import { testRender, type JSX } from "@opentui/solid" import { expect, test } from "bun:test" diff --git a/packages/tui/test/cli/tui/message-navigation.test.ts b/packages/tui/test/cli/tui/message-navigation.test.ts index 97a29458f3b..860382ae39d 100644 --- a/packages/tui/test/cli/tui/message-navigation.test.ts +++ b/packages/tui/test/cli/tui/message-navigation.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client" +import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode/client" import { findMessageBoundary, messageNavigationSlack } from "../../../src/routes/session/message-navigation" const messages: SessionMessageInfo[] = [ diff --git a/packages/tui/test/cli/tui/plugins-dialog.test.tsx b/packages/tui/test/cli/tui/plugins-dialog.test.tsx index 6ab74cafb1b..9d9b552f642 100644 --- a/packages/tui/test/cli/tui/plugins-dialog.test.tsx +++ b/packages/tui/test/cli/tui/plugins-dialog.test.tsx @@ -4,8 +4,8 @@ import { testRender } from "@opentui/solid" import { mkdir } from "node:fs/promises" import path from "node:path" import { onCleanup } from "solid-js" -import type { PluginInfo } from "@opencode-ai/client" -import type { Context, ToastOptions } from "@opencode-ai/plugin/tui/context" +import type { PluginInfo } from "@opencode/client" +import type { Context, ToastOptions } from "@opencode/plugin/tui/context" import { ConfigProvider } from "../../../src/config" import { Keymap } from "../../../src/context/keymap" import { ThemeProvider, useThemes } from "../../../src/context/theme" diff --git a/packages/tui/test/cli/tui/session-rows.test.ts b/packages/tui/test/cli/tui/session-rows.test.ts index 2a084443176..00d9e54eabc 100644 --- a/packages/tui/test/cli/tui/session-rows.test.ts +++ b/packages/tui/test/cli/tui/session-rows.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode-ai/client" +import type { SessionMessageAssistant, SessionMessageInfo } from "@opencode/client" import { createMemo, createRoot } from "solid-js" import { createStore } from "solid-js/store" import { diff --git a/packages/tui/test/cli/tui/theme-mode.test.tsx b/packages/tui/test/cli/tui/theme-mode.test.tsx index 4fc4e93be3d..eace181772d 100644 --- a/packages/tui/test/cli/tui/theme-mode.test.tsx +++ b/packages/tui/test/cli/tui/theme-mode.test.tsx @@ -3,7 +3,7 @@ import { testRender } from "@opentui/solid" import { expect, test } from "bun:test" import { RGBA } from "@opentui/core" import { createSignal } from "solid-js" -import { DEFAULT_THEME, selectTheme } from "@opencode-ai/theme/tui" +import { DEFAULT_THEME, selectTheme } from "@opencode/theme/tui" import { createTuiResolvedConfig } from "../../fixture/tui-runtime" import { DEFAULT_THEMES } from "../../../src/theme" import { ConfigProvider } from "../../../src/config" diff --git a/packages/tui/test/cli/tui/use-event.test.tsx b/packages/tui/test/cli/tui/use-event.test.tsx index 3b239b50e96..740f090b51b 100644 --- a/packages/tui/test/cli/tui/use-event.test.tsx +++ b/packages/tui/test/cli/tui/use-event.test.tsx @@ -1,6 +1,6 @@ /** @jsxImportSource @opentui/solid */ import { describe, expect, test } from "bun:test" -import type { OpenCodeClient, OpenCodeEvent } from "@opencode-ai/client" +import type { OpenCodeClient, OpenCodeEvent } from "@opencode/client" import { testRender } from "@opentui/solid" import { onMount } from "solid-js" import { ClientProvider, useClient } from "../../../src/context/client" diff --git a/packages/tui/test/compact-admission.test.tsx b/packages/tui/test/compact-admission.test.tsx index 861684b9722..d11aa1d09a3 100644 --- a/packages/tui/test/compact-admission.test.tsx +++ b/packages/tui/test/compact-admission.test.tsx @@ -2,7 +2,7 @@ import { expect, test } from "bun:test" import { createTestRenderer } from "@opentui/core/testing" import { InputRenderable } from "@opentui/core" import { Effect, FileSystem } from "effect" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { createEventStream, createFetch, directory, json } from "./fixture/tui-client" import { tmpdir } from "./fixture/fixture" diff --git a/packages/tui/test/completion-notices.test.tsx b/packages/tui/test/completion-notices.test.tsx index dfce19b0cd2..840300fdabc 100644 --- a/packages/tui/test/completion-notices.test.tsx +++ b/packages/tui/test/completion-notices.test.tsx @@ -2,7 +2,7 @@ import { expect, test } from "bun:test" import { type Renderable, ScrollBoxRenderable } from "@opentui/core" import { createTestRenderer } from "@opentui/core/testing" import { Effect, FileSystem } from "effect" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { createEventStream, createFetch, directory, json } from "./fixture/tui-client" import { tmpdir } from "./fixture/fixture" diff --git a/packages/tui/test/component/dialog-shell-output.test.tsx b/packages/tui/test/component/dialog-shell-output.test.tsx index 2912df24951..14a133eae83 100644 --- a/packages/tui/test/component/dialog-shell-output.test.tsx +++ b/packages/tui/test/component/dialog-shell-output.test.tsx @@ -1,7 +1,7 @@ /** @jsxImportSource @opentui/solid */ import { ScrollBoxRenderable } from "@opentui/core" import { testRender } from "@opentui/solid" -import type { ShellInfo } from "@opencode-ai/client" +import type { ShellInfo } from "@opencode/client" import { expect, test } from "bun:test" import { createSignal, onMount } from "solid-js" import { ConfigProvider } from "../../src/config" diff --git a/packages/tui/test/context/session-retention.test.ts b/packages/tui/test/context/session-retention.test.ts index a7b7f8a4f6a..1e60802e49d 100644 --- a/packages/tui/test/context/session-retention.test.ts +++ b/packages/tui/test/context/session-retention.test.ts @@ -1,6 +1,6 @@ import { expect, test } from "bun:test" -import type { OpenCodeEvent } from "@opencode-ai/client" -import { createData } from "@opencode-ai/client/solid" +import type { OpenCodeEvent } from "@opencode/client" +import { createData } from "@opencode/client/solid" import { createGlobalEmitter } from "@solid-primitives/event-bus" import { createRoot, createSignal } from "solid-js" import { createSessionRetention } from "../../src/context/session-retention" diff --git a/packages/tui/test/context/session-tabs.test.tsx b/packages/tui/test/context/session-tabs.test.tsx index 51263831d71..a259c5b782d 100644 --- a/packages/tui/test/context/session-tabs.test.tsx +++ b/packages/tui/test/context/session-tabs.test.tsx @@ -1,6 +1,6 @@ /** @jsxImportSource @opentui/solid */ import { expect, test } from "bun:test" -import type { OpenCodeEvent } from "@opencode-ai/client" +import type { OpenCodeEvent } from "@opencode/client" import { testRender } from "@opentui/solid" import { mkdirSync, watch } from "fs" import path from "path" diff --git a/packages/tui/test/copy-session-id.test.tsx b/packages/tui/test/copy-session-id.test.tsx index 4e5f50153df..9ea71925bb7 100644 --- a/packages/tui/test/copy-session-id.test.tsx +++ b/packages/tui/test/copy-session-id.test.tsx @@ -2,7 +2,7 @@ import { expect, spyOn, test } from "bun:test" import { InputRenderable, TextareaRenderable } from "@opentui/core" import { createTestRenderer } from "@opentui/core/testing" import { Effect, FileSystem } from "effect" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { createEventStream, createFetch, directory, json } from "./fixture/tui-client" import { tmpdir } from "./fixture/fixture" diff --git a/packages/tui/test/feature-plugins/prompt-footer.test.tsx b/packages/tui/test/feature-plugins/prompt-footer.test.tsx index 869c8e808de..9cacc58e58c 100644 --- a/packages/tui/test/feature-plugins/prompt-footer.test.tsx +++ b/packages/tui/test/feature-plugins/prompt-footer.test.tsx @@ -2,7 +2,7 @@ import { expect, test } from "bun:test" import { RGBA, TextRenderable } from "@opentui/core" import { testRender } from "@opentui/solid" -import type { Context } from "@opencode-ai/plugin/tui/context" +import type { Context } from "@opencode/plugin/tui/context" import { createSignal } from "solid-js" import { PromptFooter } from "../../src/feature-plugins/prompt/footer" diff --git a/packages/tui/test/feature-plugins/sidebar-context.test.tsx b/packages/tui/test/feature-plugins/sidebar-context.test.tsx index e984caaf968..71826aefb69 100644 --- a/packages/tui/test/feature-plugins/sidebar-context.test.tsx +++ b/packages/tui/test/feature-plugins/sidebar-context.test.tsx @@ -2,7 +2,7 @@ import { expect, test } from "bun:test" import { RGBA } from "@opentui/core" import { testRender } from "@opentui/solid" -import type { Context } from "@opencode-ai/plugin/tui/context" +import type { Context } from "@opencode/plugin/tui/context" import { SidebarContext } from "../../src/feature-plugins/sidebar/context" function context(options?: { cost?: number; tokens?: number }) { diff --git a/packages/tui/test/fixture/app.ts b/packages/tui/test/fixture/app.ts index 25a37410c7c..22f4844c840 100644 --- a/packages/tui/test/fixture/app.ts +++ b/packages/tui/test/fixture/app.ts @@ -1,7 +1,7 @@ import { createTestRenderer } from "@opentui/core/testing" import { Effect, FileSystem } from "effect" -import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" -import { Global } from "@opencode-ai/util/global" +import { AppNodeBuilder } from "@opencode/core/effect/app-node-builder" +import { Global } from "@opencode/util/global" import type { TuiInput } from "../../src/app" import type { Config } from "../../src/config" import { createEventStream, createFetch, type FetchHandler } from "./tui-client" diff --git a/packages/tui/test/fixture/local.tsx b/packages/tui/test/fixture/local.tsx index a0033efe097..7dac10ac59e 100644 --- a/packages/tui/test/fixture/local.tsx +++ b/packages/tui/test/fixture/local.tsx @@ -1,5 +1,5 @@ import { testRender } from "@opentui/solid" -import type { AgentInfo, ModelInfo, SessionInfo } from "@opencode-ai/client" +import type { AgentInfo, ModelInfo, SessionInfo } from "@opencode/client" import path from "node:path" import { ConfigProvider } from "../../src/config" import { ArgsProvider, type Args } from "../../src/context/args" diff --git a/packages/tui/test/fixture/tui-client.ts b/packages/tui/test/fixture/tui-client.ts index b0a116e5857..558ead5e083 100644 --- a/packages/tui/test/fixture/tui-client.ts +++ b/packages/tui/test/fixture/tui-client.ts @@ -1,4 +1,4 @@ -import { OpenCode, type OpenCodeEvent } from "@opencode-ai/client" +import { OpenCode, type OpenCodeEvent } from "@opencode/client" export const worktree = "/tmp/opencode" export const directory = `${worktree}/packages/tui` diff --git a/packages/tui/test/mini/catalog.shared.test.ts b/packages/tui/test/mini/catalog.shared.test.ts index fbfdf40089f..3d255781c35 100644 --- a/packages/tui/test/mini/catalog.shared.test.ts +++ b/packages/tui/test/mini/catalog.shared.test.ts @@ -1,5 +1,5 @@ import { afterEach, describe, expect, mock, spyOn, test } from "bun:test" -import { OpenCode } from "@opencode-ai/client/promise" +import { OpenCode } from "@opencode/client/promise" import { loadRunReferences, runProviders } from "../../src/mini/catalog.shared" import { catalogModel, catalogProvider } from "./fixture/catalog" diff --git a/packages/tui/test/mini/entry.body.test.ts b/packages/tui/test/mini/entry.body.test.ts index 6151b719fb6..42b53ecc6c5 100644 --- a/packages/tui/test/mini/entry.body.test.ts +++ b/packages/tui/test/mini/entry.body.test.ts @@ -1,7 +1,7 @@ import { describe, expect, test } from "bun:test" import os from "os" import path from "path" -import type { SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { SessionMessageAssistantTool } from "@opencode/client/promise" import { entryBody, entryCanStream, entryDone } from "../../src/mini/entry.body" import type { StreamCommit, ToolSnapshot } from "../../src/mini/types" import { canonicalToolPart } from "./fixture/tool-part" diff --git a/packages/tui/test/mini/fixture/catalog.ts b/packages/tui/test/mini/fixture/catalog.ts index 39ac1383ee9..9dfb4b9077c 100644 --- a/packages/tui/test/mini/fixture/catalog.ts +++ b/packages/tui/test/mini/fixture/catalog.ts @@ -1,5 +1,5 @@ import { spyOn } from "bun:test" -import type { LocationRef, ModelListOutput, OpenCodeClient, ProviderListOutput } from "@opencode-ai/client/promise" +import type { LocationRef, ModelListOutput, OpenCodeClient, ProviderListOutput } from "@opencode/client/promise" export function catalogProvider(id: string, name: string): ProviderListOutput["data"][number] { return { diff --git a/packages/tui/test/mini/fixture/tool-part.ts b/packages/tui/test/mini/fixture/tool-part.ts index 4c74f9336e5..d745d3b11e6 100644 --- a/packages/tui/test/mini/fixture/tool-part.ts +++ b/packages/tui/test/mini/fixture/tool-part.ts @@ -1,4 +1,4 @@ -import type { SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { SessionMessageAssistantTool } from "@opencode/client/promise" export function canonicalToolPart( name: string, diff --git a/packages/tui/test/mini/footer.view.test.tsx b/packages/tui/test/mini/footer.view.test.tsx index 0e9018c632b..3065abaa319 100644 --- a/packages/tui/test/mini/footer.view.test.tsx +++ b/packages/tui/test/mini/footer.view.test.tsx @@ -4,7 +4,7 @@ import { BoxRenderable, ImageRenderable, RGBA, type CliRenderer, type RootRender import { createTestRenderer } from "@opentui/core/testing" import { testRender } from "@opentui/solid" import { createSignal } from "solid-js" -import type { FormInfo } from "@opencode-ai/client/promise" +import type { FormInfo } from "@opencode/client/promise" import { Keymap } from "../../src/context/keymap" import type { ClipboardContent, ClipboardService } from "../../src/context/clipboard" import { diff --git a/packages/tui/test/mini/form.shared.test.ts b/packages/tui/test/mini/form.shared.test.ts index d9285da2ac9..086f486f36d 100644 --- a/packages/tui/test/mini/form.shared.test.ts +++ b/packages/tui/test/mini/form.shared.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { FormField, FormInfo } from "@opencode-ai/client/promise" +import type { FormField, FormInfo } from "@opencode/client/promise" import { createFormBodyState, formAcknowledge, diff --git a/packages/tui/test/mini/runtime.boot.test.ts b/packages/tui/test/mini/runtime.boot.test.ts index 52fd9a0e5f1..ddb2d42e714 100644 --- a/packages/tui/test/mini/runtime.boot.test.ts +++ b/packages/tui/test/mini/runtime.boot.test.ts @@ -1,5 +1,5 @@ import { afterEach, describe, expect, mock, spyOn, test } from "bun:test" -import { OpenCode } from "@opencode-ai/client/promise" +import { OpenCode } from "@opencode/client/promise" import { resolveMiniSettings, resolveModelInfo, resolveRunTuiConfig } from "../../src/mini/runtime.boot" import { catalogModel, catalogProvider } from "./fixture/catalog" import { createTuiResolvedConfig } from "../fixture/tui-runtime" diff --git a/packages/tui/test/mini/runtime.test.ts b/packages/tui/test/mini/runtime.test.ts index 62a8980401e..c26935e7fe6 100644 --- a/packages/tui/test/mini/runtime.test.ts +++ b/packages/tui/test/mini/runtime.test.ts @@ -1,5 +1,5 @@ import { afterEach, describe, expect, mock, spyOn, test } from "bun:test" -import { OpenCode } from "@opencode-ai/client/promise" +import { OpenCode } from "@opencode/client/promise" import { runInteractiveDeferredMode } from "../../src/mini/runtime" import type { LifecycleInput } from "../../src/mini/runtime.lifecycle" import type { FooterEvent, MiniHost } from "../../src/mini/types" diff --git a/packages/tui/test/mini/scrollback.surface.test.ts b/packages/tui/test/mini/scrollback.surface.test.ts index cb8b87c1b34..52aab18367d 100644 --- a/packages/tui/test/mini/scrollback.surface.test.ts +++ b/packages/tui/test/mini/scrollback.surface.test.ts @@ -1,5 +1,5 @@ import { afterEach, expect, test } from "bun:test" -import type { SessionMessageAssistantTool } from "@opencode-ai/client/promise" +import type { SessionMessageAssistantTool } from "@opencode/client/promise" import { CliRenderEvents, MarkdownRenderable, RGBA, SyntaxStyle, TextAttributes, TextRenderable } from "@opentui/core" import { MockTreeSitterClient, createTestRenderer, type TestRenderer } from "@opentui/core/testing" import { monoSnapshot } from "../../src/mini/mono" diff --git a/packages/tui/test/mini/session.shared.test.ts b/packages/tui/test/mini/session.shared.test.ts index 87061415aa5..2604459611a 100644 --- a/packages/tui/test/mini/session.shared.test.ts +++ b/packages/tui/test/mini/session.shared.test.ts @@ -1,5 +1,5 @@ import { afterEach, describe, expect, mock, spyOn, test } from "bun:test" -import { OpenCode, type SessionMessageUser } from "@opencode-ai/client/promise" +import { OpenCode, type SessionMessageUser } from "@opencode/client/promise" import { createSession, resolveCurrentSession, diff --git a/packages/tui/test/mini/stream-v2.transport.test.ts b/packages/tui/test/mini/stream-v2.transport.test.ts index a77624f0324..40277dc1cb3 100644 --- a/packages/tui/test/mini/stream-v2.transport.test.ts +++ b/packages/tui/test/mini/stream-v2.transport.test.ts @@ -11,7 +11,7 @@ import { type PermissionRequest, type SessionInboxInfo, type ToolContent, -} from "@opencode-ai/client/promise" +} from "@opencode/client/promise" import { createSessionTransport } from "../../src/mini/stream-v2.transport" import { runPromptQueue } from "../../src/mini/runtime.queue" import { entryBody } from "../../src/mini/entry.body" diff --git a/packages/tui/test/mini/theme.test.ts b/packages/tui/test/mini/theme.test.ts index b2a0d70bad1..d15e277f6a9 100644 --- a/packages/tui/test/mini/theme.test.ts +++ b/packages/tui/test/mini/theme.test.ts @@ -1,7 +1,7 @@ import { afterAll, beforeAll, expect, test } from "bun:test" import path from "node:path" import { RGBA, type CliRenderer, type TerminalColors } from "@opentui/core" -import { DEFAULT_THEME, resolveThemeDocument, type ResolvedTheme } from "@opencode-ai/theme/tui" +import { DEFAULT_THEME, resolveThemeDocument, type ResolvedTheme } from "@opencode/theme/tui" import { RUN_THEME_MONO, RUN_THEME_FALLBACK, diff --git a/packages/tui/test/plugin-source.test.ts b/packages/tui/test/plugin-source.test.ts index cc0c1faa898..8dd30e14065 100644 --- a/packages/tui/test/plugin-source.test.ts +++ b/packages/tui/test/plugin-source.test.ts @@ -2,12 +2,12 @@ import { expect, test } from "bun:test" import path from "node:path" import { mkdir, rename, symlink } from "node:fs/promises" import { fileURLToPath, pathToFileURL } from "node:url" -import { Host } from "@opencode-ai/plugin/host" +import { Host } from "@opencode/plugin/host" import "../src/plugin/runtime-plugin-support.bun" import { createPluginSources } from "../src/plugin/source" import { createSourceWatcher } from "../src/plugin/watch" import { createSignal } from "solid-js" -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { tmpdir } from "./fixture/fixture" test("a fresh local plugin generation observes edited helper exports", async () => { @@ -101,7 +101,7 @@ test("shared runtime and ordinary package identities survive plugin generations" await Bun.write( entry, `import { createSignal } from "solid-js" - import { Plugin } from "@opencode-ai/plugin/tui" + import { Plugin } from "@opencode/plugin/tui" import value from "example" export { createSignal, Plugin, value }; export const label = ${JSON.stringify(label)}`, ) @@ -324,7 +324,7 @@ test("each helper resolves packages from its own directory", async () => { const entry = new URL("tui.ts", sources.url) await Bun.write( entry, - 'import { Plugin } from "@opencode-ai/plugin/tui"; import value from "./nested/helper"; export default { Plugin, value }', + 'import { Plugin } from "@opencode/plugin/tui"; import value from "./nested/helper"; export default { Plugin, value }', ) await Bun.write(new URL("nested/helper.ts", sources.url), 'import value from "example"; export default value') for (const directory of ["", "nested/"]) { diff --git a/packages/tui/test/prompt/autocomplete.test.ts b/packages/tui/test/prompt/autocomplete.test.ts index b7527f9f6dc..5e9bf6bd0b0 100644 --- a/packages/tui/test/prompt/autocomplete.test.ts +++ b/packages/tui/test/prompt/autocomplete.test.ts @@ -1,6 +1,6 @@ import { describe, expect, test } from "bun:test" import path from "path" -import type { KeymapCommand } from "@opencode-ai/plugin/tui/context" +import type { KeymapCommand } from "@opencode/plugin/tui/context" import { directoryAutocomplete, directoryAutocompleteExactValue, diff --git a/packages/tui/test/prompt/codec.test.ts b/packages/tui/test/prompt/codec.test.ts index 35e1f678f34..42db78d6892 100644 --- a/packages/tui/test/prompt/codec.test.ts +++ b/packages/tui/test/prompt/codec.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { Prompt } from "@opencode-ai/schema" +import type { Prompt } from "@opencode/schema" import { projectedPromptInput } from "../../src/prompt/codec" describe("prompt codec", () => { diff --git a/packages/tui/test/prompt/mention.test.ts b/packages/tui/test/prompt/mention.test.ts index e6982ff4a00..9b131b1ade3 100644 --- a/packages/tui/test/prompt/mention.test.ts +++ b/packages/tui/test/prompt/mention.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import type { PromptInput } from "@opencode-ai/schema" +import type { PromptInput } from "@opencode/schema" import { expandPromptInputPastedText, realignPromptInputMentions, diff --git a/packages/tui/test/session-home.test.tsx b/packages/tui/test/session-home.test.tsx index 14dfcd1f16c..acf8ef0829c 100644 --- a/packages/tui/test/session-home.test.tsx +++ b/packages/tui/test/session-home.test.tsx @@ -2,7 +2,7 @@ import { expect, test } from "bun:test" import { type Renderable, ScrollBoxRenderable } from "@opentui/core" import { createTestRenderer } from "@opentui/core/testing" import { Effect, FileSystem } from "effect" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { createEventStream, createFetch, directory, json } from "./fixture/tui-client" import { tmpdir } from "./fixture/fixture" diff --git a/packages/tui/test/session-wheel-focus.test.tsx b/packages/tui/test/session-wheel-focus.test.tsx index 3a14094d6c5..2db240a42f2 100644 --- a/packages/tui/test/session-wheel-focus.test.tsx +++ b/packages/tui/test/session-wheel-focus.test.tsx @@ -2,7 +2,7 @@ import { expect, test } from "bun:test" import { BoxRenderable, EmbeddedTerminalRenderable, type Renderable, ScrollBoxRenderable } from "@opentui/core" import { createTestRenderer } from "@opentui/core/testing" import { Effect, FileSystem } from "effect" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { createEventStream, createFetch, directory, json } from "./fixture/tui-client" import { tmpdir } from "./fixture/fixture" diff --git a/packages/tui/test/simulation/semantics.test.ts b/packages/tui/test/simulation/semantics.test.ts index 3d372024dbd..5d5398b91c8 100644 --- a/packages/tui/test/simulation/semantics.test.ts +++ b/packages/tui/test/simulation/semantics.test.ts @@ -1,8 +1,8 @@ import { expect, test } from "bun:test" import { BoxRenderable } from "@opentui/core" import { Effect } from "effect" -import { SimulationSemantics as Reader } from "@opencode-ai/simulation/frontend/semantics" -import { SimulationRenderer } from "@opencode-ai/simulation/frontend/renderer" +import { SimulationSemantics as Reader } from "@opencode/simulation/frontend/semantics" +import { SimulationRenderer } from "@opencode/simulation/frontend/renderer" import { SimulationSemantics } from "../../src/simulation/semantics" test("shares lazy semantic annotations with the simulation renderer", async () => { diff --git a/packages/tui/test/stats.test.ts b/packages/tui/test/stats.test.ts index a694fec854f..0f4ed16000e 100644 --- a/packages/tui/test/stats.test.ts +++ b/packages/tui/test/stats.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionStatsInfo } from "@opencode-ai/client" +import type { SessionStatsInfo } from "@opencode/client" import { statsMetrics, statsNumber } from "../src/feature-plugins/system/stats-data" const stats: SessionStatsInfo = { diff --git a/packages/tui/test/stats.view.test.tsx b/packages/tui/test/stats.view.test.tsx index fc2a8b5a8ad..5c84cc10303 100644 --- a/packages/tui/test/stats.view.test.tsx +++ b/packages/tui/test/stats.view.test.tsx @@ -1,6 +1,6 @@ import { expect, test } from "bun:test" import { createTestRenderer } from "@opentui/core/testing" -import { Global } from "@opencode-ai/util/global" +import { Global } from "@opencode/util/global" import { Effect, FileSystem } from "effect" import { createEventStream, createFetch, json } from "./fixture/tui-client" import { tmpdir } from "./fixture/fixture" diff --git a/packages/tui/test/theme/v2/component.test.ts b/packages/tui/test/theme/v2/component.test.ts index d01201a5480..264455030ee 100644 --- a/packages/tui/test/theme/v2/component.test.ts +++ b/packages/tui/test/theme/v2/component.test.ts @@ -1,7 +1,7 @@ import { expect, test } from "bun:test" import { createSignal } from "solid-js" import { RGBA } from "@opentui/core" -import { DEFAULT_THEME, resolveTheme, selectTheme, type ContextName } from "@opencode-ai/theme/tui" +import { DEFAULT_THEME, resolveTheme, selectTheme, type ContextName } from "@opencode/theme/tui" import { createComponentTheme, createComponentThemeView } from "../../../src/theme/component" test("provides reactive properties, states, contexts, and color operations", () => { diff --git a/packages/tui/test/theme/v2/resolve.test.ts b/packages/tui/test/theme/v2/resolve.test.ts index b15e1a1a5c1..0bccdf05afd 100644 --- a/packages/tui/test/theme/v2/resolve.test.ts +++ b/packages/tui/test/theme/v2/resolve.test.ts @@ -8,7 +8,7 @@ import { selectTheme, type Mode, type ThemeDefinition, -} from "@opencode-ai/theme/tui" +} from "@opencode/theme/tui" import { parseTheme, type ThemeDocumentSource } from "../../../src/theme" const light = selectTheme(DEFAULT_THEME, "light") diff --git a/packages/tui/test/theme/v2/select.test.ts b/packages/tui/test/theme/v2/select.test.ts index 9da37b2ac3c..92970b9adbb 100644 --- a/packages/tui/test/theme/v2/select.test.ts +++ b/packages/tui/test/theme/v2/select.test.ts @@ -7,7 +7,7 @@ import { type HueDefinition, type ThemeDefinition, type ThemeDocument, -} from "@opencode-ai/theme/tui" +} from "@opencode/theme/tui" const hue = {} as HueDefinition const light = { hue, categorical: ["blue"], text: { default: "#111111", subdued: "#222222" } } satisfies ThemeDefinition diff --git a/packages/tui/test/theme/v2/types.typecheck.ts b/packages/tui/test/theme/v2/types.typecheck.ts index 50a5efcb47c..c0c3e73d5e1 100644 --- a/packages/tui/test/theme/v2/types.typecheck.ts +++ b/packages/tui/test/theme/v2/types.typecheck.ts @@ -1,4 +1,4 @@ -import type { BackgroundDefinition, TextDefinition, ThemeDefinition, ThemeDocument } from "@opencode-ai/theme/tui" +import type { BackgroundDefinition, TextDefinition, ThemeDefinition, ThemeDocument } from "@opencode/theme/tui" const text = { default: "$hue.neutral.900", diff --git a/packages/tui/test/theme/v2/v1-migrate.test.ts b/packages/tui/test/theme/v2/v1-migrate.test.ts index da5e638f078..33c9feba4b6 100644 --- a/packages/tui/test/theme/v2/v1-migrate.test.ts +++ b/packages/tui/test/theme/v2/v1-migrate.test.ts @@ -6,7 +6,7 @@ import { resolveThemeDocument, selectThemeMode, themeModes, -} from "@opencode-ai/theme/tui" +} from "@opencode/theme/tui" import { DEFAULT_THEMES, resolveTheme as resolveV1 } from "../../../src/theme" test("migrates resolved V1 modes into V2 tokens", () => { diff --git a/packages/tui/test/util/form.test.ts b/packages/tui/test/util/form.test.ts index 2766a9d586c..3c081d57957 100644 --- a/packages/tui/test/util/form.test.ts +++ b/packages/tui/test/util/form.test.ts @@ -1,5 +1,5 @@ import { expect, test } from "bun:test" -import type { FormField, FormValue } from "@opencode-ai/client" +import type { FormField, FormValue } from "@opencode/client" import { formCustom, formDisplayValue, diff --git a/packages/tui/test/util/session.test.ts b/packages/tui/test/util/session.test.ts index b3e32aa6340..328d2f0341a 100644 --- a/packages/tui/test/util/session.test.ts +++ b/packages/tui/test/util/session.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from "bun:test" -import type { SessionMessageInfo } from "@opencode-ai/client" +import type { SessionMessageInfo } from "@opencode/client" import { lastAssistantWithUsage, sessionFamily } from "../../src/util/session" const assistant = (id: string, input: number): SessionMessageInfo => ({ diff --git a/packages/ui/package.json b/packages/ui/package.json index ee5b424ce2f..b1d08b9064d 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/ui", + "name": "@opencode/ui", "version": "1.18.15", "type": "module", "license": "MIT", diff --git a/packages/ui/script/publish.ts b/packages/ui/script/publish.ts index ba81ab7dfee..bf566d07b9a 100644 --- a/packages/ui/script/publish.ts +++ b/packages/ui/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/ui/src/actions/button/button.tsx b/packages/ui/src/actions/button/button.tsx index 8e753f4477d..3d04fb1e01f 100644 --- a/packages/ui/src/actions/button/button.tsx +++ b/packages/ui/src/actions/button/button.tsx @@ -1,6 +1,6 @@ import { Root } from "@kobalte/core/button" import { type ComponentProps, Show, splitProps } from "solid-js" -import { Icon, type IconProps } from "@opencode-ai/ui/icon" +import { Icon, type IconProps } from "@opencode/ui/icon" import "./button.css" export interface ButtonProps diff --git a/packages/ui/src/actions/icon-button/icon-button.stories.tsx b/packages/ui/src/actions/icon-button/icon-button.stories.tsx index 12ceb742a26..37bfee00161 100644 --- a/packages/ui/src/actions/icon-button/icon-button.stories.tsx +++ b/packages/ui/src/actions/icon-button/icon-button.stories.tsx @@ -1,6 +1,6 @@ import { For } from "solid-js" import { IconButton } from "./icon-button" -import { Icon } from "@opencode-ai/ui/icon" +import { Icon } from "@opencode/ui/icon" const docs = `### Overview Square icon-only button with three visual variants and three sizes. diff --git a/packages/ui/src/actions/split-button/split-button.stories.tsx b/packages/ui/src/actions/split-button/split-button.stories.tsx index 8fc92704264..89946da34c0 100644 --- a/packages/ui/src/actions/split-button/split-button.stories.tsx +++ b/packages/ui/src/actions/split-button/split-button.stories.tsx @@ -1,5 +1,5 @@ -import { Icon } from "@opencode-ai/ui/icon" -import { AppIcon } from "@opencode-ai/ui/app-icon" +import { Icon } from "@opencode/ui/icon" +import { AppIcon } from "@opencode/ui/app-icon" import { SplitButton, SplitButtonAction, SplitButtonMenuTrigger } from "./split-button" export default { diff --git a/packages/ui/src/components/card.stories.tsx b/packages/ui/src/components/card.stories.tsx index d057c44d3ff..73f17dbc18e 100644 --- a/packages/ui/src/components/card.stories.tsx +++ b/packages/ui/src/components/card.stories.tsx @@ -1,6 +1,6 @@ // @ts-nocheck import { Card, CardActions, CardDescription, CardTitle } from "./card" -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" const docs = `### Overview Surface container for grouping related content and actions. diff --git a/packages/ui/src/components/card.tsx b/packages/ui/src/components/card.tsx index e9d0d555aef..f176b974d2f 100644 --- a/packages/ui/src/components/card.tsx +++ b/packages/ui/src/components/card.tsx @@ -1,5 +1,5 @@ import { type ComponentProps, Show, splitProps } from "solid-js" -import { Icon, type IconProps } from "@opencode-ai/ui/icon" +import { Icon, type IconProps } from "@opencode/ui/icon" type Variant = "normal" | "error" | "warning" | "success" | "info" diff --git a/packages/ui/src/components/collapsible.tsx b/packages/ui/src/components/collapsible.tsx index d8db3f56d43..f79decebb47 100644 --- a/packages/ui/src/components/collapsible.tsx +++ b/packages/ui/src/components/collapsible.tsx @@ -1,6 +1,6 @@ import { Collapsible as Kobalte, CollapsibleRootProps } from "@kobalte/core/collapsible" import { ComponentProps, ParentProps, splitProps } from "solid-js" -import { Icon } from "@opencode-ai/ui/icon" +import { Icon } from "@opencode/ui/icon" export interface CollapsibleProps extends ParentProps { class?: string diff --git a/packages/ui/src/components/image-preview.stories.tsx b/packages/ui/src/components/image-preview.stories.tsx index 82231b4a103..ea86c655cdd 100644 --- a/packages/ui/src/components/image-preview.stories.tsx +++ b/packages/ui/src/components/image-preview.stories.tsx @@ -1,7 +1,7 @@ // @ts-nocheck import { onMount } from "solid-js" import * as mod from "./image-preview" -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" import { useDialog } from "../context/dialog" const docs = `### Overview diff --git a/packages/ui/src/components/image-preview.tsx b/packages/ui/src/components/image-preview.tsx index aaf016185e6..3654e8a0dd4 100644 --- a/packages/ui/src/components/image-preview.tsx +++ b/packages/ui/src/components/image-preview.tsx @@ -1,7 +1,7 @@ import { Dialog as Kobalte } from "@kobalte/core/dialog" import { useI18n } from "../context/i18n" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" export interface ImagePreviewProps { src: string diff --git a/packages/ui/src/components/list.tsx b/packages/ui/src/components/list.tsx index 49951518210..fc67346bfa5 100644 --- a/packages/ui/src/components/list.tsx +++ b/packages/ui/src/components/list.tsx @@ -1,10 +1,10 @@ -import { type FilteredListProps, useFilteredList } from "@opencode-ai/ui/hooks" +import { type FilteredListProps, useFilteredList } from "@opencode/ui/hooks" import { createEffect, For, type JSX, on, Show } from "solid-js" import { createStore } from "solid-js/store" import { makeEventListener } from "@solid-primitives/event-listener" import { useI18n } from "../context/i18n" -import { Icon, type IconProps } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" +import { Icon, type IconProps } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" import { TextField } from "./text-field" function findByKey(container: HTMLElement, key: string) { diff --git a/packages/ui/src/components/popover.tsx b/packages/ui/src/components/popover.tsx index 7084f9d736b..42e52be51cc 100644 --- a/packages/ui/src/components/popover.tsx +++ b/packages/ui/src/components/popover.tsx @@ -3,8 +3,8 @@ import { ComponentProps, JSXElement, ParentProps, Show, createEffect, splitProps import { createStore } from "solid-js/store" import { makeEventListener } from "@solid-primitives/event-listener" import { useI18n } from "../context/i18n" -import { Icon } from "@opencode-ai/ui/icon" -import { IconButton } from "@opencode-ai/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { IconButton } from "@opencode/ui/icon-button" export interface PopoverProps extends ParentProps, diff --git a/packages/ui/src/components/sticky-accordion-header.stories.tsx b/packages/ui/src/components/sticky-accordion-header.stories.tsx index 9aff390ca17..cb3385cf9de 100644 --- a/packages/ui/src/components/sticky-accordion-header.stories.tsx +++ b/packages/ui/src/components/sticky-accordion-header.stories.tsx @@ -1,5 +1,5 @@ // @ts-nocheck -import { Accordion } from "@opencode-ai/ui/accordion" +import { Accordion } from "@opencode/ui/accordion" import * as mod from "./sticky-accordion-header" const docs = `### Overview diff --git a/packages/ui/src/components/sticky-accordion-header.tsx b/packages/ui/src/components/sticky-accordion-header.tsx index 974b3b690c8..51ee51697d7 100644 --- a/packages/ui/src/components/sticky-accordion-header.tsx +++ b/packages/ui/src/components/sticky-accordion-header.tsx @@ -1,4 +1,4 @@ -import { Accordion } from "@opencode-ai/ui/accordion" +import { Accordion } from "@opencode/ui/accordion" import { ParentProps } from "solid-js" export function StickyAccordionHeader( diff --git a/packages/ui/src/components/text-field.tsx b/packages/ui/src/components/text-field.tsx index 778fbe761ae..c782efbd3d0 100644 --- a/packages/ui/src/components/text-field.tsx +++ b/packages/ui/src/components/text-field.tsx @@ -2,9 +2,9 @@ import { TextField as Kobalte } from "@kobalte/core/text-field" import { createSignal, Show, splitProps } from "solid-js" import type { ComponentProps } from "solid-js" import { useI18n } from "../context/i18n" -import { IconButton } from "@opencode-ai/ui/icon-button" -import { Icon } from "@opencode-ai/ui/icon" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { IconButton } from "@opencode/ui/icon-button" +import { Icon } from "@opencode/ui/icon" +import { Tooltip } from "@opencode/ui/tooltip" export interface TextFieldProps extends ComponentProps, diff --git a/packages/ui/src/components/thinking-heading.stories.tsx b/packages/ui/src/components/thinking-heading.stories.tsx index 64eb61cea60..75c142b09d1 100644 --- a/packages/ui/src/components/thinking-heading.stories.tsx +++ b/packages/ui/src/components/thinking-heading.stories.tsx @@ -1,7 +1,7 @@ // @ts-nocheck import { createEffect, For, on, onMount, onCleanup } from "solid-js" import { createStore } from "solid-js/store" -import { TextShimmer } from "@opencode-ai/ui/text-shimmer" +import { TextShimmer } from "@opencode/ui/text-shimmer" import { TextReveal } from "./text-reveal" export default { diff --git a/packages/ui/src/data-display/line-comment/line-comment.tsx b/packages/ui/src/data-display/line-comment/line-comment.tsx index 6d176ccd64a..afb66af27e9 100644 --- a/packages/ui/src/data-display/line-comment/line-comment.tsx +++ b/packages/ui/src/data-display/line-comment/line-comment.tsx @@ -1,8 +1,8 @@ import { For, Show, createSignal, onMount, splitProps, type ComponentProps, type JSX } from "solid-js" -import { FileIcon } from "@opencode-ai/ui/file-icon" +import { FileIcon } from "@opencode/ui/file-icon" import { useI18n } from "../../context/i18n" import { useFilteredList } from "../../hooks" -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" import "./line-comment.css" /** Horizontal “more” glyph for the display-card overflow control (Figma outline-dots). */ diff --git a/packages/ui/src/feedback/toast/toast.stories.tsx b/packages/ui/src/feedback/toast/toast.stories.tsx index effd85a8214..2c521fd2f1b 100644 --- a/packages/ui/src/feedback/toast/toast.stories.tsx +++ b/packages/ui/src/feedback/toast/toast.stories.tsx @@ -1,5 +1,5 @@ import { Toast, showToast } from "./toast" -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" const docs = `### Overview Toast notifications with optional icons, actions, and progress. diff --git a/packages/ui/src/forms/checkbox/checkbox.stories.tsx b/packages/ui/src/forms/checkbox/checkbox.stories.tsx index 35a89339aad..cf940f0f201 100644 --- a/packages/ui/src/forms/checkbox/checkbox.stories.tsx +++ b/packages/ui/src/forms/checkbox/checkbox.stories.tsx @@ -1,5 +1,5 @@ // @ts-nocheck -import { Icon } from "@opencode-ai/ui/icon" +import { Icon } from "@opencode/ui/icon" import { Checkbox } from "./checkbox" const docs = `### Overview diff --git a/packages/ui/src/forms/field/field.stories.tsx b/packages/ui/src/forms/field/field.stories.tsx index 5b065dd830b..311e786d98f 100644 --- a/packages/ui/src/forms/field/field.stories.tsx +++ b/packages/ui/src/forms/field/field.stories.tsx @@ -1,9 +1,9 @@ // @ts-nocheck import { createSignal } from "solid-js" import { Field } from "./field" -import { InlineInput } from "@opencode-ai/ui/inline-input" -import { TextInput } from "@opencode-ai/ui/text-input" -import { Textarea } from "@opencode-ai/ui/textarea" +import { InlineInput } from "@opencode/ui/inline-input" +import { TextInput } from "@opencode/ui/text-input" +import { Textarea } from "@opencode/ui/textarea" const docs = `### Overview Composable field layout for TextInput, Textarea, and InlineInput. diff --git a/packages/ui/src/forms/field/field.tsx b/packages/ui/src/forms/field/field.tsx index 609bc304dbc..7db177fa665 100644 --- a/packages/ui/src/forms/field/field.tsx +++ b/packages/ui/src/forms/field/field.tsx @@ -11,7 +11,7 @@ import { type ComponentProps, type ParentProps, } from "solid-js" -import { Tooltip } from "@opencode-ai/ui/tooltip" +import { Tooltip } from "@opencode/ui/tooltip" import "./field.css" type FieldContextValue = { diff --git a/packages/ui/src/forms/select/select.stories.tsx b/packages/ui/src/forms/select/select.stories.tsx index 68018086048..38aea7db5c6 100644 --- a/packages/ui/src/forms/select/select.stories.tsx +++ b/packages/ui/src/forms/select/select.stories.tsx @@ -1,6 +1,6 @@ // @ts-nocheck import { createSignal } from "solid-js" -import { Field } from "@opencode-ai/ui/field" +import { Field } from "@opencode/ui/field" import { Select } from "./select" const fruits = ["Apple", "Banana", "Cherry", "Date", "Elderberry"] diff --git a/packages/ui/src/forms/text-input/text-input.stories.tsx b/packages/ui/src/forms/text-input/text-input.stories.tsx index 809031721d4..1b203bfda2b 100644 --- a/packages/ui/src/forms/text-input/text-input.stories.tsx +++ b/packages/ui/src/forms/text-input/text-input.stories.tsx @@ -1,6 +1,6 @@ // @ts-nocheck import { createSignal } from "solid-js" -import { Field } from "@opencode-ai/ui/field" +import { Field } from "@opencode/ui/field" import { TextInput } from "./text-input" const docs = `### Overview diff --git a/packages/ui/src/forms/text-input/text-input.tsx b/packages/ui/src/forms/text-input/text-input.tsx index df1015f301d..843f3bc6274 100644 --- a/packages/ui/src/forms/text-input/text-input.tsx +++ b/packages/ui/src/forms/text-input/text-input.tsx @@ -1,5 +1,5 @@ import { type ComponentProps, type JSX, Show, splitProps } from "solid-js" -import { Icon } from "@opencode-ai/ui/icon" +import { Icon } from "@opencode/ui/icon" import { useI18n } from "../../context/i18n" import "./text-input.css" diff --git a/packages/ui/src/forms/textarea/textarea.stories.tsx b/packages/ui/src/forms/textarea/textarea.stories.tsx index 7bbfa6e361d..4acfbf618f8 100644 --- a/packages/ui/src/forms/textarea/textarea.stories.tsx +++ b/packages/ui/src/forms/textarea/textarea.stories.tsx @@ -1,6 +1,6 @@ // @ts-nocheck import { createSignal } from "solid-js" -import { Field } from "@opencode-ai/ui/field" +import { Field } from "@opencode/ui/field" import { Textarea } from "./textarea" const docs = `### Overview diff --git a/packages/ui/src/navigation/menu/menu.stories.tsx b/packages/ui/src/navigation/menu/menu.stories.tsx index 71343adc991..7813ca4e2bf 100644 --- a/packages/ui/src/navigation/menu/menu.stories.tsx +++ b/packages/ui/src/navigation/menu/menu.stories.tsx @@ -1,9 +1,9 @@ // @ts-nocheck import { createSignal } from "solid-js" import { Menu } from "./menu" -import { Button } from "@opencode-ai/ui/button" -import { Avatar } from "@opencode-ai/ui/avatar" -import { Icon } from "@opencode-ai/ui/icon" +import { Button } from "@opencode/ui/button" +import { Avatar } from "@opencode/ui/avatar" +import { Icon } from "@opencode/ui/icon" const docs = `### Overview Composable menu primitive built on Kobalte's \`DropdownMenu\` and \`ContextMenu\`. The same item components (\`Item\`, \`CheckboxItem\`, \`RadioItem\`, \`SubTrigger\`) work inside either container. diff --git a/packages/ui/src/overlays/dialog/dialog.stories.tsx b/packages/ui/src/overlays/dialog/dialog.stories.tsx index 4d39a88c094..207726f4659 100644 --- a/packages/ui/src/overlays/dialog/dialog.stories.tsx +++ b/packages/ui/src/overlays/dialog/dialog.stories.tsx @@ -1,6 +1,6 @@ import { Overlay, Portal, Root, Trigger } from "@kobalte/core/dialog" import { Dialog, DialogBody, DialogFooter, DialogHeader, DialogTitle, DialogTitleGroup } from "./dialog" -import { Button } from "@opencode-ai/ui/button" +import { Button } from "@opencode/ui/button" const docs = `### Overview Dialog content wrapper built on Kobalte's dialog primitive with v2 styling. diff --git a/packages/ui/src/overlays/tooltip/tooltip.stories.tsx b/packages/ui/src/overlays/tooltip/tooltip.stories.tsx index 1536ab89ee0..e5c73681365 100644 --- a/packages/ui/src/overlays/tooltip/tooltip.stories.tsx +++ b/packages/ui/src/overlays/tooltip/tooltip.stories.tsx @@ -1,5 +1,5 @@ import { Tooltip } from "./tooltip" -import { Keybind } from "@opencode-ai/ui/keybind" +import { Keybind } from "@opencode/ui/keybind" const docs = `### Overview Floating tooltip built on Kobalte's tooltip primitive. diff --git a/packages/updates/package.json b/packages/updates/package.json index 26989707e4b..fda1674a0d2 100644 --- a/packages/updates/package.json +++ b/packages/updates/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/updates", + "name": "@opencode/updates", "version": "1.18.4", "private": true, "type": "module", diff --git a/packages/util/docs/layer-node.md b/packages/util/docs/layer-node.md index aa78972df20..9a94fcd364a 100644 --- a/packages/util/docs/layer-node.md +++ b/packages/util/docs/layer-node.md @@ -17,7 +17,7 @@ There are three values to compose: ```ts import { Context, Effect, Layer } from "effect" -import { LayerNode } from "@opencode-ai/util/effect/layer-node" +import { LayerNode } from "@opencode/util/effect/layer-node" class Database extends Context.Service()("example/Database") {} class Users extends Context.Service()("example/Users") {} diff --git a/packages/util/package.json b/packages/util/package.json index bc3a5f21ce5..08b4da5d194 100644 --- a/packages/util/package.json +++ b/packages/util/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/util", + "name": "@opencode/util", "version": "1.18.3", "type": "module", "license": "MIT", diff --git a/packages/util/script/publish.ts b/packages/util/script/publish.ts index ec6cff16c4e..8e5fb0a9c8f 100644 --- a/packages/util/script/publish.ts +++ b/packages/util/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { rm } from "node:fs/promises" import { fileURLToPath } from "node:url" diff --git a/packages/util/tsconfig.dist.json b/packages/util/tsconfig.dist.json index c24daa277b5..ffbfe503a59 100644 --- a/packages/util/tsconfig.dist.json +++ b/packages/util/tsconfig.dist.json @@ -2,8 +2,8 @@ "extends": "./tsconfig.json", "compilerOptions": { "paths": { - "@opencode-ai/util/effect/layer-node": ["./dist/effect/layer-node.d.ts"], - "@opencode-ai/util/effect/app-node": ["./dist/effect/app-node.d.ts"] + "@opencode/util/effect/layer-node": ["./dist/effect/layer-node.d.ts"], + "@opencode/util/effect/app-node": ["./dist/effect/app-node.d.ts"] } }, "include": ["../core/test/effect/layer-node/layer-node-types.test.ts"] diff --git a/packages/web/package.json b/packages/web/package.json index dba3d3f4286..b2c5a712c3b 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -1,5 +1,5 @@ { - "name": "@opencode-ai/web", + "name": "@opencode/web", "type": "module", "license": "MIT", "version": "1.18.15", diff --git a/packages/www/package.json b/packages/www/package.json index babf460ce99..e9f2aff09f1 100644 --- a/packages/www/package.json +++ b/packages/www/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "name": "@opencode-ai/www", + "name": "@opencode/www", "private": true, "type": "module", "scripts": { diff --git a/packages/www/src/docs/content/build/client/effect.mdx b/packages/www/src/docs/content/build/client/effect.mdx index 0bfa93b223a..7e4b55828bb 100644 --- a/packages/www/src/docs/content/build/client/effect.mdx +++ b/packages/www/src/docs/content/build/client/effect.mdx @@ -2,11 +2,11 @@ title: "Effect" --- -`@opencode-ai/client/effect` is the Effect-native client for the OpenCode HTTP API. It returns typed Effects and Streams +`@opencode/client/effect` is the Effect-native client for the OpenCode HTTP API. It returns typed Effects and Streams and decodes responses into OpenCode schema values. ```sh -bun add @opencode-ai/client@beta effect +bun add @opencode/client@beta effect ``` ## Create a client @@ -14,7 +14,7 @@ bun add @opencode-ai/client@beta effect Create a client with the server URL, then call methods grouped by API resource. ```ts -import { AbsolutePath, Location, OpenCode } from "@opencode-ai/client/effect" +import { AbsolutePath, Location, OpenCode } from "@opencode/client/effect" import { Effect } from "effect" import { FetchHttpClient } from "effect/unstable/http" @@ -109,7 +109,7 @@ definitions, schemas, registration, and live subscription semantics. ## Local background service -The Node-only `@opencode-ai/client/effect/service` entrypoint discovers, starts, authenticates, and stops the local +The Node-only `@opencode/client/effect/service` entrypoint discovers, starts, authenticates, and stops the local background service as Effects. ```sh @@ -120,8 +120,8 @@ Create an authenticated client for the ensured service. ```ts import { NodeFileSystem } from "@effect/platform-node" -import { OpenCode } from "@opencode-ai/client/effect" -import { Service } from "@opencode-ai/client/effect/service" +import { OpenCode } from "@opencode/client/effect" +import { Service } from "@opencode/client/effect/service" import { Effect } from "effect" import { FetchHttpClient, HttpClient, HttpClientRequest } from "effect/unstable/http" diff --git a/packages/www/src/docs/content/build/client/index.mdx b/packages/www/src/docs/content/build/client/index.mdx index 62ce883a34d..306dba56725 100644 --- a/packages/www/src/docs/content/build/client/index.mdx +++ b/packages/www/src/docs/content/build/client/index.mdx @@ -2,7 +2,7 @@ title: "JavaScript" --- -`@opencode-ai/client` is the TypeScript client for the OpenCode HTTP +`@opencode/client` is the TypeScript client for the OpenCode HTTP API. Use it when your application connects to an OpenCode server over the network. Its native types and methods are generated from the same contract as the [API reference](/api). Plugin RPC types come from imported RPC definitions. @@ -14,7 +14,7 @@ network. Its native types and methods are generated from the same contract as th ## Install ```sh -bun add @opencode-ai/client@beta +bun add @opencode/client@beta ``` ## Create a client @@ -22,7 +22,7 @@ bun add @opencode-ai/client@beta Create a client with the server URL, then call methods grouped by API resource: ```ts -import { OpenCode } from "@opencode-ai/client" +import { OpenCode } from "@opencode/client" const client = OpenCode.make({ baseUrl: "http://localhost:4096", @@ -84,7 +84,7 @@ subscriber receives the current `server.connected` marker, not past business eve Import a plugin's shared contract and pass it to `client.rpc`: ```ts -import { OpenCode } from "@opencode-ai/client" +import { OpenCode } from "@opencode/client" import { Acme } from "opencode-acme-plugin/rpc" const acme = client.rpc(Acme) @@ -142,7 +142,7 @@ definition and registration API. Any HTTP client can also invoke the generic The main client entrypoints are browser-compatible and do not include local process management. In a Node application, import the native Promise service -API from `@opencode-ai/client/service`. +API from `@opencode/client/service`. - `Service.discover()` returns a healthy registered endpoint without starting a process. @@ -151,8 +151,8 @@ API from `@opencode-ai/client/service`. - `Service.headers(endpoint)` creates the authentication headers for a client. ```ts -import { OpenCode } from "@opencode-ai/client" -import { Service } from "@opencode-ai/client/service" +import { OpenCode } from "@opencode/client" +import { Service } from "@opencode/client/service" const endpoint = await Service.ensure() const client = OpenCode.make({ diff --git a/packages/www/src/docs/content/build/plugins/cli.mdx b/packages/www/src/docs/content/build/plugins/cli.mdx index 50314537e06..4170aeace6b 100644 --- a/packages/www/src/docs/content/build/plugins/cli.mdx +++ b/packages/www/src/docs/content/build/plugins/cli.mdx @@ -5,7 +5,7 @@ title: "CLI" CLI plugins extend the terminal with commands, routes, slots, Markdown renderers, notifications, and local state. ```ts title="src/tui.ts" -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" export default Plugin.define({ id: "acme.cli", @@ -15,7 +15,7 @@ export default Plugin.define({ }) ``` -Import `@opencode-ai/plugin/tui` directly. OpenCode resolves this import at runtime, so local CLI plugins do not need an +Import `@opencode/plugin/tui` directly. OpenCode resolves this import at runtime, so local CLI plugins do not need an absolute path to an OpenCode checkout. ## Context @@ -110,7 +110,7 @@ context.data.session.permission.invalidate(sessionID) Forms can be listed, refreshed, replied to, or cancelled at a location. ```ts -import type { FormCancelInput, FormReplyInput } from "@opencode-ai/client" +import type { FormCancelInput, FormReplyInput } from "@opencode/client" async function handleForm(reply: FormReplyInput, cancel: FormCancelInput) { const location = context.location @@ -223,7 +223,7 @@ const renderer = context.renderer Use `usePlugin` to access the current context inside JSX rendered by a route, dialog, or slot. ```tsx -import { usePlugin } from "@opencode-ai/plugin/tui" +import { usePlugin } from "@opencode/plugin/tui" function Status() { const context = usePlugin() @@ -460,8 +460,8 @@ The slot receives reactive `name`, `sessionID`, `width`, `presentation`, and `fo until there is enough room for a side panel. ```tsx -import type { PanelInput } from "@opencode-ai/plugin/tui/context" -import { usePlugin } from "@opencode-ai/plugin/tui" +import type { PanelInput } from "@opencode/plugin/tui/context" +import { usePlugin } from "@opencode/plugin/tui" function ReviewPanel(props: { panel: PanelInput }) { const context = usePlugin() @@ -508,7 +508,7 @@ Expose the CLI plugin through `./tui`; add OpenTUI peers when the plugin renders "./tui": "./src/tui.tsx" }, "dependencies": { - "@opencode-ai/plugin": "beta" + "@opencode/plugin": "beta" }, "peerDependencies": { "@opentui/core": ">=0.5.8", @@ -521,7 +521,7 @@ Expose the CLI plugin through `./tui`; add OpenTUI peers when the plugin renders Export `./tui` beside the [main plugin](/build/plugins) for automatic loading. ```ts title="src/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "acme.server", diff --git a/packages/www/src/docs/content/build/plugins/effect.mdx b/packages/www/src/docs/content/build/plugins/effect.mdx index be4578cfb13..317fc15a784 100644 --- a/packages/www/src/docs/content/build/plugins/effect.mdx +++ b/packages/www/src/docs/content/build/plugins/effect.mdx @@ -2,18 +2,18 @@ title: "Effect" --- -`@opencode-ai/plugin/effect` is the Effect-native version of the OpenCode plugin API. Its context operations return +`@opencode/plugin/effect` is the Effect-native version of the OpenCode plugin API. Its context operations return Effects or Streams, callbacks return Effects, and plugin lifetime is represented by `Scope`. Install `effect` with the plugin package. ```sh -bun add @opencode-ai/plugin@beta effect +bun add @opencode/plugin@beta effect ``` Export an Effect plugin from `.opencode/plugins/` to load it automatically. ```ts title=".opencode/plugins/concise/index.ts" -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" export default Plugin.define({ @@ -48,7 +48,7 @@ plugins. See [Configure plugins](/plugins) for enablement, package resolution, and configuration precedence. ```ts title="plugins/local-effect/index.ts" -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" export default Plugin.define({ @@ -66,7 +66,7 @@ The `effect` runs when the plugin loads. Its scope closes when the plugin reload fibers, and finalizers are released together. ```ts -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" export default Plugin.define({ @@ -154,7 +154,7 @@ Pass options with the object form in `opencode.json(c)`. Read options from `ctx.options`. Narrow unknown values before use. ```ts title="plugins/company-effect/index.ts" -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" export default Plugin.define({ @@ -173,7 +173,7 @@ Transforms synchronously edit state through an editor. OpenCode applies transfor earlier changes. Yielding the registration keeps it in the plugin scope. ```ts title="plugins/models-effect/index.ts" -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" export default Plugin.define({ @@ -1316,7 +1316,7 @@ entrypoint and declare both runtime dependencies. ".": "./src/index.ts" }, "dependencies": { - "@opencode-ai/plugin": "beta", + "@opencode/plugin": "beta", "effect": "4.0.0-rc.111" } } @@ -1325,7 +1325,7 @@ entrypoint and declare both runtime dependencies. The package entrypoint exports `Plugin.define` with an `effect` function. ```ts title="src/index.ts" -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" export default Plugin.define({ diff --git a/packages/www/src/docs/content/build/plugins/effect/rpc.mdx b/packages/www/src/docs/content/build/plugins/effect/rpc.mdx index d0c0d4e9141..51073744aed 100644 --- a/packages/www/src/docs/content/build/plugins/effect/rpc.mdx +++ b/packages/www/src/docs/content/build/plugins/effect/rpc.mdx @@ -10,7 +10,7 @@ Streams. Use `Rpc.define` with Effect Schema to define the RPC. ```ts title="src/rpc.ts" -import { Rpc } from "@opencode-ai/plugin/rpc" +import { Rpc } from "@opencode/plugin/rpc" import { Schema } from "effect" export const Acme = Rpc.define({ @@ -81,7 +81,7 @@ events: { Register the implementation from the plugin Effect: ```ts title="src/index.ts" -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" import { Acme } from "./rpc.js" @@ -120,7 +120,7 @@ Once the RPC is registered, it can be called over HTTP or from another plugin. Create the Effect client, then create the RPC subclient: ```ts -import { OpenCode } from "@opencode-ai/client/effect" +import { OpenCode } from "@opencode/client/effect" import { Effect } from "effect" import { FetchHttpClient } from "effect/unstable/http" import { Acme } from "opencode-acme-plugin/rpc" diff --git a/packages/www/src/docs/content/build/plugins/index.mdx b/packages/www/src/docs/content/build/plugins/index.mdx index e42ddb684fa..f7b0b7a4d93 100644 --- a/packages/www/src/docs/content/build/plugins/index.mdx +++ b/packages/www/src/docs/content/build/plugins/index.mdx @@ -6,7 +6,7 @@ Plugins can modify OpenCode's behavior and add new features. To change the termi plugin](/build/plugins/cli). ```ts title=".opencode/plugins/example/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "example", @@ -48,7 +48,7 @@ See [Configure plugins](/plugins) for more loading and configuration options. `setup` runs when the plugin loads. It may return a cleanup function that runs when the plugin unloads. ```ts -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "example", @@ -105,7 +105,7 @@ Pass plugin options with the object form in `opencode.json(c)`. Read those values from `ctx.options` during `setup`. ```ts title="plugins/company/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "company", @@ -126,7 +126,7 @@ completed. Say we have a plugin that adds one model to the catalog. ```ts title="plugins/models/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "company.models", @@ -150,7 +150,7 @@ already read is never modified by later rebuilds. A later plugin can enforce a maximum output price across every model, including models added by earlier plugins. ```ts title="plugins/model-budget/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "company.model-budget", @@ -172,7 +172,7 @@ Captured inputs are not watched automatically. Load external data before the syn `reload()` after those inputs change. ```ts title="plugins/models/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default Plugin.define({ id: "company.models", @@ -956,7 +956,7 @@ Register a local worktree strategy using the normal plugin lifecycle. The implem option validation and the backend's `create`, `remove`, and `list` operations. ```ts title="plugins/worktrees/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" import { makeStrategy } from "./strategy" export default Plugin.define({ @@ -1020,7 +1020,7 @@ await ctx.worktree.remove({ ``` Missing owners fail removal rather than falling back to Git. A strategy can throw `new Worktree.OperationError({ -message: "Uncommitted changes", forceRequired: true })`, importing `Worktree` from `@opencode-ai/plugin`, to request +message: "Uncommitted changes", forceRequired: true })`, importing `Worktree` from `@opencode/plugin`, to request force confirmation without depending on Core or Git errors. #### Reference @@ -1315,7 +1315,7 @@ Retry decisions follow these rules: #### Session reference ```ts -import type { SessionPrompt } from "@opencode-ai/plugin/promise/session" +import type { SessionPrompt } from "@opencode/plugin/promise/session" interface SessionHooks { prompt: SessionPrompt @@ -1486,7 +1486,7 @@ manifest is: "./rpc": "./src/rpc.ts" }, "dependencies": { - "@opencode-ai/plugin": "beta" + "@opencode/plugin": "beta" } } ``` @@ -1506,7 +1506,7 @@ A plugin can support V1 and V2 from the same package entrypoint. Default export one object with a V1 `server()` function and a V2 `setup()` function: ```ts title="src/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" export default { ...Plugin.define({ diff --git a/packages/www/src/docs/content/build/plugins/rpc.mdx b/packages/www/src/docs/content/build/plugins/rpc.mdx index 0a7e01791fd..dba3e24f433 100644 --- a/packages/www/src/docs/content/build/plugins/rpc.mdx +++ b/packages/www/src/docs/content/build/plugins/rpc.mdx @@ -10,7 +10,7 @@ called by other plugins or clients. Use `Rpc.define` to list the RPC's methods, errors, and events. ```ts title="src/rpc.ts" -import { Rpc } from "@opencode-ai/plugin/rpc" +import { Rpc } from "@opencode/plugin/rpc" export const Acme = Rpc.define({ id: "acme", @@ -129,7 +129,7 @@ Scalars, arrays, `null`, and `undefined` are not valid event data. Register the implementation inside `setup`: ```ts title="src/index.ts" -import { Plugin } from "@opencode-ai/plugin" +import { Plugin } from "@opencode/plugin" import { Acme } from "./rpc.js" export default Plugin.define({ @@ -169,7 +169,7 @@ Create an OpenCode client, then use `client.rpc` to create a subclient for the RPC: ```ts -import { OpenCode } from "@opencode-ai/client" +import { OpenCode } from "@opencode/client" import { Acme } from "opencode-acme-plugin/rpc" const client = OpenCode.make({ @@ -186,7 +186,7 @@ Plugins already have an OpenCode client. For example, a TUI plugin can create the same RPC subclient from `context.client`: ```ts title="src/tui.ts" -import { Plugin } from "@opencode-ai/plugin/tui" +import { Plugin } from "@opencode/plugin/tui" import { Acme } from "opencode-acme-plugin/rpc" export default Plugin.define({ diff --git a/packages/www/src/docs/content/build/sdk/cloudflare.mdx b/packages/www/src/docs/content/build/sdk/cloudflare.mdx index db8384cb83c..b92f0b9a8bc 100644 --- a/packages/www/src/docs/content/build/sdk/cloudflare.mdx +++ b/packages/www/src/docs/content/build/sdk/cloudflare.mdx @@ -2,17 +2,17 @@ title: "Cloudflare" --- -Use `@opencode-ai/sdk/workerd` inside a Cloudflare Durable Object. This profile uses the object's SQLite storage, +Use `@opencode/sdk/workerd` inside a Cloudflare Durable Object. This profile uses the object's SQLite storage, persists durable events for eviction recovery, and replaces unavailable local filesystem and process services. ```sh -bun add @opencode-ai/sdk@dev +bun add @opencode/sdk@dev ``` Hold one host for the lifetime of the Durable Object instance instead of creating one for every request. ```ts -import { OpenCodeWorkerd } from "@opencode-ai/sdk/workerd" +import { OpenCodeWorkerd } from "@opencode/sdk/workerd" import myPlugin from "./my-plugin" export class OpenCodeDO { @@ -62,8 +62,8 @@ Worker. Pass plugins to `OpenCodeWorkerd.create()` to customize agents, models, tools, and other behavior: ```ts -import { Plugin } from "@opencode-ai/plugin" -import { OpenCodeWorkerd } from "@opencode-ai/sdk/workerd" +import { Plugin } from "@opencode/plugin" +import { OpenCodeWorkerd } from "@opencode/sdk/workerd" const plugin = Plugin.define({ id: "customize-agent", diff --git a/packages/www/src/docs/content/build/sdk/effect.mdx b/packages/www/src/docs/content/build/sdk/effect.mdx index 9b0913c83ec..cc9f1c7f576 100644 --- a/packages/www/src/docs/content/build/sdk/effect.mdx +++ b/packages/www/src/docs/content/build/sdk/effect.mdx @@ -2,11 +2,11 @@ title: "Effect" --- -`@opencode-ai/sdk/effect` is the Effect-native embedded SDK. Operations return typed Effects and Streams, and closing +`@opencode/sdk/effect` is the Effect-native embedded SDK. Operations return typed Effects and Streams, and closing the owning Scope releases the router, Location services, fibers, and plugin registrations. ```sh -bun add @opencode-ai/sdk@dev effect +bun add @opencode/sdk@dev effect ``` ## Create a host @@ -14,7 +14,7 @@ bun add @opencode-ai/sdk@dev effect Create the host inside `Effect.scoped`, then use its generated API groups or the `sessions` alias. ```ts -import { AbsolutePath, Location, OpenCode } from "@opencode-ai/sdk/effect" +import { AbsolutePath, Location, OpenCode } from "@opencode/sdk/effect" import { Effect } from "effect" const program = Effect.scoped( @@ -35,7 +35,7 @@ const session = await Effect.runPromise(program) ``` The embedded host uses the same schema values, declared errors, request options, and Streams as -`@opencode-ai/client/effect`. +`@opencode/client/effect`. ```ts const health = yield* opencode.health.get() @@ -62,7 +62,7 @@ Customize your OpenCode instance by registering Effect plugins. Use the embedded host to customize agents, models, tools, and other behavior: ```ts -import { Plugin } from "@opencode-ai/plugin/effect" +import { Plugin } from "@opencode/plugin/effect" import { Effect } from "effect" const plugin = Plugin.define({ @@ -89,7 +89,7 @@ hooks, transforms, tools, and the complete plugin context. Use `OpenCode.layer()` when the embedded host should be an application service. ```ts -import { OpenCode } from "@opencode-ai/sdk/effect" +import { OpenCode } from "@opencode/sdk/effect" import { Effect } from "effect" const program = Effect.gen(function* () { diff --git a/packages/www/src/docs/content/build/sdk/index.mdx b/packages/www/src/docs/content/build/sdk/index.mdx index 6b39ecebcc6..42b6abe7491 100644 --- a/packages/www/src/docs/content/build/sdk/index.mdx +++ b/packages/www/src/docs/content/build/sdk/index.mdx @@ -2,7 +2,7 @@ title: "Overview" --- -`@opencode-ai/sdk` hosts OpenCode directly inside your application. Unlike the +`@opencode/sdk` hosts OpenCode directly inside your application. Unlike the [network client](/build/client), it assembles the OpenCode server and routes API calls through its HTTP router in memory. It opens no HTTP listener and adds no network hop between the client and server. @@ -10,7 +10,7 @@ network hop between the client and server. For Cloudflare Durable Objects, see the [Cloudflare guide](/build/sdk/cloudflare). - The V2 SDK is beta. Install the current preview with `bun add @opencode-ai/sdk@dev`; its API may change before a + The V2 SDK is beta. Install the current preview with `bun add @opencode/sdk@dev`; its API may change before a stable release. @@ -20,7 +20,7 @@ For Cloudflare Durable Objects, see the [Cloudflare guide](/build/sdk/cloudflare release its router, Location services, fibers, and scoped plugin registrations: ```ts -import { OpenCode } from "@opencode-ai/sdk" +import { OpenCode } from "@opencode/sdk" await using opencode = await OpenCode.create() const session = await opencode.sessions.create({ @@ -37,7 +37,7 @@ Call `await opencode.close()` explicitly when explicit resource management is not available. The embedded host uses the same Promise values, declared errors, request -options, and `AsyncIterable` streams as `@opencode-ai/client`. It exposes the +options, and `AsyncIterable` streams as `@opencode/client`. It exposes the full generated client and adds the convenience aliases `sessions` and `events` for the session and event groups. @@ -59,8 +59,8 @@ Customize your OpenCode instance by registering plugins. Pass plugins to the embedded host starts: ```ts -import { Plugin } from "@opencode-ai/plugin" -import { OpenCode } from "@opencode-ai/sdk" +import { Plugin } from "@opencode/plugin" +import { OpenCode } from "@opencode/sdk" const plugin = Plugin.define({ id: "customize-agent", diff --git a/packages/www/src/docs/content/cli/plugins.mdx b/packages/www/src/docs/content/cli/plugins.mdx index 84d27b5e0f3..c1ecb0ff358 100644 --- a/packages/www/src/docs/content/cli/plugins.mdx +++ b/packages/www/src/docs/content/cli/plugins.mdx @@ -57,5 +57,5 @@ the same layout as a published package, with server and TUI entrypoints kept tog /.opencode/plugins/status/tui.ts ``` -Discovered plugins can import `@opencode-ai/plugin/tui` directly; OpenCode resolves the package at runtime. See +Discovered plugins can import `@opencode/plugin/tui` directly; OpenCode resolves the package at runtime. See [Building CLI plugins](/build/plugins/cli) for examples. diff --git a/packages/www/src/docs/content/index.mdx b/packages/www/src/docs/content/index.mdx index 7b55de5a12d..1205306f0f6 100644 --- a/packages/www/src/docs/content/index.mdx +++ b/packages/www/src/docs/content/index.mdx @@ -12,10 +12,10 @@ versions installed and run them side by side.
diff --git a/packages/www/src/docs/content/migrate-v1.mdx b/packages/www/src/docs/content/migrate-v1.mdx index 9d14cbd8490..0dc465c6a42 100644 --- a/packages/www/src/docs/content/migrate-v1.mdx +++ b/packages/www/src/docs/content/migrate-v1.mdx @@ -558,7 +558,7 @@ local modules and dependencies together. See the current beta [Plugins guide](/b OpenCode 2 has a revised, more ergonomic server API and a new set of clients. Integrations that call the V1 server API must migrate to the V2 API. -Use the `@opencode-ai/client` package to access the new clients. The server API and clients are still being finalized +Use the `@opencode/client` package to access the new clients. The server API and clients are still being finalized during beta, so their contracts may continue to change. See the generated [API reference](/api) for the current endpoints, request types, and responses. diff --git a/packages/www/src/docs/content/models.mdx b/packages/www/src/docs/content/models.mdx index 6b6d757a391..6e1c2426458 100644 --- a/packages/www/src/docs/content/models.mdx +++ b/packages/www/src/docs/content/models.mdx @@ -272,7 +272,7 @@ For an OpenAI-compatible server, define a provider package, endpoint, and at lea "providers": { "local": { "name": "Local server", - "package": "@opencode-ai/ai/providers/openai-compatible", + "package": "@opencode/ai/providers/openai-compatible", "settings": { "baseURL": "http://127.0.0.1:1234/v1", }, diff --git a/packages/www/src/docs/content/providers.mdx b/packages/www/src/docs/content/providers.mdx index b0e57e6c46c..d1ee33d390a 100644 --- a/packages/www/src/docs/content/providers.mdx +++ b/packages/www/src/docs/content/providers.mdx @@ -12,7 +12,7 @@ custom provider to your configuration. "acme": { "name": "Acme", "env": ["ACME_API_KEY"], - "package": "@opencode-ai/ai/providers/openai-compatible", + "package": "@opencode/ai/providers/openai-compatible", "settings": { "baseURL": "https://llm.acme.example/v1", }, @@ -161,7 +161,7 @@ built-in compatible package: "$schema": "https://opencode.ai/config.json", "providers": { "acme": { - "package": "@opencode-ai/ai/providers/openai-compatible", + "package": "@opencode/ai/providers/openai-compatible", "settings": { "baseURL": "https://llm.acme.example/v1", }, @@ -177,28 +177,28 @@ built-in compatible package: Native package options: -- `@opencode-ai/ai/providers/openai` -- `@opencode-ai/ai/providers/openai/chat` -- `@opencode-ai/ai/providers/openai/responses` -- `@opencode-ai/ai/providers/openai-compatible` -- `@opencode-ai/ai/providers/openai-compatible/responses` -- `@opencode-ai/ai/providers/anthropic` -- `@opencode-ai/ai/providers/anthropic-compatible` -- `@opencode-ai/ai/providers/google` -- `@opencode-ai/ai/providers/google-vertex` -- `@opencode-ai/ai/providers/google-vertex/gemini` -- `@opencode-ai/ai/providers/google-vertex/chat` -- `@opencode-ai/ai/providers/google-vertex/responses` -- `@opencode-ai/ai/providers/google-vertex/messages` -- `@opencode-ai/ai/providers/azure` -- `@opencode-ai/ai/providers/azure/chat` -- `@opencode-ai/ai/providers/azure/responses` -- `@opencode-ai/ai/providers/amazon-bedrock` -- `@opencode-ai/ai/providers/amazon-bedrock/mantle` -- `@opencode-ai/ai/providers/amazon-bedrock/mantle/chat` -- `@opencode-ai/ai/providers/amazon-bedrock/mantle/responses` -- `@opencode-ai/ai/providers/openrouter` -- `@opencode-ai/ai/providers/xai` +- `@opencode/ai/providers/openai` +- `@opencode/ai/providers/openai/chat` +- `@opencode/ai/providers/openai/responses` +- `@opencode/ai/providers/openai-compatible` +- `@opencode/ai/providers/openai-compatible/responses` +- `@opencode/ai/providers/anthropic` +- `@opencode/ai/providers/anthropic-compatible` +- `@opencode/ai/providers/google` +- `@opencode/ai/providers/google-vertex` +- `@opencode/ai/providers/google-vertex/gemini` +- `@opencode/ai/providers/google-vertex/chat` +- `@opencode/ai/providers/google-vertex/responses` +- `@opencode/ai/providers/google-vertex/messages` +- `@opencode/ai/providers/azure` +- `@opencode/ai/providers/azure/chat` +- `@opencode/ai/providers/azure/responses` +- `@opencode/ai/providers/amazon-bedrock` +- `@opencode/ai/providers/amazon-bedrock/mantle` +- `@opencode/ai/providers/amazon-bedrock/mantle/chat` +- `@opencode/ai/providers/amazon-bedrock/mantle/responses` +- `@opencode/ai/providers/openrouter` +- `@opencode/ai/providers/xai` You can also use an npm package such as `@acme/opencode-provider` or an absolute `file://` URL for a local package. diff --git a/script/duplicate-pr.ts b/script/duplicate-pr.ts index 971cfc1e17c..901756f8818 100755 --- a/script/duplicate-pr.ts +++ b/script/duplicate-pr.ts @@ -1,9 +1,9 @@ #!/usr/bin/env bun -/* TODO: Migrate this script to the new in-process @opencode-ai/sdk. +/* TODO: Migrate this script to the new in-process @opencode/sdk. import path from "path" import { pathToFileURL } from "bun" -import { createOpencode } from "@opencode-ai/sdk" +import { createOpencode } from "@opencode/sdk" import { parseArgs } from "util" async function main() { diff --git a/script/package-scope.md b/script/package-scope.md new file mode 100644 index 00000000000..90c2f564594 --- /dev/null +++ b/script/package-scope.md @@ -0,0 +1,86 @@ +# npm scope migration + +Repository-owned workspaces use `@opencode/*`. The executable names remain `opencode2` and +`opencode2-node`; the Node umbrella changes from `opencode-node` to `@opencode/cli-node`. + +## Release inventory + +Read-only registry audit on 2026-09-07 found all 33 names used by `publish.yml` and +`script/publish.ts`, with `thdxr` listed as maintainer. Each has `0.0.0-reserved`; +`@opencode/plugin-browser` additionally has a working `dev` release. + +| Group | Packages under `@opencode/` | +| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| Libraries | `ai`, `client`, `codemode`, `core`, `plugin`, `plugin-browser`, `protocol`, `schema`, `sdk`, `server`, `simulation`, `theme`, `ui`, `util` | +| Umbrellas | `cli`, `cli-node` | +| Bun / Linux | `cli-linux-arm64`, `cli-linux-arm64-musl`, `cli-linux-x64`, `cli-linux-x64-baseline`, `cli-linux-x64-musl`, `cli-linux-x64-baseline-musl` | +| Bun / macOS | `cli-darwin-arm64`, `cli-darwin-x64`, `cli-darwin-x64-baseline` | +| Bun / Windows | `cli-windows-arm64`, `cli-windows-x64`, `cli-windows-x64-baseline` | +| Node | `cli-node-linux-arm64`, `cli-node-linux-x64`, `cli-node-darwin-arm64`, `cli-node-windows-arm64`, `cli-node-windows-x64` | + +The user confirmed trusted publishing is already configured for all release packages. +The expected publisher is GitHub repository `anomalyco/opencode`, workflow `publish.yml`. +The browser plugin's trusted publisher was also verified directly before this migration. + +The workspace names `app`, `console-app`, `console-resource`, `console-support`, `http-recorder`, +`script`, and `web` have no `private: true` flag but are not published by this release workflow. +Their new names returned HTTP 404. In particular, reserve/configure `@opencode/http-recorder` +before separately publishing it. Private workspaces need no npm reservation. + +## Activation order + +1. Trusted publishing for the release inventory is confirmed by the user. +2. Retain old-name, package-aware releases as minimum update artifacts. +3. Publish the new names and their channel tags. The CLI publisher activates update metadata + only after its platform packages and umbrella have published. +4. Deploy the updated installer and V2 documentation with the matching channel releases. +5. Regenerate `nix/hashes.json` using `.github/workflows/nix-hashes.yml`; the renamed workspace + paths change the fixed-output dependency tree. Nix was unavailable in the development environment. + +The native and Node CLI minima were set and verified through the public update API: + +| Channel / artifact | Minimum package | Version | +| ------------------- | ------------------ | ------------------ | +| `beta/cli/npm` | `@opencode-ai/cli` | `0.0.0-beta-19242` | +| `dev/cli/npm` | `@opencode-ai/cli` | `0.0.0-dev-18952` | +| `beta/cli-node/npm` | `opencode-node` | `0.0.0-beta-19242` | +| `dev/cli-node/npm` | `opencode-node` | `0.0.0-dev-19265` | + +All four minimum releases remain under their old package names and contain package-aware +updating. The Node releases were also verified directly on npm before marking them minimum. + +The installer follows the beta update service's `metadata.package` for the default release. +For explicit versions it tries the new scope and falls back to the old scope on HTTP 404, +so old clients can still install the minimum release. + +## Compatibility boundaries + +- npm migration uses `--force` and retains the old package so removal cannot unlink the new + executable. Bun installs the new name with trusted lifecycle scripts and an isolated cache. + Both migrations were exercised with real package managers, the production postinstall, and + temporary Linux fixture packages for both executable names. +- pnpm and Yarn cross-name updates still return an explicit reinstall instruction. This + migration does not provide an automatic transition for those package managers. +- Consumers of V2 SDK/plugin packages must change dependencies and imports together. npm does + not redirect the old scope to the new one. No compatibility republish or deprecation was made. +- `@opencode-ai/pty` and its six platform dependencies remain published by the separate + `anomalyco/opencode-pty` repository. `@opencode/pty` returned HTTP 404, so those dependencies + deliberately retain their existing names. +- `github` and `packages/enterprise` still consume the published V1 SDK API. Their pinned + `@opencode-ai/sdk` dependencies, the legacy documentation in `packages/web/src/content/docs`, + and external dependency metadata in lockfiles retain their old names. Moving them requires + an API migration, not a package-name substitution. +- Previously configured native provider entrypoints under `@opencode-ai/ai/*` resolve to + the bundled `@opencode/ai/*` modules without changing user configuration. + +## Local package verification + +Build from `packages/cli`, then prepare tarballs without publishing or activating artifacts: + +```sh +OPENCODE_CHANNEL=dev OPENCODE_VERSION=0.0.0-dev-99999 bun script/build.ts --single --skip-install +OPENCODE_CHANNEL=dev OPENCODE_VERSION=0.0.0-dev-99999 bun script/publish.ts --dry-run +``` + +From `packages/sdk`, `bun run verify:package` builds and packs the library dependency graph, +installs it in a temporary npm consumer, and checks Node and Workerd entrypoints locally. diff --git a/script/publish.ts b/script/publish.ts index 90084581ba2..9729e26b0df 100755 --- a/script/publish.ts +++ b/script/publish.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" import { fileURLToPath } from "url" import { UpdateArtifact } from "./update-artifact" diff --git a/script/version.ts b/script/version.ts index 0582f49a3f9..1445a5c8596 100755 --- a/script/version.ts +++ b/script/version.ts @@ -1,6 +1,6 @@ #!/usr/bin/env bun -import { Script } from "@opencode-ai/script" +import { Script } from "@opencode/script" import { $ } from "bun" const output = [`version=${Script.version}`] diff --git a/turbo.json b/turbo.json index 95bbe3f6881..07d4810636e 100644 --- a/turbo.json +++ b/turbo.json @@ -15,76 +15,76 @@ "outputs": [], "cache": false }, - "@opencode-ai/enterprise#typecheck": { - "dependsOn": ["@opencode-ai/core#typecheck"] + "@opencode/enterprise#typecheck": { + "dependsOn": ["@opencode/core#typecheck"] }, - "@opencode-ai/sdk#typecheck": { - "dependsOn": ["@opencode-ai/core#typecheck"] + "@opencode/sdk#typecheck": { + "dependsOn": ["@opencode/core#typecheck"] }, - "@opencode-ai/server#typecheck": { - "dependsOn": ["@opencode-ai/core#typecheck"] + "@opencode/server#typecheck": { + "dependsOn": ["@opencode/core#typecheck"] }, - "@opencode-ai/simulation#typecheck": { - "dependsOn": ["@opencode-ai/core#typecheck"] + "@opencode/simulation#typecheck": { + "dependsOn": ["@opencode/core#typecheck"] }, - "@opencode-ai/tui#typecheck": { - "dependsOn": ["@opencode-ai/core#typecheck"] + "@opencode/tui#typecheck": { + "dependsOn": ["@opencode/core#typecheck"] }, "build": { "dependsOn": [], "outputs": ["dist/**"] }, - "@opencode-ai/ai#test": { + "@opencode/ai#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/codemode#test": { + "@opencode/codemode#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/core#test": { + "@opencode/core#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/function#test": { + "@opencode/function#test": { "outputs": [] }, - "@opencode-ai/desktop#test": { + "@opencode/desktop#test": { "outputs": [], "cache": false }, - "@opencode-ai/httpapi-codegen#test": { + "@opencode/httpapi-codegen#test": { "outputs": [] }, - "@opencode-ai/server#test": { + "@opencode/server#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/cli#test": { + "@opencode/cli#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/tui#test": { + "@opencode/tui#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/latex#test": { + "@opencode/latex#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/app#test": { + "@opencode/app#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/ui#test": { + "@opencode/ui#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/session-ui#test": { + "@opencode/session-ui#test": { "dependsOn": ["^build"], "outputs": [] }, - "@opencode-ai/sdk#verify:package": { + "@opencode/sdk#verify:package": { "outputs": [] } }