contextmate 0.2.7 → 0.3.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 (45) hide show
  1. package/README.md +17 -4
  2. package/dist/src/adapters/base.d.ts +3 -0
  3. package/dist/src/adapters/base.d.ts.map +1 -1
  4. package/dist/src/adapters/base.js.map +1 -1
  5. package/dist/src/adapters/index.d.ts +1 -0
  6. package/dist/src/adapters/index.d.ts.map +1 -1
  7. package/dist/src/adapters/index.js +4 -0
  8. package/dist/src/adapters/index.js.map +1 -1
  9. package/dist/src/adapters/mirror.d.ts +19 -0
  10. package/dist/src/adapters/mirror.d.ts.map +1 -0
  11. package/dist/src/adapters/mirror.js +179 -0
  12. package/dist/src/adapters/mirror.js.map +1 -0
  13. package/dist/src/adapters/openclaw.d.ts +5 -1
  14. package/dist/src/adapters/openclaw.d.ts.map +1 -1
  15. package/dist/src/adapters/openclaw.js +62 -0
  16. package/dist/src/adapters/openclaw.js.map +1 -1
  17. package/dist/src/cli/adapter.d.ts.map +1 -1
  18. package/dist/src/cli/adapter.js +113 -66
  19. package/dist/src/cli/adapter.js.map +1 -1
  20. package/dist/src/cli/daemon.d.ts.map +1 -1
  21. package/dist/src/cli/daemon.js +28 -1
  22. package/dist/src/cli/daemon.js.map +1 -1
  23. package/dist/src/cli/mcp-setup.d.ts +4 -0
  24. package/dist/src/cli/mcp-setup.d.ts.map +1 -0
  25. package/dist/src/cli/mcp-setup.js +211 -0
  26. package/dist/src/cli/mcp-setup.js.map +1 -0
  27. package/dist/src/cli/mcp.d.ts.map +1 -1
  28. package/dist/src/cli/mcp.js +6 -4
  29. package/dist/src/cli/mcp.js.map +1 -1
  30. package/dist/src/cli/setup.d.ts.map +1 -1
  31. package/dist/src/cli/setup.js +90 -4
  32. package/dist/src/cli/setup.js.map +1 -1
  33. package/dist/src/config.d.ts +7 -0
  34. package/dist/src/config.d.ts.map +1 -1
  35. package/dist/src/config.js +7 -0
  36. package/dist/src/config.js.map +1 -1
  37. package/dist/src/sync/client.d.ts +1 -2
  38. package/dist/src/sync/client.d.ts.map +1 -1
  39. package/dist/src/sync/client.js +0 -7
  40. package/dist/src/sync/client.js.map +1 -1
  41. package/dist/src/sync/watcher.d.ts +5 -1
  42. package/dist/src/sync/watcher.d.ts.map +1 -1
  43. package/dist/src/sync/watcher.js +4 -1
  44. package/dist/src/sync/watcher.js.map +1 -1
  45. package/package.json +3 -1
package/README.md CHANGED
@@ -75,6 +75,7 @@ contextmate setup
75
75
  | `contextmate daemon status` | Check if the daemon is running |
76
76
  | `contextmate files` | List all tracked files in your vault |
77
77
  | `contextmate log` | Show recent sync activity |
78
+ | `contextmate mcp setup` | Auto-configure MCP for Claude, Cursor, Windsurf, ChatGPT |
78
79
  | `contextmate mcp serve` | Start the local MCP server (BM25 search) |
79
80
  | `contextmate mcp api-key` | Manage MCP API keys |
80
81
  | `contextmate reset` | Remove all ContextMate data and symlinks from this machine |
@@ -97,14 +98,26 @@ Passphrase --> Argon2id --> Master Key --> HKDF branches
97
98
 
