@downcity/agent 1.1.216 → 1.1.217

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 (81) hide show
  1. package/bin/agent/local/Agent.d.ts +2 -0
  2. package/bin/agent/local/Agent.d.ts.map +1 -1
  3. package/bin/agent/local/Agent.js +6 -0
  4. package/bin/agent/local/Agent.js.map +1 -1
  5. package/bin/agent/local/services/AgentSessions.d.ts +6 -0
  6. package/bin/agent/local/services/AgentSessions.d.ts.map +1 -1
  7. package/bin/agent/local/services/AgentSessions.js +11 -1
  8. package/bin/agent/local/services/AgentSessions.js.map +1 -1
  9. package/bin/agent/remote/RemoteSession.d.ts +2 -4
  10. package/bin/agent/remote/RemoteSession.d.ts.map +1 -1
  11. package/bin/agent/remote/RemoteSession.js +17 -7
  12. package/bin/agent/remote/RemoteSession.js.map +1 -1
  13. package/bin/agent/remote/RemoteTransport.d.ts +3 -1
  14. package/bin/agent/remote/RemoteTransport.d.ts.map +1 -1
  15. package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts +2 -1
  16. package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts.map +1 -1
  17. package/bin/agent/remote/transports/HttpRemoteAgentTransport.js +13 -0
  18. package/bin/agent/remote/transports/HttpRemoteAgentTransport.js.map +1 -1
  19. package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts +2 -1
  20. package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts.map +1 -1
  21. package/bin/agent/remote/transports/RpcRemoteAgentTransport.js +3 -0
  22. package/bin/agent/remote/transports/RpcRemoteAgentTransport.js.map +1 -1
  23. package/bin/executor/types/SessionHistoryMeta.d.ts +2 -0
  24. package/bin/executor/types/SessionHistoryMeta.d.ts.map +1 -1
  25. package/bin/rpc/Client.d.ts +8 -1
  26. package/bin/rpc/Client.d.ts.map +1 -1
  27. package/bin/rpc/Client.js +11 -0
  28. package/bin/rpc/Client.js.map +1 -1
  29. package/bin/session/Session.d.ts.map +1 -1
  30. package/bin/session/Session.js +1 -0
  31. package/bin/session/Session.js.map +1 -1
  32. package/bin/session/browse/Browse.d.ts.map +1 -1
  33. package/bin/session/browse/Browse.js +3 -0
  34. package/bin/session/browse/Browse.js.map +1 -1
  35. package/bin/session/services/SessionStateService.d.ts +8 -0
  36. package/bin/session/services/SessionStateService.d.ts.map +1 -1
  37. package/bin/session/services/SessionStateService.js +34 -5
  38. package/bin/session/services/SessionStateService.js.map +1 -1
  39. package/bin/session/services/SessionViewService.d.ts.map +1 -1
  40. package/bin/session/services/SessionViewService.js +3 -0
  41. package/bin/session/services/SessionViewService.js.map +1 -1
  42. package/bin/session/storage/Metadata.d.ts +2 -0
  43. package/bin/session/storage/Metadata.d.ts.map +1 -1
  44. package/bin/session/storage/Metadata.js +10 -0
  45. package/bin/session/storage/Metadata.js.map +1 -1
  46. package/bin/session/storage/Persistence.d.ts.map +1 -1
  47. package/bin/session/storage/Persistence.js +5 -0
  48. package/bin/session/storage/Persistence.js.map +1 -1
  49. package/bin/types/agent/AgentOptions.d.ts +10 -0
  50. package/bin/types/agent/AgentOptions.d.ts.map +1 -1
  51. package/bin/types/agent/SessionActor.d.ts +2 -0
  52. package/bin/types/agent/SessionActor.d.ts.map +1 -1
  53. package/bin/types/agent/SessionTypes.d.ts +13 -1
  54. package/bin/types/agent/SessionTypes.d.ts.map +1 -1
  55. package/bin/types/rpc/RpcProtocol.d.ts +13 -1
  56. package/bin/types/rpc/RpcProtocol.d.ts.map +1 -1
  57. package/bin/types/session/SessionOptions.d.ts +3 -0
  58. package/bin/types/session/SessionOptions.d.ts.map +1 -1
  59. package/package.json +3 -3
  60. package/scripts/remote-session-reconnect.test.mjs +33 -0
  61. package/scripts/session-action-message.test.mjs +50 -0
  62. package/src/agent/local/Agent.ts +6 -0
  63. package/src/agent/local/services/AgentSessions.ts +16 -1
  64. package/src/agent/remote/RemoteSession.ts +17 -9
  65. package/src/agent/remote/RemoteTransport.ts +3 -0
  66. package/src/agent/remote/transports/HttpRemoteAgentTransport.ts +22 -0
  67. package/src/agent/remote/transports/RpcRemoteAgentTransport.ts +8 -0
  68. package/src/executor/types/SessionHistoryMeta.ts +2 -0
  69. package/src/rpc/Client.ts +18 -0
  70. package/src/session/Session.ts +1 -0
  71. package/src/session/browse/Browse.ts +3 -0
  72. package/src/session/services/SessionStateService.ts +39 -5
  73. package/src/session/services/SessionViewService.ts +3 -0
  74. package/src/session/storage/Metadata.ts +13 -0
  75. package/src/session/storage/Persistence.ts +5 -0
  76. package/src/types/agent/AgentOptions.ts +12 -0
  77. package/src/types/agent/SessionActor.ts +3 -0
  78. package/src/types/agent/SessionTypes.ts +13 -1
  79. package/src/types/rpc/RpcProtocol.ts +14 -0
  80. package/src/types/session/SessionOptions.ts +4 -0
  81. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/session/storage/Metadata.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,UAAU,CAAC;AAG1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAmBxE,SAAS,mBAAmB,CAAC,KAAc;IACzC,MAAM,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5D,OAAO,KAAK,IAAI,SAAS,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,MAAM,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5D,OAAO,KAAK,IAAI,SAAS,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;IAClE,OAAO,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE;QACpD,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE;QACjB,CAAC,CAAC,KAAK,CAAC;AACZ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,OAAO,QAAQ,IAAI,SAAS,CAAC;AAC/B,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACvE,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,MAAM,YAAY,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,OAAO,YAAY,IAAI,SAAS,CAAC;AACnC,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACvE,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAgC;IAEhC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC1D,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,MAAM,UAAU,GAAG;QACjB,MAAM,CAAC,OAAO;QACd,MAAM,CAAC,KAAK;QACZ,MAAM,CAAC,EAAE;QACT,MAAM,CAAC,IAAI;QACX,MAAM,CAAC,KAAK;KACb,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IACxB,CAAC;IACD,MAAM,eAAe,GACnB,KAAK,CAAC,WAAW,IAAI,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ;QAC7D,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE;QAC/B,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,eAAe,IAAI,kBAAkB,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAA+B;IAE/B,MAAM,QAAQ,GAAG,0BAA0B,CACzC,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,SAAS,CAChB,CAAC;IACF,OAAO,MAAM,2BAA2B,CAAC;QACvC,QAAQ;QACR,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,KAOjD;IACC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAkC,CAAC;QACjF,OAAO;YACL,CAAC,EAAE,CAAC;YACJ,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,SAAS,EACP,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;gBACjE,CAAC,CAAC,GAAG,CAAC,SAAS;gBACf,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YAChB,QAAQ,EAAE,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE;YACpE,SAAS,EACP,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;gBACjE,CAAC,CAAC,GAAG,CAAC,SAAS;gBACf,CAAC,CAAC,CAAC;YACP,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;gBAClC,CAAC,CAAC,EAAE,KAAK,EAAE,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC7C,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC;gBACrC,CAAC,CAAC,EAAE,UAAU,EAAE,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;gBACrD,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,SAAS;gBACzD,CAAC,CAAC,EAAE,YAAY,EAAE,uBAAuB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;gBAC7D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAC,WAAW,CAAC;gBACzC,CAAC,CAAC,EAAE,WAAW,EAAE,sBAAsB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBAC1D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,SAAS;gBACzD,CAAC,CAAC,EAAE,YAAY,EAAE,uBAAuB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;gBAC7D,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,CAAC,EAAE,CAAC;YACJ,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,QAAQ,EAAE,qBAAqB,EAAE;YACjC,SAAS,EAAE,CAAC;SACb,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAKC;IAED,MAAM,QAAQ,GAAG,0BAA0B,CACzC,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,SAAS,CAChB,CAAC;IACF,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC9B,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAKC;IAED,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,IAAI,GAAyB;QACjC,GAAG,OAAO;QACV,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,SAAS,EACP,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;QACxE,QAAQ,EAAE,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE;QACxE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,GAAG,CAAC,UAAU;YACZ,CAAC,CAAC;gBACE,UAAU;aACX;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IACF,MAAM,oBAAoB,CAAC;QACzB,GAAG,KAAK;QACR,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/session/storage/Metadata.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Persistence.d.ts","sourceRoot":"","sources":["../../../src/session/storage/Persistence.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAMhF;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,aAAa,EAAE,0BAA0B,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,+BACf,SAAQ,0BAA0B;IAClC;;OAEG;IACH,QAAQ,EAAE;QACR,wBAAwB,CAAC,MAAM,EAAE;YAC/B;;eAEG;YACH,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;YACjC;;eAEG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnB,CAAC;IACF;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAClD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,0BAA0B,GACjC,OAAO,CAAC,IAAI,CAAC,CAwBf;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,+BAA+B,GACtC,OAAO,CAAC,IAAI,CAAC,CASf"}
