agent-afk 5.322.16 → 5.322.18

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.
Files changed (93) hide show
  1. package/dist/agent/mcp/failure-notice.d.ts +11 -0
  2. package/dist/agent/mcp/naming.d.ts +1 -0
  3. package/dist/agent/providers/openai-compatible/query/wind-down-final.d.ts +3 -0
  4. package/dist/agent/session/provider-lifecycle.d.ts +3 -1
  5. package/dist/agent/tools/dispatcher.core-exec.d.ts +2 -0
  6. package/dist/agent/tools/dispatcher.d.ts +3 -0
  7. package/dist/agent/tools/dispatcher.mcp-states.d.ts +4 -0
  8. package/dist/agent/tools/readonly-git-surface.d.ts +2 -0
  9. package/dist/agent/trace/otlp-export.d.ts +56 -0
  10. package/dist/cli.mjs +411 -392
  11. package/dist/config/env.d.ts +7 -0
  12. package/dist/config/env.misc.d.ts +7 -0
  13. package/dist/index.mjs +209 -196
  14. package/dist/telegram.mjs +225 -212
  15. package/dist/web-ui-assets/assets/{angular-html-B5j4TaBu.js → angular-html-CrheJd26.js} +1 -1
  16. package/dist/web-ui-assets/assets/{angular-ts-DyR4rrke.js → angular-ts-P38si_WH.js} +1 -1
  17. package/dist/web-ui-assets/assets/{apl-C2i9_77M.js → apl-uMRQem-d.js} +1 -1
  18. package/dist/web-ui-assets/assets/{astro-BYIbrExl.js → astro--YKFyl_b.js} +1 -1
  19. package/dist/web-ui-assets/assets/{blade-DsqcTTQb.js → blade-BCvl9gW4.js} +1 -1
  20. package/dist/web-ui-assets/assets/{c-Dn1Qmnv9.js → c-jrQHaxWn.js} +1 -1
  21. package/dist/web-ui-assets/assets/{chapel-CJVD_Haz.js → chapel-B_d5KFHw.js} +1 -1
  22. package/dist/web-ui-assets/assets/{cobol-Bsq224xe.js → cobol-DIBqmz4a.js} +1 -1
  23. package/dist/web-ui-assets/assets/{coffee-BVSvkQ-p.js → coffee-BaTuDEiN.js} +1 -1
  24. package/dist/web-ui-assets/assets/{cpp-Bs98i4FT.js → cpp-DGkMqa78.js} +1 -1
  25. package/dist/web-ui-assets/assets/{crystal-DQFq9NDT.js → crystal-CL5eikjP.js} +1 -1
  26. package/dist/web-ui-assets/assets/{css-BFFs5zxS.js → css-hQX-MNi0.js} +1 -1
  27. package/dist/web-ui-assets/assets/{dist-8_3aqZoJ.js → dist-CQxw6lw6.js} +2 -2
  28. package/dist/web-ui-assets/assets/{edge-CK4ONZxE.js → edge-ikVB7YwN.js} +1 -1
  29. package/dist/web-ui-assets/assets/{elixir-CnW7Pkto.js → elixir-B_tTS4VL.js} +1 -1
  30. package/dist/web-ui-assets/assets/{elm-CNo2kurt.js → elm-BoG3-bJP.js} +1 -1
  31. package/dist/web-ui-assets/assets/{erb-BRRkjDlJ.js → erb-DrkHYStA.js} +1 -1
  32. package/dist/web-ui-assets/assets/{git-rebase-WoZ7FUHB.js → git-rebase-BCVAsb0W.js} +1 -1
  33. package/dist/web-ui-assets/assets/{glimmer-js-fwJAEtQ_.js → glimmer-js-C6XoyA7Y.js} +1 -1
  34. package/dist/web-ui-assets/assets/{glimmer-ts-Dcq1vDRh.js → glimmer-ts-BHkDLTMQ.js} +1 -1
  35. package/dist/web-ui-assets/assets/{glsl-D1j2WBHK.js → glsl-CXHFc_cu.js} +1 -1
  36. package/dist/web-ui-assets/assets/{graphql-BEt6iuUu.js → graphql-C4Xepom-.js} +1 -1
  37. package/dist/web-ui-assets/assets/{hack-D2pccT2z.js → hack-t2wpnKKH.js} +1 -1
  38. package/dist/web-ui-assets/assets/{haml-C3r0Wx5E.js → haml-DuzkKNQh.js} +1 -1
  39. package/dist/web-ui-assets/assets/{handlebars-B_o69um3.js → handlebars-Be0Z4CiL.js} +1 -1
  40. package/dist/web-ui-assets/assets/{html-BqYNxG0e.js → html-BJB5ksGB.js} +1 -1
  41. package/dist/web-ui-assets/assets/{html-derivative-DeB2KSvk.js → html-derivative-BTGmkpL2.js} +1 -1
  42. package/dist/web-ui-assets/assets/{http-OOcyLjvG.js → http-BJgajEkw.js} +1 -1
  43. package/dist/web-ui-assets/assets/{hurl-DCPAj3IS.js → hurl-r_CQfEi9.js} +1 -1
  44. package/dist/web-ui-assets/assets/{index-pthro9z5.js → index-CV4jyODX.js} +5 -5
  45. package/dist/web-ui-assets/assets/{java-Co7W3YmI.js → java-DjPExmk7.js} +1 -1
  46. package/dist/web-ui-assets/assets/{javascript-IjfcKyHO.js → javascript-Dgp4r9Dr.js} +1 -1
  47. package/dist/web-ui-assets/assets/{jinja-DljvmCR8.js → jinja-cJqB5Hpp.js} +1 -1
  48. package/dist/web-ui-assets/assets/{jison-DCjmeCwN.js → jison-CeLJ481p.js} +1 -1
  49. package/dist/web-ui-assets/assets/{json-DzU9S-UP.js → json-CG-S2Zlq.js} +1 -1
  50. package/dist/web-ui-assets/assets/{jsx-KxfhHT-_.js → jsx-BjWZEEuP.js} +1 -1
  51. package/dist/web-ui-assets/assets/{julia-Bp03x8Bz.js → julia-Cin_kKOu.js} +1 -1
  52. package/dist/web-ui-assets/assets/{just-Dc52DuBh.js → just-Cxdw6s-I.js} +1 -1
  53. package/dist/web-ui-assets/assets/{latex-BNhO0lGH.js → latex-B91SlMf3.js} +1 -1
  54. package/dist/web-ui-assets/assets/{liquid-DLKz7b8y.js → liquid-Cn6GF7IF.js} +1 -1
  55. package/dist/web-ui-assets/assets/{lua-CDopwkdV.js → lua-rZajDeel.js} +1 -1
  56. package/dist/web-ui-assets/assets/{marko-BtaFL59c.js → marko-DLbuiuLQ.js} +1 -1
  57. package/dist/web-ui-assets/assets/{mdc-CSrYxDVa.js → mdc-Bf3dNOUw.js} +1 -1
  58. package/dist/web-ui-assets/assets/{nginx-WOHAvtPW.js → nginx-BWr-wFH9.js} +1 -1
  59. package/dist/web-ui-assets/assets/{nim-D5OcN5EG.js → nim-DmH64nua.js} +1 -1
  60. package/dist/web-ui-assets/assets/{org-DVP9SlO4.js → org-CDhtxXcC.js} +1 -1
  61. package/dist/web-ui-assets/assets/{perl-hnIvCzEI.js → perl-CTBTlWqV.js} +1 -1
  62. package/dist/web-ui-assets/assets/{php-CZOlQevm.js → php-Cmbb84IR.js} +1 -1
  63. package/dist/web-ui-assets/assets/{pug-BvhXPtp4.js → pug-4H-QY0t4.js} +1 -1
  64. package/dist/web-ui-assets/assets/{qml-BcaG9tx1.js → qml-L2fSWl_a.js} +1 -1
  65. package/dist/web-ui-assets/assets/{r-Bx-N2J2G.js → r-CMy2-OAE.js} +1 -1
  66. package/dist/web-ui-assets/assets/{razor-De3-biC_.js → razor-BpDXHiGg.js} +1 -1
  67. package/dist/web-ui-assets/assets/{regexp-Lve0LV-W.js → regexp-DL-kzjgP.js} +1 -1
  68. package/dist/web-ui-assets/assets/{rst-B99LXcVb.js → rst-B1XrOHEV.js} +1 -1
  69. package/dist/web-ui-assets/assets/{ruby-DK0XlCCy.js → ruby-CqptEjQo.js} +1 -1
  70. package/dist/web-ui-assets/assets/{sas-BA1q30O-.js → sas-IaRjk-7g.js} +1 -1
  71. package/dist/web-ui-assets/assets/{scss-DfdOeFfY.js → scss-DHFx3RD0.js} +1 -1
  72. package/dist/web-ui-assets/assets/{shellscript-BjDTt7UI.js → shellscript-huOmZYB2.js} +1 -1
  73. package/dist/web-ui-assets/assets/{shellsession-D3B3pN1Q.js → shellsession-37pQQhPu.js} +1 -1
  74. package/dist/web-ui-assets/assets/{soy-BdCrClLK.js → soy-hXHiJN-7.js} +1 -1
  75. package/dist/web-ui-assets/assets/{sql-U4M9Kr7c.js → sql-CQcQA1Rh.js} +1 -1
  76. package/dist/web-ui-assets/assets/{stata-C-cvNqul.js → stata-5GLhhswu.js} +1 -1
  77. package/dist/web-ui-assets/assets/{surrealql-DxoK36GR.js → surrealql-BDcTKMVY.js} +1 -1
  78. package/dist/web-ui-assets/assets/{svelte-gHjjEqv7.js → svelte-BA4o9pwr.js} +1 -1
  79. package/dist/web-ui-assets/assets/{templ-BimBR-gj.js → templ-RCYTQfGO.js} +1 -1
  80. package/dist/web-ui-assets/assets/{tex-DjQ4L5Ra.js → tex-CIbhppSn.js} +1 -1
  81. package/dist/web-ui-assets/assets/{ts-tags-DsLuVuUq.js → ts-tags-we5cgvQV.js} +1 -1
  82. package/dist/web-ui-assets/assets/{tsx-fBghIU1C.js → tsx-Cmnxq2dL.js} +1 -1
  83. package/dist/web-ui-assets/assets/{twig-DUECNzxH.js → twig-DG-hzs7A.js} +1 -1
  84. package/dist/web-ui-assets/assets/{typescript-2qMoQcvI.js → typescript-BeWkaZIV.js} +1 -1
  85. package/dist/web-ui-assets/assets/{typst-CMJiJ-T9.js → typst-CIxlR6Sd.js} +1 -1
  86. package/dist/web-ui-assets/assets/{vue-BCsxOHr8.js → vue-B0CwOcu9.js} +1 -1
  87. package/dist/web-ui-assets/assets/{vue-html-CtJORVYW.js → vue-html-BzDLLdC_.js} +1 -1
  88. package/dist/web-ui-assets/assets/{vue-vine-CYhw7sN2.js → vue-vine-BCUqQ6Io.js} +1 -1
  89. package/dist/web-ui-assets/assets/{xml-DH-0-FlK.js → xml-DrdTj-X0.js} +1 -1
  90. package/dist/web-ui-assets/assets/{xsl-A7Zqelbe.js → xsl-Cj3Yg84Y.js} +1 -1
  91. package/dist/web-ui-assets/assets/{yaml-DpMD4qKn.js → yaml-efF3LuC3.js} +1 -1
  92. package/dist/web-ui-assets/index.html +1 -1
  93. package/package.json +2 -2
