crewly 1.20.147 → 1.20.148
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/roles/developer/prompt.md +2 -1
- package/config/roles/orchestrator/prompt.md +3 -2
- package/config/roles/product-manager/prompt.md +2 -1
- package/config/roles/team-leader/tl-addon.md +11 -2
- package/config/skills/team-leader/set-member-model/SKILL.md +60 -0
- package/config/skills/team-leader/set-member-model/execute.sh +55 -0
- package/config/skills/team-leader/set-member-model/execute.test.sh +76 -0
- package/dist/backend/backend/src/constants.d.ts +56 -0
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +56 -0
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +21 -0
- package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +29 -10
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +9 -6
- 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 +22 -16
- 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 +248 -0
- package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js +572 -0
- package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -0
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.d.ts +8 -0
- 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 +12 -1
- package/dist/backend/backend/src/services/agent/runtime-session-recovery.js.map +1 -1
- package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.d.ts +10 -0
- 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 +41 -3
- package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js.map +1 -1
- package/dist/backend/backend/src/services/session/session-state-persistence.d.ts +9 -0
- package/dist/backend/backend/src/services/session/session-state-persistence.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/session-state-persistence.js +20 -0
- package/dist/backend/backend/src/services/session/session-state-persistence.js.map +1 -1
- package/dist/backend/backend/src/services/skill/skill-permission.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/skill/skill-permission.service.js +1 -0
- package/dist/backend/backend/src/services/skill/skill-permission.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts +25 -1
- 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 +82 -2
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +27 -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 +48 -2
- package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
- package/dist/backend/backend/src/types/settings.types.d.ts +8 -0
- package/dist/backend/backend/src/types/settings.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/settings.types.js +4 -0
- package/dist/backend/backend/src/types/settings.types.js.map +1 -1
- package/dist/backend/backend/src/utils/member-default-model.utils.d.ts +66 -0
- package/dist/backend/backend/src/utils/member-default-model.utils.d.ts.map +1 -0
- package/dist/backend/backend/src/utils/member-default-model.utils.js +95 -0
- package/dist/backend/backend/src/utils/member-default-model.utils.js.map +1 -0
- package/dist/backend/backend/src/utils/trigger-workitem-dedupe.utils.d.ts +53 -0
- package/dist/backend/backend/src/utils/trigger-workitem-dedupe.utils.d.ts.map +1 -0
- package/dist/backend/backend/src/utils/trigger-workitem-dedupe.utils.js +75 -0
- package/dist/backend/backend/src/utils/trigger-workitem-dedupe.utils.js.map +1 -0
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +56 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +56 -0
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +9 -6
- 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 +22 -16
- package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.d.ts +8 -0
- 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 +12 -1
- package/dist/cli/backend/src/services/agent/runtime-session-recovery.js.map +1 -1
- package/dist/cli/backend/src/services/session/session-state-persistence.d.ts +9 -0
- package/dist/cli/backend/src/services/session/session-state-persistence.d.ts.map +1 -1
- package/dist/cli/backend/src/services/session/session-state-persistence.js +20 -0
- package/dist/cli/backend/src/services/session/session-state-persistence.js.map +1 -1
- package/dist/cli/backend/src/types/settings.types.d.ts +8 -0
- package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/settings.types.js +4 -0
- package/dist/cli/backend/src/types/settings.types.js.map +1 -1
- package/dist/cli/backend/src/utils/member-default-model.utils.d.ts +66 -0
- package/dist/cli/backend/src/utils/member-default-model.utils.d.ts.map +1 -0
- package/dist/cli/backend/src/utils/member-default-model.utils.js +95 -0
- package/dist/cli/backend/src/utils/member-default-model.utils.js.map +1 -0
- package/package.json +1 -1
|
@@ -257,13 +257,16 @@ export declare class AgentRegistrationService {
|
|
|
257
257
|
*/
|
|
258
258
|
private planSessionRecovery;
|
|
259
259
|
/**
|
|
260
|
-
* Decide whether
|
|
260
|
+
* Decide whether a Claude Code agent's stored conversation is too big to
|
|
261
261
|
* resume, and if so write the handover file its fresh one will read.
|
|
262
262
|
*
|
|
263
|
-
*
|
|
264
|
-
*
|
|
265
|
-
*
|
|
266
|
-
*
|
|
263
|
+
* The orchestrator's threshold is {@link orcFreshContextTokens} (300k);
|
|
264
|
+
* team members use {@link memberFreshContextTokens} (150k) — their tasks
|
|
265
|
+
* are narrower and a fresh conversation per task is the norm for them.
|
|
266
|
+
* Only Claude Code, and only here — at a launch — so a conversation is
|
|
267
|
+
* never cut in the middle of anything. Real state (tasks, teams, OKRs,
|
|
268
|
+
* wiki) lives in Crewly and is read back at startup; the handover keeps
|
|
269
|
+
* the tail of what was said.
|
|
267
270
|
*
|
|
268
271
|
* @param sessionName - Session being launched
|
|
269
272
|
* @param runtimeType - Its runtime
|
|
@@ -271,7 +274,7 @@ export declare class AgentRegistrationService {
|
|
|
271
274
|
* @param cwd - Its working directory
|
|
272
275
|
* @returns True when it should start fresh instead
|
|
273
276
|
*/
|
|
274
|
-
private
|
|
277
|
+
private closeOversizedConversation;
|
|
275
278
|
/**
|
|
276
279
|
* For a freshly launched Codex agent, learn its conversation id from the
|
|
277
280
|
* rollout file it writes right after start and persist it. Runs in the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-registration.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/agent-registration.service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,iCAAiC,EAAE,MAAM,yDAAyD,CAAC;AAM5G,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EACN,gBAAgB,EAMhB,WAAW,EAUX,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-registration.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/agent-registration.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ import { getCrewlyHomePath } from '../core/crewly-home.utils.js';
|
|
|
14
14
|
import { CREWLY_CONSTANTS, ENV_CONSTANTS, AGENT_TIMEOUTS, ORCHESTRATOR_SESSION_NAME, ORCHESTRATOR_ROLE, RUNTIME_TYPES, SESSION_COMMAND_DELAYS, SESSION_RECREATION_CONSTANTS, EVENT_DELIVERY_CONSTANTS, TERMINAL_PATTERNS, GEMINI_SHELL_MODE_CONSTANTS, GEMINI_STUCK_CONNECTIVITY_PATTERN, GEMINI_ERROR_STATE_CONSTANTS, REGISTRATION_DELIVERY_CONSTANTS, ORC_CONVERSATION_CONSTANTS, } from '../../constants.js';
|
|
15
15
|
import { delay } from '../../utils/async.utils.js';
|
|
16
16
|
import { buildRuntimeModelFlags } from '../../utils/runtime-model-flags.utils.js';
|
|
17
|
+
import { effectiveMemberModelId } from '../../utils/member-default-model.utils.js';
|
|
17
18
|
import { stripToolCallMarkup } from '../../utils/tool-call-markup.utils.js';
|
|
18
19
|
import { appendIncompleteNotice } from '../../utils/incomplete-turn.utils.js';
|
|
19
20
|
import { filterAgentTurnReply } from '../../utils/agent-reply-filter.utils.js';
|
|
@@ -35,7 +36,7 @@ import { isPromptLine, containsSpinnerOrWorkingIndicator, containsProcessingIndi
|
|
|
35
36
|
import { PtyActivityTrackerService } from './pty-activity-tracker.service.js';
|
|
36
37
|
import { synthesizeSlackConversationId } from '../chat-v2/legacy-dto.utils.js';
|
|
37
38
|
import { isRuntimeStartupBlockedError } from './runtime-startup-blocked.error.js';
|
|
38
|
-
import { buildHandoverSummary, claudeTranscriptPath, conversationExists, lastTurnContextTokens, orcFreshContextTokens, planRuntimeSessionFlags, waitForAntigravityConversationId, waitForCodexSessionId, } from './runtime-session-recovery.js';
|
|
39
|
+
import { buildHandoverSummary, claudeTranscriptPath, conversationExists, lastTurnContextTokens, orcFreshContextTokens, memberFreshContextTokens, planRuntimeSessionFlags, waitForAntigravityConversationId, waitForCodexSessionId, } from './runtime-session-recovery.js';
|
|
39
40
|
import { isTextInAntigravityInputBox } from './antigravity-runtime.service.js';
|
|
40
41
|
import { getLocalApiBaseUrl } from '../../utils/local-api-url.utils.js';
|
|
41
42
|
import { RegistrationFlowRegistry } from './registration-flow-registry.js';
|
|
@@ -767,10 +768,11 @@ export class AgentRegistrationService {
|
|
|
767
768
|
});
|
|
768
769
|
}
|
|
769
770
|
const storedSessionId = persistence?.getSessionId(sessionName) ?? null;
|
|
770
|
-
//
|
|
771
|
-
// at a
|
|
771
|
+
// A Claude Code agent (orchestrator or member) whose conversation has
|
|
772
|
+
// grown too big starts over here, at a launch, rather than re-reading it
|
|
773
|
+
// on every turn.
|
|
772
774
|
const freshInstead = autoResume && storedSessionId && cwd
|
|
773
|
-
? this.
|
|
775
|
+
? this.closeOversizedConversation(sessionName, runtimeType, storedSessionId, cwd)
|
|
774
776
|
: false;
|
|
775
777
|
const plan = planRuntimeSessionFlags({
|
|
776
778
|
runtimeType,
|
|
@@ -800,13 +802,16 @@ export class AgentRegistrationService {
|
|
|
800
802
|
return plan;
|
|
801
803
|
}
|
|
802
804
|
/**
|
|
803
|
-
* Decide whether
|
|
805
|
+
* Decide whether a Claude Code agent's stored conversation is too big to
|
|
804
806
|
* resume, and if so write the handover file its fresh one will read.
|
|
805
807
|
*
|
|
806
|
-
*
|
|
807
|
-
*
|
|
808
|
-
*
|
|
809
|
-
*
|
|
808
|
+
* The orchestrator's threshold is {@link orcFreshContextTokens} (300k);
|
|
809
|
+
* team members use {@link memberFreshContextTokens} (150k) — their tasks
|
|
810
|
+
* are narrower and a fresh conversation per task is the norm for them.
|
|
811
|
+
* Only Claude Code, and only here — at a launch — so a conversation is
|
|
812
|
+
* never cut in the middle of anything. Real state (tasks, teams, OKRs,
|
|
813
|
+
* wiki) lives in Crewly and is read back at startup; the handover keeps
|
|
814
|
+
* the tail of what was said.
|
|
810
815
|
*
|
|
811
816
|
* @param sessionName - Session being launched
|
|
812
817
|
* @param runtimeType - Its runtime
|
|
@@ -814,12 +819,13 @@ export class AgentRegistrationService {
|
|
|
814
819
|
* @param cwd - Its working directory
|
|
815
820
|
* @returns True when it should start fresh instead
|
|
816
821
|
*/
|
|
817
|
-
|
|
818
|
-
if (
|
|
822
|
+
closeOversizedConversation(sessionName, runtimeType, storedSessionId, cwd) {
|
|
823
|
+
if (runtimeType !== RUNTIME_TYPES.CLAUDE_CODE)
|
|
819
824
|
return false;
|
|
825
|
+
const isOrc = sessionName === ORCHESTRATOR_SESSION_NAME;
|
|
820
826
|
const transcript = claudeTranscriptPath({ sessionId: storedSessionId, cwd });
|
|
821
827
|
const tokens = lastTurnContextTokens(transcript);
|
|
822
|
-
const threshold = orcFreshContextTokens();
|
|
828
|
+
const threshold = isOrc ? orcFreshContextTokens() : memberFreshContextTokens();
|
|
823
829
|
if (tokens === null || tokens < threshold)
|
|
824
830
|
return false;
|
|
825
831
|
try {
|
|
@@ -838,7 +844,7 @@ export class AgentRegistrationService {
|
|
|
838
844
|
``,
|
|
839
845
|
].join('\n'), 'utf-8');
|
|
840
846
|
this.pendingHandovers.set(sessionName, { path: file, tokens });
|
|
841
|
-
this.logger.info('
|
|
847
|
+
this.logger.info('Conversation too big to resume — starting fresh with a handover', {
|
|
842
848
|
sessionName,
|
|
843
849
|
tokens,
|
|
844
850
|
threshold,
|
|
@@ -847,7 +853,7 @@ export class AgentRegistrationService {
|
|
|
847
853
|
return true;
|
|
848
854
|
}
|
|
849
855
|
catch (err) {
|
|
850
|
-
this.logger.warn('Could not write the
|
|
856
|
+
this.logger.warn('Could not write the handover — resuming the old conversation', {
|
|
851
857
|
sessionName,
|
|
852
858
|
error: err instanceof Error ? err.message : String(err),
|
|
853
859
|
});
|
|
@@ -2960,7 +2966,7 @@ Loop until done, blocked, or explicitly reassigned:
|
|
|
2960
2966
|
// then the member's own model / effort choice.
|
|
2961
2967
|
runtimeFlags = [
|
|
2962
2968
|
...(await this.resolveRuntimeFlags(role, runtimeType, member.skillOverrides, member.excludedRoleSkills)),
|
|
2963
|
-
...this.resolveModelFlags(sessionName, runtimeType, member
|
|
2969
|
+
...this.resolveModelFlags(sessionName, runtimeType, effectiveMemberModelId(team, { ...member, runtimeType }), member.reasoningEffort),
|
|
2964
2970
|
];
|
|
2965
2971
|
break;
|
|
2966
2972
|
}
|
|
@@ -2983,7 +2989,7 @@ Loop until done, blocked, or explicitly reassigned:
|
|
|
2983
2989
|
if (member) {
|
|
2984
2990
|
runtimeFlags = [
|
|
2985
2991
|
...(await this.resolveRuntimeFlags(role, runtimeType, member.skillOverrides, member.excludedRoleSkills)),
|
|
2986
|
-
...this.resolveModelFlags(sessionName, runtimeType, member
|
|
2992
|
+
...this.resolveModelFlags(sessionName, runtimeType, effectiveMemberModelId(team, { ...member, runtimeType }), member.reasoningEffort),
|
|
2987
2993
|
];
|
|
2988
2994
|
break;
|
|
2989
2995
|
}
|