crewly 1.20.356 → 1.20.359
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/config/constants.ts +11 -0
- package/dist/backend/backend/src/constants.d.ts +313 -17
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +316 -17
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts +21 -0
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +232 -15
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +10 -2
- 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 +27 -2
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts +34 -1
- package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js +69 -13
- package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts +8 -0
- package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/idle-detection.service.js +26 -2
- package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode.service.d.ts +9 -0
- package/dist/backend/backend/src/services/agent/resource-mode.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/resource-mode.service.js +16 -0
- package/dist/backend/backend/src/services/agent/resource-mode.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.d.ts +44 -3
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.js +126 -11
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.js.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +2 -0
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +9 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
- package/dist/backend/backend/src/services/memory/agent-memory-refresh.service.d.ts +150 -0
- package/dist/backend/backend/src/services/memory/agent-memory-refresh.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/memory/agent-memory-refresh.service.js +324 -0
- package/dist/backend/backend/src/services/memory/agent-memory-refresh.service.js.map +1 -0
- package/dist/backend/backend/src/services/memory/auto-learning.subscriber.d.ts +9 -7
- package/dist/backend/backend/src/services/memory/auto-learning.subscriber.d.ts.map +1 -1
- package/dist/backend/backend/src/services/memory/auto-learning.subscriber.js +19 -17
- package/dist/backend/backend/src/services/memory/auto-learning.subscriber.js.map +1 -1
- package/dist/backend/backend/src/services/memory/memory.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/memory/memory.service.js +11 -0
- package/dist/backend/backend/src/services/memory/memory.service.js.map +1 -1
- package/dist/backend/backend/src/services/memory/startup-briefing.service.d.ts +114 -0
- package/dist/backend/backend/src/services/memory/startup-briefing.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/memory/startup-briefing.service.js +345 -0
- package/dist/backend/backend/src/services/memory/startup-briefing.service.js.map +1 -0
- package/dist/backend/backend/src/services/messaging/owner-thread-sentinel.service.d.ts +33 -1
- package/dist/backend/backend/src/services/messaging/owner-thread-sentinel.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/owner-thread-sentinel.service.js +69 -4
- package/dist/backend/backend/src/services/messaging/owner-thread-sentinel.service.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/owner-thread-sentinel.wiring.d.ts +24 -1
- package/dist/backend/backend/src/services/messaging/owner-thread-sentinel.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/owner-thread-sentinel.wiring.js +54 -3
- package/dist/backend/backend/src/services/messaging/owner-thread-sentinel.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/orc/owner-completion-report.service.d.ts +9 -0
- package/dist/backend/backend/src/services/orc/owner-completion-report.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/orc/owner-completion-report.service.js +16 -2
- package/dist/backend/backend/src/services/orc/owner-completion-report.service.js.map +1 -1
- package/dist/backend/backend/src/services/project-tickets/ticket-prefixes.d.ts +30 -0
- package/dist/backend/backend/src/services/project-tickets/ticket-prefixes.d.ts.map +1 -0
- package/dist/backend/backend/src/services/project-tickets/ticket-prefixes.js +48 -0
- package/dist/backend/backend/src/services/project-tickets/ticket-prefixes.js.map +1 -0
- package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts +8 -0
- package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/reconciler/reconciler.service.js +29 -8
- package/dist/backend/backend/src/services/reconciler/reconciler.service.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.d.ts +27 -0
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.js +78 -24
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.service.js.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.d.ts +23 -0
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.d.ts.map +1 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.js +38 -1
- package/dist/backend/backend/src/services/runtime-fallback/runtime-fallback.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/session/session-binding.d.ts +25 -2
- package/dist/backend/backend/src/services/session/session-binding.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/session-binding.js +32 -4
- package/dist/backend/backend/src/services/session/session-binding.js.map +1 -1
- package/dist/backend/backend/src/services/slack/agent-coordination.d.ts +119 -0
- package/dist/backend/backend/src/services/slack/agent-coordination.d.ts.map +1 -0
- package/dist/backend/backend/src/services/slack/agent-coordination.js +174 -0
- package/dist/backend/backend/src/services/slack/agent-coordination.js.map +1 -0
- package/dist/backend/backend/src/services/slack/slack-initializer.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-initializer.js +7 -0
- package/dist/backend/backend/src/services/slack/slack-initializer.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts +167 -0
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +619 -9
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-thread-context.service.d.ts +22 -0
- package/dist/backend/backend/src/services/slack/slack-thread-context.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-thread-context.service.js +49 -12
- package/dist/backend/backend/src/services/slack/slack-thread-context.service.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts +7 -0
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js +25 -4
- package/dist/backend/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-chat.d.ts +21 -1
- package/dist/backend/backend/src/services/team-move/team-move-chat.d.ts.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-chat.js +54 -2
- package/dist/backend/backend/src/services/team-move/team-move-chat.js.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-exporter.d.ts +9 -4
- package/dist/backend/backend/src/services/team-move/team-move-exporter.d.ts.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-exporter.js +32 -10
- package/dist/backend/backend/src/services/team-move/team-move-exporter.js.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-importer.d.ts +19 -0
- package/dist/backend/backend/src/services/team-move/team-move-importer.d.ts.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-importer.js +78 -3
- package/dist/backend/backend/src/services/team-move/team-move-importer.js.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-runtime.d.ts.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-runtime.js +8 -0
- package/dist/backend/backend/src/services/team-move/team-move-runtime.js.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move-transcripts.d.ts +106 -0
- package/dist/backend/backend/src/services/team-move/team-move-transcripts.d.ts.map +1 -0
- package/dist/backend/backend/src/services/team-move/team-move-transcripts.js +212 -0
- package/dist/backend/backend/src/services/team-move/team-move-transcripts.js.map +1 -0
- package/dist/backend/backend/src/services/team-move/team-move.types.d.ts +20 -0
- package/dist/backend/backend/src/services/team-move/team-move.types.d.ts.map +1 -1
- package/dist/backend/backend/src/services/team-move/team-move.types.js.map +1 -1
- package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts +2 -2
- package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js +11 -4
- package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-backlinks.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-backlinks.service.js +3 -0
- package/dist/backend/backend/src/services/wiki/wiki-backlinks.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-bookkeep.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-bookkeep.service.js +4 -1
- package/dist/backend/backend/src/services/wiki/wiki-bookkeep.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-cleanup.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-cleanup.service.js +4 -0
- package/dist/backend/backend/src/services/wiki/wiki-cleanup.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-ingest.service.d.ts +36 -5
- package/dist/backend/backend/src/services/wiki/wiki-ingest.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-ingest.service.js +75 -7
- package/dist/backend/backend/src/services/wiki/wiki-ingest.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-lint.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-lint.service.js +3 -1
- package/dist/backend/backend/src/services/wiki/wiki-lint.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-log-compile.service.d.ts +141 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-compile.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-compile.service.js +324 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-compile.service.js.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-entries.d.ts +142 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-entries.d.ts.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-entries.js +222 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-entries.js.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-rotation.service.d.ts +93 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-rotation.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-rotation.service.js +142 -0
- package/dist/backend/backend/src/services/wiki/wiki-log-rotation.service.js.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-maintenance.service.d.ts +104 -0
- package/dist/backend/backend/src/services/wiki/wiki-maintenance.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-maintenance.service.js +192 -0
- package/dist/backend/backend/src/services/wiki/wiki-maintenance.service.js.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-query.service.d.ts +3 -2
- package/dist/backend/backend/src/services/wiki/wiki-query.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-query.service.js +23 -39
- package/dist/backend/backend/src/services/wiki/wiki-query.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-queue-drain.service.d.ts +105 -0
- package/dist/backend/backend/src/services/wiki/wiki-queue-drain.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-queue-drain.service.js +195 -0
- package/dist/backend/backend/src/services/wiki/wiki-queue-drain.service.js.map +1 -0
- package/dist/backend/backend/src/services/wiki/wiki-recent.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-recent.service.js +3 -0
- package/dist/backend/backend/src/services/wiki/wiki-recent.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-search.service.d.ts +28 -5
- package/dist/backend/backend/src/services/wiki/wiki-search.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-search.service.js +96 -25
- package/dist/backend/backend/src/services/wiki/wiki-search.service.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-vault-walk.d.ts +11 -0
- package/dist/backend/backend/src/services/wiki/wiki-vault-walk.d.ts.map +1 -1
- package/dist/backend/backend/src/services/wiki/wiki-vault-walk.js +17 -1
- package/dist/backend/backend/src/services/wiki/wiki-vault-walk.js.map +1 -1
- package/dist/backend/backend/src/services/wiki/work-record-transcript.d.ts +64 -0
- package/dist/backend/backend/src/services/wiki/work-record-transcript.d.ts.map +1 -0
- package/dist/backend/backend/src/services/wiki/work-record-transcript.js +194 -0
- package/dist/backend/backend/src/services/wiki/work-record-transcript.js.map +1 -0
- package/dist/backend/backend/src/services/wiki/work-record.d.ts +239 -0
- package/dist/backend/backend/src/services/wiki/work-record.d.ts.map +1 -0
- package/dist/backend/backend/src/services/wiki/work-record.js +631 -0
- package/dist/backend/backend/src/services/wiki/work-record.js.map +1 -0
- package/dist/backend/backend/src/services/wiki/work-record.service.d.ts +209 -0
- package/dist/backend/backend/src/services/wiki/work-record.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/wiki/work-record.service.js +514 -0
- package/dist/backend/backend/src/services/wiki/work-record.service.js.map +1 -0
- package/dist/backend/build-info.json +2 -2
- package/dist/backend/config/constants.d.ts +11 -0
- package/dist/backend/config/constants.d.ts.map +1 -1
- package/dist/backend/config/constants.js +11 -0
- package/dist/backend/config/constants.js.map +1 -1
- package/dist/cli/backend/src/constants.d.ts +313 -17
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +316 -17
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +10 -2
- 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 +27 -2
- package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.d.ts +34 -1
- package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.js +69 -13
- package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/resource-mode.service.d.ts +9 -0
- package/dist/cli/backend/src/services/agent/resource-mode.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/resource-mode.service.js +16 -0
- package/dist/cli/backend/src/services/agent/resource-mode.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.d.ts +44 -3
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.js +126 -11
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.js.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +2 -0
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +9 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
- package/dist/cli/backend/src/services/memory/memory.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/memory/memory.service.js +11 -0
- package/dist/cli/backend/src/services/memory/memory.service.js.map +1 -1
- package/dist/cli/backend/src/services/memory/startup-briefing.service.d.ts +114 -0
- package/dist/cli/backend/src/services/memory/startup-briefing.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/memory/startup-briefing.service.js +345 -0
- package/dist/cli/backend/src/services/memory/startup-briefing.service.js.map +1 -0
- package/dist/cli/backend/src/services/messaging/owner-thread-sentinel.service.d.ts +33 -1
- package/dist/cli/backend/src/services/messaging/owner-thread-sentinel.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/messaging/owner-thread-sentinel.service.js +69 -4
- package/dist/cli/backend/src/services/messaging/owner-thread-sentinel.service.js.map +1 -1
- package/dist/cli/backend/src/services/slack/agent-coordination.d.ts +119 -0
- package/dist/cli/backend/src/services/slack/agent-coordination.d.ts.map +1 -0
- package/dist/cli/backend/src/services/slack/agent-coordination.js +174 -0
- package/dist/cli/backend/src/services/slack/agent-coordination.js.map +1 -0
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts +167 -0
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +619 -9
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-thread-context.service.d.ts +22 -0
- package/dist/cli/backend/src/services/slack/slack-thread-context.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-thread-context.service.js +49 -12
- package/dist/cli/backend/src/services/slack/slack-thread-context.service.js.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts +7 -0
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js +25 -4
- package/dist/cli/backend/src/services/slack/slack-typing-placeholder.service.js.map +1 -1
- package/dist/cli/backend/src/services/wiki/wiki-ingest.service.d.ts +36 -5
- package/dist/cli/backend/src/services/wiki/wiki-ingest.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/wiki/wiki-ingest.service.js +75 -7
- package/dist/cli/backend/src/services/wiki/wiki-ingest.service.js.map +1 -1
- package/dist/cli/backend/src/services/wiki/wiki-log-entries.d.ts +142 -0
- package/dist/cli/backend/src/services/wiki/wiki-log-entries.d.ts.map +1 -0
- package/dist/cli/backend/src/services/wiki/wiki-log-entries.js +222 -0
- package/dist/cli/backend/src/services/wiki/wiki-log-entries.js.map +1 -0
- package/dist/cli/backend/src/services/wiki/wiki-recent.service.d.ts +51 -0
- package/dist/cli/backend/src/services/wiki/wiki-recent.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/wiki/wiki-recent.service.js +105 -0
- package/dist/cli/backend/src/services/wiki/wiki-recent.service.js.map +1 -0
- package/dist/cli/backend/src/services/wiki/wiki-search.service.d.ts +28 -5
- package/dist/cli/backend/src/services/wiki/wiki-search.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/wiki/wiki-search.service.js +96 -25
- package/dist/cli/backend/src/services/wiki/wiki-search.service.js.map +1 -1
- package/dist/cli/backend/src/services/wiki/wiki-vault-walk.d.ts +11 -0
- package/dist/cli/backend/src/services/wiki/wiki-vault-walk.d.ts.map +1 -1
- package/dist/cli/backend/src/services/wiki/wiki-vault-walk.js +17 -1
- package/dist/cli/backend/src/services/wiki/wiki-vault-walk.js.map +1 -1
- package/dist/cli/backend/src/services/wiki/work-record-transcript.d.ts +64 -0
- package/dist/cli/backend/src/services/wiki/work-record-transcript.d.ts.map +1 -0
- package/dist/cli/backend/src/services/wiki/work-record-transcript.js +194 -0
- package/dist/cli/backend/src/services/wiki/work-record-transcript.js.map +1 -0
- package/dist/cli/backend/src/services/wiki/work-record.d.ts +239 -0
- package/dist/cli/backend/src/services/wiki/work-record.d.ts.map +1 -0
- package/dist/cli/backend/src/services/wiki/work-record.js +631 -0
- package/dist/cli/backend/src/services/wiki/work-record.js.map +1 -0
- package/dist/cli/config/constants.d.ts +11 -0
- package/dist/cli/config/constants.d.ts.map +1 -1
- package/dist/cli/config/constants.js +11 -0
- package/dist/cli/config/constants.js.map +1 -1
- package/package.json +1 -1
package/config/constants.ts
CHANGED
|
@@ -1155,6 +1155,17 @@ export const AGENT_SUSPEND_CONSTANTS = {
|
|
|
1155
1155
|
* paid that 50 times a day on steamfun-ops (2026-09-16).
|
|
1156
1156
|
*/
|
|
1157
1157
|
CRON_KEEPALIVE_WINDOW_MINUTES: 30,
|
|
1158
|
+
/**
|
|
1159
|
+
* An idle member that is in a conversation with the owner (an owner thread
|
|
1160
|
+
* the sentinel watches: the owner wrote to it, or it promised the owner
|
|
1161
|
+
* something, in the last two hours) is kept at least this long before an
|
|
1162
|
+
* idle stop, whatever the configured or pressure timeout says. Under the
|
|
1163
|
+
* 10-minute pressure timeout the audit of 2026-10-16 counted 50 idle stops
|
|
1164
|
+
* in 9 h, many of them agents the owner was still talking to; every stop
|
|
1165
|
+
* costs a cold start and, past the fresh-start threshold, the conversation
|
|
1166
|
+
* (crewly#1344). Memory-pressure and critical stops still apply.
|
|
1167
|
+
*/
|
|
1168
|
+
OWNER_THREAD_IDLE_TIMEOUT_MINUTES: 30,
|
|
1158
1169
|
} as const;
|
|
1159
1170
|
|
|
1160
1171
|
// ========================= SERVER PROCESS CONSTANTS =========================
|
|
@@ -531,6 +531,7 @@ export declare const AGENT_SUSPEND_CONSTANTS: {
|
|
|
531
531
|
readonly ALWAYS_ON_ROLES: readonly ["orchestrator", "auditor"];
|
|
532
532
|
readonly AGENT_IDLE_STOP_TIMEOUT_MS: 1800000;
|
|
533
533
|
readonly CRON_KEEPALIVE_WINDOW_MINUTES: 30;
|
|
534
|
+
readonly OWNER_THREAD_IDLE_TIMEOUT_MINUTES: 30;
|
|
534
535
|
};
|
|
535
536
|
export declare const VERSION_CHECK_CONSTANTS: {
|
|
536
537
|
readonly NPM_REGISTRY_URL: "https://registry.npmjs.org/crewly/latest";
|
|
@@ -2050,6 +2051,178 @@ export declare const WIKI_QUEUE_CONSTANTS: {
|
|
|
2050
2051
|
readonly CLAIM_TIMEOUT_MS: number;
|
|
2051
2052
|
/** Sub-folder of the queue root that holds expired items (kept, never deleted). */
|
|
2052
2053
|
readonly DEAD_LETTER_DIR: "dead-letter";
|
|
2054
|
+
/**
|
|
2055
|
+
* Code drain (#1345): a pending item nobody claimed within this age is
|
|
2056
|
+
* filed into the vault's `log.md` by the backend, without an LLM.
|
|
2057
|
+
*/
|
|
2058
|
+
readonly DRAIN_MIN_AGE_MS: number;
|
|
2059
|
+
/** Items filed per drain pass (the pass runs hourly, so a backlog of hundreds clears within a day). */
|
|
2060
|
+
readonly DRAIN_BATCH_SIZE: 100;
|
|
2061
|
+
/** Pause between two filed items, so a long backlog does not saturate disk I/O. */
|
|
2062
|
+
readonly DRAIN_ITEM_PAUSE_MS: 25;
|
|
2063
|
+
/** `claimedBy` / caller the drain stamps on items it files. */
|
|
2064
|
+
readonly DRAIN_CLAIMANT: "system:wiki-queue-drain";
|
|
2065
|
+
};
|
|
2066
|
+
/**
|
|
2067
|
+
* The vault activity log (`llm-curated/log.md`) and what the backend does
|
|
2068
|
+
* with it (#1345): dedupe on append, rotation into an archive, recent
|
|
2069
|
+
* entries in search, and a weekly digest page compiled from them.
|
|
2070
|
+
*/
|
|
2071
|
+
export declare const WIKI_LOG_CONSTANTS: {
|
|
2072
|
+
/** Vault-relative path of the activity log. */
|
|
2073
|
+
readonly LOG_RELATIVE_PATH: "llm-curated/log.md";
|
|
2074
|
+
/** Vault-relative folder rotated logs move to (`log-YYYY-MM-DD.md`). Never read by search. */
|
|
2075
|
+
readonly ARCHIVE_DIR: "llm-curated/log-archive";
|
|
2076
|
+
/** Rotate when the log is larger than this. */
|
|
2077
|
+
readonly ROTATE_MAX_BYTES: number;
|
|
2078
|
+
/** Rotate when the log holds more entries than this. */
|
|
2079
|
+
readonly ROTATE_MAX_ENTRIES: 2000;
|
|
2080
|
+
/** After a rotation the fresh log keeps the non-noise entries from this many days. */
|
|
2081
|
+
readonly CARRY_FORWARD_DAYS: 30;
|
|
2082
|
+
/** Cap on entries carried into the fresh log. */
|
|
2083
|
+
readonly CARRY_FORWARD_MAX_ENTRIES: 500;
|
|
2084
|
+
/** Search/recall index the entries from this many days. */
|
|
2085
|
+
readonly SEARCH_WINDOW_DAYS: 30;
|
|
2086
|
+
/** Cap on log entries one vault contributes to a search. */
|
|
2087
|
+
readonly SEARCH_MAX_ENTRIES_PER_VAULT: 300;
|
|
2088
|
+
/** BM25 score multiplier for a log entry (pages rank above entries of equal relevance). */
|
|
2089
|
+
readonly SEARCH_ENTRY_WEIGHT: 0.6;
|
|
2090
|
+
/** Separator between the log path and an entry's timestamp in a search hit path. */
|
|
2091
|
+
readonly ENTRY_PATH_SEPARATOR: "#";
|
|
2092
|
+
/** Recent entry bodies remembered per vault to drop an identical append. */
|
|
2093
|
+
readonly DEDUPE_RECENT_ENTRIES: 500;
|
|
2094
|
+
/** Bytes of the log tail read once to seed the dedupe set. */
|
|
2095
|
+
readonly DEDUPE_SEED_TAIL_BYTES: number;
|
|
2096
|
+
/** The digest compiles the uncompiled non-noise entries from this many days. */
|
|
2097
|
+
readonly COMPILE_WINDOW_DAYS: 7;
|
|
2098
|
+
/** Fewer uncompiled entries than this: no digest page is written. */
|
|
2099
|
+
readonly COMPILE_MIN_ENTRIES: 3;
|
|
2100
|
+
/** Cap on entries one digest page takes (the rest wait for the next run). */
|
|
2101
|
+
readonly COMPILE_MAX_ENTRIES: 150;
|
|
2102
|
+
/** Characters of an entry body quoted in the digest. */
|
|
2103
|
+
readonly COMPILE_ENTRY_MAX_CHARS: 400;
|
|
2104
|
+
/** Vault-relative folder of digest pages. */
|
|
2105
|
+
readonly COMPILE_DIR: "llm-curated/digests";
|
|
2106
|
+
/** Vault-root file remembering which entries were compiled (dot-file: walkers skip it). */
|
|
2107
|
+
readonly COMPILE_STATE_FILE: ".wiki-compile-state.json";
|
|
2108
|
+
/** Cap on remembered compiled entry keys per vault. */
|
|
2109
|
+
readonly COMPILE_STATE_MAX_KEYS: 5000;
|
|
2110
|
+
/** Hourly maintenance tick (drain every tick; rotation + compile once per day). */
|
|
2111
|
+
readonly MAINTENANCE_INTERVAL_MS: number;
|
|
2112
|
+
/** Rotation + compile run at most this often. */
|
|
2113
|
+
readonly MAINTENANCE_DAILY_MS: number;
|
|
2114
|
+
/** Delay before the boot-time pass, so boot I/O settles first. */
|
|
2115
|
+
readonly MAINTENANCE_BOOT_DELAY_MS: number;
|
|
2116
|
+
/** Maintenance bookkeeping (last daily pass), under CREWLY_HOME. */
|
|
2117
|
+
readonly MAINTENANCE_STATE_FILE: "wiki-maintenance-state.json";
|
|
2118
|
+
/** Kill switch env var; the value `false` disables all wiki maintenance. */
|
|
2119
|
+
readonly MAINTENANCE_ENV_KILL_SWITCH: "CREWLY_WIKI_MAINTENANCE";
|
|
2120
|
+
};
|
|
2121
|
+
/**
|
|
2122
|
+
* Daily agent-memory refresh (#1345): what an agent recorded in the wiki
|
|
2123
|
+
* log is reflected into its `memory.json` and the project's memory.
|
|
2124
|
+
*/
|
|
2125
|
+
export declare const AGENT_MEMORY_REFRESH_CONSTANTS: {
|
|
2126
|
+
readonly INTERVAL_MS: number;
|
|
2127
|
+
/** Delay before the boot-time catch-up run. */
|
|
2128
|
+
readonly BOOT_DELAY_MS: number;
|
|
2129
|
+
/** Entries newer than this are considered on the first run (later runs use the last-run watermark). */
|
|
2130
|
+
readonly LOOKBACK_MS: number;
|
|
2131
|
+
/** Cap on role-knowledge entries added per agent per run. */
|
|
2132
|
+
readonly MAX_ENTRIES_PER_AGENT: 10;
|
|
2133
|
+
/** Cap on characters of one entry kept as knowledge. */
|
|
2134
|
+
readonly ENTRY_MAX_CHARS: 600;
|
|
2135
|
+
/** Confidence of a knowledge entry derived from the agent's own log entries. */
|
|
2136
|
+
readonly CONFIDENCE: 0.5;
|
|
2137
|
+
/** State file (last run per agent), under CREWLY_HOME. */
|
|
2138
|
+
readonly STATE_FILE: "agent-memory-refresh-state.json";
|
|
2139
|
+
/** Kill switch env var; the value `false` disables the refresh. */
|
|
2140
|
+
readonly ENV_KILL_SWITCH: "CREWLY_AGENT_MEMORY_REFRESH";
|
|
2141
|
+
};
|
|
2142
|
+
/**
|
|
2143
|
+
* Automatic per-task work records (#1349): one `(record)` entry per finished
|
|
2144
|
+
* WorkItem in the project vault log, compiled into the weekly digest.
|
|
2145
|
+
*/
|
|
2146
|
+
export declare const WORK_RECORD_CONSTANTS: {
|
|
2147
|
+
/** Hourly tick: catch-up for finished items without a record, blocked items, deferred items. */
|
|
2148
|
+
readonly TICK_MS: number;
|
|
2149
|
+
/** Delay before the boot-time pass, after the other wiki jobs settled. */
|
|
2150
|
+
readonly BOOT_DELAY_MS: number;
|
|
2151
|
+
/** A terminal event waits this long before the record is assembled (ticket sync, verify item, evidence land first). */
|
|
2152
|
+
readonly EVENT_DELAY_MS: number;
|
|
2153
|
+
/** Catch-up looks at items that ended within this many days. */
|
|
2154
|
+
readonly CATCHUP_WINDOW_DAYS: 7;
|
|
2155
|
+
/** Cap on records written per pass (the rest wait for the next tick). */
|
|
2156
|
+
readonly CATCHUP_MAX_PER_PASS: 200;
|
|
2157
|
+
/** A record waiting for the owner's OK on a ticket is written anyway after this long. */
|
|
2158
|
+
readonly DEFER_MAX_MS: number;
|
|
2159
|
+
/** An item parked in `blocked` for longer than this gets a blocked record. */
|
|
2160
|
+
readonly BLOCKED_AFTER_MS: number;
|
|
2161
|
+
/** Hard cap on one record's body (the `meta:` line always fits). */
|
|
2162
|
+
readonly MAX_CHARS: 2500;
|
|
2163
|
+
/** Characters of the ask quoted. */
|
|
2164
|
+
readonly QUOTE_MAX_CHARS: 160;
|
|
2165
|
+
/** Characters of the result summary kept. */
|
|
2166
|
+
readonly DID_MAX_CHARS: 400;
|
|
2167
|
+
/** Cap on output lines and characters per line. */
|
|
2168
|
+
readonly MAX_OUTPUTS: 8;
|
|
2169
|
+
readonly OUTPUT_MAX_CHARS: 160;
|
|
2170
|
+
/** Cap on error lines and characters per line. */
|
|
2171
|
+
readonly MAX_ERRORS: 5;
|
|
2172
|
+
readonly ERROR_MAX_CHARS: 160;
|
|
2173
|
+
/** Cap on helper lines and characters per line. */
|
|
2174
|
+
readonly MAX_HELPERS: 6;
|
|
2175
|
+
readonly HELPER_MAX_CHARS: 120;
|
|
2176
|
+
/** Bytes read from the end of the agent's transcript for the task window. */
|
|
2177
|
+
readonly TRANSCRIPT_TAIL_BYTES: number;
|
|
2178
|
+
/** Transcripts are consulted only for items that ended within this long (older windows are not in the tail). */
|
|
2179
|
+
readonly TRANSCRIPT_MAX_AGE_MS: number;
|
|
2180
|
+
/** Slack around the task window when slicing the transcript. */
|
|
2181
|
+
readonly TRANSCRIPT_WINDOW_SLACK_MS: number;
|
|
2182
|
+
/** Cap on trace events read per record. */
|
|
2183
|
+
readonly TRACE_MAX_EVENTS: 2000;
|
|
2184
|
+
/** State file (recorded keys), under CREWLY_HOME. */
|
|
2185
|
+
readonly STATE_FILE: "work-records-state.json";
|
|
2186
|
+
/** Cap on remembered record keys. */
|
|
2187
|
+
readonly STATE_MAX_KEYS: 5000;
|
|
2188
|
+
/** Kill switch env var; the value `false` disables work records. */
|
|
2189
|
+
readonly ENV_KILL_SWITCH: "CREWLY_WORK_RECORDS";
|
|
2190
|
+
/** Source type of a record entry in the vault log. */
|
|
2191
|
+
readonly SOURCE_TYPE: "work_record";
|
|
2192
|
+
/** Prefix of a record's `ref:` (`work-record:<workItemId>#<phase>`). */
|
|
2193
|
+
readonly REF_PREFIX: "work-record:";
|
|
2194
|
+
/** Records the startup briefing lists. */
|
|
2195
|
+
readonly BRIEFING_MAX: 5;
|
|
2196
|
+
/** Characters of one record line in the briefing. */
|
|
2197
|
+
readonly BRIEFING_LINE_MAX_CHARS: 240;
|
|
2198
|
+
/** WorkItem types that are bookkeeping, never recorded. */
|
|
2199
|
+
readonly SKIPPED_TYPES: readonly string[];
|
|
2200
|
+
};
|
|
2201
|
+
/**
|
|
2202
|
+
* Startup briefing content (#1345): wiki pages, recent lessons and open
|
|
2203
|
+
* owner threads an agent gets at registration, on top of its session memory.
|
|
2204
|
+
*/
|
|
2205
|
+
export declare const STARTUP_BRIEFING_CONSTANTS: {
|
|
2206
|
+
/** Hard cap on the whole section. */
|
|
2207
|
+
readonly MAX_CHARS: 12000;
|
|
2208
|
+
/** Cap on the wiki index excerpt. */
|
|
2209
|
+
readonly INDEX_MAX_CHARS: 4000;
|
|
2210
|
+
/** Most-recently-changed topic pages listed. */
|
|
2211
|
+
readonly RECENT_PAGES: 5;
|
|
2212
|
+
/** Characters of a page summary shown. */
|
|
2213
|
+
readonly PAGE_SUMMARY_MAX_CHARS: 240;
|
|
2214
|
+
/** Lessons from this many days back. */
|
|
2215
|
+
readonly LESSONS_DAYS: 7;
|
|
2216
|
+
/** Cap on lessons listed. */
|
|
2217
|
+
readonly LESSONS_MAX: 12;
|
|
2218
|
+
/** Characters of one lesson shown. */
|
|
2219
|
+
readonly LESSON_MAX_CHARS: 300;
|
|
2220
|
+
/** Cap on owner threads listed. */
|
|
2221
|
+
readonly THREADS_MAX: 5;
|
|
2222
|
+
/** Characters of a thread preview shown. */
|
|
2223
|
+
readonly THREAD_PREVIEW_MAX_CHARS: 160;
|
|
2224
|
+
/** Section heading. */
|
|
2225
|
+
readonly HEADING: "## Your Project Knowledge";
|
|
2053
2226
|
};
|
|
2054
2227
|
/**
|
|
2055
2228
|
* Standing-answer pages (#816): a few question-anchored pages per scope,
|
|
@@ -2175,6 +2348,10 @@ export declare const SLACK_TYPING_CONSTANTS: {
|
|
|
2175
2348
|
readonly TIMEOUT_TEXT: "⏱ {name} is still working on this — the reply will follow.";
|
|
2176
2349
|
/** How long a placeholder waits for the reply before it is edited to TIMEOUT_TEXT */
|
|
2177
2350
|
readonly TIMEOUT_MS: number;
|
|
2351
|
+
/** Slack errors meaning the agent's bot cannot post in that channel at all (not a member of a private channel, or gone) */
|
|
2352
|
+
readonly UNREACHABLE_CHANNEL_ERROR: RegExp;
|
|
2353
|
+
/** After such an error, no placeholder is tried for that agent in that channel for this long (ms) */
|
|
2354
|
+
readonly UNREACHABLE_CHANNEL_MS: number;
|
|
2178
2355
|
/** A timed-out placeholder is still removed by a reply arriving within this long (ms) */
|
|
2179
2356
|
readonly EXPIRED_KEEP_MS: number;
|
|
2180
2357
|
/**
|
|
@@ -2259,9 +2436,15 @@ export declare const SLACK_THREAD_CONTEXT_CONSTANTS: {
|
|
|
2259
2436
|
/** Whether the Slack context block is fetched at all */
|
|
2260
2437
|
readonly ENABLED: true;
|
|
2261
2438
|
/** Most messages shown (newest kept) */
|
|
2262
|
-
readonly MAX_MESSAGES:
|
|
2263
|
-
/**
|
|
2264
|
-
|
|
2439
|
+
readonly MAX_MESSAGES: 40;
|
|
2440
|
+
/**
|
|
2441
|
+
* Character budget of the whole block's message lines (newest kept).
|
|
2442
|
+
* 5 000 → 12 000 (crewly#1344): with the thread root always shown and
|
|
2443
|
+
* 1 500 characters per message, eight messages no longer fit in 5 000,
|
|
2444
|
+
* and the owner approved the larger prompt over agents that could not see
|
|
2445
|
+
* what the thread was about.
|
|
2446
|
+
*/
|
|
2447
|
+
readonly MAX_CHARS: 12000;
|
|
2265
2448
|
/** Characters kept per message before clipping */
|
|
2266
2449
|
readonly PER_MESSAGE_CHARS: 4000;
|
|
2267
2450
|
/**
|
|
@@ -2269,11 +2452,18 @@ export declare const SLACK_THREAD_CONTEXT_CONSTANTS: {
|
|
|
2269
2452
|
* compact "thread so far", not a transcript: a 4 000-char draft pasted in
|
|
2270
2453
|
* the thread made the prompt 13.5k chars, the busy-agent note cut it at
|
|
2271
2454
|
* 6 000, and the newest posts and the owner's ping were the part cut
|
|
2272
|
-
* (2026-10-08, #content-team).
|
|
2455
|
+
* (2026-10-08, #content-team). 500 → 1 500 (crewly#1344): 500 cut most
|
|
2456
|
+
* owner briefs mid-sentence; the busy-agent note now keeps the block's end.
|
|
2273
2457
|
*/
|
|
2274
|
-
readonly BLOCK_PER_MESSAGE_CHARS:
|
|
2458
|
+
readonly BLOCK_PER_MESSAGE_CHARS: 1500;
|
|
2275
2459
|
/** The block shows at least this many of the newest messages, or everything since the agent's own last post when that is more */
|
|
2276
2460
|
readonly BLOCK_RECENT_MESSAGES: 8;
|
|
2461
|
+
/**
|
|
2462
|
+
* The thread's root message is always in the block, even when it is
|
|
2463
|
+
* older than the window — it says what the thread is about (crewly#1344).
|
|
2464
|
+
* Shown with this marker and a line saying how many messages were skipped.
|
|
2465
|
+
*/
|
|
2466
|
+
readonly ROOT_MARK: "(thread root)";
|
|
2277
2467
|
/** Marks a line addressed to the agent (or a person's post) after its last post in the thread */
|
|
2278
2468
|
readonly UNANSWERED_MARK: "⟵ not answered by you yet";
|
|
2279
2469
|
/**
|
|
@@ -3370,12 +3560,24 @@ export declare const ORC_CONVERSATION_CONSTANTS: {
|
|
|
3370
3560
|
readonly FRESH_CONTEXT_TOKENS: 300000;
|
|
3371
3561
|
/** How much of the old transcript's end is read to find the last turn's size */
|
|
3372
3562
|
readonly TAIL_BYTES: number;
|
|
3373
|
-
/**
|
|
3374
|
-
|
|
3563
|
+
/**
|
|
3564
|
+
* Messages kept in the handover file, newest last. Raised 40 → 60 with
|
|
3565
|
+
* the per-message and total caps (crewly#1344): a 16k-character tail of
|
|
3566
|
+
* plain words lost the tool traffic entirely, and agents that were reset
|
|
3567
|
+
* several times a day "remembered worse" than plain Claude Code.
|
|
3568
|
+
*/
|
|
3569
|
+
readonly HANDOVER_MESSAGES: 60;
|
|
3375
3570
|
/** Characters kept per handover message */
|
|
3376
|
-
readonly HANDOVER_MESSAGE_CHARS:
|
|
3377
|
-
/** Total cap on the handover file's body */
|
|
3378
|
-
readonly HANDOVER_MAX_CHARS:
|
|
3571
|
+
readonly HANDOVER_MESSAGE_CHARS: 2000;
|
|
3572
|
+
/** Total cap on the handover file's body (~40k characters, ~10k tokens) */
|
|
3573
|
+
readonly HANDOVER_MAX_CHARS: 40000;
|
|
3574
|
+
/**
|
|
3575
|
+
* Characters kept of each tool call / tool result in a handover: the tool
|
|
3576
|
+
* name plus the start of its input or output, one line each, so the new
|
|
3577
|
+
* conversation knows WHAT was done (files read, commands run), not just
|
|
3578
|
+
* what was said about it. Images stay a described placeholder.
|
|
3579
|
+
*/
|
|
3580
|
+
readonly HANDOVER_TOOL_RESULT_CHARS: 200;
|
|
3379
3581
|
/** Directory under CREWLY_HOME for handover files */
|
|
3380
3582
|
readonly HANDOVER_DIR: "handover";
|
|
3381
3583
|
/** A plain restart hands over the previous conversation only when its transcript was written within this window */
|
|
@@ -3385,7 +3587,7 @@ export declare const ORC_CONVERSATION_CONSTANTS: {
|
|
|
3385
3587
|
/** How much of a transcript's start is read to check it belongs to a session (cwd-wide fallback) */
|
|
3386
3588
|
readonly OWNERSHIP_HEAD_BYTES: number;
|
|
3387
3589
|
/** Most of an earlier handover carried into a new one when the source conversation is unreadable */
|
|
3388
|
-
readonly CHAINED_HANDOVER_MAX_CHARS:
|
|
3590
|
+
readonly CHAINED_HANDOVER_MAX_CHARS: 40000;
|
|
3389
3591
|
};
|
|
3390
3592
|
/** Pointer header (open work, suggested skills) written at the top of a handover file. */
|
|
3391
3593
|
export declare const HANDOVER_POINTERS_CONSTANTS: {
|
|
@@ -3447,17 +3649,43 @@ export declare const FRESH_TASK_CONVERSATION_CONSTANTS: {
|
|
|
3447
3649
|
readonly NEW_SESSION_POLL_MS: 1000;
|
|
3448
3650
|
/** Cap on the handover text stored through memory (mirrored into the wiki) */
|
|
3449
3651
|
readonly MEMORY_MAX_CHARS: 4000;
|
|
3450
|
-
/**
|
|
3451
|
-
|
|
3652
|
+
/**
|
|
3653
|
+
* Members start fresh at launch when their last turn carried this many
|
|
3654
|
+
* tokens. Env: CREWLY_MEMBER_FRESH_CONTEXT_TOKENS.
|
|
3655
|
+
*
|
|
3656
|
+
* Above Claude Code's own auto-compact window (CLAUDE_CODE_CONTEXT, 350k)
|
|
3657
|
+
* on purpose (crewly#1344): Claude compacts its conversation itself and
|
|
3658
|
+
* keeps a far better summary than a handover tail, so Crewly's reset is
|
|
3659
|
+
* only a safety net for a conversation that compaction did not bring
|
|
3660
|
+
* down. At the old 150k the audit of 2026-10-16 counted 58 fresh starts
|
|
3661
|
+
* in 48 h, every one of them replacing a live conversation with 16k
|
|
3662
|
+
* characters of tail.
|
|
3663
|
+
*/
|
|
3664
|
+
readonly MEMBER_FRESH_CONTEXT_TOKENS: 400000;
|
|
3665
|
+
/**
|
|
3666
|
+
* The smallest conversation a new-task `/clear` may close (last-turn
|
|
3667
|
+
* tokens): the same as {@link MEMBER_FRESH_CONTEXT_TOKENS}, read through
|
|
3668
|
+
* `memberFreshContextTokens()` so the env override applies to both. A
|
|
3669
|
+
* conversation under it is cheap to keep and is what the agent remembers
|
|
3670
|
+
* by; 137 clears in 48 h, some at 56k, were the cost of not having a floor.
|
|
3671
|
+
*/
|
|
3672
|
+
readonly MIN_CLEAR_CONTEXT_TOKENS: 400000;
|
|
3673
|
+
/**
|
|
3674
|
+
* A member the owner spoke to this recently (an owner thread the sentinel
|
|
3675
|
+
* watches: the owner's last message, or an open promise) is never cleared
|
|
3676
|
+
* for a new task — the clear would wipe the conversation the owner is in.
|
|
3677
|
+
*/
|
|
3678
|
+
readonly OWNER_CONVERSATION_ACTIVE_MS: number;
|
|
3452
3679
|
/**
|
|
3453
3680
|
* Idle-boundary context cap: a Claude Code member (never the orchestrator)
|
|
3454
3681
|
* whose last turn carried more than this many tokens is saved (handover +
|
|
3455
3682
|
* wiki) and cleared between turns, then re-oriented on its WorkItem. One
|
|
3456
|
-
* long task can otherwise run 1000+ turns at 650k–965k context.
|
|
3457
|
-
*
|
|
3458
|
-
*
|
|
3683
|
+
* long task can otherwise run 1000+ turns at 650k–965k context. Above the
|
|
3684
|
+
* fresh-start threshold and Claude Code's 350k auto-compact (crewly#1344),
|
|
3685
|
+
* so compaction runs first and this only catches a conversation that kept
|
|
3686
|
+
* growing through it.
|
|
3459
3687
|
*/
|
|
3460
|
-
readonly MEMBER_CONTEXT_CAP_TOKENS:
|
|
3688
|
+
readonly MEMBER_CONTEXT_CAP_TOKENS: 450000;
|
|
3461
3689
|
/** Env override for {@link MEMBER_CONTEXT_CAP_TOKENS}; `0` disables the cap */
|
|
3462
3690
|
readonly MEMBER_CONTEXT_CAP_ENV: "CREWLY_MEMBER_CONTEXT_CAP_TOKENS";
|
|
3463
3691
|
/** At most one context-cap clear per session in this window */
|
|
@@ -7149,6 +7377,44 @@ export declare const TL_DELEGATION_CONSTANTS: {
|
|
|
7149
7377
|
/** Accepted tool_name from the hook */
|
|
7150
7378
|
readonly TOOL_NAME_PATTERN: RegExp;
|
|
7151
7379
|
};
|
|
7380
|
+
/**
|
|
7381
|
+
* Agent-to-agent coordination in Slack rooms (crewly#1340): local
|
|
7382
|
+
* coordination stays inside Crewly, cross-machine coordination goes in a
|
|
7383
|
+
* thread, ticket ids never reach Slack, near-identical repeats are dropped.
|
|
7384
|
+
*/
|
|
7385
|
+
export declare const AGENT_COORDINATION_CONSTANTS: {
|
|
7386
|
+
/** chat-v2 message metadata: this agent post was delivered inside Crewly only (value: the reason) */
|
|
7387
|
+
readonly INTERNAL_METADATA_KEY: "agentCoordinationInternal";
|
|
7388
|
+
/** A repeat to the same recipients in the same room within this window is dropped (ms) */
|
|
7389
|
+
readonly DUPLICATE_WINDOW_MS: number;
|
|
7390
|
+
/** Character-bigram similarity at which two messages count as the same message */
|
|
7391
|
+
readonly DUPLICATE_SIMILARITY: 0.85;
|
|
7392
|
+
/** Messages remembered per sender/recipients/room */
|
|
7393
|
+
readonly DUPLICATE_HISTORY: 10;
|
|
7394
|
+
/** Sender/recipients/room keys remembered at most */
|
|
7395
|
+
readonly DUPLICATE_MAX_KEYS: 500;
|
|
7396
|
+
/** Request ticket prefix — always internal (`TKT-187`) */
|
|
7397
|
+
readonly REQUEST_TICKET_PREFIX: "TKT";
|
|
7398
|
+
/** Ticket prefixes are re-read at most this often (ms) */
|
|
7399
|
+
readonly TICKET_PREFIX_CACHE_MS: number;
|
|
7400
|
+
/** Who asked a helper is remembered this long, to hand back a reply it cannot post (ms) */
|
|
7401
|
+
readonly ASKED_BY_TTL_MS: number;
|
|
7402
|
+
/** Entries of the asked-by map at most */
|
|
7403
|
+
readonly ASKED_BY_MAX: 500;
|
|
7404
|
+
/** Longest wait for the directory when telling agents elsewhere from people (ms) */
|
|
7405
|
+
readonly DIRECTORY_LOOKUP_MS: 2000;
|
|
7406
|
+
/** Coordination threads (one per room per UTC day) remembered at most */
|
|
7407
|
+
readonly COORDINATION_THREADS_MAX: 200;
|
|
7408
|
+
/**
|
|
7409
|
+
* Rules for every agent prompted from a Slack room. 2026-10-16: three
|
|
7410
|
+
* agents on one machine flooded #content-team with top-level coordination,
|
|
7411
|
+
* repeated one conclusion three times, quoted ticket ids, and promised to
|
|
7412
|
+
* watch a log "every 3h".
|
|
7413
|
+
*/
|
|
7414
|
+
readonly PROMPT_RULES: string;
|
|
7415
|
+
/** Added when the message came from a colleague inside Crewly (never in Slack). */
|
|
7416
|
+
readonly INTERNAL_PROMPT_LINE: "This message came from a colleague inside Crewly and is not in Slack: reply with the command above — your answer goes to them, not to the room.";
|
|
7417
|
+
};
|
|
7152
7418
|
/**
|
|
7153
7419
|
* Harness-owned reply routing (specs/2026-10-02-harness-owned-routing.md).
|
|
7154
7420
|
*/
|
|
@@ -7973,6 +8239,19 @@ export declare const OWNER_THREAD_SENTINEL_CONSTANTS: {
|
|
|
7973
8239
|
readonly BOOT_CARD_MAX_AGE_MS: number;
|
|
7974
8240
|
/** A card goes into an owner thread only when that thread was active this recently */
|
|
7975
8241
|
readonly CARD_THREAD_MAX_AGE_MS: number;
|
|
8242
|
+
/**
|
|
8243
|
+
* A watched thread with no owner activity for this long is dropped at
|
|
8244
|
+
* load and never counted as owed again (crewly#1344): a thread from 10-07
|
|
8245
|
+
* whose owner last wrote on 10-08 was re-stamped "restarted" on every boot
|
|
8246
|
+
* and listed as "work in hand" for ten days.
|
|
8247
|
+
*/
|
|
8248
|
+
readonly STALE_AFTER_MS: number;
|
|
8249
|
+
/**
|
|
8250
|
+
* An agent counts as "in an owner conversation" while the owner wrote to
|
|
8251
|
+
* it (or it promised the owner something) in a watched thread within this
|
|
8252
|
+
* window — the per-task clear and the slot-cap eviction spare it (crewly#1344).
|
|
8253
|
+
*/
|
|
8254
|
+
readonly OWNER_ACTIVE_MS: number;
|
|
7976
8255
|
};
|
|
7977
8256
|
/**
|
|
7978
8257
|
* Drive mode briefing (specs/2026-10-08-drive-mode.md): the owner's queue of
|
|
@@ -8347,6 +8626,23 @@ export declare const TEAM_MOVE_CONSTANTS: {
|
|
|
8347
8626
|
readonly NON_MACHINE_INSTANCE_PATTERN: "^crewly-cloud";
|
|
8348
8627
|
/** Newest handover notes kept per agent. */
|
|
8349
8628
|
readonly HANDOVERS_PER_AGENT: 10;
|
|
8629
|
+
/**
|
|
8630
|
+
* Largest Claude Code transcript (the agent's current conversation) that
|
|
8631
|
+
* travels with a move, per agent (crewly#1344). Only the latest
|
|
8632
|
+
* conversation per agent is packaged, under `transcripts/<session>/`, and
|
|
8633
|
+
* resumed on the target; a bigger one is left behind and listed.
|
|
8634
|
+
*/
|
|
8635
|
+
readonly TRANSCRIPT_MAX_BYTES: number;
|
|
8636
|
+
/** Newest chat-v2 messages of the team's Slack room carried in the package (per channel). */
|
|
8637
|
+
readonly CHAT_MESSAGES_PER_CHANNEL: 500;
|
|
8638
|
+
/** Total cap on carried chat messages' content (bytes), all channels together. */
|
|
8639
|
+
readonly CHAT_MESSAGES_MAX_BYTES: number;
|
|
8640
|
+
/**
|
|
8641
|
+
* Suffix of the folder a project is given on the target when the team
|
|
8642
|
+
* lists a project the package did not carry: a clearly flagged placeholder
|
|
8643
|
+
* the owner is told to re-point (never silently dropped, crewly#1344).
|
|
8644
|
+
*/
|
|
8645
|
+
readonly PLACEHOLDER_PROJECT_SUFFIX: "-NEEDS-PATH";
|
|
8350
8646
|
/** Largest text file that is path-rewritten and secret-scanned in memory. */
|
|
8351
8647
|
readonly TEXT_FILE_MAX_BYTES: number;
|
|
8352
8648
|
/** Free disk the target needs beyond the package (bytes): 2x package + this. */
|