@downcity/agent 1.1.284 → 1.1.286

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;GAEG;AACH,qBAAa,KAAK;IAChB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,6BAA6B;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,oCAAoC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAErC,oCAAoC;IACpC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IAEjC,0CAA0C;IAC1C,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAEjC;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAE5B,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,gDAAgD;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IAEvC,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAyB;IAE7C,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IAEvD,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IAEnC,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAwB;IAE/C,+CAA+C;IAC/C,OAAO,CAAC,WAAW,CAAW;gBAElB,OAAO,EAAE,YAAY;IA8DjC;;;;;;OAMG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAK9C;;;;;;OAMG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIhC;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI;IAQ7D;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI;IAKhE;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,SAAS,IAAI,MAAM;IAInB;;OAEG;IACH,UAAU,IAAI,YAAY;IAI1B;;OAEG;IACH,QAAQ,IAAI,KAAK,GAAG,SAAS;CAG9B"}
1
+ {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;GAEG;AACH,qBAAa,KAAK;IAChB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,6BAA6B;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,oCAAoC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAErC,oCAAoC;IACpC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IAEjC,0CAA0C;IAC1C,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAEjC;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAE5B,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,gDAAgD;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IAEvC,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAyB;IAE7C,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IAEvD,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IAEnC,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAwB;IAE/C,+CAA+C;IAC/C,OAAO,CAAC,WAAW,CAAW;gBAElB,OAAO,EAAE,YAAY;IA+DjC;;;;;;OAMG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAK9C;;;;;;OAMG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIhC;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI;IAQ7D;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI;IAKhE;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,SAAS,IAAI,MAAM;IAInB;;OAEG;IACH,UAAU,IAAI,YAAY;IAI1B;;OAEG;IACH,QAAQ,IAAI,KAAK,GAAG,SAAS;CAG9B"}
@@ -92,6 +92,7 @@ export class Agent {
92
92
  SessionClass: this.SessionClass,
93
93
  });
