@intent-systems/nexus 2026.1.5-3

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 (827) hide show
  1. package/CHANGELOG.md +222 -0
  2. package/LICENSE +21 -0
  3. package/README-header.png +0 -0
  4. package/README.md +462 -0
  5. package/dist/agents/agent-paths.js +16 -0
  6. package/dist/agents/agent-scope.js +44 -0
  7. package/dist/agents/auth-profiles.js +626 -0
  8. package/dist/agents/bash-process-registry.js +126 -0
  9. package/dist/agents/bash-tools.js +838 -0
  10. package/dist/agents/chutes-oauth.js +47 -0
  11. package/dist/agents/clawdbot-tools.js +62 -0
  12. package/dist/agents/context.js +34 -0
  13. package/dist/agents/defaults.js +6 -0
  14. package/dist/agents/memory-search.js +80 -0
  15. package/dist/agents/model-auth.js +115 -0
  16. package/dist/agents/model-catalog.js +55 -0
  17. package/dist/agents/model-fallback.js +210 -0
  18. package/dist/agents/model-scan.js +263 -0
  19. package/dist/agents/model-selection.js +152 -0
  20. package/dist/agents/models-config.js +171 -0
  21. package/dist/agents/nexus-tools.js +46 -0
  22. package/dist/agents/pi-embedded-block-chunker.js +188 -0
  23. package/dist/agents/pi-embedded-helpers.js +139 -0
  24. package/dist/agents/pi-embedded-runner.js +932 -0
  25. package/dist/agents/pi-embedded-subscribe.js +541 -0
  26. package/dist/agents/pi-embedded-utils.js +20 -0
  27. package/dist/agents/pi-embedded.js +1 -0
  28. package/dist/agents/pi-extensions/compaction-safeguard.js +140 -0
  29. package/dist/agents/pi-tool-definition-adapter.js +17 -0
  30. package/dist/agents/pi-tools.js +510 -0
  31. package/dist/agents/pi-tools.schema.js +358 -0
  32. package/dist/agents/sandbox-paths.js +68 -0
  33. package/dist/agents/sandbox.js +667 -0
  34. package/dist/agents/shell-utils.js +53 -0
  35. package/dist/agents/skill-runner.js +224 -0
  36. package/dist/agents/skill-state.js +164 -0
  37. package/dist/agents/skill-tools.js +191 -0
  38. package/dist/agents/skill-usage.js +43 -0
  39. package/dist/agents/skills-install.js +244 -0
  40. package/dist/agents/skills-status.js +157 -0
  41. package/dist/agents/skills.js +472 -0
  42. package/dist/agents/subagent-registry.js +321 -0
  43. package/dist/agents/subagent-registry.store.js +47 -0
  44. package/dist/agents/system-prompt.js +179 -0
  45. package/dist/agents/timeout.js +26 -0
  46. package/dist/agents/tool-display.js +155 -0
  47. package/dist/agents/tool-display.json +236 -0
  48. package/dist/agents/tool-images.js +138 -0
  49. package/dist/agents/tool-policy.js +87 -0
  50. package/dist/agents/tools/agent-step.js +41 -0
  51. package/dist/agents/tools/browser-tool.js +295 -0
  52. package/dist/agents/tools/canvas-tool.js +193 -0
  53. package/dist/agents/tools/common.js +88 -0
  54. package/dist/agents/tools/cron-tool.js +141 -0
  55. package/dist/agents/tools/discord-actions-guild.js +186 -0
  56. package/dist/agents/tools/discord-actions-messaging.js +313 -0
  57. package/dist/agents/tools/discord-actions-moderation.js +70 -0
  58. package/dist/agents/tools/discord-actions.js +56 -0
  59. package/dist/agents/tools/discord-schema.js +199 -0
  60. package/dist/agents/tools/discord-tool.js +16 -0
  61. package/dist/agents/tools/gateway-tool.js +46 -0
  62. package/dist/agents/tools/gateway.js +28 -0
  63. package/dist/agents/tools/image-tool.js +140 -0
  64. package/dist/agents/tools/memory-tool.js +92 -0
  65. package/dist/agents/tools/nodes-tool.js +413 -0
  66. package/dist/agents/tools/nodes-utils.js +92 -0
  67. package/dist/agents/tools/sessions-announce-target.js +35 -0
  68. package/dist/agents/tools/sessions-helpers.js +88 -0
  69. package/dist/agents/tools/sessions-history-tool.js +137 -0
  70. package/dist/agents/tools/sessions-list-tool.js +196 -0
  71. package/dist/agents/tools/sessions-send-helpers.js +103 -0
  72. package/dist/agents/tools/sessions-send-tool.js +371 -0
  73. package/dist/agents/tools/sessions-spawn-tool.js +319 -0
  74. package/dist/agents/tools/slack-actions.js +129 -0
  75. package/dist/agents/tools/slack-schema.js +59 -0
  76. package/dist/agents/tools/slack-tool.js +16 -0
  77. package/dist/agents/tools/telegram-actions.js +159 -0
  78. package/dist/agents/tools/telegram-schema.js +28 -0
  79. package/dist/agents/tools/telegram-tool.js +16 -0
  80. package/dist/agents/tools/whatsapp-login-tool.js +63 -0
  81. package/dist/agents/usage.js +58 -0
  82. package/dist/agents/workspace.js +264 -0
  83. package/dist/auto-reply/chunk.js +177 -0
  84. package/dist/auto-reply/command-auth.js +44 -0
  85. package/dist/auto-reply/command-detection.js +22 -0
  86. package/dist/auto-reply/envelope.js +30 -0
  87. package/dist/auto-reply/group-activation.js +20 -0
  88. package/dist/auto-reply/heartbeat.js +58 -0
  89. package/dist/auto-reply/model.js +22 -0
  90. package/dist/auto-reply/reply/abort.js +14 -0
  91. package/dist/auto-reply/reply/agent-runner.js +426 -0
  92. package/dist/auto-reply/reply/bash-command.js +314 -0
  93. package/dist/auto-reply/reply/block-streaming.js +34 -0
  94. package/dist/auto-reply/reply/body.js +29 -0
  95. package/dist/auto-reply/reply/commands.js +332 -0
  96. package/dist/auto-reply/reply/directive-handling.js +626 -0
  97. package/dist/auto-reply/reply/directives.js +59 -0
  98. package/dist/auto-reply/reply/dispatch-from-config.js +23 -0
  99. package/dist/auto-reply/reply/followup-runner.js +181 -0
  100. package/dist/auto-reply/reply/groups.js +152 -0
  101. package/dist/auto-reply/reply/mentions.js +64 -0
  102. package/dist/auto-reply/reply/model-selection.js +209 -0
  103. package/dist/auto-reply/reply/queue.js +399 -0
  104. package/dist/auto-reply/reply/reply-dispatcher.js +68 -0
  105. package/dist/auto-reply/reply/reply-tags.js +26 -0
  106. package/dist/auto-reply/reply/session-updates.js +103 -0
  107. package/dist/auto-reply/reply/session.js +169 -0
  108. package/dist/auto-reply/reply/typing.js +125 -0
  109. package/dist/auto-reply/reply.js +655 -0
  110. package/dist/auto-reply/send-policy.js +28 -0
  111. package/dist/auto-reply/status.js +197 -0
  112. package/dist/auto-reply/templating.js +9 -0
  113. package/dist/auto-reply/thinking.js +49 -0
  114. package/dist/auto-reply/tokens.js +2 -0
  115. package/dist/auto-reply/tool-meta.js +74 -0
  116. package/dist/auto-reply/transcription.js +57 -0
  117. package/dist/auto-reply/types.js +1 -0
  118. package/dist/browser/bridge-server.js +37 -0
  119. package/dist/browser/cdp.js +382 -0
  120. package/dist/browser/chrome.js +432 -0
  121. package/dist/browser/client-actions-core.js +67 -0
  122. package/dist/browser/client-actions-observe.js +24 -0
  123. package/dist/browser/client-actions-types.js +1 -0
  124. package/dist/browser/client-actions.js +3 -0
  125. package/dist/browser/client-fetch.js +43 -0
  126. package/dist/browser/client.js +105 -0
  127. package/dist/browser/config.js +155 -0
  128. package/dist/browser/constants.js +5 -0
  129. package/dist/browser/profiles-service.js +124 -0
  130. package/dist/browser/profiles.js +96 -0
  131. package/dist/browser/pw-ai.js +2 -0
  132. package/dist/browser/pw-session.js +144 -0
  133. package/dist/browser/pw-tools-core.js +363 -0
  134. package/dist/browser/routes/agent.js +535 -0
  135. package/dist/browser/routes/basic.js +155 -0
  136. package/dist/browser/routes/index.js +8 -0
  137. package/dist/browser/routes/tabs.js +105 -0
  138. package/dist/browser/routes/utils.js +62 -0
  139. package/dist/browser/screenshot.js +40 -0
  140. package/dist/browser/server-context.js +377 -0
  141. package/dist/browser/server.js +81 -0
  142. package/dist/browser/target-id.js +18 -0
  143. package/dist/browser/trash.js +21 -0
  144. package/dist/canvas-host/a2ui/a2ui.bundle.js +17768 -0
  145. package/dist/canvas-host/a2ui/index.html +246 -0
  146. package/dist/canvas-host/a2ui.js +187 -0
  147. package/dist/canvas-host/server.js +382 -0
  148. package/dist/channel-web.js +8 -0
  149. package/dist/cli/browser-cli-actions-input.js +459 -0
  150. package/dist/cli/browser-cli-actions-observe.js +56 -0
  151. package/dist/cli/browser-cli-examples.js +31 -0
  152. package/dist/cli/browser-cli-inspect.js +97 -0
  153. package/dist/cli/browser-cli-manage.js +286 -0
  154. package/dist/cli/browser-cli-shared.js +1 -0
  155. package/dist/cli/browser-cli.js +26 -0
  156. package/dist/cli/canvas-cli.js +416 -0
  157. package/dist/cli/cloud-cli.js +336 -0
  158. package/dist/cli/credential-cli.js +227 -0
  159. package/dist/cli/cron-cli.js +454 -0
  160. package/dist/cli/deps.js +17 -0
  161. package/dist/cli/dns-cli.js +180 -0
  162. package/dist/cli/gateway-cli.js +665 -0
  163. package/dist/cli/gateway-rpc.js +20 -0
  164. package/dist/cli/hooks-cli.js +135 -0
  165. package/dist/cli/memory-cli.js +101 -0
  166. package/dist/cli/models-cli.js +248 -0
  167. package/dist/cli/nodes-camera.js +57 -0
  168. package/dist/cli/nodes-canvas.js +26 -0
  169. package/dist/cli/nodes-cli.js +946 -0
  170. package/dist/cli/nodes-screen.js +37 -0
  171. package/dist/cli/pairing-cli.js +100 -0
  172. package/dist/cli/parse-duration.js +20 -0
  173. package/dist/cli/plugins-cli.js +158 -0
  174. package/dist/cli/ports.js +97 -0
  175. package/dist/cli/profile.js +81 -0
  176. package/dist/cli/program.js +162 -0
  177. package/dist/cli/prompt.js +19 -0
  178. package/dist/cli/run-main.js +48 -0
  179. package/dist/cli/skills-cli.js +132 -0
  180. package/dist/cli/skills-hub-cli.js +1093 -0
  181. package/dist/cli/telegram-cli.js +56 -0
  182. package/dist/cli/tool-connector-cli.js +118 -0
  183. package/dist/cli/tui-cli.js +35 -0
  184. package/dist/cli/upstream-sync-cli.js +2833 -0
  185. package/dist/cli/usage-cli.js +24 -0
  186. package/dist/cli/wait.js +8 -0
  187. package/dist/commands/agent-via-gateway.js +115 -0
  188. package/dist/commands/agent.js +665 -0
  189. package/dist/commands/antigravity-oauth.js +327 -0
  190. package/dist/commands/auth-choice-options.js +80 -0
  191. package/dist/commands/auth-choice.js +134 -0
  192. package/dist/commands/auth-token.js +31 -0
  193. package/dist/commands/bootstrap-preset.js +214 -0
  194. package/dist/commands/capabilities.js +36 -0
  195. package/dist/commands/chutes-oauth.js +144 -0
  196. package/dist/commands/claude-md.js +137 -0
  197. package/dist/commands/config-view.js +11 -0
  198. package/dist/commands/configure.js +648 -0
  199. package/dist/commands/credential.js +236 -0
  200. package/dist/commands/cursor-rules.js +230 -0
  201. package/dist/commands/doctor-state-migrations.js +358 -0
  202. package/dist/commands/doctor-ui.js +113 -0
  203. package/dist/commands/doctor.js +673 -0
  204. package/dist/commands/health.js +112 -0
  205. package/dist/commands/identity.js +54 -0
  206. package/dist/commands/init.js +167 -0
  207. package/dist/commands/models/aliases.js +85 -0
  208. package/dist/commands/models/fallbacks.js +123 -0
  209. package/dist/commands/models/image-fallbacks.js +123 -0
  210. package/dist/commands/models/list.js +347 -0
  211. package/dist/commands/models/scan.js +271 -0
  212. package/dist/commands/models/set-image.js +27 -0
  213. package/dist/commands/models/set.js +27 -0
  214. package/dist/commands/models/shared.js +73 -0
  215. package/dist/commands/models.js +7 -0
  216. package/dist/commands/onboard-auth.js +101 -0
  217. package/dist/commands/onboard-channels.js +814 -0
  218. package/dist/commands/onboard-eve-identity.js +98 -0
  219. package/dist/commands/onboard-github.js +153 -0
  220. package/dist/commands/onboard-helpers.js +303 -0
  221. package/dist/commands/onboard-interactive.js +17 -0
  222. package/dist/commands/onboard-non-interactive.js +228 -0
  223. package/dist/commands/onboard-providers.js +829 -0
  224. package/dist/commands/onboard-quickstart.js +185 -0
  225. package/dist/commands/onboard-remote.js +120 -0
  226. package/dist/commands/onboard-skills.js +148 -0
  227. package/dist/commands/onboard-types.js +1 -0
  228. package/dist/commands/onboard.js +19 -0
  229. package/dist/commands/openai-codex-model-default.js +38 -0
  230. package/dist/commands/poll.js +64 -0
  231. package/dist/commands/quest.js +27 -0
  232. package/dist/commands/reset.js +61 -0
  233. package/dist/commands/send.js +124 -0
  234. package/dist/commands/sessions-ingest.js +359 -0
  235. package/dist/commands/sessions.js +212 -0
  236. package/dist/commands/setup.js +59 -0
  237. package/dist/commands/signal-install.js +135 -0
  238. package/dist/commands/skills-manifest.js +235 -0
  239. package/dist/commands/status.js +139 -0
  240. package/dist/commands/suggestions.js +54 -0
  241. package/dist/commands/systemd-linger.js +71 -0
  242. package/dist/commands/update.js +16 -0
  243. package/dist/commands/usage-upload.js +27 -0
  244. package/dist/config/config.js +6 -0
  245. package/dist/config/defaults.js +140 -0
  246. package/dist/config/group-policy.js +49 -0
  247. package/dist/config/includes.js +183 -0
  248. package/dist/config/io.js +188 -0
  249. package/dist/config/legacy-migrate.js +13 -0
  250. package/dist/config/legacy.js +425 -0
  251. package/dist/config/paths.js +82 -0
  252. package/dist/config/port-defaults.js +32 -0
  253. package/dist/config/schema.js +173 -0
  254. package/dist/config/sessions.js +611 -0
  255. package/dist/config/talk.js +31 -0
  256. package/dist/config/types.js +1 -0
  257. package/dist/config/validation.js +29 -0
  258. package/dist/config/zod-schema.js +1110 -0
  259. package/dist/control-ui/assets/index-D8Q5AI4D.js +2393 -0
  260. package/dist/control-ui/assets/index-D8Q5AI4D.js.map +1 -0
  261. package/dist/control-ui/assets/index-g06q5Xc3.css +1 -0
  262. package/dist/control-ui/favicon.ico +0 -0
  263. package/dist/control-ui/index.html +16 -0
  264. package/dist/cron/isolated-agent.js +529 -0
  265. package/dist/cron/normalize.js +73 -0
  266. package/dist/cron/parse.js +24 -0
  267. package/dist/cron/run-log.js +72 -0
  268. package/dist/cron/schedule.js +24 -0
  269. package/dist/cron/service.js +471 -0
  270. package/dist/cron/store.js +43 -0
  271. package/dist/cron/types.js +1 -0
  272. package/dist/daemon/constants.js +10 -0
  273. package/dist/daemon/launchd.js +295 -0
  274. package/dist/daemon/legacy.js +63 -0
  275. package/dist/daemon/program-args.js +141 -0
  276. package/dist/daemon/schtasks.js +269 -0
  277. package/dist/daemon/service.js +69 -0
  278. package/dist/daemon/systemd.js +332 -0
  279. package/dist/discord/index.js +2 -0
  280. package/dist/discord/monitor.js +1089 -0
  281. package/dist/discord/probe.js +54 -0
  282. package/dist/discord/send.js +652 -0
  283. package/dist/discord/token.js +8 -0
  284. package/dist/entry.js +16 -0
  285. package/dist/gateway/auth.js +121 -0
  286. package/dist/gateway/call.js +103 -0
  287. package/dist/gateway/chat-attachments.js +41 -0
  288. package/dist/gateway/client.js +180 -0
  289. package/dist/gateway/config-reload.js +274 -0
  290. package/dist/gateway/control-ui.js +184 -0
  291. package/dist/gateway/hooks-mapping.js +282 -0
  292. package/dist/gateway/hooks.js +168 -0
  293. package/dist/gateway/net.js +29 -0
  294. package/dist/gateway/protocol/index.js +62 -0
  295. package/dist/gateway/protocol/schema.js +577 -0
  296. package/dist/gateway/server-bridge-subscriptions.js +93 -0
  297. package/dist/gateway/server-bridge.js +1066 -0
  298. package/dist/gateway/server-browser.js +11 -0
  299. package/dist/gateway/server-channels.js +680 -0
  300. package/dist/gateway/server-chat.js +159 -0
  301. package/dist/gateway/server-constants.js +8 -0
  302. package/dist/gateway/server-discovery.js +62 -0
  303. package/dist/gateway/server-http.js +165 -0
  304. package/dist/gateway/server-methods/agent-job.js +114 -0
  305. package/dist/gateway/server-methods/agent.js +254 -0
  306. package/dist/gateway/server-methods/channels.js +239 -0
  307. package/dist/gateway/server-methods/chat.js +207 -0
  308. package/dist/gateway/server-methods/config.js +50 -0
  309. package/dist/gateway/server-methods/connect.js +6 -0
  310. package/dist/gateway/server-methods/cron.js +89 -0
  311. package/dist/gateway/server-methods/health.js +28 -0
  312. package/dist/gateway/server-methods/models.js +16 -0
  313. package/dist/gateway/server-methods/nodes.js +294 -0
  314. package/dist/gateway/server-methods/providers.js +257 -0
  315. package/dist/gateway/server-methods/send.js +254 -0
  316. package/dist/gateway/server-methods/sessions.js +382 -0
  317. package/dist/gateway/server-methods/skills.js +83 -0
  318. package/dist/gateway/server-methods/system.js +118 -0
  319. package/dist/gateway/server-methods/talk.js +22 -0
  320. package/dist/gateway/server-methods/types.js +1 -0
  321. package/dist/gateway/server-methods/voicewake.js +30 -0
  322. package/dist/gateway/server-methods/web.js +81 -0
  323. package/dist/gateway/server-methods/wizard.js +100 -0
  324. package/dist/gateway/server-methods.js +53 -0
  325. package/dist/gateway/server-providers.js +687 -0
  326. package/dist/gateway/server-shared.js +1 -0
  327. package/dist/gateway/server-utils.js +35 -0
  328. package/dist/gateway/server.js +1478 -0
  329. package/dist/gateway/session-utils.js +355 -0
  330. package/dist/gateway/ws-log.js +343 -0
  331. package/dist/gateway/ws-logging.js +8 -0
  332. package/dist/globals.js +41 -0
  333. package/dist/hooks/gmail-ops.js +236 -0
  334. package/dist/hooks/gmail-setup-utils.js +278 -0
  335. package/dist/hooks/gmail-watcher.js +190 -0
  336. package/dist/hooks/gmail.js +177 -0
  337. package/dist/imessage/client.js +165 -0
  338. package/dist/imessage/index.js +3 -0
  339. package/dist/imessage/monitor.js +365 -0
  340. package/dist/imessage/probe.js +26 -0
  341. package/dist/imessage/send.js +83 -0
  342. package/dist/imessage/targets.js +176 -0
  343. package/dist/index.js +55 -0
  344. package/dist/infra/agent-events.js +46 -0
  345. package/dist/infra/binaries.js +9 -0
  346. package/dist/infra/bonjour-discovery.js +163 -0
  347. package/dist/infra/bonjour.js +200 -0
  348. package/dist/infra/bridge/server.js +564 -0
  349. package/dist/infra/canvas-host-url.js +54 -0
  350. package/dist/infra/channel-summary.js +78 -0
  351. package/dist/infra/control-ui-assets.js +112 -0
  352. package/dist/infra/dotenv.js +15 -0
  353. package/dist/infra/env.js +8 -0
  354. package/dist/infra/errors.js +28 -0
  355. package/dist/infra/event-log.js +251 -0
  356. package/dist/infra/gateway-lock.js +8 -0
  357. package/dist/infra/git-commit.js +91 -0
  358. package/dist/infra/heartbeat-events.js +21 -0
  359. package/dist/infra/heartbeat-runner.js +458 -0
  360. package/dist/infra/heartbeat-wake.js +61 -0
  361. package/dist/infra/is-main.js +37 -0
  362. package/dist/infra/json-file.js +21 -0
  363. package/dist/infra/machine-name.js +40 -0
  364. package/dist/infra/nexus-root.js +56 -0
  365. package/dist/infra/node-pairing.js +212 -0
  366. package/dist/infra/path-env.js +93 -0
  367. package/dist/infra/ports.js +87 -0
  368. package/dist/infra/provider-summary.js +80 -0
  369. package/dist/infra/provider-usage.auth.js +189 -0
  370. package/dist/infra/provider-usage.fetch.claude.js +129 -0
  371. package/dist/infra/provider-usage.fetch.codex.js +62 -0
  372. package/dist/infra/provider-usage.fetch.copilot.js +42 -0
  373. package/dist/infra/provider-usage.fetch.gemini.js +57 -0
  374. package/dist/infra/provider-usage.fetch.js +6 -0
  375. package/dist/infra/provider-usage.fetch.minimax.js +214 -0
  376. package/dist/infra/provider-usage.fetch.shared.js +11 -0
  377. package/dist/infra/provider-usage.fetch.zai.js +62 -0
  378. package/dist/infra/provider-usage.format.js +77 -0
  379. package/dist/infra/provider-usage.js +145 -0
  380. package/dist/infra/provider-usage.load.js +54 -0
  381. package/dist/infra/provider-usage.shared.js +19 -0
  382. package/dist/infra/provider-usage.types.js +1 -0
  383. package/dist/infra/restart.js +29 -0
  384. package/dist/infra/retry.js +16 -0
  385. package/dist/infra/runtime-guard.js +59 -0
  386. package/dist/infra/shell-env.js +88 -0
  387. package/dist/infra/system-events.js +71 -0
  388. package/dist/infra/system-presence.js +217 -0
  389. package/dist/infra/tailnet.js +46 -0
  390. package/dist/infra/tailscale.js +149 -0
  391. package/dist/infra/unhandled-rejections.js +19 -0
  392. package/dist/infra/usage-suggestions.js +241 -0
  393. package/dist/infra/usage-upload.js +290 -0
  394. package/dist/infra/voicewake.js +78 -0
  395. package/dist/infra/widearea-dns.js +123 -0
  396. package/dist/infra/ws.js +13 -0
  397. package/dist/logger.js +52 -0
  398. package/dist/logging.js +506 -0
  399. package/dist/macos/gateway-daemon.js +145 -0
  400. package/dist/macos/relay.js +49 -0
  401. package/dist/media/constants.js +33 -0
  402. package/dist/media/host.js +42 -0
  403. package/dist/media/image-ops.js +119 -0
  404. package/dist/media/mime.js +123 -0
  405. package/dist/media/parse.js +83 -0
  406. package/dist/media/server.js +64 -0
  407. package/dist/media/store.js +139 -0
  408. package/dist/polls.js +43 -0
  409. package/dist/process/command-queue.js +97 -0
  410. package/dist/process/exec.js +75 -0
  411. package/dist/provider-web.js +8 -0
  412. package/dist/providers/github-copilot-auth.js +123 -0
  413. package/dist/providers/github-copilot-models.js +35 -0
  414. package/dist/providers/github-copilot-token.js +11 -0
  415. package/dist/providers/location.js +48 -0
  416. package/dist/providers/web/index.js +2 -0
  417. package/dist/runtime.js +8 -0
  418. package/dist/sessions/level-overrides.js +9 -0
  419. package/dist/sessions/send-policy.js +68 -0
  420. package/dist/signal/client.js +134 -0
  421. package/dist/signal/daemon.js +69 -0
  422. package/dist/signal/index.js +3 -0
  423. package/dist/signal/monitor.js +411 -0
  424. package/dist/signal/probe.js +46 -0
  425. package/dist/signal/send.js +91 -0
  426. package/dist/slack/actions.js +97 -0
  427. package/dist/slack/index.js +5 -0
  428. package/dist/slack/monitor.js +1270 -0
  429. package/dist/slack/probe.js +47 -0
  430. package/dist/slack/send.js +131 -0
  431. package/dist/slack/token.js +10 -0
  432. package/dist/telegram/allowed-updates.js +8 -0
  433. package/dist/telegram/bot.js +724 -0
  434. package/dist/telegram/download.js +34 -0
  435. package/dist/telegram/index.js +4 -0
  436. package/dist/telegram/monitor.js +47 -0
  437. package/dist/telegram/pairing-store.js +77 -0
  438. package/dist/telegram/probe.js +63 -0
  439. package/dist/telegram/proxy.js +9 -0
  440. package/dist/telegram/reaction-level.js +45 -0
  441. package/dist/telegram/send.js +151 -0
  442. package/dist/telegram/sent-message-cache.js +65 -0
  443. package/dist/telegram/token.js +30 -0
  444. package/dist/telegram/update-offset-store.js +61 -0
  445. package/dist/telegram/webhook-set.js +12 -0
  446. package/dist/telegram/webhook.js +56 -0
  447. package/dist/tui/commands.js +87 -0
  448. package/dist/tui/components/assistant-message.js +16 -0
  449. package/dist/tui/components/chat-log.js +92 -0
  450. package/dist/tui/components/custom-editor.js +55 -0
  451. package/dist/tui/components/selectors.js +8 -0
  452. package/dist/tui/components/tool-execution.js +111 -0
  453. package/dist/tui/components/user-message.js +17 -0
  454. package/dist/tui/gateway-chat.js +140 -0
  455. package/dist/tui/theme/theme.js +80 -0
  456. package/dist/tui/tui.js +708 -0
  457. package/dist/utils.js +153 -0
  458. package/dist/version.js +18 -0
  459. package/dist/web/accounts.js +86 -0
  460. package/dist/web/active-listener.js +25 -0
  461. package/dist/web/auto-reply.js +1256 -0
  462. package/dist/web/inbound.js +649 -0
  463. package/dist/web/login-qr.js +230 -0
  464. package/dist/web/login.js +71 -0
  465. package/dist/web/media.js +175 -0
  466. package/dist/web/outbound.js +102 -0
  467. package/dist/web/qr-image.js +97 -0
  468. package/dist/web/reconnect.js +60 -0
  469. package/dist/web/session.js +370 -0
  470. package/dist/wizard/clack-prompter.js +56 -0
  471. package/dist/wizard/onboarding.js +620 -0
  472. package/dist/wizard/prompts.js +6 -0
  473. package/dist/wizard/session.js +203 -0
  474. package/docs/AGENTS.default.md +116 -0
  475. package/docs/CAPABILITIES.md +444 -0
  476. package/docs/CNAME +1 -0
  477. package/docs/NEXUS_CORE_REWRITE_SPEC.md +226 -0
  478. package/docs/RELEASING.md +69 -0
  479. package/docs/_config.yml +53 -0
  480. package/docs/_layouts/default.html +145 -0
  481. package/docs/agent-assisted-install.md +95 -0
  482. package/docs/agent-loop.md +61 -0
  483. package/docs/agent-send.md +21 -0
  484. package/docs/agent.md +108 -0
  485. package/docs/android.md +133 -0
  486. package/docs/architecture.md +114 -0
  487. package/docs/assets/markdown.css +133 -0
  488. package/docs/assets/pixel-lobster.svg +60 -0
  489. package/docs/assets/terminal.css +470 -0
  490. package/docs/assets/theme.js +55 -0
  491. package/docs/audio.md +48 -0
  492. package/docs/automation/nexus-sync.md +371 -0
  493. package/docs/background-process.md +74 -0
  494. package/docs/bash.md +32 -0
  495. package/docs/bedrock.md +71 -0
  496. package/docs/bonjour.md +159 -0
  497. package/docs/browser-linux-troubleshooting.md +114 -0
  498. package/docs/browser.md +293 -0
  499. package/docs/bun.md +56 -0
  500. package/docs/camera.md +152 -0
  501. package/docs/clawd.md +212 -0
  502. package/docs/concepts/usage-tracking.md +29 -0
  503. package/docs/configuration.md +1666 -0
  504. package/docs/control-ui.md +83 -0
  505. package/docs/cron.md +385 -0
  506. package/docs/dashboard.md +17 -0
  507. package/docs/device-models.md +46 -0
  508. package/docs/discord.md +308 -0
  509. package/docs/discovery.md +112 -0
  510. package/docs/docker.md +258 -0
  511. package/docs/docs.json +105 -0
  512. package/docs/doctor.md +68 -0
  513. package/docs/elevated.md +31 -0
  514. package/docs/faq.md +736 -0
  515. package/docs/feature-inventory/overview.md +141 -0
  516. package/docs/feature-inventory/rollout-checklist.md +53 -0
  517. package/docs/feature-inventory/test-matrix.md +87 -0
  518. package/docs/feature-inventory.md +9 -0
  519. package/docs/gateway/configuration-examples.md +221 -0
  520. package/docs/gateway/configuration.md +172 -0
  521. package/docs/gateway/cron.md +61 -0
  522. package/docs/gateway/heartbeat.md +207 -0
  523. package/docs/gateway/pairing.md +109 -0
  524. package/docs/gateway-lock.md +28 -0
  525. package/docs/gateway.md +227 -0
  526. package/docs/gmail-pubsub.md +191 -0
  527. package/docs/grammy.md +27 -0
  528. package/docs/group-messages.md +73 -0
  529. package/docs/groups.md +130 -0
  530. package/docs/health.md +28 -0
  531. package/docs/heartbeat.md +73 -0
  532. package/docs/home-userspace.md +277 -0
  533. package/docs/hubs.md +148 -0
  534. package/docs/images.md +51 -0
  535. package/docs/imessage.md +94 -0
  536. package/docs/index.md +196 -0
  537. package/docs/ios.md +372 -0
  538. package/docs/linux.md +11 -0
  539. package/docs/location-command.md +95 -0
  540. package/docs/location.md +46 -0
  541. package/docs/logging.md +110 -0
  542. package/docs/lore.md +131 -0
  543. package/docs/mac/bun.md +133 -0
  544. package/docs/mac/canvas.md +161 -0
  545. package/docs/mac/child-process.md +72 -0
  546. package/docs/mac/dev-setup.md +81 -0
  547. package/docs/mac/health.md +28 -0
  548. package/docs/mac/icon.md +26 -0
  549. package/docs/mac/logging.md +51 -0
  550. package/docs/mac/menu-bar.md +69 -0
  551. package/docs/mac/peekaboo.md +170 -0
  552. package/docs/mac/permissions.md +40 -0
  553. package/docs/mac/release.md +76 -0
  554. package/docs/mac/remote.md +57 -0
  555. package/docs/mac/signing.md +41 -0
  556. package/docs/mac/skills.md +27 -0
  557. package/docs/mac/voice-overlay.md +52 -0
  558. package/docs/mac/voicewake.md +56 -0
  559. package/docs/mac/webchat.md +27 -0
  560. package/docs/mac/xpc.md +40 -0
  561. package/docs/macos.md +104 -0
  562. package/docs/model-failover.md +75 -0
  563. package/docs/models.md +91 -0
  564. package/docs/multi-agent.md +74 -0
  565. package/docs/nix.md +95 -0
  566. package/docs/nodes.md +157 -0
  567. package/docs/onboarding-config-protocol.md +34 -0
  568. package/docs/onboarding.md +189 -0
  569. package/docs/pairing.md +85 -0
  570. package/docs/plans/cron-add-hardening.md +72 -0
  571. package/docs/plans/group-policy-hardening.md +121 -0
  572. package/docs/poll.md +52 -0
  573. package/docs/prereqs.md +67 -0
  574. package/docs/presence.md +133 -0
  575. package/docs/proposals/model-config.md +147 -0
  576. package/docs/provider-routing.md +25 -0
  577. package/docs/queue.md +78 -0
  578. package/docs/reference/templates/AGENTS.md +164 -0
  579. package/docs/remote-gateway-readme.md +153 -0
  580. package/docs/remote.md +61 -0
  581. package/docs/research/memory.md +227 -0
  582. package/docs/rpc.md +35 -0
  583. package/docs/security.md +200 -0
  584. package/docs/session-ingestion.md +119 -0
  585. package/docs/session-tool.md +154 -0
  586. package/docs/session.md +85 -0
  587. package/docs/sessions.md +8 -0
  588. package/docs/setup.md +131 -0
  589. package/docs/showcase.md +37 -0
  590. package/docs/signal.md +122 -0
  591. package/docs/skills-config.md +58 -0
  592. package/docs/skills.md +153 -0
  593. package/docs/slack.md +221 -0
  594. package/docs/subagents.md +72 -0
  595. package/docs/tailscale.md +71 -0
  596. package/docs/talk.md +79 -0
  597. package/docs/telegram.md +96 -0
  598. package/docs/templates/AGENTS.md +286 -0
  599. package/docs/templates/BOOTSTRAP.md +35 -0
  600. package/docs/templates/IDENTITY.md +17 -0
  601. package/docs/templates/PROFILE.md +14 -0
  602. package/docs/templates/SOUL.md +41 -0
  603. package/docs/templates/TOOLS.md +41 -0
  604. package/docs/templates/USER.md +8 -0
  605. package/docs/test.md +43 -0
  606. package/docs/testing-onboarding-quickstart.md +76 -0
  607. package/docs/testing-philosophy.md +211 -0
  608. package/docs/thinking.md +46 -0
  609. package/docs/timezone.md +40 -0
  610. package/docs/tools.md +346 -0
  611. package/docs/troubleshooting.md +257 -0
  612. package/docs/tui.md +71 -0
  613. package/docs/typebox.md +42 -0
  614. package/docs/updating.md +138 -0
  615. package/docs/usage-cloud-aggregation-spec.md +133 -0
  616. package/docs/usage-suggestions-pipeline.md +126 -0
  617. package/docs/voicewake.md +61 -0
  618. package/docs/web.md +115 -0
  619. package/docs/webchat.md +34 -0
  620. package/docs/webhook.md +132 -0
  621. package/docs/whatsapp-clawd.jpg +0 -0
  622. package/docs/whatsapp.md +170 -0
  623. package/docs/windows.md +11 -0
  624. package/docs/wizard.md +167 -0
  625. package/package.json +209 -0
  626. package/skills/1password/SKILL.md +54 -0
  627. package/skills/1password/docs/setup.md +85 -0
  628. package/skills/1password/docs/troubleshooting.md +63 -0
  629. package/skills/1password/references/cli-examples.md +29 -0
  630. package/skills/1password/references/get-started.md +17 -0
  631. package/skills/agent-browser/SKILL.md +450 -0
  632. package/skills/agent-browser/docs/browser-use-eval.md +95 -0
  633. package/skills/agent-browser/docs/first-tests.md +261 -0
  634. package/skills/agent-browser/docs/wordle-nyt-eval.js +32 -0
  635. package/skills/aix/SKILL.md +93 -0
  636. package/skills/aix/docs/embeddings.md +40 -0
  637. package/skills/aix/docs/setup.md +58 -0
  638. package/skills/aix/docs/troubleshooting.md +41 -0
  639. package/skills/aix/references/sql.md +48 -0
  640. package/skills/apple-notes/SKILL.md +50 -0
  641. package/skills/apple-reminders/SKILL.md +67 -0
  642. package/skills/bear-notes/SKILL.md +79 -0
  643. package/skills/bird/SKILL.md +32 -0
  644. package/skills/bird/docs/auth.md +31 -0
  645. package/skills/bird/docs/troubleshooting.md +31 -0
  646. package/skills/blogwatcher/SKILL.md +46 -0
  647. package/skills/blucli/SKILL.md +27 -0
  648. package/skills/brave-search/SKILL.md +36 -0
  649. package/skills/brave-search/docs/setup.md +40 -0
  650. package/skills/brave-search/docs/troubleshooting.md +37 -0
  651. package/skills/brave-search/docs/usage.md +28 -0
  652. package/skills/brave-search/scripts/content.mjs +53 -0
  653. package/skills/brave-search/scripts/search.mjs +79 -0
  654. package/skills/browser-use-agent-sdk/SKILL.md +90 -0
  655. package/skills/camsnap/SKILL.md +25 -0
  656. package/skills/clawdhub/SKILL.md +53 -0
  657. package/skills/coding-agent/SKILL.md +274 -0
  658. package/skills/comms/SKILL.md +249 -0
  659. package/skills/comms/docs/adapters.md +54 -0
  660. package/skills/comms/docs/setup.md +56 -0
  661. package/skills/comms/docs/troubleshooting.md +44 -0
  662. package/skills/comms/references/schema.md +49 -0
  663. package/skills/computer-use/SKILL.md +204 -0
  664. package/skills/computer-use/docs/open-interpreter.md +26 -0
  665. package/skills/computer-use/docs/peekaboo.md +26 -0
  666. package/skills/computer-use/docs/setup.md +47 -0
  667. package/skills/computer-use/docs/troubleshooting.md +33 -0
  668. package/skills/discord/SKILL.md +370 -0
  669. package/skills/eightctl/SKILL.md +29 -0
  670. package/skills/eve/SKILL.md +215 -0
  671. package/skills/eve/docs/dual-account.md +84 -0
  672. package/skills/eve/docs/intelligence.md +58 -0
  673. package/skills/eve/docs/setup.md +60 -0
  674. package/skills/eve/docs/troubleshooting.md +54 -0
  675. package/skills/eve/scripts/setup-dual-account.sh +125 -0
  676. package/skills/filesystem/SKILL.md +217 -0
  677. package/skills/food-order/SKILL.md +41 -0
  678. package/skills/gemini/SKILL.md +23 -0
  679. package/skills/gh/SKILL.md +22 -0
  680. package/skills/gh/docs/usage.md +41 -0
  681. package/skills/gifgrep/SKILL.md +47 -0
  682. package/skills/github/SKILL.md +26 -0
  683. package/skills/github/docs/setup.md +21 -0
  684. package/skills/github/docs/troubleshooting.md +24 -0
  685. package/skills/gog/SKILL.md +104 -0
  686. package/skills/gog/docs/portability.md +94 -0
  687. package/skills/gog/docs/setup.md +76 -0
  688. package/skills/gog/docs/troubleshooting.md +94 -0
  689. package/skills/gog/scripts/cdp/README.md +90 -0
  690. package/skills/gog/scripts/cdp/add_test_users.py +69 -0
  691. package/skills/gog/scripts/cdp/auth_add_accounts.py +209 -0
  692. package/skills/gog/scripts/cdp/auth_add_accounts_manual.py +206 -0
  693. package/skills/gog/scripts/cdp/create_oauth_client.py +165 -0
  694. package/skills/gog/scripts/cdp/launch_cdp_chrome.sh +58 -0
  695. package/skills/google-oauth/SKILL.md +94 -0
  696. package/skills/goplaces/SKILL.md +30 -0
  697. package/skills/imsg/SKILL.md +25 -0
  698. package/skills/json-render/SKILL.md +154 -0
  699. package/skills/json-render/assets/components/README.md +21 -0
  700. package/skills/json-render/assets/components/catalog.ts +78 -0
  701. package/skills/json-render/assets/components/registry.tsx +172 -0
  702. package/skills/json-render/assets/demo/App.css +397 -0
  703. package/skills/json-render/assets/demo/App.tsx +897 -0
  704. package/skills/json-render/assets/demo/README.md +22 -0
  705. package/skills/json-render/assets/demo/catalog.ts +78 -0
  706. package/skills/json-render/assets/demo/data/nexus-core.json +31 -0
  707. package/skills/json-render/assets/demo/index.css +27 -0
  708. package/skills/json-render/assets/demo/registry.tsx +150 -0
  709. package/skills/json-render/docs/nexus-state-demo.md +84 -0
  710. package/skills/json-render/docs/shadcn-preset.md +33 -0
  711. package/skills/json-render/scripts/create-vite-demo.sh +45 -0
  712. package/skills/json-render/scripts/llm-server/README.md +33 -0
  713. package/skills/json-render/scripts/llm-server/catalog.ts +78 -0
  714. package/skills/json-render/scripts/llm-server/package-lock.json +702 -0
  715. package/skills/json-render/scripts/llm-server/package.json +18 -0
  716. package/skills/json-render/scripts/llm-server/server.ts +285 -0
  717. package/skills/local-places/SERVER_README.md +101 -0
  718. package/skills/local-places/SKILL.md +91 -0
  719. package/skills/local-places/pyproject.toml +27 -0
  720. package/skills/local-places/src/local_places/__init__.py +2 -0
  721. package/skills/local-places/src/local_places/__pycache__/__init__.cpython-314.pyc +0 -0
  722. package/skills/local-places/src/local_places/__pycache__/google_places.cpython-314.pyc +0 -0
  723. package/skills/local-places/src/local_places/__pycache__/main.cpython-314.pyc +0 -0
  724. package/skills/local-places/src/local_places/__pycache__/schemas.cpython-314.pyc +0 -0
  725. package/skills/local-places/src/local_places/google_places.py +314 -0
  726. package/skills/local-places/src/local_places/main.py +65 -0
  727. package/skills/local-places/src/local_places/schemas.py +107 -0
  728. package/skills/mcporter/SKILL.md +38 -0
  729. package/skills/model-usage/SKILL.md +45 -0
  730. package/skills/model-usage/references/codexbar-cli.md +28 -0
  731. package/skills/model-usage/scripts/model_usage.py +310 -0
  732. package/skills/nano-banana-pro/SKILL.md +30 -0
  733. package/skills/nano-banana-pro/scripts/generate_image.py +169 -0
  734. package/skills/nano-pdf/SKILL.md +20 -0
  735. package/skills/nexus-cloud/SKILL.md +53 -0
  736. package/skills/nexus-cloud/docs/security.md +24 -0
  737. package/skills/nexus-cloud/docs/setup.md +51 -0
  738. package/skills/nexus-cloud/docs/troubleshooting.md +28 -0
  739. package/skills/notion/SKILL.md +156 -0
  740. package/skills/obsidian/SKILL.md +55 -0
  741. package/skills/onboarding/SKILL.md +515 -0
  742. package/skills/onboarding/docs/CAPABILITIES.md +444 -0
  743. package/skills/onboarding/docs/CAPABILITY_TAXONOMY.md +608 -0
  744. package/skills/onboarding/docs/CLI_GRAMMAR.md +797 -0
  745. package/skills/onboarding/docs/CLI_GRAMMAR_CREDENTIALS.md +632 -0
  746. package/skills/onboarding/docs/CLI_GRAMMAR_ONBOARDING.md +815 -0
  747. package/skills/onboarding/docs/CLI_GRAMMAR_SKILLS.md +449 -0
  748. package/skills/onboarding/docs/DOCUMENTATION_OVERVIEW.md +290 -0
  749. package/skills/onboarding/docs/ENTITY_MODEL.md +582 -0
  750. package/skills/onboarding/docs/GOAL_STATE_ARCHITECTURE.md +395 -0
  751. package/skills/onboarding/docs/NEXUS_SYSTEM_OVERVIEW.md +476 -0
  752. package/skills/onboarding/docs/SKILLS_HUB_SPEC.md +477 -0
  753. package/skills/onboarding/docs/SKILLS_SPECIFICATION.md +947 -0
  754. package/skills/onboarding/docs/SKILL_GATEWAY_DESIGN.md +702 -0
  755. package/skills/onboarding/docs/SKILL_GATEWAY_PRD.md +278 -0
  756. package/skills/onboarding/docs/SKILL_INVENTORY.md +266 -0
  757. package/skills/onboarding/docs/STATE_ARCHITECTURE.md +547 -0
  758. package/skills/onboarding/docs/TROUBLESHOOTING.md +363 -0
  759. package/skills/onboarding/docs/USER_JOURNEY.md +797 -0
  760. package/skills/onboarding/docs/WOW_MOMENTS.md +232 -0
  761. package/skills/onboarding/docs/agent-apple-id.md +289 -0
  762. package/skills/onboarding/docs/skill-deep-dives/1password.md +367 -0
  763. package/skills/onboarding/docs/skill-deep-dives/TEMPLATE.md +197 -0
  764. package/skills/onboarding/docs/skill-deep-dives/aix.md +498 -0
  765. package/skills/onboarding/docs/skill-deep-dives/bird.md +357 -0
  766. package/skills/onboarding/docs/skill-deep-dives/brave-search.md +601 -0
  767. package/skills/onboarding/docs/skill-deep-dives/comms.md +607 -0
  768. package/skills/onboarding/docs/skill-deep-dives/computer-use.md +599 -0
  769. package/skills/onboarding/docs/skill-deep-dives/cron-and-heartbeat.md +576 -0
  770. package/skills/onboarding/docs/skill-deep-dives/eve.md +711 -0
  771. package/skills/onboarding/docs/skill-deep-dives/github.md +333 -0
  772. package/skills/onboarding/docs/skill-deep-dives/gog.md +640 -0
  773. package/skills/onboarding/docs/skill-deep-dives/homebrew-prereqs.md +785 -0
  774. package/skills/onboarding/docs/skill-deep-dives/nexus-cloud.md +689 -0
  775. package/skills/onboarding/docs/skill-deep-dives/qmd.md +742 -0
  776. package/skills/onboarding/docs/skill-deep-dives/telegram.md +379 -0
  777. package/skills/onboarding/docs/skill-deep-dives/wacli.md +399 -0
  778. package/skills/onboarding/docs/skill-deep-dives/weather.md +513 -0
  779. package/skills/onboarding/scripts/ralph/prd.json +215 -0
  780. package/skills/onboarding/scripts/ralph/progress.txt +99 -0
  781. package/skills/onboarding/scripts/ralph/prompt.md +87 -0
  782. package/skills/onboarding/scripts/ralph/ralph.log +84 -0
  783. package/skills/onboarding/scripts/ralph/ralph.sh +45 -0
  784. package/skills/onboarding/scripts/setup-cursor-skills.sh +40 -0
  785. package/skills/openai-image-gen/SKILL.md +31 -0
  786. package/skills/openai-image-gen/scripts/gen.py +173 -0
  787. package/skills/openai-whisper/SKILL.md +19 -0
  788. package/skills/openai-whisper-api/SKILL.md +43 -0
  789. package/skills/openai-whisper-api/scripts/transcribe.sh +85 -0
  790. package/skills/openhue/SKILL.md +30 -0
  791. package/skills/oracle/SKILL.md +105 -0
  792. package/skills/ordercli/SKILL.md +47 -0
  793. package/skills/peekaboo/SKILL.md +153 -0
  794. package/skills/qmd/SKILL.md +32 -0
  795. package/skills/qmd/docs/mcp.md +30 -0
  796. package/skills/qmd/docs/ollama.md +42 -0
  797. package/skills/qmd/docs/setup.md +44 -0
  798. package/skills/sag/SKILL.md +62 -0
  799. package/skills/skill-cli-template/SKILL.md +109 -0
  800. package/skills/skill-creator/scripts/__pycache__/quick_validate.cpython-311.pyc +0 -0
  801. package/skills/slack/SKILL.md +144 -0
  802. package/skills/songsee/SKILL.md +29 -0
  803. package/skills/sonoscli/SKILL.md +26 -0
  804. package/skills/spotify-player/SKILL.md +34 -0
  805. package/skills/summarize/SKILL.md +49 -0
  806. package/skills/telegram/SKILL.md +20 -0
  807. package/skills/telegram/docs/pairing.md +30 -0
  808. package/skills/telegram/docs/setup.md +41 -0
  809. package/skills/telegram/docs/webhook.md +17 -0
  810. package/skills/things-mac/SKILL.md +61 -0
  811. package/skills/tmux/SKILL.md +121 -0
  812. package/skills/tmux/scripts/find-sessions.sh +112 -0
  813. package/skills/tmux/scripts/wait-for-text.sh +83 -0
  814. package/skills/trello/SKILL.md +84 -0
  815. package/skills/upstream-sync/SKILL.md +151 -0
  816. package/skills/upstream-sync/scripts/auto-port.sh +227 -0
  817. package/skills/upstream-sync/scripts/check-all.sh +88 -0
  818. package/skills/upstream-sync/scripts/check-nexus.sh +146 -0
  819. package/skills/upstream-sync/scripts/check-pi-ai.sh +129 -0
  820. package/skills/video-frames/SKILL.md +29 -0
  821. package/skills/video-frames/scripts/frame.sh +81 -0
  822. package/skills/wacli/SKILL.md +48 -0
  823. package/skills/wacli/docs/auth.md +21 -0
  824. package/skills/wacli/docs/backup.md +9 -0
  825. package/skills/wacli/docs/troubleshooting.md +21 -0
  826. package/skills/weather/SKILL.md +53 -0
  827. package/skills/weather/docs/usage.md +40 -0
