@code-yeongyu/senpi 2026.7.14-3 → 2026.7.14

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 (171) hide show
  1. package/CHANGELOG.md +0 -38
  2. package/dist/core/agent-session.js +1 -1
  3. package/dist/core/agent-session.js.map +1 -1
  4. package/dist/core/compaction/branch-summarization.d.ts +1 -1
  5. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  6. package/dist/core/compaction/branch-summarization.js.map +1 -1
  7. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.d.ts.map +1 -1
  8. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.js +5 -14
  9. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.js.map +1 -1
  10. package/dist/core/extensions/builtin/terminal/runtime-session.d.ts +1 -1
  11. package/dist/core/extensions/builtin/terminal/runtime-session.d.ts.map +1 -1
  12. package/dist/core/extensions/builtin/terminal/runtime-session.js +2 -3
  13. package/dist/core/extensions/builtin/terminal/runtime-session.js.map +1 -1
  14. package/dist/core/model-registry.d.ts.map +1 -1
  15. package/dist/core/model-registry.js +3 -18
  16. package/dist/core/model-registry.js.map +1 -1
  17. package/dist/core/model-resolver.d.ts.map +1 -1
  18. package/dist/core/model-resolver.js +0 -1
  19. package/dist/core/model-resolver.js.map +1 -1
  20. package/dist/core/package-manager.d.ts.map +1 -1
  21. package/dist/core/package-manager.js +2 -7
  22. package/dist/core/package-manager.js.map +1 -1
  23. package/dist/core/provider-display-names.d.ts.map +1 -1
  24. package/dist/core/provider-display-names.js +0 -1
  25. package/dist/core/provider-display-names.js.map +1 -1
  26. package/dist/core/system-prompt.d.ts.map +1 -1
  27. package/dist/core/system-prompt.js +11 -1
  28. package/dist/core/system-prompt.js.map +1 -1
  29. package/dist/modes/interactive/interactive-mode.js +2 -2
  30. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  31. package/docs/custom-provider.md +0 -2
  32. package/docs/models.md +0 -2
  33. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  34. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  35. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  36. package/examples/extensions/gondolin/package-lock.json +2 -2
  37. package/examples/extensions/gondolin/package.json +1 -1
  38. package/examples/extensions/sandbox/package-lock.json +2 -2
  39. package/examples/extensions/sandbox/package.json +1 -1
  40. package/examples/extensions/with-deps/package-lock.json +2 -2
  41. package/examples/extensions/with-deps/package.json +1 -1
  42. package/node_modules/@code-yeongyu/senpi-codemode/CHANGELOG.md +0 -16
  43. package/node_modules/@code-yeongyu/senpi-codemode/package.json +3 -3
  44. package/node_modules/@earendil-works/pi-agent-core/package.json +2 -2
  45. package/node_modules/@earendil-works/pi-ai/README.md +2 -3
  46. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
  47. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +42 -23
  48. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
  49. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.d.ts.map +1 -1
  50. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js +6 -10
  51. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js.map +1 -1
  52. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts +0 -1
  53. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts.map +1 -1
  54. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js +1 -1
  55. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js.map +1 -1
  56. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
  57. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +3 -12
  58. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
  59. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.d.ts.map +1 -1
  60. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.js +0 -23
  61. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.js.map +1 -1
  62. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts +0 -1
  63. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts.map +1 -1
  64. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +6 -22
  65. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js.map +1 -1
  66. package/node_modules/@earendil-works/pi-ai/dist/compat.d.ts +0 -2
  67. package/node_modules/@earendil-works/pi-ai/dist/compat.d.ts.map +1 -1
  68. package/node_modules/@earendil-works/pi-ai/dist/compat.js +0 -3
  69. package/node_modules/@earendil-works/pi-ai/dist/compat.js.map +1 -1
  70. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.d.ts.map +1 -1
  71. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js +0 -1
  72. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js.map +1 -1
  73. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts +0 -1
  74. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts.map +1 -1
  75. package/node_modules/@earendil-works/pi-ai/dist/index.js.map +1 -1
  76. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts +6 -58
  77. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts.map +1 -1
  78. package/node_modules/@earendil-works/pi-ai/dist/providers/all.d.ts +5 -9
  79. package/node_modules/@earendil-works/pi-ai/dist/providers/all.d.ts.map +1 -1
  80. package/node_modules/@earendil-works/pi-ai/dist/providers/all.js.map +1 -1
  81. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.d.ts +6 -1
  82. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.d.ts.map +1 -1
  83. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.js +2 -1
  84. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.js.map +1 -1
  85. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.d.ts +0 -57
  86. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.d.ts.map +1 -1
  87. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.js +0 -19
  88. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.js.map +1 -1
  89. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.js +10 -10
  90. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.js.map +1 -1
  91. package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.js +2 -2
  92. package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.js.map +1 -1
  93. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/context-transformer.d.ts.map +1 -1
  94. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/context-transformer.js +0 -9
  95. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/context-transformer.js.map +1 -1
  96. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.d.ts +1 -1
  97. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.d.ts.map +1 -1
  98. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.js +2 -6
  99. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.js.map +1 -1
  100. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/types.d.ts +1 -3
  101. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/types.d.ts.map +1 -1
  102. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/types.js.map +1 -1
  103. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +5 -10
  104. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  105. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  106. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.d.ts +0 -1
  107. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.d.ts.map +1 -1
  108. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.js +0 -9
  109. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.js.map +1 -1
  110. package/node_modules/@earendil-works/pi-ai/package.json +1 -1
  111. package/node_modules/@earendil-works/pi-pty/native/prebuilds/darwin-arm64/senpi_pty.darwin-arm64.node +0 -0
  112. package/node_modules/@earendil-works/pi-pty/package.json +1 -1
  113. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  114. package/package.json +6 -6
  115. package/dist/core/radius.d.ts +0 -21
  116. package/dist/core/radius.d.ts.map +0 -1
  117. package/dist/core/radius.js +0 -30
  118. package/dist/core/radius.js.map +0 -1
  119. package/examples/AGENTS.md +0 -34
  120. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.d.ts +0 -97
  121. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.d.ts.map +0 -1
  122. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js +0 -307
  123. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js.map +0 -1
  124. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.lazy.d.ts +0 -3
  125. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.lazy.d.ts.map +0 -1
  126. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.lazy.js +0 -3
  127. package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.lazy.js.map +0 -1
  128. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/coerce-parameters.d.ts +0 -8
  129. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/coerce-parameters.d.ts.map +0 -1
  130. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/coerce-parameters.js +0 -92
  131. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/coerce-parameters.js.map +0 -1
  132. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/format.d.ts +0 -6
  133. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/format.d.ts.map +0 -1
  134. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/format.js +0 -54
  135. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/format.js.map +0 -1
  136. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/index.d.ts +0 -4
  137. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/index.d.ts.map +0 -1
  138. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/index.js +0 -4
  139. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/index.js.map +0 -1
  140. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-match.d.ts +0 -7
  141. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-match.d.ts.map +0 -1
  142. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-match.js +0 -16
  143. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-match.js.map +0 -1
  144. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-tag-scanner.d.ts +0 -19
  145. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-tag-scanner.d.ts.map +0 -1
  146. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-tag-scanner.js +0 -217
  147. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-tag-scanner.js.map +0 -1
  148. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/parse.d.ts +0 -4
  149. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/parse.d.ts.map +0 -1
  150. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/parse.js +0 -46
  151. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/parse.js.map +0 -1
  152. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream-boundary.d.ts +0 -13
  153. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream-boundary.d.ts.map +0 -1
  154. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream-boundary.js +0 -144
  155. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream-boundary.js.map +0 -1
  156. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream.d.ts +0 -5
  157. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream.d.ts.map +0 -1
  158. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream.js +0 -208
  159. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream.js.map +0 -1
  160. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/tool-resolver.d.ts +0 -4
  161. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/tool-resolver.d.ts.map +0 -1
  162. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/tool-resolver.js +0 -17
  163. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/tool-resolver.js.map +0 -1
  164. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/xml-entities.d.ts +0 -5
  165. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/xml-entities.d.ts.map +0 -1
  166. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/xml-entities.js +0 -34
  167. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/xml-entities.js.map +0 -1
  168. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/radius.d.ts +0 -39
  169. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/radius.d.ts.map +0 -1
  170. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/radius.js +0 -413
  171. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/radius.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,43 +1,5 @@
