wangchuan 5.10.6 → 5.12.0

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 (69) hide show
  1. package/README.md +6 -5
  2. package/README.zh-CN.md +6 -5
  3. package/dist/bin/wangchuan.d.ts +2 -1
  4. package/dist/bin/wangchuan.d.ts.map +1 -1
  5. package/dist/bin/wangchuan.js +13 -3
  6. package/dist/bin/wangchuan.js.map +1 -1
  7. package/dist/src/agents/index.d.ts +0 -2
  8. package/dist/src/agents/index.d.ts.map +1 -1
  9. package/dist/src/agents/index.js +1 -1
  10. package/dist/src/agents/index.js.map +1 -1
  11. package/dist/src/commands/doctor.d.ts +2 -1
  12. package/dist/src/commands/doctor.d.ts.map +1 -1
  13. package/dist/src/commands/init.d.ts +5 -1
  14. package/dist/src/commands/init.d.ts.map +1 -1
  15. package/dist/src/commands/init.js +5 -5
  16. package/dist/src/commands/init.js.map +1 -1
  17. package/dist/src/commands/restore.d.ts +17 -0
  18. package/dist/src/commands/restore.d.ts.map +1 -0
  19. package/dist/src/commands/restore.js +79 -0
  20. package/dist/src/commands/restore.js.map +1 -0
  21. package/dist/src/commands/snapshot.d.ts +2 -1
  22. package/dist/src/commands/snapshot.d.ts.map +1 -1
  23. package/dist/src/commands/sync.d.ts +3 -2
  24. package/dist/src/commands/sync.d.ts.map +1 -1
  25. package/dist/src/commands/sync.js +4 -4
  26. package/dist/src/commands/sync.js.map +1 -1
  27. package/dist/src/commands/watch.d.ts +2 -2
  28. package/dist/src/commands/watch.d.ts.map +1 -1
  29. package/dist/src/commands/watch.js +1 -1
  30. package/dist/src/commands/watch.js.map +1 -1
  31. package/dist/src/core/hooks.d.ts +2 -1
  32. package/dist/src/core/hooks.d.ts.map +1 -1
  33. package/dist/src/core/json-field.d.ts +2 -2
  34. package/dist/src/core/json-field.d.ts.map +1 -1
  35. package/dist/src/core/json-field.js +2 -2
  36. package/dist/src/core/json-field.js.map +1 -1
  37. package/dist/src/core/merge.d.ts +2 -1
  38. package/dist/src/core/merge.d.ts.map +1 -1
  39. package/dist/src/core/shared-registry.d.ts +1 -5
  40. package/dist/src/core/shared-registry.d.ts.map +1 -1
  41. package/dist/src/core/shared-registry.js +2 -2
  42. package/dist/src/core/shared-registry.js.map +1 -1
  43. package/dist/src/core/sync-lock.d.ts +2 -1
  44. package/dist/src/core/sync-lock.d.ts.map +1 -1
  45. package/dist/src/core/sync-stage.d.ts +1 -1
  46. package/dist/src/core/sync-stage.d.ts.map +1 -1
  47. package/dist/src/core/sync-stage.js +3 -3
  48. package/dist/src/core/sync-stage.js.map +1 -1
  49. package/dist/src/core/sync.d.ts +0 -2
  50. package/dist/src/core/sync.d.ts.map +1 -1
  51. package/dist/src/core/sync.js +1 -1
  52. package/dist/src/core/sync.js.map +1 -1
  53. package/dist/src/core/webhook.d.ts +3 -2
  54. package/dist/src/core/webhook.d.ts.map +1 -1
  55. package/dist/src/i18n.d.ts +1 -1
  56. package/dist/src/i18n.d.ts.map +1 -1
  57. package/dist/src/i18n.js +19 -254
  58. package/dist/src/i18n.js.map +1 -1
  59. package/dist/src/types.d.ts +12 -18
  60. package/dist/src/types.d.ts.map +1 -1
  61. package/dist/src/utils/linediff.d.ts +2 -8
  62. package/dist/src/utils/linediff.d.ts.map +1 -1
  63. package/dist/src/utils/logger.d.ts +0 -1
  64. package/dist/src/utils/logger.d.ts.map +1 -1
  65. package/dist/src/utils/prompt.d.ts +2 -1
  66. package/dist/src/utils/prompt.d.ts.map +1 -1
  67. package/package.json +1 -1
  68. package/skill/SKILL.md +6 -3
  69. package/skill/references/install-setup.md +25 -46
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -4,20 +4,14 @@
4
4
  * Uses the shared LCS algorithm from lcs.ts,
