@agent-native/core 0.114.5 → 0.114.7

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 (210) hide show
  1. package/corpus/README.md +2 -2
  2. package/corpus/core/CHANGELOG.md +14 -0
  3. package/corpus/core/package.json +1 -1
  4. package/corpus/core/src/cli/mcp-config-writers.ts +6 -4
  5. package/corpus/core/src/cli/mcp.ts +124 -0
  6. package/corpus/core/src/cli/skills-content/help.ts +4 -3
  7. package/corpus/core/src/cli/skills-content/index.ts +1 -0
  8. package/corpus/core/src/cli/skills-content/rewind-skill.ts +52 -0
  9. package/corpus/core/src/cli/skills.ts +115 -13
  10. package/corpus/core/src/client/resources/ResourceTree.tsx +11 -5
  11. package/corpus/core/src/client/resources/ResourcesPanel.tsx +141 -18
  12. package/corpus/core/src/mcp/screen-memory-stdio.ts +1360 -104
  13. package/corpus/core/src/mcp-client/index.ts +9 -0
  14. package/corpus/core/src/mcp-client/screen-memory-local.ts +847 -13
  15. package/corpus/templates/clips/actions/apply-rewind-extension.ts +195 -0
  16. package/corpus/templates/clips/actions/delete-agent-recording-if-unpromoted.ts +64 -0
  17. package/corpus/templates/clips/actions/get-rewind-extension-request.ts +22 -0
  18. package/corpus/templates/clips/actions/get-screen-memory-status.ts +18 -2
  19. package/corpus/templates/clips/actions/list-rewind-extension-requests.ts +52 -0
  20. package/corpus/templates/clips/actions/make-recording-private-for-rewind.ts +55 -0
  21. package/corpus/templates/clips/actions/query-screen-memory-context.ts +4 -4
  22. package/corpus/templates/clips/actions/request-rewind-extension.ts +81 -0
  23. package/corpus/templates/clips/actions/update-rewind-extension-request.ts +47 -0
  24. package/corpus/templates/clips/app/components/editor/editor-layout.tsx +25 -0
  25. package/corpus/templates/clips/app/components/editor/editor-toolbar.tsx +36 -0
  26. package/corpus/templates/clips/app/components/editor/rewind-extension-dialog.tsx +338 -0
  27. package/corpus/templates/clips/app/components/editor/stitch-manager.tsx +1 -16
  28. package/corpus/templates/clips/app/components/editor/timeline.tsx +26 -0
  29. package/corpus/templates/clips/app/components/meetings/meeting-card.tsx +1 -2
  30. package/corpus/templates/clips/app/i18n/en-US.ts +18 -0
  31. package/corpus/templates/clips/app/lib/ffmpeg-export.ts +19 -12
  32. package/corpus/templates/clips/app/lib/rewind-visibility.ts +31 -0
  33. package/corpus/templates/clips/app/lib/timestamp-mapping.ts +7 -0
  34. package/corpus/templates/clips/app/lib/upload-file-client.ts +17 -0
  35. package/corpus/templates/clips/changelog/2026-07-14-rewind-keeps-recent-screen-context-local-and-turns-it-into-clips.md +6 -0
  36. package/corpus/templates/clips/changelog/2026-07-17-active-clips-keep-rewind-stable-and-settings-clear.md +12 -0
  37. package/corpus/templates/clips/changelog/2026-07-17-clicking-the-clips-icon-during-a-recording-now-opens-the-app.md +6 -0
  38. package/corpus/templates/clips/changelog/2026-07-17-default-mic-now-uses-the-mac-default-and-transcription-shares-one-capture.md +6 -0
  39. package/corpus/templates/clips/changelog/2026-07-17-full-screen-clips-finalize-even-when-screencapturekit-stop-hangs.md +6 -0
  40. package/corpus/templates/clips/changelog/2026-07-17-normal-full-screen-clips-no-longer-stop-immediately-after-th.md +6 -0
  41. package/corpus/templates/clips/changelog/2026-07-17-rewind-can-hand-one-bounded-private-clip-to-your-agent.md +12 -0
  42. package/corpus/templates/clips/changelog/2026-07-17-rewind-home-can-copy-a-local-agent-prompt.md +6 -0
  43. package/corpus/templates/clips/changelog/2026-07-17-rewind-now-has-a-calm-home-status-focused-first-run-consent-.md +6 -0
  44. package/corpus/templates/clips/changelog/2026-07-17-rewind-settings-are-smaller-clearer-and-agent-first.md +6 -0
  45. package/corpus/templates/clips/changelog/2026-07-17-the-full-clips-interface-stays-available-while-recording.md +6 -0
  46. package/corpus/templates/clips/changelog/2026-07-18-rewind-organizes-recent-work-into-local-searchable-chapters.md +8 -0
  47. package/corpus/templates/clips/changelog/2026-07-18-searchable-rewind-chapters.md +6 -0
  48. package/corpus/templates/clips/changelog/2026-07-19-rewind-backed-recordings-now-start-immediately-after-the-cou.md +6 -0
  49. package/corpus/templates/clips/changelog/2026-07-20-opening-zoom-meeting-launches-native-app.md +6 -0
  50. package/corpus/templates/clips/changelog/2026-07-20-rewind-can-set-up-your-local-agent-once-so-future-requests-w.md +6 -0
  51. package/corpus/templates/clips/desktop/package.json +1 -0
  52. package/corpus/templates/clips/desktop/scripts/sign-macos-local.ts +12 -1
  53. package/corpus/templates/clips/desktop/src/app.tsx +2478 -223
  54. package/corpus/templates/clips/desktop/src/components/ReadinessPanel.tsx +21 -1
  55. package/corpus/templates/clips/desktop/src/components/Switch.tsx +3 -0
  56. package/corpus/templates/clips/desktop/src/hooks/useMeetingTranscription.ts +156 -24
  57. package/corpus/templates/clips/desktop/src/lib/native-recording-warm.ts +6 -7
  58. package/corpus/templates/clips/desktop/src/lib/open-meeting-join-url.ts +22 -0
  59. package/corpus/templates/clips/desktop/src/lib/recorder.ts +1763 -1160
  60. package/corpus/templates/clips/desktop/src/lib/rewind-agent-prompt.ts +9 -0
  61. package/corpus/templates/clips/desktop/src/lib/rewind-recording-start.ts +20 -0
  62. package/corpus/templates/clips/desktop/src/main.tsx +3 -0
  63. package/corpus/templates/clips/desktop/src/overlays/countdown.tsx +14 -14
  64. package/corpus/templates/clips/desktop/src/overlays/meeting-notification.tsx +2 -3
  65. package/corpus/templates/clips/desktop/src/overlays/onboarding.tsx +4 -4
  66. package/corpus/templates/clips/desktop/src/overlays/preparing.tsx +13 -0
  67. package/corpus/templates/clips/desktop/src/overlays/toolbar.tsx +27 -2
  68. package/corpus/templates/clips/desktop/src/shared/config.ts +16 -0
  69. package/corpus/templates/clips/desktop/src/styles.css +956 -134
  70. package/corpus/templates/clips/desktop/src-tauri/Cargo.toml +5 -0
  71. package/corpus/templates/clips/desktop/src-tauri/build.rs +69 -1
  72. package/corpus/templates/clips/desktop/src-tauri/src/accessibility.rs +386 -12
  73. package/corpus/templates/clips/desktop/src-tauri/src/capture_audio_bus.rs +382 -0
  74. package/corpus/templates/clips/desktop/src-tauri/src/capture_graph.rs +777 -0
  75. package/corpus/templates/clips/desktop/src-tauri/src/clips/mod.rs +249 -22
  76. package/corpus/templates/clips/desktop/src-tauri/src/config.rs +148 -1
  77. package/corpus/templates/clips/desktop/src-tauri/src/lib.rs +58 -4
  78. package/corpus/templates/clips/desktop/src-tauri/src/logfile.rs +13 -1
  79. package/corpus/templates/clips/desktop/src-tauri/src/native_screen/custom_capture.rs +1505 -51
  80. package/corpus/templates/clips/desktop/src-tauri/src/native_screen/live_upload.rs +124 -0
  81. package/corpus/templates/clips/desktop/src-tauri/src/native_screen.rs +1006 -95
  82. package/corpus/templates/clips/desktop/src-tauri/src/rewind_capture_suspension.rs +165 -0
  83. package/corpus/templates/clips/desktop/src-tauri/src/rewind_chapters.rs +2434 -0
  84. package/corpus/templates/clips/desktop/src-tauri/src/rewind_clip.rs +1650 -0
  85. package/corpus/templates/clips/desktop/src-tauri/src/rewind_egress.rs +643 -0
  86. package/corpus/templates/clips/desktop/src-tauri/src/rewind_local_ask.rs +803 -0
  87. package/corpus/templates/clips/desktop/src-tauri/src/rewind_meeting_history.rs +595 -0
  88. package/corpus/templates/clips/desktop/src-tauri/src/screen_memory.rs +2900 -91
  89. package/corpus/templates/clips/desktop/src-tauri/src/screen_memory_ocr.rs +360 -0
  90. package/corpus/templates/clips/desktop/src-tauri/src/screen_memory_transcript.rs +408 -0
  91. package/corpus/templates/clips/desktop/src-tauri/src/shortcuts.rs +114 -33
  92. package/corpus/templates/clips/desktop/src-tauri/src/state.rs +2 -2
  93. package/corpus/templates/clips/desktop/src-tauri/src/system_audio.rs +13 -3
  94. package/corpus/templates/clips/desktop/src-tauri/src/tray.rs +4 -1
  95. package/corpus/templates/clips/desktop/src-tauri/src/util.rs +7 -13
  96. package/corpus/templates/clips/desktop/src-tauri/src/whisper_speech.rs +198 -11
  97. package/corpus/templates/clips/desktop/src-tauri/tauri.alpha.conf.json +17 -0
  98. package/corpus/templates/clips/shared/meeting-join-url.ts +0 -5
  99. package/corpus/templates/content/.agents/skills/document-editing/SKILL.md +9 -1
  100. package/corpus/templates/content/AGENTS.md +4 -1
  101. package/corpus/templates/content/actions/_content-spaces.ts +6 -1
  102. package/corpus/templates/content/actions/_database-row-batch.ts +15 -2
  103. package/corpus/templates/content/actions/_database-utils.ts +83 -15
  104. package/corpus/templates/content/actions/add-database-item.ts +3 -0
  105. package/corpus/templates/content/actions/connect-local-folder-source.ts +2 -1
  106. package/corpus/templates/content/actions/delete-content-database.ts +12 -9
  107. package/corpus/templates/content/actions/delete-database-items.ts +3 -2
  108. package/corpus/templates/content/actions/delete-document.ts +233 -6
  109. package/corpus/templates/content/actions/duplicate-database-item.ts +1 -0
  110. package/corpus/templates/content/actions/get-document.ts +4 -1
  111. package/corpus/templates/content/actions/list-content-databases.ts +1 -0
  112. package/corpus/templates/content/actions/list-documents.ts +1 -0
  113. package/corpus/templates/content/actions/list-trashed-content-databases.ts +8 -2
  114. package/corpus/templates/content/actions/list-trashed-documents.ts +50 -0
  115. package/corpus/templates/content/actions/permanently-delete-document.ts +28 -0
  116. package/corpus/templates/content/actions/pull-document.ts +15 -2
  117. package/corpus/templates/content/actions/restore-content-database.ts +48 -11
  118. package/corpus/templates/content/actions/restore-document.ts +28 -0
  119. package/corpus/templates/content/actions/search-documents.ts +2 -1
  120. package/corpus/templates/content/actions/view-screen.ts +2 -1
  121. package/corpus/templates/content/app/components/editor/database/DatabaseView.tsx +149 -55
  122. package/corpus/templates/content/app/components/editor/database/GalleryView.tsx +7 -2
  123. package/corpus/templates/content/app/components/editor/database/ListView.tsx +7 -2
  124. package/corpus/templates/content/app/components/editor/database/TimelineView.tsx +3 -0
  125. package/corpus/templates/content/app/components/editor/database/sidebar.tsx +26 -5
  126. package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +243 -163
  127. package/corpus/templates/content/app/components/sidebar/WorkspaceSourceMenu.tsx +154 -0
  128. package/corpus/templates/content/app/components/sidebar/select-content-space.ts +11 -0
  129. package/corpus/templates/content/app/hooks/use-content-database.ts +6 -0
  130. package/corpus/templates/content/app/hooks/use-documents.ts +57 -0
  131. package/corpus/templates/content/app/i18n-data.ts +83 -2
  132. package/corpus/templates/content/app/routes/_app.local-files.tsx +8 -1
  133. package/corpus/templates/content/changelog/2026-07-19-pages-now-move-to-a-reversible-trash-and-the-organization-pi.md +6 -0
  134. package/corpus/templates/content/changelog/2026-07-20-trash-actions-now-preserve-independent-archived-pages-enforc.md +6 -0
  135. package/corpus/templates/content/changelog/2026-07-20-workspace-toggles-now-stay-independently-open-or-closed-and-.md +6 -0
  136. package/corpus/templates/content/changelog/2026-07-20-workspaces-can-be-added-from-a-blank-workspace-or-a-connecte.md +6 -0
  137. package/corpus/templates/content/parity/matrix.md +1 -1
  138. package/corpus/templates/content/parity/matrix.ts +3 -0
  139. package/corpus/templates/content/server/db/schema.ts +2 -0
  140. package/corpus/templates/content/server/lib/public-documents.ts +8 -2
  141. package/corpus/templates/content/server/plugins/db.ts +52 -0
  142. package/corpus/templates/content/server/routes/api/document-agent-context.json.get.ts +2 -2
  143. package/corpus/templates/content/shared/api.ts +10 -0
  144. package/corpus/toolkit/CHANGELOG.md +6 -0
  145. package/corpus/toolkit/package.json +1 -1
  146. package/corpus/toolkit/src/ui/progress.tsx +3 -2
  147. package/dist/cli/mcp-config-writers.d.ts +2 -2
  148. package/dist/cli/mcp-config-writers.d.ts.map +1 -1
  149. package/dist/cli/mcp-config-writers.js +6 -6
  150. package/dist/cli/mcp-config-writers.js.map +1 -1
  151. package/dist/cli/mcp.d.ts +14 -0
  152. package/dist/cli/mcp.d.ts.map +1 -1
  153. package/dist/cli/mcp.js +79 -0
  154. package/dist/cli/mcp.js.map +1 -1
  155. package/dist/cli/skills-content/help.d.ts +1 -1
  156. package/dist/cli/skills-content/help.d.ts.map +1 -1
  157. package/dist/cli/skills-content/help.js +4 -3
  158. package/dist/cli/skills-content/help.js.map +1 -1
  159. package/dist/cli/skills-content/index.d.ts +1 -0
  160. package/dist/cli/skills-content/index.d.ts.map +1 -1
  161. package/dist/cli/skills-content/index.js +1 -0
  162. package/dist/cli/skills-content/index.js.map +1 -1
  163. package/dist/cli/skills-content/rewind-skill.d.ts +2 -0
  164. package/dist/cli/skills-content/rewind-skill.d.ts.map +1 -0
  165. package/dist/cli/skills-content/rewind-skill.js +53 -0
  166. package/dist/cli/skills-content/rewind-skill.js.map +1 -0
  167. package/dist/cli/skills.d.ts +6 -0
  168. package/dist/cli/skills.d.ts.map +1 -1
  169. package/dist/cli/skills.js +90 -14
  170. package/dist/cli/skills.js.map +1 -1
  171. package/dist/client/resources/ResourceTree.d.ts +3 -1
  172. package/dist/client/resources/ResourceTree.d.ts.map +1 -1
  173. package/dist/client/resources/ResourceTree.js +4 -4
  174. package/dist/client/resources/ResourceTree.js.map +1 -1
  175. package/dist/client/resources/ResourcesPanel.d.ts.map +1 -1
  176. package/dist/client/resources/ResourcesPanel.js +55 -6
  177. package/dist/client/resources/ResourcesPanel.js.map +1 -1
  178. package/dist/collab/routes.d.ts +1 -1
  179. package/dist/collab/struct-routes.d.ts +1 -1
  180. package/dist/mcp/screen-memory-stdio.d.ts +365 -0
  181. package/dist/mcp/screen-memory-stdio.d.ts.map +1 -1
  182. package/dist/mcp/screen-memory-stdio.js +1014 -91
  183. package/dist/mcp/screen-memory-stdio.js.map +1 -1
  184. package/dist/mcp-client/index.d.ts +1 -1
  185. package/dist/mcp-client/index.d.ts.map +1 -1
  186. package/dist/mcp-client/index.js +1 -1
  187. package/dist/mcp-client/index.js.map +1 -1
  188. package/dist/mcp-client/screen-memory-local.d.ts +90 -0
  189. package/dist/mcp-client/screen-memory-local.d.ts.map +1 -1
  190. package/dist/mcp-client/screen-memory-local.js +590 -12
  191. package/dist/mcp-client/screen-memory-local.js.map +1 -1
  192. package/dist/notifications/routes.d.ts +2 -2
  193. package/dist/observability/routes.d.ts +5 -5
  194. package/dist/progress/routes.d.ts +1 -1
  195. package/dist/provider-api/actions/provider-api.d.ts +4 -4
  196. package/dist/resources/handlers.d.ts +1 -1
  197. package/dist/secrets/routes.d.ts +9 -9
  198. package/dist/server/transcribe-voice.d.ts +1 -1
  199. package/package.json +2 -2
  200. package/src/cli/mcp-config-writers.ts +6 -4
  201. package/src/cli/mcp.ts +124 -0
  202. package/src/cli/skills-content/help.ts +4 -3
  203. package/src/cli/skills-content/index.ts +1 -0
  204. package/src/cli/skills-content/rewind-skill.ts +52 -0
  205. package/src/cli/skills.ts +115 -13
  206. package/src/client/resources/ResourceTree.tsx +11 -5
  207. package/src/client/resources/ResourcesPanel.tsx +141 -18
  208. package/src/mcp/screen-memory-stdio.ts +1360 -104
  209. package/src/mcp-client/index.ts +9 -0
  210. package/src/mcp-client/screen-memory-local.ts +847 -13
@@ -14,9 +14,10 @@ import { buildAppSkillPack, ensureAppSkill, loadAppSkillManifest, normalizeAppSk
14
14
  import { resolveClients, runConnect, writeConnectClientPreferences, } from "./connect.js";
15
15
  import { CONTEXT_XRAY_SKILL_MD, installLocalContextXray, } from "./context-xray-local.js";
16
16
  import { CLIENTS } from "./mcp-config-writers.js";
17
+ import { installScreenMemoryForClient, resolveScreenMemoryStoreDir, } from "./mcp.js";
17
18
  import { PR_VISUAL_RECAP_SETUP, writePrVisualRecapWorkflow } from "./recap.js";
18
19
  import { setupAgentSymlinks } from "./setup-agents.js";
19
- import { ASSETS_SKILL_MD, CANVAS_REFERENCE_MD, CONNECTION_REFERENCE_MD, CONTENT_SKILL_MD, DESIGN_EXPLORATION_SKILL_MD, DESIGN_VISUAL_EDIT_SKILL_MD, DOCUMENT_QUALITY_REFERENCE_MD, EXEMPLAR_REFERENCE_MD, HELP, LOCAL_FILES_REFERENCE_MD, VISUAL_PLANS_SKILL_MD, VISUAL_RECAP_SKILL_MD, VISUALIZE_REPO_SKILL_MD, WIREFRAME_REFERENCE_MD, } from "./skills-content/index.js";
20
+ import { ASSETS_SKILL_MD, CANVAS_REFERENCE_MD, CONNECTION_REFERENCE_MD, CONTENT_SKILL_MD, DESIGN_EXPLORATION_SKILL_MD, DESIGN_VISUAL_EDIT_SKILL_MD, DOCUMENT_QUALITY_REFERENCE_MD, EXEMPLAR_REFERENCE_MD, HELP, LOCAL_FILES_REFERENCE_MD, REWIND_SKILL_MD, VISUAL_PLANS_SKILL_MD, VISUAL_RECAP_SKILL_MD, VISUALIZE_REPO_SKILL_MD, WIREFRAME_REFERENCE_MD, } from "./skills-content/index.js";
20
21
  import { createCliTelemetry } from "./telemetry.js";
21
22
  export { CANVAS_REFERENCE_MD, CONNECTION_REFERENCE_MD, DOCUMENT_QUALITY_REFERENCE_MD, EXEMPLAR_REFERENCE_MD, LOCAL_FILES_REFERENCE_MD, VISUAL_PLANS_SKILL_MD, VISUAL_RECAP_SKILL_MD, VISUALIZE_REPO_SKILL_MD, WIREFRAME_REFERENCE_MD, };
22
23
  export const BUILT_IN_APP_SKILLS = {
@@ -111,6 +112,38 @@ export const BUILT_IN_APP_SKILLS = {
111
112
  }),
112
113
  skillMarkdown: CONTENT_SKILL_MD,
113
114
  },
