@clawos-dev/clawd 0.2.438 → 0.2.440

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.
@@ -22237,6 +22237,17 @@ var PersonaPluginSummarySchema = external_exports.object({
22237
22237
  // settings.json 中 enabledPlugins 的 key,例如 'superpowers@claude-plugins-official'
22238
22238
  id: external_exports.string().min(1)
22239
22239
  });
22240
+ var CodexSandboxSettingsSchema = external_exports.object({
22241
+ // 额外可写的绝对路径或 ~ 路径(pnpm 工具链等);workspace(cwd) 和 userWorkDir 由 daemon 自动加,不用列。
22242
+ writableRoots: external_exports.array(external_exports.string()).optional(),
22243
+ // 禁读 glob(相对 workspace root 或绝对),如 ".secrets/**"、"**/*.env"。
22244
+ denyRead: external_exports.array(external_exports.string()).optional(),
22245
+ // true → 网络全放(*);false → 断网。**缺省等于联网**:daemon 写入的默认值是 network:true
22246
+ // (对齐 claude guest 一贯的域名全放,见 spec 2026-09-01-codex-guest-network §1.3),
22247
+ // 且 manager / UI 读到 undefined 时都回落 true —— 两侧必须同向,否则出现
22248
+ // 「卡片显示开、实际断网」的幽灵态。
22249
+ network: external_exports.boolean().optional()
22250
+ }).strict();
22240
22251
  var PersonaSandboxSettingsSchema = external_exports.object({
22241
22252
  permissions: external_exports.object({
22242
22253
  defaultMode: external_exports.string().optional(),
@@ -22285,7 +22296,10 @@ var PersonaInfoResponseSchema = PersonaFileSchema.extend({
22285
22296
  skills: external_exports.array(PersonaSkillSummarySchema).optional(),
22286
22297
  // 仅 'persona:get' 携带;空数组 = 没启用任何插件 / settings.json 不存在;undefined = 不在该响应类型上
22287
22298
  plugins: external_exports.array(PersonaPluginSummarySchema).optional(),
22288
- sandboxSettings: PersonaSandboxSettingsSchema.nullable().optional()
22299
+ sandboxSettings: PersonaSandboxSettingsSchema.nullable().optional(),
22300
+ // 仅 'persona:get' 携带;null = codex-sandbox.json 不存在 / parse 失败。
22301
+ // UI 的「访客联网」开关读它(见 PersonaCardSettings)。
22302
+ codexSandbox: CodexSandboxSettingsSchema.nullable().optional()
22289
22303
  });
22290
22304
  var PersonaCreateArgsSchema = external_exports.object({
22291
22305
  // persona 身份。daemon 拼成 personaId = `persona-<slug>`——前缀由 daemon 拥有,调用方只给后半段,
@@ -22317,17 +22331,13 @@ var PersonaUpdateArgsSchema = external_exports.object({
22317
22331
  personalityLocal: external_exports.string().optional(),
22318
22332
  public: external_exports.boolean().optional(),
22319
22333
  // pass `null` to clear; daemon strips the field from PersonaFile on null
22320
- iconKey: external_exports.string().nullable().optional()
22334
+ iconKey: external_exports.string().nullable().optional(),
22335
+ // codex guest 沙箱(落盘 .clawd/codex-sandbox.json,不在 PersonaFile 里)。与 personality
22336
+ // 同款分层写:handler 剥出来单独落盘,且**局部合并**——只带 network 的 patch 不能抹掉
22337
+ // owner 手配的 writableRoots / denyRead。
22338
+ codexSandbox: CodexSandboxSettingsSchema.optional()
22321
22339
  }).strict()
22322
22340
  }).strict();
22323
- var CodexSandboxSettingsSchema = external_exports.object({
22324
- // 额外可写的绝对路径或 ~ 路径(pnpm 工具链等);workspace(cwd) 和 userWorkDir 由 daemon 自动加,不用列。
22325
- writableRoots: external_exports.array(external_exports.string()).optional(),
22326
- // 禁读 glob(相对 workspace root 或绝对),如 ".secrets/**"、"**/*.env"。
22327
- denyRead: external_exports.array(external_exports.string()).optional(),
22328
- // true → 网络全放(*);缺省/false → 断网。
22329
- network: external_exports.boolean().optional()
22330
- }).strict();
22331
22341
 
22332
22342
  // ../protocol/src/events.ts
22333
22343
  var SESSION_STATUS_VALUES = [
@@ -23122,6 +23132,22 @@ var SessionArchiveArgs = external_exports.object({
23122
23132
  sessionId: external_exports.string().min(1),
23123
23133
  archived: external_exports.boolean()
23124
23134
  });
23135
+ var SessionSearchContentArgs = external_exports.object({
23136
+ query: external_exports.string().min(1),
23137
+ // 扫描顺序 = 数组顺序(调用方按 updatedAt 倒序传),攒够 limit 即停
23138
+ sessionIds: external_exports.array(external_exports.string().min(1)),
23139
+ limit: external_exports.number().int().positive().max(50).optional()
23140
+ });
23141
+ var SessionSearchMatchSchema = external_exports.object({
23142
+ sessionId: external_exports.string().min(1),
23143
+ // 命中处上下文片段,已单行化。**不回高亮 offset**:调用方手里有 query,
23144
+ // 自己在 snippet 里 indexOf 就能高亮,wire 上少一组坐标少一处漂
23145
+ snippet: external_exports.string()
23146
+ });
23147
+ var SessionSearchContentResponseSchema = external_exports.object({
23148
+ type: external_exports.literal("session:searchContent"),
23149
+ matches: external_exports.array(SessionSearchMatchSchema)
23150
+ });
23125
23151
  var PeerSessionUpsertArgs = SessionFileSchema;
23126
23152
  var PeerSessionUpsertResponseSchema = external_exports.object({
23127
23153
  type: external_exports.literal("peerSession:upsert:ok")
@@ -23565,6 +23591,10 @@ var METHOD_DOCS = {
23565
23591
  summary: "\u5F52\u6863 / \u53D6\u6D88\u5F52\u6863\u4F1A\u8BDD\uFF08\u5F52\u6863 = \u5168\u5C40\u6536\u7EB3\u6001\uFF1A\u9000\u51FA sidebar\u3001\u539F\u5B50\u6E05 pinnedAt\uFF09",
23566
23592
  args: SessionArchiveArgs
23567
23593
  },
23594
+ "session:searchContent": {
23595
+ summary: '\u5728 sessionIds \u7ED9\u5B9A\u7684\u8FD9\u6279\u4F1A\u8BDD\u91CC\u641C\u6B63\u6587\u5185\u5BB9\uFF08user / assistant \u7684\u6587\u672C\u6D88\u606F\uFF1B\u5DE5\u5177\u5165\u53C2\u51FA\u53C2\u4E0E\u7CFB\u7EDF\u6CE8\u5165\u4E0D\u7B97\uFF09\uFF0C\u547D\u4E2D\u8FD4\u56DE\u4E0A\u4E0B\u6587\u7247\u6BB5\u3002**\u626B\u63CF\u987A\u5E8F = sessionIds \u6570\u7EC4\u987A\u5E8F\uFF0C\u6512\u591F limit \u5C31\u505C**\uFF08\u8C03\u7528\u65B9\u6309 updatedAt \u5012\u5E8F\u4F20 \u2192 \u65E9\u505C\u7ED3\u679C\u5373"\u6700\u8FD1 N \u6761"\uFF09\uFF1Blimit \u7F3A\u7701 9\u3002\u5019\u9009\u7531\u8C03\u7528\u65B9\u7ED9\u5B9A\uFF0Cdaemon \u4E0D\u81EA\u5DF1\u6309 archivedAt \u7B5B\uFF08\u8BDD\u9898\u5F52\u6863\u53EA\u6253\u5728 Master \u4F1A\u8BDD\u4E0A\uFF0Cworker \u4F1A\u8BDD\u6CA1\u6807\u8BB0\uFF09\uFF1B\u65E0\u6743\u8BFB / \u5B9A\u4F4D\u4E0D\u5230 transcript / transcript \u5DF2\u88AB CC \u6E05\u7406\u7684\u4F1A\u8BDD\u9759\u9ED8\u8DF3\u8FC7\uFF0C\u4E0D\u62A5\u9519',
23596
+ args: SessionSearchContentArgs
23597
+ },
23568
23598
  "session:markRead": {
23569
23599
  summary: "\u6E05\u6389\u4F1A\u8BDD\u7684\u5171\u4EAB\u672A\u8BFB\u6807\u8BB0\u5E76\u5E7F\u64AD session:info\uFF1B\u5E42\u7B49",
23570
23600
  args: SessionIdArgs