feat(agent): 运行时从 pi-agent-core 0.99.2 迁到 pi-durable 1.1.0 + pi-ai 1.1.0

- PiAgentRuntime 改用 pi-durable Harness:每个 run 一个 JSONL 存储目录 sessionDir/<runId>/ + root 对话;
  系统提示 / 能力工具 / 白名单与预算钩子装在每次运行自己的扩展里;watchEvents 翻译成 AgentRunEvent
- 挂起(工具内 close)立即封口,调用保持未完成,重开后 resume 重放;replayGate 用调用级 memo
- 旧格式 <runId>.jsonl 打开时抛 LegacySessionError;skills 加载与 <skill> 块格式内置(源自 pi-agent-core,MIT)
- tool_call_end 新增可选 durationMs;用量取 pi.usage 合计(整段会话总量)
- Azure provider 改名 azure,迁移 0093 改存量;移除 pi-agent-core,锁 pi-durable/pi-ai/chord 1.1.0
- 文档:ADR-003、pi-providers、runbook、agent README、CHANGELOG

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-10-08 13:42:36 +08:00
1 parent dd0f6e2c09
commit 003815591c
24 files changed
+756 -363

No files matched your search

Generated
+29 -37
View File
@@ -7,8 +7,9 @@
"npm:@babel/[email protected]": "7.29.9",
"npm:@biomejs/biome@*": "2.5.15",
"npm:@biomejs/[email protected]": "2.5.15",
"npm:@earendil-works/[email protected]": "0.99.2_@modelcontextprotocol+sdk@1.31.0[email protected]",
"npm:@earendil-works/pi-ai@0.99.2": "0.99.2_@[email protected][email protected]",
"npm:@earendil-works/[email protected]": "1.1.0",
"npm:@earendil-works/pi-ai@1.1.0": "1.1.0_@[email protected][email protected]",
"npm:@earendil-works/[email protected]": "1.1.0_@[email protected][email protected]",
"npm:@fontsource-variable/inter-tight@^5.3.0": "5.3.0",
"npm:@fontsource-variable/space-grotesk@^5.3.0": "5.3.0",
"npm:@hono/[email protected]": "[email protected]",
@@ -91,8 +92,8 @@
],
"bin": true
},
"@anthropic-ai/[email protected]4[email protected]": {
"integrity": "sha512-cN5O8i9UVxHeOQAzj/XjshWXG8KiibJDw9OGpH2Z/eR3n/RBxdoLxDJOcfqAJWvjaMDFfHTBADU04hWRJVkDyA==",
"@anthropic-ai/[email protected]9[email protected]": {
"integrity": "sha512-MH7LB20kNpGLUpPTe2OG5XvL/KhX8HUO9XyBaFjgFk6TLS4Xjt0VPIuMKywe7POKKPslX+QxSlVok9e+8kG5Nw==",
"dependencies": [
"json-schema-to-ts",
"standardwebhooks",
@@ -424,8 +425,8 @@
],
"bin": true
},
"@babel/[email protected].7": {
"integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw=="
"@babel/[email protected].10": {
"integrity": "sha512-NpugTzbKgGrNe45Ui32cN8vCFFMxVtP/9rtfwv0nP5FRDAjvYBxJcLVpYA9mr1jxP6cnIT7x9LUzuDTbWYYNRA=="
},
"@babel/[email protected]": {
"integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==",
@@ -511,26 +512,14 @@
"@date-fns/[email protected]": {
"integrity": "sha512-lwYN/vDPeNRULcepoE/LO2Pgx+7/RV+S9ARfbc9lr2DtGkOD7pAiruHvbR1RX3Qyf6ja47EWJDMsNK5vK08DJg=="
},
"@earendil-works/chord@0.99.2": {
"integrity": "sha512-2dJWiNsOJm/ioBl1fhpJmw0hIjFUhM0CAteEnVkiVG0Kg4LimR7Asq8PfjclEvrbCPsDntzy7rGKhTZObI9TZw==",
"@earendil-works/chord@1.1.0": {
"integrity": "sha512-gsHzKfyQ3t0ZIQ3cLBjJ5Vqy1TYnFyruHIV3g3BwmulCDYe5BW4yT9vaJk9QzN6YANILIO75uzuq+Gdxtzz1og==",
"dependencies": [
"esbuild"
]
},
"@earendil-works/pi-a[email protected]_@[email protected][email protected]": {
"integrity": "sha512-VX0QMcg8HKBsv1bYP2NwmutBYa44OrwmtqR6Dq7QC3Ln8X/IlpHhUxB5L1JgnXNUUkTm8Wg/HZhzS797NBDMCQ==",
"dependencies": [
"@earendil-works/chord",
"@earendil-works/pi-ai",
"@earendil-works/pi-telemetry",
"diff",
"ignore",
"[email protected]",
"[email protected]"
]
},
"@earendil-works/[email protected]_@[email protected][email protected]": {
"integrity": "sha512-9RFOEdY+ZTJ1AI+UuAFs4RM0tF2Tje/R/CEv9gWTJHt0iTu8XHZs64U/EIZxNSllFmec/4HfwsOxYj1qQek9bg==",
"@earendil-works/pi-a[email protected]_@[email protected][email protected]": {
"integrity": "sha512-1T7LAkc/5Bvc0v6w4vAGVdCrli0o/E0pEmYKTnixu95vSFArBjvbhS/G4ZwI0RUePgf0Imcu0VyqlM4EcXxqfw==",
"dependencies": [
"@anthropic-ai/sdk",
"@aws-sdk/client-bedrock-runtime",
@@ -545,8 +534,17 @@
],
"bin": true
},
"@earendil-works/pi-[email protected]": {
"integrity": "sha512-WThYU4XM6jjjzH4FzLdreN7QAPS9SDdokL0W0Ldheg1ssCIJkfpK7PgebFm7/PoQub7OiXx+SRF6B/oF7z7lXA=="
"@earendil-works/pi-[email protected]_@[email protected][email protected]": {
"integrity": "sha512-NtuB3RY24vQ+0/rWYpeHupyFWBfXuKq17to3VMYUYqfD/uuGnz6F6UTPBEm51VSxxA6LZwRcDwLX2LtRehnIgQ==",
"dependencies": [
"@earendil-works/chord",
"@earendil-works/pi-ai",
"diff",
"[email protected]"
]
},
"@earendil-works/[email protected]": {
"integrity": "sha512-8gAK05/2pPozZZz6hCLOi8x2vsqzvsmO9gG92kbvuvTPm0qMHaFlaXX98ndXsrOi5pmzha7vNLguuG4+0Rgxjw=="
},
"@esbuild/[email protected]": {
"integrity": "sha512-XExcO+dvLKvVtNTibSTBej1NCAbaGhWn9Ww1ZPx80qsahhPFe/8jgWP0IchNe0F3HwkU7n8ejhH8bjonqht8mQ==",
@@ -708,7 +706,7 @@
"@fontsource-variable/[email protected]": {
"integrity": "sha512-2IxmvfB08i9vnGB3Ym/AXvhRE+8XOjWMXIyDum03c+tPwH0FUoMNQfGpU8NXPxjbws0Vvss3AH0Zqt4oJBBAdw=="
},
"@google/[email protected]_@[email protected][email protected]": {
"@google/[email protected]_@[email protected]": {
"integrity": "sha512-+PDtco2/Z0ONdzCGekCoCT+O1VJS9xJQNN4XzQpXG/t3El/SWWMkCWlFRO1KmivOHPa4Q0VjUYu1HBKCZ/v33Q==",
"dependencies": [
"@modelcontextprotocol/sdk",
@@ -3298,9 +3296,6 @@
"safer-buffer"
]
},
"[email protected]": {
"integrity": "sha512-YYNsSlXBjMk92SKnkwvB5LOVSa6OznlFUGcsvrFgNJbJCd0M1XKeFVRc8ZByeCqz32FivYNHJVooLmdqrmvp/Q=="
},
"[email protected]": {
"integrity": "sha512-EQyQtLiYW029lyoczMl/Hh4Xu7cDecSc58JRYpHyL4tIAu3eqd1yJzQX04d2BZHDkzFFvm6qJEJWOtfDSWAXbQ=="
},
@@ -3681,7 +3676,7 @@
"[email protected]": {
"integrity": "sha512-XW9MOldkhoICNeXVzzmXzmOW5G73ppOEGmh7fLCqHjgfdEYCGGN+00MlVCeUZgovjjfC56j9tvtDt1zGabNjjA==",
"dependencies": [
"yaml@2.9.1"
"yaml"
]
},
"[email protected][email protected]": {
@@ -4555,14 +4550,14 @@
"postcss",
"rolldown",
"tinyglobby",
"yaml@2.9.1"
"yaml"
],
"optionalDependencies": [
"fsevents"
],
"optionalPeers": [
"@types/node",
"yaml@2.9.1"
"yaml"
],
"bin": true
},
@@ -4632,10 +4627,6 @@
"[email protected]": {
"integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
},
"[email protected]": {
"integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==",
"bin": true
},
"[email protected]": {
"integrity": "sha512-3NxN8+78OdzbT7C/WjGsyfPAtJaN3FNDsWxv7Y7mcDsT/oOmgW8BpyQQFFBnvZE3j9Y2Sdz1ULFLezL7Eb2yFw==",
"bin": true
@@ -4654,8 +4645,9 @@
"dependencies": [
"npm:[email protected]",
"npm:@biomejs/[email protected]",
"npm:@earendil-works/[email protected]",
"npm:@earendil-works/pi-ai@0.99.2",
"npm:@earendil-works/[email protected]",
"npm:@earendil-works/pi-ai@1.1.0",
"npm:@earendil-works/[email protected]",
"npm:@hono/[email protected]",
"npm:@hono/[email protected]",
"npm:@modelcontextprotocol/[email protected]",