@code-yeongyu/senpi 2026.8.17 → 2026.8.18-2

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 (67) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/dist/core/cursor-exec-bridge-session.d.ts.map +1 -1
  3. package/dist/core/cursor-exec-bridge-session.js +1 -3
  4. package/dist/core/cursor-exec-bridge-session.js.map +1 -1
  5. package/dist/core/cursor-exec-bridge.d.ts +2 -2
  6. package/dist/core/cursor-exec-bridge.d.ts.map +1 -1
  7. package/dist/core/cursor-exec-bridge.js +29 -20
  8. package/dist/core/cursor-exec-bridge.js.map +1 -1
  9. package/dist/core/extensions/builtin/cursor-cli-oauth/account-command.d.ts +4 -1
  10. package/dist/core/extensions/builtin/cursor-cli-oauth/account-command.d.ts.map +1 -1
  11. package/dist/core/extensions/builtin/cursor-cli-oauth/account-command.js +27 -7
  12. package/dist/core/extensions/builtin/cursor-cli-oauth/account-command.js.map +1 -1
  13. package/dist/core/extensions/builtin/cursor-cli-oauth/index.d.ts +1 -0
  14. package/dist/core/extensions/builtin/cursor-cli-oauth/index.d.ts.map +1 -1
  15. package/dist/core/extensions/builtin/cursor-cli-oauth/index.js +21 -2
  16. package/dist/core/extensions/builtin/cursor-cli-oauth/index.js.map +1 -1
  17. package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.d.ts +14 -0
  18. package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.d.ts.map +1 -0
  19. package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.js +58 -0
  20. package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.js.map +1 -0
  21. package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.d.ts +4 -0
  22. package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.d.ts.map +1 -1
  23. package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.js +33 -2
  24. package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.js.map +1 -1
  25. package/dist/core/extensions/builtin/cursor-cli-oauth/settings.d.ts +2 -0
  26. package/dist/core/extensions/builtin/cursor-cli-oauth/settings.d.ts.map +1 -1
  27. package/dist/core/extensions/builtin/cursor-cli-oauth/settings.js +20 -10
  28. package/dist/core/extensions/builtin/cursor-cli-oauth/settings.js.map +1 -1
  29. package/dist/core/extensions/builtin/goal/index.d.ts.map +1 -1
  30. package/dist/core/extensions/builtin/goal/index.js +14 -3
  31. package/dist/core/extensions/builtin/goal/index.js.map +1 -1
  32. package/dist/core/extensions/builtin/goal/monitor-continuation.d.ts +9 -0
  33. package/dist/core/extensions/builtin/goal/monitor-continuation.d.ts.map +1 -1
  34. package/dist/core/extensions/builtin/goal/monitor-continuation.js +16 -0
  35. package/dist/core/extensions/builtin/goal/monitor-continuation.js.map +1 -1
  36. package/dist/core/extensions/builtin/goal/reload-reengagement.d.ts +30 -0
  37. package/dist/core/extensions/builtin/goal/reload-reengagement.d.ts.map +1 -0
  38. package/dist/core/extensions/builtin/goal/reload-reengagement.js +36 -0
  39. package/dist/core/extensions/builtin/goal/reload-reengagement.js.map +1 -0
  40. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  41. package/dist/modes/interactive/interactive-mode.js +12 -5
  42. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  43. package/docs/providers.md +9 -6
  44. package/node_modules/@code-yeongyu/senpi-codemode/CHANGELOG.md +24 -0
  45. package/node_modules/@code-yeongyu/senpi-codemode/package.json +4 -4
  46. package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts +3 -2
  47. package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts.map +1 -1
  48. package/node_modules/@earendil-works/pi-agent-core/dist/agent.js +6 -2
  49. package/node_modules/@earendil-works/pi-agent-core/dist/agent.js.map +1 -1
  50. package/node_modules/@earendil-works/pi-agent-core/package.json +3 -3
  51. package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
  52. package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -1
  53. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-workers-ai.json +1 -1
  54. package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
  55. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai-codex.json +1 -1
  56. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -1
  57. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
  58. package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
  59. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xai.json +1 -1
  60. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.d.ts.map +1 -1
  61. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.js +2 -1
  62. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.js.map +1 -1
  63. package/node_modules/@earendil-works/pi-ai/package.json +2 -2
  64. package/node_modules/@earendil-works/pi-pty/package.json +1 -1
  65. package/node_modules/@earendil-works/pi-telemetry/package.json +1 -1
  66. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  67. package/package.json +7 -7
