@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.
- package/CHANGELOG.md +51 -0
- package/dist/core/cursor-exec-bridge-session.d.ts.map +1 -1
- package/dist/core/cursor-exec-bridge-session.js +1 -3
- package/dist/core/cursor-exec-bridge-session.js.map +1 -1
- package/dist/core/cursor-exec-bridge.d.ts +2 -2
- package/dist/core/cursor-exec-bridge.d.ts.map +1 -1
- package/dist/core/cursor-exec-bridge.js +29 -20
- package/dist/core/cursor-exec-bridge.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/account-command.d.ts +4 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/account-command.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/account-command.js +27 -7
- package/dist/core/extensions/builtin/cursor-cli-oauth/account-command.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/index.d.ts +1 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/index.js +21 -2
- package/dist/core/extensions/builtin/cursor-cli-oauth/index.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.d.ts +14 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.d.ts.map +1 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.js +58 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.js.map +1 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.d.ts +4 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.js +33 -2
- package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/settings.d.ts +2 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/settings.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/settings.js +20 -10
- package/dist/core/extensions/builtin/cursor-cli-oauth/settings.js.map +1 -1
- package/dist/core/extensions/builtin/goal/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/goal/index.js +14 -3
- package/dist/core/extensions/builtin/goal/index.js.map +1 -1
- package/dist/core/extensions/builtin/goal/monitor-continuation.d.ts +9 -0
- package/dist/core/extensions/builtin/goal/monitor-continuation.d.ts.map +1 -1
- package/dist/core/extensions/builtin/goal/monitor-continuation.js +16 -0
- package/dist/core/extensions/builtin/goal/monitor-continuation.js.map +1 -1
- package/dist/core/extensions/builtin/goal/reload-reengagement.d.ts +30 -0
- package/dist/core/extensions/builtin/goal/reload-reengagement.d.ts.map +1 -0
- package/dist/core/extensions/builtin/goal/reload-reengagement.js +36 -0
- package/dist/core/extensions/builtin/goal/reload-reengagement.js.map +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +12 -5
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/docs/providers.md +9 -6
- package/node_modules/@code-yeongyu/senpi-codemode/CHANGELOG.md +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/package.json +4 -4
- package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts +3 -2
- package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/agent.js +6 -2
- package/node_modules/@earendil-works/pi-agent-core/dist/agent.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/package.json +3 -3
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-workers-ai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai-codex.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.js +2 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/package.json +2 -2
- package/node_modules/@earendil-works/pi-pty/package.json +1 -1
- package/node_modules/@earendil-works/pi-telemetry/package.json +1 -1
- package/node_modules/@earendil-works/pi-tui/package.json +1 -1
- package/package.json +7 -7
package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.js
CHANGED
|
@@ -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
|
-
|
|
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":"AAEA,SAAS,aAAa,CAAC,KAAa;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/C,OAAO,SAAS,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC;AAC7D,CAAC;AAED,SAAS,eAAe,CAAI,KAAQ,EAAE,IAA8B;IACnE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,QAAa,CAAC;IACjD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAc,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE;gBACjC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC;gBACrD,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,IAAI;gBAChB,YAAY,EAAE,IAAI;aAClB,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,KAAU,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACxC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,
|
|
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.
|
|
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.
|
|
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-tui",
|
|
3
3
|
"private": true,
|
|
4
|
-
"version": "2026.8.
|
|
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.
|
|
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.
|
|
54
|
-
"@earendil-works/pi-agent-core": "npm:@code-yeongyu/senpi-agent-core@2026.8.
|
|
55
|
-
"@earendil-works/pi-ai": "npm:@code-yeongyu/senpi-ai@2026.8.
|
|
56
|
-
"@earendil-works/pi-pty": "npm:@code-yeongyu/senpi-pty@2026.8.
|
|
57
|
-
"@earendil-works/pi-tui": "npm:@code-yeongyu/senpi-tui@2026.8.
|
|
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.
|
|
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",
|