@jait/gateway 0.1.450 → 0.1.452
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/dist/providers/acp-provider.d.ts.map +1 -1
- package/dist/providers/acp-provider.js +86 -5
- package/dist/providers/acp-provider.js.map +1 -1
- package/dist/routes/chat.d.ts.map +1 -1
- package/dist/routes/chat.js +10 -3
- package/dist/routes/chat.js.map +1 -1
- package/dist/tools/agent-loop.d.ts.map +1 -1
- package/dist/tools/agent-loop.js +145 -1
- package/dist/tools/agent-loop.js.map +1 -1
- package/dist/tools/chat-modes.d.ts +1 -1
- package/dist/tools/chat-modes.d.ts.map +1 -1
- package/dist/tools/chat-modes.js +9 -9
- package/dist/tools/prompts/shared-sections.js +1 -1
- package/dist/tools/prompts/shared-sections.js.map +1 -1
- package/dist/tools/thread-tools.d.ts.map +1 -1
- package/dist/tools/thread-tools.js +33 -1
- package/dist/tools/thread-tools.js.map +1 -1
- package/package.json +1 -1
- package/web-dist/assets/{_basePickBy-DYTKovyx.js → _basePickBy-jZQqAQOU.js} +1 -1
- package/web-dist/assets/{_baseUniq-ISbJNrqF.js → _baseUniq-BA7mbdXA.js} +1 -1
- package/web-dist/assets/{arc-BeE3Nc3q.js → arc-BvVV6Kfq.js} +1 -1
- package/web-dist/assets/{architectureDiagram-2XIMDMQ5-CCadJDmq.js → architectureDiagram-2XIMDMQ5-DOSzBjtP.js} +1 -1
- package/web-dist/assets/{blockDiagram-WCTKOSBZ-RLGPUeQ2.js → blockDiagram-WCTKOSBZ-Du2nJ6La.js} +1 -1
- package/web-dist/assets/{c4Diagram-IC4MRINW-BFu0jXtb.js → c4Diagram-IC4MRINW-BwaHLkha.js} +1 -1
- package/web-dist/assets/channel-BCWkv0Dq.js +1 -0
- package/web-dist/assets/{chunk-4BX2VUAB-Dahe-Gtg.js → chunk-4BX2VUAB-I7TLwCMx.js} +1 -1
- package/web-dist/assets/{chunk-55IACEB6-Do8KVJlU.js → chunk-55IACEB6-_1N__qNJ.js} +1 -1
- package/web-dist/assets/{chunk-FMBD7UC4-KEmie_z8.js → chunk-FMBD7UC4-DPRvHi_C.js} +1 -1
- package/web-dist/assets/{chunk-JSJVCQXG-ZaeNiq7v.js → chunk-JSJVCQXG-DjwBNcS2.js} +1 -1
- package/web-dist/assets/{chunk-KX2RTZJC-DXdSaHZ6.js → chunk-KX2RTZJC-bFrw2xdf.js} +1 -1
- package/web-dist/assets/{chunk-NQ4KR5QH-SpwySUam.js → chunk-NQ4KR5QH-D0GPVfZb.js} +1 -1
- package/web-dist/assets/{chunk-QZHKN3VN-9GESVnZI.js → chunk-QZHKN3VN-ByEvbaMC.js} +1 -1
- package/web-dist/assets/{chunk-WL4C6EOR-Di83ps4Y.js → chunk-WL4C6EOR-ItZEm4bx.js} +1 -1
- package/web-dist/assets/classDiagram-VBA2DB6C-DhPfzL5e.js +1 -0
- package/web-dist/assets/classDiagram-v2-RAHNMMFH-DhPfzL5e.js +1 -0
- package/web-dist/assets/clone-BeicARFj.js +1 -0
- package/web-dist/assets/{cose-bilkent-S5V4N54A-Du2NK1y0.js → cose-bilkent-S5V4N54A-l_dr4VZr.js} +1 -1
- package/web-dist/assets/{dagre-KLK3FWXG-Ci7TzGzd.js → dagre-KLK3FWXG-BSpK4kZR.js} +1 -1
- package/web-dist/assets/{diagram-E7M64L7V-CvLfjcX0.js → diagram-E7M64L7V-Bts-BDbA.js} +1 -1
- package/web-dist/assets/{diagram-IFDJBPK2-CxmKciRb.js → diagram-IFDJBPK2-pUfPnZ_B.js} +1 -1
- package/web-dist/assets/{diagram-P4PSJMXO-n41iBehX.js → diagram-P4PSJMXO-CXN6Ssri.js} +1 -1
- package/web-dist/assets/{erDiagram-INFDFZHY-RIBy2VOH.js → erDiagram-INFDFZHY-Bo1PoTjP.js} +1 -1
- package/web-dist/assets/{flowDiagram-PKNHOUZH-kG2RDdWH.js → flowDiagram-PKNHOUZH-D23VRNaQ.js} +1 -1
- package/web-dist/assets/{ganttDiagram-A5KZAMGK-CHK0LiZE.js → ganttDiagram-A5KZAMGK-DqI_qWQn.js} +1 -1
- package/web-dist/assets/{gitGraphDiagram-K3NZZRJ6-q65WB0Y7.js → gitGraphDiagram-K3NZZRJ6-ke6fsprP.js} +1 -1
- package/web-dist/assets/{graph-Bf7o5bgm.js → graph-DC-1iS89.js} +1 -1
- package/web-dist/assets/{index-Do0vFuJj.js → index-BH5uJjlR.js} +1 -1
- package/web-dist/assets/index-CD4PaNui.css +32 -0
- package/web-dist/assets/{index-CE-_q2PF.js → index-CVfYENkx.js} +299 -299
- package/web-dist/assets/{index-rkOPYjgS.js → index-Dh7i00zT.js} +1 -1
- package/web-dist/assets/{infoDiagram-LFFYTUFH-BG3xqQf0.js → infoDiagram-LFFYTUFH-BTMZaZkO.js} +1 -1
- package/web-dist/assets/{ishikawaDiagram-PHBUUO56-SzVXa0Ul.js → ishikawaDiagram-PHBUUO56-CLgDHJjd.js} +1 -1
- package/web-dist/assets/{journeyDiagram-4ABVD52K-uQ4EbqOb.js → journeyDiagram-4ABVD52K-CFrEOMYA.js} +1 -1
- package/web-dist/assets/{kanban-definition-K7BYSVSG-Bu512xnD.js → kanban-definition-K7BYSVSG-COVuWGs9.js} +1 -1
- package/web-dist/assets/{layout-DKlet4pg.js → layout-8IhGAYCk.js} +1 -1
- package/web-dist/assets/{linear-B_YjJnix.js → linear-DJca_gsh.js} +1 -1
- package/web-dist/assets/{mindmap-definition-YRQLILUH-lGftLGKX.js → mindmap-definition-YRQLILUH-DjQkYWcM.js} +1 -1
- package/web-dist/assets/{pieDiagram-SKSYHLDU-srStxRYK.js → pieDiagram-SKSYHLDU-CLAcmuow.js} +1 -1
- package/web-dist/assets/{quadrantDiagram-337W2JSQ-DNXzUkdy.js → quadrantDiagram-337W2JSQ-B2SUelv1.js} +1 -1
- package/web-dist/assets/{requirementDiagram-Z7DCOOCP-CQ2nNvpE.js → requirementDiagram-Z7DCOOCP-B8ORCoic.js} +1 -1
- package/web-dist/assets/{sankeyDiagram-WA2Y5GQK-HO_l0S6a.js → sankeyDiagram-WA2Y5GQK-B2GhRON_.js} +1 -1
- package/web-dist/assets/{sequenceDiagram-2WXFIKYE-BbSGxxBI.js → sequenceDiagram-2WXFIKYE-vNyEjHN9.js} +1 -1
- package/web-dist/assets/{stateDiagram-RAJIS63D-BL7AP5Vw.js → stateDiagram-RAJIS63D-CYb04Fqy.js} +1 -1
- package/web-dist/assets/stateDiagram-v2-FVOUBMTO-DkA9hH9p.js +1 -0
- package/web-dist/assets/{timeline-definition-YZTLITO2-BCtCjKWM.js → timeline-definition-YZTLITO2-B2XXznLc.js} +1 -1
- package/web-dist/assets/{treemap-KZPCXAKY-CKGQOBug.js → treemap-KZPCXAKY-C7Ux0aDm.js} +1 -1
- package/web-dist/assets/{vennDiagram-LZ73GAT5-BGLyMPbZ.js → vennDiagram-LZ73GAT5-TbiJ7QLL.js} +1 -1
- package/web-dist/assets/{xychartDiagram-JWTSCODW-Dajv6k9x.js → xychartDiagram-JWTSCODW-Dx0SEyUC.js} +1 -1
- package/web-dist/index.html +2 -2
- package/web-dist/assets/channel-BexgzvOu.js +0 -1
- package/web-dist/assets/classDiagram-VBA2DB6C-DUcD8Qlo.js +0 -1
- package/web-dist/assets/classDiagram-v2-RAHNMMFH-DUcD8Qlo.js +0 -1
- package/web-dist/assets/clone-C23p_VdE.js +0 -1
- package/web-dist/assets/index-3BL6LO8a.css +0 -32
- package/web-dist/assets/stateDiagram-v2-FVOUBMTO-B9hO9V1N.js +0 -1
package/dist/tools/agent-loop.js
CHANGED
|
@@ -544,6 +544,120 @@ const DUPLICATE_CALL_THRESHOLD = 2;
|
|
|
544
544
|
const TOOL_RESULT_MAX_CHARS = 30_000;
|
|
545
545
|
/** Consecutive rounds with zero successful tool calls before the loop bails out. */
|
|
546
546
|
const MAX_UNPRODUCTIVE_ROUNDS = 3;
|
|
547
|
+
function latestUserContent(history) {
|
|
548
|
+
for (let i = history.length - 1; i >= 0; i--) {
|
|
549
|
+
const message = history[i];
|
|
550
|
+
if (message?.role === "user" && message.content.trim())
|
|
551
|
+
return message.content.trim();
|
|
552
|
+
}
|
|
553
|
+
return "Complete the user's swarm task.";
|
|
554
|
+
}
|
|
555
|
+
function inferSwarmPattern(objective) {
|
|
556
|
+
const lower = objective.toLowerCase();
|
|
557
|
+
if (/\b(fix|bug|test|typecheck|lint|refactor|implement|code|component|api|route|css|ui|backend|frontend)\b/.test(lower))
|
|
558
|
+
return "code";
|
|
559
|
+
if (/\b(research|compare|investigate|sources|docs|documentation|latest|market|evaluate)\b/.test(lower))
|
|
560
|
+
return "research";
|
|
561
|
+
if (/\b(write|draft|copy|article|post|email|slides|document|proposal|narrative)\b/.test(lower))
|
|
562
|
+
return "content";
|
|
563
|
+
return "general";
|
|
564
|
+
}
|
|
565
|
+
function buildSwarmCreateManyArgs(objective) {
|
|
566
|
+
const pattern = inferSwarmPattern(objective);
|
|
567
|
+
const common = [
|
|
568
|
+
`Original user objective:\n${objective}`,
|
|
569
|
+
"",
|
|
570
|
+
"Return a concise result with findings, actions taken, changed files if any, verification evidence, and unresolved risks.",
|
|
571
|
+
"Stay within the active workspace and do not duplicate work assigned to other specialists.",
|
|
572
|
+
].join("\n");
|
|
573
|
+
const specsByPattern = {
|
|
574
|
+
code: [
|
|
575
|
+
{
|
|
576
|
+
title: "Swarm Implementation Specialist",
|
|
577
|
+
role: "Implementation Specialist",
|
|
578
|
+
task: "Inspect the relevant code path, implement the smallest correct change for the objective, and run focused verification where practical.",
|
|
579
|
+
},
|
|
580
|
+
{
|
|
581
|
+
title: "Swarm Verification Specialist",
|
|
582
|
+
role: "Verification Specialist",
|
|
583
|
+
task: "Independently inspect likely failure modes, check tests or missing coverage, and identify regressions or integration risks.",
|
|
584
|
+
},
|
|
585
|
+
{
|
|
586
|
+
title: "Swarm Review Specialist",
|
|
587
|
+
role: "Code Review Specialist",
|
|
588
|
+
task: "Review the intended change for correctness, maintainability, UI/UX impact, and consistency with repository patterns.",
|
|
589
|
+
},
|
|
590
|
+
],
|
|
591
|
+
research: [
|
|
592
|
+
{
|
|
593
|
+
title: "Swarm Research Specialist",
|
|
594
|
+
role: "Deep Research Specialist",
|
|
595
|
+
task: "Gather source-backed facts, compare options, and return concise evidence with citations or file references.",
|
|
596
|
+
},
|
|
597
|
+
{
|
|
598
|
+
title: "Swarm Analysis Specialist",
|
|
599
|
+
role: "Analysis Specialist",
|
|
600
|
+
task: "Evaluate tradeoffs, constraints, risks, and decision criteria for the objective.",
|
|
601
|
+
},
|
|
602
|
+
{
|
|
603
|
+
title: "Swarm Synthesis Reviewer",
|
|
604
|
+
role: "Synthesis Reviewer",
|
|
605
|
+
task: "Check the research for gaps, contradictions, stale assumptions, and missing verification.",
|
|
606
|
+
},
|
|
607
|
+
],
|
|
608
|
+
content: [
|
|
609
|
+
{
|
|
610
|
+
title: "Swarm Drafting Specialist",
|
|
611
|
+
role: "Drafting Specialist",
|
|
612
|
+
task: "Create the primary deliverable or proposed content structure for the objective.",
|
|
613
|
+
},
|
|
614
|
+
{
|
|
615
|
+
title: "Swarm Editing Specialist",
|
|
616
|
+
role: "Editing Specialist",
|
|
617
|
+
task: "Improve clarity, flow, tone, and audience fit while preserving technical accuracy.",
|
|
618
|
+
},
|
|
619
|
+
{
|
|
620
|
+
title: "Swarm QA Specialist",
|
|
621
|
+
role: "QA Specialist",
|
|
622
|
+
task: "Check completeness, consistency, formatting, and likely user expectations.",
|
|
623
|
+
},
|
|
624
|
+
],
|
|
625
|
+
general: [
|
|
626
|
+
{
|
|
627
|
+
title: "Swarm Planner Specialist",
|
|
628
|
+
role: "Planner Specialist",
|
|
629
|
+
task: "Decompose the objective, identify dependencies, and propose a practical execution path.",
|
|
630
|
+
},
|
|
631
|
+
{
|
|
632
|
+
title: "Swarm Execution Specialist",
|
|
633
|
+
role: "Execution Specialist",
|
|
634
|
+
task: "Carry out the most concrete actionable parts of the objective and report results.",
|
|
635
|
+
},
|
|
636
|
+
{
|
|
637
|
+
title: "Swarm Review Specialist",
|
|
638
|
+
role: "Review Specialist",
|
|
639
|
+
task: "Validate the work, identify gaps, and recommend next steps.",
|
|
640
|
+
},
|
|
641
|
+
],
|
|
642
|
+
};
|
|
643
|
+
return {
|
|
644
|
+
action: "create_many",
|
|
645
|
+
start: true,
|
|
646
|
+
kind: "delegation",
|
|
647
|
+
detach: false,
|
|
648
|
+
autoStopAfterTurn: true,
|
|
649
|
+
threads: specsByPattern[pattern].map((spec) => ({
|
|
650
|
+
title: spec.title,
|
|
651
|
+
kind: "delegation",
|
|
652
|
+
prompt: [
|
|
653
|
+
`Role: ${spec.role}`,
|
|
654
|
+
`Task: ${spec.task}`,
|
|
655
|
+
"",
|
|
656
|
+
common,
|
|
657
|
+
].join("\n"),
|
|
658
|
+
})),
|
|
659
|
+
};
|
|
660
|
+
}
|
|
547
661
|
/**
|
|
548
662
|
* Run the agentic tool-calling loop.
|
|
549
663
|
*
|
|
@@ -641,12 +755,42 @@ export async function runAgentLoop(options, executeTool, steering) {
|
|
|
641
755
|
onEvent?.({ type: "mode_notice", mode: "plan", message: "Running in Plan mode — mutating actions will be proposed, not executed." });
|
|
642
756
|
}
|
|
643
757
|
else if (mode === "swarm") {
|
|
644
|
-
onEvent?.({ type: "mode_notice", mode: "swarm", message: "Running in Swarm mode —
|
|
758
|
+
onEvent?.({ type: "mode_notice", mode: "swarm", message: "Running in Swarm mode — starting visible specialist threads for this task." });
|
|
645
759
|
}
|
|
646
760
|
// Dynamic schema set — starts with filtered schemas, grows when tools.search
|
|
647
761
|
// discovers additional tools (e.g. external/MCP tools).
|
|
648
762
|
const activeSchemas = [...modeFilteredSchemas];
|
|
649
763
|
const activeSchemaNames = new Set(activeSchemas.map((s) => s.function.name));
|
|
764
|
+
if (mode === "swarm") {
|
|
765
|
+
const callId = `swarm-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
|
|
766
|
+
const swarmArgs = buildSwarmCreateManyArgs(latestUserContent(history));
|
|
767
|
+
const swarmCall = {
|
|
768
|
+
id: callId,
|
|
769
|
+
type: "function",
|
|
770
|
+
function: {
|
|
771
|
+
name: toOpenAIName("thread.control"),
|
|
772
|
+
arguments: JSON.stringify(swarmArgs),
|
|
773
|
+
},
|
|
774
|
+
};
|
|
775
|
+
segments.push({ type: "toolGroup", callIds: [callId] });
|
|
776
|
+
const { executed, historyEntry } = await executeOneToolCall({
|
|
777
|
+
tc: swarmCall,
|
|
778
|
+
sessionId,
|
|
779
|
+
auth,
|
|
780
|
+
signal: abort.signal,
|
|
781
|
+
toolRegistry,
|
|
782
|
+
maxRetries,
|
|
783
|
+
onEvent,
|
|
784
|
+
executeTool,
|
|
785
|
+
});
|
|
786
|
+
executedToolCalls.push(executed);
|
|
787
|
+
history.push({
|
|
788
|
+
role: "assistant",
|
|
789
|
+
content: "",
|
|
790
|
+
tool_calls: [swarmCall],
|
|
791
|
+
});
|
|
792
|
+
history.push(historyEntry);
|
|
793
|
+
}
|
|
650
794
|
for (let round = 0; round < maxRounds; round++) {
|
|
651
795
|
// ── Check abort ──
|
|
652
796
|
if (abort.signal.aborted) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-loop.js","sourceRoot":"","sources":["../../src/tools/agent-loop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-loop.js","sourceRoot":"","sources":["../../src/tools/agent-loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,7 +69,7 @@ export interface Plan {
|
|
|
69
69
|
}
|
|
70
70
|
export declare const SYSTEM_PROMPT_ASK = "You are Jait \u2014 Just Another Intelligent Tool, running in Ask mode.\n\nIn this mode you answer questions, explain code, analyze files, and provide information.\nYou have read-only access to the filesystem, system info, memory, and web search.\nYou CANNOT write files, run terminal commands, install packages, or modify any system state.\n\nKey capabilities:\n- read: Read files or list directories. Specify startLine/endLine for large files.\n- search: Search file contents (grep) or find files by name.\n- web: Search the web or fetch pages for information.\n- todo: Track tasks and progress.\n- jait: Search memories (action: memory.search), check status (action: status), list cron jobs.\n\nGuidelines:\n- Be thorough and educational in your explanations.\n- Read files to provide accurate answers \u2014 don't guess about code contents.\n- If the user asks you to make changes, explain what you would do and suggest switching to Agent or Plan mode.\n- For code review, read the relevant files first, then provide structured feedback.";
|
|
71
71
|
export declare const SYSTEM_PROMPT_AGENT = "You are Jait \u2014 Just Another Intelligent Tool.\n\nYou are a capable AI coding agent that can read/write files, run shell commands, search the web, delegate tasks to sub-agents, and manage platform services.\n\nWhen the user asks you to do something that requires action (run a command, edit a file, check system info, etc.), use your tools. Don't just describe what you would do \u2014 actually do it.\n\nCore tools:\n- read: Read file contents or list directory entries. Specify startLine/endLine for large files. Truncates at 2000 lines.\n- edit: Create new files, overwrite existing files, or patch (search-and-replace). Always generate the explanation first. Always read before patching.\n- execute: Run shell commands (PowerShell on Windows). Set isBackground: true for servers/watchers. Provide an explanation.\n- search: Search file contents (grep) or find files by name. Use isRegexp for regex patterns. Use include to filter by glob.\n- web: Search the web (query) or fetch URLs (url/urls).\n- agent: Delegate complex multi-step tasks to a sub-agent. Great for codebase research, analysis, and multi-file searches where you're not confident you'll find the right match quickly.\n- todo: Track task progress visually. Use this tool frequently for any multi-step work.\n- jait: Platform services \u2014 save/search/forget memories, add/list/update/remove cron jobs, check gateway status.\n\n## Preambles and progress updates\n\nBefore making tool calls, send a brief preamble to the user explaining what you're about to do. Follow these principles:\n- Logically group related actions: if you're about to run several related commands, describe them together in one preamble rather than sending a separate note for each.\n- Keep it concise: 1-2 sentences (8-12 words for quick updates).\n- Build on prior context: if this is not your first tool call, use the preamble to connect the dots with what's been done so far and explain your next actions.\n- Keep your tone light, friendly and curious.\n- Skip preambles for trivial single reads unless part of a larger grouped action.\nExamples of good preambles:\n- \"I've explored the repo; now checking the API route definitions.\"\n- \"Next, I'll patch the config and update the related tests.\"\n- \"Config's looking tidy. Next up is patching helpers to keep things in sync.\"\n\nFor longer tasks requiring many tool calls, provide progress updates at reasonable intervals \u2014 concise sentences (no more than 8-10 words) recapping progress so far.\n\n## Planning and task tracking\n\nYou have access to the todo tool which tracks steps and renders them to the user. For any non-trivial multi-step task, you MUST use the todo tool to create a plan BEFORE starting work. This is essential for maintaining visibility and proper execution.\n\nUse a plan when:\n- The task requires multiple actions over a long time horizon.\n- There are logical phases or dependencies where sequencing matters.\n- You want intermediate checkpoints for feedback and validation.\n- The user asked you to do more than one thing in a single prompt.\n- You generate additional steps while working and plan to do them.\n\nSkip a plan when:\n- The task is simple and direct.\n- Breaking it down would only produce trivial steps.\n\nPlan steps should be concise descriptions of non-obvious work like \"Write the API spec\", \"Update the backend\", \"Implement the frontend\". Avoid obvious steps like \"Explore the codebase\" or \"Read the files\".\n\nMark each step in-progress before starting, and completed immediately after finishing. Do not batch completions.\n\n## Sub-agent delegation\n\nUse the agent tool to delegate tasks like:\n- Multi-file research or codebase searching (when you're not confident you'll find the right match quickly).\n- Analysis tasks that need multiple reads to complete.\n- Gathering information while you continue your main line of work.\n\nEach sub-agent invocation is stateless. Your prompt should be highly detailed and specify exactly what information to return.\n\n## Autonomy and task execution\n\nKeep going until the query is completely resolved before ending your turn and yielding back to the user. Only terminate your turn when you are sure that the problem is solved. Do not stop or hand back to the user when you encounter uncertainty \u2014 research or deduce the most reasonable approach and continue.\n\nGuidelines:\n- Be direct and concise.\n- When running commands, use the actual tools \u2014 don't just suggest commands.\n- For multi-step tasks, execute them step by step, checking each result.\n- If a command fails, analyze the error and try to fix it.\n- When editing files, read them first to understand the context before patching.\n- For recurring or scheduled automation requests, prefer jait cron actions instead of OS-native schedulers.\n- Fix the problem at the root cause rather than applying surface-level patches.\n- Keep changes consistent with the style of the existing codebase.\n- When describing what you've done, be concise \u2014 the user can see your work. No need to repeat file contents you've already written.\n\n## Response style\n\nSkip filler acknowledgements like \"Sounds good\" or \"Okay, I will\u2026\". Open with a purposeful one-liner about what you're doing next.\nYour final message should read like a concise update from a teammate. For simple tasks, keep it brief. For complex work, group changes logically with short section headers and bullet points.";
|
|
72
|
-
export declare const SYSTEM_PROMPT_SWARM = "You are Jait \u2014 Just Another Intelligent Tool, running in Swarm mode.\n\nIn this mode you act as a lightweight multi-agent coordinator. Your job is to
|
|
72
|
+
export declare const SYSTEM_PROMPT_SWARM = "You are Jait \u2014 Just Another Intelligent Tool, running in Swarm mode.\n\nIn this mode you act as a lightweight multi-agent coordinator. Your job is to start a visible swarm of specialist threads, split the user's request into workstreams, and synthesize the results into a single answer or deliverable.\n\nSwarm roster inspired by OpenSwarm:\n- Orchestrator: decomposes the goal, chooses specialists, and coordinates parallel work.\n- General Agent: administrative workflows, external systems, messaging, scheduling, and general assistance.\n- Deep Research Agent: source-backed research, comparisons, documentation, and evidence synthesis.\n- Data Analyst: data exploration, transformations, KPIs, charts, and analytical insight.\n- Docs Agent: document creation, editing, conversion, and polished written deliverables.\n- Slides Agent: presentation structure, slide content, visual hierarchy, and deck-specific review.\n- Image Agent: image generation/editing direction, prompt writing, asset review, and visual QA.\n- Video Agent: video concepting, shot planning, generation/editing direction, and media assembly review.\n\nRouting rules:\n1. Start by understanding the objective, constraints, and deliverables.\n2. Your first tool call for real work MUST be thread.control with action: \"create_many\", start: true, kind: \"delegation\", and detach: false.\n3. Create at least two specialist threads unless the user explicitly asks for only one worker. For small tasks, use complementary specialists such as Implementation and Verification.\n4. Each thread spec must include a clear title and prompt naming the specialist role, concrete task, expected output, relevant files/context, allowed scope, and completion criteria.\n5. Wait for the started threads to finish, then reconcile contradictions and produce one concise final response.\n6. Use direct tools yourself only for orchestration, gap-filling, or verifying specialist output after the swarm returns.\n\nProvider/model rule:\n- Every specialist sub-agent must use the currently selected Jait model/provider context. Do not ask the user to pick separate models for specialists.\n- If you delegate via the agent tool, the sub-agent automatically inherits the current request's model context.\n\nTool guidance:\n- Use thread.control create_many for specialist delegation so the user sees the swarm as a thread list.\n- Use read/search/web/execute/edit directly only for coordination work that should not be delegated or when verifying specialist output.\n- When a specialist needs to modify files, say so in that thread prompt. Use read-only wording for research and review specialists.\n- Do not pretend that unavailable OpenSwarm-specific tools exist; map the specialist's job onto Jait thread prompts.\n\nOutput style:\n- Keep orchestration visible but brief.\n- Mention the specialists used when it helps the user understand the result.\n- Do not dump raw specialist transcripts unless the user asks.";
|
|
73
73
|
export declare const SYSTEM_PROMPT_PLAN = "You are Jait \u2014 Just Another Intelligent Tool, running in Plan mode.\n\nIn this mode you analyze the task, gather context by reading files and searching, then produce a clear, structured plan of exactly what changes you will make. You do NOT execute mutating actions \u2014 instead you propose them for user review.\n\nYour workflow:\n1. **Analyze**: Use read, search, and web to understand the codebase and gather context.\n2. **Plan**: Describe each action you would take, in order, with reasoning.\n3. **Propose**: Call edit, execute, etc. as you normally would \u2014 they will be captured as proposed actions and shown to the user for approval, NOT executed yet.\n\nCore tools (read \u2014 always available):\n- read: Read files or list directories.\n- search: Search file contents or find files by name.\n- web: Search the web or fetch pages.\n- todo: Track your planning progress.\n- jait: Search memories, list cron jobs, check status.\n\nCore tools (write \u2014 proposed, not executed):\n- edit: Create or patch files.\n- execute: Run shell commands.\n- agent: Delegate sub-tasks.\n- jait: Save memories, add/update/remove cron jobs.\n\nGuidelines:\n- Be thorough in your analysis phase \u2014 read all relevant files before proposing changes.\n- Explain your reasoning for each proposed action.\n- Group related changes logically.\n- Present your plan clearly so the user can review before approving.\n- After proposing, summarize what the plan will accomplish.";
|
|
74
74
|
/**
|
|
75
75
|
* Get the system prompt for a given chat mode.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-modes.d.ts","sourceRoot":"","sources":["../../src/tools/chat-modes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;AAE1D,eAAO,MAAM,UAAU,4CAA6C,CAAC;AAErE,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAEjE;AAID;;;GAGG;AACH,eAAO,MAAM,cAAc,aA2BzB,CAAC;AAIH;;;GAGG;AACH,eAAO,MAAM,cAAc,aAgCzB,CAAC;AAIH,6CAA6C;AAC7C,MAAM,WAAW,aAAa;IAC5B,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,IAAI,EAAE,OAAO,CAAC;IACd,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;IACpE,mDAAmD;IACnD,MAAM,CAAC,EAAE;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAC3D;AAED,4CAA4C;AAC5C,MAAM,WAAW,IAAI;IACnB,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,kBAAkB;IAClB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;IACpF,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;CACnB;AAID,eAAO,MAAM,iBAAiB,shCAiBsD,CAAC;AAErF,eAAO,MAAM,mBAAmB,u2KA6E+J,CAAC;AAEhM,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"chat-modes.d.ts","sourceRoot":"","sources":["../../src/tools/chat-modes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;AAE1D,eAAO,MAAM,UAAU,4CAA6C,CAAC;AAErE,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAEjE;AAID;;;GAGG;AACH,eAAO,MAAM,cAAc,aA2BzB,CAAC;AAIH;;;GAGG;AACH,eAAO,MAAM,cAAc,aAgCzB,CAAC;AAIH,6CAA6C;AAC7C,MAAM,WAAW,aAAa;IAC5B,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,IAAI,EAAE,OAAO,CAAC;IACd,wDAAwD;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;IACpE,mDAAmD;IACnD,MAAM,CAAC,EAAE;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAC3D;AAED,4CAA4C;AAC5C,MAAM,WAAW,IAAI;IACnB,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,kBAAkB;IAClB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;IACpF,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;CACnB;AAID,eAAO,MAAM,iBAAiB,shCAiBsD,CAAC;AAErF,eAAO,MAAM,mBAAmB,u2KA6E+J,CAAC;AAEhM,eAAO,MAAM,mBAAmB,85FAmC+B,CAAC;AAEhE,eAAO,MAAM,kBAAkB,y8CA2B6B,CAAC;AAE7D;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAY7D"}
|
package/dist/tools/chat-modes.js
CHANGED
|
@@ -190,7 +190,7 @@ Skip filler acknowledgements like "Sounds good" or "Okay, I will…". Open with
|
|
|
190
190
|
Your final message should read like a concise update from a teammate. For simple tasks, keep it brief. For complex work, group changes logically with short section headers and bullet points.`;
|
|
191
191
|
export const SYSTEM_PROMPT_SWARM = `You are Jait — Just Another Intelligent Tool, running in Swarm mode.
|
|
192
192
|
|
|
193
|
-
In this mode you act as a lightweight multi-agent coordinator. Your job is to
|
|
193
|
+
In this mode you act as a lightweight multi-agent coordinator. Your job is to start a visible swarm of specialist threads, split the user's request into workstreams, and synthesize the results into a single answer or deliverable.
|
|
194
194
|
|
|
195
195
|
Swarm roster inspired by OpenSwarm:
|
|
196
196
|
- Orchestrator: decomposes the goal, chooses specialists, and coordinates parallel work.
|
|
@@ -204,21 +204,21 @@ Swarm roster inspired by OpenSwarm:
|
|
|
204
204
|
|
|
205
205
|
Routing rules:
|
|
206
206
|
1. Start by understanding the objective, constraints, and deliverables.
|
|
207
|
-
2.
|
|
208
|
-
3.
|
|
209
|
-
4.
|
|
210
|
-
5.
|
|
211
|
-
6.
|
|
207
|
+
2. Your first tool call for real work MUST be thread.control with action: "create_many", start: true, kind: "delegation", and detach: false.
|
|
208
|
+
3. Create at least two specialist threads unless the user explicitly asks for only one worker. For small tasks, use complementary specialists such as Implementation and Verification.
|
|
209
|
+
4. Each thread spec must include a clear title and prompt naming the specialist role, concrete task, expected output, relevant files/context, allowed scope, and completion criteria.
|
|
210
|
+
5. Wait for the started threads to finish, then reconcile contradictions and produce one concise final response.
|
|
211
|
+
6. Use direct tools yourself only for orchestration, gap-filling, or verifying specialist output after the swarm returns.
|
|
212
212
|
|
|
213
213
|
Provider/model rule:
|
|
214
214
|
- Every specialist sub-agent must use the currently selected Jait model/provider context. Do not ask the user to pick separate models for specialists.
|
|
215
215
|
- If you delegate via the agent tool, the sub-agent automatically inherits the current request's model context.
|
|
216
216
|
|
|
217
217
|
Tool guidance:
|
|
218
|
-
- Use
|
|
218
|
+
- Use thread.control create_many for specialist delegation so the user sees the swarm as a thread list.
|
|
219
219
|
- Use read/search/web/execute/edit directly only for coordination work that should not be delegated or when verifying specialist output.
|
|
220
|
-
- When a specialist needs to modify files,
|
|
221
|
-
- Do not pretend that unavailable OpenSwarm-specific tools exist; map the specialist's job onto
|
|
220
|
+
- When a specialist needs to modify files, say so in that thread prompt. Use read-only wording for research and review specialists.
|
|
221
|
+
- Do not pretend that unavailable OpenSwarm-specific tools exist; map the specialist's job onto Jait thread prompts.
|
|
222
222
|
|
|
223
223
|
Output style:
|
|
224
224
|
- Keep orchestration visible but brief.
|
|
@@ -132,7 +132,7 @@ export function getPlanModeInstructions() {
|
|
|
132
132
|
return `You are in PLAN mode. The user wants you to create a plan without implementing it. Analyze the request, explore the codebase as needed, and produce a clear, structured plan. Do NOT make any file changes — only describe what should be done.`;
|
|
133
133
|
}
|
|
134
134
|
export function getSwarmModeInstructions() {
|
|
135
|
-
return `You are in SWARM mode. Act as a multi-agent coordinator using OpenSwarm-inspired specialist roles.
|
|
135
|
+
return `You are in SWARM mode. Act as a visible multi-agent coordinator using OpenSwarm-inspired specialist roles. Your first tool call for real work MUST be thread.control with action: "create_many", start: true, kind: "delegation", and detach: false, so the UI shows a concrete thread swarm. Create at least two specialist threads unless the user explicitly asks for one worker. For small tasks, use complementary specialists such as Implementation and Verification. Each thread prompt must include the specialist role, concrete task, expected output, relevant context/files, allowed scope, and completion criteria. Wait for the threads to finish, synthesize their outputs into one final response, and do not expose raw specialist transcripts unless the user asks. Specialist threads inherit the currently selected Jait model/provider context; do not ask the user to pick separate specialist models.`;
|
|
136
136
|
}
|
|
137
137
|
export function getModeInstructions(mode) {
|
|
138
138
|
switch (mode) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-sections.js","sourceRoot":"","sources":["../../../src/tools/prompts/shared-sections.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,wEAAwE;AAExE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX,wEAAwE;AAExE,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;gUAI+R,CAAC;AAEjU,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;;;;iaAU4X,CAAC;AAEla,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;6FAIyD,CAAC;AAE9F,MAAM,CAAC,MAAM,mBAAmB,GAAG;;wFAEqD,CAAC;AAEzF,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;kHAaiF,CAAC;AAEnH,MAAM,CAAC,MAAM,mCAAmC,GAAG;;;;;;;;;;;;;;;;;;;;;kJAqB+F,CAAC;AAEnJ,4FAA4F;AAC5F,MAAM,CAAC,MAAM,wCAAwC,GAAG;;;;;;iFAMyB,CAAC;AAElF,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kFAsCiD,CAAC;AAEnF,wEAAwE;AAExE,MAAM,UAAU,sBAAsB;IACpC,OAAO,0QAA0Q,CAAC;AACpR,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,iPAAiP,CAAC;AAC3P,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"shared-sections.js","sourceRoot":"","sources":["../../../src/tools/prompts/shared-sections.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,wEAAwE;AAExE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX,wEAAwE;AAExE,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;gUAI+R,CAAC;AAEjU,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;;;;iaAU4X,CAAC;AAEla,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;6FAIyD,CAAC;AAE9F,MAAM,CAAC,MAAM,mBAAmB,GAAG;;wFAEqD,CAAC;AAEzF,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;kHAaiF,CAAC;AAEnH,MAAM,CAAC,MAAM,mCAAmC,GAAG;;;;;;;;;;;;;;;;;;;;;kJAqB+F,CAAC;AAEnJ,4FAA4F;AAC5F,MAAM,CAAC,MAAM,wCAAwC,GAAG;;;;;;iFAMyB,CAAC;AAElF,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kFAsCiD,CAAC;AAEnF,wEAAwE;AAExE,MAAM,UAAU,sBAAsB;IACpC,OAAO,0QAA0Q,CAAC;AACpR,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,iPAAiP,CAAC;AAC3P,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO,+3BAA+3B,CAAC;AACz4B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAc;IAChD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,KAAK;YACR,OAAO,sBAAsB,EAAE,CAAC;QAClC,KAAK,MAAM;YACT,OAAO,uBAAuB,EAAE,CAAC;QACnC,KAAK,OAAO;YACV,OAAO,wBAAwB,EAAE,CAAC;QACpC;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,eAAe,CAAC;AACtG,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAuC;IAClF,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,QAAQ;YACX,OAAO;;;;;0EAK6D,CAAC;QACvE,KAAK,SAAS;YACZ,OAAO;;;;;gFAKmE,CAAC;QAC7E,KAAK,eAAe;YAClB,OAAO;;;;gFAImE,CAAC;QAC7E;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread-tools.d.ts","sourceRoot":"","sources":["../../src/tools/thread-tools.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"thread-tools.d.ts","sourceRoot":"","sources":["../../src/tools/thread-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -259,6 +259,7 @@ export function createThreadControlTool(deps) {
|
|
|
259
259
|
let timeout;
|
|
260
260
|
let unsubscribed = false;
|
|
261
261
|
let unsubscribe;
|
|
262
|
+
let pendingAssistantContent = "";
|
|
262
263
|
const cleanup = () => {
|
|
263
264
|
if (timeout) {
|
|
264
265
|
clearTimeout(timeout);
|
|
@@ -269,10 +270,41 @@ export function createThreadControlTool(deps) {
|
|
|
269
270
|
unsubscribe();
|
|
270
271
|
}
|
|
271
272
|
};
|
|
273
|
+
const flushPendingAssistantContent = () => {
|
|
274
|
+
if (!pendingAssistantContent.trim()) {
|
|
275
|
+
pendingAssistantContent = "";
|
|
276
|
+
return;
|
|
277
|
+
}
|
|
278
|
+
const content = pendingAssistantContent;
|
|
279
|
+
pendingAssistantContent = "";
|
|
280
|
+
const activity = deps.threadService.addActivity(effectiveThread.id, "message", content.trim().slice(0, 500), {
|
|
281
|
+
role: "assistant",
|
|
282
|
+
content,
|
|
283
|
+
});
|
|
284
|
+
broadcastThreadEvent(effectiveThread.id, "activity", {
|
|
285
|
+
event: { type: "message", sessionId: session.id, role: "assistant", content },
|
|
286
|
+
activity,
|
|
287
|
+
});
|
|
288
|
+
};
|
|
272
289
|
unsubscribe = provider.onEvent((event) => {
|
|
273
290
|
if (event.sessionId !== session.id) {
|
|
274
291
|
return;
|
|
275
292
|
}
|
|
293
|
+
if (event.type === "token") {
|
|
294
|
+
pendingAssistantContent += event.content;
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
if (event.type === "message" && event.role === "assistant" && pendingAssistantContent) {
|
|
298
|
+
if (event.content === pendingAssistantContent || event.content.startsWith(pendingAssistantContent)) {
|
|
299
|
+
pendingAssistantContent = "";
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
flushPendingAssistantContent();
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
else if (event.type !== "turn.started") {
|
|
306
|
+
flushPendingAssistantContent();
|
|
307
|
+
}
|
|
276
308
|
const activity = deps.threadService.logProviderEvent(effectiveThread.id, event);
|
|
277
309
|
if (activity) {
|
|
278
310
|
broadcastThreadEvent(effectiveThread.id, "activity", { event, activity });
|
|
@@ -624,7 +656,7 @@ export function createThreadControlTool(deps) {
|
|
|
624
656
|
model: spec.model ?? input.model ?? selectedDefaults.model,
|
|
625
657
|
runtimeMode: spec.runtimeMode ?? input.runtimeMode ?? selectedDefaults.runtimeMode ?? "full-access",
|
|
626
658
|
kind: spec.kind === "delivery" ? "delivery" : input.kind === "delivery" ? "delivery" : "delegation",
|
|
627
|
-
workingDirectory: spec.workingDirectory ?? input.workingDirectory,
|
|
659
|
+
workingDirectory: spec.workingDirectory ?? input.workingDirectory ?? context.workspaceRoot,
|
|
628
660
|
branch: spec.branch ?? input.branch,
|
|
629
661
|
});
|
|
630
662
|
broadcastThreadEvent(thread.id, "created", { thread });
|