@shepai/cli 1.156.0 → 1.157.0-pr496.7e3ce96
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +253 -142
- package/apis/json-schema/Language.yaml +13 -0
- package/apis/json-schema/UserProfile.yaml +3 -0
- package/apis/json-schema/WorkflowConfig.yaml +5 -0
- package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +5 -0
- package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.js +7 -0
- package/dist/packages/core/src/application/use-cases/features/auto-archive-completed.use-case.d.ts +30 -0
- package/dist/packages/core/src/application/use-cases/features/auto-archive-completed.use-case.d.ts.map +1 -0
- package/dist/packages/core/src/application/use-cases/features/auto-archive-completed.use-case.js +75 -0
- package/dist/packages/core/src/application/use-cases/features/check-and-unblock-features.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/check-and-unblock-features.use-case.js +11 -1
- package/dist/packages/core/src/application/use-cases/features/resume-feature.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/resume-feature.use-case.js +3 -0
- package/dist/packages/core/src/application/use-cases/features/start-feature.use-case.d.ts.map +1 -1
- package/dist/packages/core/src/application/use-cases/features/start-feature.use-case.js +5 -0
- package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
- package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +1 -0
- package/dist/packages/core/src/domain/generated/output.d.ts +18 -0
- package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
- package/dist/packages/core/src/domain/generated/output.js +11 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +2 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +7 -2
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-auto-archive-delay-minutes.d.ts +15 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-auto-archive-delay-minutes.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-auto-archive-delay-minutes.js +20 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-language-preference.d.ts +14 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-language-preference.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/049-add-language-preference.js +19 -0
- package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +9 -5
- package/dist/packages/core/src/infrastructure/services/auto-archive/auto-archive-watcher.service.d.ts +48 -0
- package/dist/packages/core/src/infrastructure/services/auto-archive/auto-archive-watcher.service.d.ts.map +1 -0
- package/dist/packages/core/src/infrastructure/services/auto-archive/auto-archive-watcher.service.js +101 -0
- package/dist/packages/core/src/infrastructure/services/git/pr-branding.d.ts +1 -1
- package/dist/packages/core/src/infrastructure/services/git/pr-branding.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/git/pr-branding.js +1 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-installer.service.d.ts.map +1 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tool-installer.service.js +3 -1
- package/dist/packages/core/src/infrastructure/services/tool-installer/tools/claude-code.json +3 -4
- package/dist/src/presentation/cli/commands/_serve.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/_serve.command.js +10 -3
- package/dist/src/presentation/cli/commands/agent/approve.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/approve.command.js +9 -4
- package/dist/src/presentation/cli/commands/agent/delete.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/delete.command.js +9 -5
- package/dist/src/presentation/cli/commands/agent/index.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/index.js +3 -1
- package/dist/src/presentation/cli/commands/agent/logs.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/logs.command.js +7 -5
- package/dist/src/presentation/cli/commands/agent/ls.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/ls.command.js +12 -10
- package/dist/src/presentation/cli/commands/agent/reject.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/reject.command.js +10 -5
- package/dist/src/presentation/cli/commands/agent/resolve-run.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/resolve-run.js +7 -2
- package/dist/src/presentation/cli/commands/agent/show.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/show.command.js +8 -6
- package/dist/src/presentation/cli/commands/agent/stop.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/agent/stop.command.js +9 -4
- package/dist/src/presentation/cli/commands/daemon/start-daemon.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/daemon/start-daemon.js +10 -8
- package/dist/src/presentation/cli/commands/daemon/stop-daemon.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/daemon/stop-daemon.js +5 -3
- package/dist/src/presentation/cli/commands/feat/adopt.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/adopt.command.js +14 -12
- package/dist/src/presentation/cli/commands/feat/approve.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/approve.command.js +8 -6
- package/dist/src/presentation/cli/commands/feat/archive.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/archive.command.js +10 -8
- package/dist/src/presentation/cli/commands/feat/del.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/del.command.js +17 -15
- package/dist/src/presentation/cli/commands/feat/index.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/index.js +2 -1
- package/dist/src/presentation/cli/commands/feat/logs.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/logs.command.js +8 -6
- package/dist/src/presentation/cli/commands/feat/ls.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/ls.command.js +14 -12
- package/dist/src/presentation/cli/commands/feat/new.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/new.command.js +43 -37
- package/dist/src/presentation/cli/commands/feat/reject.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/reject.command.js +11 -9
- package/dist/src/presentation/cli/commands/feat/resolve-waiting-feature.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/resolve-waiting-feature.js +12 -5
- package/dist/src/presentation/cli/commands/feat/resume.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/resume.command.js +8 -6
- package/dist/src/presentation/cli/commands/feat/review.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/review.command.js +17 -15
- package/dist/src/presentation/cli/commands/feat/show.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/show.command.js +89 -45
- package/dist/src/presentation/cli/commands/feat/start.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/start.command.js +12 -10
- package/dist/src/presentation/cli/commands/feat/unarchive.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/feat/unarchive.command.js +8 -6
- package/dist/src/presentation/cli/commands/ide-open.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/ide-open.command.js +10 -5
- package/dist/src/presentation/cli/commands/install.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/install.command.js +29 -21
- package/dist/src/presentation/cli/commands/log-viewer.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/log-viewer.js +6 -3
- package/dist/src/presentation/cli/commands/repo/add.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/repo/add.command.js +12 -10
- package/dist/src/presentation/cli/commands/repo/index.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/repo/index.js +3 -1
- package/dist/src/presentation/cli/commands/repo/ls.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/repo/ls.command.js +11 -9
- package/dist/src/presentation/cli/commands/repo/resolve-repository.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/repo/resolve-repository.js +7 -2
- package/dist/src/presentation/cli/commands/repo/show.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/repo/show.command.js +21 -10
- package/dist/src/presentation/cli/commands/restart.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/restart.command.js +6 -4
- package/dist/src/presentation/cli/commands/run.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/run.command.js +21 -17
- package/dist/src/presentation/cli/commands/session/index.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/session/index.js +3 -1
- package/dist/src/presentation/cli/commands/session/ls.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/session/ls.command.js +11 -9
- package/dist/src/presentation/cli/commands/session/show.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/session/show.command.js +26 -18
- package/dist/src/presentation/cli/commands/settings/agent.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/settings/agent.command.js +12 -8
- package/dist/src/presentation/cli/commands/settings/ide.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/settings/ide.command.js +13 -7
- package/dist/src/presentation/cli/commands/settings/index.d.ts +1 -0
- package/dist/src/presentation/cli/commands/settings/index.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/settings/index.js +7 -3
- package/dist/src/presentation/cli/commands/settings/init.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/settings/init.command.js +8 -7
- package/dist/src/presentation/cli/commands/settings/language.command.d.ts +14 -0
- package/dist/src/presentation/cli/commands/settings/language.command.d.ts.map +1 -0
- package/dist/src/presentation/cli/commands/settings/language.command.js +79 -0
- package/dist/src/presentation/cli/commands/settings/model.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/settings/model.command.js +7 -6
- package/dist/src/presentation/cli/commands/settings/show.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/settings/show.command.js +4 -3
- package/dist/src/presentation/cli/commands/settings/workflow.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/settings/workflow.command.js +20 -18
- package/dist/src/presentation/cli/commands/start.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/start.command.js +5 -3
- package/dist/src/presentation/cli/commands/status.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/status.command.js +32 -24
- package/dist/src/presentation/cli/commands/stop.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/stop.command.js +4 -2
- package/dist/src/presentation/cli/commands/tools.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/tools.command.js +8 -4
- package/dist/src/presentation/cli/commands/ui.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/ui.command.js +17 -10
- package/dist/src/presentation/cli/commands/upgrade.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/upgrade.command.js +18 -13
- package/dist/src/presentation/cli/commands/version.command.d.ts.map +1 -1
- package/dist/src/presentation/cli/commands/version.command.js +5 -3
- package/dist/src/presentation/cli/i18n.d.ts +41 -0
- package/dist/src/presentation/cli/i18n.d.ts.map +1 -0
- package/dist/src/presentation/cli/i18n.js +100 -0
- package/dist/src/presentation/cli/index.js +13 -1
- package/dist/src/presentation/cli/ui/install-messages.d.ts.map +1 -1
- package/dist/src/presentation/cli/ui/install-messages.js +16 -6
- package/dist/src/presentation/tui/i18n.d.ts +24 -0
- package/dist/src/presentation/tui/i18n.d.ts.map +1 -0
- package/dist/src/presentation/tui/i18n.js +48 -0
- package/dist/src/presentation/tui/prompts/agent-select.prompt.d.ts +13 -31
- package/dist/src/presentation/tui/prompts/agent-select.prompt.d.ts.map +1 -1
- package/dist/src/presentation/tui/prompts/agent-select.prompt.js +17 -15
- package/dist/src/presentation/tui/prompts/auth-method.prompt.d.ts +7 -11
- package/dist/src/presentation/tui/prompts/auth-method.prompt.d.ts.map +1 -1
- package/dist/src/presentation/tui/prompts/auth-method.prompt.js +7 -5
- package/dist/src/presentation/tui/prompts/ide-select.prompt.d.ts.map +1 -1
- package/dist/src/presentation/tui/prompts/ide-select.prompt.js +2 -1
- package/dist/src/presentation/tui/prompts/prd-review-summary.prompt.d.ts.map +1 -1
- package/dist/src/presentation/tui/prompts/prd-review-summary.prompt.js +8 -6
- package/dist/src/presentation/tui/wizards/agent-config.wizard.d.ts.map +1 -1
- package/dist/src/presentation/tui/wizards/agent-config.wizard.js +2 -1
- package/dist/src/presentation/tui/wizards/github-import.wizard.d.ts.map +1 -1
- package/dist/src/presentation/tui/wizards/github-import.wizard.js +15 -11
- package/dist/src/presentation/tui/wizards/merge-review.wizard.d.ts.map +1 -1
- package/dist/src/presentation/tui/wizards/merge-review.wizard.js +10 -8
- package/dist/src/presentation/tui/wizards/onboarding/onboarding.wizard.d.ts.map +1 -1
- package/dist/src/presentation/tui/wizards/onboarding/onboarding.wizard.js +10 -7
- package/dist/src/presentation/tui/wizards/onboarding/steps/workflow-defaults.step.d.ts +0 -41
- package/dist/src/presentation/tui/wizards/onboarding/steps/workflow-defaults.step.d.ts.map +1 -1
- package/dist/src/presentation/tui/wizards/onboarding/steps/workflow-defaults.step.js +15 -15
- package/dist/src/presentation/tui/wizards/plan-review.wizard.d.ts.map +1 -1
- package/dist/src/presentation/tui/wizards/plan-review.wizard.js +10 -8
- package/dist/src/presentation/tui/wizards/prd-review.wizard.d.ts.map +1 -1
- package/dist/src/presentation/tui/wizards/prd-review.wizard.js +3 -2
- package/dist/src/presentation/web/app/(dashboard)/get-graph-data.d.ts.map +1 -1
- package/dist/src/presentation/web/app/(dashboard)/get-graph-data.js +4 -2
- package/dist/src/presentation/web/app/actions/create-feature.d.ts.map +1 -1
- package/dist/src/presentation/web/app/actions/create-feature.js +3 -0
- package/dist/src/presentation/web/app/layout.d.ts.map +1 -1
- package/dist/src/presentation/web/app/layout.js +5 -2
- package/dist/src/presentation/web/components/assistant-ui/thread.d.ts.map +1 -1
- package/dist/src/presentation/web/components/assistant-ui/thread.js +13 -10
- package/dist/src/presentation/web/components/common/add-repository-button/add-repository-button.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/add-repository-button/add-repository-button.js +3 -1
- package/dist/src/presentation/web/components/common/attachment-chip/attachment-chip.js +1 -1
- package/dist/src/presentation/web/components/common/base-drawer/base-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/base-drawer/base-drawer.js +5 -2
- package/dist/src/presentation/web/components/common/ci-status-badge/ci-status-badge.js +3 -3
- package/dist/src/presentation/web/components/common/control-center-drawer/adopt-branch-drawer.js +4 -4
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +7 -1
- package/dist/src/presentation/web/components/common/control-center-drawer/repository-drawer-client.js +1 -1
- package/dist/src/presentation/web/components/common/delete-feature-dialog/delete-feature-dialog.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/delete-feature-dialog/delete-feature-dialog.js +3 -1
- package/dist/src/presentation/web/components/common/deployment-status-badge/deployment-status-badge.js +2 -2
- package/dist/src/presentation/web/components/common/drawer-action-bar/drawer-action-bar.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/drawer-action-bar/drawer-action-bar.js +6 -2
- package/dist/src/presentation/web/components/common/empty-state/empty-state.stories.js +2 -2
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-create-drawer/feature-create-drawer.js +34 -22
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/activity-tab.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/activity-tab.js +11 -7
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/activity-tab.stories.js +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/branch-sync-status.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/branch-sync-status.js +3 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +4 -2
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.stories.js +2 -2
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/log-tab.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/log-tab.js +5 -3
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.js +9 -5
- package/dist/src/presentation/web/components/common/feature-list-item/feature-list-item.js +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts +2 -2
- package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node-state-config.js +22 -22
- package/dist/src/presentation/web/components/common/feature-node/feature-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-node.js +49 -36
- package/dist/src/presentation/web/components/common/feature-node/feature-sessions-dropdown.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-node/feature-sessions-dropdown.js +7 -3
- package/dist/src/presentation/web/components/common/feature-status-badges/feature-status-badges.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-status-badges/feature-status-badges.js +4 -2
- package/dist/src/presentation/web/components/common/feature-status-config.d.ts +2 -1
- package/dist/src/presentation/web/components/common/feature-status-config.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/feature-status-config.js +6 -6
- package/dist/src/presentation/web/components/common/feature-status-group/feature-status-group.js +1 -1
- package/dist/src/presentation/web/components/common/floating-action-button/floating-action-button.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/floating-action-button/floating-action-button.js +4 -2
- package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.js +1 -1
- package/dist/src/presentation/web/components/common/merge-review/diff-view.js +2 -2
- package/dist/src/presentation/web/components/common/merge-review/merge-review.js +2 -2
- package/dist/src/presentation/web/components/common/merge-review/merge-review.stories.js +1 -1
- package/dist/src/presentation/web/components/common/prd-questionnaire/prd-questionnaire.js +3 -3
- package/dist/src/presentation/web/components/common/reject-feedback-dialog/reject-feedback-dialog.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/reject-feedback-dialog/reject-feedback-dialog.js +6 -4
- package/dist/src/presentation/web/components/common/repository-node/repository-drawer.stories.js +3 -3
- package/dist/src/presentation/web/components/common/repository-node/repository-node-config.d.ts +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node-config.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/repository-node/repository-node.js +18 -11
- package/dist/src/presentation/web/components/common/repository-node/repository-node.stories.js +12 -12
- package/dist/src/presentation/web/components/common/server-log-viewer/server-log-viewer.js +1 -1
- package/dist/src/presentation/web/components/common/task-progress-view/task-progress-view.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/task-progress-view/task-progress-view.js +7 -4
- package/dist/src/presentation/web/components/common/tech-decisions-review/tech-decisions-review.js +2 -2
- package/dist/src/presentation/web/components/common/version-badge/version-badge.d.ts.map +1 -1
- package/dist/src/presentation/web/components/common/version-badge/version-badge.js +3 -1
- package/dist/src/presentation/web/components/features/chat/ChatComposer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/chat/ChatComposer.js +3 -1
- package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/chat/ChatMessageBubble.js +7 -5
- package/dist/src/presentation/web/components/features/chat/ChatMessageList.js +1 -1
- package/dist/src/presentation/web/components/features/chat/ChatSheet.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/chat/ChatSheet.js +5 -3
- package/dist/src/presentation/web/components/features/chat/ChatTab.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/chat/ChatTab.js +5 -3
- package/dist/src/presentation/web/components/features/control-center/control-center-empty-state.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/control-center-empty-state.js +15 -11
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/control-center-inner.js +14 -6
- package/dist/src/presentation/web/components/features/control-center/control-center.stories.js +1 -1
- package/dist/src/presentation/web/components/features/control-center/use-control-center-state.js +2 -2
- package/dist/src/presentation/web/components/features/control-center/welcome-agent-setup.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/control-center/welcome-agent-setup.js +8 -6
- package/dist/src/presentation/web/components/features/features-canvas/canvas-toolbar.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/features-canvas/canvas-toolbar.js +3 -1
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.js +4 -2
- package/dist/src/presentation/web/components/features/features-canvas/features-canvas.stories.js +6 -6
- package/dist/src/presentation/web/components/features/settings/AgentModelPicker/index.js +2 -2
- package/dist/src/presentation/web/components/features/settings/ModelPicker/index.js +2 -2
- package/dist/src/presentation/web/components/features/settings/agent-settings-section.js +1 -1
- package/dist/src/presentation/web/components/features/settings/language-settings-section.d.ts +5 -0
- package/dist/src/presentation/web/components/features/settings/language-settings-section.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/settings/language-settings-section.js +54 -0
- package/dist/src/presentation/web/components/features/settings/language-settings-section.stories.d.ts +18 -0
- package/dist/src/presentation/web/components/features/settings/language-settings-section.stories.d.ts.map +1 -0
- package/dist/src/presentation/web/components/features/settings/language-settings-section.stories.js +36 -0
- package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
- package/dist/src/presentation/web/components/features/settings/settings-page-client.js +100 -88
- package/dist/src/presentation/web/components/features/settings/timeout-slider.js +1 -1
- package/dist/src/presentation/web/components/features/skills/category-filter.js +1 -1
- package/dist/src/presentation/web/components/features/skills/skills-page-client.js +1 -1
- package/dist/src/presentation/web/components/features/tools/tool-card.js +1 -1
- package/dist/src/presentation/web/components/features/tools/tool-detail-drawer.js +2 -2
- package/dist/src/presentation/web/components/features/version/version-page-client.js +1 -1
- package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
- package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +5 -1
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.d.ts.map +1 -1
- package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.js +13 -7
- package/dist/src/presentation/web/components/providers/i18n-provider.d.ts +17 -0
- package/dist/src/presentation/web/components/providers/i18n-provider.d.ts.map +1 -0
- package/dist/src/presentation/web/components/providers/i18n-provider.js +36 -0
- package/dist/src/presentation/web/components/ui/alert-dialog.js +1 -1
- package/dist/src/presentation/web/components/ui/alert.js +1 -1
- package/dist/src/presentation/web/components/ui/checkbox-group.js +1 -1
- package/dist/src/presentation/web/components/ui/command.js +1 -1
- package/dist/src/presentation/web/components/ui/dialog.d.ts.map +1 -1
- package/dist/src/presentation/web/components/ui/dialog.js +2 -2
- package/dist/src/presentation/web/components/ui/dialog.stories.js +1 -1
- package/dist/src/presentation/web/components/ui/drawer.d.ts.map +1 -1
- package/dist/src/presentation/web/components/ui/drawer.js +2 -8
- package/dist/src/presentation/web/components/ui/dropdown-menu.js +6 -6
- package/dist/src/presentation/web/components/ui/scroll-area.js +1 -1
- package/dist/src/presentation/web/components/ui/select.js +1 -1
- package/dist/src/presentation/web/components/ui/sheet.js +3 -3
- package/dist/src/presentation/web/components/ui/sidebar.d.ts.map +1 -1
- package/dist/src/presentation/web/components/ui/sidebar.js +15 -15
- package/dist/src/presentation/web/components/ui/switch.js +1 -1
- package/dist/src/presentation/web/dev-server.js +10 -0
- package/dist/src/presentation/web/hooks/use-graph-state.d.ts.map +1 -1
- package/dist/src/presentation/web/hooks/use-graph-state.js +7 -4
- package/dist/src/presentation/web/hooks/use-sound-action.stories.js +1 -1
- package/dist/src/presentation/web/lib/i18n.d.ts +15 -0
- package/dist/src/presentation/web/lib/i18n.d.ts.map +1 -0
- package/dist/src/presentation/web/lib/i18n.js +64 -0
- package/dist/src/presentation/web/lib/language.d.ts +23 -0
- package/dist/src/presentation/web/lib/language.d.ts.map +1 -0
- package/dist/src/presentation/web/lib/language.js +37 -0
- package/dist/src/presentation/web/lib/layout-with-dagre.d.ts +2 -0
- package/dist/src/presentation/web/lib/layout-with-dagre.d.ts.map +1 -1
- package/dist/src/presentation/web/lib/layout-with-dagre.js +4 -0
- package/dist/src/presentation/web/lib/rtl-fonts.d.ts +19 -0
- package/dist/src/presentation/web/lib/rtl-fonts.d.ts.map +1 -0
- package/dist/src/presentation/web/lib/rtl-fonts.js +51 -0
- package/dist/translations/ar/cli.json +613 -0
- package/dist/translations/ar/common.json +55 -0
- package/dist/translations/ar/tui.json +130 -0
- package/dist/translations/ar/web.json +594 -0
- package/dist/translations/de/cli.json +613 -0
- package/dist/translations/de/common.json +55 -0
- package/dist/translations/de/tui.json +109 -0
- package/dist/translations/de/web.json +580 -0
- package/dist/translations/en/cli.json +613 -0
- package/dist/translations/en/common.json +55 -0
- package/dist/translations/en/tui.json +130 -0
- package/dist/translations/en/web.json +594 -0
- package/dist/translations/es/cli.json +613 -0
- package/dist/translations/es/common.json +55 -0
- package/dist/translations/es/tui.json +130 -0
- package/dist/translations/es/web.json +594 -0
- package/dist/translations/fr/cli.json +613 -0
- package/dist/translations/fr/common.json +55 -0
- package/dist/translations/fr/tui.json +130 -0
- package/dist/translations/fr/web.json +594 -0
- package/dist/translations/he/cli.json +613 -0
- package/dist/translations/he/common.json +55 -0
- package/dist/translations/he/tui.json +130 -0
- package/dist/translations/he/web.json +594 -0
- package/dist/translations/pt/cli.json +613 -0
- package/dist/translations/pt/common.json +55 -0
- package/dist/translations/pt/tui.json +130 -0
- package/dist/translations/pt/web.json +594 -0
- package/dist/translations/ru/cli.json +613 -0
- package/dist/translations/ru/common.json +55 -0
- package/dist/translations/ru/tui.json +130 -0
- package/dist/translations/ru/web.json +594 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +5 -3
- package/web/.next/BUILD_ID +1 -1
- package/web/.next/build-manifest.json +2 -2
- package/web/.next/fallback-build-manifest.json +2 -2
- package/web/.next/prerender-manifest.json +3 -3
- package/web/.next/required-server-files.js +7 -7
- package/web/.next/required-server-files.json +7 -7
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +28 -28
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/chat/page/server-reference-manifest.json +26 -26
- package/web/.next/server/app/(dashboard)/@drawer/chat/page.js +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/chat/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/chat/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +29 -29
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +36 -36
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +36 -36
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +4 -4
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +26 -26
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +26 -26
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +3 -3
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/chat/page/server-reference-manifest.json +26 -26
- package/web/.next/server/app/(dashboard)/chat/page.js +3 -3
- package/web/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +29 -29
- package/web/.next/server/app/(dashboard)/create/page.js +3 -3
- package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +36 -36
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +4 -4
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +36 -36
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +4 -4
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +26 -26
- package/web/.next/server/app/(dashboard)/page.js +3 -3
- package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page/server-reference-manifest.json +26 -26
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js +3 -3
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/[tab]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +26 -26
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +3 -3
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
- package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/server/app/_not-found/page/server-reference-manifest.json +5 -5
- package/web/.next/server/app/_not-found/page.js +2 -2
- package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
- package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
- package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
- package/web/.next/server/app/api/interactive/chat/[featureId]/messages/route.js.nft.json +1 -1
- package/web/.next/server/app/settings/page/server-reference-manifest.json +8 -8
- package/web/.next/server/app/settings/page.js +2 -2
- package/web/.next/server/app/settings/page.js.nft.json +1 -1
- package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/skills/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/skills/page.js +3 -4
- package/web/.next/server/app/skills/page.js.nft.json +1 -1
- package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/tools/page/server-reference-manifest.json +10 -10
- package/web/.next/server/app/tools/page.js +3 -4
- package/web/.next/server/app/tools/page.js.nft.json +1 -1
- package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/web/.next/server/app/version/page/server-reference-manifest.json +5 -5
- package/web/.next/server/app/version/page.js +2 -2
- package/web/.next/server/app/version/page.js.nft.json +1 -1
- package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
- package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__b4102cc7._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__b4102cc7._.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__beda892a._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__beda892a._.js.map +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js +1 -1
- package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js +3 -3
- package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_feature-drawer-client_tsx_e9755fc8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__209c9597._.js +4 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__88f7e8e6._.js.map → [root-of-the-server]__209c9597._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__27301e38._.js +4 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__17ed7ed1._.js.map → [root-of-the-server]__27301e38._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__56b70465._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__6fecf886._.js +4 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__42bf1807._.js.map → [root-of-the-server]__6fecf886._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8b0aac03._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8d27866c._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__8d27866c._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__9f3504c7._.js +4 -0
- package/web/.next/server/chunks/ssr/{[root-of-the-server]__f80bfc75._.js.map → [root-of-the-server]__9f3504c7._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__bd6ed91a._.js +4 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__bd6ed91a._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__c30f1f82._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__dffa13c5._.js +3 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__dffa13c5._.js.map +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e91ffd5e._.js +2 -2
- package/web/.next/server/chunks/ssr/[root-of-the-server]__e91ffd5e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f8dd4422._.js +1 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f8dd4422._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_05c23ad9._.js +1 -1
- package/web/.next/server/chunks/ssr/_05c23ad9._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_0dc06d07._.js +3 -0
- package/web/.next/server/chunks/ssr/_0dc06d07._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_16eb4fec._.js +1 -1
- package/web/.next/server/chunks/ssr/_16eb4fec._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_3a0b989f._.js +2 -2
- package/web/.next/server/chunks/ssr/_3a0b989f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_67104d9e._.js → _3bcda5d7._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_67104d9e._.js.map → _3bcda5d7._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_5119a3df._.js +3 -0
- package/web/.next/server/chunks/ssr/_5119a3df._.js.map +1 -0
- package/web/.next/server/chunks/ssr/{_b354e40a._.js → _54af0d8c._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_b354e40a._.js.map → _54af0d8c._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_56b9d60f._.js +1 -1
- package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_5d73b993._.js +4 -0
- package/web/.next/server/chunks/ssr/_5d73b993._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_5f69c13f._.js +1 -1
- package/web/.next/server/chunks/ssr/_5f69c13f._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_7c5b97c6._.js +1 -1
- package/web/.next/server/chunks/ssr/_7c5b97c6._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_82c57f10._.js +1 -1
- package/web/.next/server/chunks/ssr/_82c57f10._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_8b57edb8._.js +1 -1
- package/web/.next/server/chunks/ssr/_8b57edb8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_8d733ce4._.js +1 -1
- package/web/.next/server/chunks/ssr/_8d733ce4._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_8e3fa3c7._.js +3 -0
- package/web/.next/server/chunks/ssr/{_08dc06df._.js.map → _8e3fa3c7._.js.map} +1 -1
- package/web/.next/server/chunks/ssr/_9495d50b._.js +1 -1
- package/web/.next/server/chunks/ssr/_9495d50b._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_a0e3f7e4._.js +1 -1
- package/web/.next/server/chunks/ssr/_a0e3f7e4._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_ac4a3873._.js +1 -1
- package/web/.next/server/chunks/ssr/_ac4a3873._.js.map +1 -1
- package/web/.next/server/chunks/ssr/{_507a8382._.js → _b9ba2473._.js} +2 -2
- package/web/.next/server/chunks/ssr/_b9ba2473._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_bcaea66b._.js +3 -0
- package/web/.next/server/chunks/ssr/_bcaea66b._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_bcfa8457._.js +9 -0
- package/web/.next/server/chunks/ssr/_bcfa8457._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_ca0aa7f0._.js +1 -1
- package/web/.next/server/chunks/ssr/_ca0aa7f0._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_cb5a021e._.js +1 -1
- package/web/.next/server/chunks/ssr/_cb5a021e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_cfbd1d7e._.js +1 -1
- package/web/.next/server/chunks/ssr/_cfbd1d7e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d86175ae._.js +1 -1
- package/web/.next/server/chunks/ssr/_d86175ae._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d8bedf13._.js +1 -1
- package/web/.next/server/chunks/ssr/_d8bedf13._.js.map +1 -1
- package/web/.next/server/chunks/ssr/_d90b0a06._.js +3 -0
- package/web/.next/server/chunks/ssr/_d90b0a06._.js.map +1 -0
- package/web/.next/server/chunks/ssr/_fa7efce3._.js +2 -2
- package/web/.next/server/chunks/ssr/_fa7efce3._.js.map +1 -1
- package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
- package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_8ec2c790._.js +1 -1
- package/web/.next/server/chunks/ssr/node_modules__pnpm_8ec2c790._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_app_actions_open-ide_ts_baaca5d5._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js +3 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_components_895e5bfa._.js.map +1 -0
- package/web/.next/server/chunks/ssr/src_presentation_web_components_a5e6c910._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_a5e6c910._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_features_tools_tools-page-client_tsx_3d0aa70c._.js.map +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js +1 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_db9fa0c2._.js.map +1 -1
- package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js +3 -0
- package/web/.next/server/chunks/ssr/translations_23dd5e7e._.js.map +1 -0
- package/web/.next/server/pages/500.html +2 -2
- package/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/server/server-reference-manifest.json +45 -45
- package/web/.next/static/chunks/{5064470ab185e453.js → 02eb9809370f1b44.js} +2 -2
- package/web/.next/static/chunks/{3e1e0f9bde3530d2.js → 08ff9ace090d2691.js} +1 -1
- package/web/.next/static/chunks/{b4cde06eff374c59.js → 0a79dfbb8486b66e.js} +2 -2
- package/web/.next/static/chunks/0b1c2bbc0169229f.js +1 -0
- package/web/.next/static/chunks/18d0ec4f7b848983.js +1 -0
- package/web/.next/static/chunks/2273b81cd7c7d2af.css +1 -0
- package/web/.next/static/chunks/36768c59216eeaf9.js +1 -0
- package/web/.next/static/chunks/{688971d5bad5dc7c.js → 3deefc76ea55047c.js} +1 -1
- package/web/.next/static/chunks/{11091b676d1b3bd4.js → 47477ed4c5871747.js} +1 -1
- package/web/.next/static/chunks/4864ff06a738d58b.js +1 -0
- package/web/.next/static/chunks/504d1bd34e9f7dd8.js +7 -0
- package/web/.next/static/chunks/{22c459f1877b1e4f.js → 74db65fa7bfb80bd.js} +1 -1
- package/web/.next/static/chunks/7b9ed1c6d9eea406.js +2 -0
- package/web/.next/static/chunks/{f98f811478ff3d9e.js → 7e2465210c64ed91.js} +1 -1
- package/web/.next/static/chunks/9061f08ab7e537a8.js +1 -0
- package/web/.next/static/chunks/{37156b1c0646309f.js → 9d314b2b855bc050.js} +1 -1
- package/web/.next/static/chunks/a272e115fd5ca5a0.js +5 -0
- package/web/.next/static/chunks/{baa593a4681fc66e.js → b8196a574b97e029.js} +1 -1
- package/web/.next/static/chunks/d2cbeefbc8967b16.js +1 -0
- package/web/.next/static/chunks/d5366257d6b9f855.js +1 -0
- package/web/.next/static/chunks/{5ae60a052ab5f437.js → d6e702c209c413ce.js} +2 -2
- package/web/.next/static/chunks/ec99e6be5b32ecc9.js +1 -0
- package/web/.next/static/chunks/ed078ae150b9499a.js +1 -0
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0b150ddf._.js +0 -3
- package/web/.next/server/chunks/ssr/[root-of-the-server]__0b150ddf._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__17ed7ed1._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__28d0d265._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__28d0d265._.js.map +0 -1
- package/web/.next/server/chunks/ssr/[root-of-the-server]__42bf1807._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__88f7e8e6._.js +0 -4
- package/web/.next/server/chunks/ssr/[root-of-the-server]__f80bfc75._.js +0 -4
- package/web/.next/server/chunks/ssr/_08dc06df._.js +0 -3
- package/web/.next/server/chunks/ssr/_140901ed._.js +0 -4
- package/web/.next/server/chunks/ssr/_140901ed._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_4b432739._.js +0 -3
- package/web/.next/server/chunks/ssr/_4b432739._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_507a8382._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_8219712a._.js +0 -3
- package/web/.next/server/chunks/ssr/_8219712a._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_d4b20e29._.js +0 -3
- package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +0 -1
- package/web/.next/server/chunks/ssr/_e9a73a63._.js +0 -9
- package/web/.next/server/chunks/ssr/_e9a73a63._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_324a47da._.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web_324a47da._.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_cdc632e3.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_cdc632e3.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_39ca0924.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_39ca0924.js.map +0 -1
- package/web/.next/server/chunks/ssr/src_presentation_web_components_357e3eb0._.js +0 -3
- package/web/.next/server/chunks/ssr/src_presentation_web_components_357e3eb0._.js.map +0 -1
- package/web/.next/static/chunks/0104ee32c0b12767.js +0 -7
- package/web/.next/static/chunks/1555e75b3393cfe1.js +0 -1
- package/web/.next/static/chunks/4b2c4a5c35ebb70d.js +0 -1
- package/web/.next/static/chunks/697bbb4ddfc7aed8.js +0 -1
- package/web/.next/static/chunks/8590bd2e69b24b9e.css +0 -1
- package/web/.next/static/chunks/88a729f218d9628b.js +0 -5
- package/web/.next/static/chunks/88ffe4a8760a3559.js +0 -1
- package/web/.next/static/chunks/8ba1c07ef18b15a9.js +0 -1
- package/web/.next/static/chunks/92629ccb27a1bdb9.js +0 -2
- package/web/.next/static/chunks/ae30b66927c676ff.js +0 -1
- package/web/.next/static/chunks/cd54b758f58061d0.js +0 -1
- package/web/.next/static/chunks/f5c527d3f8699035.js +0 -1
- /package/web/.next/static/{N3SkMLMrYUFai4W2zwMGS → jBQpz78BQ7UsAMcJbVOPf}/_buildManifest.js +0 -0
- /package/web/.next/static/{N3SkMLMrYUFai4W2zwMGS → jBQpz78BQ7UsAMcJbVOPf}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{N3SkMLMrYUFai4W2zwMGS → jBQpz78BQ7UsAMcJbVOPf}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAS3C"}
|
|
@@ -15,12 +15,14 @@ import { Command } from 'commander';
|
|
|
15
15
|
import { createShowCommand } from './show.command.js';
|
|
16
16
|
import { createLsCommand } from './ls.command.js';
|
|
17
17
|
import { createAddCommand } from './add.command.js';
|
|
18
|
+
import { getCliI18n } from '../../i18n.js';
|
|
18
19
|
/**
|
|
19
20
|
* Create the repo command with all subcommands
|
|
20
21
|
*/
|
|
21
22
|
export function createRepoCommand() {
|
|
23
|
+
const t = getCliI18n().t;
|
|
22
24
|
const repo = new Command('repo')
|
|
23
|
-
.description('
|
|
25
|
+
.description(t('cli:commands.repo.description'))
|
|
24
26
|
.addCommand(createLsCommand())
|
|
25
27
|
.addCommand(createShowCommand())
|
|
26
28
|
.addCommand(createAddCommand());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ls.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/ls.command.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ls.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/ls.command.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBpC,wBAAgB,eAAe,IAAI,OAAO,CAwCzC"}
|
|
@@ -10,6 +10,7 @@ import { Command } from 'commander';
|
|
|
10
10
|
import { container } from '../../../../../packages/core/src/infrastructure/di/container.js';
|
|
11
11
|
import { ListRepositoriesUseCase } from '../../../../../packages/core/src/application/use-cases/repositories/list-repositories.use-case.js';
|
|
12
12
|
import { colors, messages, renderListView } from '../../ui/index.js';
|
|
13
|
+
import { getCliI18n } from '../../i18n.js';
|
|
13
14
|
/** Format a duration in ms to a compact human-readable string. */
|
|
14
15
|
function formatDuration(ms) {
|
|
15
16
|
const seconds = Math.floor(ms / 1000);
|
|
@@ -26,7 +27,8 @@ function formatDuration(ms) {
|
|
|
26
27
|
return `${days}d`;
|
|
27
28
|
}
|
|
28
29
|
export function createLsCommand() {
|
|
29
|
-
|
|
30
|
+
const t = getCliI18n().t;
|
|
31
|
+
return new Command('ls').description(t('cli:commands.repo.ls.description')).action(async () => {
|
|
30
32
|
try {
|
|
31
33
|
const useCase = container.resolve(ListRepositoriesUseCase);
|
|
32
34
|
const featureRepo = container.resolve('IFeatureRepository');
|
|
@@ -43,21 +45,21 @@ export function createLsCommand() {
|
|
|
43
45
|
];
|
|
44
46
|
}));
|
|
45
47
|
renderListView({
|
|
46
|
-
title: '
|
|
48
|
+
title: t('cli:commands.repo.ls.title'),
|
|
47
49
|
columns: [
|
|
48
|
-
{ label: '
|
|
49
|
-
{ label: '
|
|
50
|
-
{ label: '
|
|
51
|
-
{ label: '
|
|
52
|
-
{ label: '
|
|
50
|
+
{ label: t('cli:commands.repo.ls.idColumn'), width: 10 },
|
|
51
|
+
{ label: t('cli:commands.repo.ls.nameColumn'), width: 28 },
|
|
52
|
+
{ label: t('cli:commands.repo.ls.featuresColumn'), width: 10 },
|
|
53
|
+
{ label: t('cli:commands.repo.ls.pathColumn'), width: 36 },
|
|
54
|
+
{ label: t('cli:commands.repo.ls.createdColumn'), width: 12 },
|
|
53
55
|
],
|
|
54
56
|
rows,
|
|
55
|
-
emptyMessage: '
|
|
57
|
+
emptyMessage: t('cli:commands.repo.ls.noRepos'),
|
|
56
58
|
});
|
|
57
59
|
}
|
|
58
60
|
catch (error) {
|
|
59
61
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
60
|
-
messages.error('
|
|
62
|
+
messages.error(t('cli:commands.repo.ls.failedToList'), err);
|
|
61
63
|
process.exitCode = 1;
|
|
62
64
|
}
|
|
63
65
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-repository.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/resolve-repository.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"resolve-repository.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/resolve-repository.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAG/D,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,MAAM,GACT,OAAO,CAAC;IAAE,UAAU,EAAE,UAAU,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAyBzD"}
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
* Shared helper: resolve a repository by exact or prefix ID.
|
|
3
3
|
*/
|
|
4
4
|
import { container } from '../../../../../packages/core/src/infrastructure/di/container.js';
|
|
5
|
+
import { getCliI18n } from '../../i18n.js';
|
|
5
6
|
export async function resolveRepository(id) {
|
|
7
|
+
const t = getCliI18n().t;
|
|
6
8
|
const repo = container.resolve('IRepositoryRepository');
|
|
7
9
|
// Try exact match first
|
|
8
10
|
const exact = await repo.findById(id);
|
|
@@ -16,9 +18,12 @@ export async function resolveRepository(id) {
|
|
|
16
18
|
return { repository: matches[0] };
|
|
17
19
|
if (matches.length > 1) {
|
|
18
20
|
return {
|
|
19
|
-
error:
|
|
21
|
+
error: t('cli:commands.repo.resolve.multipleMatch', {
|
|
22
|
+
id,
|
|
23
|
+
matches: matches.map((m) => m.id.substring(0, 8)).join(', '),
|
|
24
|
+
}),
|
|
20
25
|
};
|
|
21
26
|
}
|
|
22
27
|
}
|
|
23
|
-
return { error:
|
|
28
|
+
return { error: t('cli:commands.repo.resolve.notFound', { id }) };
|
|
24
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"show.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/show.command.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"show.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/repo/show.command.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqCpC,wBAAgB,iBAAiB,IAAI,OAAO,CAgE3C"}
|
|
@@ -10,6 +10,7 @@ import { Command } from 'commander';
|
|
|
10
10
|
import { container } from '../../../../../packages/core/src/infrastructure/di/container.js';
|
|
11
11
|
import { colors, messages, renderDetailView } from '../../ui/index.js';
|
|
12
12
|
import { resolveRepository } from './resolve-repository.js';
|
|
13
|
+
import { getCliI18n } from '../../i18n.js';
|
|
13
14
|
/** Color a lifecycle value to match feat ls status styling. */
|
|
14
15
|
function colorLifecycle(lifecycle) {
|
|
15
16
|
switch (lifecycle) {
|
|
@@ -41,9 +42,10 @@ function formatDate(date) {
|
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
export function createShowCommand() {
|
|
45
|
+
const t = getCliI18n().t;
|
|
44
46
|
return new Command('show')
|
|
45
|
-
.description('
|
|
46
|
-
.argument('<id>',
|
|
47
|
+
.description(t('cli:commands.repo.show.description'))
|
|
48
|
+
.argument('<id>', t('cli:commands.repo.show.idArgument'))
|
|
47
49
|
.action(async (id) => {
|
|
48
50
|
try {
|
|
49
51
|
const resolved = await resolveRepository(id);
|
|
@@ -60,9 +62,9 @@ export function createShowCommand() {
|
|
|
60
62
|
label: `${colors.muted(f.id.slice(0, 8))} ${f.name}`,
|
|
61
63
|
value: colorLifecycle(f.lifecycle),
|
|
62
64
|
}))
|
|
63
|
-
: [{ label: '
|
|
65
|
+
: [{ label: t('cli:commands.repo.show.noFeatures'), value: '\u2014' }];
|
|
64
66
|
renderDetailView({
|
|
65
|
-
title: '
|
|
67
|
+
title: t('cli:commands.repo.show.title'),
|
|
66
68
|
sections: [
|
|
67
69
|
{
|
|
68
70
|
fields: [
|
|
@@ -72,15 +74,24 @@ export function createShowCommand() {
|
|
|
72
74
|
],
|
|
73
75
|
},
|
|
74
76
|
{
|
|
75
|
-
title: '
|
|
77
|
+
title: t('cli:commands.repo.show.timestampsTitle'),
|
|
76
78
|
fields: [
|
|
77
|
-
{
|
|
78
|
-
|
|
79
|
-
|
|
79
|
+
{
|
|
80
|
+
label: t('cli:commands.repo.show.createdLabel'),
|
|
81
|
+
value: formatDate(repository.createdAt),
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
label: t('cli:commands.repo.show.updatedLabel'),
|
|
85
|
+
value: formatDate(repository.updatedAt),
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
label: t('cli:commands.repo.show.deletedLabel'),
|
|
89
|
+
value: formatDate(repository.deletedAt),
|
|
90
|
+
},
|
|
80
91
|
],
|
|
81
92
|
},
|
|
82
93
|
{
|
|
83
|
-
title:
|
|
94
|
+
title: t('cli:commands.repo.show.featuresTitle', { count: features.length }),
|
|
84
95
|
fields: featureFields,
|
|
85
96
|
},
|
|
86
97
|
],
|
|
@@ -88,7 +99,7 @@ export function createShowCommand() {
|
|
|
88
99
|
}
|
|
89
100
|
catch (error) {
|
|
90
101
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
91
|
-
messages.error('
|
|
102
|
+
messages.error(t('cli:commands.repo.show.failedToShow'), err);
|
|
92
103
|
process.exitCode = 1;
|
|
93
104
|
}
|
|
94
105
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"restart.command.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/cli/commands/restart.command.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAwB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"restart.command.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/cli/commands/restart.command.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAwB,MAAM,WAAW,CAAC;AAgB1D;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CA4B9C"}
|
|
@@ -11,10 +11,11 @@ import { container } from '../../../../packages/core/src/infrastructure/di/conta
|
|
|
11
11
|
import { messages } from '../ui/index.js';
|
|
12
12
|
import { stopDaemon } from './daemon/stop-daemon.js';
|
|
13
13
|
import { startDaemon } from './daemon/start-daemon.js';
|
|
14
|
+
import { getCliI18n } from '../i18n.js';
|
|
14
15
|
function parsePort(value) {
|
|
15
16
|
const port = parseInt(value, 10);
|
|
16
17
|
if (isNaN(port) || port < 1024 || port > 65535) {
|
|
17
|
-
throw new InvalidArgumentError('
|
|
18
|
+
throw new InvalidArgumentError(getCliI18n().t('cli:commands.restart.portValidation'));
|
|
18
19
|
}
|
|
19
20
|
return port;
|
|
20
21
|
}
|
|
@@ -22,9 +23,10 @@ function parsePort(value) {
|
|
|
22
23
|
* Create the restart command.
|
|
23
24
|
*/
|
|
24
25
|
export function createRestartCommand() {
|
|
26
|
+
const t = getCliI18n().t;
|
|
25
27
|
return new Command('restart')
|
|
26
|
-
.description('
|
|
27
|
-
.option('-p, --port <number>', '
|
|
28
|
+
.description(t('cli:commands.restart.description'))
|
|
29
|
+
.option('-p, --port <number>', t('cli:commands.restart.portOption'), parsePort)
|
|
28
30
|
.addHelpText('after', `
|
|
29
31
|
Examples:
|
|
30
32
|
$ shep restart Restart (or start) on default port
|
|
@@ -40,7 +42,7 @@ Examples:
|
|
|
40
42
|
}
|
|
41
43
|
else {
|
|
42
44
|
// Daemon is not running — start it directly
|
|
43
|
-
messages.info('
|
|
45
|
+
messages.info(t('cli:commands.restart.daemonNotRunning'));
|
|
44
46
|
await startDaemon({ port: options.port });
|
|
45
47
|
}
|
|
46
48
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.command.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/cli/commands/run.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"run.command.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/cli/commands/run.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoCpC;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAwC1C"}
|
|
@@ -15,6 +15,7 @@ import { Command } from 'commander';
|
|
|
15
15
|
import { container } from '../../../../packages/core/src/infrastructure/di/container.js';
|
|
16
16
|
import { RunAgentUseCase } from '../../../../packages/core/src/application/use-cases/agents/run-agent.use-case.js';
|
|
17
17
|
import { colors, symbols, fmt, messages } from '../ui/index.js';
|
|
18
|
+
import { getCliI18n } from '../i18n.js';
|
|
18
19
|
/**
|
|
19
20
|
* Creates a terminal spinner that shows progress while awaiting an async operation.
|
|
20
21
|
* Returns start/stop controls. The spinner writes to stderr to avoid polluting stdout.
|
|
@@ -42,20 +43,21 @@ function createSpinner(text) {
|
|
|
42
43
|
* Create the run command
|
|
43
44
|
*/
|
|
44
45
|
export function createRunCommand() {
|
|
46
|
+
const t = getCliI18n().t;
|
|
45
47
|
return new Command('run')
|
|
46
|
-
.description('
|
|
47
|
-
.argument('<agent-name>', '
|
|
48
|
-
.option('-p, --prompt <prompt>', '
|
|
49
|
-
.option('-r, --repo <path>',
|
|
50
|
-
.option('-s, --stream', '
|
|
48
|
+
.description(t('cli:commands.run.description'))
|
|
49
|
+
.argument('<agent-name>', t('cli:commands.run.agentArgument'))
|
|
50
|
+
.option('-p, --prompt <prompt>', t('cli:commands.run.promptOption'), t('cli:commands.run.promptDefault'))
|
|
51
|
+
.option('-r, --repo <path>', t('cli:commands.run.repoOption'))
|
|
52
|
+
.option('-s, --stream', t('cli:commands.run.streamOption'))
|
|
51
53
|
.action(async (agentName, options) => {
|
|
52
54
|
try {
|
|
53
55
|
const useCase = container.resolve(RunAgentUseCase);
|
|
54
56
|
const repoPath = options.repo ?? process.cwd();
|
|
55
57
|
messages.newline();
|
|
56
|
-
console.log(`${fmt.heading('
|
|
57
|
-
console.log(colors.muted(`
|
|
58
|
-
console.log(colors.muted(`
|
|
58
|
+
console.log(`${fmt.heading(t('cli:commands.run.runningAgent'))} ${colors.accent(agentName)}`);
|
|
59
|
+
console.log(colors.muted(` ${t('cli:commands.run.repositoryLabel', { path: repoPath })}`));
|
|
60
|
+
console.log(colors.muted(` ${t('cli:commands.run.promptLabel', { prompt: options.prompt })}`));
|
|
59
61
|
messages.newline();
|
|
60
62
|
if (options.stream) {
|
|
61
63
|
await runStreaming(useCase, agentName, options.prompt, repoPath);
|
|
@@ -67,13 +69,14 @@ export function createRunCommand() {
|
|
|
67
69
|
}
|
|
68
70
|
catch (error) {
|
|
69
71
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
70
|
-
messages.error('
|
|
72
|
+
messages.error(t('cli:commands.run.failedToRun'), err);
|
|
71
73
|
process.exitCode = 1;
|
|
72
74
|
}
|
|
73
75
|
});
|
|
74
76
|
}
|
|
75
77
|
/** Stream agent events to stdout in real-time. */
|
|
76
78
|
async function runStreaming(useCase, agentName, prompt, repoPath) {
|
|
79
|
+
const t = getCliI18n().t;
|
|
77
80
|
let hasResult = false;
|
|
78
81
|
for await (const event of useCase.executeStream({
|
|
79
82
|
agentName,
|
|
@@ -86,9 +89,9 @@ async function runStreaming(useCase, agentName, prompt, repoPath) {
|
|
|
86
89
|
else if (event.type === 'result') {
|
|
87
90
|
hasResult = true;
|
|
88
91
|
messages.newline();
|
|
89
|
-
messages.success(
|
|
92
|
+
messages.success(t('cli:commands.run.agentCompleted', { name: agentName }));
|
|
90
93
|
messages.newline();
|
|
91
|
-
console.log(fmt.heading('
|
|
94
|
+
console.log(fmt.heading(t('cli:commands.run.resultHeading')));
|
|
92
95
|
messages.newline();
|
|
93
96
|
console.log(event.content);
|
|
94
97
|
}
|
|
@@ -98,12 +101,13 @@ async function runStreaming(useCase, agentName, prompt, repoPath) {
|
|
|
98
101
|
}
|
|
99
102
|
}
|
|
100
103
|
if (!hasResult) {
|
|
101
|
-
messages.success(
|
|
104
|
+
messages.success(t('cli:commands.run.agentCompleted', { name: agentName }));
|
|
102
105
|
}
|
|
103
106
|
}
|
|
104
107
|
/** Run agent with spinner (blocking mode). */
|
|
105
108
|
async function runBlocking(useCase, agentName, prompt, repoPath) {
|
|
106
|
-
const
|
|
109
|
+
const t = getCliI18n().t;
|
|
110
|
+
const spinner = createSpinner(t('cli:commands.run.agentWorking', { name: agentName }));
|
|
107
111
|
spinner.start();
|
|
108
112
|
let run;
|
|
109
113
|
try {
|
|
@@ -117,14 +121,14 @@ async function runBlocking(useCase, agentName, prompt, repoPath) {
|
|
|
117
121
|
spinner.stop();
|
|
118
122
|
}
|
|
119
123
|
if (run.status === 'completed') {
|
|
120
|
-
messages.success(
|
|
124
|
+
messages.success(t('cli:commands.run.agentCompleted', { name: agentName }));
|
|
121
125
|
messages.newline();
|
|
122
|
-
console.log(fmt.heading('
|
|
126
|
+
console.log(fmt.heading(t('cli:commands.run.resultHeading')));
|
|
123
127
|
messages.newline();
|
|
124
|
-
console.log(run.result ?? '
|
|
128
|
+
console.log(run.result ?? t('cli:commands.run.noOutput'));
|
|
125
129
|
}
|
|
126
130
|
else if (run.status === 'failed') {
|
|
127
|
-
messages.error('
|
|
131
|
+
messages.error(t('cli:commands.run.agentFailed'), new Error(run.error ?? 'Unknown error'));
|
|
128
132
|
process.exitCode = 1;
|
|
129
133
|
}
|
|
130
134
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/session/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/session/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAM9C"}
|
|
@@ -14,12 +14,14 @@
|
|
|
14
14
|
import { Command } from 'commander';
|
|
15
15
|
import { createLsCommand } from './ls.command.js';
|
|
16
16
|
import { createShowCommand } from './show.command.js';
|
|
17
|
+
import { getCliI18n } from '../../i18n.js';
|
|
17
18
|
/**
|
|
18
19
|
* Create the session command with ls and show subcommands
|
|
19
20
|
*/
|
|
20
21
|
export function createSessionCommand() {
|
|
22
|
+
const t = getCliI18n().t;
|
|
21
23
|
return new Command('session')
|
|
22
|
-
.description('
|
|
24
|
+
.description(t('cli:commands.session.description'))
|
|
23
25
|
.addCommand(createLsCommand())
|
|
24
26
|
.addCommand(createShowCommand());
|
|
25
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ls.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/session/ls.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"ls.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/session/ls.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAIjE,wBAAgB,eAAe,IAAI,OAAO,CA6CzC;AA0HD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAgB1E;AAOD,YAAY,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -18,20 +18,22 @@ import { ListAgentSessionsUseCase } from '../../../../../packages/core/src/appli
|
|
|
18
18
|
import { colors, messages } from '../../ui/index.js';
|
|
19
19
|
import { fmt } from '../../ui/formatters.js';
|
|
20
20
|
import { AgentType } from '../../../../../packages/core/src/domain/generated/output.js';
|
|
21
|
+
import { getCliI18n } from '../../i18n.js';
|
|
21
22
|
export function createLsCommand() {
|
|
23
|
+
const t = getCliI18n().t;
|
|
22
24
|
return new Command('ls')
|
|
23
|
-
.description('
|
|
24
|
-
.option('--claude-code', '
|
|
25
|
-
.option('--cursor-cli', '
|
|
26
|
-
.option('--gemini-cli', '
|
|
27
|
-
.option('-n, --limit <n>', '
|
|
28
|
-
.option('--flat', '
|
|
25
|
+
.description(t('cli:commands.session.ls.description'))
|
|
26
|
+
.option('--claude-code', t('cli:commands.session.ls.claudeCodeOption'))
|
|
27
|
+
.option('--cursor-cli', t('cli:commands.session.ls.cursorCliOption'))
|
|
28
|
+
.option('--gemini-cli', t('cli:commands.session.ls.geminiCliOption'))
|
|
29
|
+
.option('-n, --limit <n>', t('cli:commands.session.ls.limitOption'), '20')
|
|
30
|
+
.option('--flat', t('cli:commands.session.ls.flatOption'))
|
|
29
31
|
.action(async (opts) => {
|
|
30
32
|
try {
|
|
31
33
|
// Validate mutual exclusivity of provider flags
|
|
32
34
|
const providerFlags = [opts.claudeCode, opts.cursorCli, opts.geminiCli].filter(Boolean);
|
|
33
35
|
if (providerFlags.length > 1) {
|
|
34
|
-
messages.error('
|
|
36
|
+
messages.error(t('cli:commands.session.ls.oneProviderOnly'));
|
|
35
37
|
process.exitCode = 1;
|
|
36
38
|
return;
|
|
37
39
|
}
|
|
@@ -41,7 +43,7 @@ export function createLsCommand() {
|
|
|
41
43
|
const sessions = await useCase.execute({ agentType, limit });
|
|
42
44
|
if (sessions.length === 0) {
|
|
43
45
|
messages.newline();
|
|
44
|
-
messages.info('
|
|
46
|
+
messages.info(t('cli:commands.session.ls.noSessions'));
|
|
45
47
|
messages.newline();
|
|
46
48
|
return;
|
|
47
49
|
}
|
|
@@ -55,7 +57,7 @@ export function createLsCommand() {
|
|
|
55
57
|
}
|
|
56
58
|
catch (error) {
|
|
57
59
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
58
|
-
messages.error('
|
|
60
|
+
messages.error(t('cli:commands.session.ls.failedToList'), err);
|
|
59
61
|
process.exitCode = 1;
|
|
60
62
|
}
|
|
61
63
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"show.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/session/show.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"show.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/session/show.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,wBAAgB,iBAAiB,IAAI,OAAO,CAsC3C"}
|
|
@@ -17,20 +17,22 @@ import { colors, messages } from '../../ui/index.js';
|
|
|
17
17
|
import { fmt } from '../../ui/formatters.js';
|
|
18
18
|
import { AgentType } from '../../../../../packages/core/src/domain/generated/output.js';
|
|
19
19
|
import { formatRelativeTime } from './ls.command.js';
|
|
20
|
+
import { getCliI18n } from '../../i18n.js';
|
|
20
21
|
export function createShowCommand() {
|
|
22
|
+
const t = getCliI18n().t;
|
|
21
23
|
return new Command('show')
|
|
22
|
-
.description('
|
|
23
|
-
.argument('<id>', '
|
|
24
|
-
.option('--claude-code', '
|
|
25
|
-
.option('--cursor-cli', '
|
|
26
|
-
.option('--gemini-cli', '
|
|
27
|
-
.option('-m, --messages <n>', '
|
|
24
|
+
.description(t('cli:commands.session.show.description'))
|
|
25
|
+
.argument('<id>', t('cli:commands.session.show.idArgument'))
|
|
26
|
+
.option('--claude-code', t('cli:commands.session.show.claudeCodeOption'))
|
|
27
|
+
.option('--cursor-cli', t('cli:commands.session.show.cursorCliOption'))
|
|
28
|
+
.option('--gemini-cli', t('cli:commands.session.show.geminiCliOption'))
|
|
29
|
+
.option('-m, --messages <n>', t('cli:commands.session.show.messagesOption'), '20')
|
|
28
30
|
.action(async (id, opts) => {
|
|
29
31
|
try {
|
|
30
32
|
// Validate mutual exclusivity of provider flags
|
|
31
33
|
const providerFlags = [opts.claudeCode, opts.cursorCli, opts.geminiCli].filter(Boolean);
|
|
32
34
|
if (providerFlags.length > 1) {
|
|
33
|
-
messages.error('
|
|
35
|
+
messages.error(t('cli:commands.session.show.oneProviderOnly'));
|
|
34
36
|
process.exitCode = 1;
|
|
35
37
|
return;
|
|
36
38
|
}
|
|
@@ -43,12 +45,12 @@ export function createShowCommand() {
|
|
|
43
45
|
}
|
|
44
46
|
catch (error) {
|
|
45
47
|
if (error instanceof SessionNotFoundError) {
|
|
46
|
-
messages.error(
|
|
48
|
+
messages.error(t('cli:commands.session.show.sessionNotFound', { error: error.message }));
|
|
47
49
|
process.exitCode = 1;
|
|
48
50
|
return;
|
|
49
51
|
}
|
|
50
52
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
51
|
-
messages.error('
|
|
53
|
+
messages.error(t('cli:commands.session.show.failedToShow'), err);
|
|
52
54
|
process.exitCode = 1;
|
|
53
55
|
}
|
|
54
56
|
});
|
|
@@ -63,12 +65,13 @@ function resolveAgentType(opts) {
|
|
|
63
65
|
return undefined;
|
|
64
66
|
}
|
|
65
67
|
function renderSessionDetail(session, _messageLimit) {
|
|
68
|
+
const t = getCliI18n().t;
|
|
66
69
|
const sessionMessages = session.messages ?? [];
|
|
67
70
|
const totalCount = session.messageCount;
|
|
68
71
|
const meta = session.metadata;
|
|
69
72
|
const lines = [];
|
|
70
73
|
lines.push('');
|
|
71
|
-
lines.push(` ${fmt.heading('
|
|
74
|
+
lines.push(` ${fmt.heading(t('cli:commands.session.show.title'))}`);
|
|
72
75
|
lines.push('');
|
|
73
76
|
// Row 1: ID + Provider
|
|
74
77
|
lines.push(` ${field('ID', session.id)} ${field('Provider', session.agentType)}`);
|
|
@@ -111,7 +114,7 @@ function renderSessionDetail(session, _messageLimit) {
|
|
|
111
114
|
// Tool usage section
|
|
112
115
|
if (meta && Object.keys(meta.toolUsage).length > 0) {
|
|
113
116
|
lines.push('');
|
|
114
|
-
lines.push(` ${colors.muted('
|
|
117
|
+
lines.push(` ${colors.muted(t('cli:commands.session.show.toolUsage'))}`);
|
|
115
118
|
const sorted = Object.entries(meta.toolUsage).sort((a, b) => b[1] - a[1]);
|
|
116
119
|
const totalTools = sorted.reduce((sum, [, count]) => sum + count, 0);
|
|
117
120
|
// Render tools in 3-column rows
|
|
@@ -128,19 +131,19 @@ function renderSessionDetail(session, _messageLimit) {
|
|
|
128
131
|
console.log(lines.join('\n'));
|
|
129
132
|
// Messages
|
|
130
133
|
if (sessionMessages.length === 0) {
|
|
131
|
-
messages.info('
|
|
134
|
+
messages.info(t('cli:commands.session.show.noMessages'));
|
|
132
135
|
return;
|
|
133
136
|
}
|
|
134
137
|
// Filter out empty messages for display
|
|
135
138
|
const meaningful = sessionMessages.filter((m) => m.content.trim().length > 0);
|
|
136
139
|
if (meaningful.length === 0) {
|
|
137
|
-
messages.info('
|
|
140
|
+
messages.info(t('cli:commands.session.show.noDisplayableMessages'));
|
|
138
141
|
return;
|
|
139
142
|
}
|
|
140
143
|
const half = Math.max(1, Math.floor(_messageLimit / 2));
|
|
141
144
|
if (meaningful.length <= _messageLimit || _messageLimit === 0) {
|
|
142
145
|
// Show all
|
|
143
|
-
messages.info(
|
|
146
|
+
messages.info(t('cli:commands.session.show.messageCount', { count: meaningful.length }));
|
|
144
147
|
renderMessages(meaningful);
|
|
145
148
|
}
|
|
146
149
|
else {
|
|
@@ -148,9 +151,13 @@ function renderSessionDetail(session, _messageLimit) {
|
|
|
148
151
|
const first = meaningful.slice(0, half);
|
|
149
152
|
const last = meaningful.slice(-half);
|
|
150
153
|
const skipped = meaningful.length - first.length - last.length;
|
|
151
|
-
messages.info(
|
|
154
|
+
messages.info(t('cli:commands.session.show.showingMessages', {
|
|
155
|
+
first: first.length,
|
|
156
|
+
last: last.length,
|
|
157
|
+
total: meaningful.length,
|
|
158
|
+
}));
|
|
152
159
|
renderMessages(first);
|
|
153
|
-
console.log(` ${colors.muted(`
|
|
160
|
+
console.log(` ${colors.muted(` ${t('cli:commands.session.show.messagesSkipped', { count: skipped })}`)}\n`);
|
|
154
161
|
renderMessages(last);
|
|
155
162
|
}
|
|
156
163
|
}
|
|
@@ -182,16 +189,17 @@ function computeDuration(start, end) {
|
|
|
182
189
|
return '<1m';
|
|
183
190
|
}
|
|
184
191
|
function renderMessages(msgs) {
|
|
192
|
+
const t = getCliI18n().t;
|
|
185
193
|
const lines = [''];
|
|
186
194
|
for (const msg of msgs) {
|
|
187
195
|
const content = msg.content.trim();
|
|
188
196
|
const timestamp = formatDate(msg.timestamp);
|
|
189
197
|
const timeStr = timestamp ? colors.muted(` (${timestamp})`) : '';
|
|
190
198
|
if (msg.role === 'user') {
|
|
191
|
-
lines.push(` ${colors.info('
|
|
199
|
+
lines.push(` ${colors.info(t('cli:commands.session.show.userLabel'))}${timeStr}`);
|
|
192
200
|
}
|
|
193
201
|
else {
|
|
194
|
-
lines.push(` ${colors.success('
|
|
202
|
+
lines.push(` ${colors.success(t('cli:commands.session.show.assistantLabel'))}${timeStr}`);
|
|
195
203
|
}
|
|
196
204
|
for (const line of content.split('\n')) {
|
|
197
205
|
lines.push(` ${line}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/settings/agent.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/settings/agent.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAqE5C"}
|
|
@@ -14,15 +14,16 @@ import { ConfigureAgentUseCase, } from '../../../../../packages/core/src/applica
|
|
|
14
14
|
import { agentConfigWizard } from '../../../tui/wizards/agent-config.wizard.js';
|
|
15
15
|
import { resetSettings, initializeSettings } from '../../../../../packages/core/src/infrastructure/services/settings.service.js';
|
|
16
16
|
import { messages } from '../../ui/index.js';
|
|
17
|
+
import { getCliI18n } from '../../i18n.js';
|
|
17
18
|
/**
|
|
18
19
|
* Create the agent configuration command
|
|
19
20
|
*/
|
|
20
21
|
export function createAgentCommand() {
|
|
21
22
|
return new Command('agent')
|
|
22
|
-
.description('
|
|
23
|
-
.option('--agent <type>',
|
|
24
|
-
.option('--auth <method>',
|
|
25
|
-
.option('--token <key>', '
|
|
23
|
+
.description(getCliI18n().t('cli:commands.settings.agent.description'))
|
|
24
|
+
.option('--agent <type>', getCliI18n().t('cli:commands.settings.agent.agentOption'))
|
|
25
|
+
.option('--auth <method>', getCliI18n().t('cli:commands.settings.agent.authOption'))
|
|
26
|
+
.option('--token <key>', getCliI18n().t('cli:commands.settings.agent.tokenOption'))
|
|
26
27
|
.addHelpText('after', `
|
|
27
28
|
Examples:
|
|
28
29
|
$ shep settings agent Interactive wizard
|
|
@@ -35,7 +36,7 @@ Examples:
|
|
|
35
36
|
if (isNonInteractive) {
|
|
36
37
|
// Non-interactive: require --auth when --agent is provided (dev type defaults to session)
|
|
37
38
|
if (!options.auth && options.agent !== 'dev') {
|
|
38
|
-
messages.error('
|
|
39
|
+
messages.error(getCliI18n().t('cli:commands.settings.agent.authRequired'));
|
|
39
40
|
process.exitCode = 1;
|
|
40
41
|
return;
|
|
41
42
|
}
|
|
@@ -59,16 +60,19 @@ Examples:
|
|
|
59
60
|
// Update the in-memory settings singleton
|
|
60
61
|
resetSettings();
|
|
61
62
|
initializeSettings(updatedSettings);
|
|
62
|
-
messages.success(
|
|
63
|
+
messages.success(getCliI18n().t('cli:commands.settings.agent.success', {
|
|
64
|
+
type: input.type,
|
|
65
|
+
authMethod: input.authMethod,
|
|
66
|
+
}));
|
|
63
67
|
}
|
|
64
68
|
catch (error) {
|
|
65
69
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
66
70
|
// Handle user cancellation (Ctrl+C) gracefully
|
|
67
71
|
if (err.message.includes('force closed') || err.message.includes('User force closed')) {
|
|
68
|
-
messages.info('
|
|
72
|
+
messages.info(getCliI18n().t('cli:commands.settings.agent.cancelled'));
|
|
69
73
|
return;
|
|
70
74
|
}
|
|
71
|
-
messages.error('
|
|
75
|
+
messages.error(getCliI18n().t('cli:commands.settings.agent.failed'), err);
|
|
72
76
|
process.exitCode = 1;
|
|
73
77
|
}
|
|
74
78
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ide.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/settings/ide.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ide.command.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/cli/commands/settings/ide.command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBpC;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAyE1C"}
|