1
1
  # Changelog
2
2
 
3
- ## [2026.7.14-3] - 2026-07-14
4
-
5
- ### Added
6
-
7
- - Added Radius gateway support for custom `models.json` providers, including Radius OAuth login and dynamic model discovery.
8
- - Added inherited forced tool-call support for OpenAI Responses and OpenAI Codex models ([#6588](https://github.com/earendil-works/pi-mono/pull/6588)).
9
-
10
- ### Changed
11
-
12
- - Stopped including the current date in the system prompt so prompts no longer bake in stale date context ([#6621](https://github.com/earendil-works/pi/issues/6621)).
13
- - Stopped sending OpenAI Responses session-id fields to OpenCode models that opt out of session IDs ([#6645](https://github.com/earendil-works/pi-mono/pull/6645) by [@davidbrai](https://github.com/davidbrai)).
14
-
15
- ### Fixed
16
-
17
- - Clarified the interactive `/login` option labels.
18
- - Fixed `senpi uninstall` under npm to pass `--legacy-peer-deps`, avoiding uninstall failures from unrelated peer dependency conflicts ([#6604](https://github.com/earendil-works/pi-mono/pull/6604) by [@davidbrai](https://github.com/davidbrai)).
19
- - Fixed branch summaries when the selected model uses ambient auth instead of a literal API key ([#6595](https://github.com/earendil-works/pi-mono/pull/6595) by [@davidbrai](https://github.com/davidbrai)).
20
- - Fixed inherited Anthropic empty-usage handling, OpenAI/Azure Responses encrypted reasoning replay, Bedrock stop-reason errors, OpenRouter and Responses WebSocket session affinity, and GitHub Copilot MAI-Code routing from the upstream AI package.
21
-
22
- ### Removed
23
-
24
- ## [2026.7.14-2] - 2026-07-14
25
-
26
- ### Added
27
-
28
- - Added `anthropic-xml` as a valid `compat.toolCallFormat` in custom `models.json` provider and model definitions.
29
-
30
- ### Changed
31
-
32
- - Hardened the GPT-5.6 prompt preset's stop contract to Hephaestus parity: the intent line now declares a binding per-turn stop condition, and the Stop Rules section became a Stop Goal that makes stopping mandatory and immediate once every done-condition holds.
33
-
34
- ### Fixed
35
-
36
- - Preserved Anthropic server-side web search `encrypted_content` during same-model replay so follow-up turns no longer fail after native web searches ([#208](https://github.com/code-yeongyu/senpi/pull/208)).
37
- - Preserved final output from fast-exiting persistent-terminal commands by draining native PTY readers before exit and subscribing before session startup ([#207](https://github.com/code-yeongyu/senpi/pull/207)).
38
-
39
- ### Removed
40
-
41
3
  ## [2026.7.14] - 2026-07-14
42
4
 
43
5
  ### Added
@@ -2965,7 +2965,7 @@ export class AgentSession {
2965
2965
  let summaryDetails;
2966
2966
  if (options.summarize && entriesToSummarize.length > 0 && !extensionSummary) {
2967
2967
  const model = this.model;
2968
- const { apiKey, headers, extraBody, env } = await this._getCompactionRequestAuth(model);
2968
+ const { apiKey, headers, extraBody, env } = await this._getRequiredRequestAuth(model);
2969
2969
  const branchSummarySettings = this.settingsManager.getBranchSummarySettings();
2970
2970
  const result = await generateBranchSummary(entriesToSummarize, {
2971
2971
  model,