98
99
  Read the full security model at [contextmate.dev/security](https://contextmate.dev/security).
99
100
 
101
+ ### Connect to More AI Apps
102
+
103
+ After setup, connect ContextMate's MCP server to Cursor, Windsurf, Claude Desktop, or ChatGPT:
104
+
105
+ ```bash
106
+ contextmate mcp setup
107
+ ```
108
+
109
+ This auto-detects installed apps and writes their MCP configs. Your AI apps get 6 tools: search, read, and write your memories and skills.
110
+
100
111
  ## Supported Agents
101
112
 
102
113
  | Agent | Status |
103
114
  |-------|--------|
104
- | Claude Code | Supported |
105
- | OpenClaw | Supported |
106
- | Cursor | Coming soon |
107
- | ChatGPT | Coming soon |
115
+ | Claude Code | Supported (adapter + MCP) |
116
+ | Claude Desktop | Supported (MCP) |
117
+ | OpenClaw | Supported (adapter) |
118
+ | Cursor | Supported (MCP) |
119
+ | Windsurf | Supported (MCP) |
120
+ | ChatGPT Desktop | Supported (MCP) |
108
121
 
109
122
  ## Development
110
123
 
@@ -2,6 +2,9 @@ export interface AdapterOptions {
2
2
  vaultPath: string;
3
3
  backupsPath: string;
4
4
  scanPaths?: string[];
5
+ extraFiles?: string[];
6
+ extraGlobs?: string[];
7
+ include?: string[];
5
8
  }
6
9
  export interface ImportResult {
7
10
  imported: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/adapters/base.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,8BAAsB,WAAW;IAC/B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;gBAElB,OAAO,EAAE,cAAc;IAKnC,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAC7D,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IACtE,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC9F,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAE7C,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAOhE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAuB5D,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;cASzC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAK1F"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/adapters/base.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,8BAAsB,WAAW;IAC/B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;gBAElB,OAAO,EAAE,cAAc;IAKnC,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAC7D,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IACtE,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC9F,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAE7C,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAOhE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAuB5D,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;cASzC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAK1F"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/adapters/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,EAAE,OAAO,EAAkB,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAkB,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACpI,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAmBpD,MAAM,OAAgB,WAAW;IACrB,SAAS,CAAS;IAClB,WAAW,CAAS;IAE9B,YAAY,OAAuB;QACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACzC,CAAC;IASS,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,SAAiB;QAC9D,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAClE,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACzC,CAAC;IAES,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,QAAgB;QAC1D,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC9B,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;iBAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;gBAClC,4CAA4C;gBAC5C,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC3D,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,yCAAyC;gBACzC,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3C,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QAED,MAAM,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAES,KAAK,CAAC,SAAS,CAAC,IAAY;QACpC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO,KAAK,CAAC,cAAc,EAAE,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAES,KAAK,CAAC,WAAW,CAAC,UAAkB,EAAE,iBAAyB;QACvE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACrD,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;CACF"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/adapters/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,EAAE,OAAO,EAAkB,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAkB,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACpI,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAsBpD,MAAM,OAAgB,WAAW;IACrB,SAAS,CAAS;IAClB,WAAW,CAAS;IAE9B,YAAY,OAAuB;QACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACzC,CAAC;IASS,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,SAAiB;QAC9D,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAClE,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACzC,CAAC;IAES,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,QAAgB;QAC1D,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC9B,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;iBAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;gBAClC,4CAA4C;gBAC5C,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC3D,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,yCAAyC;gBACzC,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3C,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;QAED,MAAM,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAES,KAAK,CAAC,SAAS,CAAC,IAAY;QACpC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO,KAAK,CAAC,cAAc,EAAE,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAES,KAAK,CAAC,WAAW,CAAC,UAAkB,EAAE,iBAAyB;QACvE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACrD,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;CACF"}
@@ -1,6 +1,7 @@
1
1
  export { BaseAdapter, type AdapterOptions, type ImportResult, type SymlinkResult } from './base.js';
2
2
  export { OpenClawAdapter } from './openclaw.js';
3
3
  export { ClaudeCodeAdapter } from './claude.js';
4
+ export { MirrorAdapter } from './mirror.js';
4
5
  import type { AdapterOptions } from './base.js';
5
6
  import type { BaseAdapter } from './base.js';
6
7
  export declare function getAdapter(name: string, options: AdapterOptions): BaseAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAI7C,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,WAAW,CAS7E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAK7C,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,WAAW,CAW7E"}
@@ -1,14 +1,18 @@
1
1
  export { BaseAdapter } from './base.js';
2
2
  export { OpenClawAdapter } from './openclaw.js';
3
3
  export { ClaudeCodeAdapter } from './claude.js';
4
+ export { MirrorAdapter } from './mirror.js';
4
5
  import { OpenClawAdapter } from './openclaw.js';
5
6
  import { ClaudeCodeAdapter } from './claude.js';
7
+ import { MirrorAdapter } from './mirror.js';
6
8
  export function getAdapter(name, options) {
7
9
  switch (name) {
8
10
  case 'openclaw':
9
11
  return new OpenClawAdapter(options);
10
12
  case 'claude':
11
13
  return new ClaudeCodeAdapter(options);
14
+ case 'mirror':
15
+ return new MirrorAdapter(options);
12
16
  default:
13
17
  throw new Error(`Unknown adapter: ${name}`);
14
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA8D,MAAM,WAAW,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIhD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,OAAuB;IAC9D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,UAAU;YACb,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QACtC,KAAK,QAAQ;YACX,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACxC;YACE,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA8D,MAAM,WAAW,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAI5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,OAAuB;IAC9D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,UAAU;YACb,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QACtC,KAAK,QAAQ;YACX,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACxC,KAAK,QAAQ;YACX,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;QACpC;YACE,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;AACH,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { BaseAdapter, type AdapterOptions, type ImportResult, type SymlinkResult } from './base.js';
2
+ export declare class MirrorAdapter extends BaseAdapter {
3
+ private include;
4
+ constructor(options: AdapterOptions);
5
+ get name(): string;
6
+ detect(): Promise<string | null>;
7
+ import(targetPath: string): Promise<ImportResult>;
8
+ createSymlinks(targetPath: string): Promise<SymlinkResult>;
9
+ verifySymlinks(targetPath: string): Promise<{
10
+ valid: string[];
11
+ broken: string[];
12
+ }>;
13
+ removeSymlinks(targetPath: string): Promise<void>;
14
+ refreshSymlinks(targetPath: string): Promise<SymlinkResult>;
15
+ private discoverVaultFiles;
16
+ private walkDir;
17
+ private validatePaths;
18
+ }
19
+ //# sourceMappingURL=mirror.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mirror.d.ts","sourceRoot":"","sources":["../../../src/adapters/mirror.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AAEpG,qBAAa,aAAc,SAAQ,WAAW;IAC5C,OAAO,CAAC,OAAO,CAAW;gBAEd,OAAO,EAAE,cAAc;IAKnC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAKhC,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAmCjD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAsB1D,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAuBlF,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBjD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;YAiCnD,kBAAkB;YAWlB,OAAO;IAyBrB,OAAO,CAAC,aAAa;CAOtB"}
@@ -0,0 +1,179 @@
1
+ import { readFile, readdir, stat, unlink, copyFile, mkdir } from 'node:fs/promises';
2
+ import { join, relative, dirname } from 'node:path';
3
+ import picomatch from 'picomatch';
4
+ import { BaseAdapter } from './base.js';
5
+ export class MirrorAdapter extends BaseAdapter {
6
+ include;
7
+ constructor(options) {
8
+ super(options);
9
+ this.include = options.include ?? [];
10
+ }
11
+ get name() {
12
+ return 'mirror';
13
+ }
14
+ async detect() {
15
+ // Mirror adapter is not auto-detectable; user specifies the path.
16
+ return null;
17
+ }
18
+ async import(targetPath) {
19
+ const result = { imported: [], skipped: [], errors: [] };
20
+ let files = await this.walkDir(targetPath, targetPath);
21
+ if (this.include.length > 0) {
22
+ const isMatch = picomatch(this.include);
23
+ files = files.filter((f) => isMatch(f));
24
+ }
25
+ for (const relativeSrc of files) {
26
+ try {
27
+ const sourceContent = await readFile(join(targetPath, relativeSrc), 'utf-8');
28
+ const vaultDest = join(this.vaultPath, relativeSrc);
29
+ try {
30
+ const existingContent = await readFile(vaultDest, 'utf-8');
31
+ if (existingContent === sourceContent) {
32
+ result.skipped.push(relativeSrc);
33
+ continue;
34
+ }
35
+ }
36
+ catch {
37
+ // File doesn't exist in vault yet
38
+ }
39
+ await this.copyToVault(join(targetPath, relativeSrc), relativeSrc);
40
+ result.imported.push(relativeSrc);
41
+ }
42
+ catch (err) {
43
+ const message = err instanceof Error ? err.message : String(err);
44
+ result.errors.push(`${relativeSrc}: ${message}`);
45
+ }
46
+ }
47
+ return result;
48
+ }
49
+ async createSymlinks(targetPath) {
50
+ this.validatePaths(targetPath);
51
+ const result = { created: [], errors: [] };
52
+ const vaultFiles = await this.discoverVaultFiles();
53
+ for (const vaultRelative of vaultFiles) {
54
+ const linkPath = join(targetPath, vaultRelative);
55
+ const vaultFilePath = join(this.vaultPath, vaultRelative);
56
+ try {
57
+ await this.safeSymlink(vaultFilePath, linkPath);
58
+ result.created.push(vaultRelative);
59
+ }
60
+ catch (err) {
61
+ const message = err instanceof Error ? err.message : String(err);
62
+ result.errors.push(`${vaultRelative}: ${message}`);
63
+ }
64
+ }
65
+ return result;
66
+ }
67
+ async verifySymlinks(targetPath) {
68
+ const valid = [];
69
+ const broken = [];
70
+ const vaultFiles = await this.discoverVaultFiles();
71
+ for (const vaultRelative of vaultFiles) {
72
+ const linkPath = join(targetPath, vaultRelative);
73
+ if (await this.isSymlink(linkPath)) {
74
+ try {
75
+ await stat(linkPath);
76
+ valid.push(vaultRelative);
77
+ }
78
+ catch {
79
+ broken.push(vaultRelative);
80
+ }
81
+ }
82
+ else {
83
+ broken.push(vaultRelative);
84
+ }
85
+ }
86
+ return { valid, broken };
87
+ }
88
+ async removeSymlinks(targetPath) {
89
+ const vaultFiles = await this.discoverVaultFiles();
90
+ for (const vaultRelative of vaultFiles) {
91
+ const linkPath = join(targetPath, vaultRelative);
92
+ if (!(await this.isSymlink(linkPath))) {
93
+ continue;
94
+ }
95
+ await unlink(linkPath);
96
+ // Restore from vault copy
97
+ try {
98
+ const vaultFilePath = join(this.vaultPath, vaultRelative);
99
+ await mkdir(dirname(linkPath), { recursive: true });
100
+ await copyFile(vaultFilePath, linkPath);
101
+ }
102
+ catch {
103
+ // Nothing to restore
104
+ }
105
+ }
106
+ }
107
+ async refreshSymlinks(targetPath) {
108
+ this.validatePaths(targetPath);
109
+ const result = { created: [], errors: [] };
110
+ const vaultFiles = await this.discoverVaultFiles();
111
+ for (const vaultRelative of vaultFiles) {
112
+ const linkPath = join(targetPath, vaultRelative);
113
+ // Skip if valid symlink already exists
114
+ if (await this.isSymlink(linkPath)) {
115
+ try {
116
+ await stat(linkPath);
117
+ continue;
118
+ }
119
+ catch {
120
+ // Broken symlink, recreate
121
+ }
122
+ }
123
+ const vaultFilePath = join(this.vaultPath, vaultRelative);
124
+ try {
125
+ await this.safeSymlink(vaultFilePath, linkPath);
126
+ result.created.push(vaultRelative);
127
+ }
128
+ catch (err) {
129
+ const message = err instanceof Error ? err.message : String(err);
130
+ result.errors.push(`${vaultRelative}: ${message}`);
131
+ }
132
+ }
133
+ return result;
134
+ }
135
+ async discoverVaultFiles() {
136
+ const allFiles = await this.walkDir(this.vaultPath, this.vaultPath);
137
+ if (this.include.length === 0) {
138
+ return allFiles;
139
+ }
140
+ const isMatch = picomatch(this.include);
141
+ return allFiles.filter((f) => isMatch(f));
142
+ }
143
+ async walkDir(dir, base) {
144
+ const paths = [];
145
+ let entries;
146
+ try {
147
+ entries = await readdir(dir);
148
+ }
149
+ catch {
150
+ return paths;
151
+ }
152
+ for (const name of entries) {
153
+ if (name.startsWith('.') || name === 'node_modules')
154
+ continue;
155
+ const full = join(dir, name);
156
+ try {
157
+ const s = await stat(full);
158
+ if (s.isDirectory()) {
159
+ paths.push(...(await this.walkDir(full, base)));
160
+ }
161
+ else if (s.isFile()) {
162
+ paths.push(relative(base, full));
163
+ }
164
+ }
165
+ catch {
166
+ // Skip inaccessible
167
+ }
168
+ }
169
+ return paths;
170
+ }
171
+ validatePaths(targetPath) {
172
+ const resolvedTarget = join(targetPath, '/');
173
+ const resolvedVault = join(this.vaultPath, '/');
174
+ if (resolvedTarget.startsWith(resolvedVault) || resolvedVault.startsWith(resolvedTarget)) {
175
+ throw new Error('Mirror target cannot be inside the vault, or vice versa.');
176
+ }
177
+ }
178
+ }
179
+ //# sourceMappingURL=mirror.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mirror.js","sourceRoot":"","sources":["../../../src/adapters/mirror.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
- import { BaseAdapter, type ImportResult, type SymlinkResult } from './base.js';
1
+ import { BaseAdapter, type AdapterOptions, type ImportResult, type SymlinkResult } from './base.js';
2
2
  export declare class OpenClawAdapter extends BaseAdapter {
3
+ private extraFiles;
4
+ private extraGlobs;
5
+ constructor(options: AdapterOptions);
3
6
  get name(): string;
4
7
  detect(): Promise<string | null>;
5
8
  import(workspacePath: string): Promise<ImportResult>;
@@ -10,6 +13,7 @@ export declare class OpenClawAdapter extends BaseAdapter {
10
13
  }>;
11
14
  removeSymlinks(workspacePath: string): Promise<void>;
12
15
  private discoverFiles;
16
+ private walkAndMatch;
13
17
  private discoverVaultFiles;
14
18
  }
15
19
  //# sourceMappingURL=openclaw.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openclaw.d.ts","sourceRoot":"","sources":["../../../src/adapters/openclaw.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/E,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAUhC,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAkCpD,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAyB7D,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAuBrF,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YA8B5C,aAAa;YAuDb,kBAAkB;CAyBjC"}
1
+ {"version":3,"file":"openclaw.d.ts","sourceRoot":"","sources":["../../../src/adapters/openclaw.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AAEpG,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,OAAO,CAAC,UAAU,CAAW;IAC7B,OAAO,CAAC,UAAU,CAAW;gBAEjB,OAAO,EAAE,cAAc;IAMnC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAUhC,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAkCpD,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAyB7D,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAuBrF,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YA8B5C,aAAa;YA+Eb,YAAY;YAgCZ,kBAAkB;CAyBjC"}
@@ -1,8 +1,16 @@
1
1
  import { readFile, readdir, access, stat, unlink, copyFile, mkdir } from 'node:fs/promises';
2
2
  import { join, relative, dirname } from 'node:path';
3
3
  import { homedir } from 'node:os';
4
+ import picomatch from 'picomatch';
4
5
  import { BaseAdapter } from './base.js';
5
6
  export class OpenClawAdapter extends BaseAdapter {
7
+ extraFiles;
8
+ extraGlobs;
9
+ constructor(options) {
10
+ super(options);
11
+ this.extraFiles = options.extraFiles ?? [];
12
+ this.extraGlobs = options.extraGlobs ?? [];
13
+ }
6
14
  get name() {
7
15
  return 'openclaw';
8
16
  }
@@ -167,8 +175,62 @@ export class OpenClawAdapter extends BaseAdapter {
167
175
  catch {
168
176
  // No memory directory
169
177
  }
178
+ // Extra files from config
179
+ for (const name of this.extraFiles) {
180
+ const filePath = join(workspacePath, name);
181
+ try {
182
+ await access(filePath);
183
+ if (!files.includes(filePath)) {
184
+ files.push(filePath);
185
+ }
186
+ }
187
+ catch {
188
+ // File doesn't exist, skip
189
+ }
190
+ }
191
+ // Extra globs from config
192
+ if (this.extraGlobs.length > 0) {
193
+ const isMatch = picomatch(this.extraGlobs);
194
+ const globMatches = await this.walkAndMatch(workspacePath, workspacePath, isMatch);
195
+ for (const fp of globMatches) {
196
+ if (!files.includes(fp)) {
197
+ files.push(fp);
198
+ }
199
+ }
200
+ }
170
201
  return files;
171
202
  }
203
+ async walkAndMatch(dir, base, isMatch) {
204
+ const matches = [];
205
+ let entries;
206
+ try {
207
+ entries = await readdir(dir);
208
+ }
209
+ catch {
210
+ return matches;
211
+ }
212
+ for (const name of entries) {
213
+ if (name.startsWith('.') || name === 'node_modules')
214
+ continue;
215
+ const full = join(dir, name);
216
+ try {
217
+ const s = await stat(full);
218
+ if (s.isDirectory()) {
219
+ matches.push(...await this.walkAndMatch(full, base, isMatch));
220
+ }
221
+ else if (s.isFile()) {
222
+ const rel = relative(base, full);
223
+ if (isMatch(rel)) {
224
+ matches.push(full);
225
+ }
226
+ }
227
+ }
228
+ catch {
229
+ // Skip inaccessible
230
+ }
231
+ }
232
+ return matches;
233
+ }
172
234
  async discoverVaultFiles() {
173
235
  const files = [];
174
236
  const openclawVault = join(this.vaultPath, 'openclaw');
@@ -1 +1 @@
1
- {"version":3,"file":"openclaw.js","sourceRoot":"","sources":["../../../src/adapters/openclaw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openclaw.js","sourceRoot":"","sources":["../../../src/adapters/openclaw.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,WAAW,EAA8D,MAAM,WAAW,CAAC;AAEpG,MAAM,OAAO,eAAgB,SAAQ,WAAW;IACtC,UAAU,CAAW;IACrB,UAAU,CAAW;IAE7B,YAAY,OAAuB;QACjC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,IAAI;QACN,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;YAC5B,OAAO,aAAa,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,aAAqB;QAChC,MAAM,MAAM,GAAiB,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACvE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAE9D,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YACtD,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAEpD,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAExD,0DAA0D;gBAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;gBACtD,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBAC3D,IAAI,eAAe,KAAK,aAAa,EAAE,CAAC;wBACtC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,kCAAkC;gBACpC,CAAC;gBAED,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;gBAChD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,KAAK,OAAO,EAAE,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,aAAqB;QACxC,MAAM,MAAM,GAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC1D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAE5D,KAAK,MAAM,QAAQ,IAAI,WAAW,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YACtD,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YACpD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAEtD,IAAI,CAAC;gBACH,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;oBACtC,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAC9C,CAAC;gBAED,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAC5C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,KAAK,OAAO,EAAE,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,aAAqB;QACxC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAE7D,KAAK,MAAM,QAAQ,IAAI,YAAY,EAAE,CAAC;YACpC,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAEtD,IAAI,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACrB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC1B,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,aAAqB;QACxC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAEvD,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;YAC3C,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;YAEtD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;gBAC1C,SAAS;YACX,CAAC;YAED,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAE3B,6BAA6B;YAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC;YACnF,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxD,MAAM,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAC3C,CAAC;YAAC,MAAM,CAAC;gBACP,oCAAoC;gBACpC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;gBAC1D,IAAI,CAAC;oBACH,MAAM,QAAQ,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;gBAC9C,CAAC;gBAAC,MAAM,CAAC;oBACP,0BAA0B;gBAC5B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,aAAqB;QAC/C,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,MAAM,aAAa,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACzE,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;QACH,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAChD,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACxC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;oBACpB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;oBAC9C,IAAI,CAAC;wBACH,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;wBACxB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,CAAC;oBAAC,MAAM,CAAC;wBACP,cAAc;oBAChB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;QAED,cAAc;QACd,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YAChD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;YAC7C,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;gBAC/B,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACtC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC9B,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;wBACf,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACtB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;QAED,0BAA0B;QAC1B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,2BAA2B;YAC7B,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;YACnF,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;gBAC7B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,GAAW,EACX,IAAY,EACZ,OAAkC;QAElC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC;QACZ,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,cAAc;gBAAE,SAAS;YAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3B,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;oBACpB,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;gBAChE,CAAC;qBAAM,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;oBACtB,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACjC,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;wBACjB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB;YACtB,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAEvD,MAAM,OAAO,GAAG,KAAK,EAAE,GAAW,EAAE,OAAe,EAAiB,EAAE;YACpE,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;gBACjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;oBACjC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC/B,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;wBACpB,MAAM,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACnC,CAAC;yBAAM,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC9C,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;wBACxC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;oBACpC,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,0CAA0C;YAC5C,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/cli/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkWpC,eAAO,MAAM,cAAc,SAGqC,CAAC"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/cli/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkZpC,eAAO,MAAM,cAAc,SAIgC,CAAC"}