crewly 1.20.290 → 1.20.291
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/domain-sops/expert-distillation.sop.md +45 -45
- package/dist/backend/backend/src/constants.d.ts +4 -4
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +21 -21
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/bundle/bundle.controller.js +1 -1
- package/dist/backend/backend/src/controllers/bundle/bundle.controller.js.map +1 -1
- package/dist/backend/backend/src/services/bundle/bundle-apply.service.js +45 -45
- package/dist/backend/backend/src/services/bundle/bundle-apply.service.js.map +1 -1
- package/dist/backend/backend/src/services/bundle/bundle-placeholders.js +7 -7
- package/dist/backend/backend/src/services/bundle/bundle-placeholders.js.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +3 -3
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +19 -19
- package/dist/backend/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
- package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts +1 -1
- package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js +1 -1
- package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.js +2 -2
- package/dist/backend/backend/src/services/messaging/owner-message-watchdog.wiring.js.map +1 -1
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.js +1 -1
- package/dist/backend/backend/src/services/onboarding/onboarding-checklist.service.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +1 -1
- 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.js +1 -1
- package/dist/backend/backend/src/services/slack/slack-thread-context.service.js.map +1 -1
- 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 +2 -2
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/ticket-channel-hooks.d.ts +3 -3
- package/dist/backend/backend/src/services/v3/ticket-channel-hooks.js +7 -7
- package/dist/backend/backend/src/services/v3/ticket-channel-hooks.js.map +1 -1
- package/dist/backend/backend/src/services/v3/ticket-intake.service.d.ts +2 -2
- package/dist/backend/backend/src/services/v3/ticket-intake.service.js +1 -1
- package/dist/backend/backend/src/services/v3/ticket-review.service.js +5 -5
- package/dist/backend/backend/src/services/v3/ticket-review.service.js.map +1 -1
- package/dist/backend/backend/src/utils/incomplete-turn.utils.js +6 -6
- package/dist/backend/backend/src/utils/incomplete-turn.utils.js.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +4 -4
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +21 -21
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/bundle/bundle-apply.service.js +45 -45
- package/dist/cli/backend/src/services/bundle/bundle-apply.service.js.map +1 -1
- package/dist/cli/backend/src/services/bundle/bundle-placeholders.js +7 -7
- package/dist/cli/backend/src/services/bundle/bundle-placeholders.js.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.d.ts +3 -3
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js +19 -19
- package/dist/cli/backend/src/services/chat-v2/chat-v2.dispatcher.service.js.map +1 -1
- package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts +1 -1
- package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js +1 -1
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.js +1 -1
- package/dist/cli/backend/src/services/onboarding/onboarding-checklist.service.js.map +1 -1
- package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +1 -1
- 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.js +1 -1
- package/dist/cli/backend/src/services/slack/slack-thread-context.service.js.map +1 -1
- 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 +2 -2
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
- package/dist/cli/backend/src/services/v3/ticket-channel-hooks.d.ts +3 -3
- package/dist/cli/backend/src/services/v3/ticket-channel-hooks.js +7 -7
- package/dist/cli/backend/src/services/v3/ticket-channel-hooks.js.map +1 -1
- package/dist/cli/backend/src/services/v3/ticket-intake.service.d.ts +2 -2
- package/dist/cli/backend/src/services/v3/ticket-intake.service.js +1 -1
- package/dist/cli/backend/src/services/v3/ticket-review.service.js +5 -5
- package/dist/cli/backend/src/services/v3/ticket-review.service.js.map +1 -1
- package/dist/cli/backend/src/utils/incomplete-turn.utils.js +6 -6
- package/dist/cli/backend/src/utils/incomplete-turn.utils.js.map +1 -1
- package/dist/cli/cli/src/commands/deploy-bundle.js +4 -4
- package/dist/cli/cli/src/commands/deploy-bundle.js.map +1 -1
- package/dist/cli/cli/src/commands/onboard.js +1 -1
- package/dist/cli/cli/src/commands/onboard.js.map +1 -1
- package/package.json +1 -1
- package/packages/crewly-agent/src/runtime/reply-tool-calls.ts +0 -3
|
@@ -1696,10 +1696,10 @@ export const SLACK_NOTIFICATION_FALLBACK_MAX_CANDIDATES = 4;
|
|
|
1696
1696
|
* before the work, so the owner is not left with only "is working on it…".
|
|
1697
1697
|
* `{cmd}` is the interim form of the agent's reply skill.
|
|
1698
1698
|
*/
|
|
1699
|
-
export const CHAT_REPLY_PACING_HINT = '
|
|
1700
|
-
'
|
|
1701
|
-
'
|
|
1702
|
-
'
|
|
1699
|
+
export const CHAT_REPLY_PACING_HINT = 'Reply pacing: size the job before you start. If you can finish it in a minute or two (a quick lookup, a one-line answer, a single edit) → just do it and send one reply when done. ' +
|
|
1700
|
+
'If it takes longer (several steps, running commands, opening a browser, reading a lot of material, expected to take more than about 3 minutes) → **first** reply with a sentence or two ({cmd}): what you understand the ask to be, how you plan to do it, roughly how long it will take, and anything you need them to confirm; ' +
|
|
1701
|
+
'then start, and send the final reply when done. Do not post progress updates in between unless you hit a blocker or the plan changes. ' +
|
|
1702
|
+
'When the person is answering a question you asked, or gave you new information or a decision, reply with at least a short acknowledgement (e.g. "Got it, going with X") — silence makes them think nobody saw it; only closers like "ok" or "thanks" may go unanswered.';
|
|
1703
1703
|
/** Unassigned work goes to a decider and moves up when not taken (owner, 2026-09-24). */
|
|
1704
1704
|
export const UNASSIGNED_ROUTE_CONSTANTS = {
|
|
1705
1705
|
/** A decider has this long to take an item before it moves one level up (ms) */
|
|
@@ -2300,8 +2300,8 @@ export const OWNER_MESSAGE_WATCHDOG_CONSTANTS = {
|
|
|
2300
2300
|
'👍', '🙏', '👌', '✅', '❤️', '🙂', '😊', '👍👍',
|
|
2301
2301
|
],
|
|
2302
2302
|
/** Nudge delivered to the responsible agent ({waited} = minutes) */
|
|
2303
|
-
NUDGE_TEXT: '[REMINDER]
|
|
2304
|
-
'
|
|
2303
|
+
NUDGE_TEXT: '[REMINDER] This message from the owner has gone {waited} minutes without a reply. Reply to it now: `{replyCmd}` — it is sent automatically back to where the message came from. ' +
|
|
2304
|
+
'If you already answered elsewhere, or it genuinely needs no reply, run `{noneCmd}`.',
|
|
2305
2305
|
/**
|
|
2306
2306
|
* Note texts (from Crewly's own bot), English like the rest of the
|
|
2307
2307
|
* owner-facing UI. {name} = agent display name. The login note names the
|
|
@@ -5483,17 +5483,17 @@ export const TICKET_CONSTANTS = {
|
|
|
5483
5483
|
SLACK_DISMISS_ACTION_ID: 'ticket_dismiss',
|
|
5484
5484
|
/** Receipt texts */
|
|
5485
5485
|
RECEIPT: {
|
|
5486
|
-
RECORDED: (tkt) =>
|
|
5487
|
-
DISMISSED: (tkt) => `${tkt}
|
|
5486
|
+
RECORDED: (tkt) => `Recorded as ${tkt}`,
|
|
5487
|
+
DISMISSED: (tkt) => `${tkt} is no longer tracked`,
|
|
5488
5488
|
/** chat-v2 receipt once the ticket is accepted */
|
|
5489
|
-
DONE: (tkt) => `${tkt}
|
|
5489
|
+
DONE: (tkt) => `${tkt} is done`,
|
|
5490
5490
|
/** Slack receipt: this reaction on the owner's message (no reply, no notification) */
|
|
5491
5491
|
REACTION: 'ticket',
|
|
5492
5492
|
/** Slack: the 🎫 becomes this once the ticket is accepted */
|
|
5493
5493
|
DONE_REACTION: 'white_check_mark',
|
|
5494
5494
|
/**
|
|
5495
5495
|
* Receipts are off (owner, 2026-09-24): tickets are Crewly's own record
|
|
5496
|
-
* of the work — no 🎫 / ✅ /
|
|
5496
|
+
* of the work — no 🎫 / ✅ / "Recorded as TKT-…" in the owner's conversations.
|
|
5497
5497
|
*/
|
|
5498
5498
|
ENABLED: false,
|
|
5499
5499
|
},
|
|
@@ -5572,9 +5572,9 @@ export const TICKET_CONSTANTS = {
|
|
|
5572
5572
|
/** 「打回 <reason>」 — send it back; group 2 is the reason */
|
|
5573
5573
|
REJECT_PATTERN: /^\s*(打回|退回|重做|不通过|reject(ed)?|redo)\s*[::,,。.\-—]*\s*([\s\S]*)$/i,
|
|
5574
5574
|
/** Reason recorded when 打回 came without one */
|
|
5575
|
-
REJECT_NO_REASON: '
|
|
5575
|
+
REJECT_NO_REASON: '(no reason given)',
|
|
5576
5576
|
/** WorkItem title for a rework sent from the board */
|
|
5577
|
-
REWORK_TITLE: (tkt) =>
|
|
5577
|
+
REWORK_TITLE: (tkt) => `Sent back ${tkt}`,
|
|
5578
5578
|
},
|
|
5579
5579
|
/**
|
|
5580
5580
|
* Follow-ups vs new tickets (owner, 2026-09-28): an answer to an agent's
|
|
@@ -5938,7 +5938,7 @@ export const ONBOARDING_CONSTANTS = {
|
|
|
5938
5938
|
/** Longest first task accepted */
|
|
5939
5939
|
FIRST_TASK_MAX_LENGTH: 4000,
|
|
5940
5940
|
/** First line of the message the orchestrator receives for a first task */
|
|
5941
|
-
FIRST_TASK_HEADER: '[
|
|
5941
|
+
FIRST_TASK_HEADER: '[Initial setup · first task]',
|
|
5942
5942
|
/** Chat metadata `source` of a first task sent from setup */
|
|
5943
5943
|
FIRST_TASK_SOURCE: 'onboarding_first_task',
|
|
5944
5944
|
/** Query parameter that opens `/setup` at a step (e.g. `/setup?step=cloud`) */
|
|
@@ -5987,13 +5987,13 @@ export const BUNDLE_CONSTANTS = {
|
|
|
5987
5987
|
STEP_ORDER: ['team', 'norms', 'skills', 'connectors', 'slack', 'schedules', 'first_week'],
|
|
5988
5988
|
/** Owner-facing step labels */
|
|
5989
5989
|
STEP_LABELS: {
|
|
5990
|
-
team: '
|
|
5991
|
-
norms: '
|
|
5992
|
-
skills: '
|
|
5993
|
-
connectors: '
|
|
5994
|
-
slack: '
|
|
5995
|
-
schedules: '
|
|
5996
|
-
first_week: '
|
|
5990
|
+
team: 'Set up the team',
|
|
5991
|
+
norms: 'Write team norms and SOPs',
|
|
5992
|
+
skills: 'Install skills',
|
|
5993
|
+
connectors: 'Check the services to connect',
|
|
5994
|
+
slack: 'Create Slack channels',
|
|
5995
|
+
schedules: 'Schedule recurring tasks',
|
|
5996
|
+
first_week: 'Plan the first week of work',
|
|
5997
5997
|
},
|
|
5998
5998
|
/** Why a step is waiting (status `pending`) */
|
|
5999
5999
|
PENDING_REASONS: {
|
|
@@ -6015,7 +6015,7 @@ export const BUNDLE_CONSTANTS = {
|
|
|
6015
6015
|
/** Chat metadata `source` of a first-week task */
|
|
6016
6016
|
FIRST_WEEK_SOURCE: 'bundle_first_week',
|
|
6017
6017
|
/** First line of a first-week task the orchestrator receives */
|
|
6018
|
-
FIRST_WEEK_HEADER: '[
|
|
6018
|
+
FIRST_WEEK_HEADER: '[Solution bundle · week one]',
|
|
6019
6019
|
/** How often the backend delivers due first-week tasks and resumes waiting deployments */
|
|
6020
6020
|
TICK_INTERVAL_MS: 5 * 60 * 1000,
|
|
6021
6021
|
/** How often `crewly deploy-bundle` polls a running backend's job */
|