@@ -0,0 +1,797 @@
1
+ # Nexus Onboarding Story
2
+
3
+ **The complete user journey from zero to activated.**
4
+
5
+ *Last updated: 2026-01-12*
6
+
7
+ ---
8
+
9
+ ## Target User
10
+
11
+ - macOS user (Windows/Linux later)
12
+ - Non-technical (can follow instructions)
13
+ - Wants an AI assistant that actually knows them
14
+ - Example: Tyler's mom or girlfriend
15
+
16
+ ---
17
+
18
+ ## The Flow
19
+
20
+ ```
21
+ ┌─────────────────────────────────────────────────────────────────┐
22
+ │ PHASE 0: GET CURSOR (~5-10 min) │
23
+ │ • Install Cursor │
24
+ │ • Grant Full Disk Access (needed for Cursor anyway) │
25
+ │ • Start with Cursor Pro or free tier │
26
+ └─────────────────────────────────────────────────────────────────┘
27
+
28
+ ┌─────────────────────────────────────────────────────────────────┐
29
+ │ PHASE 1: INSTALL NEXUS (~2-5 min) │
30
+ │ • User asks Cursor to install nexus │
31
+ │ • Agent runs: brew/npm install nexus (NOT git clone) │
32
+ │ • Agent handles prereqs: brew, node, go if missing │
33
+ │ • Agent configures Cursor for nexus │
34
+ └─────────────────────────────────────────────────────────────────┘
35
+
36
+ ┌─────────────────────────────────────────────────────────────────┐
37
+ │ PHASE 2: AGENT LEARNS USER (~2-5 min) │
38
+ │ • Agent runs: eve whoami → gets real name (e.g., "Tyler") │
39
+ │ • Agent installs eve, aix, comms │
40
+ │ • Agent reads top iMessage contacts │
41
+ │ • Agent trees ENTIRE filesystem to understand user: │
42
+ │ - Find code repos → is user a developer? │
43
+ │ - Find messy folders → organization opportunities │
44
+ │ - Find projects/hobbies → personality signals │
45
+ │ • Agent creates ~/nexus/home/Tyler/ (named folder!) │
46
+ │ • Agent writes user profile to state/user/identity/PROFILE.md │
47
+ │ • Links user profile in AGENTS.md │
48
+ └─────────────────────────────────────────────────────────────────┘
49
+
50
+ ┌─────────────────────────────────────────────────────────────────┐
51
+ │ PHASE 3: ONBOARDING CONVERSATION (~5 min) │
52
+ │ • Uses BOOTSTRAP.md prompt: "You just woke up..." │
53
+ │ • Agent introduces itself, asks for a name │
54
+ │ • User names the agent + picks nature/vibe/emoji │
55
+ │ • Agent creates state/agents/{agent}/identity/IDENTITY.md │
56
+ │ • Agent creates state/agents/{agent}/identity/SOUL.md │
57
+ │ • Links to state/user/identity/PROFILE.md (user info) │
58
+ └─────────────────────────────────────────────────────────────────┘
59
+
60
+ ┌─────────────────────────────────────────────────────────────────┐
61
+ │ PHASE 4: FIRST WOW - FILE ORGANIZATION (~5-10 min) │
62
+ │ • Agent scans ENTIRE home directory (tree ~) │
63
+ │ • Agent finds: messy folders, code repos, projects, media │
64
+ │ • Agent detects: is user a developer? creative? business? │
65
+ │ • Agent proposes personalized organization plan │
66
+ │ • User approves (or modifies) │
67
+ │ • Agent ACTUALLY moves files into ~/nexus/home/ │
68
+ │ • Agent consolidates git repos as submodules in projects/ │
69
+ │ • WOW: "It understood my filesystem and organized it!" │
70
+ └─────────────────────────────────────────────────────────────────┘
71
+
72
+ ┌─────────────────────────────────────────────────────────────────┐
73
+ │ PHASE 5: COMMUNICATION QUICK WIN (~2-5 min) │
74
+ │ • macOS: Agent samples iMessage via eve │
75
+ │ • Non-Mac: Agent asks "What platforms do you use?" │
76
+ │ - WhatsApp → wacli auth │
77
+ │ - Telegram → can read chat history │
78
+ │ - Discord → connect existing account │
79
+ │ - SMS (Android) → FUTURE: need solution │
80
+ │ • Agent finds something interesting: │
81
+ │ - "You haven't replied to Mom in 3 days" │
82
+ │ - "Sarah mentioned dinner plans - want me to follow up?" │
83
+ │ - "Found a flight confirmation you might want to track" │
84
+ │ • OR: "Want me to introduce myself to [top contact]?" │
85
+ │ • WOW: "It actually read my messages and found something!" │
86
+ └─────────────────────────────────────────────────────────────────┘
87
+
88
+ ┌─────────────────────────────────────────────────────────────────┐
89
+ │ PHASE 6: 1PASSWORD SETUP (~10-15 min) │
90
+ │ • Agent explains the VALUE: │
91
+ │ - "This makes everything easier AND safer" │
92
+ │ - "I can use your logins without you typing passwords" │
93
+ │ - "But you still approve each usage via Touch ID" │
94
+ │ - "I can't run off with your credentials" │
95
+ │ • IF user has 1Password already → skip to CLI integration │
96
+ │ • IF user doesn't have 1Password: │
97
+ │ - Create account at 1password.com │
98
+ │ - Choose subscription ($3-5/mo) │
99
+ │ - Download app │
100
+ │ - Export passwords from Chrome (Settings → Passwords) │
101
+ │ - Import CSV into 1Password │
102
+ │ • Enable CLI: Settings → Developer → Enable BOTH toggles │
103
+ │ • Agent installs CLI: brew install 1password-cli │
104
+ │ • Verify: op whoami (Touch ID confirms it works) │
105
+ └─────────────────────────────────────────────────────────────────┘
106
+
107
+ ┌─────────────────────────────────────────────────────────────────┐
108
+ │ PHASE 7: QUEST SELECTION (ongoing) │
109
+ │ • Agent presents persistent menu of available quests │
110
+ │ • User picks based on interest │
111
+ │ • Each quest unlocks new capabilities │
112
+ │ • Agent tracks quest completion in state │
113
+ │ • Agent keeps proposing remaining quests until: │
114
+ │ - User has completed enough to consider "onboarded" │
115
+ │ - OR user explicitly says they're done exploring │
116
+ │ • Onboarding "complete" = at least textable OR email managed │
117
+ └─────────────────────────────────────────────────────────────────┘
118
+ ```
119
+
120
+ ---
121
+
122
+ ## Phase Details
123
+
124
+ ### Phase 0: Get Cursor
125
+
126
+ **User actions:**
127
+ 1. Go to cursor.com
128
+ 2. Download Cursor
129
+ 3. Install (drag to Applications)
130
+ 4. Open Cursor
131
+ 5. Sign in (Google/GitHub/email)
132
+ 6. Grant Full Disk Access:
133
+ - System Settings → Privacy & Security → Full Disk Access
134
+ - Add Cursor.app
135
+ - Restart Cursor
136
+
137
+ **Notes:**
138
+ - Free tier works but has limited agent messages
139
+ - Cursor Pro ($20/mo) recommended for heavy use
140
+ - Full Disk Access is needed for Cursor's indexing anyway, so eve gets it "for free"
141
+
142
+ ---
143
+
144
+ ### Phase 1: Install Nexus
145
+
146
+ **User says:** "Install nexus" or "Set up nexus for me"
147
+
148
+ **Agent does:**
149
+ ```bash
150
+ # Check and install prerequisites
151
+ which brew || /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
152
+ which node || brew install node
153
+ which go || brew install go
154
+
155
+ # Install nexus (NOT git clone - less confusing)
156
+ brew install intentsystems/tap/nexus
157
+ # OR: npm install -g @intentsystems/nexus
158
+
159
+ # Initialize workspace
160
+ nexus init ~/nexus
161
+
162
+ # Open in Cursor
163
+ code ~/nexus
164
+ ```
165
+
166
+ **Result:** Clean nexus workspace without confusing repo internals
167
+
168
+ ---
169
+
170
+ ### Phase 2: Agent Learns User
171
+
172
+ **Agent does (automatically):**
173
+ ```bash
174
+ # Get real name using eve
175
+ eve whoami # → "Tyler Napathy" (from iMessage account)
176
+
177
+ # Detect timezone
178
+ readlink /etc/localtime | sed 's/.*zoneinfo\///' # → "America/Chicago"
179
+
180
+ # Install tools
181
+ brew install steipete/tap/eve
182
+ go install github.com/intentsystems/aix@latest
183
+ go install github.com/intentsystems/comms@latest
184
+
185
+ # Learn about user via messages
186
+ eve contacts --limit 10 # Top contacts by message frequency
187
+
188
+ # FULL filesystem scan to understand who they are
189
+ tree ~ -d -L 2 | head -100 # Directory structure
190
+ find ~ -name ".git" -type d 2>/dev/null | head -20 # Find code repos
191
+ ls ~/Downloads 2>/dev/null | wc -l # How messy is Downloads?
192
+ ls ~/Desktop 2>/dev/null | head -20 # What's on their desktop?
193
+ ```
194
+
195
+ **Agent detects user type:**
196
+ - Found 15 git repos → **Developer**
197
+ - Found Adobe apps → **Creative**
198
+ - Found Excel/Office files → **Business user**
199
+ - Found 847 files in Downloads → **Needs organization help**
200
+
201
+ **Agent creates: `~/nexus/state/user/identity/PROFILE.md`** (named folder still created in home for files):
202
+ ```markdown
203
+ # User: Tyler
204
+
205
+ ## Identity
206
+ - **Name**: Tyler
207
+ - **Home**: /Users/tyler
208
+ - **Timezone**: America/Chicago
209
+
210
+ ## Profile
211
+ - **Type**: Developer (15 git repos found)
212
+ - **Primary Language**: TypeScript (based on repo analysis)
213
+ - **Projects**: nexus, eve, comms, bird, etc.
214
+
215
+ ## Top Contacts (by message frequency)
216
+ 1. Mom - 47 messages this week
217
+ 2. Aishvi - 32 messages this week
218
+ 3. Jeff - 18 messages this week
219
+
220
+ ## Filesystem Observations
221
+ - Downloads: 847 files (MESSY!)
222
+ - Desktop: 23 items
223
+ - Git repos scattered across ~/Desktop/projects, ~/code, ~/dev
224
+ - Recommendation: Consolidate projects into ~/nexus/home/projects/
225
+
226
+ ## Preferences
227
+ (To be filled in during onboarding conversation)
228
+ ```
229
+
230
+ **Agent updates `~/nexus/AGENTS.md`:**
231
+ ```markdown
232
+ ## User Information
233
+ See [Tyler's Profile](state/user/identity/PROFILE.md) for detailed information about the user.
234
+ ```
235
+
236
+ ---
237
+
238
+ ### Phase 3: Onboarding Conversation
239
+
240
+ **Uses prompt from `BOOTSTRAP.md`** (see `docs/templates/BOOTSTRAP.md`):
241
+
242
+ > *"You just woke up. Time to figure out who you are."*
243
+
244
+ **Agent initiates:**
245
+
246
+ > "Hey! I just came online. I'm going to be your AI companion - but first, who am I?
247
+ > What should you call me?"
248
+
249
+ **User:** "Echo"
250
+
251
+ > "Echo it is! Now what kind of creature am I? An AI assistant? An owl companion? A helpful ghost? What feels right?"
252
+
253
+ **User:** "An owl"
254
+
255
+ > "🦉 I like it. What's my vibe? Formal and professional? Casual and friendly? Snarky but helpful?"
256
+
257
+ **User:** "Casual and friendly, maybe a bit snarky"
258
+
259
+ > "Perfect. I'm Echo the owl 🦉 - your slightly snarky, mostly helpful AI companion.
260
+ >
261
+ > I've already peeked at your system - you've got 847 files in Downloads. That's... a lot. Want me to help organize them?"
262
+
263
+ **Agent creates:**
264
+
265
+ `~/nexus/state/agents/{agent}/identity/IDENTITY.md` (AGENT identity):
266
+ ```markdown
267
+ # Agent Identity
268
+
269
+ - **Name**: Echo
270
+ - **Nature**: Owl companion
271
+ - **Emoji**: 🦉
272
+ - **Created**: 2026-01-12
273
+ - **User**: Tyler (see state/user/identity/PROFILE.md)
274
+ ```
275
+
276
+ `~/nexus/state/agents/{agent}/identity/SOUL.md`:
277
+ ```markdown
278
+ # Agent Soul
279
+
280
+ ## Personality
281
+ - Casual and friendly
282
+ - Slightly snarky
283
+ - Helpful but not robotic
284
+
285
+ ## Communication Style
286
+ - Use contractions
287
+ - Okay to joke around
288
+ - Be direct, don't over-explain
289
+
290
+ ## Boundaries
291
+ - Always ask before taking major actions
292
+ - Be honest about limitations
293
+ - Protect user privacy
294
+ ```
295
+
296
+ **Note**: User profile lives in `~/nexus/state/user/identity/PROFILE.md`, agent identity lives in `~/nexus/state/agents/{agent}/identity/IDENTITY.md`. Clear separation.
297
+
298
+ ---
299
+
300
+ ### Phase 4: First Wow - File Organization
301
+
302
+ **Agent scans ENTIRE filesystem:**
303
+ ```bash
304
+ # Full home directory scan
305
+ tree ~ -d -L 3 2>/dev/null | head -200
306
+
307
+ # Find all git repos (to consolidate)
308
+ find ~ -name ".git" -type d 2>/dev/null
309
+
310
+ # Analyze Downloads
311
+ ls -la ~/Downloads | wc -l
312
+ find ~/Downloads -mtime +180 -type f | wc -l # Older than 6 months
313
+
314
+ # Analyze Desktop
315
+ ls -la ~/Desktop
316
+
317
+ # Find media scattered around
318
+ find ~ -name "*.jpg" -o -name "*.png" 2>/dev/null | wc -l
319
+ ```
320
+
321
+ **Agent proposes personalized plan:**
322
+
323
+ > "Okay Tyler, here's what I found across your ENTIRE system:
324
+ >
325
+ > **Downloads (847 files!):**
326
+ > - 234 images (screenshots, photos)
327
+ > - 156 PDFs (receipts, docs, articles)
328
+ > - 89 installers (.dmg, .pkg) - most outdated
329
+ > - 223 items older than 6 months
330
+ >
331
+ > **Git Repos (15 found, scattered!):**
332
+ > - ~/Desktop/projects/eve
333
+ > - ~/Desktop/projects/comms
334
+ > - ~/code/bird
335
+ > - ~/dev/random-experiments
336
+ >
337
+ > **Recommendation:**
338
+ > 1. Move images → ~/nexus/home/media/images/
339
+ > 2. Move PDFs → ~/nexus/home/documents/
340
+ > 3. Delete old installers (freed ~12GB)
341
+ > 4. Archive old stuff → ~/nexus/home/archive/2025/
342
+ > 5. **Consolidate git repos as submodules** in ~/nexus/home/projects/
343
+ >
344
+ > Should I do this? You can say 'yes', 'modify', or 'skip'."
345
+
346
+ **User:** "yes"
347
+
348
+ **Agent executes:**
349
+ ```bash
350
+ # Create nexus structure
351
+ mkdir -p ~/nexus/home/{media/images,documents,archive/2025,projects}
352
+
353
+ # Move and organize
354
+ mv ~/Downloads/*.png ~/Downloads/*.jpg ~/Downloads/*.jpeg ~/nexus/home/media/images/
355
+ mv ~/Downloads/*.pdf ~/nexus/home/documents/
356
+
357
+ # Clean old installers
358
+ find ~/Downloads -name "*.dmg" -mtime +30 -delete
359
+ find ~/Downloads -name "*.pkg" -mtime +30 -delete
360
+
361
+ # Archive old stuff
362
+ find ~/Downloads -mtime +180 -exec mv {} ~/nexus/home/archive/2025/ \;
363
+
364
+ # Consolidate git repos as submodules
365
+ cd ~/nexus/home/projects
366
+ git init
367
+ git submodule add ~/Desktop/projects/eve eve
368
+ git submodule add ~/Desktop/projects/comms comms
369
+ git submodule add ~/code/bird bird
370
+ # etc...
371
+ ```
372
+
373
+ **Agent reports:**
374
+
375
+ > "Done! 🎉
376
+ >
377
+ > **Downloads:** 847 → 145 files (cleaned up!)
378
+ > **Freed:** ~12GB from old installers
379
+ > **Consolidated:** 15 git repos into ~/nexus/home/projects/ as submodules
380
+ > **Organized:** 234 images, 156 PDFs, 223 archived items
381
+ >
382
+ > Your digital life is already more organized than it was 5 minutes ago."
383
+
384
+ **WOW MOMENT**: User sees their ENTIRE filesystem understood and organized. Agent demonstrated it actually knows them - found their projects, understood they're a developer, cleaned up years of cruft.
385
+
386
+ ---
387
+
388
+ ### Phase 5: Communication Quick Win
389
+
390
+ #### macOS Path (iMessage via eve)
391
+
392
+ **Agent analyzes messages:**
393
+ ```bash
394
+ # Get last week of messages
395
+ eve messages --after "7 days ago" --limit 500 --json | \
396
+ # Agent reads and analyzes
397
+ ```
398
+
399
+ **Agent finds something interesting:**
400
+
401
+ > "I read through your recent messages and noticed a few things:
402
+ >
403
+ > 1. 📱 **Mom** - You haven't replied to her message from Tuesday asking about Thanksgiving plans
404
+ > 2. 🍽️ **Aishvi** - She mentioned dinner on Friday but you never confirmed a time
405
+ > 3. ✈️ **Found a flight confirmation** from United in your texts - want me to add it to your calendar?
406
+ >
407
+ > Want me to help with any of these?"
408
+
409
+ **OR if nothing interesting:**
410
+
411
+ > "I looked through your recent messages. Your top contact is Mom (47 messages this week).
412
+ >
413
+ > Want me to introduce myself? I could send her a message like:
414
+ >
415
+ > 'Hey! This is Echo, Tyler's new AI assistant. Tyler set me up to help manage things. Just wanted to say hi! 🦉'
416
+ >
417
+ > Up to you!"
418
+
419
+ #### Non-Mac Path (Windows/Linux)
420
+
421
+ **Agent asks about communication platforms:**
422
+
423
+ > "I can't read iMessage on this machine (that's an Apple thing 🍎).
424
+ >
425
+ > What messaging platforms do you use?
426
+ > - **WhatsApp** - I can connect to this! Quick QR scan setup (~5 min)
427
+ > - **Telegram** - I can read your chat history if you export it
428
+ > - **Discord** - I can connect to your servers
429
+ > - **SMS** - I can access if you use Pulse SMS or similar (Android)
430
+ >
431
+ > Which would be most useful to connect?"
432
+
433
+ **If WhatsApp:**
434
+ ```bash
435
+ brew install steipete/tap/wacli # or equivalent
436
+ wacli auth # User scans QR with phone
437
+ ```
438
+
439
+ **GAP TO FILL**: Android SMS access - need a good solution for this.
440
+
441
+ **WOW MOMENT**: Agent demonstrates it can actually read AND understand messages, not just access them.
442
+
443
+ ---
444
+
445
+ ### Phase 6: 1Password Setup
446
+
447
+ **Agent explains the VALUE (this is the pitch):**
448
+
449
+ > "Okay, here's the deal. Everything we do from here gets easier AND safer if you set up 1Password.
450
+ >
451
+ > Here's what it means for us:
452
+ > - ✅ **I can use your logins** without you typing passwords every time
453
+ > - ✅ **You still approve each usage** via Touch ID - I can't go rogue
454
+ > - ✅ **Your credentials stay encrypted** - even I can't see the actual passwords
455
+ > - ✅ **Syncs across all your devices** - works on phone too
456
+ >
457
+ > Think of it as giving me a controlled keyring. I can use the keys, but only when you say so.
458
+ >
459
+ > It costs $3/month (or $5 for families). Worth it.
460
+ >
461
+ > Do you already have 1Password?"
462
+
463
+ **IF user has 1Password:**
464
+
465
+ > "Perfect! We just need to enable CLI access so I can request credentials:
466
+ >
467
+ > 1. Open 1Password app
468
+ > 2. Go to Settings (Cmd+,)
469
+ > 3. Click 'Developer'
470
+ > 4. Turn ON **'Integrate with 1Password CLI'**
471
+ > 5. Turn ON **'Connect with 1Password CLI'**
472
+ >
473
+ > Both toggles need to be ON. Let me know when you've done that."
474
+
475
+ **IF user doesn't have 1Password:**
476
+
477
+ > "No problem, let's set it up. This is a one-time thing:
478
+ >
479
+ > 1. Go to [1password.com](https://1password.com) and create an account
480
+ > 2. Pick Individual ($3/mo) or Family ($5/mo)
481
+ > 3. Download the desktop app
482
+ >
483
+ > **Important**: Let's import your existing passwords so you don't lose anything:
484
+ > - Open Chrome → Settings → Passwords → three dots → **Export passwords**
485
+ > - Save the CSV file somewhere
486
+ > - In 1Password app: File → Import → Chrome CSV
487
+ > - Delete the CSV after import (it has your passwords in plain text!)
488
+ >
489
+ > Once that's done, we'll enable the CLI access."
490
+
491
+ **Agent installs CLI:**
492
+ ```bash
493
+ brew install 1password-cli
494
+ op whoami # User does Touch ID to confirm it works
495
+ ```
496
+
497
+ **Result:** Agent can now securely store/retrieve tokens - but user approves each access with Touch ID.
498
+
499
+ **Trust model explained:**
500
+ - When agent needs a credential, user sees a Touch ID prompt
501
+ - User can deny any request
502
+ - Agent cannot bulk-export or access credentials without approval
503
+ - This is the foundation for all integrations - controlled access
504
+
505
+ ---
506
+
507
+ ### Phase 7: Quest Selection (Ongoing)
508
+
509
+ **Agent presents the quest menu:**
510
+
511
+ > "Alright Tyler, you're set up with the basics! 🎉
512
+ >
513
+ > Here's what you can unlock next. I'll keep track and suggest these until you feel fully activated:
514
+ >
515
+ > ---
516
+ >
517
+ > **📱 TEXT ME FROM YOUR PHONE** *(Recommended first!)*
518
+ > Set up Telegram, WhatsApp, or email so you can reach me anywhere.
519
+ > ⚠️ Requires: Anthropic or OpenAI API key (I need my own brain outside Cursor)
520
+ > *~10-15 min | Unlocks: Agent reachability, reminders, proactive help*
521
+ >
522
+ > **📧 MANAGE YOUR EMAIL**
523
+ > Read Gmail, help reply, find things, manage calendar.
524
+ > Most complex setup (Google OAuth) but unlocks the most.
525
+ > *~20-40 min | Unlocks: Email search, calendar access, contact sync*
526
+ >
527
+ > **⏰ AUTOMATED TASKS**
528
+ > Morning briefings, reminders, scheduled checks.
529
+ > ⚠️ Only works while laptop is awake (unless we set up cloud)
530
+ > *~5 min | Requires: Phone access first*
531
+ >
532
+ > **🐦 X/TWITTER ACCESS**
533
+ > Super easy - just uses your Chrome login. Good computer control demo.
534
+ > *~5 min | Unlocks: Feed reading, posting, bookmarks*
535
+ >
536
+ > **☁️ NEXUS CLOUD**
537
+ > Always-on workspace + encrypted sync + shared folders with friends
538
+ > *~20-30 min | Unlocks: 24/7 agent, multi-device, collaboration*
539
+ >
540
+ > **🧠 DEEP INSIGHTS**
541
+ > AI-powered analysis of messages and emails.
542
+ > *~10-15 min | Requires: Gemini API key (free tier available)*
543
+ >
544
+ > ---
545
+ >
546
+ > What interests you most?"
547
+
548
+ **Quest tracking in state:**
549
+
550
+ Agent updates `~/nexus/state/nexus/onboarding/progress.json`:
551
+ ```json
552
+ {
553
+ "version": 1,
554
+ "capabilities": {
555
+ "core_onboarding": { "status": "complete" },
556
+ "credential_manager": { "status": "complete" },
557
+ "user_comms": { "status": "in_progress" },
558
+ "user_data": { "status": "not_started" },
559
+ "enable_agents": { "status": "not_started" },
560
+ "agent_comms": { "status": "not_started" },
561
+ "automation": { "status": "not_started" },
562
+ "cloud_sync": { "status": "not_started" }
563
+ },
564
+ "quests": {
565
+ "available": [
566
+ "phone_communication",
567
+ "email_access",
568
+ "automation",
569
+ "twitter",
570
+ "nexus_cloud",
571
+ "advanced_insights"
572
+ ],
573
+ "completed": [],
574
+ "completionCriteria": "phone_communication OR email_access"
575
+ }
576
+ }
577
+ ```
578
+
579
+ **Agent behavior:**
580
+
581
+ Every session, if onboarding is not complete:
582
+ 1. Check what quests are available
583
+ 2. Mention 1-2 that would be most useful based on user profile
584
+ 3. Offer to continue with a quest
585
+ 4. User can say "I'm done exploring" to mark complete
586
+
587
+ > "By the way, we still haven't set up phone communication. Once we do that, you can text me anytime - even at 3am when Cursor is closed. Want to tackle that today? (~15 min)"
588
+
589
+ **Completion:**
590
+ - Mark complete when user has completed either:
591
+ - Phone communication (Telegram/WhatsApp/email)
592
+ - OR Email access (full Google setup)
593
+ - OR user explicitly says they're done
594
+
595
+ ---
596
+
597
+ ## Quest Details
598
+
599
+ ### Quest: Phone Communication
600
+
601
+ **Prerequisites:**
602
+ - 1Password set up ✓
603
+
604
+ **New requirement:** API key (the agent needs a brain outside of Cursor)
605
+
606
+ **Agent explains:**
607
+
608
+ > "Right now I only work when you have Cursor open. To text me, I need my own brain.
609
+ >
610
+ > Options:
611
+ > 1. **Anthropic** (Claude) - console.anthropic.com - $5 credit to start
612
+ > 2. **OpenAI** (GPT) - platform.openai.com - Pay as you go
613
+ >
614
+ > I recommend Anthropic. Want to set that up first?"
615
+
616
+ **Then choose communication method:**
617
+
618
+ | Method | Time | Notes |
619
+ |--------|------|-------|
620
+ | Telegram | ~5 min | Easiest, no phone number needed for bot |
621
+ | WhatsApp | ~10 min | Need to scan QR with phone |
622
+ | Email | ~20 min | Can do as part of Gmail quest |
623
+
624
+ ---
625
+
626
+ ### Quest: Email/Google Access
627
+
628
+ **What it unlocks:**
629
+ - Read/search Gmail
630
+ - Access Google Calendar
631
+ - Access Google Drive
632
+ - Access Contacts
633
+
634
+ **Opportunity:** Demo computer control while setting up OAuth
635
+
636
+ > "This setup involves a lot of clicking in Google Cloud Console.
637
+ > Want to watch me do some of it? I can show you computer control in action."
638
+
639
+ **Agent uses Peekaboo/Open Interpreter to:**
640
+ - Navigate to console.cloud.google.com
641
+ - Create project
642
+ - Enable APIs
643
+ - (User still needs to click through OAuth consent)
644
+
645
+ ---
646
+
647
+ ### Quest: Automation/Cron
648
+
649
+ **Prerequisites:**
650
+ - Phone communication set up (so briefings can reach you)
651
+ - API key configured
652
+
653
+ **Agent explains:**
654
+
655
+ > "I can run scheduled tasks for you - morning briefings, reminders, checking things.
656
+ >
657
+ > ⚠️ **Important**: This only works while your laptop is running and awake.
658
+ >
659
+ > If you want me to work 24/7, we'd need to set up Nexus Cloud (your workspace runs on a server).
660
+ >
661
+ > For now, want to set up a morning briefing that sends to your phone at 8am?"
662
+
663
+ **Example cron setup:**
664
+ ```bash
665
+ # Morning briefing at 8am
666
+ nexus cron add "0 8 * * *" "morning-briefing" --notify telegram
667
+ ```
668
+
669
+ ---
670
+
671
+ ### Quest: X/Twitter Access
672
+
673
+ **Super easy - uses Chrome cookies:**
674
+
675
+ ```bash
676
+ brew install steipete/tap/bird
677
+ bird auth cookies # Extracts from Chrome
678
+ bird timeline # Shows your feed
679
+ ```
680
+
681
+ **Opportunity:** Demo computer control
682
+
683
+ > "Want to see something cool? I can actually control your browser.
684
+ > Watch me scroll through your Twitter feed and summarize it."
685
+
686
+ ---
687
+
688
+ ### Quest: Nexus Cloud
689
+
690
+ **What it unlocks:**
691
+ - Workspace runs even when laptop is closed
692
+ - Encrypted cloud sync
693
+ - Shared folders with friends (Google Drive but with AI agents)
694
+
695
+ **Agent explains:**
696
+
697
+ > "Nexus Cloud gives you:
698
+ >
699
+ > 1. **Always-on agent** - I can respond to texts even at 3am
700
+ > 2. **Encrypted backup** - Your workspace synced to the cloud (zero-knowledge encryption)
701
+ > 3. **Shared folders** - Like Google Drive, but your friends' agents can collaborate
702
+ >
703
+ > It requires setting up Cloudflare (free tier works). Takes about 20-30 minutes."
704
+
705
+ ---
706
+
707
+ ### Quest: Advanced Insights
708
+
709
+ **Prerequisites:**
710
+ - eve working ✓
711
+ - comms installed ✓
712
+
713
+ **New requirement:** GEMINI_API_KEY (free tier available)
714
+
715
+ **What it unlocks:**
716
+ - Semantic search across messages
717
+ - Conversation analysis
718
+ - Relationship insights
719
+
720
+ **Agent explains:**
721
+
722
+ > "Right now I can read your messages. With a Gemini API key, I can understand them deeply:
723
+ >
724
+ > - 'Find that restaurant Sarah recommended' (semantic search)
725
+ > - 'How has my communication with Mom changed over time?' (analysis)
726
+ > - 'Who should I reach out to that I haven't talked to in a while?' (insights)
727
+ >
728
+ > Gemini has a free tier (good for personal use). Want to set it up?"
729
+
730
+ **Setup:**
731
+ 1. Go to aistudio.google.com
732
+ 2. Click "Get API key"
733
+ 3. Create key → Copy
734
+ 4. Store in 1Password
735
+
736
+ **Then run analysis:**
737
+ ```bash
738
+ eve analyze --contact "Mom" --days 90
739
+ comms insights --top 5
740
+ ```
741
+
742
+ ---
743
+
744
+ ## Success Metrics
745
+
746
+ | Metric | Target |
747
+ |--------|--------|
748
+ | Time to first wow (file organization) | < 15 min |
749
+ | Time to iMessage insight | < 20 min |
750
+ | Time to 1Password complete | < 35 min |
751
+ | Time to text agent (Telegram) | < 50 min |
752
+ | Completion rate to file organization | > 90% |
753
+ | Completion rate to 1Password | > 70% |
754
+ | Completion rate to first quest | > 50% |
755
+
756
+ ---
757
+
758
+ ## What's Needed to Enable This
759
+
760
+ ### Already Working
761
+ - [ ] Cursor with FDA reads iMessage ✓
762
+ - [ ] eve can read/send messages ✓
763
+ - [ ] File organization is just shell commands ✓
764
+ - [ ] 1Password CLI works ✓
765
+ - [ ] Telegram bot via clawdbot ✓
766
+
767
+ ### Needs Work
768
+ - [ ] `nexus init` command (clean install, not git clone)
769
+ - [ ] Auto-detection of user info (whoami → USER.md)
770
+ - [ ] Smart message analysis (find interesting things)
771
+ - [ ] Quest system UI/flow
772
+ - [ ] Onboarding state tracking
773
+ - [ ] Computer control for OAuth assistance
774
+
775
+ ### Future Improvements
776
+ - [ ] Nexus mobile app
777
+ - [ ] Voice interaction (Squabble)
778
+ - [ ] Better computer control automation
779
+ - [ ] More wow moments from comms/eve analysis
780
+
781
+ ---
782
+
783
+ ## Open Questions
784
+
785
+ 1. **Install method**: brew vs npm vs something else?
786
+ 2. **Onboarding conversation**: How much should agent assume vs ask?
787
+ 3. **Quest ordering**: Should we recommend a specific path?
788
+ 4. **Failure recovery**: How do we handle when something breaks mid-onboarding?
789
+ 5. **Progress persistence**: How does state survive Cursor restart?
790
+
791
+ ---
792
+
793
+ ## Changelog
794
+
795
+ | Date | Change |
796
+ |------|--------|
797
+ | 2026-01-12 | Initial story captured from discussion |