1
+ {"version":3,"file":"Persistence.d.ts","sourceRoot":"","sources":["../../../src/session/storage/Persistence.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAMhF;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,aAAa,EAAE,0BAA0B,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,+BACf,SAAQ,0BAA0B;IAClC;;OAEG;IACH,QAAQ,EAAE;QACR,wBAAwB,CAAC,MAAM,EAAE;YAC/B;;eAEG;YACH,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;YACjC;;eAEG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnB,CAAC;IACF;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAClD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,0BAA0B,GACjC,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,+BAA+B,GACtC,OAAO,CAAC,IAAI,CAAC,CASf"}
@@ -27,6 +27,11 @@ export async function touchSessionMetadata(params) {
27
27
  modelLabel: params.sessionConfig.modelLabel,
28
28
  }
29
29
  : {}),
30
+ ...(params.sessionConfig.modelId
31
+ ? {
32
+ modelId: params.sessionConfig.modelId,
33
+ }
34
+ : {}),
30
35
  };
31
36
  await writeSessionMetadata({
32
37
  projectRoot: params.projectRoot,
@@ -1 +1 @@
1
- {"version":3,"file":"Persistence.js","sourceRoot":"","sources":["../../../src/session/storage/Persistence.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAMvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAE3F,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AAsDvC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAkC;IAElC,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC;QACxC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;IACH,MAAM,IAAI,GAAyB;QACjC,GAAG,OAAO;QACV,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EACP,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;QACxE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU;YACjC,CAAC,CAAC;gBACE,UAAU,EAAE,MAAM,CAAC,aAAa,CAAC,UAAU;aAC5C;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IACF,MAAM,oBAAoB,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAuC;IAEvC,MAAM,sBAAsB,CAAC;QAC3B,MAAM,EAAE,MAAM,CAAC,QAAQ;QACvB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,YAAY,EAAE,MAAM,CAAC,gBAAgB;YACnC,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACnD,CAAC,CAAC,SAAS;KACd,CAAC,CAAC;IACH,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"Persistence.js","sourceRoot":"","sources":["../../../src/session/storage/Persistence.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAMvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAE3F,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AAsDvC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAkC;IAElC,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC;QACxC,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;IACH,MAAM,IAAI,GAAyB;QACjC,GAAG,OAAO;QACV,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EACP,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;QACxE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU;YACjC,CAAC,CAAC;gBACE,UAAU,EAAE,MAAM,CAAC,aAAa,CAAC,UAAU;aAC5C;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO;YAC9B,CAAC,CAAC;gBACE,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO;aACtC;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IACF,MAAM,oBAAoB,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAuC;IAEvC,MAAM,sBAAsB,CAAC;QAC3B,MAAM,EAAE,MAAM,CAAC,QAAQ;QACvB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,YAAY,EAAE,MAAM,CAAC,gBAAgB;YACnC,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACnD,CAAC,CAAC,SAAS;KACd,CAAC,CAAC;IACH,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC"}
@@ -68,6 +68,16 @@ export interface AgentOptions {
68
68
  * - 该模型会作为 session 首次执行前的默认注入值。
69
69
  */
70
70
  model?: AgentModel;
71
+ /** 当前 Agent 默认模型对应的稳定 ID。 */
72
+ model_id?: string;
73
+ /**
74
+ * 按稳定 ID 解析 Session 运行时模型。
75
+ *
76
+ * 关键点(中文)
77
+ * - Session 热切换与进程重启后的恢复统一使用该 resolver。
78
+ * - SDK 不维护模型目录,具体目录与鉴权由宿主负责。
79
+ */
80
+ resolve_model?: (model_id: string) => Promise<AgentModel>;
71
81
  /**
72
82
  * 当前 agent 显式持有的插件实例集合。
73
83
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AgentOptions.d.ts","sourceRoot":"","sources":["../../../src/types/agent/AgentOptions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG,KACpC,OAAO,EAAE,cAAc,KACpB,mBAAmB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE7B;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEhC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAElC;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,wBAAwB,CAAC;CAC1C"}
1
+ {"version":3,"file":"AgentOptions.d.ts","sourceRoot":"","sources":["../../../src/types/agent/AgentOptions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG,KACpC,OAAO,EAAE,cAAc,KACpB,mBAAmB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE7B;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEhC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAE1D;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAElC;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,wBAAwB,CAAC;CAC1C"}
@@ -63,6 +63,8 @@ export interface AgentSession extends AgentSessionActor {
63
63
  * 远程 Agent 返回的公开 session 接口。
64
64
  */
65
65
  export interface RemoteAgentSession extends AgentSessionActor {
66
+ /** 按稳定模型 ID 更新远程 Session 模型。 */
67
+ set(input: AgentSessionSetInput): Promise<void>;
66
68
  /** 从当前远程 session 创建一个分叉会话。 */
67
69
  fork(input?: AgentSessionForkInput | string): Promise<RemoteAgentSession>;
68
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SessionActor.d.ts","sourceRoot":"","sources":["../../../src/types/agent/SessionActor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,0BAA0B,EAC1B,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,QAAQ,SAAS,iBAAiB,GAAG,YAAY;IAC9E,oBAAoB;IACpB,MAAM,CAAC,KAAK,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE3D,wBAAwB;IACxB,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE3C,gCAAgC;IAChC,IAAI,CAAC,KAAK,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAEvE,oBAAoB;IACpB,OAAO,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAE7E,0BAA0B;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAEjF,uBAAuB;IACvB,aAAa,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uBAAuB;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,uBAAuB;IACvB,QAAQ,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAEtC,qBAAqB;IACrB,MAAM,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAExE,oCAAoC;IACpC,IAAI,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAExC,0BAA0B;IAC1B,SAAS,CAAC,UAAU,EAAE,sBAAsB,GAAG,uBAAuB,CAAC;IAEvE,+BAA+B;IAC/B,OAAO,CAAC,KAAK,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAE5E,kCAAkC;IAClC,MAAM,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IACrD,6BAA6B;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,uBAAuB;IACvB,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;IAE5C,yBAAyB;IACzB,GAAG,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,4BAA4B;IAC5B,IAAI,CAAC,KAAK,CAAC,EAAE,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACrE;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,8BAA8B;IAC9B,IAAI,CAAC,KAAK,CAAC,EAAE,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAC3E"}
1
+ {"version":3,"file":"SessionActor.d.ts","sourceRoot":"","sources":["../../../src/types/agent/SessionActor.ts"],"names":[],"mappings":"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"}
@@ -60,9 +60,17 @@ export interface AgentSessionSetInput {
60
60
  *
61
61
  * 关键点(中文)
62
62
  * - 这里接受运行中的模型实例,而不是模型 ID。
63
- * - 由于模型实例通常不可序列化,落盘只保留轻量可读标签用于展示。
63
+ * - 未同时提供 `modelId` 时,SDK 会从模型实例推导稳定 ID 并持久化。
64
64
  */
65
65
  model?: AgentModel;
66
+ /**
67
+ * 当前 session 使用的稳定模型 ID。
68
+ *
69
+ * 关键点(中文)
70
+ * - 由 Agent 宿主提供的模型 resolver 解析为运行时模型实例。
71
+ * - 该值会持久化到 session metadata,进程重启后可以恢复。
72
+ */
73
+ modelId?: string;
66
74
  }
67
75
  /**
68
76
  * Session 当前配置快照。
@@ -72,6 +80,8 @@ export interface AgentSessionConfigSnapshot {
72
80
  model?: LanguageModel;
73
81
  /** 当前模型的轻量可读标签。 */
74
82
  modelLabel?: string;
83
+ /** 当前 session 绑定的稳定模型 ID。 */
84
+ modelId?: string;
75
85
  }
76
86
  /**
77
87
  * Session records视图类型。
@@ -234,6 +244,8 @@ export interface AgentSessionSummary {
234
244
  messageCount: number;
235
245
  /** 当前 session 绑定模型的可读标签。 */
236
246
  modelLabel?: string;
247
+ /** 当前 session 绑定的稳定模型 ID。 */
248
+ modelId?: string;
237
249
  /** 当前 session 是否处于执行中。 */
238
250
  executing?: boolean;
239
251
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SessionTypes.d.ts","sourceRoot":"","sources":["../../../src/types/agent/SessionTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionTypes.d.ts","sourceRoot":"","sources":["../../../src/types/agent/SessionTypes.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * - Client 与 Server 共享同一份 request/frame 类型,避免协议两边漂移。
7
7
  * - 字段名保持现有协议格式,兼容已发布的 downcity 托管 runtime 调用。
8
8
  */
9
- import type { AgentCreateSessionInput, AgentListSessionsInput, AgentArchiveSessionsInput, AgentSessionRecordsInput, AgentSessionSystemSnapshot } from "../../types/agent/SessionTypes.js";
9
+ import type { AgentCreateSessionInput, AgentListSessionsInput, AgentArchiveSessionsInput, AgentSessionRecordsInput, AgentSessionSystemSnapshot, AgentSessionSetInput } from "../../types/agent/SessionTypes.js";
10
10
  import type { AgentSessionEvent } from "../../types/sdk/AgentSessionEvent.js";
11
11
  import type { AgentSessionPromptInput } from "../../types/sdk/AgentSessionPrompt.js";
12
12
  import type { JsonValue } from "../../types/common/Json.js";
@@ -43,6 +43,18 @@ export type RpcRequest = {
43
43
  /** 目标 session id。 */
44
44
  sessionId: string;
45
45
  };
46
+ } | {
47
+ /** 请求 id,用于匹配响应。 */
48
+ id: string;
49
+ /** 更新 session 模型。 */
50
+ method: "sdk.sessions.set";
51
+ /** Session 配置更新参数。 */
52
+ params: {
53
+ /** 目标 session id。 */
54
+ sessionId: string;
55
+ /** 仅包含稳定 modelId 的配置输入。 */
56
+ input: AgentSessionSetInput;
57
+ };
46
58
  } | {
47
59
  /** 请求 id,用于匹配响应。 */
48
60
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"RpcProtocol.d.ts","sourceRoot":"","sources":["../../../src/types/rpc/RpcProtocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RpcProtocol.d.ts","sourceRoot":"","sources":["../../../src/types/rpc/RpcProtocol.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ import type { SessionPort } from "../../types/runtime/agent/AgentContext.js";
12
12
  import type { AgentSessionSystemBlock } from "../../types/agent/SessionTypes.js";
13
13
  import type { SessionComposerOptions } from "../../types/session/SessionComposerOptions.js";
14
14
  import type { Logger } from "../../utils/logger/Logger.js";
15
+ import type { AgentModel } from "../../model/CityModelAdapter.js";
15
16
  /**
16
17
  * Agent 可管理的本地 Session 实例。
17
18
  */
@@ -69,6 +70,8 @@ export interface SessionOptions {
69
70
  * 在执行前确保当前 session 已完成宿主侧默认配置。
70
71
  */
71
72
  ensureConfigured?: (session: AgentManagedSession) => Promise<void>;
73
+ /** 按稳定模型 ID 解析当前 Session 的运行时模型。 */
74
+ resolve_model?: (model_id: string) => Promise<AgentModel>;
72
75
  /**
73
76
  * 当前 session 的 Composer 覆盖项。
74
77
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SessionOptions.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,cAAc,IAAI,WAAW,CAAC;IAE9B;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,0BAA0B,EAAE,MAAM,uBAAuB,EAAE,CAAC;IAE5D;;OAEG;IACH,4BAA4B,EAAE,MAAM,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAEvE;;OAEG;IACH,qBAAqB,EAAE,MAAM,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAEhE;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnE;;OAEG;IACH,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC"}
1
+ {"version":3,"file":"SessionOptions.d.ts","sourceRoot":"","sources":["../../../src/types/session/SessionOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,cAAc,IAAI,WAAW,CAAC;IAE9B;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,0BAA0B,EAAE,MAAM,uBAAuB,EAAE,CAAC;IAE5D;;OAEG;IACH,4BAA4B,EAAE,MAAM,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAEvE;;OAEG;IACH,qBAAqB,EAAE,MAAM,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAEhE;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnE,oCAAoC;IACpC,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAE1D;;OAEG;IACH,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@downcity/agent",
3
- "version": "1.1.216",
3
+ "version": "1.1.217",
4
4
  "type": "module",
5
5
  "description": "Downcity Agent 运行时 — 单 Agent 执行壳与本机 RPC 能力",
6
6
  "main": "./bin/index.js",
@@ -13,8 +13,8 @@
13
13
  },
14
14
  "dependencies": {
15
15
  "@ai-sdk/openai-compatible": "^2.0.48",
16
- "@downcity/shell": "^0.1.80",
17
- "@downcity/type": "0.1.113",
16
+ "@downcity/shell": "^0.1.81",
17
+ "@downcity/type": "0.1.114",
18
18
  "ai": "^6.0.193",
19
19
  "commander": "^15.0.0",
20
20
  "dotenv": "^17.4.2",
@@ -65,3 +65,36 @@ test("RemoteSession reconnects the event pump after transport close", async () =
65
65
  });
66
66
  assert.equal((await second_turn.finished).text, "done");
67
67
  });
68
+
69
+ test("RemoteSession switches models by stable id without local model instances", async () => {
70
+ const updates = [];
71
+ const transport = {
72
+ async set(_session_id, input) {
73
+ updates.push(input);
74
+ return {
75
+ agentId: "agent_test",
76
+ sessionId: "session_test",
77
+ messageCount: 0,
78
+ modelId: input.modelId,
79
+ modelLabel: input.modelId,
80
+ };
81
+ },
82
+ };
83
+ const session = new RemoteSession(transport, {
84
+ agentId: "agent_test",
85
+ sessionId: "session_test",
86
+ messageCount: 0,
87
+ modelId: "old-model",
88
+ modelLabel: "old-model",
89
+ });
90
+
91
+ await session.set({ modelId: "next-model" });
92
+
93
+ assert.deepEqual(updates, [{ modelId: "next-model" }]);
94
+ assert.equal(session.config.modelId, "next-model");
95
+ assert.equal(session.config.modelLabel, "next-model");
96
+ await assert.rejects(
97
+ session.set({ model: { modelId: "local-model", provider: "test" } }),
98
+ /does not accept a local model instance/,
99
+ );
100
+ });
@@ -187,6 +187,56 @@ test("default model initialization does not persist model-switching actions", as
187
187
  }
188
188
  });
189
189
 
190
+ test("session model id persists and restores through the host resolver", async () => {
191
+ const agent_path = await fs.mkdtemp(
192
+ path.join(os.tmpdir(), "downcity-agent-session-model-id-"),
193
+ );
194
+ const resolved_model_ids = [];
195
+ const resolve_model = async (model_id) => {
196
+ resolved_model_ids.push(model_id);
197
+ return {
198
+ modelId: model_id,
199
+ provider: "test",
200
+ };
201
+ };
202
+ const first_agent = new Agent({
203
+ id: "session_model_id_agent",
204
+ path: agent_path,
205
+ model: await resolve_model("default-model"),
206
+ model_id: "default-model",
207
+ resolve_model,
208
+ });
209
+ try {
210
+ const session = await first_agent.sessions.create({
211
+ sessionId: "persisted-model-session",
212
+ });
213
+ await session.set({ modelId: "session-model" });
214
+ const info = await session.get_info();
215
+ assert.equal(info.modelId, "session-model");
216
+ assert.equal(session.config.modelId, "session-model");
217
+ } finally {
218
+ await first_agent.dispose();
219
+ }
220
+
221
+ const restored_agent = new Agent({
222
+ id: "session_model_id_agent",
223
+ path: agent_path,
224
+ model: await resolve_model("other-default-model"),
225
+ model_id: "other-default-model",
226
+ resolve_model,
227
+ });
228
+ try {
229
+ const restored_session = await restored_agent.sessions.get(
230
+ "persisted-model-session",
231
+ );
232
+ assert.equal(restored_session.config.modelId, "session-model");
233
+ assert.equal(restored_session.config.model.modelId, "session-model");
234
+ assert.equal(resolved_model_ids.at(-1), "session-model");
235
+ } finally {
236
+ await restored_agent.dispose();
237
+ }
238
+ });
239
+
190
240
  test("session.fork persists and publishes history-forking actions on source session", async () => {
191
241
  const agent_path = await fs.mkdtemp(
192
242
  path.join(os.tmpdir(), "downcity-agent-history-forking-"),
@@ -47,6 +47,8 @@ export class Agent {
47
47
  private readonly config: DowncityConfig;
48
48
  private readonly env: Record<string, string>;
49
49
  private readonly defaultModel?: AgentModel;
50
+ private readonly default_model_id?: string;
51
+ private readonly resolve_model?: AgentOptions["resolve_model"];
50
52
  private readonly SessionClass: AgentOptions["Session"];
51
53
  private readonly backgroundService: AgentBackgroundService;
52
54
  private readonly shell?: AgentOptions["shell"];
@@ -55,6 +57,8 @@ export class Agent {
55
57
 
56
58
  constructor(options: AgentOptions) {
57
59
  this.defaultModel = options.model;
60
+ this.default_model_id = String(options.model_id || "").trim() || undefined;
61
+ this.resolve_model = options.resolve_model;
58
62
  this.SessionClass = options.Session;
59
63
  let sessions_ref: LocalAgentSessions | null = null;
60
64
  const assembly_service = new AgentAssemblyService({
@@ -261,6 +265,8 @@ export class Agent {
261
265
  await this.backgroundService.ready();
262
266
  },
263
267
  default_model: this.defaultModel,
268
+ default_model_id: this.default_model_id,
269
+ resolve_model: this.resolve_model,
264
270
  SessionClass: this.SessionClass,
265
271
  });
266
272
  }
@@ -92,6 +92,12 @@ type AgentSessionsOptions = {
92
92
  */
93
93
  default_model?: AgentModel;
94
94
 
95
+ /** 当前默认模型的稳定 ID。 */
96
+ default_model_id?: string;
97
+
98
+ /** 按稳定 ID 解析 Session 模型。 */
99
+ resolve_model?: (model_id: string) => Promise<AgentModel>;
100
+
95
101
  /**
96
102
  * 当前 agent 使用的本地 Session 类。
97
103
  */
@@ -110,6 +116,8 @@ export class AgentSessions implements AgentSessionsApi<AgentSession> {
110
116
  private readonly get_instruction: AgentSessionsOptions["get_instruction"];
111
117
  private readonly ensure_agent_ready: AgentSessionsOptions["ensure_agent_ready"];
112
118
  private readonly default_model?: AgentModel;
119
+ private readonly default_model_id?: string;
120
+ private readonly resolve_model?: AgentSessionsOptions["resolve_model"];
113
121
  private readonly SessionClass: AgentSessionConstructor;
114
122
  private readonly sessions_by_id = new Map<string, AgentManagedSession>();
115
123
  private readonly configured_session_ids = new Set<string>();
@@ -123,6 +131,8 @@ export class AgentSessions implements AgentSessionsApi<AgentSession> {
123
131
  this.get_instruction = options.get_instruction;
124
132
  this.ensure_agent_ready = options.ensure_agent_ready;
125
133
  this.default_model = options.default_model;
134
+ this.default_model_id = options.default_model_id;
135
+ this.resolve_model = options.resolve_model;
126
136
  this.SessionClass = options.SessionClass || Session;
127
137
  }
128
138
 
@@ -337,6 +347,7 @@ export class AgentSessions implements AgentSessionsApi<AgentSession> {
337
347
  await this.ensure_agent_ready();
338
348
  await this.apply_session_defaults(session);
339
349
  },
350
+ ...(this.resolve_model ? { resolve_model: this.resolve_model } : {}),
340
351
  });
341
352
  this.sessions_by_id.set(resolved_session_id, created);
342
353
  return created;
@@ -346,9 +357,13 @@ export class AgentSessions implements AgentSessionsApi<AgentSession> {
346
357
  session: AgentManagedSession,
347
358
  ): Promise<void> {
348
359
  if (this.configured_session_ids.has(session.id)) return;
349
- if (this.default_model) {
360
+ const persisted_model_id = String(session.config.modelId || "").trim();
361
+ if (persisted_model_id && this.resolve_model) {
362
+ await session.set({ modelId: persisted_model_id });
363
+ } else if (this.default_model) {
350
364
  await session.set({
351
365
  model: this.default_model,
366
+ ...(this.default_model_id ? { modelId: this.default_model_id } : {}),
352
367
  });
353
368
  }
354
369
  this.configured_session_ids.add(session.id);
@@ -71,17 +71,25 @@ export class RemoteSession implements RemoteAgentSession {
71
71
  this.transport = transport;
72
72
  this.id = info.sessionId;
73
73
  this.agentId = info.agentId;
74
- // 远程 session 不暴露服务端模型实例,config 返回空快照。
75
- this.config = {} as AgentSessionConfigSnapshot;
74
+ // 远程 session 不暴露服务端模型实例,只保留可序列化配置。
75
+ this.config = {
76
+ ...(info.modelId ? { modelId: info.modelId } : {}),
77
+ ...(info.modelLabel ? { modelLabel: info.modelLabel } : {}),
78
+ };
76
79
  }
77
80
 
78
- /**
79
- * 远程 session 当前不支持直接注入本地模型实例。
80
- */
81
- async set(_input: AgentSessionSetInput): Promise<void> {
82
- throw new Error(
83
- "Remote session.set({ model }) is not supported in v1. Configure the model on the server-side local Agent session instead.",
84
- );
81
+ /** 按稳定模型 ID 更新远程 Session 模型。 */
82
+ async set(input: AgentSessionSetInput): Promise<void> {
83
+ if (input.model) {
84
+ throw new Error("Remote session.set does not accept a local model instance.");
85
+ }
86
+ const model_id = String(input.modelId || "").trim();
87
+ if (!model_id) {
88
+ throw new Error("Remote session.set requires modelId.");
89
+ }
90
+ const info = await this.transport.set(this.id, { modelId: model_id });
91
+ this.config.modelId = info.modelId;
92
+ this.config.modelLabel = info.modelLabel;
85
93
  }
86
94
 
87
95
  /**
@@ -20,6 +20,7 @@ import type {
20
20
  AgentSessionInfo,
21
21
  AgentSessionSummaryPage,
22
22
  AgentSessionSystemSnapshot,
23
+ AgentSessionSetInput,
23
24
  } from "@/types/agent/SessionTypes.js";
24
25
  import type {
25
26
  RemoteAgentPluginActionInput,
@@ -51,6 +52,8 @@ export type TransportSubscription = {
51
52
  export type RemoteSessionTransport = {
52
53
  /** 读取 session 信息。 */
53
54
  get_info(session_id: string): Promise<AgentSessionInfo>;
55
+ /** 按稳定模型 ID 更新远程 session 配置。 */
56
+ set(session_id: string, input: AgentSessionSetInput): Promise<AgentSessionInfo>;
54
57
  /** 发送 prompt。 */
55
58
  prompt(
56
59
  session_id: string,
@@ -20,6 +20,7 @@ import type {
20
20
  AgentSessionInfo,
21
21
  AgentSessionSummaryPage,
22
22
  AgentSessionSystemSnapshot,
23
+ AgentSessionSetInput,
23
24
  } from "@/types/agent/SessionTypes.js";
24
25
  import type {
25
26
  RemoteAgentPluginActionInput,
@@ -100,6 +101,27 @@ export class HttpRemoteAgentTransport implements RemoteAgentTransport {
100
101
  return payload.session;
101
102
  }
102
103
 
104
+ async set(
105
+ session_id: string,
106
+ input: AgentSessionSetInput,
107
+ ): Promise<AgentSessionInfo> {
108
+ const payload = await read_http_json<{
109
+ success?: boolean;
110
+ error?: string;
111
+ session?: AgentSessionInfo;
112
+ }>(`${this.base_url}/api/sdk/sessions/${encodeURIComponent(session_id)}/model`, {
113
+ method: "PUT",
114
+ headers: this.headers({
115
+ "Content-Type": "application/json",
116
+ }),
117
+ body: JSON.stringify({ modelId: input.modelId }),
118
+ });
119
+ if (!payload.success || !payload.session?.sessionId) {
120
+ throw new Error(String(payload.error || "Remote session model update failed"));
121
+ }
122
+ return payload.session;
123
+ }
124
+
103
125
  async prompt(
104
126
  session_id: string,
105
127
  input: AgentSessionPromptInput,
@@ -20,6 +20,7 @@ import type {
20
20
  AgentSessionInfo,
21
21
  AgentSessionSummaryPage,
22
22
  AgentSessionSystemSnapshot,
23
+ AgentSessionSetInput,
23
24
  } from "@/types/agent/SessionTypes.js";
24
25
  import type {
25
26
  RemoteAgentPluginActionInput,
@@ -60,6 +61,13 @@ export class RpcRemoteAgentTransport implements RemoteAgentTransport {
60
61
  return await this.client.get_session(session_id);
61
62
  }
62
63
 
64
+ async set(
65
+ session_id: string,
66
+ input: AgentSessionSetInput,
67
+ ): Promise<AgentSessionInfo> {
68
+ return await this.client.set_session({ session_id, input });
69
+ }
70
+
63
71
  async prompt(
64
72
  session_id: string,
65
73
  input: AgentSessionPromptInput,
@@ -23,6 +23,8 @@ export type SessionHistoryMetaV1 = {
23
23
  title?: string;
24
24
  /** 当前 session 绑定模型的可读标签。 */
25
25
  modelLabel?: string;
26
+ /** 当前 session 绑定模型的稳定 ID,用于进程重启后恢复模型实例。 */
27
+ modelId?: string;
26
28
  /** 当前 session 已持久化记录数量,用于列表查询避免扫描完整历史。 */
27
29
  messageCount?: number;
28
30
  /** 当前 session 最后一条记录的用户可见摘要,用于列表预览。 */
package/src/rpc/Client.ts CHANGED
@@ -21,6 +21,7 @@ import type {
21
21
  AgentSessionInfo,
22
22
  AgentSessionSummaryPage,
23
23
  AgentSessionSystemSnapshot,
24
+ AgentSessionSetInput,
24
25
  } from "@/types/agent/SessionTypes.js";
25
26
  import type { JsonValue } from "@/types/common/Json.js";
26
27
  import type { JsonObject } from "@/types/common/Json.js";
@@ -168,6 +169,23 @@ export class RpcClient {
168
169
  return data.session;
169
170
  }
170
171
 
172
+ /** 按稳定模型 ID 更新远程 Session。 */
173
+ async set_session(params: {
174
+ /** 目标 session id。 */
175
+ session_id: string;
176
+ /** Session 配置更新输入。 */
177
+ input: AgentSessionSetInput;
178
+ }): Promise<AgentSessionInfo> {
179
+ const data = await this.request<{ session: AgentSessionInfo }>({
180
+ method: "sdk.sessions.set",
181
+ params: {
182
+ sessionId: params.session_id,
183
+ input: params.input,
184
+ },
185
+ });
186
+ return data.session;
187
+ }
188
+
171
189
  /**
172
190
  * 发送 prompt。
173
191
  */
@@ -126,6 +126,7 @@ export class Session implements AgentSession {
126
126
  await this.ensureConfiguredHook?.(this);
127
127
  }
128
128
  : undefined,
129
+ ...(options.resolve_model ? { resolve_model: options.resolve_model } : {}),
129
130
  publish_event: (event) => {
130
131
  this.eventHub.publish(event);
131
132
  },