@alexnetrebskii/hive-agent 2.30.0 → 2.31.0

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/README.md CHANGED
@@ -148,6 +148,7 @@ console.log(result.response)
148
148
  - [Logger](https://github.com/anetrebskii/tuplet/blob/main/docs/logger.md)
149
149
  - [Tracing](https://github.com/anetrebskii/tuplet/blob/main/docs/tracing.md)
150
150
  - [Run Recording](https://github.com/anetrebskii/tuplet/blob/main/docs/run-recording.md)
151
+ - [Prompt Sections & History Injections](https://github.com/anetrebskii/tuplet/blob/main/docs/prompt-sections.md)
151
152
 
152
153
  ## License
153
154
 
package/dist/agent.d.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Main agent class that orchestrates tool execution, sub-agents, and workspace management.
5
5
  */
6
- import type { TupletConfig, RunOptions, AgentResult } from "./types.js";
6
+ import type { TupletConfig, RunOptions, AgentResult, SectionContext, TurnContext } from "./types.js";
7
7
  import { TraceBuilder } from "./trace.js";
8
8
  /** Path where the plan is stored in workspace (relative) */
9
9
  export declare const PLAN_PATH = ".tuplet/plan.md";
@@ -41,6 +41,30 @@ export declare class Tuplet {
41
41
  * In plan mode, only a restricted set of tools is returned (no deferral).
42
42
  */
43
43
  private getRunTools;
44
+ /**
45
+ * Evaluate registered PromptSections against a context and return the ones
46
+ * that fire, in registration order. For host-side testing of triggers.
47
+ */
48
+ resolveSections(ctx: SectionContext): Promise<{
49
+ name: string;
50
+ content: string;
51
+ }[]>;
52
+ /**
53
+ * Evaluate registered HistoryInjections against a turn context. `firedNames`
54
+ * is used to skip once-fired injections (default: none). For host-side
55
+ * testing of triggers.
56
+ */
57
+ evaluateInjections(ctx: TurnContext, firedNames?: string[]): Promise<{
58
+ name: string;
59
+ content: string;
60
+ once: boolean;
61
+ }[]>;
62
+ /**
63
+ * Invalidate a cached PromptSection for a conversation. On the next run, the
64
+ * section will be re-evaluated. If `name` is omitted, the entire section
65
+ * cache for the conversation is cleared.
66
+ */
67
+ invalidateSection(conversationId: string, name?: string): Promise<void>;
44
68
  /**
45
69
  * Run the agent with a user message
46
70
  */
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,YAAY,EAGZ,UAAU,EACV,WAAW,EAEZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAkB1C,4DAA4D;AAC5D,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAG3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAgGzD;;GAEG;AACH,qBAAa,MAAM;IACjB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,KAAK,CAAS;IACtB,mCAAmC;IACnC,OAAO,CAAC,YAAY,CAAS;IAC7B,oEAAoE;IACpE,OAAO,CAAC,mBAAmB,CAAgB;IAC3C,yEAAyE;IACzE,OAAO,CAAC,mBAAmB,CAAC,CAAe;gBAE/B,MAAM,EAAE,YAAY;IAwDhC;;;OAGG;IACH,OAAO,CAAC,YAAY;IA0BpB;;OAEG;IACH,sBAAsB,IAAI,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACH,sBAAsB,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAI/D;;;;OAIG;IACH,OAAO,CAAC,WAAW;IA8FnB;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAiR3E"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,YAAY,EAGZ,UAAU,EACV,WAAW,EAEX,cAAc,EACd,WAAW,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA8B1C,4DAA4D;AAC5D,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAG3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAgGzD;;GAEG;AACH,qBAAa,MAAM;IACjB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,KAAK,CAAS;IACtB,mCAAmC;IACnC,OAAO,CAAC,YAAY,CAAS;IAC7B,oEAAoE;IACpE,OAAO,CAAC,mBAAmB,CAAgB;IAC3C,yEAAyE;IACzE,OAAO,CAAC,mBAAmB,CAAC,CAAe;gBAE/B,MAAM,EAAE,YAAY;IAwDhC;;;OAGG;IACH,OAAO,CAAC,YAAY;IA0BpB;;OAEG;IACH,sBAAsB,IAAI,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACH,sBAAsB,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAI/D;;;;OAIG;IACH,OAAO,CAAC,WAAW;IA8FnB;;;OAGG;IACG,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAMxF;;;;OAIG;IACG,kBAAkB,CACtB,GAAG,EAAE,WAAW,EAChB,UAAU,GAAE,MAAM,EAAO,GACxB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;IAK9D;;;;OAIG;IACG,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB7E;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CA8V3E"}
package/dist/agent.js CHANGED
@@ -11,6 +11,7 @@ import { createAskUserTool, createTaskTool as createSubAgentTool, createSkillToo
11
11
  import { getBuiltInAgents } from "./built-in-agents/index.js";
12
12
  import { MainAgentBuilder } from "./prompt/main-agent-builder.js";
13
13
  import { TASK_SCOPE_INSTRUCTIONS } from "./constants.js";
14
+ import { loadTupletState, saveTupletState, resolveSections, formatSectionsForPrompt, evaluateInjections, renderInjectionsPayload, countUserTurns, extractLastUserText, } from "./prompt-sections.js";
14
15
  /** Path where the plan is stored in workspace (relative) */
15
16
  export const PLAN_PATH = ".tuplet/plan.md";
16
17
  // Re-export for public API
@@ -273,6 +274,49 @@ export class Tuplet {
273
274
  }
274
275
  return { coreTools, deferredTools };
275
276
  }
277
+ /**
278
+ * Evaluate registered PromptSections against a context and return the ones
279
+ * that fire, in registration order. For host-side testing of triggers.
280
+ */
281
+ async resolveSections(ctx) {
282
+ if (!this.config.sections || this.config.sections.length === 0)
283
+ return [];
284
+ const { fired } = await resolveSections(this.config.sections, ctx, undefined);
285
+ return fired;
286
+ }
287
+ /**
288
+ * Evaluate registered HistoryInjections against a turn context. `firedNames`
289
+ * is used to skip once-fired injections (default: none). For host-side
290
+ * testing of triggers.
291
+ */
292
+ async evaluateInjections(ctx, firedNames = []) {
293
+ if (!this.config.historyInjections || this.config.historyInjections.length === 0)
294
+ return [];
295
+ return evaluateInjections(this.config.historyInjections, ctx, firedNames);
296
+ }
297
+ /**
298
+ * Invalidate a cached PromptSection for a conversation. On the next run, the
299
+ * section will be re-evaluated. If `name` is omitted, the entire section
300
+ * cache for the conversation is cleared.
301
+ */
302
+ async invalidateSection(conversationId, name) {
303
+ const repo = this.config.repository;
304
+ if (!repo?.getState || !repo?.saveState)
305
+ return;
306
+ const state = (await repo.getState(conversationId)) || {};
307
+ const tuplet = (state['__tuplet'] || {});
308
+ if (!tuplet.sections)
309
+ return;
310
+ if (name) {
311
+ const next = { ...tuplet.sections };
312
+ delete next[name];
313
+ tuplet.sections = next;
314
+ }
315
+ else {
316
+ tuplet.sections = {};
317
+ }
318
+ await repo.saveState(conversationId, { ...state, __tuplet: tuplet });
319
+ }
276
320
  /**
277
321
  * Run the agent with a user message
278
322
  */
@@ -430,6 +474,57 @@ export class Tuplet {
430
474
  ### Asking the User
431
475
  When you need information the user hasn't provided and you cannot find it via other tools, call __ask_user__ with 1-4 questions. Each question should include relevant options. Do NOT ask for information already in the conversation or in workspace data.`;
432
476
  }
477
+ // Prompt sections & history injections (issue #15).
478
+ // Skip for sub-agents (they pass _systemPrompt and have their own config).
479
+ let sessionState = {};
480
+ const hasSectionsOrInjections = !this.config._systemPrompt &&
481
+ ((this.config.sections && this.config.sections.length > 0) ||
482
+ (this.config.historyInjections && this.config.historyInjections.length > 0));
483
+ if (hasSectionsOrInjections) {
484
+ sessionState = await loadTupletState(this.config.repository, conversationId);
485
+ const sectionCtx = {
486
+ context: options.context,
487
+ conversationId: conversationId ?? '',
488
+ };
489
+ if (this.config.sections && this.config.sections.length > 0) {
490
+ const { fired, updatedCache } = await resolveSections(this.config.sections, sectionCtx, sessionState.sections);
491
+ sessionState = { ...sessionState, sections: updatedCache };
492
+ const rendered = formatSectionsForPrompt(fired);
493
+ if (rendered) {
494
+ systemPrompt += `\n\n${rendered}`;
495
+ }
496
+ }
497
+ if (!isResuming &&
498
+ this.config.historyInjections &&
499
+ this.config.historyInjections.length > 0) {
500
+ const turnCtx = {
501
+ ...sectionCtx,
502
+ turnIndex: countUserTurns(messages),
503
+ lastUserMessage: extractLastUserText(messages),
504
+ };
505
+ const firedNames = sessionState.firedInjections ?? [];
506
+ const newFired = await evaluateInjections(this.config.historyInjections, turnCtx, firedNames);
507
+ if (newFired.length > 0) {
508
+ const payload = renderInjectionsPayload(newFired);
509
+ const insertIdx = messages.length - 1;
510
+ const prev = insertIdx > 0 ? messages[insertIdx - 1] : null;
511
+ const toInsert = [];
512
+ if (prev && prev.role === 'user') {
513
+ toInsert.push({ role: 'assistant', content: 'Noted.' });
514
+ }
515
+ toInsert.push({ role: 'user', content: payload });
516
+ toInsert.push({ role: 'assistant', content: 'Noted.' });
517
+ messages.splice(insertIdx < 0 ? 0 : insertIdx, 0, ...toInsert);
518
+ const updatedFired = [...firedNames];
519
+ for (const inj of newFired) {
520
+ if (inj.once && !updatedFired.includes(inj.name)) {
521
+ updatedFired.push(inj.name);
522
+ }
523
+ }
524
+ sessionState = { ...sessionState, firedInjections: updatedFired };
525
+ }
526
+ }
527
+ }
433
528
  // Build tools list — split into core (always in API) and deferred (loaded on demand)
434
529
  const { coreTools, deferredTools } = this.getRunTools(taskManager, ws, this.config.agentName, mode);
435
530
  // All tools listed in system prompt (compact format) for models without native tool support
@@ -481,6 +576,15 @@ When you need information the user hasn't provided and you cannot find it via ot
481
576
  this.config.logger?.warn("Failed to save history", saveError);
482
577
  }
483
578
  }
579
+ // Persist section/injection state so they don't re-fire on the next run.
580
+ if (hasSectionsOrInjections && conversationId) {
581
+ try {
582
+ await saveTupletState(this.config.repository, conversationId, sessionState);
583
+ }
584
+ catch (saveError) {
585
+ this.config.logger?.warn("Failed to save tuplet state", saveError);
586
+ }
587
+ }
484
588
  }
485
589
  // End trace and attach to result (only for root agent, not sub-agents)
486
590
  if (traceBuilder && !options._traceBuilder) {
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Minimal TypeScript agent framework inspired by Claude Code architecture.
5
5
  */
6
6
  export { Tuplet, Tuplet as Hive, PLAN_PATH } from './agent.js';
7
- export type { Message, MessageRole, ContentBlock, TextBlock, ThinkingBlock, ToolUseBlock, ToolResultBlock, Tool, ToolSchema, ToolResult, ToolContext, ToolCallLog, JSONSchema, TupletConfig, TupletConfig as HiveConfig, SubAgentConfig, SkillConfig, RunOptions, AgentResult, AgentStatus, PendingQuestion, QuestionOption, EnhancedQuestion, TaskItem, TaskStatus, TaskComment, TaskProgress, TaskUpdateNotification, TodoItem, TodoStatus, TodoProgress, TodoUpdate, LLMProvider, LLMResponse, LLMOptions, StopReason, LogProvider, RepositoryProvider, EnvironmentProvider, ProgressUpdate, CacheUsage, ContextStrategy, SystemPromptConfig, EnvironmentInfo } from './types.js';
7
+ export type { Message, MessageRole, ContentBlock, TextBlock, ThinkingBlock, ToolUseBlock, ToolResultBlock, Tool, ToolSchema, ToolResult, ToolContext, ToolCallLog, JSONSchema, TupletConfig, TupletConfig as HiveConfig, SubAgentConfig, SkillConfig, RunOptions, AgentResult, AgentStatus, PendingQuestion, QuestionOption, EnhancedQuestion, TaskItem, TaskStatus, TaskComment, TaskProgress, TaskUpdateNotification, TodoItem, TodoStatus, TodoProgress, TodoUpdate, LLMProvider, LLMResponse, LLMOptions, StopReason, LogProvider, RepositoryProvider, EnvironmentProvider, ProgressUpdate, CacheUsage, ContextStrategy, SystemPromptConfig, EnvironmentInfo, PromptSection, HistoryInjection, SectionContext, TurnContext, SectionTrigger, SectionContent, InjectionTrigger, InjectionContent } from './types.js';
8
8
  export { describeActivity, extractShellActivity, extractPipelineActivity, classifyTool, classifyShellCommand, type Activity, type ShellHttpRequestActivity, type ShellBrowseActivity, type ShellFileReadActivity, type ShellFileWriteActivity, type ShellFileSearchActivity, type ShellFileManageActivity, type ShellFileInfoActivity, type ShellDataTransformActivity, type ShellSystemActivity, type ShellOtherActivity, type ToolReadFileActivity, type ToolEditFileActivity, type ToolWriteFileActivity, type ToolSearchFilesActivity, type ToolSearchContentActivity, type ToolWebFetchActivity, type ToolWebSearchActivity, type ToolSubAgentActivity, type ToolTaskManageActivity, type ToolOtherActivity, type AgentThinkingActivity, type AgentRespondingActivity, type AgentInterruptedActivity } from './activity.js';
9
9
  export { ClaudeProvider, type ClaudeProviderConfig } from './providers/llm/claude.js';
10
10
  export { OpenAIProvider, type OpenAIProviderConfig } from './providers/llm/openai.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,mBAAmB;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAiE9D,8CAA8C;AAC9C,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,YAAY,EACZ,oBAAoB,EAyBrB,MAAM,eAAe,CAAA;AAEtB,YAAY;AACZ,OAAO,EACL,cAAc,EAEf,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,cAAc,EAEf,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,kBAAkB,EAEnB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,aAAa,EAGd,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,gBAAgB,EACjB,MAAM,kCAAkC,CAAA;AAEzC,wBAAwB;AACxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AAErE,YAAY;AACZ,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACb,MAAM,iBAAiB,CAAA;AAExB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB;AACrB,kBAAkB;AAClB,eAAe;AACf,kDAAkD;AAClD,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,aAAa,EAUd,MAAM,aAAa,CAAA;AAEpB,kDAAkD;AAClD,OAAO,EACL,WAAW,EACX,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB;AAElB,sCAAsC;AACtC,WAAW,EACX,cAAc,EACd,cAAc,EAEf,MAAM,kBAAkB,CAAA;AAEzB,UAAU;AACV,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EAazB,MAAM,YAAY,CAAA;AAEnB,YAAY;AACZ,OAAO,EACL,SAAS,EAUV,MAAM,gBAAgB,CAAA;AAEvB,sBAAsB;AACtB,OAAO,EAIL,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,gCAAgC,CAAA;AAEvC,QAAQ;AACR,OAAO,EACL,KAAK,EAON,MAAM,kBAAkB,CAAA;AAEzB,kBAAkB;AAClB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAEtF,4CAA4C;AAC5C,OAAO,EACL,WAAW,EACX,WAAW,EACX,SAAS,EAUV,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,mBAAmB;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AA2E9D,8CAA8C;AAC9C,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,YAAY,EACZ,oBAAoB,EAyBrB,MAAM,eAAe,CAAA;AAEtB,YAAY;AACZ,OAAO,EACL,cAAc,EAEf,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,cAAc,EAEf,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,kBAAkB,EAEnB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,aAAa,EAGd,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,gBAAgB,EACjB,MAAM,kCAAkC,CAAA;AAEzC,wBAAwB;AACxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AAErE,YAAY;AACZ,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACb,MAAM,iBAAiB,CAAA;AAExB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB;AACrB,kBAAkB;AAClB,eAAe;AACf,kDAAkD;AAClD,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,aAAa,EAUd,MAAM,aAAa,CAAA;AAEpB,kDAAkD;AAClD,OAAO,EACL,WAAW,EACX,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB;AAElB,sCAAsC;AACtC,WAAW,EACX,cAAc,EACd,cAAc,EAEf,MAAM,kBAAkB,CAAA;AAEzB,UAAU;AACV,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EAazB,MAAM,YAAY,CAAA;AAEnB,YAAY;AACZ,OAAO,EACL,SAAS,EAUV,MAAM,gBAAgB,CAAA;AAEvB,sBAAsB;AACtB,OAAO,EAIL,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,gCAAgC,CAAA;AAEvC,QAAQ;AACR,OAAO,EACL,KAAK,EAON,MAAM,kBAAkB,CAAA;AAEzB,kBAAkB;AAClB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAEtF,4CAA4C;AAC5C,OAAO,EACL,WAAW,EACX,WAAW,EACX,SAAS,EAUV,MAAM,8BAA8B,CAAA"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Prompt Sections & History Injections (issue #15)
3
+ *
4
+ * Two primitives with a shared `{ name, when, content }` shape:
5
+ * - PromptSection: evaluated once at turn 1, appended to the system prompt
6
+ * - HistoryInjection: evaluated each turn until fired, wrapped and inserted
7
+ * into the message history before the current user turn
8
+ *
9
+ * Session state (which sections/injections have fired) lives in the repository
10
+ * alongside the conversation, under the `__tuplet` key.
11
+ */
12
+ import type { Message, PromptSection, HistoryInjection, SectionContext, TurnContext, RepositoryProvider } from './types.js';
13
+ export interface SectionCacheEntry {
14
+ fired: boolean;
15
+ content?: string;
16
+ }
17
+ export interface TupletSessionState {
18
+ sections?: Record<string, SectionCacheEntry>;
19
+ firedInjections?: string[];
20
+ }
21
+ export interface FiredInjection {
22
+ name: string;
23
+ content: string;
24
+ once: boolean;
25
+ }
26
+ export declare function loadTupletState(repo: RepositoryProvider | undefined, conversationId: string | undefined): Promise<TupletSessionState>;
27
+ export declare function saveTupletState(repo: RepositoryProvider | undefined, conversationId: string | undefined, tupletState: TupletSessionState): Promise<void>;
28
+ /**
29
+ * Resolve sections against cache, evaluating only those not yet cached.
30
+ * Sections are evaluated in registration order; fired ones are returned in the
31
+ * same order for stable prompt rendering.
32
+ */
33
+ export declare function resolveSections(sections: PromptSection[], ctx: SectionContext, cache: Record<string, SectionCacheEntry> | undefined): Promise<{
34
+ fired: {
35
+ name: string;
36
+ content: string;
37
+ }[];
38
+ updatedCache: Record<string, SectionCacheEntry>;
39
+ }>;
40
+ /**
41
+ * Format fired sections for appending to the system prompt.
42
+ * Each section is wrapped in a `<tuplet-note kind="prompt-section">` tag so the
43
+ * model can consistently recognize the boundary.
44
+ */
45
+ export declare function formatSectionsForPrompt(fired: {
46
+ name: string;
47
+ content: string;
48
+ }[]): string;
49
+ /**
50
+ * Evaluate injections against the current turn, skipping any that already fired
51
+ * (for `once: true`, which is the default).
52
+ */
53
+ export declare function evaluateInjections(injections: HistoryInjection[], ctx: TurnContext, firedNames: string[]): Promise<FiredInjection[]>;
54
+ export declare function wrapInjection(name: string, content: string): string;
55
+ /**
56
+ * Merge all fired injections into a single user message's worth of content so
57
+ * we don't emit multiple consecutive user messages.
58
+ */
59
+ export declare function renderInjectionsPayload(fired: FiredInjection[]): string;
60
+ /**
61
+ * Count user-originating turns in a message list.
62
+ * A "user turn" is a user message whose content is a string or contains at
63
+ * least one text block (i.e. not a message that only carries tool_results).
64
+ */
65
+ export declare function countUserTurns(messages: Message[]): number;
66
+ /**
67
+ * Extract the text of the latest user-originating message for TurnContext.
68
+ */
69
+ export declare function extractLastUserText(messages: Message[]): string;
70
+ //# sourceMappingURL=prompt-sections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-sections.d.ts","sourceRoot":"","sources":["../src/prompt-sections.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,kBAAkB,EACnB,MAAM,YAAY,CAAA;AAInB,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAC5C,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,OAAO,CAAA;CACd;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,kBAAkB,GAAG,SAAS,EACpC,cAAc,EAAE,MAAM,GAAG,SAAS,GACjC,OAAO,CAAC,kBAAkB,CAAC,CAO7B;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,kBAAkB,GAAG,SAAS,EACpC,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,WAAW,EAAE,kBAAkB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAIf;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,aAAa,EAAE,EACzB,GAAG,EAAE,cAAc,EACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,SAAS,GACnD,OAAO,CAAC;IACT,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC1C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;CAChD,CAAC,CA0BD;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,GACzC,MAAM,CAQR;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,gBAAgB,EAAE,EAC9B,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,cAAc,EAAE,CAAC,CAc3B;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,MAAM,CAEvE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAW1D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAW/D"}
@@ -0,0 +1,138 @@
1
+ /**
2
+ * Prompt Sections & History Injections (issue #15)
3
+ *
4
+ * Two primitives with a shared `{ name, when, content }` shape:
5
+ * - PromptSection: evaluated once at turn 1, appended to the system prompt
6
+ * - HistoryInjection: evaluated each turn until fired, wrapped and inserted
7
+ * into the message history before the current user turn
8
+ *
9
+ * Session state (which sections/injections have fired) lives in the repository
10
+ * alongside the conversation, under the `__tuplet` key.
11
+ */
12
+ const STATE_KEY = '__tuplet';
13
+ export async function loadTupletState(repo, conversationId) {
14
+ if (!repo?.getState || !conversationId)
15
+ return {};
16
+ const state = await repo.getState(conversationId);
17
+ if (!state)
18
+ return {};
19
+ const tuplet = state[STATE_KEY];
20
+ if (!tuplet || typeof tuplet !== 'object')
21
+ return {};
22
+ return tuplet;
23
+ }
24
+ export async function saveTupletState(repo, conversationId, tupletState) {
25
+ if (!repo?.saveState || !conversationId)
26
+ return;
27
+ const existing = (repo.getState ? await repo.getState(conversationId) : null) || {};
28
+ await repo.saveState(conversationId, { ...existing, [STATE_KEY]: tupletState });
29
+ }
30
+ /**
31
+ * Resolve sections against cache, evaluating only those not yet cached.
32
+ * Sections are evaluated in registration order; fired ones are returned in the
33
+ * same order for stable prompt rendering.
34
+ */
35
+ export async function resolveSections(sections, ctx, cache) {
36
+ const updatedCache = { ...(cache || {}) };
37
+ const fired = [];
38
+ for (const section of sections) {
39
+ const existing = updatedCache[section.name];
40
+ if (existing) {
41
+ if (existing.fired && typeof existing.content === 'string') {
42
+ fired.push({ name: section.name, content: existing.content });
43
+ }
44
+ continue;
45
+ }
46
+ const matched = await Promise.resolve(section.when(ctx));
47
+ if (!matched) {
48
+ updatedCache[section.name] = { fired: false };
49
+ continue;
50
+ }
51
+ const rendered = typeof section.content === 'function'
52
+ ? await Promise.resolve(section.content(ctx))
53
+ : section.content;
54
+ updatedCache[section.name] = { fired: true, content: rendered };
55
+ fired.push({ name: section.name, content: rendered });
56
+ }
57
+ return { fired, updatedCache };
58
+ }
59
+ /**
60
+ * Format fired sections for appending to the system prompt.
61
+ * Each section is wrapped in a `<tuplet-note kind="prompt-section">` tag so the
62
+ * model can consistently recognize the boundary.
63
+ */
64
+ export function formatSectionsForPrompt(fired) {
65
+ if (fired.length === 0)
66
+ return '';
67
+ return fired
68
+ .map(f => `<tuplet-note kind="prompt-section" name="${f.name}">\n${f.content}\n</tuplet-note>`)
69
+ .join('\n\n');
70
+ }
71
+ /**
72
+ * Evaluate injections against the current turn, skipping any that already fired
73
+ * (for `once: true`, which is the default).
74
+ */
75
+ export async function evaluateInjections(injections, ctx, firedNames) {
76
+ const fired = [];
77
+ for (const inj of injections) {
78
+ const once = inj.once !== false;
79
+ if (once && firedNames.includes(inj.name))
80
+ continue;
81
+ const matched = await Promise.resolve(inj.when(ctx));
82
+ if (!matched)
83
+ continue;
84
+ const rendered = typeof inj.content === 'function'
85
+ ? await Promise.resolve(inj.content(ctx))
86
+ : inj.content;
87
+ fired.push({ name: inj.name, content: rendered, once });
88
+ }
89
+ return fired;
90
+ }
91
+ export function wrapInjection(name, content) {
92
+ return `<tuplet-note kind="history-injection" name="${name}">\n${content}\n</tuplet-note>`;
93
+ }
94
+ /**
95
+ * Merge all fired injections into a single user message's worth of content so
96
+ * we don't emit multiple consecutive user messages.
97
+ */
98
+ export function renderInjectionsPayload(fired) {
99
+ return fired.map(f => wrapInjection(f.name, f.content)).join('\n\n');
100
+ }
101
+ /**
102
+ * Count user-originating turns in a message list.
103
+ * A "user turn" is a user message whose content is a string or contains at
104
+ * least one text block (i.e. not a message that only carries tool_results).
105
+ */
106
+ export function countUserTurns(messages) {
107
+ let count = 0;
108
+ for (const m of messages) {
109
+ if (m.role !== 'user')
110
+ continue;
111
+ if (typeof m.content === 'string') {
112
+ count++;
113
+ continue;
114
+ }
115
+ if (m.content.some(b => b.type === 'text'))
116
+ count++;
117
+ }
118
+ return count;
119
+ }
120
+ /**
121
+ * Extract the text of the latest user-originating message for TurnContext.
122
+ */
123
+ export function extractLastUserText(messages) {
124
+ for (let i = messages.length - 1; i >= 0; i--) {
125
+ const m = messages[i];
126
+ if (m.role !== 'user')
127
+ continue;
128
+ if (typeof m.content === 'string')
129
+ return m.content;
130
+ const texts = m.content
131
+ .filter((b) => b.type === 'text')
132
+ .map(b => b.text);
133
+ if (texts.length > 0)
134
+ return texts.join('\n');
135
+ }
136
+ return '';
137
+ }
138
+ //# sourceMappingURL=prompt-sections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-sections.js","sourceRoot":"","sources":["../src/prompt-sections.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=prompt-sections.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-sections.test.d.ts","sourceRoot":"","sources":["../src/prompt-sections.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,455 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { Tuplet } from './agent.js';
3
+ import { MemoryRepository } from './providers/repository/memory.js';
4
+ import { resolveSections, evaluateInjections, formatSectionsForPrompt, wrapInjection, renderInjectionsPayload, countUserTurns, extractLastUserText, loadTupletState, } from './prompt-sections.js';
5
+ const endTurn = {
6
+ content: [{ type: 'text', text: 'done' }],
7
+ stopReason: 'end_turn',
8
+ usage: { inputTokens: 1, outputTokens: 1 },
9
+ };
10
+ function recordingLLM(response = endTurn) {
11
+ const calls = [];
12
+ const llm = {
13
+ chat: async (system, messages) => {
14
+ calls.push({ system, messages: JSON.parse(JSON.stringify(messages)) });
15
+ return response;
16
+ },
17
+ getModelId: () => 'stub:stub',
18
+ supportsNativeTools: true,
19
+ };
20
+ return { llm, calls };
21
+ }
22
+ describe('pure helpers', () => {
23
+ it('countUserTurns ignores tool_result-only messages', () => {
24
+ const messages = [
25
+ { role: 'user', content: 'hi' },
26
+ { role: 'assistant', content: [{ type: 'tool_use', id: 't', name: 'x', input: {} }] },
27
+ { role: 'user', content: [{ type: 'tool_result', tool_use_id: 't', content: 'ok' }] },
28
+ { role: 'assistant', content: 'ok' },
29
+ { role: 'user', content: 'again' },
30
+ ];
31
+ expect(countUserTurns(messages)).toBe(2);
32
+ });
33
+ it('extractLastUserText walks backward through messages', () => {
34
+ const messages = [
35
+ { role: 'user', content: 'first' },
36
+ { role: 'assistant', content: 'hi' },
37
+ { role: 'user', content: [{ type: 'tool_result', tool_use_id: 't', content: 'x' }] },
38
+ { role: 'user', content: 'latest' },
39
+ ];
40
+ expect(extractLastUserText(messages)).toBe('latest');
41
+ });
42
+ it('wrapInjection uses <tuplet-note> with kind and name attrs', () => {
43
+ const wrapped = wrapInjection('restoration-mode', 'be gentle');
44
+ expect(wrapped).toContain('<tuplet-note kind="history-injection" name="restoration-mode">');
45
+ expect(wrapped).toContain('</tuplet-note>');
46
+ expect(wrapped).toContain('be gentle');
47
+ });
48
+ it('renderInjectionsPayload joins multiple injections into one block', () => {
49
+ const payload = renderInjectionsPayload([
50
+ { name: 'a', content: 'first', once: true },
51
+ { name: 'b', content: 'second', once: false },
52
+ ]);
53
+ expect(payload).toMatch(/name="a"[\s\S]*first[\s\S]*name="b"[\s\S]*second/);
54
+ });
55
+ it('formatSectionsForPrompt wraps each section', () => {
56
+ const out = formatSectionsForPrompt([
57
+ { name: 'admin', content: 'admin stuff' },
58
+ { name: 'source', content: 'cron source' },
59
+ ]);
60
+ expect(out).toContain('kind="prompt-section" name="admin"');
61
+ expect(out).toContain('kind="prompt-section" name="source"');
62
+ expect(out).toContain('admin stuff');
63
+ expect(out).toContain('cron source');
64
+ });
65
+ });
66
+ describe('resolveSections', () => {
67
+ const ctx = { context: { isAdmin: true }, conversationId: 'c1' };
68
+ it('evaluates sections whose when returns true', async () => {
69
+ const sections = [
70
+ { name: 'admin', when: c => c.context.isAdmin, content: 'ADMIN' },
71
+ { name: 'guest', when: () => false, content: 'GUEST' },
72
+ ];
73
+ const { fired, updatedCache } = await resolveSections(sections, ctx, undefined);
74
+ expect(fired.map(f => f.name)).toEqual(['admin']);
75
+ expect(fired[0].content).toBe('ADMIN');
76
+ expect(updatedCache.admin).toEqual({ fired: true, content: 'ADMIN' });
77
+ expect(updatedCache.guest).toEqual({ fired: false });
78
+ });
79
+ it('reads from cache on subsequent runs without re-evaluating', async () => {
80
+ let evalCount = 0;
81
+ const sections = [
82
+ {
83
+ name: 'admin',
84
+ when: () => {
85
+ evalCount++;
86
+ return true;
87
+ },
88
+ content: 'A',
89
+ },
90
+ ];
91
+ const { updatedCache } = await resolveSections(sections, ctx, undefined);
92
+ expect(evalCount).toBe(1);
93
+ const second = await resolveSections(sections, ctx, updatedCache);
94
+ expect(evalCount).toBe(1);
95
+ expect(second.fired.map(f => f.name)).toEqual(['admin']);
96
+ });
97
+ it('awaits async predicates and async content', async () => {
98
+ const sections = [
99
+ {
100
+ name: 'async',
101
+ when: async () => true,
102
+ content: async () => 'async-content',
103
+ },
104
+ ];
105
+ const { fired } = await resolveSections(sections, ctx, undefined);
106
+ expect(fired[0].content).toBe('async-content');
107
+ });
108
+ it('preserves registration order', async () => {
109
+ const sections = [
110
+ { name: 'a', when: () => true, content: 'A' },
111
+ { name: 'b', when: () => true, content: 'B' },
112
+ { name: 'c', when: () => true, content: 'C' },
113
+ ];
114
+ const { fired } = await resolveSections(sections, ctx, undefined);
115
+ expect(fired.map(f => f.name)).toEqual(['a', 'b', 'c']);
116
+ });
117
+ });
118
+ describe('evaluateInjections', () => {
119
+ const ctx = {
120
+ context: { mood: 'stressed' },
121
+ conversationId: 'c1',
122
+ turnIndex: 1,
123
+ lastUserMessage: 'help',
124
+ };
125
+ it('fires injections whose when returns true', async () => {
126
+ const injections = [
127
+ {
128
+ name: 'stress',
129
+ when: c => c.context.mood === 'stressed',
130
+ content: 'be gentle',
131
+ },
132
+ { name: 'happy', when: () => false, content: 'celebrate' },
133
+ ];
134
+ const fired = await evaluateInjections(injections, ctx, []);
135
+ expect(fired.map(f => f.name)).toEqual(['stress']);
136
+ });
137
+ it('skips once-fired injections by default', async () => {
138
+ const injections = [
139
+ { name: 'stress', when: () => true, content: 'x' },
140
+ ];
141
+ const fired = await evaluateInjections(injections, ctx, ['stress']);
142
+ expect(fired).toEqual([]);
143
+ });
144
+ it('re-fires once:false injections even when listed as fired', async () => {
145
+ const injections = [
146
+ { name: 'recurring', once: false, when: () => true, content: 'x' },
147
+ ];
148
+ const fired = await evaluateInjections(injections, ctx, ['recurring']);
149
+ expect(fired.map(f => f.name)).toEqual(['recurring']);
150
+ });
151
+ });
152
+ describe('Tuplet integration', () => {
153
+ it('appends fired PromptSection content to the system prompt on turn 1', async () => {
154
+ const { llm, calls } = recordingLLM();
155
+ const agent = new Tuplet({
156
+ role: 'tester',
157
+ tools: [],
158
+ agents: [],
159
+ llm,
160
+ sections: [
161
+ {
162
+ name: 'admin',
163
+ when: ctx => ctx.context.admin,
164
+ content: 'ADMIN_GUIDE_TEXT',
165
+ },
166
+ { name: 'guest', when: () => false, content: 'GUEST_GUIDE' },
167
+ ],
168
+ });
169
+ await agent.run('hello', { context: { admin: true } });
170
+ expect(calls[0].system).toContain('ADMIN_GUIDE_TEXT');
171
+ expect(calls[0].system).toContain('kind="prompt-section" name="admin"');
172
+ expect(calls[0].system).not.toContain('GUEST_GUIDE');
173
+ });
174
+ it('caches section evaluation across runs (no re-evaluation on turn 2)', async () => {
175
+ const { llm } = recordingLLM();
176
+ const repo = new MemoryRepository();
177
+ let evalCount = 0;
178
+ const agent = new Tuplet({
179
+ role: 'tester',
180
+ tools: [],
181
+ agents: [],
182
+ llm,
183
+ repository: repo,
184
+ sections: [
185
+ {
186
+ name: 'p',
187
+ when: () => {
188
+ evalCount++;
189
+ return true;
190
+ },
191
+ content: 'P',
192
+ },
193
+ ],
194
+ });
195
+ await agent.run('one', { conversationId: 'c1' });
196
+ await agent.run('two', { conversationId: 'c1' });
197
+ expect(evalCount).toBe(1);
198
+ });
199
+ it('inserts HistoryInjection wrapped in <tuplet-note> before the current user msg', async () => {
200
+ const { llm, calls } = recordingLLM();
201
+ const agent = new Tuplet({
202
+ role: 'tester',
203
+ tools: [],
204
+ agents: [],
205
+ llm,
206
+ historyInjections: [
207
+ { name: 'stress', when: () => true, content: 'be gentle' },
208
+ ],
209
+ });
210
+ await agent.run('I am tired', {});
211
+ const msgs = calls[0].messages;
212
+ // Expected: injection-user, ack-asst, real-user
213
+ expect(msgs).toHaveLength(3);
214
+ expect(msgs[0].role).toBe('user');
215
+ expect(typeof msgs[0].content === 'string' ? msgs[0].content : '')
216
+ .toContain('<tuplet-note kind="history-injection" name="stress">');
217
+ expect(typeof msgs[0].content === 'string' ? msgs[0].content : '').toContain('be gentle');
218
+ expect(msgs[1].role).toBe('assistant');
219
+ expect(msgs[2].role).toBe('user');
220
+ expect(msgs[2].content).toBe('I am tired');
221
+ });
222
+ it('HistoryInjection once:true (default) does not re-fire on the next run', async () => {
223
+ const { llm, calls } = recordingLLM();
224
+ const repo = new MemoryRepository();
225
+ let fireCount = 0;
226
+ const agent = new Tuplet({
227
+ role: 'tester',
228
+ tools: [],
229
+ agents: [],
230
+ llm,
231
+ repository: repo,
232
+ historyInjections: [
233
+ {
234
+ name: 'once-only',
235
+ when: () => {
236
+ fireCount++;
237
+ return true;
238
+ },
239
+ content: 'first-only note',
240
+ },
241
+ ],
242
+ });
243
+ await agent.run('first', { conversationId: 'c1' });
244
+ await agent.run('second', { conversationId: 'c1' });
245
+ // Once the injection has fired, subsequent runs short-circuit and do not
246
+ // re-evaluate its `when` predicate.
247
+ expect(fireCount).toBe(1);
248
+ const secondCallSystem = calls[1].messages
249
+ .map(m => (typeof m.content === 'string' ? m.content : JSON.stringify(m.content)))
250
+ .join('\n');
251
+ // Should not contain a fresh injection — but the FIRST injection is still
252
+ // in history (persisted from turn 1). Assert the second call does not have
253
+ // TWO injection blocks.
254
+ const occurrences = secondCallSystem.match(/name="once-only"/g)?.length ?? 0;
255
+ expect(occurrences).toBe(1);
256
+ });
257
+ it('HistoryInjection once:false fires every turn', async () => {
258
+ const { llm, calls } = recordingLLM();
259
+ const repo = new MemoryRepository();
260
+ const agent = new Tuplet({
261
+ role: 'tester',
262
+ tools: [],
263
+ agents: [],
264
+ llm,
265
+ repository: repo,
266
+ historyInjections: [
267
+ { name: 'heartbeat', once: false, when: () => true, content: 'ping' },
268
+ ],
269
+ });
270
+ await agent.run('one', { conversationId: 'c1' });
271
+ await agent.run('two', { conversationId: 'c1' });
272
+ // First call has 1 injection + 1 ack + 1 user = 3 messages
273
+ expect(calls[0].messages).toHaveLength(3);
274
+ // Second call history: [injection1, ack, user1, asst, injection2, ack, user2]
275
+ const second = calls[1].messages;
276
+ const userTextMsgs = second.filter(m => m.role === 'user' && typeof m.content === 'string' && !m.content.includes('<tuplet-note'));
277
+ expect(userTextMsgs.map(m => m.content)).toEqual(['one', 'two']);
278
+ const injectionMsgs = second.filter(m => m.role === 'user' && typeof m.content === 'string' && m.content.includes('<tuplet-note kind="history-injection"'));
279
+ expect(injectionMsgs).toHaveLength(2);
280
+ });
281
+ it('persists firedInjections across runs in repository state', async () => {
282
+ const { llm } = recordingLLM();
283
+ const repo = new MemoryRepository();
284
+ const agent = new Tuplet({
285
+ role: 'tester',
286
+ tools: [],
287
+ agents: [],
288
+ llm,
289
+ repository: repo,
290
+ historyInjections: [{ name: 'fired-once', when: () => true, content: 'x' }],
291
+ });
292
+ await agent.run('hi', { conversationId: 'c1' });
293
+ const state = await loadTupletState(repo, 'c1');
294
+ expect(state.firedInjections).toEqual(['fired-once']);
295
+ });
296
+ it('merges multiple simultaneous injections into one user message', async () => {
297
+ const { llm, calls } = recordingLLM();
298
+ const agent = new Tuplet({
299
+ role: 'tester',
300
+ tools: [],
301
+ agents: [],
302
+ llm,
303
+ historyInjections: [
304
+ { name: 'a', when: () => true, content: 'A' },
305
+ { name: 'b', when: () => true, content: 'B' },
306
+ ],
307
+ });
308
+ await agent.run('hello', {});
309
+ const msgs = calls[0].messages;
310
+ expect(msgs).toHaveLength(3);
311
+ const payload = typeof msgs[0].content === 'string' ? msgs[0].content : '';
312
+ expect(payload).toContain('name="a"');
313
+ expect(payload).toContain('name="b"');
314
+ });
315
+ it('does not evaluate sections or injections when resuming from __ask_user__', async () => {
316
+ const { llm } = recordingLLM();
317
+ let sectionCalls = 0;
318
+ let injectionCalls = 0;
319
+ const agent = new Tuplet({
320
+ role: 'tester',
321
+ tools: [],
322
+ agents: [],
323
+ llm,
324
+ sections: [
325
+ {
326
+ name: 's',
327
+ when: () => {
328
+ sectionCalls++;
329
+ return true;
330
+ },
331
+ content: 'S',
332
+ },
333
+ ],
334
+ historyInjections: [
335
+ {
336
+ name: 'i',
337
+ when: () => {
338
+ injectionCalls++;
339
+ return true;
340
+ },
341
+ content: 'I',
342
+ },
343
+ ],
344
+ });
345
+ // Simulate a resume: history ends with assistant __ask_user__ tool_use
346
+ const history = [
347
+ { role: 'user', content: 'start' },
348
+ {
349
+ role: 'assistant',
350
+ content: [
351
+ {
352
+ type: 'tool_use',
353
+ id: 'ask1',
354
+ name: '__ask_user__',
355
+ input: { questions: [{ question: 'Which?' }] },
356
+ },
357
+ ],
358
+ },
359
+ ];
360
+ await agent.run('my answer', { history });
361
+ // Section still evaluates (turn 1 was never completed, and sections are
362
+ // cached for the session). Injection must NOT fire on resume.
363
+ expect(injectionCalls).toBe(0);
364
+ // Sections evaluate once regardless of resume — resume is mid-turn.
365
+ expect(sectionCalls).toBe(1);
366
+ });
367
+ it('Tuplet.resolveSections returns fired sections without repository state', async () => {
368
+ const agent = new Tuplet({
369
+ role: 'tester',
370
+ tools: [],
371
+ agents: [],
372
+ llm: recordingLLM().llm,
373
+ sections: [
374
+ { name: 'yes', when: c => c.context.x, content: 'YES' },
375
+ { name: 'no', when: c => !c.context.x, content: 'NO' },
376
+ ],
377
+ });
378
+ const fired = await agent.resolveSections({ context: { x: true }, conversationId: 'c' });
379
+ expect(fired.map(f => f.name)).toEqual(['yes']);
380
+ });
381
+ it('Tuplet.evaluateInjections respects firedNames', async () => {
382
+ const agent = new Tuplet({
383
+ role: 'tester',
384
+ tools: [],
385
+ agents: [],
386
+ llm: recordingLLM().llm,
387
+ historyInjections: [
388
+ { name: 'a', when: () => true, content: 'A' },
389
+ { name: 'b', when: () => true, content: 'B' },
390
+ ],
391
+ });
392
+ const fired = await agent.evaluateInjections({ context: {}, conversationId: 'c', turnIndex: 1, lastUserMessage: '' }, ['a']);
393
+ expect(fired.map(f => f.name)).toEqual(['b']);
394
+ });
395
+ it('invalidateSection clears a section from cache so it re-evaluates', async () => {
396
+ const { llm } = recordingLLM();
397
+ const repo = new MemoryRepository();
398
+ let evalCount = 0;
399
+ const agent = new Tuplet({
400
+ role: 'tester',
401
+ tools: [],
402
+ agents: [],
403
+ llm,
404
+ repository: repo,
405
+ sections: [
406
+ {
407
+ name: 'dyn',
408
+ when: () => {
409
+ evalCount++;
410
+ return true;
411
+ },
412
+ content: () => `v${evalCount}`,
413
+ },
414
+ ],
415
+ });
416
+ await agent.run('one', { conversationId: 'c1' });
417
+ expect(evalCount).toBe(1);
418
+ // Without invalidation, a second run would use cache.
419
+ await agent.run('two', { conversationId: 'c1' });
420
+ expect(evalCount).toBe(1);
421
+ await agent.invalidateSection('c1', 'dyn');
422
+ await agent.run('three', { conversationId: 'c1' });
423
+ expect(evalCount).toBe(2);
424
+ });
425
+ it('TurnContext exposes turnIndex and lastUserMessage', async () => {
426
+ const { llm } = recordingLLM();
427
+ const repo = new MemoryRepository();
428
+ const seen = [];
429
+ const agent = new Tuplet({
430
+ role: 'tester',
431
+ tools: [],
432
+ agents: [],
433
+ llm,
434
+ repository: repo,
435
+ historyInjections: [
436
+ {
437
+ name: 'watch',
438
+ once: false,
439
+ when: ctx => {
440
+ seen.push({ turnIndex: ctx.turnIndex, lastUserMessage: ctx.lastUserMessage });
441
+ return false;
442
+ },
443
+ content: '',
444
+ },
445
+ ],
446
+ });
447
+ await agent.run('first message', { conversationId: 'c1' });
448
+ await agent.run('second message', { conversationId: 'c1' });
449
+ expect(seen).toEqual([
450
+ { turnIndex: 1, lastUserMessage: 'first message' },
451
+ { turnIndex: 2, lastUserMessage: 'second message' },
452
+ ]);
453
+ });
454
+ });
455
+ //# sourceMappingURL=prompt-sections.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-sections.test.js","sourceRoot":"","sources":["../src/prompt-sections.test.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -194,6 +194,43 @@ export interface EnvironmentProvider {
194
194
  /** List available variable names (for shell tool description). Values are NOT exposed. */
195
195
  keys(): string[];
196
196
  }
197
+ export interface SectionContext<TContext = unknown> {
198
+ /** Host-provided context passed via RunOptions.context */
199
+ context: TContext;
200
+ /** Current conversation id (empty string if none) */
201
+ conversationId: string;
202
+ }
203
+ export interface TurnContext<TContext = unknown> extends SectionContext<TContext> {
204
+ /** 1-based index of the turn currently being processed */
205
+ turnIndex: number;
206
+ /** Plain-text of the user message that initiated this turn */
207
+ lastUserMessage: string;
208
+ }
209
+ export type SectionTrigger<TContext = unknown> = (ctx: SectionContext<TContext>) => boolean | Promise<boolean>;
210
+ export type SectionContent<TContext = unknown> = string | ((ctx: SectionContext<TContext>) => string | Promise<string>);
211
+ export type InjectionTrigger<TContext = unknown> = (ctx: TurnContext<TContext>) => boolean | Promise<boolean>;
212
+ export type InjectionContent<TContext = unknown> = string | ((ctx: TurnContext<TContext>) => string | Promise<string>);
213
+ /**
214
+ * Section evaluated once at the first turn of a conversation and appended to the
215
+ * system prompt for the session's lifetime. See docs/prompt-sections.md.
216
+ */
217
+ export interface PromptSection<TContext = unknown> {
218
+ name: string;
219
+ when: SectionTrigger<TContext>;
220
+ content: SectionContent<TContext>;
221
+ }
222
+ /**
223
+ * Injection evaluated on every turn until it fires. When `when` returns true,
224
+ * the rendered content is wrapped in a `<tuplet-note>` tag and inserted into
225
+ * the message history before the current user turn.
226
+ */
227
+ export interface HistoryInjection<TContext = unknown> {
228
+ name: string;
229
+ when: InjectionTrigger<TContext>;
230
+ content: InjectionContent<TContext>;
231
+ /** Default: true. When true, the injection only fires once per session. */
232
+ once?: boolean;
233
+ }
197
234
  export interface SkillConfig {
198
235
  /** Unique name used to activate the skill (e.g., 'log_meal') */
199
236
  name: string;
@@ -214,6 +251,16 @@ export interface TupletConfig {
214
251
  agents?: SubAgentConfig[];
215
252
  /** Skills - lazy-loaded prompts activated by name */
216
253
  skills?: SkillConfig[];
254
+ /**
255
+ * Prompt sections conditionally appended to the system prompt.
256
+ * Evaluated once at turn 1, cached for the session.
257
+ */
258
+ sections?: PromptSection<any>[];
259
+ /**
260
+ * History injections evaluated each turn until fired.
261
+ * Wrapped in <tuplet-note> and inserted before the current user turn.
262
+ */
263
+ historyInjections?: HistoryInjection<any>[];
217
264
  llm: LLMProvider;
218
265
  logger?: LogProvider;
219
266
  repository?: RepositoryProvider;
@@ -295,6 +342,11 @@ export interface RunOptions {
295
342
  * The AI references variables by name (e.g., `$API_KEY`) and the shell resolves them.
296
343
  */
297
344
  env?: EnvironmentProvider;
345
+ /**
346
+ * Host-provided context passed to `PromptSection.when/content` and
347
+ * `HistoryInjection.when/content`. Opaque to Tuplet.
348
+ */
349
+ context?: unknown;
298
350
  /** @internal Trace builder passed from parent agent */
299
351
  _traceBuilder?: import('./trace.js').TraceBuilder;
300
352
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alexnetrebskii/hive-agent",
3
- "version": "2.30.0",
3
+ "version": "2.31.0",
4
4
  "description": "Tuplet — minimal TypeScript agent framework inspired by Claude Code architecture",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",