@shepai/cli 1.156.0 → 1.157.0-pr498.211219f
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/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/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/generated/output.d.ts +14 -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 +1 -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 +4 -2
- 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 +3 -2
- 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 +5 -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 +12 -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/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/_56b9d60f._.js +1 -1
- package/web/.next/server/chunks/ssr/_56b9d60f._.js.map +1 -1
- 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/_64e999ac._.js +4 -0
- package/web/.next/server/chunks/ssr/_64e999ac._.js.map +1 -0
- 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/_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/{_b354e40a._.js → _b538ed78._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_b354e40a._.js.map → _b538ed78._.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/{_08dc06df._.js → _c65661cd._.js} +2 -2
- package/web/.next/server/chunks/ssr/{_08dc06df._.js.map → _c65661cd._.js.map} +1 -1
- 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/00cd442b9cf84237.js +1 -0
- 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/2273b81cd7c7d2af.css +1 -0
- package/web/.next/static/chunks/{5064470ab185e453.js → 3da5803ca73cd477.js} +2 -2
- 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/57bab9d5f3035682.js +5 -0
- package/web/.next/static/chunks/58e2cd66ee64605d.js +1 -0
- package/web/.next/static/chunks/{f98f811478ff3d9e.js → 5d32d2cfb6e43002.js} +1 -1
- package/web/.next/static/chunks/{22c459f1877b1e4f.js → 74db65fa7bfb80bd.js} +1 -1
- package/web/.next/static/chunks/75979deb4bc83de7.js +1 -0
- package/web/.next/static/chunks/7802c90b7b6d11b4.js +1 -0
- package/web/.next/static/chunks/{37156b1c0646309f.js → 8f506ab1784f98d1.js} +1 -1
- package/web/.next/static/chunks/9061f08ab7e537a8.js +1 -0
- package/web/.next/static/chunks/9ebe553c36e2fabe.js +7 -0
- package/web/.next/static/chunks/a10261d9b21363a4.js +1 -0
- package/web/.next/static/chunks/{baa593a4681fc66e.js → b6fd39a4011ad91c.js} +1 -1
- package/web/.next/static/chunks/c9d11e9cabf19e76.js +2 -0
- 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/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/_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 → TZZSVWjYVCLsmKMD3xKZi}/_buildManifest.js +0 -0
- /package/web/.next/static/{N3SkMLMrYUFai4W2zwMGS → TZZSVWjYVCLsmKMD3xKZi}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{N3SkMLMrYUFai4W2zwMGS → TZZSVWjYVCLsmKMD3xKZi}/_ssgManifest.js +0 -0
package/README.md
CHANGED
|
@@ -1,66 +1,62 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<h1>
|
|
4
|
+
<picture>
|
|
5
|
+
<source media="(prefers-color-scheme: dark)" srcset="src/presentation/web/public/favicon-light.svg">
|
|
6
|
+
<source media="(prefers-color-scheme: light)" srcset="src/presentation/web/public/favicon-dark.svg">
|
|
7
|
+
<img src="src/presentation/web/public/favicon-light.svg" alt="Shep logo" width="28" valign="middle" />
|
|
8
|
+
</picture>
|
|
9
|
+
Shep
|
|
10
|
+
</h1>
|
|
4
11
|
|
|
5
|
-
### AI
|
|
12
|
+
### Run multiple AI agents in parallel. Each in its own worktree.
|
|
6
13
|
|
|
7
|
-
|
|
14
|
+
_Manage 10 features at once — isolated branches, automatic commits, CI watching, and PRs — from a dashboard or the terminal._
|
|
8
15
|
|
|
9
|
-
[](https://github.com/shep-ai/shep/actions/workflows/ci.yml)
|
|
10
17
|
[](https://www.npmjs.com/package/@shepai/cli)
|
|
11
18
|
[](https://opensource.org/licenses/MIT)
|
|
12
19
|
|
|
13
|
-
[How It Works](#how-it-works) · [
|
|
20
|
+
[Quick Start](#quick-start) · [How It Works](#how-it-works) · [Features](#features) · [Trust & Safety](#trust--safety) · [FAQ](#faq)
|
|
14
21
|
|
|
15
22
|
<br />
|
|
16
23
|
|
|
17
|
-
<img src="docs/screenshots/cover.png" alt="Shep AI" width="900" />
|
|
24
|
+
<img src="docs/screenshots/cover.png" alt="Shep — Parallel AI Agent Sessions" width="900" />
|
|
18
25
|
|
|
19
26
|
</div>
|
|
20
27
|
|
|
21
28
|
---
|
|
22
29
|
|
|
23
|
-
##
|
|
30
|
+
## Why Shep?
|
|
24
31
|
|
|
25
|
-
|
|
32
|
+
You're already using AI coding agents. The problem isn't the coding — it's everything around it.
|
|
26
33
|
|
|
27
|
-
|
|
34
|
+
Switching branches. Stashing changes. Watching CI. Assembling PRs. Losing context when you juggle three things at once. One agent session is fine. Five is chaos.
|
|
28
35
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
## How It Works
|
|
32
|
-
|
|
33
|
-
Every feature moves through a structured pipeline. You control how much autonomy the agent gets.
|
|
36
|
+
**Shep gives each feature its own isolated world** — a git worktree, a branch, an agent session — and handles the boring parts: committing, pushing, opening PRs, watching CI, and fixing failures. You manage it all from one dashboard or the CLI.
|
|
34
37
|
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
(approve/edit) (approve/edit) (approve/reject)
|
|
38
|
+
```bash
|
|
39
|
+
shep feat new "add stripe payments" --push --pr
|
|
40
|
+
shep feat new "add dark mode toggle" --push --pr
|
|
41
|
+
shep feat new "fix login redirect bug" --push --pr
|
|
42
|
+
# Three agents running in parallel. Zero branch conflicts. You monitor from one place.
|
|
41
43
|
```
|
|
42
44
|
|
|
43
|
-
|
|
45
|
+
---
|
|
44
46
|
|
|
45
|
-
|
|
46
|
-
|------|------|-----------------------|
|
|
47
|
-
| `--allow-prd` | Requirements | Auto-approve the generated PRD |
|
|
48
|
-
| `--allow-plan` | Plan | Auto-approve the implementation plan |
|
|
49
|
-
| `--allow-merge` | Merge | Auto-approve the final PR |
|
|
50
|
-
| `--allow-all` | All three | Fully autonomous — agent handles everything |
|
|
47
|
+
## Quick Start
|
|
51
48
|
|
|
52
|
-
|
|
49
|
+
### Prerequisites
|
|
53
50
|
|
|
54
|
-
|
|
51
|
+
- **Node.js 22+** and **npm** (or install via `nvm`)
|
|
52
|
+
- **Git** and **GitHub CLI** (`gh`) — [install guide](https://cli.github.com/)
|
|
53
|
+
- **An AI coding agent**, authenticated and ready:
|
|
54
|
+
- **Claude Code**: `claude` · **Cursor CLI**: `cursor` · **Gemini CLI**: `gemini`
|
|
55
|
+
- If prompted to log in, complete auth first — Shep can't authenticate on your behalf.
|
|
55
56
|
|
|
56
|
-
|
|
57
|
-
- **Agent gets stuck or produces bad output.** The feature enters a `Blocked` state. You get notified and can provide feedback, reject the current phase, or restart from a checkpoint.
|
|
58
|
-
- **You don't like the plan.** Reject it with comments. Shep regenerates the plan incorporating your feedback.
|
|
59
|
-
- **You want to take over mid-feature.** The code lives in a standard git worktree on a named branch. You can open it in your IDE and work on it directly at any point.
|
|
57
|
+
> **Sandbox mode note:** Some agents restrict network access by default. If operations like `npm install` fail, configure allowed hosts in your agent's settings or disable sandbox for Shep features. See [Agent Permissions](#agent-permissions).
|
|
60
58
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
## Quick Start
|
|
59
|
+
### Install and run
|
|
64
60
|
|
|
65
61
|
```bash
|
|
66
62
|
# Try it instantly — no install needed
|
|
@@ -69,195 +65,310 @@ npx @shepai/cli
|
|
|
69
65
|
# Or install globally
|
|
70
66
|
npm i -g @shepai/cli
|
|
71
67
|
|
|
72
|
-
# Start Shep — opens the web dashboard at
|
|
68
|
+
# Start Shep — opens the web dashboard at localhost:4050
|
|
73
69
|
shep
|
|
74
70
|
```
|
|
75
71
|
|
|
76
72
|
### Your first feature
|
|
77
73
|
|
|
78
74
|
```bash
|
|
79
|
-
#
|
|
80
|
-
shep feat new "add a /health endpoint that returns uptime and version"
|
|
75
|
+
cd ~/projects/my-app # Any git repo. Shep uses the repo you're in.
|
|
76
|
+
shep feat new "add a /health endpoint that returns uptime and version" --push --pr
|
|
81
77
|
|
|
82
|
-
# Shep
|
|
83
|
-
# Once you're comfortable, try autonomous mode:
|
|
84
|
-
shep feat new "add rate limiting to the API" --allow-all --push --pr
|
|
78
|
+
# Shep creates a worktree, runs your agent, commits, pushes, and opens a PR.
|
|
85
79
|
```
|
|
86
80
|
|
|
87
|
-
|
|
81
|
+
Not in a git repo? Shep initializes one for you — `git init`, creates a branch, and starts working.
|
|
82
|
+
|
|
83
|
+
Or use the dashboard — describe what you need, configure automation, and hit create:
|
|
88
84
|
|
|
89
|
-
|
|
85
|
+
<div align="center">
|
|
86
|
+
<img src="docs/screenshots/create-feature.png" alt="Shep — Create Feature with configurable automation" width="900" />
|
|
87
|
+
</div>
|
|
88
|
+
|
|
89
|
+
### Go parallel
|
|
90
90
|
|
|
91
91
|
```bash
|
|
92
92
|
shep feat new "add stripe payments" --push --pr
|
|
93
93
|
shep feat new "add dark mode toggle" --push --pr
|
|
94
|
-
|
|
94
|
+
shep feat new "refactor auth middleware" --push --pr
|
|
95
|
+
# All three run simultaneously in the same repo. Each in its own worktree.
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Launch from CLI or dashboard — monitor everything in one place. Open any feature in your IDE, terminal, or file manager with one click:
|
|
99
|
+
|
|
100
|
+
<div align="center">
|
|
101
|
+
<img src="docs/screenshots/parallel-features.png" alt="Shep — Three features running in parallel" width="900" />
|
|
102
|
+
</div>
|
|
103
|
+
|
|
104
|
+
Or work across multiple repos:
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
shep feat new "add payments" --repo ~/projects/backend --push --pr
|
|
108
|
+
shep feat new "add checkout UI" --repo ~/projects/frontend --push --pr
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Manage multiple repos from one dashboard. Start a local dev server per feature, chat with Shep for questions or HTML previews — all without leaving the UI:
|
|
112
|
+
|
|
113
|
+
<div align="center">
|
|
114
|
+
<img src="docs/screenshots/multi-repo.png" alt="Shep — Multiple repos with global chat and HTML preview" width="900" />
|
|
115
|
+
</div>
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## How It Works
|
|
120
|
+
|
|
121
|
+
The default flow is simple: **prompt → implement → commit → push → PR**.
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
You describe Agent codes Shep commits Shep pushes Shep opens
|
|
125
|
+
a feature → in a worktree → the changes → to remote → a PR
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
Shep creates an isolated git worktree, hands your prompt to the agent, and handles everything after: committing, pushing, and opening a PR. If CI fails, Shep reads the logs, fixes the issue, and retries (configurable).
|
|
129
|
+
|
|
130
|
+
### Configure everything
|
|
131
|
+
|
|
132
|
+
Every step of the pipeline is configurable. Turn things on or off per feature or set defaults:
|
|
133
|
+
|
|
134
|
+
| Flag | What it does | Default |
|
|
135
|
+
|------|-------------|---------|
|
|
136
|
+
| `--push` | Auto-push after implementation | off |
|
|
137
|
+
| `--pr` | Auto-create PR after push | off |
|
|
138
|
+
| `--fast` | Skip spec-driven phases, go straight to coding | on |
|
|
139
|
+
| `--allow-merge` | Auto-merge the PR after CI passes | off |
|
|
140
|
+
| `--allow-all` | Enable all automations | off |
|
|
141
|
+
| `--model` | Choose which AI model to use | agent default |
|
|
142
|
+
| `--attach` | Attach reference files for context | — |
|
|
143
|
+
|
|
144
|
+
Use `shep settings workflow` to set your defaults so you don't repeat flags.
|
|
145
|
+
|
|
146
|
+
### Optional: Spec-Driven Development
|
|
147
|
+
|
|
148
|
+
For complex features, enable the full structured pipeline with requirements, research, and planning phases:
|
|
149
|
+
|
|
150
|
+
```bash
|
|
151
|
+
# Disable --fast to get the full pipeline
|
|
152
|
+
shep feat new "redesign the payment system" --no-fast --push --pr
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
This adds **approval gates** where Shep pauses for your review:
|
|
156
|
+
|
|
157
|
+
```
|
|
158
|
+
Prompt → Requirements → Research → Plan → Implement → Commit → PR
|
|
159
|
+
▲ ▲ ▲
|
|
160
|
+
Gate 1: PRD Gate 2: Plan Gate 3: Merge
|
|
95
161
|
```
|
|
96
162
|
|
|
163
|
+
Each gate produces a YAML artifact you can read, edit, and approve before the agent continues. Use `--allow-prd` and `--allow-plan` to auto-approve individual gates, or keep them manual for full control.
|
|
164
|
+
|
|
165
|
+
> **[Spec-Driven Development guide →](./docs/development/spec-driven-workflow.md)**
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## Features
|
|
170
|
+
|
|
171
|
+
### Parallel Sessions
|
|
172
|
+
|
|
173
|
+
Run multiple features at once. Each gets its own git worktree — isolated branch, isolated files, zero conflicts. Monitor all of them from one dashboard.
|
|
174
|
+
|
|
175
|
+
### Prompt to PR
|
|
176
|
+
|
|
177
|
+
One command: `shep feat new "do X" --push --pr`. Agent implements, Shep commits, pushes, opens a PR. Done.
|
|
178
|
+
|
|
179
|
+
### Agent-Agnostic
|
|
180
|
+
|
|
181
|
+
Use Claude Code, Cursor CLI, or Gemini CLI. Swap per feature, per repo, anytime. If it runs in a terminal, Shep can orchestrate it.
|
|
182
|
+
|
|
183
|
+
### Web Dashboard + CLI
|
|
184
|
+
|
|
185
|
+
Two ways to manage everything. The dashboard at `localhost:4050` shows a visual graph of all repos and features with real-time status, diff review, and interactive chat. The CLI gives you the same control from the terminal.
|
|
186
|
+
|
|
187
|
+
### CI Watch & Auto-Fix
|
|
188
|
+
|
|
189
|
+
Shep watches your CI pipeline after push. If it fails, the agent reads the logs, diagnoses the problem, and pushes a fix. Retries are configurable (default: 3). Works best when CI produces clear error messages.
|
|
190
|
+
|
|
191
|
+
### Everything Configurable
|
|
192
|
+
|
|
193
|
+
Push, PR, merge, CI watch, CI fix retries, timeouts, model selection, agent type — configure per feature with flags or set global defaults with `shep settings`. Nothing is hardcoded.
|
|
194
|
+
|
|
195
|
+
### 100% Local
|
|
196
|
+
|
|
197
|
+
All data lives in `~/.shep/` as SQLite. No cloud, no account, no tracking. Your code is only sent to whichever AI agent you configure, under that agent's own terms.
|
|
198
|
+
|
|
199
|
+
### Optional: Spec-Driven Development
|
|
200
|
+
|
|
201
|
+
When you need more structure — requirements, technical research, implementation plans with approval gates. Produces versioned YAML artifacts you review before any code is written. Enable per feature with `--no-fast`.
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
## What Happens When Things Go Wrong
|
|
206
|
+
|
|
207
|
+
- **CI fails.** Shep reads the logs, diagnoses the problem, and pushes a fix. Retries up to 3 times (configurable), then pauses and asks you.
|
|
208
|
+
- **Agent gets stuck.** The feature enters a `Blocked` state. You get notified and can provide feedback or restart from a checkpoint.
|
|
209
|
+
- **You need to stop immediately.** Run `shep agent stop <id>` or hit the stop button in the dashboard. The worktree is preserved — resume or take over manually.
|
|
210
|
+
- **You want to take over.** The code lives in a standard git worktree on a named branch. Open it in your IDE at any point.
|
|
211
|
+
- **Too many features in flight.** Each feature is independent. Stop, pause, or delete any of them without affecting the others.
|
|
212
|
+
|
|
97
213
|
---
|
|
98
214
|
|
|
99
215
|
## Trust & Safety
|
|
100
216
|
|
|
101
|
-
Shep runs entirely on your machine.
|
|
217
|
+
Shep runs entirely on your machine.
|
|
102
218
|
|
|
103
219
|
| Concern | How Shep handles it |
|
|
104
220
|
|---------|-------------------|
|
|
105
|
-
| **Data stays local** | All data
|
|
106
|
-
| **Agent
|
|
107
|
-
| **Git isolation** | Every feature runs in its own
|
|
108
|
-
| **No credential access** | Shep never reads, stores, or transmits your API keys.
|
|
109
|
-
| **
|
|
110
|
-
| **
|
|
221
|
+
| **Data stays local** | All data in `~/.shep/` as SQLite. Nothing sent to Shep servers — there are none. |
|
|
222
|
+
| **Agent permissions** | Shep runs your agent with permission-bypass flags to avoid blocking the automated pipeline. See [Agent Permissions](#agent-permissions) below. |
|
|
223
|
+
| **Git isolation** | Every feature runs in its own worktree branched from main. Your working directory is never modified. |
|
|
224
|
+
| **No credential access** | Shep never reads, stores, or transmits your API keys. |
|
|
225
|
+
| **Agent mistakes** | Shep creates a draft PR. Your CI, linters, and security scanners run before any merge. Shep does not merge code that fails CI. |
|
|
226
|
+
| **Review before merge** | Unless you pass `--allow-merge`, no code is merged without your approval. |
|
|
227
|
+
| **Full audit trail** | Every action and state transition is logged. View with `shep feat logs <id>`. |
|
|
111
228
|
|
|
112
|
-
|
|
229
|
+
### Agent Permissions
|
|
113
230
|
|
|
114
|
-
|
|
231
|
+
Shep runs your agent non-interactively — it can't pause for "allow this command?" prompts mid-pipeline. By default, it passes permission-bypass flags (e.g., `--dangerously-skip-permissions` for Claude Code — each agent has an equivalent).
|
|
115
232
|
|
|
116
|
-
|
|
233
|
+
**Your safety net is three layers deep:**
|
|
234
|
+
1. **Worktree isolation** — the agent works on a copy, not your checkout
|
|
235
|
+
2. **Draft PRs** — you review the diff before anything is merged
|
|
236
|
+
3. **CI pipeline** — your tests, linters, and security scanners run before merge
|
|
117
237
|
|
|
118
|
-
-
|
|
119
|
-
- **Three configurable approval gates** — Full control, full autonomy, or anything in between
|
|
120
|
-
- **Parallel features via worktrees** — Multiple features in flight at once with zero branch conflicts
|
|
121
|
-
- **Agent-agnostic** — Claude Code, Cursor CLI, or Gemini CLI — swap anytime per feature or per repo
|
|
122
|
-
- **Web dashboard** — Interactive graph of repos and features with real-time status, diff review, and approval actions at `localhost:4050`
|
|
123
|
-
- **CI fix loop** — When CI fails, the agent reads logs, diagnoses, and retries before asking for help
|
|
124
|
-
- **100% local** — SQLite storage, no cloud dependency, no account needed
|
|
238
|
+
The skip-permissions flag is a default, not a requirement. Configure your agent's permission model independently if you need tighter control.
|
|
125
239
|
|
|
126
|
-
|
|
240
|
+
**What Shep does NOT protect you from:** If your CI doesn't catch a vulnerability, Shep won't either. Shep is an orchestration layer, not a security scanner.
|
|
127
241
|
|
|
128
242
|
---
|
|
129
243
|
|
|
130
|
-
##
|
|
244
|
+
## Supported Agents & Tools
|
|
131
245
|
|
|
132
|
-
|
|
246
|
+
| Category | Supported |
|
|
247
|
+
|----------|-----------|
|
|
248
|
+
| **AI Agents** | Claude Code, Cursor CLI, Gemini CLI |
|
|
249
|
+
| **IDEs** | VS Code, Cursor, Zed, Windsurf, and more |
|
|
250
|
+
| **Required** | Git, GitHub CLI (`gh`) |
|
|
133
251
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
shep stop Stop the running daemon
|
|
138
|
-
shep restart Restart the daemon
|
|
139
|
-
shep status Show daemon status and live metrics
|
|
140
|
-
shep ui [--port] [--no-open] Start the web UI in the foreground
|
|
141
|
-
```
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## CLI Reference
|
|
142
255
|
|
|
143
|
-
###
|
|
256
|
+
### Core Commands
|
|
144
257
|
|
|
145
258
|
```
|
|
146
|
-
shep
|
|
147
|
-
|
|
259
|
+
shep Start daemon + onboarding (first run)
|
|
260
|
+
shep feat new <description> Create a new feature
|
|
261
|
+
[--push] [--pr] [--fast] [--model] [--attach]
|
|
148
262
|
[--allow-prd] [--allow-plan] [--allow-merge] [--allow-all]
|
|
149
|
-
|
|
150
|
-
shep feat
|
|
151
|
-
shep feat
|
|
152
|
-
shep feat
|
|
153
|
-
shep feat
|
|
154
|
-
shep feat
|
|
155
|
-
shep feat approve <id> [--comments] Approve a feature
|
|
156
|
-
shep feat reject <id> [--feedback] Reject a feature
|
|
157
|
-
shep feat logs <id> View feature logs
|
|
263
|
+
shep feat ls List features
|
|
264
|
+
shep feat show <id> Show feature details
|
|
265
|
+
shep feat resume <id> Resume a paused feature
|
|
266
|
+
shep feat approve <id> Approve current phase (spec-driven mode)
|
|
267
|
+
shep feat reject <id> --feedback Reject with feedback (spec-driven mode)
|
|
268
|
+
shep feat logs <id> View feature logs
|
|
158
269
|
```
|
|
159
270
|
|
|
160
|
-
###
|
|
271
|
+
### Stopping a Feature
|
|
161
272
|
|
|
162
273
|
```
|
|
163
|
-
shep agent
|
|
164
|
-
shep agent
|
|
165
|
-
shep agent stop <id> Stop a running agent
|
|
166
|
-
shep agent logs <id> View agent logs
|
|
167
|
-
shep agent delete <id> Delete an agent
|
|
168
|
-
shep agent approve <id> Approve an agent action
|
|
169
|
-
shep agent reject <id> Reject an agent action
|
|
274
|
+
shep agent stop <id> Stop a running agent immediately
|
|
275
|
+
shep agent ls Find the agent ID for a feature
|
|
170
276
|
```
|
|
171
277
|
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
```
|
|
175
|
-
shep repo ls List repositories
|
|
176
|
-
shep repo show <id> Show repository details
|
|
177
|
-
shep session ls List sessions
|
|
178
|
-
shep session show <id> Show session details
|
|
179
|
-
```
|
|
278
|
+
The web dashboard also has a stop button on every in-progress feature.
|
|
180
279
|
|
|
181
|
-
###
|
|
280
|
+
### Daemon & Dashboard
|
|
182
281
|
|
|
183
282
|
```
|
|
184
|
-
shep
|
|
185
|
-
shep
|
|
186
|
-
shep
|
|
187
|
-
shep
|
|
188
|
-
shep settings ide Configure IDE
|
|
189
|
-
shep settings workflow Configure workflow
|
|
190
|
-
shep settings model Configure model
|
|
283
|
+
shep start [--port] Start web daemon (default: 4050)
|
|
284
|
+
shep stop Stop the daemon
|
|
285
|
+
shep status Show daemon status and metrics
|
|
286
|
+
shep ui Start web UI in foreground
|
|
191
287
|
```
|
|
192
288
|
|
|
193
|
-
###
|
|
289
|
+
### Settings & Configuration
|
|
194
290
|
|
|
195
291
|
```
|
|
196
|
-
shep
|
|
197
|
-
shep
|
|
198
|
-
shep
|
|
292
|
+
shep settings Launch setup wizard
|
|
293
|
+
shep settings workflow Configure default flags (push, pr, ci watch, etc.)
|
|
294
|
+
shep settings agent Configure AI coding agent
|
|
295
|
+
shep settings ide Configure IDE
|
|
296
|
+
shep settings model Configure default model
|
|
199
297
|
```
|
|
200
298
|
|
|
201
|
-
###
|
|
299
|
+
### Agent & Repo Management
|
|
202
300
|
|
|
203
301
|
```
|
|
204
|
-
shep
|
|
205
|
-
shep
|
|
206
|
-
shep
|
|
302
|
+
shep agent ls List agent runs
|
|
303
|
+
shep agent stop <id> Stop a running agent
|
|
304
|
+
shep agent logs <id> View agent logs
|
|
305
|
+
shep repo ls List repositories
|
|
207
306
|
```
|
|
208
307
|
|
|
308
|
+
> **[Full CLI reference →](./docs/cli/architecture.md)**
|
|
309
|
+
|
|
209
310
|
---
|
|
210
311
|
|
|
211
312
|
## FAQ
|
|
212
313
|
|
|
213
|
-
**How is this different from just using
|
|
214
|
-
|
|
314
|
+
**How is this different from just using an AI coding agent directly?**
|
|
315
|
+
|
|
316
|
+
Your agent writes the code. Shep manages the session: creating the worktree, committing, pushing, opening PRs, watching CI, and retrying failures. The difference is most obvious when you're running 3-5 features in parallel — Shep keeps them organized and isolated while you focus on what matters.
|
|
317
|
+
|
|
318
|
+
**How is this different from Superset?**
|
|
319
|
+
|
|
320
|
+
Superset is a terminal multiplexer for agents — it runs them in parallel tabs. Shep manages the development lifecycle: worktrees, commits, pushes, PRs, CI. They're complementary. Use Superset for the execution environment, Shep for the workflow.
|
|
215
321
|
|
|
216
322
|
**What happens if the agent writes bad code?**
|
|
217
|
-
|
|
323
|
+
|
|
324
|
+
Shep creates a draft PR. Your CI runs. If tests fail, the agent reads the logs and attempts a fix (up to 3 retries, configurable). If that fails, the feature pauses and you're notified. The agent never merges code that fails CI.
|
|
325
|
+
|
|
326
|
+
**What about agent sandbox / permission modes?**
|
|
327
|
+
|
|
328
|
+
Shep runs the agent with permission-bypass flags by default so the pipeline isn't blocked by interactive prompts. Your protection is worktree isolation, draft PRs, and your CI pipeline. See [Agent Permissions](#agent-permissions).
|
|
218
329
|
|
|
219
330
|
**Does this work on large codebases?**
|
|
220
|
-
|
|
331
|
+
|
|
332
|
+
Yes. The practical limit is the underlying agent's context window, not Shep. If your agent handles your repo well directly, Shep will too. For monorepos, scope features to specific packages with `--repo`.
|
|
221
333
|
|
|
222
334
|
**Can I use this on a team?**
|
|
223
|
-
|
|
335
|
+
|
|
336
|
+
Shep runs locally on your git repo. Multiple team members can run Shep independently. Features are just branches and PRs — your existing review process applies.
|
|
224
337
|
|
|
225
338
|
**Is my code sent anywhere?**
|
|
226
|
-
Not by Shep. Your code is sent to whichever AI agent you configure (Claude, Cursor, Gemini) under that agent's own privacy terms. Shep itself stores everything in local SQLite and makes no network calls.
|
|
227
339
|
|
|
228
|
-
|
|
340
|
+
Not by Shep. Your code is sent to whichever AI agent you configure, under that agent's own privacy terms. Shep stores everything locally and makes no network calls.
|
|
229
341
|
|
|
230
|
-
|
|
342
|
+
**What's the spec-driven mode?**
|
|
231
343
|
|
|
232
|
-
|
|
344
|
+
An optional structured pipeline that adds requirements, research, and planning phases with approval gates before any code is written. Useful for complex features where you want to review the approach first. Enable with `--no-fast`. [Learn more →](./docs/development/spec-driven-workflow.md)
|
|
233
345
|
|
|
234
|
-
|
|
235
|
-
|-------|------|---------------|
|
|
236
|
-
| Domain | `packages/core/src/domain/` | Business logic, TypeSpec-generated types |
|
|
237
|
-
| Application | `packages/core/src/application/` | Use cases, port interfaces |
|
|
238
|
-
| Infrastructure | `packages/core/src/infrastructure/` | SQLite, LangGraph agents, DI |
|
|
239
|
-
| Presentation | `src/presentation/` | CLI, TUI, Web UI |
|
|
346
|
+
**How do I stop a feature that's running?**
|
|
240
347
|
|
|
241
|
-
|
|
348
|
+
CLI: `shep agent stop <id>`. Dashboard: click the stop button. The worktree is preserved — resume with `shep feat resume <id>` or work on it manually.
|
|
242
349
|
|
|
243
350
|
---
|
|
244
351
|
|
|
245
|
-
##
|
|
352
|
+
## Architecture
|
|
246
353
|
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
|
250
|
-
|
|
251
|
-
|
|
|
354
|
+
Shep follows Clean Architecture with four layers. For contributors and the curious:
|
|
355
|
+
|
|
356
|
+
| Layer | Responsibility |
|
|
357
|
+
|-------|---------------|
|
|
358
|
+
| **Domain** | Business logic, TypeSpec-generated types |
|
|
359
|
+
| **Application** | Use cases, port interfaces |
|
|
360
|
+
| **Infrastructure** | SQLite, LangGraph agents, DI |
|
|
361
|
+
| **Presentation** | CLI, Web UI |
|
|
362
|
+
|
|
363
|
+
> **[Full architecture docs →](./docs/architecture/overview.md)**
|
|
252
364
|
|
|
253
365
|
---
|
|
254
366
|
|
|
255
367
|
## Contributing
|
|
256
368
|
|
|
257
|
-
|
|
369
|
+
See [CONTRIBUTING.md](./CONTRIBUTING.md) for humans and [CONTRIBUTING-AGENTS.md](./CONTRIBUTING-AGENTS.md) for AI agents.
|
|
258
370
|
|
|
259
|
-
|
|
260
|
-
- **AI Agents**: See [CONTRIBUTING-AGENTS.md](./CONTRIBUTING-AGENTS.md)
|
|
371
|
+
---
|
|
261
372
|
|
|
262
373
|
## License
|
|
263
374
|
|
package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approve-agent-run.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/agents/approve-agent-run.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAE1G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAO9E,qBACa,sBAAsB;IAG/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBANrB,kBAAkB,EAAE,mBAAmB,EAEvC,cAAc,EAAE,2BAA2B,EAE3C,iBAAiB,EAAE,kBAAkB,EAErC,qBAAqB,EAAE,sBAAsB;IAG1D,OAAO,CACX,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"approve-agent-run.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/agents/approve-agent-run.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAE1G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAO9E,qBACa,sBAAsB;IAG/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBANrB,kBAAkB,EAAE,mBAAmB,EAEvC,cAAc,EAAE,2BAA2B,EAE3C,iBAAiB,EAAE,kBAAkB,EAErC,qBAAqB,EAAE,sBAAsB;IAG1D,OAAO,CACX,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CA0GlD"}
|
|
@@ -111,6 +111,11 @@ let ApproveAgentRunUseCase = class ApproveAgentRunUseCase {
|
|
|
111
111
|
resumeFromInterrupt: true,
|
|
112
112
|
push: feature?.push ?? false,
|
|
113
113
|
openPr: feature?.openPr ?? false,
|
|
114
|
+
forkAndPr: feature?.forkAndPr ?? false,
|
|
115
|
+
commitSpecs: feature?.commitSpecs ?? true,
|
|
116
|
+
ciWatchEnabled: feature?.ciWatchEnabled ?? true,
|
|
117
|
+
enableEvidence: feature?.enableEvidence ?? false,
|
|
118
|
+
commitEvidence: feature?.commitEvidence ?? false,
|
|
114
119
|
...(payload ? { resumePayload: JSON.stringify(payload) } : {}),
|
|
115
120
|
agentType: run.agentType,
|
|
116
121
|
...(run.modelId ? { model: run.modelId } : {}),
|
package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reject-agent-run.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/agents/reject-agent-run.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAa1G,qBACa,qBAAqB;IAG9B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBANrB,kBAAkB,EAAE,mBAAmB,EAEvC,cAAc,EAAE,2BAA2B,EAE3C,iBAAiB,EAAE,kBAAkB,EAErC,qBAAqB,EAAE,sBAAsB;IAG1D,OAAO,CACX,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC;QACT,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,CAAC;
|
|
1
|
+
{"version":3,"file":"reject-agent-run.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/agents/reject-agent-run.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAa1G,qBACa,qBAAqB;IAG9B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBANrB,kBAAkB,EAAE,mBAAmB,EAEvC,cAAc,EAAE,2BAA2B,EAE3C,iBAAiB,EAAE,kBAAkB,EAErC,qBAAqB,EAAE,sBAAsB;IAG1D,OAAO,CACX,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC;QACT,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,CAAC;CAkIH"}
|
|
@@ -127,7 +127,14 @@ let RejectAgentRunUseCase = class RejectAgentRunUseCase {
|
|
|
127
127
|
resumeFromInterrupt: true,
|
|
128
128
|
push: feature?.push ?? false,
|
|
129
129
|
openPr: feature?.openPr ?? false,
|
|
130
|
+
forkAndPr: feature?.forkAndPr ?? false,
|
|
131
|
+
commitSpecs: feature?.commitSpecs ?? true,
|
|
132
|
+
ciWatchEnabled: feature?.ciWatchEnabled ?? true,
|
|
133
|
+
enableEvidence: feature?.enableEvidence ?? false,
|
|
134
|
+
commitEvidence: feature?.commitEvidence ?? false,
|
|
130
135
|
resumePayload: JSON.stringify(rejectionPayload),
|
|
136
|
+
agentType: run.agentType,
|
|
137
|
+
...(run.modelId ? { model: run.modelId } : {}),
|
|
131
138
|
...(feature.fast ? { fast: true } : {}),
|
|
132
139
|
});
|
|
133
140
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-and-unblock-features.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/check-and-unblock-features.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAGhH,qBACa,8BAA8B;IAET,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE1D,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAFkB,WAAW,EAAE,kBAAkB,EAE7D,YAAY,EAAE,2BAA2B;IAG5D;;;;OAIG;IACG,OAAO,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"check-and-unblock-features.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/check-and-unblock-features.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAGhH,qBACa,8BAA8B;IAET,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE1D,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAFkB,WAAW,EAAE,kBAAkB,EAE7D,YAAY,EAAE,2BAA2B;IAG5D;;;;OAIG;IACG,OAAO,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA4CtD"}
|
package/dist/packages/core/src/application/use-cases/features/check-and-unblock-features.use-case.js
CHANGED
|
@@ -60,7 +60,17 @@ let CheckAndUnblockFeaturesUseCase = class CheckAndUnblockFeaturesUseCase {
|
|
|
60
60
|
await this.featureRepo.update(child);
|
|
61
61
|
// Spawn agent using fields set at feature creation time
|
|
62
62
|
if (child.agentRunId && child.specPath) {
|
|
63
|
-
this.agentProcess.spawn(child.id, child.agentRunId, child.repositoryPath, child.specPath, child.worktreePath
|
|
63
|
+
this.agentProcess.spawn(child.id, child.agentRunId, child.repositoryPath, child.specPath, child.worktreePath, {
|
|
64
|
+
approvalGates: child.approvalGates,
|
|
65
|
+
push: child.push,
|
|
66
|
+
openPr: child.openPr,
|
|
67
|
+
forkAndPr: child.forkAndPr,
|
|
68
|
+
commitSpecs: child.commitSpecs,
|
|
69
|
+
ciWatchEnabled: child.ciWatchEnabled,
|
|
70
|
+
enableEvidence: child.enableEvidence,
|
|
71
|
+
commitEvidence: child.commitEvidence,
|
|
72
|
+
...(child.fast ? { fast: true } : {}),
|
|
73
|
+
});
|
|
64
74
|
}
|
|
65
75
|
}
|
|
66
76
|
}
|
package/dist/packages/core/src/application/use-cases/features/resume-feature.use-case.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resume-feature.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/resume-feature.use-case.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAQlG,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,QAAQ,CAAC;CAClB;AAED,qBACa,oBAAoB;IAG7B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAExB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,WAAW,EAAE,kBAAkB,EAE/B,OAAO,EAAE,mBAAmB,EAE5B,cAAc,EAAE,2BAA2B,EAE3C,eAAe,EAAE,gBAAgB;IAG9C,OAAO,CACX,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAClC,OAAO,CAAC,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"resume-feature.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/features/resume-feature.use-case.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAC1G,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAQlG,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,QAAQ,CAAC;CAClB;AAED,qBACa,oBAAoB;IAG7B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAExB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,WAAW,EAAE,kBAAkB,EAE/B,OAAO,EAAE,mBAAmB,EAE5B,cAAc,EAAE,2BAA2B,EAE3C,eAAe,EAAE,gBAAgB;IAG9C,OAAO,CACX,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAClC,OAAO,CAAC,mBAAmB,CAAC;CA4GhC"}
|
|
@@ -111,6 +111,9 @@ let ResumeFeatureUseCase = class ResumeFeatureUseCase {
|
|
|
111
111
|
openPr: feature.openPr,
|
|
112
112
|
forkAndPr: feature.forkAndPr,
|
|
113
113
|
commitSpecs: feature.commitSpecs,
|
|
114
|
+
ciWatchEnabled: feature.ciWatchEnabled,
|
|
115
|
+
enableEvidence: feature.enableEvidence,
|
|
116
|
+
commitEvidence: feature.commitEvidence,
|
|
114
117
|
agentType: lastRun.agentType,
|
|
115
118
|
...(feature.fast ? { fast: true } : {}),
|
|
116
119
|
...(lastRun.modelId ? { model: lastRun.modelId } : {}),
|