zelari-code 1.11.0 → 1.12.1

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.
@@ -16,7 +16,7 @@
16
16
  */
17
17
  import { AgentHarness } from '@zelari/core/harness';
18
18
  import { cleanAgentContent } from '@zelari/core';
19
- import { maybeAnchorShortAnswer } from './hooks/conversationContext.js';
19
+ import { buildCouncilTaskWithHistory, maybeAnchorShortAnswer, } from './hooks/conversationContext.js';
20
20
  import { createBuiltinToolRegistry } from './toolRegistry.js';
21
21
  import { emitEvent, openaiCompatibleProvider, resolveHeadlessKey, resolveHeadlessProvider, } from './headless.js';
22
22
  import { buildSystemPrompt, getAllTools, SINGLE_AGENT_IDENTITY_MODULE, buildLanguagePolicyModuleFor, } from '@zelari/core/skills';
@@ -97,11 +97,55 @@ export async function runHeadless(opts) {
97
97
  function planModeFromOpts(opts) {
98
98
  return (opts.phase ?? 'build') === 'plan';
99
99
  }
100
+ let mcpExitHookInstalled = false;
101
+ async function registerHeadlessMcp(toolRegistry, opts) {
102
+ try {
103
+ const { registerMcpTools, closeMcpClients } = await import('./mcp/mcpManager.js');
104
+ const mcp = await registerMcpTools(toolRegistry, process.cwd());
105
+ // Ensure MCP child processes are torn down when the headless process exits.
106
+ if (!mcpExitHookInstalled) {
107
+ mcpExitHookInstalled = true;
108
+ process.once('exit', () => {
109
+ try {
110
+ closeMcpClients();
111
+ }
112
+ catch {
113
+ /* ignore */
114
+ }
115
+ });
116
+ }
117
+ if (mcp.registered.length > 0 && opts.output === 'json') {
118
+ emitEvent({
119
+ type: 'log',
120
+ message: `[headless] MCP tools: ${mcp.registered.length} registered`,
121
+ });
122
+ }
123
+ for (const w of mcp.warnings) {
124
+ if (opts.output === 'json') {
125
+ emitEvent({ type: 'log', message: `[mcp] ${w}` });
126
+ }
127
+ else {
128
+ process.stderr.write(`[zelari-code --headless] [mcp] ${w}\n`);
129
+ }
130
+ }
131
+ }
132
+ catch (err) {
133
+ const msg = err instanceof Error ? err.message : String(err);
134
+ if (opts.output === 'json') {
135
+ emitEvent({ type: 'log', message: `[mcp] registration skipped: ${msg}` });
136
+ }
137
+ else {
138
+ process.stderr.write(`[zelari-code --headless] [mcp] registration skipped: ${msg}\n`);
139
+ }
140
+ }
141
+ }
100
142
  async function runHeadlessSingle(opts, provider, model, providerStream) {
101
143
  const sessionId = crypto.randomUUID();
102
144
  const { registry: toolRegistry } = createBuiltinToolRegistry({
103
145
  planMode: planModeFromOpts(opts),
104
146
  });
147
+ // Parity with TUI: project MCP tools must be available from Desktop/headless.
148
+ await registerHeadlessMcp(toolRegistry, opts);
105
149
  const tools = toolRegistry.toOpenAITools().map((t) => ({
106
150
  name: t.function.name,
107
151
  description: t.function.description,
@@ -141,18 +185,36 @@ async function runHeadlessSingle(opts, provider, model, providerStream) {
141
185
  : 'BUILD phase: full tools; implement changes.',
142
186
  ].join('\n'),
143
187
  };
144
- systemPrompt = buildSystemPrompt(headlessRole, {
188
+ const { loadProjectInstructions } = await import('./workspace/projectInstructions.js');
189
+ const projectInstructions = loadProjectInstructions(process.cwd()).content;
190
+ let sshBlock = '';
191
+ try {
192
+ const { formatSshTargetsForPrompt } = await import('./ssh/targets.js');
193
+ sshBlock = formatSshTargetsForPrompt();
194
+ }
195
+ catch {
196
+ /* optional */
197
+ }
198
+ const rolePrompt = [headlessRole.systemPrompt, sshBlock]
199
+ .filter(Boolean)
200
+ .join('\n\n');
201
+ systemPrompt = buildSystemPrompt({ ...headlessRole, systemPrompt: rolePrompt }, {
145
202
  tools: getAllTools(),
146
203
  toolNames,
204
+ mode: 'agent',
205
+ projectInstructions: projectInstructions || undefined,
147
206
  aiConfig: {
148
207
  enabledSkills: [],
149
208
  enabledTools: toolNames,
150
- customPromptModules: [SINGLE_AGENT_IDENTITY_MODULE, {
209
+ customPromptModules: [
210
+ SINGLE_AGENT_IDENTITY_MODULE,
211
+ {
151
212
  type: 'language-policy',
152
213
  title: 'Response Language',
153
214
  priority: 5,
154
215
  content: languageDirectiveContent,
155
- }],
216
+ },
217
+ ],
156
218
  agentSkillConfigs: [],
157
219
  },
158
220
  });
@@ -291,7 +353,7 @@ async function runHeadlessSingle(opts, provider, model, providerStream) {
291
353
  return 3;
292
354
  return exitCode;
293
355
  }
294
- async function buildCouncilToolRegistry(planMode) {
356
+ async function buildCouncilToolRegistry(planMode, opts) {
295
357
  const { registry: toolRegistry } = createBuiltinToolRegistry({ planMode });
296
358
  const { createWorkspaceContext, createWorkspaceStubs } = await import('./workspace/stubs.js');
297
359
  const { createWorkspaceToolRegistry } = await import('./workspace/toolRegistry.js');
@@ -304,18 +366,31 @@ async function buildCouncilToolRegistry(planMode) {
304
366
  toolRegistry.register(td);
305
367
  }
306
368
  setWorkspaceStubs(createWorkspaceStubs(realCtx));
369
+ if (opts) {
370
+ await registerHeadlessMcp(toolRegistry, opts);
371
+ }
307
372
  return { toolRegistry, workspaceCtx: realCtx };
308
373
  }
309
374
  async function runHeadlessCouncil(opts, provider, model, providerStream) {
310
375
  const { dispatchCouncil } = await import('./councilDispatcher.js');
311
376
  const sessionId = crypto.randomUUID();
312
- const { toolRegistry } = await buildCouncilToolRegistry(planModeFromOpts(opts));
377
+ const { toolRegistry } = await buildCouncilToolRegistry(planModeFromOpts(opts), opts);
313
378
  const { FeedbackStore } = await import('./councilFeedback.js');
314
379
  const feedbackStore = new FeedbackStore();
380
+ // Multi-turn: Desktop passes --history, but council used to ignore it →
381
+ // "procedi" looked like a brand-new empty request. Inject prior transcript
382
+ // into the user task and emit history_snapshot for the next turn.
383
+ const historySeed = (opts.history ?? []).map((m) => m.role === 'assistant' && m.content
384
+ ? { ...m, content: cleanAgentContent(m.content, { stripQuestion: false }) }
385
+ : m);
386
+ const effectiveTask = buildCouncilTaskWithHistory(opts.task, historySeed);
315
387
  let exitCode = 0;
316
388
  const scrub = createStreamScrubber();
389
+ /** Last finished assistant blob this run (chairman / specialist). */
390
+ let lastAssistantText = '';
391
+ let currentAssistantText = '';
317
392
  try {
318
- for await (const event of dispatchCouncil(opts.task, {
393
+ for await (const event of dispatchCouncil(effectiveTask, {
319
394
  apiKey: 'REDACTED',
320
395
  model,
321
396
  provider: 'openai-compatible',
@@ -327,9 +402,12 @@ async function runHeadlessCouncil(opts, provider, model, providerStream) {
327
402
  })) {
328
403
  if (event.type === 'message_start') {
329
404
  scrub.reset();
405
+ currentAssistantText = '';
330
406
  }
331
407
  if (event.type === 'message_delta' && typeof event.delta === 'string') {
332
408
  const cleanDelta = scrub.push(event.delta);
409
+ if (cleanDelta.length > 0)
410
+ currentAssistantText += cleanDelta;
333
411
  if (opts.output === 'json') {
334
412
  if (cleanDelta.length > 0)
335
413
  emitEvent({ ...event, delta: cleanDelta });
@@ -341,12 +419,19 @@ async function runHeadlessCouncil(opts, provider, model, providerStream) {
341
419
  else {
342
420
  if (opts.output === 'json')
343
421
  emitEvent(event);
344
- if (event.type === 'agent_end') {
422
+ if (event.type === 'message_end' || event.type === 'agent_end') {
345
423
  const tail = scrub.flush();
346
- if (opts.output === 'plain' && tail.length > 0)
347
- process.stdout.write(tail);
348
- if (event.reason === 'error')
424
+ if (tail.length > 0) {
425
+ currentAssistantText += tail;
426
+ if (opts.output === 'plain')
427
+ process.stdout.write(tail);
428
+ }
429
+ if (currentAssistantText.trim()) {
430
+ lastAssistantText = currentAssistantText.trim();
431
+ }
432
+ if (event.type === 'agent_end' && event.reason === 'error') {
349
433
  exitCode = 3;
434
+ }
350
435
  }
351
436
  else if (event.type === 'error' && event.severity === 'fatal') {
352
437
  exitCode = 2;
@@ -358,6 +443,21 @@ async function runHeadlessCouncil(opts, provider, model, providerStream) {
358
443
  process.stderr.write(`[zelari-code --headless] council error: ${err instanceof Error ? err.message : String(err)}\n`);
359
444
  return 2;
360
445
  }
446
+ // Desktop multi-turn: append this turn so the next "procedi" has context.
447
+ if (opts.output === 'json') {
448
+ try {
449
+ const snapshot = [
450
+ { role: 'user', content: opts.task },
451
+ ...(lastAssistantText
452
+ ? [{ role: 'assistant', content: lastAssistantText }]
453
+ : []),
454
+ ];
455
+ emitEvent({ type: 'history_snapshot', messages: snapshot });
456
+ }
457
+ catch {
458
+ /* non-fatal */
459
+ }
460
+ }
361
461
  return exitCode;
362
462
  }
363
463
  /**
@@ -377,7 +477,7 @@ async function runHeadlessZelari(opts, provider, model, providerStream) {
377
477
  hasPlan: hasWorkspacePlan(projectRoot),
378
478
  });
379
479
  const memory = await getMemoryBackend(projectRoot);
380
- const { toolRegistry, workspaceCtx } = await buildCouncilToolRegistry(planModeFromOpts(opts));
480
+ const { toolRegistry, workspaceCtx } = await buildCouncilToolRegistry(planModeFromOpts(opts), opts);
381
481
  const feedbackStore = new FeedbackStore();
382
482
  const chairmanBudget = envNumber(process.env.ZELARI_MODE_MAX_TOOLS_LUCIFER, {
383
483
  default: 30,
@@ -391,11 +491,16 @@ async function runHeadlessZelari(opts, provider, model, providerStream) {
391
491
  process.stderr.write(message + '\n');
392
492
  }
393
493
  };
494
+ const historySeed = (opts.history ?? []).map((m) => m.role === 'assistant' && m.content
495
+ ? { ...m, content: cleanAgentContent(m.content, { stripQuestion: false }) }
496
+ : m);
497
+ const missionTask = buildCouncilTaskWithHistory(opts.task, historySeed);
394
498
  // Surface the brief once so the desktop UI is not blank.
395
499
  emit(`[zelari] mission brief\n${JSON.stringify({ deliverable: brief.deliverableThisMission, mvp: brief.sliceMvp?.title }, null, 0)}`);
396
500
  let exitCode = 0;
501
+ let lastMissionAssistant = '';
397
502
  try {
398
- const state = await runZelariMission(opts.task, brief, {
503
+ const state = await runZelariMission(missionTask, brief, {
399
504
  projectRoot,
400
505
  memory,
401
506
  emit,
@@ -487,6 +592,11 @@ async function runHeadlessZelari(opts, provider, model, providerStream) {
487
592
  catch {
488
593
  // best-effort
489
594
  }
595
+ if (synthesisText.trim()) {
596
+ lastMissionAssistant = cleanAgentContent(synthesisText, {
597
+ stripQuestion: false,
598
+ });
599
+ }
490
600
  return {
491
601
  completionOk,
492
602
  ran: membersCompleted > 0 || synthesisText.length > 0,
@@ -510,6 +620,22 @@ async function runHeadlessZelari(opts, provider, model, providerStream) {
510
620
  finally {
511
621
  await memory.close().catch(() => undefined);
512
622
  }
623
+ if (opts.output === 'json') {
624
+ try {
625
+ emitEvent({
626
+ type: 'history_snapshot',
627
+ messages: [
628
+ { role: 'user', content: opts.task },
629
+ ...(lastMissionAssistant
630
+ ? [{ role: 'assistant', content: lastMissionAssistant }]
631
+ : []),
632
+ ],
633
+ });
634
+ }
635
+ catch {
636
+ /* non-fatal */
637
+ }
638
+ }
513
639
  return exitCode;
514
640
  }
515
641
  //# sourceMappingURL=runHeadless.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runHeadless.js","sourceRoot":"","sources":["../../src/cli/runHeadless.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runHeadless.js","sourceRoot":"","sources":["../../src/cli/runHeadless.ts"],"names":[],"mappings":"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"}