115
+ rewind: {
116
+ skillName: "rewind",
117
+ screenMemoryMcp: true,
118
+ manifest: normalizeAppSkillManifest({
119
+ schemaVersion: 1,
120
+ id: "rewind",
121
+ displayName: "Rewind",
122
+ description: "Retrieve recent local Clips screen memory, chapters, transcripts, and exact frames through a privacy-preserving agent workflow.",
123
+ hosted: {
124
+ url: "https://clips.agent-native.com",
125
+ mcpUrl: "https://clips.agent-native.com/mcp",
126
+ },
127
+ mcp: { serverName: "clips-screen-memory" },
128
+ auth: { mode: "none" },
129
+ surfaces: [
130
+ {
131
+ id: "rewind-memory",
132
+ path: "/",
133
+ description: "Search and inspect the user's local Clips Rewind memory through a bounded local MCP broker.",
134
+ },
135
+ ],
136
+ skills: [
137
+ {
138
+ path: "skills/rewind",
139
+ visibility: "exported",
140
+ exportAs: "rewind",
141
+ },
142
+ ],
143
+ hostAdapters: ["plain-skill", "claude-skill", "generic-mcp"],
144
+ }),
145
+ skillMarkdown: REWIND_SKILL_MD,
146
+ },
114
147
  design: {
115
148
  skillName: "design-exploration",
116
149
  extraSkills: {
@@ -301,6 +334,10 @@ const BUILT_IN_APP_SKILL_ALIASES = {
301
334
  "local-content": "content",
302
335
  "content-local-files": "content",
303
336
  "agent-native-content": "content",
337
+ rewind: "rewind",
338
+ "screen-memory": "rewind",
339
+ "clips-rewind": "rewind",
340
+ "agent-native-rewind": "rewind",
304
341
  design: "design",
305
342
  "ui-design": "design",
306
343
  "ux-design": "design",
@@ -342,6 +379,7 @@ const BUILT_IN_APP_SKILL_DISPLAY_ALIASES = {
342
379
  "content-local-files",
343
380
  "agent-native-content",
344
381
  ],
382
+ rewind: ["screen-memory", "clips-rewind", "agent-native-rewind"],
345
383
  design: [
346
384
  "design-exploration",
347
385
  "visual-edit",
@@ -431,6 +469,9 @@ function isKnownSkill(value) {
431
469
  function isLocalOnlyBuiltInSkill(entry) {
432
470
  return Boolean(entry && "localOnly" in entry && entry.localOnly);
433
471
  }
472
+ function isScreenMemoryMcpBuiltInSkill(entry) {
473
+ return Boolean(entry && "screenMemoryMcp" in entry && entry.screenMemoryMcp);
474
+ }
434
475
  function targetSupportsInstallMode(targetId) {
435
476
  return targetId === "visual-plans" || targetId === "content";
436
477
  }
@@ -597,6 +638,7 @@ function skillFilesForBuiltIn(appSkillId, options = {}) {
597
638
  displayName: entry.manifest.displayName,
598
639
  skillName,
599
640
  mcpUrl: isLocalOnlyBuiltInSkill(entry) ||
641
+ isScreenMemoryMcpBuiltInSkill(entry) ||
600
642
  localFilesModeSkipsMcp(appSkillId, options.planMode)
601
643
  ? ""
602
644
  : (options.mcpUrl ?? entry.manifest.hosted.mcpUrl),
@@ -775,11 +817,10 @@ function writeContentLocalFilesManifest(baseDir, options = {}) {
775
817
  function builtInSkillsRootForAgent(agent, scope, baseDir) {
776
818
  const home = homeDir() ?? baseDir;
777
819
  if (scope === "project") {
778
- if (agent === "codex")
779
- return path.join(baseDir, ".agents", "skills");
780
- if (agent === "pi")
781
- return path.join(baseDir, ".agents", "skills");
782
- return path.join(baseDir, ".claude", "skills");
820
+ if (agent === "claude-code" || agent === "claude-code-cli") {
821
+ return path.join(baseDir, ".claude", "skills");
822
+ }
823
+ return path.join(baseDir, ".agents", "skills");
783
824
  }
784
825
  if (agent === "codex") {
785
826
  return process.env.CODEX_HOME
@@ -789,6 +830,11 @@ function builtInSkillsRootForAgent(agent, scope, baseDir) {
789
830
  if (agent === "pi") {
790
831
  return path.join(home, ".agents", "skills");
791
832
  }
833
+ if (agent === "cursor" ||
834
+ agent === "opencode" ||
835
+ agent === "github-copilot") {
836
+ return path.join(home, ".agents", "skills");
837
+ }
792
838
  return path.join(home, ".claude", "skills");
793
839
  }
794
840
  function builtInCommandsRootForAgent(agent, scope, baseDir) {
@@ -1498,6 +1544,11 @@ const BUILT_IN_SKILL_PROMPT_OPTIONS = [
1498
1544
  label: "content",
1499
1545
  hint: BUILT_IN_APP_SKILLS.content.manifest.description,
1500
1546
  },
1547
+ {
1548
+ value: "rewind",
1549
+ label: "rewind",
1550
+ hint: BUILT_IN_APP_SKILLS.rewind.manifest.description,
1551
+ },
1501
1552
  {
1502
1553
  value: "design-exploration",
1503
1554
  label: "design-exploration",
@@ -2505,7 +2556,11 @@ export async function addAgentNativeSkill(parsed, options = {}) {
2505
2556
  throw new Error(`Unknown skill or manifest path: ${target}. Run "npx @agent-native/core@latest skills list".`);
2506
2557
  }
2507
2558
  const knownBuiltIn = knownTarget ? BUILT_IN_APP_SKILLS[knownTarget] : null;
2559
+ const installsScreenMemoryMcp = isScreenMemoryMcpBuiltInSkill(knownBuiltIn);
2508
2560
  const baseDir = options.baseDir ?? process.cwd();
2561
+ if (installsScreenMemoryMcp && parsed.mcpUrl) {
2562
+ throw new Error("Rewind uses the local Clips Screen Memory MCP and does not accept --mcp-url.");
2563
+ }
2509
2564
  if (isLocalOnlyBuiltInSkill(knownBuiltIn)) {
2510
2565
  if (parsed.planMode) {
2511
2566
  throw new Error("--mode only applies to visual-plan / visual-recap / visualize-repo / content.");
@@ -2596,7 +2651,9 @@ export async function addAgentNativeSkill(parsed, options = {}) {
2596
2651
  throw new Error("MCP setup supports Claude Code, Codex, Claude Cowork, Cursor, OpenCode, or GitHub Copilot / VS Code clients. Use --mode local-files or --no-mcp for Pi.");
2597
2652
  }
2598
2653
  installTarget = preserveMcpUrlAppPathOverride(installTarget, parsed.mcpUrl);
2599
- const skillsAgents = skillsAgentsForClients(clients);
2654
+ const skillsAgents = installsScreenMemoryMcp
2655
+ ? clients
2656
+ : skillsAgentsForClients(clients);
2600
2657
  if (parsed.dryRun) {
2601
2658
  try {
2602
2659
  const localManifestPath = shouldWriteContentLocalFilesManifest(modeAwareTargetId, planMode)
@@ -2619,9 +2676,11 @@ export async function addAgentNativeSkill(parsed, options = {}) {
2619
2676
  displayName: installTarget.displayName,
2620
2677
  skillNames: installTarget.skillNames,
2621
2678
  skillsAgents,
2622
- mcpUrl: localFilesModeSkipsMcp(modeAwareTargetId, planMode)
2679
+ mcpUrl: installsScreenMemoryMcp
2623
2680
  ? ""
2624
- : installTarget.loaded.manifest.hosted.mcpUrl,
2681
+ : localFilesModeSkipsMcp(modeAwareTargetId, planMode)
2682
+ ? ""
2683
+ : installTarget.loaded.manifest.hosted.mcpUrl,
2625
2684
  mcpClients: shouldRegisterMcp ? mcpClients : [],
2626
2685
  dryRun: true,
2627
2686
  commands: [
@@ -2716,7 +2775,21 @@ export async function addAgentNativeSkill(parsed, options = {}) {
2716
2775
  scope: parsed.scope,
2717
2776
  dryRun: Boolean(parsed.dryRun),
2718
2777
  });
2719
- if (shouldRegisterMcp) {
2778
+ if (shouldRegisterMcp && installsScreenMemoryMcp) {
2779
+ const screenMemoryDir = resolveScreenMemoryStoreDir();
2780
+ if (!screenMemoryDir) {
2781
+ throw new Error("No local Clips Screen Memory store was found. Turn Rewind on in Clips, then run the setup again.");
2782
+ }
2783
+ registeredMcpClients = mcpClients.map((client) => {
2784
+ commands.push(`npx @agent-native/core@latest mcp install-screen-memory --client ${client} --scope ${parsed.scope}`);
2785
+ installScreenMemoryForClient(client, screenMemoryDir, baseDir, parsed.scope);
2786
+ return client;
2787
+ });
2788
+ options.telemetry?.track("skills_cli mcp registered", {
2789
+ skills: installTarget.skillNames.join(","),
2790
+ });
2791
+ }
2792
+ else if (shouldRegisterMcp) {
2720
2793
  commands.push(`npx @agent-native/core@latest app-skill ensure --manifest ${installTarget.loaded.file} --client ${parsed.client} --scope ${parsed.scope} --yes`);
2721
2794
  if (!parsed.dryRun) {
2722
2795
  const ensureResult = await ensureAppSkill(installTarget.loaded, {
@@ -2807,9 +2880,11 @@ export async function addAgentNativeSkill(parsed, options = {}) {
2807
2880
  instructionSource,
2808
2881
  skillNames: installTarget.skillNames,
2809
2882
  skillsAgents,
2810
- mcpUrl: localFilesModeSkipsMcp(modeAwareTargetId, planMode)
2883
+ mcpUrl: installsScreenMemoryMcp
2811
2884
  ? ""
2812
- : installTarget.loaded.manifest.hosted.mcpUrl,
2885
+ : localFilesModeSkipsMcp(modeAwareTargetId, planMode)
2886
+ ? ""
2887
+ : installTarget.loaded.manifest.hosted.mcpUrl,
2813
2888
  mcpClients: registeredMcpClients,
2814
2889
  dryRun: parsed.dryRun,
2815
2890
  commands,
@@ -2838,10 +2913,11 @@ function listSkills(options = {}) {
2838
2913
  aliases: BUILT_IN_APP_SKILL_DISPLAY_ALIASES[entry.manifest.id] ?? [],
2839
2914
  name: entry.manifest.displayName,
2840
2915
  description: entry.manifest.description,
2841
- mcpUrl: isLocalOnlyBuiltInSkill(entry)
2916
+ mcpUrl: isLocalOnlyBuiltInSkill(entry) || isScreenMemoryMcpBuiltInSkill(entry)
2842
2917
  ? ""
2843
2918
  : entry.manifest.hosted.mcpUrl,
2844
- local: isLocalOnlyBuiltInSkill(entry),
2919
+ local: isLocalOnlyBuiltInSkill(entry) ||
2920
+ isScreenMemoryMcpBuiltInSkill(entry),
2845
2921
  source: "agent-native",
2846
2922
  })),
2847
2923
  ...publicSkillEntries(options).map((entry) => ({