@@ -25,7 +25,8 @@ function clonePlainGraph(value, seen) {
25
25
  return value;
26
26
  const clone = Object.create(Object.getPrototypeOf(value));
27
27
  seen.set(value, clone);
28
- for (const key of Object.keys(value)) {
28
+ const enumerableSymbols = Object.getOwnPropertySymbols(value).filter((key) => Object.prototype.propertyIsEnumerable.call(value, key));
29
+ for (const key of [...Object.keys(value), ...enumerableSymbols]) {
29
30
  Object.defineProperty(clone, key, {
30
31
  value: clonePlainGraph(Reflect.get(value, key), seen),
31
32
  writable: true,
@@ -1 +1 @@
1
- {"version":3,"file":"recovery-message-snapshot.js","sourceRoot":"","sources":["../../src/tool-call-middleware/recovery-message-snapshot.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AssistantMessage, AssistantMessageEvent, ToolCall } from \"../types.ts\";\n\nfunction isPlainObject(value: object): boolean {\n\tconst prototype = Object.getPrototypeOf(value);\n\treturn prototype === Object.prototype || prototype === null;\n}\n\nfunction clonePlainGraph<T>(value: T, seen: WeakMap<object, unknown>): T {\n\tif (typeof value !== \"object\" || value === null) return value;\n\tconst existing = seen.get(value);\n\tif (existing !== undefined) return existing as T;\n\tif (Array.isArray(value)) {\n\t\tconst clone: unknown[] = new Array(value.length);\n\t\tseen.set(value, clone);\n\t\tfor (const key of Object.keys(value)) {\n\t\t\tObject.defineProperty(clone, key, {\n\t\t\t\tvalue: clonePlainGraph(Reflect.get(value, key), seen),\n\t\t\t\twritable: true,\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true,\n\t\t\t});\n\t\t}\n\t\treturn clone as T;\n\t}\n\tif (!isPlainObject(value)) return value;\n\tconst clone = Object.create(Object.getPrototypeOf(value)) as Record<string, unknown>;\n\tseen.set(value, clone);\n\tfor (const key of Object.keys(value)) {\n\t\tObject.defineProperty(clone, key, {\n\t\t\tvalue: clonePlainGraph(Reflect.get(value, key), seen),\n\t\t\twritable: true,\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true,\n\t\t});\n\t}\n\treturn clone as T;\n}\n\nfunction removeToolScratch(toolCall: ToolCall): void {\n\tdelete (toolCall as ToolCall & { partialJson?: string }).partialJson;\n}\n\nfunction sanitizeMessage(message: AssistantMessage): void {\n\tfor (const block of message.content) {\n\t\tif (block.type === \"toolCall\") removeToolScratch(block);\n\t}\n}\n\n/** Deep-clones enumerable plain message/event state while retaining exotic values by reference. */\nexport function snapshotRecoveryEvent(event: AssistantMessageEvent): AssistantMessageEvent {\n\tconst snapshot = clonePlainGraph(event, new WeakMap());\n\tif (snapshot.type === \"done\") sanitizeMessage(snapshot.message);\n\telse if (snapshot.type === \"error\") sanitizeMessage(snapshot.error);\n\telse {\n\t\tsanitizeMessage(snapshot.partial);\n\t\tif (snapshot.type === \"toolcall_end\") removeToolScratch(snapshot.toolCall);\n\t}\n\treturn snapshot;\n}\n"]}
1
+ {"version":3,"file":"recovery-message-snapshot.js","sourceRoot":"","sources":["../../src/tool-call-middleware/recovery-message-snapshot.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AssistantMessage, AssistantMessageEvent, ToolCall } from \"../types.ts\";\n\nfunction isPlainObject(value: object): boolean {\n\tconst prototype = Object.getPrototypeOf(value);\n\treturn prototype === Object.prototype || prototype === null;\n}\n\nfunction clonePlainGraph<T>(value: T, seen: WeakMap<object, unknown>): T {\n\tif (typeof value !== \"object\" || value === null) return value;\n\tconst existing = seen.get(value);\n\tif (existing !== undefined) return existing as T;\n\tif (Array.isArray(value)) {\n\t\tconst clone: unknown[] = new Array(value.length);\n\t\tseen.set(value, clone);\n\t\tfor (const key of Object.keys(value)) {\n\t\t\tObject.defineProperty(clone, key, {\n\t\t\t\tvalue: clonePlainGraph(Reflect.get(value, key), seen),\n\t\t\t\twritable: true,\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true,\n\t\t\t});\n\t\t}\n\t\treturn clone as T;\n\t}\n\tif (!isPlainObject(value)) return value;\n\tconst clone = Object.create(Object.getPrototypeOf(value)) as Record<PropertyKey, unknown>;\n\tseen.set(value, clone);\n\tconst enumerableSymbols = Object.getOwnPropertySymbols(value).filter((key) =>\n\t\tObject.prototype.propertyIsEnumerable.call(value, key),\n\t);\n\tfor (const key of [...Object.keys(value), ...enumerableSymbols]) {\n\t\tObject.defineProperty(clone, key, {\n\t\t\tvalue: clonePlainGraph(Reflect.get(value, key), seen),\n\t\t\twritable: true,\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true,\n\t\t});\n\t}\n\treturn clone as T;\n}\n\nfunction removeToolScratch(toolCall: ToolCall): void {\n\tdelete (toolCall as ToolCall & { partialJson?: string }).partialJson;\n}\n\nfunction sanitizeMessage(message: AssistantMessage): void {\n\tfor (const block of message.content) {\n\t\tif (block.type === \"toolCall\") removeToolScratch(block);\n\t}\n}\n\n/** Deep-clones enumerable plain message/event state while retaining exotic values by reference. */\nexport function snapshotRecoveryEvent(event: AssistantMessageEvent): AssistantMessageEvent {\n\tconst snapshot = clonePlainGraph(event, new WeakMap());\n\tif (snapshot.type === \"done\") sanitizeMessage(snapshot.message);\n\telse if (snapshot.type === \"error\") sanitizeMessage(snapshot.error);\n\telse {\n\t\tsanitizeMessage(snapshot.partial);\n\t\tif (snapshot.type === \"toolcall_end\") removeToolScratch(snapshot.toolCall);\n\t}\n\treturn snapshot;\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@earendil-works/pi-ai",
3
3
  "private": true,
4
- "version": "2026.8.17",
4
+ "version": "2026.8.18-2",
5
5
  "description": "Unified LLM API with automatic model discovery and provider configuration",
6
6
  "type": "module",
7
7
  "main": "./dist/index.js",
@@ -74,7 +74,7 @@
74
74
  "@anthropic-ai/sdk": "0.91.1",
75
75
  "@aws-sdk/client-bedrock-runtime": "3.1095.0",
76
76
  "@bufbuild/protobuf": "2.13.0",
77
- "@earendil-works/pi-telemetry": "npm:@code-yeongyu/senpi-telemetry@2026.8.17",
77
+ "@earendil-works/pi-telemetry": "npm:@code-yeongyu/senpi-telemetry@2026.8.18-2",
78
78
  "@google/genai": "2.13.0",
79
79
  "@mistralai/mistralai": "2.5.0",
80
80
  "@opentelemetry/api": "1.9.1",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@earendil-works/pi-pty",
3
3
  "private": true,
4
- "version": "2026.8.17",
4
+ "version": "2026.8.18-2",
5
5
  "description": "Typed PTY session loader for Senpi persistent terminals",
6
6
  "type": "module",
7
7
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@earendil-works/pi-telemetry",
3
- "version": "2026.8.17",
3
+ "version": "2026.8.18-2",
4
4
  "private": true,
5
5
  "description": "Vendor-neutral telemetry contracts and typed schema utilities for pi",
6
6
  "type": "module",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@earendil-works/pi-tui",
3
3
  "private": true,
4
- "version": "2026.8.17",
4
+ "version": "2026.8.18-2",
5
5
  "description": "Terminal User Interface library with differential rendering for efficient text-based applications",
6
6
  "type": "module",
7
7
  "main": "dist/index.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/senpi",
3
- "version": "2026.8.17",
3
+ "version": "2026.8.18-2",
4
4
  "description": "Coding agent CLI with read, bash, edit, write tools and session management",
5
5
  "type": "module",
6
6
  "piConfig": {
@@ -50,11 +50,11 @@
50
50
  "@anthropic-ai/sdk": "0.91.1",
51
51
  "@aws-sdk/client-bedrock-runtime": "3.1095.0",
52
52
  "@bufbuild/protobuf": "2.13.0",
53
- "@code-yeongyu/senpi-codemode": "2026.8.17",
54
- "@earendil-works/pi-agent-core": "npm:@code-yeongyu/senpi-agent-core@2026.8.17",
55
- "@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.8.17",
56
- "@earendil-works/pi-pty": "npm:@code-yeongyu/senpi-pty@2026.8.17",
57
- "@earendil-works/pi-tui": "npm:@code-yeongyu/senpi-tui@2026.8.17",
53
+ "@code-yeongyu/senpi-codemode": "2026.8.18-2",
54
+ "@earendil-works/pi-agent-core": "npm:@code-yeongyu/senpi-agent-core@2026.8.18-2",
55
+ "@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.8.18-2",
56
+ "@earendil-works/pi-pty": "npm:@code-yeongyu/senpi-pty@2026.8.18-2",
57
+ "@earendil-works/pi-tui": "npm:@code-yeongyu/senpi-tui@2026.8.18-2",
58
58
  "@mistralai/mistralai": "2.5.0",
59
59
  "@modelcontextprotocol/sdk": "1.30.0",
60
60
  "@mozilla/readability": "0.6.0",
@@ -120,7 +120,7 @@
120
120
  "@csstools/css-parser-algorithms": "4.0.0",
121
121
  "@csstools/css-syntax-patches-for-csstree": "1.1.5",
122
122
  "@csstools/css-tokenizer": "4.0.0",
123
- "@earendil-works/pi-telemetry": "npm:@code-yeongyu/senpi-telemetry@2026.8.17",
123
+ "@earendil-works/pi-telemetry": "npm:@code-yeongyu/senpi-telemetry@2026.8.18-2",
124
124
  "@exodus/bytes": "1.15.1",
125
125
  "@hono/node-server": "2.0.10",
126
126
  "@mixmark-io/domino": "2.2.0",