5
5
  * outputs human-readable unified diff format.
6
6
  */
7
- export interface DiffLine {
7
+ interface DiffLine {
8
8
  readonly type: 'context' | 'added' | 'removed';
9
9
  readonly content: string;
10
10
  }
11
- export interface FileDiff {
12
- readonly repoRel: string;
13
- readonly isEncrypted: boolean;
14
- readonly lines: readonly DiffLine[];
15
- /** Both sides are completely identical */
16
- readonly unchanged: boolean;
17
- }
18
11
  /**
19
12
  * Perform line-level diff on two texts, return a DiffLine list.
20
13
  * The context parameter controls how many context lines to preserve (default: 3).
21
14
  */
22
15
  export declare function diffText(before: string, after: string, context?: number): DiffLine[];
16
+ export {};
23
17
  //# sourceMappingURL=linediff.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"linediff.d.ts","sourceRoot":"","sources":["../../../src/utils/linediff.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;IACpC,0CAA0C;IAC1C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAsBD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,SAAI,GAAG,QAAQ,EAAE,CA8B/E"}
1
+ {"version":3,"file":"linediff.d.ts","sourceRoot":"","sources":["../../../src/utils/linediff.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,UAAU,QAAQ;IAChB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AA8BD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,SAAI,GAAG,QAAQ,EAAE,CA8B/E"}
@@ -7,7 +7,6 @@
7
7
  * Timestamp prefix in debug mode: [ISO8601] [LEVEL] message
8
8
  * trace() method for very verbose output (only emitted in debug level)
9
9
  */
10
- export type LogLevel = 'silent' | 'error' | 'warn' | 'info' | 'debug';
11
10
  export declare const logger: {
12
11
  readonly info: (...a: unknown[]) => void;
13
12
  readonly ok: (...a: unknown[]) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AA4CtE,eAAO,MAAM,MAAM;0BACH,OAAO,EAAE;wBACT,OAAO,EAAE;0BACT,OAAO,EAAE;2BACT,OAAO,EAAE;2BACT,OAAO,EAAE;0BACT,OAAO,EAAE;IAEvB,kEAAkE;2BACpD,OAAO,EAAE;4BAEV,MAAM,KAAG,IAAI;CAUlB,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAgDH,eAAO,MAAM,MAAM;0BACH,OAAO,EAAE;wBACT,OAAO,EAAE;0BACT,OAAO,EAAE;2BACT,OAAO,EAAE;2BACT,OAAO,EAAE;0BACT,OAAO,EAAE;IAEvB,kEAAkE;2BACpD,OAAO,EAAE;4BAEV,MAAM,KAAG,IAAI;CAUlB,CAAC"}
@@ -11,7 +11,7 @@
11
11
  * Supports TTY interactive and CI non-interactive mode (WANGCHUAN_NONINTERACTIVE=1).
12
12
  */
13
13
  /** Conflict resolution decision for each file during pull */
14
- export type ConflictDecision = 'overwrite' | 'skip' | 'overwrite_all' | 'skip_all' | 'merge';
14
+ type ConflictDecision = 'overwrite' | 'skip' | 'overwrite_all' | 'skip_all' | 'merge';
15
15
  /**
16
16
  * Ask how to handle a single conflicting file.
17
17
  * When overwrite_all / skip_all is returned, caller should apply to all subsequent conflicts.
@@ -21,4 +21,5 @@ export type ConflictDecision = 'overwrite' | 'skip' | 'overwrite_all' | 'skip_al
21
21
  * @param canMerge Whether three-way merge is available for this file
22
22
  */
23
23
  export declare function askConflict(repoRel: string, localContent?: string, remoteContent?: string, canMerge?: boolean): Promise<ConflictDecision>;
24
+ export {};
24
25
  //# sourceMappingURL=prompt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/utils/prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,6DAA6D;AAC7D,MAAM,MAAM,gBAAgB,GACxB,WAAW,GACX,MAAM,GACN,eAAe,GACf,UAAU,GACV,OAAO,CAAC;AAkDZ;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,MAAM,EACtB,QAAQ,CAAC,EAAE,OAAO,GACjB,OAAO,CAAC,gBAAgB,CAAC,CAmE3B"}
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/utils/prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,6DAA6D;AAC7D,KAAK,gBAAgB,GACjB,WAAW,GACX,MAAM,GACN,eAAe,GACf,UAAU,GACV,OAAO,CAAC;AAkDZ;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,MAAM,EACtB,QAAQ,CAAC,EAAE,OAAO,GACjB,OAAO,CAAC,gBAAgB,CAAC,CAmE3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wangchuan",
3
- "version": "5.10.6",
3
+ "version": "5.12.0",
4
4
  "description": "忘川 · AI 记忆同步系统 — 智能体记忆永不遗失",
5
5
  "bin": {
6
6
  "wangchuan": "./dist/bin/wangchuan.js"
package/skill/SKILL.md CHANGED
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  name: wangchuan
3
- version: 1.5.1
3
+ version: 1.6.0
4
4
  description: >-
5
5
  Encrypt and sync AI agent configs, memories, skills, and MCP servers across environments via a private Git repo.
6
6
  Supports Claude, OpenClaw, Gemini, CodeBuddy, WorkBuddy, Cursor, and Codex.
7
- TRIGGER when: user mentions syncing AI memories/configs, wangchuan/忘川, cross-machine agent setup, backup/restore agent settings, memory sync, skill distribution, MCP server sync, agent migration, master key export, sync status, watch daemon, workspace leakage, environment management, snapshot, pushing/pulling memories, conflict resolution, syncing between agents, rolling back/restoring versions, switching environments, health check, customizing agent paths, or any commands: init, sync, status, watch, doctor, memory, env, snapshot, lang.
8
- Triggers: 忘川、wangchuan、同步记忆、同步配置、同步技能、同步MCP、初始化忘川、备份记忆、恢复记忆、迁移agent、导出密钥、轮换密钥、同步状态、健康检查、多环境、快照、跨机器同步、agent记忆、配置路径、查看技能、删除技能、新增技能、修改技能、自定义agent、MCP服务器、新增MCP、删除MCP、修改MCP、查看MCP、写记忆、删除记忆、修改记忆、查看记忆、广播记忆、复制记忆、推送记忆、拉取记忆、同步到agent、冲突、合并记忆、回退记忆、回滚、恢复版本、切换环境、忘川状态、新建环境、删除环境、查看环境、切换语言、升级忘川、更新忘川、后台同步、启动watch、环境泄漏、旧环境文件、sync memories、push memory、pull memory、rollback、switch environment、custom agent、MCP server、health status、rotate key、switch language、upgrade wangchuan、update wangchuan.
7
+ TRIGGER when: user mentions syncing AI memories/configs, wangchuan/忘川, cross-machine agent setup, backup/restore agent settings, memory sync, skill distribution, MCP server sync, agent migration, master key export, sync status, watch daemon, workspace leakage, environment management, snapshot, pushing/pulling memories, conflict resolution, syncing between agents, rolling back/restoring versions, switching environments, health check, customizing agent paths, restore cloud memories, or any commands: init, restore, sync, status, watch, doctor, memory, env, snapshot, lang.
8
+ Triggers: 忘川、wangchuan、同步记忆、同步配置、同步技能、同步MCP、初始化忘川、备份记忆、恢复记忆、恢复云端记忆、绑定云端记忆、迁移agent、导出密钥、轮换密钥、同步状态、健康检查、多环境、快照、跨机器同步、agent记忆、配置路径、查看技能、删除技能、新增技能、修改技能、自定义agent、MCP服务器、新增MCP、删除MCP、修改MCP、查看MCP、写记忆、删除记忆、修改记忆、查看记忆、广播记忆、复制记忆、推送记忆、拉取记忆、同步到agent、冲突、合并记忆、回退记忆、回滚、恢复版本、切换环境、忘川状态、新建环境、删除环境、查看环境、切换语言、升级忘川、更新忘川、后台同步、启动watch、环境泄漏、旧环境文件、sync memories、push memory、pull memory、rollback、switch environment、custom agent、MCP server、health status、rotate key、switch language、upgrade wangchuan、update wangchuan、restore memory、restore cloud.
9
9
  DO NOT TRIGGER when: general git operations, unrelated CLI tools, or AI model APIs.
10
10
  ---
11
11
 
@@ -22,6 +22,7 @@ If `~/.wangchuan/config.json` does not exist → Read [references/install-setup.
22
22
 
23
23
  ```
24
24
  wangchuan init [--repo <url>] [--key <path>] One-time setup
25
+ wangchuan restore --repo <url> --key <key> Restore cloud to new machine
25
26
  wangchuan sync [-a <agent>] [-n] [-o <pat>] [-x <pat>] Smart bidirectional sync
26
27
  wangchuan status [-v] Health + diff summary
27
28
  wangchuan watch [-i <min>] Pull-only background daemon
@@ -42,6 +43,7 @@ Aliases: `sync`→`s`, `status`→`st`, `snapshot`→`snap`. All support `--agen
42
43
  | Switch/create/list/delete environments, rollback, snapshots | [references/environment.md](references/environment.md) |
43
44
  | Inspect/check skills, agents, MCP, memory, or health status | [references/inspect-status.md](references/inspect-status.md) |
44
45
  | Initialize wangchuan, install, migrate key, new machine setup | [references/install-setup.md](references/install-setup.md) |
46
+ | Restore cloud memories to new machine | [references/install-setup.md](references/install-setup.md) |
45
47
  | Upgrade/update wangchuan CLI and sync new profiles | [references/install-setup.md](references/install-setup.md) |
46
48
 
47
49
  **IMPORTANT**: Before executing any task below, **Read the corresponding reference file** for detailed instructions, bash commands, and decision flows. The reference files contain the complete procedures.
@@ -51,6 +53,7 @@ Aliases: `sync`→`s`, `status`→`st`, `snapshot`→`snap`. All support `--agen
51
53
  | Command | Constraint | Required |
52
54
  |---------|-----------|----------|
53
55
  | `wangchuan init` | Interactive prompt fails | Must pass `--repo <url>` |
56
+ | `wangchuan restore` | Interactive prompt fails | Must pass `--repo <url>` and `--key <key>` |
54
57
  | `wangchuan sync` | Pending confirmations skipped | Must pass `-y` |
55
58
  | `wangchuan env create` | Memory import prompt fails | Auto-forks (OK) |
56
59
 
@@ -60,62 +60,46 @@ npm update -g wangchuan → wangchuan --version → wangchuan sync -y → report
60
60
 
61
61
  **IMPORTANT: Interactive mode does NOT work in agent shell (non-TTY). Always pass flags explicitly.**
62
62
 
63
- Ask user: brand new setup or restoring existing repo?
64
-
65
- ### Scenario A — Brand new setup
63
+ **Brand new setup:**
66
64
 
67
65
  1. Guide user to create a **private** repo (or auto-create via `gh repo create wangchuan-sync --private`)
68
66
  2. Run: `wangchuan init --repo <url>`
69
67
  3. Auto: generates key → clones → detects agents → extracts shared resources → first sync
70
68
  4. **Remind user to back up key**: `wangchuan doctor --key-export`
71
69
 
72
- ### Scenario B — Restore / new machine (may already have local agent data)
70
+ ## Restore (New Machine)
73
71
 
74
- This is a multi-step flow with a **mandatory backup checkpoint**. If the user doesn't confirm backup, **stop and do not proceed** next time the skill is triggered, start from Step 1 again.
72
+ When user says "恢复云端记忆" / "restore cloud memories" / "new machine setup with existing repo":
75
73
 
76
74
  **Step 1: Collect credentials.**
77
- Ask for **repo SSH URL** and **master key** (`wangchuan_<hex>`).
78
-
79
- **Step 2: Init (clone only, no sync yet).**
80
- ```bash
81
- wangchuan init --repo <url> --key <key>
82
- ```
83
- Init clones the repo and auto-runs a first sync. But BEFORE that happens, the agent must handle Steps 3-5 manually. Since init auto-syncs, the agent should instead do a **manual init sequence** to control the flow:
84
-
85
- Actually, `wangchuan init` auto-syncs at the end and there's no flag to skip it. So the agent must do the backup warning BEFORE running init:
75
+ Ask for **repo URL** and **master key** (`wangchuan_<hex>`).
86
76
 
87
- **Step 3: Check if local agent data exists and warn about shared resource overwrites.**
77
+ **Step 2: Check local data and warn.**
88
78
  ```bash
89
- # Check if any agent workspace has data
90
79
  for agent_dir in ~/.claude ~/.cursor ~/.openclaw/workspace ~/.codebuddy ~/.workbuddy ~/.codex ~/.gemini; do
91
80
  [ -d "$agent_dir" ] && echo " ⚠️ Local data found: $agent_dir"
92
81
  done
93
82
  ```
94
- If local data exists, **inform the user**:
95
- - "⚠️ **Shared skills and custom agents in the cloud will OVERWRITE your local versions** (no merge — direct copy)."
96
- - "Your MCP servers will be safely merged (additive)."
97
- - "Your memory files (CLAUDE.md, MEMORY.md) will be preserved (local wins on conflict)."
98
- - "Your local-only files (skills, configs not in cloud) will be auto-pushed to cloud please review after init."
83
+ If local data exists, warn:
84
+ - "Shared skills and custom agents from cloud will be downloaded to your local agents"
85
+ - "MCP servers will be merged (additive)"
86
+ - "Memory files from cloud will overwrite local versions"
87
+ - "Local-only files will be pushed to cloud as additions (nothing deleted from cloud)"
99
88
 
100
- **Ask user: "Have you backed up your important local skills/agents? Confirm to proceed, or cancel to back up first."**
89
+ Ask backup confirmation. If declined STOP.
101
90
 
102
- If user says **cancel/not yet** **STOP**. Do NOT run init. Tell user:
103
- ```
104
- Please back up your local data first:
105
- cp -r ~/.claude/skills/ ~/backup-claude-skills/
106
- cp -r ~/.claude/agents/ ~/backup-claude-agents/
107
- # (repeat for other agents as needed)
108
- Then say "初始化忘川" again to resume.
91
+ **Step 3: Run restore.**
92
+ ```bash
93
+ wangchuan restore --repo <url> --key <key>
109
94
  ```
95
+ This command:
96
+ 1. Clones repo, imports key
97
+ 2. Downloads cloud data → local (cloud is source of truth)
98
+ 3. Checks for multiple environments → lets user choose
99
+ 4. Pushes local additions to cloud (without deleting cloud data)
110
100
 
111
- If user says **confirmed** proceed to Step 4.
112
-
113
- **Step 4: Check cloud environments and let user choose.**
114
- After init, check if cloud repo has multiple environments:
101
+ **Step 4: Check environments (non-TTY explicit).**
115
102
  ```bash
116
- # Init first (this will clone + auto-sync to default branch)
117
- wangchuan init --repo <url> --key <key>
118
- # Then check for environments
119
103
  wangchuan env list
120
104
  ```
121
105
  If multiple environments exist (e.g. `default`, `work`, `personal`):
@@ -125,19 +109,14 @@ If multiple environments exist (e.g. `default`, `work`, `personal`):
125
109
 
126
110
  If only `default` exists → no need to ask, already synced.
127
111
 
128
- **Step 5: Post-init review.**
112
+ **Step 5: Post-restore review.**
129
113
  ```bash
130
114
  wangchuan status -v
131
115
  ```
132
- Report what was synced: pulled files, pushed files, any conflicts detected. If shared skills were overwritten, inform user which ones.
133
116
 
134
- **Complete flow summary:**
135
- ```
136
- Ask credentials Check local data exists?
137
- → Yes: warn overwrites → ask backup confirmed?
138
- → No: STOP (resume next time)
139
- → Yes: init → check envs → user picks env → status -v → ensure watch
140
- → No: init → check envs → user picks env → ensure watch
117
+ **Step 6: Ensure watch daemon.**
118
+ ```bash
119
+ pgrep -f 'wangchuan.*watch' >/dev/null 2>&1 || nohup wangchuan watch >/dev/null 2>&1 &
141
120
  ```
142
121
 
143
122
  ## Key management
@@ -146,7 +125,7 @@ Ask credentials → Check local data exists?
146
125
  # Export key (on source machine):
147
126
  wangchuan doctor --key-export # prints wangchuan_<hex>
148
127
  # Import key (on target machine):
149
- wangchuan init --repo <url> --key wangchuan_<hex>
128
+ wangchuan restore --repo <url> --key wangchuan_<hex>
150
129
  # Rotate key:
151
130
  wangchuan doctor --key-rotate
152
131
  # Generate setup one-liner for new machine: