@clawos-dev/clawd 0.2.40-beta.59.6b503e3 → 0.2.41-beta.60.297ee36

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 (2) hide show
  1. package/dist/cli.cjs +17 -21
  2. package/package.json +1 -1
package/dist/cli.cjs CHANGED
@@ -8592,7 +8592,7 @@ var init_zod = __esm({
8592
8592
  });
8593
8593
 
8594
8594
  // ../protocol/src/persona-schemas.ts
8595
- var PersonaTokenEntrySchema, PersonaFileSchema, PersonaCreateArgsSchema, PersonaIdArgsSchema, PersonaUpdateArgsSchema, PersonaIssueTokenArgsSchema, PersonaRevokeTokenArgsSchema, PersonaAppendOwnerMessageArgsSchema;
8595
+ var PersonaTokenEntrySchema, PersonaFileSchema, PersonaInfoResponseSchema, PersonaCreateArgsSchema, PersonaIdArgsSchema, PersonaUpdateArgsSchema, PersonaIssueTokenArgsSchema, PersonaRevokeTokenArgsSchema, PersonaAppendOwnerMessageArgsSchema;
8596
8596
  var init_persona_schemas = __esm({
8597
8597
  "../protocol/src/persona-schemas.ts"() {
8598
8598
  "use strict";
@@ -8607,19 +8607,18 @@ var init_persona_schemas = __esm({
8607
8607
  label: external_exports.string(),
8608
8608
  model: external_exports.string().optional(),
8609
8609
  public: external_exports.boolean(),
8610
- // 8-key set defined UI-side in `lib/session-icons.ts`; protocol stays plain string
8611
- // for forward compatibility, consumer fallbacks to default when key not found.
8612
- iconKey: external_exports.string().optional(),
8613
8610
  tokenMap: external_exports.record(external_exports.string(), PersonaTokenEntrySchema),
8614
8611
  createdAt: external_exports.number(),
8615
8612
  updatedAt: external_exports.number()
8616
8613
  }).strict();
8614
+ PersonaInfoResponseSchema = PersonaFileSchema.extend({
8615
+ personality: external_exports.string().optional()
8616
+ });
8617
8617
  PersonaCreateArgsSchema = external_exports.object({
8618
8618
  label: external_exports.string().min(1),
8619
8619
  personality: external_exports.string(),
8620
8620
  model: external_exports.string().optional(),
8621
- public: external_exports.boolean().optional(),
8622
- iconKey: external_exports.string().optional()
8621
+ public: external_exports.boolean().optional()
8623
8622
  }).strict();
8624
8623
  PersonaIdArgsSchema = external_exports.object({
8625
8624
  personaId: external_exports.string().min(1)
@@ -8630,9 +8629,7 @@ var init_persona_schemas = __esm({
8630
8629
  label: external_exports.string().min(1).optional(),
8631
8630
  model: external_exports.string().optional(),
8632
8631
  personality: external_exports.string().optional(),
8633
- public: external_exports.boolean().optional(),
8634
- // pass `null` to clear; daemon strips the field from PersonaFile on null
8635
- iconKey: external_exports.string().nullable().optional()
8632
+ public: external_exports.boolean().optional()
8636
8633
  }).strict()
8637
8634
  }).strict();
8638
8635
  PersonaIssueTokenArgsSchema = external_exports.object({
@@ -17631,7 +17628,6 @@ var PersonaManager = class {
17631
17628
  label: args.label,
17632
17629
  model: args.model,
17633
17630
  public: args.public ?? false,
17634
- iconKey: args.iconKey,
17635
17631
  tokenMap: {},
17636
17632
  createdAt: now,
17637
17633
  updatedAt: now
@@ -17643,25 +17639,22 @@ var PersonaManager = class {
17643
17639
  update(personaId, patch, personality) {
17644
17640
  const existing = this.deps.registry.get(personaId);
17645
17641
  if (!existing) throw new Error(`persona not found: ${personaId}`);
17646
- const { iconKey: iconKeyPatch, ...restPatch } = patch;
17647
17642
  const updated = {
17648
17643
  ...existing,
17649
- ...restPatch,
17644
+ ...patch,
17650
17645
  updatedAt: Date.now()
17651
17646
  };
17652
- if (iconKeyPatch === null) {
17653
- delete updated.iconKey;
17654
- } else if (iconKeyPatch !== void 0) {
17655
- updated.iconKey = iconKeyPatch;
17656
- }
17657
17647
  if (personality !== void 0) {
17658
- this.deps.store.write(updated, personality);
17659
- } else {
17660
- this.deps.store.writeMeta(updated);
17648
+ this.deps.store.writePersonality(personaId, personality);
17661
17649
  }
17650
+ this.deps.store.writeMeta(updated);
17662
17651
  this.deps.registry.set(updated);
17663
17652
  return updated;
17664
17653
  }
17654
+ /** 读取 CLAUDE.md 内容;persona 目录或文件不存在时返回 null。透传给 handler 拼响应。 */
17655
+ readPersonality(personaId) {
17656
+ return this.deps.store.readPersonality(personaId);
17657
+ }
17665
17658
  /**
17666
17659
  * 删除 persona。
17667
17660
  * PersonaStore.remove(personaId) 已级联删除整个 <personaRoot>/<personaId>/ 目录,
@@ -20370,7 +20363,10 @@ function buildPersonaHandlers(deps) {
20370
20363
  if (!persona) {
20371
20364
  return { response: { type: "persona:info", persona: null } };
20372
20365
  }
20373
- return { response: { type: "persona:info", ...persona } };
20366
+ const personality = personaManager.readPersonality(args.personaId) ?? "";
20367
+ return {
20368
+ response: { type: "persona:info", ...persona, personality }
20369
+ };
20374
20370
  };
20375
20371
  const update = async (frame) => {
20376
20372
  const { type: _type, requestId: _requestId, ...rest } = frame;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clawos-dev/clawd",
3
- "version": "0.2.40-beta.59.6b503e3",
3
+ "version": "0.2.41-beta.60.297ee36",
4
4
  "description": "Standalone clawd daemon — Claude Code (and future Codex) session server over WebSocket",
5
5
  "type": "module",
6
6
  "license": "MIT",