94
94
  this.context = new AgentContext({
95
+ ...(this.shell ? { shell: this.shell } : {}),
95
96
  agent_id: this.id,
96
97
  rootPath: this.path,
97
98
  logger: this.logger,
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;GAEG;AACH,MAAM,OAAO,KAAK;IAChB,8CAA8C;IACrC,EAAE,CAAS;IAEpB,6BAA6B;IACpB,IAAI,CAAS;IAEtB,oCAAoC;IAC3B,KAAK,CAAuB;IAErC,oCAAoC;IAC3B,OAAO,CAAiB;IAEjC,0CAA0C;IACjC,QAAQ,CAAgB;IAEjC;;;;;;OAMG;IACM,KAAK,CAAc;IAE5B,yBAAyB;IACR,MAAM,CAAS;IAEhC,gDAAgD;IAC/B,OAAO,CAAe;IAEvC,uCAAuC;IACtB,GAAG,CAAyB;IAE7C,0CAA0C;IACzB,YAAY,CAA0B;IAEvD,6BAA6B;IACZ,KAAK,CAAa;IAEnC,+BAA+B;IACd,KAAK,CAAyB;IAE/C,+CAA+C;IACvC,WAAW,CAAW;IAE9B,YAAY,OAAqB;QAC/B,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAEnE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ;YAC7D,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK,EAAE;YACtB,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,yBAAyB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAClE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAE3B,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QACzD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;gBACnB,SAAS,EAAE,IAAI,CAAC,IAAI;gBACpB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,QAAQ,EAAE,IAAI,CAAC,EAAE;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,CAAC;YAChC,QAAQ,EAAE,IAAI,CAAC,EAAE;YACjB,YAAY,EAAE,IAAI,CAAC,IAAI;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YACvC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE;YAClC,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;YACtD,kBAAkB,EAAE,KAAK,IAAI,EAAE;gBAC7B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;YACD,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK;YACjC,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,QAAQ,EAAE,IAAI,CAAC,EAAE;YACjB,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG;YACvB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;QAEH,oCAAoC;QACpC,IAAI,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC;YAC1B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,KAAwB;QACrC,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,gBAAgB,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;OAMG;IACH,MAAM;QACJ,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAA+C;QACpD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACH,QAAQ,CAAC,KAAgD;QACvD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACK,eAAe,CACrB,KAAgD;QAEhD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO;QAChD,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAClD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF"}
@@ -9,10 +9,13 @@
9
9
  import type { AgentSessions } from "../agent/AgentSessions.js";
10
10
  import type { AgentPlugins } from "../types/plugin/PluginRuntime.js";
11
11
  import type { Logger } from "../utils/logger/Logger.js";
12
+ import type { Shell } from "@downcity/shell";
12
13
  /**
13
14
  * AgentContext 构造参数。
14
15
  */
15
16
  interface AgentContextOptions {
17
+ /** 当前 Agent 显式挂载的 Shell;未启用时为空。 */
18
+ shell?: Shell;
16
19
  /** 当前 Agent 稳定标识。 */
17
20
  agent_id: string;
18
21
  /** 当前项目根目录。 */
@@ -32,6 +35,8 @@ interface AgentContextOptions {
32
35
  * 本地 Agent 的统一执行上下文。
33
36
  */
34
37
  export declare class AgentContext {
38
+ /** 当前 Agent 显式挂载的 Shell;plugin 可复用其已注入的平台 adapter。 */
39
+ readonly shell?: Shell;
35
40
  /** 当前 Agent 稳定标识。 */
36
41
  readonly agent_id: string;
37
42
  /** 当前项目根目录。 */
@@ -1 +1 @@
1
- {"version":3,"file":"AgentContext.d.ts","sourceRoot":"","sources":["../../src/agent/AgentContext.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;GAEG;AACH,UAAU,mBAAmB;IAC3B,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IAEjB,eAAe;IACf,QAAQ,EAAE,MAAM,CAAC;IAEjB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IAEf,iCAAiC;IACjC,OAAO,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEhD,qCAAqC;IACrC,WAAW,EAAE,MAAM,SAAS,MAAM,EAAE,CAAC;IAErC,iCAAiC;IACjC,QAAQ,EAAE,aAAa,CAAC;IAExB,gCAAgC;IAChC,OAAO,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,qBAAqB;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,eAAe;IACf,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,sBAAsB;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IAEzD,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqC;IAEjE,iCAAiC;IACjC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAEjC,gCAAgC;IAChC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;gBAEnB,OAAO,EAAE,mBAAmB;IAUxC;;;;;;OAMG;IACH,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAE1C;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,SAAS,MAAM,EAAE,CAE/B;CACF"}
1
+ {"version":3,"file":"AgentContext.d.ts","sourceRoot":"","sources":["../../src/agent/AgentContext.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,UAAU,mBAAmB;IAC3B,mCAAmC;IACnC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IAEjB,eAAe;IACf,QAAQ,EAAE,MAAM,CAAC;IAEjB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IAEf,iCAAiC;IACjC,OAAO,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEhD,qCAAqC;IACrC,WAAW,EAAE,MAAM,SAAS,MAAM,EAAE,CAAC;IAErC,iCAAiC;IACjC,QAAQ,EAAE,aAAa,CAAC;IAExB,gCAAgC;IAChC,OAAO,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,sDAAsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IACvB,qBAAqB;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,eAAe;IACf,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,sBAAsB;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IAEzD,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqC;IAEjE,iCAAiC;IACjC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAEjC,gCAAgC;IAChC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;gBAEnB,OAAO,EAAE,mBAAmB;IAWxC;;;;;;OAMG;IACH,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAE1C;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,SAAS,MAAM,EAAE,CAE/B;CACF"}
@@ -10,6 +10,8 @@
10
10
  * 本地 Agent 的统一执行上下文。
11
11
  */
12
12
  export class AgentContext {
13
+ /** 当前 Agent 显式挂载的 Shell;plugin 可复用其已注入的平台 adapter。 */
14
+ shell;
13
15
  /** 当前 Agent 稳定标识。 */
14
16
  agent_id;
15
17
  /** 当前项目根目录。 */
@@ -25,6 +27,7 @@ export class AgentContext {
25
27
  /** 当前 Agent 唯一的 Plugin 调用入口。 */
26
28
  plugins;
27
29
  constructor(options) {
30
+ this.shell = options.shell;
28
31
  this.agent_id = options.agent_id;
29
32
  this.rootPath = options.rootPath;
30
33
  this.logger = options.logger;
@@ -1 +1 @@
1
- {"version":3,"file":"AgentContext.js","sourceRoot":"","sources":["../../src/agent/AgentContext.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgCH;;GAEG;AACH,MAAM,OAAO,YAAY;IACvB,qBAAqB;IACZ,QAAQ,CAAS;IAE1B,eAAe;IACN,QAAQ,CAAS;IAE1B,sBAAsB;IACb,MAAM,CAAS;IAExB,mCAAmC;IAClB,OAAO,CAAiC;IAEzD,uCAAuC;IACtB,WAAW,CAAqC;IAEjE,iCAAiC;IACxB,QAAQ,CAAgB;IAEjC,gCAAgC;IACvB,OAAO,CAAe;IAE/B,YAAY,OAA4B;QACtC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"AgentContext.js","sourceRoot":"","sources":["../../src/agent/AgentContext.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAmCH;;GAEG;AACH,MAAM,OAAO,YAAY;IACvB,sDAAsD;IAC7C,KAAK,CAAS;IACvB,qBAAqB;IACZ,QAAQ,CAAS;IAE1B,eAAe;IACN,QAAQ,CAAS;IAE1B,sBAAsB;IACb,MAAM,CAAS;IAExB,mCAAmC;IAClB,OAAO,CAAiC;IAEzD,uCAAuC;IACtB,WAAW,CAAqC;IAEjE,iCAAiC;IACxB,QAAQ,CAAgB;IAEjC,gCAAgC;IACvB,OAAO,CAAe;IAE/B,YAAY,OAA4B;QACtC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@downcity/agent",
3
- "version": "1.1.284",
3
+ "version": "1.1.286",
4
4
  "type": "module",
5
5
  "description": "Downcity Agent 运行时 — 单 Agent 执行壳与本机 RPC 能力",
6
6
  "main": "./bin/index.js",
@@ -12,8 +12,8 @@
12
12
  }
13
13
  },
14
14
  "dependencies": {
15
- "@downcity/shell": "^0.1.135",
16
- "@downcity/type": "0.1.162",
15
+ "@downcity/shell": "^0.1.138",
16
+ "@downcity/type": "0.1.164",
17
17
  "ai": "^6.0.193",
18
18
  "commander": "^15.0.0",
19
19
  "dotenv": "^17.4.2",
@@ -27,6 +27,9 @@
27
27
  "zod": "^4.4.3"
28
28
  },
29
29
  "devDependencies": {
30
+ "@downcity/sandbox-linux": "^0.1.2",
31
+ "@downcity/sandbox-macos": "^0.1.2",
32
+ "@downcity/sandbox-windows-mxc": "^0.1.2",
30
33
  "@ai-sdk/openai": "^3.0.67",
31
34
  "@types/fs-extra": "^11.0.4",
32
35
  "@types/js-yaml": "^4.0.9",
@@ -39,7 +42,7 @@
39
42
  "scripts": {
40
43
  "build": "node scripts/agent-compiler.mjs build",
41
44
  "dev": "node scripts/agent-compiler.mjs dev",
42
- "test": "pnpm build && pnpm -C ../plugins build && node --test scripts/*.test.mjs",
45
+ "test": "pnpm build && pnpm --filter '@downcity/sandbox-*' build && pnpm -C ../plugins build && node --test scripts/*.test.mjs",
43
46
  "test:executor-runtime": "pnpm build && node --test scripts/session-prompt-runtime.test.mjs",
44
47
  "typecheck": "node scripts/agent-compiler.mjs typecheck"
45
48
  }
@@ -0,0 +1,17 @@
1
+ /** @file Agent 集成测试按当前宿主加载对应平台 Sandbox Adapter。 */
2
+
3
+ export async function create_platform_sandbox() {
4
+ if (process.platform === "darwin") {
5
+ const { MacOsSeatbeltSandbox } = await import("@downcity/sandbox-macos");
6
+ return new MacOsSeatbeltSandbox();
7
+ }
8
+ if (process.platform === "linux") {
9
+ const { LinuxBubblewrapSandbox } = await import("@downcity/sandbox-linux");
10
+ return new LinuxBubblewrapSandbox();
11
+ }
12
+ if (process.platform === "win32") {
13
+ const { WindowsMxcSandbox } = await import("@downcity/sandbox-windows-mxc");
14
+ return new WindowsMxcSandbox();
15
+ }
16
+ throw new Error(`Unsupported test platform: ${process.platform}`);
17
+ }
@@ -14,9 +14,7 @@ import path from "node:path";
14
14
 
15
15
  import { Agent } from "@downcity/agent";
16
16
  import { Shell } from "@downcity/shell";
17
- import {
18
- checkShellSandboxPreflight,
19
- } from "@downcity/shell/sandbox/SandboxPreflight.js";
17
+ import { create_platform_sandbox } from "./PlatformSandbox.mjs";
20
18
 
21
19
  async function execute_shell(agent, cmd) {
22
20
  const result = await agent.tools.shell_exec.execute(
@@ -34,7 +32,8 @@ async function execute_shell(agent, cmd) {
34
32
  }
35
33
 
36
34
  test("agent setEnv and patchEnv are visible in shell safe sandbox", async (t) => {
37
- const preflight = await checkShellSandboxPreflight();
35
+ const sandbox = await create_platform_sandbox();
36
+ const preflight = await sandbox.preflight();
38
37
  if (!preflight.ok) {
39
38
  t.skip(`safe sandbox unavailable: ${preflight.issues.map((issue) => issue.message).join("; ")}`);
40
39
  return;
@@ -47,7 +46,7 @@ test("agent setEnv and patchEnv are visible in shell safe sandbox", async (t) =>
47
46
  const agent = new Agent({
48
47
  id: "agent-env-shell-sandbox-test",
49
48
  path: root_path,
50
- shell: new Shell(),
49
+ shell: new Shell({ sandbox }),
51
50
  });
52
51
 
53
52
  try {
@@ -15,6 +15,7 @@ import path from "node:path";
15
15
  import { MockLanguageModelV3 } from "ai/test";
16
16
  import { Agent } from "@downcity/agent";
17
17
  import { Shell } from "@downcity/shell";
18
+ import { create_platform_sandbox } from "./PlatformSandbox.mjs";
18
19
 
19
20
  /** 构造 AI SDK V3 usage。 */
20
21
  function create_usage() {
@@ -94,6 +95,7 @@ function create_final_text_stream() {
94
95
  }
95
96
 
96
97
  test("unrestricted Shell 审批保留当前 Turn 并等待用户决定", async () => {
98
+ const sandbox = await create_platform_sandbox();
97
99
  const project_root = await fs.mkdtemp(
98
100
  path.join(os.tmpdir(), "downcity-session-shell-approval-"),
99
101
  );
@@ -120,7 +122,7 @@ test("unrestricted Shell 审批保留当前 Turn 并等待用户决定", async (
120
122
  id: "session_shell_approval_agent",
121
123
  path: project_root,
122
124
  model,
123
- shell: new Shell(),
125
+ shell: new Shell({ sandbox }),
124
126
  });
125
127
 
126
128
  try {
@@ -112,6 +112,7 @@ export class Agent {
112
112
  SessionClass: this.SessionClass,
113
113
  });
114
114
  this.context = new AgentContext({
115
+ ...(this.shell ? { shell: this.shell } : {}),
115
116
  agent_id: this.id,
116
117
  rootPath: this.path,
117
118
  logger: this.logger,
@@ -10,11 +10,14 @@
10
10
  import type { AgentSessions } from "@/agent/AgentSessions.js";
11
11
  import type { AgentPlugins } from "@/types/plugin/PluginRuntime.js";
12
12
  import type { Logger } from "@/utils/logger/Logger.js";
13
+ import type { Shell } from "@downcity/shell";
13
14
 
14
15
  /**
15
16
  * AgentContext 构造参数。
16
17
  */
17
18
  interface AgentContextOptions {
19
+ /** 当前 Agent 显式挂载的 Shell;未启用时为空。 */
20
+ shell?: Shell;
18
21
  /** 当前 Agent 稳定标识。 */
19
22
  agent_id: string;
20
23
 
@@ -41,6 +44,8 @@ interface AgentContextOptions {
41
44
  * 本地 Agent 的统一执行上下文。
42
45
  */
43
46
  export class AgentContext {
47
+ /** 当前 Agent 显式挂载的 Shell;plugin 可复用其已注入的平台 adapter。 */
48
+ readonly shell?: Shell;
44
49
  /** 当前 Agent 稳定标识。 */
45
50
  readonly agent_id: string;
46
51
 
@@ -63,6 +68,7 @@ export class AgentContext {
63
68
  readonly plugins: AgentPlugins;
64
69
 
65
70
  constructor(options: AgentContextOptions) {
71
+ this.shell = options.shell;
66
72
  this.agent_id = options.agent_id;
67
73
  this.rootPath = options.rootPath;
68
74
  this.logger = options.logger;