pullfrog 0.1.57 → 0.1.60

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.
@@ -0,0 +1 @@
1
+ export declare const codex: import("./shared.ts").Agent;
@@ -2,5 +2,6 @@ import type { Agent } from "./shared.ts";
2
2
  export type { Agent, AgentUsage } from "./shared.ts";
3
3
  export declare const agents: {
4
4
  claude: Agent;
5
+ codex: Agent;
5
6
  opencode: Agent;
6
7
  };
@@ -24,6 +24,16 @@ interface ModelLimit {
24
24
  context: number;
25
25
  output: number;
26
26
  }
27
+ /** azure needs no `npm` — opencode's native provider supplies it. */
28
+ interface AzureProviderEntry {
29
+ options: {
30
+ useCompletionUrls: boolean;
31
+ };
32
+ models: Record<string, {
33
+ name: string;
34
+ limit: ModelLimit;
35
+ }>;
36
+ }
27
37
  /**
28
38
  * OpenAI-compatible provider block for OPENCODE_CONFIG_CONTENT. opencode has no
29
39
  * native provider for an arbitrary gateway, so inject one via
@@ -32,6 +42,20 @@ interface ModelLimit {
32
42
  * guaranteed present by `validateOpenAICompatibleSetup`.
33
43
  */
34
44
  export declare function openAICompatibleProvider(model: string | undefined): Record<string, OpenAICompatibleProviderEntry>;
45
+ /**
46
+ * Azure model block for OPENCODE_CONFIG_CONTENT. Unlike openai-compatible this
47
+ * does NOT declare a provider — opencode has a native `azure` one and the env
48
+ * loop already enables it. What it declares is the MODEL, because opencode
49
+ * resolves `azure/<deployment>` by looking the id up in the provider's catalog
50
+ * (`Provider.getModel` → `provider.models[modelID]`) and throws
51
+ * `ProviderModelNotFoundError` when it misses. A deployment name is chosen by
52
+ * whoever created the deployment, so it is absent from that catalog unless it
53
+ * happens to match a models.dev azure id — measured against opencode-ai@1.18.5:
54
+ * `azure/prod-reasoning` throws, and the same run with this block resolves and
55
+ * reaches the network. The limits come from env for the same reason
56
+ * openai-compatible's do; `validateAzureSetup` guarantees they parse.
57
+ */
58
+ export declare function azureProvider(model: string | undefined): Record<string, AzureProviderEntry>;
35
59
  /**
36
60
  * Build the `provider.openrouter.models[id].options` map that pins every Kimi
37
61
  * K2 OpenRouter alias away from the Enforcer-less providers via OpenRouter's
@@ -120,6 +120,13 @@ export interface AgentRunContext {
120
120
  * server) so lingering SSE reconnects don't keep the outer timer alive.
121
121
  */
122
122
  onActivityTimeout?: (() => void) | undefined;
123
+ /**
124
+ * called when an aborted turn actually comes back and the harness intends to
125
+ * keep going. stands down the safety-net timer `onActivityTimeout` armed, so
126
+ * it only ever guards the window where an abort might have been ignored
127
+ * rather than force-exiting a run mid-salvage. see #1085.
128
+ */
129
+ onTurnRecovered?: (() => void) | undefined;
123
130
  onToolUse?: ((event: AgentToolUseEvent) => void) | undefined;
124
131
  /**
125
132
  * Pullfrog API JWT scoped to this run. agents only need this when they