/** * defineRelevanceHint — an advisory system-prompt note for an ambiguous entry. * * When `entryByRelevance()` picks the starting skill but the top candidates are a * NEAR-TIE under the relevance scorer, this injection drops a NON-BINDING note into * the system prompt for that turn: "an offline scorer found these close; it can't * see the conversation — use your own judgment." A hint, not an order. * * Anti-anchoring is the point (the proxy is a rough keyword match, not the model's * own reasoning), so the note is framed as advisory and only fires on a real tie. * It rides the normal injection path (`context.evaluated`) — no new event. Reads * `ctx.entryScores` (set by the PickEntry stage), so it needs `.entryByRelevance()`. * * Add it explicitly: `Agent.create(...).skillGraph(graph).injection(defineRelevanceHint())`. */ import type { Injection } from '../types.js'; export interface RelevanceHintOptions { /** Injection id (default `'relevance-hint'`). */ readonly id?: string; /** * Near-tie threshold: the hint fires when (top relevance − 2nd relevance) is * below this. Default `0.15` (relevances are softmax shares summing to 1). */ readonly threshold?: number; } export declare function defineRelevanceHint(options?: RelevanceHintOptions): Injection;