@scotthuang/agent-knock-knock 0.12.6 → 0.12.8

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.
@@ -6,6 +6,7 @@ export declare const DEFERRED_FOREGROUND_TRANSFER_LEGACY_VERSION: 1;
6
6
  export type DeferredForegroundTransferStatus = "prepared" | "source_reserved" | "target_prepared" | "dispatch_started" | "committed" | "resolved" | "aborted" | "abort_resolved" | "uncertain";
7
7
  export type DeferredForegroundTransferInputStage = "none" | "dispatch_started" | "text_injected" | "enter_dispatched" | "agent_accepted";
8
8
  export type DeferredForegroundTransferSourceKind = "status_card_only" | "candidate_rollout_quiescent";
9
+ export type DeferredForegroundTransferSourceRolloutAuthority = "present" | "explicitly_abandoned_predecessor";
9
10
  export interface DeferredForegroundTransferSourceTurnAuthority {
10
11
  turn_id: string;
11
12
  status: "idle" | "failed" | "closed" | "cancelled";
@@ -45,6 +46,8 @@ export interface DeferredForegroundTransfer {
45
46
  source_before_binding: ManagedTerminalBinding;
46
47
  source_kind?: DeferredForegroundTransferSourceKind;
47
48
  source_turn_history?: DeferredForegroundTransferSourceTurnAuthority[];
49
+ source_rollout_authority?: DeferredForegroundTransferSourceRolloutAuthority;
50
+ source_abandonment_fingerprint?: string;
48
51
  target_session_id: string;
49
52
  target_expected_revision: null;
50
53
  previous_dispatch_status: "none" | "resolved";
@@ -65,6 +65,8 @@ export function assertDeferredForegroundTransfer(value, expectedTransferId, opti
65
65
  "source_before_binding",
66
66
  "source_kind",
67
67
  "source_turn_history",
68
+ "source_rollout_authority",
69
+ "source_abandonment_fingerprint",
68
70
  "target_session_id",
69
71
  "target_expected_revision",
70
72
  "previous_dispatch_status",
@@ -208,6 +210,31 @@ export function assertDeferredForegroundTransfer(value, expectedTransferId, opti
208
210
  else if (sourceTurnHistory !== undefined) {
209
211
  throw new Error("status-card deferred source cannot carry Turn history authority");
210
212
  }
213
+ const sourceRolloutAuthority = sourceKind === "candidate_rollout_quiescent"
214
+ ? value.source_rollout_authority ?? "present"
215
+ : undefined;
216
+ if (sourceKind !== "candidate_rollout_quiescent"
217
+ ? value.source_rollout_authority !== undefined ||
218
+ value.source_abandonment_fingerprint !== undefined
219
+ : ![
220
+ "present",
221
+ "explicitly_abandoned_predecessor"
222
+ ].includes(String(sourceRolloutAuthority))) {
223
+ throw new Error("deferred transfer source rollout authority is invalid");
224
+ }
225
+ if (sourceRolloutAuthority === "explicitly_abandoned_predecessor") {
226
+ if (!Array.isArray(sourceTurnHistory) ||
227
+ sourceTurnHistory.length === 0 ||
228
+ !sourceTurnHistory.some((turn) => turn.status === "closed") ||
229
+ value.previous_dispatch_status !== "resolved" ||
230
+ typeof value.source_abandonment_fingerprint !== "string" ||
231
+ !/^[0-9a-f]{64}$/u.test(value.source_abandonment_fingerprint)) {
232
+ throw new Error("explicitly abandoned predecessor requires exact resolved abandonment authority");
233
+ }
234
+ }
235
+ else if (value.source_abandonment_fingerprint !== undefined) {
236
+ throw new Error("present deferred source rollout cannot carry abandonment authority");
237
+ }
211
238
  const statusCardSource = sourceKind === "status_card_only";
212
239
  const candidateRolloutSource = sourceKind === "candidate_rollout_quiescent";
213
240
  if (value.source_before_binding.native_process.pid !== value.process_pid ||
@@ -700,6 +727,8 @@ function assertTransferAdvance(current, candidate) {
700
727
  "source_before_binding",
701
728
  "source_kind",
702
729
  "source_turn_history",
730
+ "source_rollout_authority",
731
+ "source_abandonment_fingerprint",
703
732
  "target_session_id",
704
733
  "target_expected_revision",
705
734
  "previous_dispatch_status",
@@ -1 +1 @@
1
- {"version":3,"file":"deferred-foreground-transfer.js","sourceRoot":"","sources":["../../src/deferred-foreground-transfer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deferred-foreground-transfer.js","sourceRoot":"","sources":["../../src/deferred-foreground-transfer.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ const sendParameters = {
24
24
  session_id: {
25
25
  type: "string",
26
26
  minLength: 1,
27
- description: "Strict session-scoped AKK id returned by list or a previous send. This preserves that exact native context and never follows the pane after a human switches threads. Discovery selectors, terminal ids, and turn ids are never session_id destinations."
27
+ description: "Strict session-scoped AKK id only when the current list action prefills it. This preserves that exact native context and never follows the pane after a human switches threads. A rollout-backed Codex Session is a continuing context label but is not a direct ordinary-send target; use that terminal row's selector/token action instead. Discovery selectors, terminal ids, and turn ids are never session_id destinations."
28
28
  },
29
29
  selector: {
30
30
  type: "string",
@@ -440,13 +440,13 @@ function createPlugin(relayPath, { monitorSupervisorIntervalMs = MONITOR_SUPERVI
440
440
  default: "AKK is handling the request..."
441
441
  },
442
442
  agentPromptGuidance: [
443
- "Use /akk <task> when exactly one eligible idle coding-agent terminal pane should receive new work. Use /akk codex: <task>, /akk claude: <task>, or another selector returned by /akk list to target an existing pane. A session_id send is strict to that Session's native context; an exact list-prefilled terminal selector plus expected_terminal_token is a terminal-scoped follow-current action that may safely absorb a verified quiescent human thread switch or defer Codex foreground attribution within a complete exact rollout inventory. It sends the ordinary task once and binds only the uniquely accepting native thread. Never infer or reuse its token. Use /akk threads, /akk new-thread or clear-thread, and /akk resume-thread only with an exact full terminal_id returned by /akk list; these switch native context without creating a Turn. Resume numbers and short IDs are bound to the last displayed snapshot, while previous is available only from the latest verified committed transition. For native Codex or Claude status, use only an advertised agent_knock_knock_native_inspect action; agent_knock_knock_status inspects AKK Turn state and does not execute /status. AKK never starts a coding-agent process."
443
+ "Use /akk <task> when exactly one eligible idle coding-agent terminal pane should receive new work. Use /akk codex: <task>, /akk claude: <task>, or another selector returned by /akk list to target an existing pane. Use session_id only when the current list action prefills it. A rollout-backed Codex pane instead uses terminal_follow_current: an exact list-prefilled terminal selector plus expected_terminal_token, or an explicitly named/uniquely selected pane whose equivalent fresh candidate authority AKK derives under its terminal lock. AKK sends the ordinary task once within the complete exact rollout inventory and binds only the uniquely accepting native thread. Never infer or reuse a listed token. Use /akk threads, /akk new-thread or clear-thread, and /akk resume-thread only with an exact full terminal_id returned by /akk list; these switch native context without creating a Turn. Resume numbers and short IDs are bound to the last displayed snapshot, while previous is available only from the latest verified committed transition. For native Codex or Claude status, use only an advertised agent_knock_knock_native_inspect action; agent_knock_knock_status inspects AKK Turn state and does not execute /status. AKK never starts a coding-agent process."
444
444
  ],
445
445
  handler: async (ctx) => handleAkkCommand(api, ctx, displayedResumeSnapshots)
446
446
  });
447
447
  registerCliTool(api, {
448
448
  name: "agent_knock_knock_list",
449
- description: "List existing Codex and Claude Code tmux or Herdr panes as the primary terminals[] resources. Each terminal may include managed.current_turn or managed.recent_turn; all=true also includes older managed.history and retained unavailable history. By default, unavailable_managed_turns contains attention-needed records whose pane is unavailable. A live human thread switch remains management_state=conflict and exposes handoff_state as adoptable or blocked without mutating the Store. Use only each row's available_actions and authoritative prefilled arguments, except for two explicit-confirmation nested recovery paths: handoff_decision.choices.take_over_current.action and blocking_turns[].recovery_action. The latter is only for collateral blockers; an active handoff source Turn remains exclusively snapshot-fenced by handoff_decision. Refresh list immediately after either nested action. A session-scoped send targets session_id strictly and never redirects to the pane's replacement context; a terminal-scoped follow-current send preserves that row's exact selector and expected_terminal_token, then may either absorb a verified quiescent handoff or defer Codex foreground attribution within a complete exact rollout inventory while sending the task only once; legacy discovery sends remain compatible. respond targets the exact in-flight turn; native_inspect runs only a closed, exact-version Codex or Claude status profile with the current terminal/binding token; read-only thread listing targets the exact terminal, while new/resume mutations also require the current binding token and create no Turn; reconcile_binding remains a low-level conflict recovery action; managed controls target the exact turn; a raw terminal row may prefill its own compatibility selector for status or recovery controls. Never construct identifiers or tokens. AKK revalidates every terminal side effect and never starts a coding-agent process.",
449
+ description: "List existing Codex and Claude Code tmux or Herdr panes as the primary terminals[] resources. Each terminal may include managed.current_turn or managed.recent_turn; all=true also includes older managed.history and retained unavailable history. By default, unavailable_managed_turns contains attention-needed records whose pane is unavailable. A live human thread switch remains management_state=conflict and exposes handoff_state as adoptable or blocked without mutating the Store. Use only each row's available_actions and authoritative prefilled arguments, except for two explicit-confirmation nested recovery paths: handoff_decision.choices.take_over_current.action and blocking_turns[].recovery_action. The latter is only for collateral blockers; an active handoff source Turn remains exclusively snapshot-fenced by handoff_decision. Refresh list immediately after either nested action. A session_exact session-scoped send targets session_id only when that action is listed and never redirects to the pane's replacement context. A rollout-backed Codex row instead advertises terminal_follow_current as a terminal-scoped follow-current send with its exact selector and expected_terminal_token; AKK pins the complete exact rollout inventory, sends the task once, and binds only the unique exact acceptor. Explicit discovery selectors remain compatible and derive equivalent fresh candidate authority under the terminal lock. respond targets the exact in-flight turn; native_inspect runs only a closed, exact-version Codex or Claude status profile with the current terminal/binding token; read-only thread listing targets the exact terminal, while new/resume mutations also require the current binding token and create no Turn; reconcile_binding remains a low-level conflict recovery action; managed controls target the exact turn; a raw terminal row may prefill its own compatibility selector for status or recovery controls. Never construct identifiers or tokens. AKK revalidates every terminal side effect and never starts a coding-agent process.",
450
450
  parameters: listParameters,
451
451
  buildArgs: (params) => {
452
452
  const config = isRecord(api.pluginConfig) ? api.pluginConfig : {};
@@ -595,7 +595,7 @@ function createPlugin(relayPath, { monitorSupervisorIntervalMs = MONITOR_SUPERVI
595
595
  api.registerTool((toolContext) => ({
596
596
  label: "AKK Send",
597
597
  name: "agent_knock_knock_send",
598
- description: "Start a new AKK Turn. A session-scoped send uses the exact session_id from list or a prior send, preserves that Session's native context, and never redirects to a thread the human selected later in the pane. A terminal-scoped follow-current send uses only one exact list-prefilled full terminal selector together with its fresh expected_terminal_token; AKK may then atomically adopt a verified quiescent human handoff or send once before Codex foreground attribution and bind only the unique exact rollout that accepts that request. Preserve both values exactly and never infer, copy, or reuse the token. Legacy selector discovery remains supported, and both target fields may be omitted only when AKK should require one unique eligible idle pane. Never pass a turn id or selector as session_id. To answer an in-flight question, use agent_knock_knock_respond instead. For ordinary use omit monitoring timeouts unless the user explicitly asks to change them. timeoutSeconds is unsupported. AKK never starts a coding agent. This is asynchronous: after acceptance, yield and wait for the callback or a later explicit status request.",
598
+ description: "Start a new AKK Turn. A session_exact session-scoped send uses session_id only when the current list action prefills it; it preserves that Session's native context and never redirects to a thread the human selected later in the pane. Rollout-backed Codex uses terminal_follow_current terminal-scoped follow-current instead: preserve the exact list-prefilled full terminal selector and fresh expected_terminal_token, or preserve a selector explicitly named by the user. AKK pins the complete exact rollout inventory under the terminal lock, sends the request once, and binds only the unique exact rollout that accepts it. Never infer, copy, or reuse a listed token. Both target fields may be omitted only when AKK should require one unique eligible idle pane and derive the same fresh candidate authority. Never pass a turn id or selector as session_id. To answer an in-flight question, use agent_knock_knock_respond instead. For ordinary use omit monitoring timeouts unless the user explicitly asks to change them. timeoutSeconds is unsupported. AKK never starts a coding agent. This is asynchronous: after acceptance, yield and wait for the callback or a later explicit status request.",
599
599
  parameters: sendParameters,
600
600
  async execute(toolCallId, params) {
601
601
  const result = await runSendRequest(api, isRecord(params) ? params : {}, toolContext, terminalMessageIdForToolCall({
@@ -609,7 +609,7 @@ function createPlugin(relayPath, { monitorSupervisorIntervalMs = MONITOR_SUPERVI
609
609
  }), { name: "agent_knock_knock_send", optional: true });
610
610
  registerCliTool(api, {
611
611
  name: "agent_knock_knock_respond",
612
- description: "Respond to a question or blocked callback in one exact in-flight AKK turn. This continues that turn and does not create a new turn; use agent_knock_knock_send with session_id for later ordinary work.",
612
+ description: "Respond to a question or blocked callback in one exact in-flight AKK turn. This continues that turn and does not create a new turn; for later ordinary work refresh agent_knock_knock_list and use that terminal row's currently advertised send action.",
613
613
  parameters: respondParameters,
614
614
  buildArgs: (params, toolContext, toolCallId) => {
615
615
  const config = isRecord(api.pluginConfig) ? api.pluginConfig : {};
@@ -2136,7 +2136,7 @@ function formatDoneShortcuts(sessionId, turnId) {
2136
2136
  "[AKK convenience commands]",
2137
2137
  "When summarizing this result to the user, include these short next-step commands:",
2138
2138
  "- `AKK list` lists live shared terminals with their current or recent managed turns.",
2139
- `- Use \`agent_knock_knock_send\` with \`session_id: ${JSON.stringify(sessionId)}\` to start a later turn in the same coding-agent context.`,
2139
+ `- Session ${JSON.stringify(sessionId)} remains the context label; refresh \`AKK list\`, then use that terminal row's exact \`available_actions.send\` with \`agent_knock_knock_send\` for later work. Do not assume the returned Session is directly sendable.`,
2140
2140
  `- Use \`agent_knock_knock_status\` with \`turn_id: ${JSON.stringify(turnId)}\` to inspect this exact turn.`,
2141
2141
  "- AKK never starts or closes the coding agent or terminal pane."
2142
2142
  ].join("\n");