@@ -0,0 +1,11 @@
1
+ export interface McpServerStateLike {
2
+ serverName: string;
3
+ status: string;
4
+ error?: string;
5
+ }
6
+ export declare function failedMcpServers(states: readonly McpServerStateLike[]): {
7
+ name: string;
8
+ reason: string;
9
+ }[];
10
+ export declare function buildMcpFailureNotice(states: readonly McpServerStateLike[]): string | undefined;
11
+ export declare function mcpUnknownToolMessage(toolName: string, states: readonly McpServerStateLike[]): string | undefined;
@@ -1,6 +1,7 @@
1
1
  export declare function sanitizeNameSegment(input: string): string;
2
2
  export declare function buildMcpToolName(serverName: string, toolName: string): string;
3
3
  export declare function isMcpToolName(name: string): boolean;
4
+ export declare function serverWirePrefixes(serverName: string): string[];
4
5
  export interface McpNameRegistry {
5
6
  tools: Map<string, {
6
7
  serverName: string;
@@ -0,0 +1,3 @@
1
+ export declare const WIND_DOWN_NO_ANSWER_PLACEHOLDER: string;
2
+ export declare function stripToolCallMarkup(text: string): string;
3
+ export declare function windDownFinalText(roundText: string): string;
@@ -1,3 +1,4 @@
1
+ import type { McpServerStateLike } from '../mcp/failure-notice.js';
1
2
  import { SessionStateManager } from './session-state.js';
2
3
  import { QueryInputStream } from './input-iterable.js';
3
4
  import type { AccountingAccumulator } from './accounting-accumulator.js';
@@ -25,6 +26,7 @@ export declare class ProviderInitializer {
25
26
  private readonly shutdown;
26
27
  private readonly hookRegistry;
27
28
  private readonly queueFrameworkContext;
28
- constructor(config: AgentConfig, abortSignal: AbortSignal, accounting: AccountingAccumulator, shutdown: SessionShutdown, hookRegistry: HookRegistry | undefined, queueFrameworkContext: (text: string) => void);
29
+ private readonly getMcpServerStates?;
30
+ constructor(config: AgentConfig, abortSignal: AbortSignal, accounting: AccountingAccumulator, shutdown: SessionShutdown, hookRegistry: HookRegistry | undefined, queueFrameworkContext: (text: string) => void, getMcpServerStates?: (() => readonly McpServerStateLike[]) | undefined);
29
31
  run(getProviderIterator: () => AsyncIterator<ProviderEvent>, buildTransformDeps: () => TransformDeps, stateManager: SessionStateManager): Promise<void>;
30
32
  }
@@ -10,6 +10,7 @@ import type { GrantManager } from './grant-manager.js';
10
10
  import type { PreDispatchGateDeps } from './dispatcher.pre-dispatch-gates.js';
11
11
  import type { DetachableToolRegistry } from './detach-registry.js';
12
12
  import type { ProcessJobRegistry } from '../shell-jobs/process-jobs.js';
13
+ import type { McpServerStateLike } from '../mcp/failure-notice.js';
13
14
  export interface CoreExecDeps {
14
15
  handlers: Map<string, ToolHandler>;
15
16
  hookRegistry: HookRegistry | undefined;
@@ -27,6 +28,7 @@ export interface CoreExecDeps {
27
28
  callHandlerContext: (call: ToolCall) => ToolHandlerContext;
28
29
  gateDeps: () => PreDispatchGateDeps;
29
30
  toolDefs: readonly AnthropicToolDef[];
31
+ getMcpServerStates?: () => readonly McpServerStateLike[];
30
32
  tmpdirScope?: string | undefined;
31
33
  }
32
34
  export declare function isRegisteredTool(toolName: string, deps: CoreExecDeps): boolean;
@@ -13,6 +13,7 @@ import { type ToolPermissionConfig } from './permissions.js';
13
13
  import type { CanUseTool } from '../types/sdk-types.js';
14
14
  import { type GrantSnapshot, type GrantManager } from './grant-manager.js';
15
15
  import type { TraceSink } from '../trace/index.js';
16
+ import { type GetMcpServerStates } from './dispatcher.mcp-states.js';
16
17
  import { type UserAttention } from './user-yield.js';
17
18
  import { type DetachableToolRegistry } from './detach-bash.js';
18
19
  import type { ProcessJobRegistry } from '../shell-jobs/process-jobs.js';
@@ -36,6 +37,7 @@ export interface SessionToolDispatcherOptions {
36
37
  writeRoots?: string[];
37
38
  allowAll?: boolean;
38
39
  env?: Record<string, string>;
40
+ getMcpServerStates?: GetMcpServerStates;
39
41
  sessionId?: string;
40
42
  parentSessionId?: string;
41
43
  rootSessionId?: string;
@@ -86,6 +88,7 @@ export declare class SessionToolDispatcher implements ToolDispatcher {
86
88
  private readonly repeatFailureGuard;
87
89
  private readonly toolHealthMonitor;
88
90
  private readonly strategyNudger;
91
+ private readonly _getMcpServerStates;
89
92
  private readonly grantManager;
90
93
  constructor(opts: SessionToolDispatcherOptions);
91
94
  private get handlerContext();
@@ -0,0 +1,4 @@
1
+ import type { McpServerStateLike } from '../mcp/failure-notice.js';
2
+ export type GetMcpServerStates = () => readonly McpServerStateLike[];
3
+ export declare function resolveMcpServerStates(opt: GetMcpServerStates | undefined): GetMcpServerStates;
4
+ export declare function resolveMaxOutputBytes(raw: number | undefined): number | undefined;
@@ -5,4 +5,6 @@ export declare function isReadOnlyGitToolEnabled(): boolean;
5
5
  export declare function swapBashForGitRead(tools: readonly string[]): string[];
6
6
  export declare function applyReadOnlyGitPermissions(permissions: ToolPermissionConfig | undefined, readOnlyBash: boolean | undefined): ToolPermissionConfig | undefined;
7
7
  export declare const READONLY_BASH_DISABLED_REASON: string;
8
+ export declare function readOnlyBashDenialOverride(toolName: string, readOnlyBash: boolean): string | undefined;
9
+ export declare function withGitReadSubstitution(body: string): string;
8
10
  export declare function readOnlyGitSchemas(): AnthropicToolDef[];
@@ -0,0 +1,56 @@
1
+ import type { TraceEvent } from './types.js';
2
+ type AnyValue = {
3
+ stringValue: string;
4
+ } | {
5
+ intValue: string;
6
+ } | {
7
+ boolValue: boolean;
8
+ } | {
9
+ doubleValue: number;
10
+ };
11
+ interface KeyValue {
12
+ key: string;
13
+ value: AnyValue;
14
+ }
15
+ interface SpanEvent {
16
+ timeUnixNano: string;
17
+ name: string;
18
+ attributes?: KeyValue[];
19
+ }
20
+ interface SpanStatus {
21
+ code: 0 | 1 | 2;
22
+ message?: string;
23
+ }
24
+ export interface OtlpSpan {
25
+ traceId: string;
26
+ spanId: string;
27
+ parentSpanId?: string;
28
+ name: string;
29
+ kind: number;
30
+ startTimeUnixNano: string;
31
+ endTimeUnixNano: string;
32
+ attributes: KeyValue[];
33
+ events?: SpanEvent[];
34
+ status: SpanStatus;
35
+ }
36
+ export interface OtlpResourceSpans {
37
+ resource: {
38
+ attributes: KeyValue[];
39
+ };
40
+ scopeSpans: Array<{
41
+ scope: {
42
+ name: string;
43
+ version: string;
44
+ };
45
+ spans: OtlpSpan[];
46
+ }>;
47
+ }
48
+ export interface OtlpExportRequest {
49
+ resourceSpans: OtlpResourceSpans[];
50
+ }
51
+ export interface TraceToOtlpOptions {
52
+ sessionId: string;
53
+ malformed?: number;
54
+ }
55
+ export declare function traceToOtlp(events: readonly TraceEvent[], opts: TraceToOtlpOptions): OtlpExportRequest;
56
+ export {};