crewly 1.14.1 → 1.16.0
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 +34 -4
- package/config/constants.ts +57 -0
- package/config/index.ts +6 -2
- package/config/roles/architect/soul.md +31 -0
- package/config/roles/auditor/soul.md +30 -0
- package/config/roles/backend-developer/soul.md +30 -0
- package/config/roles/content-strategist/soul.md +29 -0
- package/config/roles/designer/soul.md +30 -0
- package/config/roles/developer/prompt.md +1 -1
- package/config/roles/developer/soul.md +4 -1
- package/config/roles/frontend-developer/soul.md +28 -0
- package/config/roles/fullstack-dev/soul.md +28 -0
- package/config/roles/generalist/soul.md +28 -0
- package/config/roles/ops/soul.md +31 -0
- package/config/roles/orchestrator/fragments/lifecycle.md +2 -22
- package/config/roles/orchestrator/fragments/recovery.md +1 -1
- package/config/roles/orchestrator/prompt.md +18 -49
- package/config/roles/orchestrator/soul.md +2 -1
- package/config/roles/product-manager/prompt.md +1 -1
- package/config/roles/product-manager/soul.md +30 -0
- package/config/roles/qa/soul.md +31 -0
- package/config/roles/qa-engineer/soul.md +31 -0
- package/config/roles/researcher/soul.md +4 -1
- package/config/roles/sales/soul.md +30 -0
- package/config/roles/support/soul.md +30 -0
- package/config/roles/team-leader/prompt.md +1 -1
- package/config/roles/team-leader/soul.md +32 -0
- package/config/roles/tpm/soul.md +31 -0
- package/config/roles/ux-designer/soul.md +31 -0
- package/config/runtime_scripts/runtime-config.json +7 -0
- package/config/skills/_common/lib.sh +124 -2
- package/config/skills/_common/lib.test.sh +68 -1
- package/config/skills/agent/core/count-json/SKILL.md +61 -0
- package/config/skills/agent/core/count-json/execute.sh +52 -0
- package/config/skills/agent/core/count-json/execute.test.sh +35 -0
- package/config/skills/agent/core/record-prediction/SKILL.md +61 -0
- package/config/skills/agent/core/record-prediction/execute.sh +90 -0
- package/config/skills/agent/core/record-prediction/execute.test.sh +67 -0
- package/config/skills/agent/core/resolve-prediction/SKILL.md +61 -0
- package/config/skills/agent/core/resolve-prediction/execute.sh +87 -0
- package/config/skills/agent/core/resolve-prediction/execute.test.sh +74 -0
- package/config/skills/agent/core/set-focus/SKILL.md +64 -0
- package/config/skills/agent/core/set-focus/execute.sh +73 -0
- package/config/skills/agent/core/set-focus/execute.test.sh +67 -0
- package/config/skills/agent/core/suppress-noise/SKILL.md +59 -0
- package/config/skills/agent/core/suppress-noise/execute.sh +68 -0
- package/config/skills/agent/core/suppress-noise/execute.test.sh +58 -0
- package/config/skills/orchestrator/delegate-task/SKILL.md +17 -21
- package/config/skills/orchestrator/delegate-task/execute.sh +18 -9
- package/config/skills/orchestrator/delegate-task/execute.test.sh +1 -1
- package/config/skills/orchestrator/wiki-migrate/SKILL.md +33 -3
- package/config/skills/orchestrator/wiki-migrate/compact.jq +36 -0
- package/config/skills/orchestrator/wiki-migrate/execute.sh +35 -5
- package/config/skills/orchestrator/wiki-migrate/execute.test.sh +124 -0
- package/config/skills/team-leader/verify-output/execute.sh +14 -6
- package/config/skills/team-leader/verify-output/execute.test.sh +117 -0
- package/dist/backend/backend/src/constants.d.ts +161 -0
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +159 -1
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/agent-self-improvement/agent-self-improvement.controller.d.ts +76 -0
- package/dist/backend/backend/src/controllers/agent-self-improvement/agent-self-improvement.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/agent-self-improvement/agent-self-improvement.controller.js +262 -0
- package/dist/backend/backend/src/controllers/agent-self-improvement/agent-self-improvement.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/mission/mission-policy.controller.js +4 -6
- package/dist/backend/backend/src/controllers/mission/mission-policy.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/mission/mission-policy.routes.d.ts +10 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js +78 -16
- package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/oauth/oauth.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/oauth/oauth.routes.js +31 -0
- package/dist/backend/backend/src/controllers/oauth/oauth.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js +11 -1
- package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/request-types.d.ts +6 -2
- package/dist/backend/backend/src/controllers/request-types.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts +14 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +59 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts +9 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js +14 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.controller.js +20 -1
- package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts +13 -0
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +240 -9
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/middleware/api-token.middleware.d.ts +139 -0
- package/dist/backend/backend/src/middleware/api-token.middleware.d.ts.map +1 -0
- package/dist/backend/backend/src/middleware/api-token.middleware.js +301 -0
- package/dist/backend/backend/src/middleware/api-token.middleware.js.map +1 -0
- package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.js +9 -1
- package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +78 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js +311 -13
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts +7 -0
- package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/claude-runtime.service.js +10 -1
- package/dist/backend/backend/src/services/agent/claude-runtime.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/codex-runtime.service.d.ts +8 -0
- package/dist/backend/backend/src/services/agent/codex-runtime.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/codex-runtime.service.js +11 -1
- package/dist/backend/backend/src/services/agent/codex-runtime.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts +36 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +66 -9
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/gemini-runtime.service.d.ts +7 -0
- package/dist/backend/backend/src/services/agent/gemini-runtime.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/gemini-runtime.service.js +10 -1
- package/dist/backend/backend/src/services/agent/gemini-runtime.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +197 -0
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js +422 -3
- package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/opencode-runtime.service.d.ts +114 -0
- package/dist/backend/backend/src/services/agent/opencode-runtime.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/opencode-runtime.service.js +185 -0
- package/dist/backend/backend/src/services/agent/opencode-runtime.service.js.map +1 -0
- package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts +27 -0
- package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +71 -1
- package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts +1 -1
- package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +15 -3
- package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-service.factory.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-service.factory.js +9 -0
- package/dist/backend/backend/src/services/agent/runtime-service.factory.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts +23 -0
- package/dist/backend/backend/src/services/ai/prompt-builder.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-builder.service.js +45 -0
- package/dist/backend/backend/src/services/ai/prompt-builder.service.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/index.d.ts +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/index.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/index.js +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/index.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/memory-reference.module.d.ts +43 -3
- package/dist/backend/backend/src/services/ai/prompt-modules/memory-reference.module.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/memory-reference.module.js +85 -4
- package/dist/backend/backend/src/services/ai/prompt-modules/memory-reference.module.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts +35 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js +73 -2
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +44 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.js +33 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.js +13 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js +6 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
- package/dist/backend/backend/src/services/ai/self-improvement/agent-memory-provider.d.ts +45 -0
- package/dist/backend/backend/src/services/ai/self-improvement/agent-memory-provider.d.ts.map +1 -0
- package/dist/backend/backend/src/services/ai/self-improvement/agent-memory-provider.js +59 -0
- package/dist/backend/backend/src/services/ai/self-improvement/agent-memory-provider.js.map +1 -0
- package/dist/backend/backend/src/services/ai/self-improvement/consolidation-scheduler.service.d.ts +137 -0
- package/dist/backend/backend/src/services/ai/self-improvement/consolidation-scheduler.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/ai/self-improvement/consolidation-scheduler.service.js +216 -0
- package/dist/backend/backend/src/services/ai/self-improvement/consolidation-scheduler.service.js.map +1 -0
- package/dist/backend/backend/src/services/ai/self-improvement/prediction-calibration.service.d.ts +4 -1
- package/dist/backend/backend/src/services/ai/self-improvement/prediction-calibration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/self-improvement/prediction-calibration.service.js +3 -1
- package/dist/backend/backend/src/services/ai/self-improvement/prediction-calibration.service.js.map +1 -1
- package/dist/backend/backend/src/services/backup/backup-archive.service.d.ts +26 -2
- package/dist/backend/backend/src/services/backup/backup-archive.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/backup/backup-archive.service.js +91 -10
- package/dist/backend/backend/src/services/backup/backup-archive.service.js.map +1 -1
- package/dist/backend/backend/src/services/backup/backup-restore.service.d.ts +15 -2
- package/dist/backend/backend/src/services/backup/backup-restore.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/backup/backup-restore.service.js +100 -21
- package/dist/backend/backend/src/services/backup/backup-restore.service.js.map +1 -1
- package/dist/backend/backend/src/services/backup/backup.types.d.ts +85 -2
- package/dist/backend/backend/src/services/backup/backup.types.d.ts.map +1 -1
- package/dist/backend/backend/src/services/backup/backup.types.js +21 -0
- package/dist/backend/backend/src/services/backup/backup.types.js.map +1 -1
- package/dist/backend/backend/src/services/backup/project-file-filter.d.ts +35 -0
- package/dist/backend/backend/src/services/backup/project-file-filter.d.ts.map +1 -0
- package/dist/backend/backend/src/services/backup/project-file-filter.js +90 -0
- package/dist/backend/backend/src/services/backup/project-file-filter.js.map +1 -0
- package/dist/backend/backend/src/services/budget/team-budget-gate.service.d.ts +165 -0
- package/dist/backend/backend/src/services/budget/team-budget-gate.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/budget/team-budget-gate.service.js +364 -0
- package/dist/backend/backend/src/services/budget/team-budget-gate.service.js.map +1 -0
- package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts +23 -3
- package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js +34 -3
- package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts +5 -3
- package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js +6 -4
- package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
- package/dist/backend/backend/src/services/core/api-token.service.d.ts +78 -0
- package/dist/backend/backend/src/services/core/api-token.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/core/api-token.service.js +149 -0
- package/dist/backend/backend/src/services/core/api-token.service.js.map +1 -0
- package/dist/backend/backend/src/services/core/logger.service.d.ts +10 -1
- package/dist/backend/backend/src/services/core/logger.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/core/logger.service.js +18 -3
- package/dist/backend/backend/src/services/core/logger.service.js.map +1 -1
- package/dist/backend/backend/src/services/core/storage.service.d.ts +11 -0
- package/dist/backend/backend/src/services/core/storage.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/core/storage.service.js +34 -0
- package/dist/backend/backend/src/services/core/storage.service.js.map +1 -1
- package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.d.ts +7 -1
- package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js +29 -7
- package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js.map +1 -1
- package/dist/backend/backend/src/services/hierarchy/hierarchy-escalation-monitor.service.d.ts +140 -0
- package/dist/backend/backend/src/services/hierarchy/hierarchy-escalation-monitor.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/hierarchy/hierarchy-escalation-monitor.service.js +346 -0
- package/dist/backend/backend/src/services/hierarchy/hierarchy-escalation-monitor.service.js.map +1 -0
- package/dist/backend/backend/src/services/mcp-tool-definitions.d.ts +1 -1
- package/dist/backend/backend/src/services/mcp-tool-definitions.js +1 -1
- package/dist/backend/backend/src/services/mcp-tool-definitions.js.map +1 -1
- package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts +27 -3
- package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/monitoring/token-usage.service.js +42 -7
- package/dist/backend/backend/src/services/monitoring/token-usage.service.js.map +1 -1
- package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.d.ts +47 -0
- package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.js +67 -1
- package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.js.map +1 -1
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts +22 -15
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -1
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +24 -15
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-adapter.d.ts +10 -1
- package/dist/backend/backend/src/services/runtime-adapter.d.ts.map +1 -1
- package/dist/backend/backend/src/services/runtime-adapter.js +12 -1
- package/dist/backend/backend/src/services/runtime-adapter.js.map +1 -1
- package/dist/backend/backend/src/services/session/pty/pty-session.d.ts +7 -1
- package/dist/backend/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/pty/pty-session.js +9 -3
- package/dist/backend/backend/src/services/session/pty/pty-session.js.map +1 -1
- package/dist/backend/backend/src/services/session/session-handoff.service.d.ts +27 -0
- package/dist/backend/backend/src/services/session/session-handoff.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/session-handoff.service.js +110 -22
- package/dist/backend/backend/src/services/session/session-handoff.service.js.map +1 -1
- package/dist/backend/backend/src/services/settings/settings.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/settings/settings.service.js +1 -0
- package/dist/backend/backend/src/services/settings/settings.service.js.map +1 -1
- package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/skill/skill-catalog.service.js +7 -1
- package/dist/backend/backend/src/services/skill/skill-catalog.service.js.map +1 -1
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +52 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js +132 -6
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/escalation-boot.d.ts +87 -0
- package/dist/backend/backend/src/services/v3/escalation-boot.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/escalation-boot.js +128 -0
- package/dist/backend/backend/src/services/v3/escalation-boot.js.map +1 -0
- package/dist/backend/backend/src/services/v3/escalation.service.d.ts +1 -1
- package/dist/backend/backend/src/services/v3/escalation.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/escalation.service.js +4 -4
- package/dist/backend/backend/src/services/v3/escalation.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/fallback-trigger-cleanup.subscriber.d.ts +78 -0
- package/dist/backend/backend/src/services/v3/fallback-trigger-cleanup.subscriber.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/fallback-trigger-cleanup.subscriber.js +129 -0
- package/dist/backend/backend/src/services/v3/fallback-trigger-cleanup.subscriber.js.map +1 -0
- package/dist/backend/backend/src/services/v3/kr-completion.subscriber.d.ts +118 -0
- package/dist/backend/backend/src/services/v3/kr-completion.subscriber.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/kr-completion.subscriber.js +277 -0
- package/dist/backend/backend/src/services/v3/kr-completion.subscriber.js.map +1 -0
- package/dist/backend/backend/src/services/v3/kr-skill-measurer.service.d.ts +117 -0
- package/dist/backend/backend/src/services/v3/kr-skill-measurer.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/kr-skill-measurer.service.js +214 -0
- package/dist/backend/backend/src/services/v3/kr-skill-measurer.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/kr-tracking.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/kr-tracking.service.js +3 -6
- package/dist/backend/backend/src/services/v3/kr-tracking.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts +5 -0
- package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/mission-executor.service.js +36 -0
- package/dist/backend/backend/src/services/v3/mission-executor.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/mission-paths.d.ts +69 -0
- package/dist/backend/backend/src/services/v3/mission-paths.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/mission-paths.js +92 -0
- package/dist/backend/backend/src/services/v3/mission-paths.js.map +1 -0
- package/dist/backend/backend/src/services/v3/mission-period.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/mission-period.service.js +1 -12
- package/dist/backend/backend/src/services/v3/mission-period.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/mission-reminder.service.d.ts +76 -2
- package/dist/backend/backend/src/services/v3/mission-reminder.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/mission-reminder.service.js +267 -9
- package/dist/backend/backend/src/services/v3/mission-reminder.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/okr-cascade.service.d.ts +6 -4
- package/dist/backend/backend/src/services/v3/okr-cascade.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/okr-cascade.service.js +11 -10
- package/dist/backend/backend/src/services/v3/okr-cascade.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/okr-review.service.d.ts +24 -0
- package/dist/backend/backend/src/services/v3/okr-review.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/okr-review.service.js +63 -3
- package/dist/backend/backend/src/services/v3/okr-review.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts +17 -0
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js +62 -13
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/v3-data.service.d.ts +6 -2
- package/dist/backend/backend/src/services/v3/v3-data.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/v3-data.service.js +14 -9
- package/dist/backend/backend/src/services/v3/v3-data.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +14 -0
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +31 -0
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
- package/dist/backend/backend/src/types/event-bus.types.d.ts +4 -2
- package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/event-bus.types.js +15 -0
- package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
- package/dist/backend/backend/src/types/index.d.ts +27 -1
- package/dist/backend/backend/src/types/index.d.ts.map +1 -1
- package/dist/backend/backend/src/types/index.js.map +1 -1
- package/dist/backend/backend/src/types/settings.types.d.ts +1 -1
- package/dist/backend/backend/src/types/settings.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/settings.types.js +7 -0
- package/dist/backend/backend/src/types/settings.types.js.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.d.ts +2 -2
- package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.js +1 -1
- package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
- package/dist/backend/backend/src/types/v2/index.d.ts +1 -1
- package/dist/backend/backend/src/types/v2/index.d.ts.map +1 -1
- package/dist/backend/backend/src/types/v2/index.js +1 -1
- package/dist/backend/backend/src/types/v2/index.js.map +1 -1
- package/dist/backend/backend/src/types/v2/mission.types.d.ts +41 -0
- package/dist/backend/backend/src/types/v2/mission.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/v2/mission.types.js +29 -0
- package/dist/backend/backend/src/types/v2/mission.types.js.map +1 -1
- package/dist/backend/backend/src/utils/network-exposure.utils.d.ts +67 -0
- package/dist/backend/backend/src/utils/network-exposure.utils.d.ts.map +1 -0
- package/dist/backend/backend/src/utils/network-exposure.utils.js +92 -0
- package/dist/backend/backend/src/utils/network-exposure.utils.js.map +1 -0
- package/dist/backend/backend/src/utils/terminal-string-ops.d.ts +2 -0
- package/dist/backend/backend/src/utils/terminal-string-ops.d.ts.map +1 -1
- package/dist/backend/backend/src/utils/terminal-string-ops.js +14 -0
- package/dist/backend/backend/src/utils/terminal-string-ops.js.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/backend/config/constants.d.ts +53 -0
- package/dist/backend/config/constants.d.ts.map +1 -1
- package/dist/backend/config/constants.js +54 -0
- package/dist/backend/config/constants.js.map +1 -1
- package/dist/backend/config/index.d.ts +2 -2
- package/dist/backend/config/index.d.ts.map +1 -1
- package/dist/backend/config/index.js +6 -6
- package/dist/backend/config/index.js.map +1 -1
- package/dist/cli/backend/src/constants.d.ts +161 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +159 -1
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +78 -0
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.js +311 -13
- package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/claude-runtime.service.d.ts +7 -0
- package/dist/cli/backend/src/services/agent/claude-runtime.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/claude-runtime.service.js +10 -1
- package/dist/cli/backend/src/services/agent/claude-runtime.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/codex-runtime.service.d.ts +8 -0
- package/dist/cli/backend/src/services/agent/codex-runtime.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/codex-runtime.service.js +11 -1
- package/dist/cli/backend/src/services/agent/codex-runtime.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts +36 -1
- package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +66 -9
- package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/gemini-runtime.service.d.ts +7 -0
- package/dist/cli/backend/src/services/agent/gemini-runtime.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/gemini-runtime.service.js +10 -1
- package/dist/cli/backend/src/services/agent/gemini-runtime.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +197 -0
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js +422 -3
- package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/opencode-runtime.service.d.ts +114 -0
- package/dist/cli/backend/src/services/agent/opencode-runtime.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/agent/opencode-runtime.service.js +185 -0
- package/dist/cli/backend/src/services/agent/opencode-runtime.service.js.map +1 -0
- package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts +27 -0
- package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js +71 -1
- package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts +1 -1
- package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js +15 -3
- package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-service.factory.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-service.factory.js +9 -0
- package/dist/cli/backend/src/services/agent/runtime-service.factory.js.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-builder.service.d.ts +23 -0
- package/dist/cli/backend/src/services/ai/prompt-builder.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-builder.service.js +45 -0
- package/dist/cli/backend/src/services/ai/prompt-builder.service.js.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/memory-reference.module.d.ts +43 -3
- package/dist/cli/backend/src/services/ai/prompt-modules/memory-reference.module.d.ts.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/memory-reference.module.js +85 -4
- package/dist/cli/backend/src/services/ai/prompt-modules/memory-reference.module.js.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts +35 -0
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.js +73 -2
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.js.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +44 -0
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js +33 -0
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.d.ts.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.js +13 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.js.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.js +6 -0
- package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
- package/dist/cli/backend/src/services/ai/self-improvement/agent-memory-provider.d.ts +45 -0
- package/dist/cli/backend/src/services/ai/self-improvement/agent-memory-provider.d.ts.map +1 -0
- package/dist/cli/backend/src/services/ai/self-improvement/agent-memory-provider.js +59 -0
- package/dist/cli/backend/src/services/ai/self-improvement/agent-memory-provider.js.map +1 -0
- package/dist/cli/backend/src/services/ai/self-improvement/attention.service.d.ts +74 -0
- package/dist/cli/backend/src/services/ai/self-improvement/attention.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/ai/self-improvement/attention.service.js +132 -0
- package/dist/cli/backend/src/services/ai/self-improvement/attention.service.js.map +1 -0
- package/dist/cli/backend/src/services/ai/self-improvement/memory-consolidation.service.d.ts +107 -0
- package/dist/cli/backend/src/services/ai/self-improvement/memory-consolidation.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/ai/self-improvement/memory-consolidation.service.js +183 -0
- package/dist/cli/backend/src/services/ai/self-improvement/memory-consolidation.service.js.map +1 -0
- package/dist/cli/backend/src/services/ai/self-improvement/prediction-calibration.service.d.ts +100 -0
- package/dist/cli/backend/src/services/ai/self-improvement/prediction-calibration.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/ai/self-improvement/prediction-calibration.service.js +130 -0
- package/dist/cli/backend/src/services/ai/self-improvement/prediction-calibration.service.js.map +1 -0
- package/dist/cli/backend/src/services/backup/backup-archive.service.d.ts +26 -2
- package/dist/cli/backend/src/services/backup/backup-archive.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/backup/backup-archive.service.js +91 -10
- package/dist/cli/backend/src/services/backup/backup-archive.service.js.map +1 -1
- package/dist/cli/backend/src/services/backup/backup-restore.service.d.ts +15 -2
- package/dist/cli/backend/src/services/backup/backup-restore.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/backup/backup-restore.service.js +100 -21
- package/dist/cli/backend/src/services/backup/backup-restore.service.js.map +1 -1
- package/dist/cli/backend/src/services/backup/backup.types.d.ts +85 -2
- package/dist/cli/backend/src/services/backup/backup.types.d.ts.map +1 -1
- package/dist/cli/backend/src/services/backup/backup.types.js +21 -0
- package/dist/cli/backend/src/services/backup/backup.types.js.map +1 -1
- package/dist/cli/backend/src/services/backup/project-file-filter.d.ts +35 -0
- package/dist/cli/backend/src/services/backup/project-file-filter.d.ts.map +1 -0
- package/dist/cli/backend/src/services/backup/project-file-filter.js +90 -0
- package/dist/cli/backend/src/services/backup/project-file-filter.js.map +1 -0
- package/dist/cli/backend/src/services/budget/team-budget-gate.service.d.ts +165 -0
- package/dist/cli/backend/src/services/budget/team-budget-gate.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/budget/team-budget-gate.service.js +364 -0
- package/dist/cli/backend/src/services/budget/team-budget-gate.service.js.map +1 -0
- package/dist/cli/backend/src/services/chat-v2/chat-v2.service.d.ts +23 -3
- package/dist/cli/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.service.js +34 -3
- package/dist/cli/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts +5 -3
- package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js +6 -4
- package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
- package/dist/cli/backend/src/services/core/api-token.service.d.ts +78 -0
- package/dist/cli/backend/src/services/core/api-token.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/core/api-token.service.js +149 -0
- package/dist/cli/backend/src/services/core/api-token.service.js.map +1 -0
- package/dist/cli/backend/src/services/core/logger.service.d.ts +10 -1
- package/dist/cli/backend/src/services/core/logger.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/core/logger.service.js +18 -3
- package/dist/cli/backend/src/services/core/logger.service.js.map +1 -1
- package/dist/cli/backend/src/services/core/storage.service.d.ts +11 -0
- package/dist/cli/backend/src/services/core/storage.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/core/storage.service.js +34 -0
- package/dist/cli/backend/src/services/core/storage.service.js.map +1 -1
- package/dist/cli/backend/src/services/mcp-tool-definitions.d.ts +1 -1
- package/dist/cli/backend/src/services/mcp-tool-definitions.js +1 -1
- package/dist/cli/backend/src/services/mcp-tool-definitions.js.map +1 -1
- package/dist/cli/backend/src/services/monitoring/token-usage.service.d.ts +27 -3
- package/dist/cli/backend/src/services/monitoring/token-usage.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/monitoring/token-usage.service.js +42 -7
- package/dist/cli/backend/src/services/monitoring/token-usage.service.js.map +1 -1
- package/dist/cli/backend/src/services/orc/orc-delivery-enforcer.service.d.ts +47 -0
- package/dist/cli/backend/src/services/orc/orc-delivery-enforcer.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/orc/orc-delivery-enforcer.service.js +67 -1
- package/dist/cli/backend/src/services/orc/orc-delivery-enforcer.service.js.map +1 -1
- package/dist/cli/backend/src/services/session/pty/pty-session.d.ts +7 -1
- package/dist/cli/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
- package/dist/cli/backend/src/services/session/pty/pty-session.js +9 -3
- package/dist/cli/backend/src/services/session/pty/pty-session.js.map +1 -1
- package/dist/cli/backend/src/services/session/session-handoff.service.d.ts +27 -0
- package/dist/cli/backend/src/services/session/session-handoff.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/session/session-handoff.service.js +110 -22
- package/dist/cli/backend/src/services/session/session-handoff.service.js.map +1 -1
- package/dist/cli/backend/src/services/settings/settings.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/settings/settings.service.js +1 -0
- package/dist/cli/backend/src/services/settings/settings.service.js.map +1 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +52 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js +132 -6
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/cli/backend/src/services/v3/kr-tracking.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/v3/kr-tracking.service.js +3 -6
- package/dist/cli/backend/src/services/v3/kr-tracking.service.js.map +1 -1
- package/dist/cli/backend/src/services/v3/mission-executor.service.d.ts +5 -0
- package/dist/cli/backend/src/services/v3/mission-executor.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/v3/mission-executor.service.js +36 -0
- package/dist/cli/backend/src/services/v3/mission-executor.service.js.map +1 -1
- package/dist/cli/backend/src/services/v3/mission-paths.d.ts +69 -0
- package/dist/cli/backend/src/services/v3/mission-paths.d.ts.map +1 -0
- package/dist/cli/backend/src/services/v3/mission-paths.js +92 -0
- package/dist/cli/backend/src/services/v3/mission-paths.js.map +1 -0
- package/dist/cli/backend/src/services/v3/v3-data.service.d.ts +6 -2
- package/dist/cli/backend/src/services/v3/v3-data.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/v3/v3-data.service.js +14 -9
- package/dist/cli/backend/src/services/v3/v3-data.service.js.map +1 -1
- package/dist/cli/backend/src/types/event-bus.types.d.ts +4 -2
- package/dist/cli/backend/src/types/event-bus.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/event-bus.types.js +15 -0
- package/dist/cli/backend/src/types/event-bus.types.js.map +1 -1
- package/dist/cli/backend/src/types/index.d.ts +27 -1
- package/dist/cli/backend/src/types/index.d.ts.map +1 -1
- package/dist/cli/backend/src/types/index.js.map +1 -1
- package/dist/cli/backend/src/types/settings.types.d.ts +1 -1
- package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/settings.types.js +7 -0
- package/dist/cli/backend/src/types/settings.types.js.map +1 -1
- package/dist/cli/backend/src/types/team-template.types.d.ts +2 -2
- package/dist/cli/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/team-template.types.js +1 -1
- package/dist/cli/backend/src/types/team-template.types.js.map +1 -1
- package/dist/cli/backend/src/types/v2/index.d.ts +1 -1
- package/dist/cli/backend/src/types/v2/index.d.ts.map +1 -1
- package/dist/cli/backend/src/types/v2/index.js +1 -1
- package/dist/cli/backend/src/types/v2/index.js.map +1 -1
- package/dist/cli/backend/src/types/v2/mission.types.d.ts +41 -0
- package/dist/cli/backend/src/types/v2/mission.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/v2/mission.types.js +29 -0
- package/dist/cli/backend/src/types/v2/mission.types.js.map +1 -1
- package/dist/cli/backend/src/utils/terminal-string-ops.d.ts +2 -0
- package/dist/cli/backend/src/utils/terminal-string-ops.d.ts.map +1 -1
- package/dist/cli/backend/src/utils/terminal-string-ops.js +14 -0
- package/dist/cli/backend/src/utils/terminal-string-ops.js.map +1 -1
- package/dist/cli/cli/src/commands/backup.d.ts +25 -0
- package/dist/cli/cli/src/commands/backup.d.ts.map +1 -1
- package/dist/cli/cli/src/commands/backup.js +120 -6
- package/dist/cli/cli/src/commands/backup.js.map +1 -1
- package/dist/cli/cli/src/commands/doctor.d.ts +58 -0
- package/dist/cli/cli/src/commands/doctor.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/doctor.js +163 -0
- package/dist/cli/cli/src/commands/doctor.js.map +1 -0
- package/dist/cli/cli/src/commands/onboard.d.ts +2 -2
- package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
- package/dist/cli/cli/src/commands/onboard.js +15 -7
- package/dist/cli/cli/src/commands/onboard.js.map +1 -1
- package/dist/cli/cli/src/commands/service.d.ts +68 -11
- package/dist/cli/cli/src/commands/service.d.ts.map +1 -1
- package/dist/cli/cli/src/commands/service.js +183 -51
- package/dist/cli/cli/src/commands/service.js.map +1 -1
- package/dist/cli/cli/src/commands/token.d.ts +53 -0
- package/dist/cli/cli/src/commands/token.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/token.js +70 -0
- package/dist/cli/cli/src/commands/token.js.map +1 -0
- package/dist/cli/cli/src/index.js +40 -5
- package/dist/cli/cli/src/index.js.map +1 -1
- package/dist/cli/cli/src/scripts/check-native-toolchain.d.ts +21 -0
- package/dist/cli/cli/src/scripts/check-native-toolchain.d.ts.map +1 -0
- package/dist/cli/cli/src/scripts/check-native-toolchain.js +40 -0
- package/dist/cli/cli/src/scripts/check-native-toolchain.js.map +1 -0
- package/dist/cli/cli/src/utils/native-toolchain.d.ts +111 -0
- package/dist/cli/cli/src/utils/native-toolchain.d.ts.map +1 -0
- package/dist/cli/cli/src/utils/native-toolchain.js +146 -0
- package/dist/cli/cli/src/utils/native-toolchain.js.map +1 -0
- package/dist/cli/cli/src/utils/package-root.d.ts +55 -0
- package/dist/cli/cli/src/utils/package-root.d.ts.map +1 -0
- package/dist/cli/cli/src/utils/package-root.js +107 -0
- package/dist/cli/cli/src/utils/package-root.js.map +1 -0
- package/dist/cli/cli/src/utils/version-check.d.ts +18 -2
- package/dist/cli/cli/src/utils/version-check.d.ts.map +1 -1
- package/dist/cli/cli/src/utils/version-check.js +51 -4
- package/dist/cli/cli/src/utils/version-check.js.map +1 -1
- package/dist/cli/config/constants.d.ts +53 -0
- package/dist/cli/config/constants.d.ts.map +1 -1
- package/dist/cli/config/constants.js +54 -0
- package/dist/cli/config/constants.js.map +1 -1
- package/dist/cli/config/index.d.ts +2 -2
- package/dist/cli/config/index.d.ts.map +1 -1
- package/dist/cli/config/index.js +6 -6
- package/dist/cli/config/index.js.map +1 -1
- package/frontend/dist/assets/index-019817e2.js +4961 -0
- package/frontend/dist/assets/{index-88feb412.css → index-a56613e7.css} +1 -1
- package/frontend/dist/index.html +2 -2
- package/package.json +3 -2
- package/frontend/dist/assets/index-190a957f.js +0 -4961
|
@@ -14,10 +14,12 @@ import path from 'path';
|
|
|
14
14
|
import fs from 'fs';
|
|
15
15
|
import fsp from 'fs/promises';
|
|
16
16
|
import { BackupArchiveService } from '../../../backend/src/services/backup/backup-archive.service.js';
|
|
17
|
+
import { DEFAULT_PROJECT_FILE_EXCLUDES, PROJECT_FILES_SIZE_WARN_BYTES, } from '../../../backend/src/services/backup/backup.types.js';
|
|
17
18
|
import { BackupRestoreService, RestoreConflictError } from '../../../backend/src/services/backup/backup-restore.service.js';
|
|
18
19
|
import { BackupCloudClient, BackupNotProError, } from '../../../backend/src/services/backup/backup-cloud.client.js';
|
|
19
20
|
import { getCrewlyHomePath } from '../../../backend/src/services/core/crewly-home.utils.js';
|
|
20
21
|
import { CloudClientService } from '../../../backend/src/services/cloud/cloud-client.service.js';
|
|
22
|
+
import { LoggerService } from '../../../backend/src/services/core/logger.service.js';
|
|
21
23
|
/** Human-readable byte size. */
|
|
22
24
|
function humanBytes(n) {
|
|
23
25
|
if (n < 1024)
|
|
@@ -72,11 +74,40 @@ export async function backupCommand(action, target, options = {}) {
|
|
|
72
74
|
break;
|
|
73
75
|
default:
|
|
74
76
|
console.log(chalk.red(`Unknown backup action: ${action}`));
|
|
75
|
-
console.log(chalk.gray('Usage: crewly backup create [--out <file>] [--no-chat-db]'));
|
|
76
|
-
console.log(chalk.gray(' crewly backup restore <file> [--mode overwrite] [--map OLD=NEW] [--apply]'));
|
|
77
|
+
console.log(chalk.gray('Usage: crewly backup create [--out <file>] [--no-chat-db] [--include-project-files] [--exclude <glob>]... [--yes]'));
|
|
78
|
+
console.log(chalk.gray(' crewly backup restore <file> [--mode overwrite] [--map OLD=NEW] [--skip-slack] [--apply]'));
|
|
77
79
|
process.exitCode = 1;
|
|
78
80
|
}
|
|
79
81
|
}
|
|
82
|
+
/**
|
|
83
|
+
* `crewly backup` entry used by the CLI: runs {@link backupCommand}, drains the
|
|
84
|
+
* backend logger, and terminates the process with the accumulated exit code.
|
|
85
|
+
*
|
|
86
|
+
* The command's own promise settles when the work is done; this wrapper is the
|
|
87
|
+
* safety net for item 27 ("backup create/restore never exit"): whatever handle
|
|
88
|
+
* a backend service leaves behind (the logger's flush interval was the
|
|
89
|
+
* culprit — now unref'd — but the next one would hang the operator's shell
|
|
90
|
+
* again), the process still ends. A rejected command prints the error and
|
|
91
|
+
* exits 1 instead of turning into a swallowed unhandledRejection.
|
|
92
|
+
*
|
|
93
|
+
* @param action - Subcommand
|
|
94
|
+
* @param target - Positional target (archive path / backup id)
|
|
95
|
+
* @param options - CLI options
|
|
96
|
+
* @param exit - Process terminator (injectable for tests)
|
|
97
|
+
*/
|
|
98
|
+
export async function backupCommandAndExit(action, target, options = {}, exit = (code) => process.exit(code)) {
|
|
99
|
+
let code;
|
|
100
|
+
try {
|
|
101
|
+
await backupCommand(action, target, options);
|
|
102
|
+
code = typeof process.exitCode === 'number' ? process.exitCode : 0;
|
|
103
|
+
}
|
|
104
|
+
catch (err) {
|
|
105
|
+
console.error(chalk.red(`\nBackup ${action} failed: ${err instanceof Error ? err.message : String(err)}`));
|
|
106
|
+
code = 1;
|
|
107
|
+
}
|
|
108
|
+
await LoggerService.getInstance().shutdown();
|
|
109
|
+
exit(code);
|
|
110
|
+
}
|
|
80
111
|
/**
|
|
81
112
|
* Build a local workspace archive and print a summary.
|
|
82
113
|
*
|
|
@@ -89,6 +120,15 @@ async function runCreate(options) {
|
|
|
89
120
|
console.log(chalk.cyan('Creating workspace backup…'));
|
|
90
121
|
console.log(chalk.gray(` CREWLY_HOME: ${home}`));
|
|
91
122
|
const svc = new BackupArchiveService();
|
|
123
|
+
const includeProjectFiles = options.includeProjectFiles === true;
|
|
124
|
+
const projectFileExcludes = [...DEFAULT_PROJECT_FILE_EXCLUDES, ...(options.exclude ?? [])];
|
|
125
|
+
if (includeProjectFiles) {
|
|
126
|
+
const ok = await confirmProjectFilesSize(svc, home, projectFileExcludes, options.yes === true);
|
|
127
|
+
if (!ok) {
|
|
128
|
+
process.exitCode = 1;
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
92
132
|
const { archivePath, manifest, totalBytes } = await svc.createArchive({
|
|
93
133
|
homePath: home,
|
|
94
134
|
outPath: options.out,
|
|
@@ -96,6 +136,8 @@ async function runCreate(options) {
|
|
|
96
136
|
createdAt,
|
|
97
137
|
sourceDeviceId: readDeviceId(home),
|
|
98
138
|
sourceDeviceName: os.hostname(),
|
|
139
|
+
includeProjectFiles,
|
|
140
|
+
projectFileExcludes,
|
|
99
141
|
});
|
|
100
142
|
const archiveBytes = fs.statSync(archivePath).size;
|
|
101
143
|
console.log(chalk.green('\n✓ Backup created'));
|
|
@@ -103,9 +145,56 @@ async function runCreate(options) {
|
|
|
103
145
|
console.log(` ${chalk.bold('Size')} ${humanBytes(archiveBytes)} compressed (${humanBytes(totalBytes)} raw)`);
|
|
104
146
|
console.log(` ${chalk.bold('Globals')} ${manifest.global.length} files`);
|
|
105
147
|
console.log(` ${chalk.bold('Projects')} ${manifest.projects.length}`);
|
|
148
|
+
if (manifest.includesProjectFiles) {
|
|
149
|
+
const files = manifest.projects.reduce((n, p) => n + (p.projectFiles?.length ?? 0), 0);
|
|
150
|
+
const bytes = manifest.projects.reduce((n, p) => n + (p.projectFilesBytes ?? 0), 0);
|
|
151
|
+
console.log(` ${chalk.bold('Files')} ${files} project files (${humanBytes(bytes)}) — excludes: ${projectFileExcludes.join(', ')}`);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
console.log(chalk.gray(' Files project source files not included (add --include-project-files)'));
|
|
155
|
+
}
|
|
106
156
|
console.log(` ${chalk.bold('chat.db')} ${manifest.chatDb.included ? `included (${humanBytes(manifest.chatDb.bytes ?? 0)})` : `excluded${manifest.chatDb.skippedReason ? ` — ${manifest.chatDb.skippedReason}` : ''}`}`);
|
|
107
157
|
console.log(chalk.gray('\n Restore on another machine with: crewly backup restore <file>'));
|
|
108
158
|
}
|
|
159
|
+
/**
|
|
160
|
+
* Print per-project source sizes and, above {@link PROJECT_FILES_SIZE_WARN_BYTES},
|
|
161
|
+
* refuse to continue unless `--yes` was passed.
|
|
162
|
+
*
|
|
163
|
+
* @param svc - Archive service (for the estimate)
|
|
164
|
+
* @param home - CREWLY_HOME
|
|
165
|
+
* @param excludes - Exclude patterns in effect
|
|
166
|
+
* @param yes - Whether the operator pre-confirmed
|
|
167
|
+
* @returns true to proceed with the archive
|
|
168
|
+
*/
|
|
169
|
+
async function confirmProjectFilesSize(svc, home, excludes, yes) {
|
|
170
|
+
const estimates = await svc.estimateProjectFiles({ homePath: home, projectFileExcludes: excludes });
|
|
171
|
+
const total = estimates.reduce((n, e) => n + e.bytes, 0);
|
|
172
|
+
console.log(chalk.gray(` Project files (excluding ${excludes.join(', ')}):`));
|
|
173
|
+
for (const e of estimates) {
|
|
174
|
+
console.log(chalk.gray(` • ${e.name} (${e.path}) — ${humanBytes(e.bytes)}, ${e.fileCount} files`));
|
|
175
|
+
}
|
|
176
|
+
console.log(chalk.gray(` Total ${humanBytes(total)} uncompressed`));
|
|
177
|
+
if (total <= PROJECT_FILES_SIZE_WARN_BYTES || yes)
|
|
178
|
+
return true;
|
|
179
|
+
console.log(chalk.yellow(`\n⚠ Project files total ${humanBytes(total)}, above the ${humanBytes(PROJECT_FILES_SIZE_WARN_BYTES)} warning threshold.`));
|
|
180
|
+
console.log(chalk.gray(' Trim with --exclude <glob> (e.g. --exclude dist --exclude "*.mp4"), or re-run with --yes to continue anyway.'));
|
|
181
|
+
return false;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Print the Slack ownership warning (item 29): one Slack app must be answered
|
|
185
|
+
* by exactly one Crewly instance.
|
|
186
|
+
*/
|
|
187
|
+
function printSlackOwnershipWarning() {
|
|
188
|
+
const line = '!'.repeat(72);
|
|
189
|
+
console.log(chalk.yellow(`\n ${line}`));
|
|
190
|
+
console.log(chalk.yellow.bold(' !! SLACK OWNERSHIP: this backup carries slack-credentials.json.'));
|
|
191
|
+
console.log(chalk.yellow(' !! If the source machine is still running, BOTH instances will answer the'));
|
|
192
|
+
console.log(chalk.yellow(' !! same Slack app and each message goes to whichever responds first —'));
|
|
193
|
+
console.log(chalk.yellow(' !! replies, threads and approvals become non-deterministic.'));
|
|
194
|
+
console.log(chalk.yellow(' !! Decide who owns Slack: restore with --skip-slack to keep it on the'));
|
|
195
|
+
console.log(chalk.yellow(' !! source, or stop / disconnect Slack on the source before applying.'));
|
|
196
|
+
console.log(chalk.yellow(` ${line}\n`));
|
|
197
|
+
}
|
|
109
198
|
/**
|
|
110
199
|
* Restore a workspace archive. Dry-run preview by default; `--apply` to commit.
|
|
111
200
|
*
|
|
@@ -131,21 +220,41 @@ async function runRestore(target, options) {
|
|
|
131
220
|
pathMap[m.slice(0, eq)] = m.slice(eq + 1);
|
|
132
221
|
}
|
|
133
222
|
const svc = new BackupRestoreService();
|
|
134
|
-
const restoreOpts = {
|
|
223
|
+
const restoreOpts = {
|
|
224
|
+
archivePath: target,
|
|
225
|
+
homePath: home,
|
|
226
|
+
mode: mode,
|
|
227
|
+
pathMap,
|
|
228
|
+
now: new Date().toISOString(),
|
|
229
|
+
skipSlack: options.skipSlack === true,
|
|
230
|
+
};
|
|
135
231
|
// Always show the plan first.
|
|
136
232
|
const plan = await svc.preview(restoreOpts);
|
|
137
233
|
console.log(chalk.cyan('\nRestore plan'));
|
|
138
234
|
console.log(` ${chalk.bold('From backup')} taken ${plan.manifestCreatedAt} (source home ${plan.sourceHomePath})`);
|
|
139
235
|
console.log(` ${chalk.bold('Into')} ${home}`);
|
|
140
236
|
console.log(` ${chalk.bold('Globals')} ${plan.globalFileCount} files · ${chalk.bold('chat.db')} ${plan.chatDbIncluded ? 'yes' : 'no'}`);
|
|
141
|
-
console.log(` ${chalk.bold('Projects')}`);
|
|
237
|
+
console.log(` ${chalk.bold('Projects')}${plan.includesProjectFiles ? ' (archive carries project source files)' : ''}`);
|
|
142
238
|
for (const p of plan.projects) {
|
|
143
239
|
const tgt = p.targetPath ? p.targetPath + (p.targetExists ? '' : ' (will be created)') : chalk.yellow('UNRESOLVED — pass --map');
|
|
144
|
-
|
|
240
|
+
const files = p.projectFileCount > 0 ? ` [${p.projectFileCount} files, ${humanBytes(p.projectFilesBytes)}${p.targetNonEmpty ? chalk.yellow(' → target NOT empty') : ''}]` : '';
|
|
241
|
+
console.log(` • ${p.name} → ${tgt}${files}`);
|
|
145
242
|
}
|
|
146
243
|
if (plan.conflicts.teams.length || plan.conflicts.projects.length) {
|
|
147
244
|
console.log(chalk.yellow(` Conflicts: ${plan.conflicts.teams.length} team(s), ${plan.conflicts.projects.length} project(s) already on this machine`));
|
|
148
245
|
}
|
|
246
|
+
if (plan.conflicts.projectFiles.length) {
|
|
247
|
+
console.log(chalk.yellow(` Conflicts: project files would overwrite ${plan.conflicts.projectFiles.length} non-empty director${plan.conflicts.projectFiles.length === 1 ? 'y' : 'ies'}`));
|
|
248
|
+
}
|
|
249
|
+
if (plan.hasSlackCredentials) {
|
|
250
|
+
if (plan.slackSkipped) {
|
|
251
|
+
console.log(chalk.gray(' Slack credentials in backup — SKIPPED (--skip-slack); this machine will not answer the Slack app'));
|
|
252
|
+
}
|
|
253
|
+
else {
|
|
254
|
+
console.log(` ${chalk.bold('Slack')} credentials in backup — will be restored`);
|
|
255
|
+
printSlackOwnershipWarning();
|
|
256
|
+
}
|
|
257
|
+
}
|
|
149
258
|
for (const w of plan.warnings)
|
|
150
259
|
console.log(chalk.yellow(` ⚠ ${w}`));
|
|
151
260
|
console.log(chalk.gray(` Discards: ${plan.discarded.join(', ')}`));
|
|
@@ -161,13 +270,18 @@ async function runRestore(target, options) {
|
|
|
161
270
|
console.log(chalk.green('\n✓ Restore complete'));
|
|
162
271
|
console.log(` ${chalk.bold('Globals')} ${res.restoredGlobalFiles} files`);
|
|
163
272
|
console.log(` ${chalk.bold('Projects')} ${res.restoredProjects}`);
|
|
273
|
+
if (plan.includesProjectFiles)
|
|
274
|
+
console.log(` ${chalk.bold('Files')} ${res.restoredProjectFiles} project files`);
|
|
164
275
|
console.log(` ${chalk.bold('chat.db')} ${res.chatDbRestored ? 'restored' : 'not in backup'}`);
|
|
276
|
+
if (plan.hasSlackCredentials) {
|
|
277
|
+
console.log(` ${chalk.bold('Slack')} ${res.slackSkipped ? 'credentials skipped (--skip-slack)' : 'credentials restored — make sure the source machine no longer runs Slack'}`);
|
|
278
|
+
}
|
|
165
279
|
console.log(` ${chalk.bold('Rollback')} ${res.rollbackSnapshotPath}`);
|
|
166
280
|
console.log(chalk.gray('\n Restart Crewly so agents pick up the restored workspace.'));
|
|
167
281
|
}
|
|
168
282
|
catch (err) {
|
|
169
283
|
if (err instanceof RestoreConflictError) {
|
|
170
|
-
console.log(chalk.red(
|
|
284
|
+
console.log(chalk.red(`\n✗ ${err.message}`));
|
|
171
285
|
process.exitCode = 1;
|
|
172
286
|
return;
|
|
173
287
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../../../../cli/src/commands/backup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../../../../cli/src/commands/backup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `crewly doctor` — environment health report.
|
|
3
|
+
*
|
|
4
|
+
* Answers "why does this install not work?" in one screen: where the package
|
|
5
|
+
* lives, which node runs it, whether the native modules (node-pty,
|
|
6
|
+
* better-sqlite3) are built and loadable, whether the C++ toolchain needed to
|
|
7
|
+
* rebuild them is present (server-install finding 11), and — on Linux — whether
|
|
8
|
+
* the user service will survive logout.
|
|
9
|
+
*
|
|
10
|
+
* @module cli/commands/doctor
|
|
11
|
+
*/
|
|
12
|
+
/** Severity of a doctor line. */
|
|
13
|
+
export type DoctorStatus = 'ok' | 'warn' | 'fail';
|
|
14
|
+
/** One line of the report. */
|
|
15
|
+
export interface DoctorCheck {
|
|
16
|
+
/** Short label (e.g. "node-pty"). */
|
|
17
|
+
name: string;
|
|
18
|
+
status: DoctorStatus;
|
|
19
|
+
/** Detail shown after the label. */
|
|
20
|
+
detail: string;
|
|
21
|
+
/** Optional remediation printed indented under the line. */
|
|
22
|
+
hint?: string;
|
|
23
|
+
}
|
|
24
|
+
/** Injection points so the report is testable without a real install. */
|
|
25
|
+
export interface DoctorDeps {
|
|
26
|
+
/** Package root override (defaults to {@link resolvePackageRoot}). */
|
|
27
|
+
packageRoot?: string | null;
|
|
28
|
+
/** Attempts to load a native module by name; throws when it cannot. */
|
|
29
|
+
tryLoad?: (moduleName: string, packageRoot: string) => void;
|
|
30
|
+
/** PATH lookup for the toolchain check. */
|
|
31
|
+
which?: (bin: string) => boolean;
|
|
32
|
+
/** Platform override. */
|
|
33
|
+
platform?: NodeJS.Platform;
|
|
34
|
+
/** Home directory override. */
|
|
35
|
+
homeDir?: string;
|
|
36
|
+
/** Linger lookup (Linux only). */
|
|
37
|
+
lingerState?: () => Promise<'yes' | 'no' | null>;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Build the list of checks without printing anything.
|
|
41
|
+
*
|
|
42
|
+
* @param deps - Injection points
|
|
43
|
+
* @returns Ordered checks
|
|
44
|
+
*/
|
|
45
|
+
export declare function collectDoctorChecks(deps?: DoctorDeps): Promise<DoctorCheck[]>;
|
|
46
|
+
/**
|
|
47
|
+
* Render one check as a coloured line (plus optional hint line).
|
|
48
|
+
*
|
|
49
|
+
* @param check - The check
|
|
50
|
+
* @returns Lines to print
|
|
51
|
+
*/
|
|
52
|
+
export declare function formatDoctorCheck(check: DoctorCheck): string[];
|
|
53
|
+
/**
|
|
54
|
+
* `crewly doctor` entry point. Prints the report and sets a non-zero exit
|
|
55
|
+
* code when any check failed.
|
|
56
|
+
*/
|
|
57
|
+
export declare function doctorCommand(): Promise<void>;
|
|
58
|
+
//# sourceMappingURL=doctor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../../../cli/src/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAaH,iCAAiC;AACjC,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;AAElD,8BAA8B;AAC9B,MAAM,WAAW,WAAW;IAC3B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,yEAAyE;AACzE,MAAM,WAAW,UAAU;IAC1B,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,uEAAuE;IACvE,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5D,2CAA2C;IAC3C,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACjC,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;CACjD;AAiBD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAoFvF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,EAAE,CAK9D;AAED;;;GAGG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAoBnD"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `crewly doctor` — environment health report.
|
|
3
|
+
*
|
|
4
|
+
* Answers "why does this install not work?" in one screen: where the package
|
|
5
|
+
* lives, which node runs it, whether the native modules (node-pty,
|
|
6
|
+
* better-sqlite3) are built and loadable, whether the C++ toolchain needed to
|
|
7
|
+
* rebuild them is present (server-install finding 11), and — on Linux — whether
|
|
8
|
+
* the user service will survive logout.
|
|
9
|
+
*
|
|
10
|
+
* @module cli/commands/doctor
|
|
11
|
+
*/
|
|
12
|
+
import * as fs from 'fs';
|
|
13
|
+
import * as os from 'os';
|
|
14
|
+
import * as path from 'path';
|
|
15
|
+
import { createRequire } from 'module';
|
|
16
|
+
import { pathToFileURL } from 'url';
|
|
17
|
+
import chalk from 'chalk';
|
|
18
|
+
import { CREWLY_CONSTANTS } from '../../../config/index.js';
|
|
19
|
+
import { resolvePackageRoot } from '../utils/package-root.js';
|
|
20
|
+
import { checkNativeToolchain } from '../utils/native-toolchain.js';
|
|
21
|
+
import { getLingerState } from './service.js';
|
|
22
|
+
/** Native modules whose loadability decides whether Crewly can start. */
|
|
23
|
+
const NATIVE_MODULES = ['node-pty', 'better-sqlite3'];
|
|
24
|
+
/**
|
|
25
|
+
* Default native-module loader: a CJS `require` anchored at the package root
|
|
26
|
+
* so the resolver finds the package's own `node_modules/`.
|
|
27
|
+
*
|
|
28
|
+
* @param moduleName - Bare module name
|
|
29
|
+
* @param packageRoot - Crewly package root
|
|
30
|
+
*/
|
|
31
|
+
function defaultTryLoad(moduleName, packageRoot) {
|
|
32
|
+
const req = createRequire(pathToFileURL(path.join(packageRoot, 'package.json')).href);
|
|
33
|
+
req(moduleName);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Build the list of checks without printing anything.
|
|
37
|
+
*
|
|
38
|
+
* @param deps - Injection points
|
|
39
|
+
* @returns Ordered checks
|
|
40
|
+
*/
|
|
41
|
+
export async function collectDoctorChecks(deps = {}) {
|
|
42
|
+
const checks = [];
|
|
43
|
+
const platform = deps.platform ?? process.platform;
|
|
44
|
+
const homeDir = deps.homeDir ?? os.homedir();
|
|
45
|
+
const packageRoot = deps.packageRoot === undefined ? resolvePackageRoot() : deps.packageRoot;
|
|
46
|
+
// 1. Package root
|
|
47
|
+
if (!packageRoot) {
|
|
48
|
+
checks.push({
|
|
49
|
+
name: 'package',
|
|
50
|
+
status: 'fail',
|
|
51
|
+
detail: 'could not locate the Crewly package root',
|
|
52
|
+
hint: 'Reinstall with: npm install -g crewly',
|
|
53
|
+
});
|
|
54
|
+
return checks;
|
|
55
|
+
}
|
|
56
|
+
let version = 'unknown';
|
|
57
|
+
try {
|
|
58
|
+
version = JSON.parse(fs.readFileSync(path.join(packageRoot, 'package.json'), 'utf-8')).version ?? 'unknown';
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
// keep 'unknown'
|
|
62
|
+
}
|
|
63
|
+
checks.push({ name: 'package', status: 'ok', detail: `crewly ${version} at ${packageRoot}` });
|
|
64
|
+
// 2. Node
|
|
65
|
+
checks.push({ name: 'node', status: 'ok', detail: `${process.version} (${process.execPath}, ${process.platform}-${process.arch})` });
|
|
66
|
+
// 3. Native modules
|
|
67
|
+
const tryLoad = deps.tryLoad ?? defaultTryLoad;
|
|
68
|
+
for (const mod of NATIVE_MODULES) {
|
|
69
|
+
try {
|
|
70
|
+
tryLoad(mod, packageRoot);
|
|
71
|
+
checks.push({ name: mod, status: 'ok', detail: 'loads' });
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
const reason = error instanceof Error ? error.message.split('\n')[0] : String(error);
|
|
75
|
+
checks.push({
|
|
76
|
+
name: mod,
|
|
77
|
+
status: 'fail',
|
|
78
|
+
detail: `cannot load — ${reason}`,
|
|
79
|
+
hint: `Rebuild with: cd ${packageRoot} && npm rebuild ${mod}`,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
// 4. Build toolchain (forced: report even when currently built, as a warning)
|
|
84
|
+
const toolchain = checkNativeToolchain({ packageRoot, which: deps.which, force: true });
|
|
85
|
+
if (toolchain.missing.length === 0) {
|
|
86
|
+
checks.push({ name: 'toolchain', status: 'ok', detail: 'g++, make, python3 available for native rebuilds' });
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
const needsBuild = !toolchain.nodePty.built && !toolchain.nodePty.prebuilt;
|
|
90
|
+
checks.push({
|
|
91
|
+
name: 'toolchain',
|
|
92
|
+
status: needsBuild ? 'fail' : 'warn',
|
|
93
|
+
detail: `missing ${toolchain.missing.join(', ')} — node-pty ${needsBuild ? 'cannot be compiled' : 'cannot be rebuilt on upgrade'}`,
|
|
94
|
+
hint: toolchain.installHint,
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
// 5. Service environment
|
|
98
|
+
const serviceEnv = path.join(homeDir, CREWLY_CONSTANTS.PATHS.CREWLY_HOME, 'service.env');
|
|
99
|
+
checks.push({
|
|
100
|
+
name: 'service.env',
|
|
101
|
+
status: 'ok',
|
|
102
|
+
detail: fs.existsSync(serviceEnv) ? `present (${serviceEnv})` : `not present (optional; create ${serviceEnv} for DEFAULT_RUNTIME, CREWLY_API_TOKEN, ...)`,
|
|
103
|
+
});
|
|
104
|
+
// 6. Linger (Linux user services die at logout without it)
|
|
105
|
+
if (platform === 'linux') {
|
|
106
|
+
const linger = await (deps.lingerState ?? getLingerState)();
|
|
107
|
+
if (linger === 'yes') {
|
|
108
|
+
checks.push({ name: 'linger', status: 'ok', detail: 'enabled — user service survives logout' });
|
|
109
|
+
}
|
|
110
|
+
else if (linger === 'no') {
|
|
111
|
+
checks.push({
|
|
112
|
+
name: 'linger',
|
|
113
|
+
status: 'warn',
|
|
114
|
+
detail: 'disabled — the service stops when your session ends',
|
|
115
|
+
hint: `loginctl enable-linger ${os.userInfo().username}`,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
checks.push({ name: 'linger', status: 'warn', detail: 'unknown (loginctl unavailable)' });
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return checks;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Render one check as a coloured line (plus optional hint line).
|
|
126
|
+
*
|
|
127
|
+
* @param check - The check
|
|
128
|
+
* @returns Lines to print
|
|
129
|
+
*/
|
|
130
|
+
export function formatDoctorCheck(check) {
|
|
131
|
+
const icon = check.status === 'ok' ? chalk.green('✓') : check.status === 'warn' ? chalk.yellow('⚠') : chalk.red('✗');
|
|
132
|
+
const lines = [`${icon} ${chalk.bold(check.name.padEnd(14))} ${check.detail}`];
|
|
133
|
+
if (check.hint)
|
|
134
|
+
lines.push(chalk.gray(` → ${check.hint}`));
|
|
135
|
+
return lines;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* `crewly doctor` entry point. Prints the report and sets a non-zero exit
|
|
139
|
+
* code when any check failed.
|
|
140
|
+
*/
|
|
141
|
+
export async function doctorCommand() {
|
|
142
|
+
console.log(chalk.blue('Crewly Doctor'));
|
|
143
|
+
console.log(chalk.gray('='.repeat(50)));
|
|
144
|
+
const checks = await collectDoctorChecks();
|
|
145
|
+
for (const check of checks) {
|
|
146
|
+
for (const line of formatDoctorCheck(check))
|
|
147
|
+
console.log(line);
|
|
148
|
+
}
|
|
149
|
+
const failed = checks.filter((c) => c.status === 'fail').length;
|
|
150
|
+
const warned = checks.filter((c) => c.status === 'warn').length;
|
|
151
|
+
console.log('');
|
|
152
|
+
if (failed > 0) {
|
|
153
|
+
console.log(chalk.red(`${failed} problem(s) found${warned ? `, ${warned} warning(s)` : ''}.`));
|
|
154
|
+
process.exitCode = 1;
|
|
155
|
+
}
|
|
156
|
+
else if (warned > 0) {
|
|
157
|
+
console.log(chalk.yellow(`No blocking problems, ${warned} warning(s).`));
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
console.log(chalk.green('All checks passed.'));
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=doctor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../../../cli/src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
import { type Interface as ReadlineInterface } from 'readline';
|
|
17
17
|
import { type TeamTemplate } from '../utils/templates.js';
|
|
18
18
|
/** Provider choice returned by the selection step */
|
|
19
|
-
export type ProviderChoice = 'claude' | 'gemini' | 'codex' | 'both' | 'skip';
|
|
19
|
+
export type ProviderChoice = 'claude' | 'gemini' | 'codex' | 'opencode' | 'both' | 'skip';
|
|
20
20
|
/** Options passed from Commander.js for the onboard command */
|
|
21
21
|
export interface OnboardOptions {
|
|
22
22
|
/** Skip all interactive prompts and use defaults */
|
|
@@ -153,7 +153,7 @@ export declare function printSummary(selectedTemplate?: TeamTemplate | null, pro
|
|
|
153
153
|
* Runs the onboarding wizard.
|
|
154
154
|
*
|
|
155
155
|
* In interactive mode (default), walks the user through 5 steps:
|
|
156
|
-
* 1. Choose an AI provider (Claude Code, Gemini CLI,
|
|
156
|
+
* 1. Choose an AI provider (Claude Code, Gemini CLI, Codex, OpenCode, all, or skip)
|
|
157
157
|
* 2. Detect / install the chosen tool(s)
|
|
158
158
|
* 3. Install agent skills from the marketplace
|
|
159
159
|
* 4. Pick a team template (or skip)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboard.d.ts","sourceRoot":"","sources":["../../../../../cli/src/commands/onboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAmB,KAAK,SAAS,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAYhF,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAE/B,qDAAqD;AACrD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"onboard.d.ts","sourceRoot":"","sources":["../../../../../cli/src/commands/onboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAmB,KAAK,SAAS,IAAI,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAYhF,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAE/B,qDAAqD;AACrD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAE1F,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,oDAAoD;IACpD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,yDAAyD;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAID;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAUlC;AAID;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,iBAAiB,CAK3D;AAmBD;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAgCnF;AAID;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAO3D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,SAAc,GAAG,MAAM,GAAG,IAAI,CAYxF;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAe5E;AAgCD;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,iBAAiB,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CjH;AAID;;;;;GAKG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CA0ClD;AAID;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAoCxF;AAID;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,GAAE,cAAyB,GAAG,OAAO,CAuD3G;AAID;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,GAAE,MAAsB,EAAE,QAAQ,CAAC,EAAE,YAAY,GAAG,IAAI,GAAG,OAAO,CAoCnH;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI,CAwBxF;AAID;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,gBAAgB,GAAE,YAAY,GAAG,IAAW,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAoBpG;AAID;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+FhF"}
|
|
@@ -81,23 +81,26 @@ export async function selectProvider(rl) {
|
|
|
81
81
|
console.log(chalk.gray(' Free tier available, fast responses'));
|
|
82
82
|
console.log(' 3. Codex CLI (OpenAI)');
|
|
83
83
|
console.log(chalk.gray(' GPT-powered coding assistant'));
|
|
84
|
-
console.log(' 4.
|
|
85
|
-
console.log('
|
|
84
|
+
console.log(' 4. OpenCode (open source)');
|
|
85
|
+
console.log(chalk.gray(' Bring any provider/model; install: npm install -g opencode-ai, then opencode auth login'));
|
|
86
|
+
console.log(' 5. All providers');
|
|
87
|
+
console.log(' 6. Skip\n');
|
|
86
88
|
const choices = {
|
|
87
89
|
'1': 'claude',
|
|
88
90
|
'2': 'gemini',
|
|
89
91
|
'3': 'codex',
|
|
90
|
-
'4': '
|
|
91
|
-
'5': '
|
|
92
|
+
'4': 'opencode',
|
|
93
|
+
'5': 'both',
|
|
94
|
+
'6': 'skip',
|
|
92
95
|
};
|
|
93
96
|
while (true) {
|
|
94
|
-
const answer = await ask(rl, ' Enter choice (1-
|
|
97
|
+
const answer = await ask(rl, ' Enter choice (1-6): ');
|
|
95
98
|
const choice = choices[answer];
|
|
96
99
|
if (choice) {
|
|
97
100
|
console.log('');
|
|
98
101
|
return choice;
|
|
99
102
|
}
|
|
100
|
-
console.log(chalk.yellow(' Please enter 1, 2, 3, 4, or
|
|
103
|
+
console.log(chalk.yellow(' Please enter 1, 2, 3, 4, 5, or 6.'));
|
|
101
104
|
}
|
|
102
105
|
}
|
|
103
106
|
// ========================= Step 2: Tool detection & install =========================
|
|
@@ -172,10 +175,14 @@ const PROVIDER_TOOLS = {
|
|
|
172
175
|
codex: [
|
|
173
176
|
{ displayName: 'Codex CLI', command: 'codex', npmPackage: '@openai/codex' },
|
|
174
177
|
],
|
|
178
|
+
opencode: [
|
|
179
|
+
{ displayName: 'OpenCode', command: 'opencode', npmPackage: 'opencode-ai' },
|
|
180
|
+
],
|
|
175
181
|
both: [
|
|
176
182
|
{ displayName: 'Claude Code', command: 'claude', npmPackage: '@anthropic-ai/claude-code' },
|
|
177
183
|
{ displayName: 'Gemini CLI', command: 'gemini', npmPackage: '@google/gemini-cli' },
|
|
178
184
|
{ displayName: 'Codex CLI', command: 'codex', npmPackage: '@openai/codex' },
|
|
185
|
+
{ displayName: 'OpenCode', command: 'opencode', npmPackage: 'opencode-ai' },
|
|
179
186
|
],
|
|
180
187
|
skip: [],
|
|
181
188
|
};
|
|
@@ -342,6 +349,7 @@ export function createTeamFromTemplate(template, provider = 'claude') {
|
|
|
342
349
|
'claude': 'claude-code',
|
|
343
350
|
'gemini': 'gemini-cli',
|
|
344
351
|
'codex': 'codex-cli',
|
|
352
|
+
'opencode': 'opencode-cli',
|
|
345
353
|
'both': 'claude-code', // Default to Claude if both are selected
|
|
346
354
|
'skip': 'claude-code',
|
|
347
355
|
};
|
|
@@ -497,7 +505,7 @@ export function printSummary(selectedTemplate = null, projectDir) {
|
|
|
497
505
|
* Runs the onboarding wizard.
|
|
498
506
|
*
|
|
499
507
|
* In interactive mode (default), walks the user through 5 steps:
|
|
500
|
-
* 1. Choose an AI provider (Claude Code, Gemini CLI,
|
|
508
|
+
* 1. Choose an AI provider (Claude Code, Gemini CLI, Codex, OpenCode, all, or skip)
|
|
501
509
|
* 2. Detect / install the chosen tool(s)
|
|
502
510
|
* 3. Install agent skills from the marketplace
|
|
503
511
|
* 4. Pick a team template (or skip)
|