@posthog/agent 2.1.157 → 2.1.167

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.
@@ -904,7 +904,7 @@ var import_hono = require("hono");
904
904
  // package.json
905
905
  var package_default = {
906
906
  name: "@posthog/agent",
907
- version: "2.1.157",
907
+ version: "2.1.167",
908
908
  repository: "https://github.com/PostHog/twig",
909
909
  description: "TypeScript agent framework wrapping Claude Agent SDK with Git-based task execution for PostHog",
910
910
  exports: {
@@ -992,7 +992,7 @@ var package_default = {
992
992
  },
993
993
  dependencies: {
994
994
  "@agentclientprotocol/sdk": "^0.14.0",
995
- "@anthropic-ai/claude-agent-sdk": "0.2.63",
995
+ "@anthropic-ai/claude-agent-sdk": "0.2.68",
996
996
  "@anthropic-ai/sdk": "^0.78.0",
997
997
  "@hono/node-server": "^1.19.9",
998
998
  "@opentelemetry/api-logs": "^0.208.0",
@@ -2632,6 +2632,9 @@ function handleResultMessage(message) {
2632
2632
  usage
2633
2633
  };
2634
2634
  }
2635
+ if (message.stop_reason === "max_tokens") {
2636
+ return { shouldStop: true, stopReason: "max_tokens", usage };
2637
+ }
2635
2638
  if (message.is_error) {
2636
2639
  return {
2637
2640
  shouldStop: true,
@@ -2642,6 +2645,9 @@ function handleResultMessage(message) {
2642
2645
  return { shouldStop: true, stopReason: "end_turn", usage };
2643
2646
  }
2644
2647
  case "error_during_execution":
2648
+ if (message.stop_reason === "max_tokens") {
2649
+ return { shouldStop: true, stopReason: "max_tokens", usage };
2650
+ }
2645
2651
  if (message.is_error) {
2646
2652
  return {
2647
2653
  shouldStop: true,
@@ -4104,14 +4110,7 @@ var ClaudeAcpAgent = class extends BaseAcpAgent {
4104
4110
  };
4105
4111
  const result = handleResultMessage(message);
4106
4112
  if (result.error) throw result.error;
4107
- switch (message.subtype) {
4108
- case "error_max_budget_usd":
4109
- case "error_max_turns":
4110
- case "error_max_structured_output_retries":
4111
- return { stopReason: "max_turn_requests", usage };
4112
- default:
4113
- return { stopReason: "end_turn", usage };
4114
- }
4113
+ return { stopReason: result.stopReason ?? "end_turn", usage };
4115
4114
  }
4116
4115
  case "stream_event":
4117
4116
  await handleStreamEvent(message, context);
@@ -4132,6 +4131,9 @@ var ClaudeAcpAgent = class extends BaseAcpAgent {
4132
4131
  return { stopReason: "end_turn" };
4133
4132
  }
4134
4133
  }
4134
+ if ("isReplay" in message && message.isReplay) {
4135
+ break;
4136
+ }
4135
4137
  if ("usage" in message.message && message.parent_tool_use_id === null) {
4136
4138
  const usage = message.message.usage;
4137
4139
  lastAssistantTotalUsage = usage.input_tokens + usage.output_tokens + usage.cache_read_input_tokens + usage.cache_creation_input_tokens;
@@ -4146,6 +4148,8 @@ var ClaudeAcpAgent = class extends BaseAcpAgent {
4146
4148
  case "tool_progress":
4147
4149
  case "auth_status":
4148
4150
  case "tool_use_summary":
4151
+ case "prompt_suggestion":
4152
+ case "rate_limit_event":
4149
4153
  break;
4150
4154
  default:
4151
4155
  unreachable(message, this.logger);
@@ -4153,6 +4157,22 @@ var ClaudeAcpAgent = class extends BaseAcpAgent {
4153
4157
  }
4154
4158
  }
4155
4159
  throw new Error("Session did not end in result");
4160
+ } catch (error) {
4161
+ if (error instanceof import_sdk2.RequestError || !(error instanceof Error)) {
4162
+ throw error;
4163
+ }
4164
+ const msg = error.message;
4165
+ if (msg.includes("ProcessTransport") || msg.includes("terminated process") || msg.includes("process exited with") || msg.includes("process terminated by signal") || msg.includes("Failed to write to process stdin")) {
4166
+ this.logger.error(`Process died: ${msg}`, {
4167
+ sessionId: this.sessionId
4168
+ });
4169
+ this.session.input.end();
4170
+ throw import_sdk2.RequestError.internalError(
4171
+ void 0,
4172
+ "The Claude Agent process exited unexpectedly. Please start a new session."
4173
+ );
4174
+ }
4175
+ throw error;
4156
4176
  } finally {
4157
4177
  if (!handedOff) {
4158
4178
  this.session.promptRunning = false;
@@ -4336,6 +4356,9 @@ var ClaudeAcpAgent = class extends BaseAcpAgent {
4336
4356
  }
4337
4357
  } catch (err) {
4338
4358
  settingsManager.dispose();
4359
+ if (isResume && err instanceof Error && err.message === "Query closed before response received") {
4360
+ throw import_sdk2.RequestError.resourceNotFound(sessionId);
4361
+ }
4339
4362
  this.logger.error(
4340
4363
  isResume ? forkSession ? "Session fork failed" : "Session resumption failed" : "Session initialization failed",
4341
4364
  {