@nemus-cli/nemus 0.2.1

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 (320) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/LICENSE +21 -0
  3. package/README.md +275 -0
  4. package/assets/README.md +53 -0
  5. package/assets/banner.png +0 -0
  6. package/assets/banner.svg +66 -0
  7. package/assets/favicon-32.png +0 -0
  8. package/assets/favicon-64.png +0 -0
  9. package/assets/icon-256.png +0 -0
  10. package/assets/icon.svg +23 -0
  11. package/assets/logo-256.png +0 -0
  12. package/assets/logo-512.png +0 -0
  13. package/assets/logo-wordmark.svg +35 -0
  14. package/assets/logo.svg +32 -0
  15. package/bin/workspace.js +130 -0
  16. package/dist/cli/ai-prompt.js +421 -0
  17. package/dist/cli/dashboard/AgentList.js +61 -0
  18. package/dist/cli/dashboard/DashboardSidebar.js +280 -0
  19. package/dist/cli/dashboard/HelpFooter.js +73 -0
  20. package/dist/cli/dashboard/StatusBadge.js +50 -0
  21. package/dist/cli/dashboard/index.js +11 -0
  22. package/dist/cli/dashboard/types.js +2 -0
  23. package/dist/cli/tui.js +48 -0
  24. package/dist/commands/ai-prompt.js +22 -0
  25. package/dist/commands/analyze-deps.js +138 -0
  26. package/dist/commands/archive.js +113 -0
  27. package/dist/commands/branch/create.js +119 -0
  28. package/dist/commands/branch/index.js +104 -0
  29. package/dist/commands/branch/merge.js +90 -0
  30. package/dist/commands/branch/rebase.js +84 -0
  31. package/dist/commands/branch/switch.js +165 -0
  32. package/dist/commands/cache/index.js +80 -0
  33. package/dist/commands/cache/manager.js +198 -0
  34. package/dist/commands/cleanup.js +153 -0
  35. package/dist/commands/configure-claude.js +55 -0
  36. package/dist/commands/configure.js +231 -0
  37. package/dist/commands/create.js +204 -0
  38. package/dist/commands/dashboard/hook-handler.js +162 -0
  39. package/dist/commands/dashboard/index.js +258 -0
  40. package/dist/commands/dashboard/launcher.js +40 -0
  41. package/dist/commands/dashboard/session-picker.js +106 -0
  42. package/dist/commands/dashboard/sidebar.js +39 -0
  43. package/dist/commands/dashboard/workspace-picker.js +95 -0
  44. package/dist/commands/delete.js +194 -0
  45. package/dist/commands/deprecated-aliases.js +44 -0
  46. package/dist/commands/diff.js +129 -0
  47. package/dist/commands/doctor.js +141 -0
  48. package/dist/commands/generate-docs.js +77 -0
  49. package/dist/commands/ghq-status.js +72 -0
  50. package/dist/commands/go.js +154 -0
  51. package/dist/commands/history.js +124 -0
  52. package/dist/commands/list.js +191 -0
  53. package/dist/commands/mcp/index.js +69 -0
  54. package/dist/commands/migrate.js +296 -0
  55. package/dist/commands/remove-repo.js +217 -0
  56. package/dist/commands/report-bug.js +112 -0
  57. package/dist/commands/run.js +147 -0
  58. package/dist/commands/save-context.js +171 -0
  59. package/dist/commands/sessions.js +129 -0
  60. package/dist/commands/status.js +138 -0
  61. package/dist/commands/suite/create.js +212 -0
  62. package/dist/commands/suite/delete.js +64 -0
  63. package/dist/commands/suite/export.js +126 -0
  64. package/dist/commands/suite/import.js +128 -0
  65. package/dist/commands/suite/index.js +94 -0
  66. package/dist/commands/suite/list.js +49 -0
  67. package/dist/commands/suite/use.js +227 -0
  68. package/dist/commands/sync.js +117 -0
  69. package/dist/commands/update.js +203 -0
  70. package/dist/mcp/install.js +550 -0
  71. package/dist/mcp/server.js +398 -0
  72. package/dist/mcp/tools.js +922 -0
  73. package/dist/pi-extensions/permission-sync.ts.template +41 -0
  74. package/dist/pi-extensions/permissions-gate.ts.template +69 -0
  75. package/dist/pi-extensions/pr-fix-trigger.ts.template +124 -0
  76. package/dist/pi-extensions/review-reminder.ts.template +58 -0
  77. package/dist/pi-extensions/workspace-input-status.ts.template +919 -0
  78. package/dist/program.js +136 -0
  79. package/dist/scripts/workspace-table.py +394 -0
  80. package/dist/types/dashboard.js +11 -0
  81. package/dist/types/index.js +2 -0
  82. package/dist/utils/agent-config.js +263 -0
  83. package/dist/utils/agent-state.js +178 -0
  84. package/dist/utils/banner.js +24 -0
  85. package/dist/utils/branch-operations.js +232 -0
  86. package/dist/utils/bug-report.js +355 -0
  87. package/dist/utils/cache.js +168 -0
  88. package/dist/utils/claude-integration.js +617 -0
  89. package/dist/utils/claude-sessions.js +260 -0
  90. package/dist/utils/cleanup-operations.js +120 -0
  91. package/dist/utils/colors.js +26 -0
  92. package/dist/utils/command-helpers.js +44 -0
  93. package/dist/utils/config.js +150 -0
  94. package/dist/utils/context-file.js +33 -0
  95. package/dist/utils/dashboard-hooks.js +172 -0
  96. package/dist/utils/dependency-analyzer.js +234 -0
  97. package/dist/utils/diff-operations.js +80 -0
  98. package/dist/utils/doc-generator.js +184 -0
  99. package/dist/utils/ghq-integration.js +332 -0
  100. package/dist/utils/git-operations.js +237 -0
  101. package/dist/utils/git-status.js +187 -0
  102. package/dist/utils/github.js +68 -0
  103. package/dist/utils/health-checks.js +345 -0
  104. package/dist/utils/history.js +150 -0
  105. package/dist/utils/hooks.js +100 -0
  106. package/dist/utils/logger.js +40 -0
  107. package/dist/utils/permission-sync.js +681 -0
  108. package/dist/utils/pi-extensions.js +224 -0
  109. package/dist/utils/progress.js +92 -0
  110. package/dist/utils/prompts.js +279 -0
  111. package/dist/utils/repo-resolver.js +260 -0
  112. package/dist/utils/retry.js +65 -0
  113. package/dist/utils/run-operations.js +30 -0
  114. package/dist/utils/suite.js +159 -0
  115. package/dist/utils/sync-operations.js +107 -0
  116. package/dist/utils/tmux-dashboard.js +184 -0
  117. package/dist/utils/validation.js +153 -0
  118. package/dist/utils/version-check.js +121 -0
  119. package/dist/utils/workspace-meta.js +185 -0
  120. package/install-shell-integration.sh +532 -0
  121. package/install.sh +401 -0
  122. package/package.json +90 -0
  123. package/remove-shell-block.awk +44 -0
  124. package/scripts/postinstall.js +85 -0
  125. package/skills/analyze-deps.md +23 -0
  126. package/skills/archive-workspace.md +26 -0
  127. package/skills/branch-create.md +18 -0
  128. package/skills/create-workspace.md +39 -0
  129. package/skills/delete-workspace.md +37 -0
  130. package/skills/list-org-repos.md +26 -0
  131. package/skills/list-suites.md +24 -0
  132. package/skills/list-workspaces.md +27 -0
  133. package/skills/refresh-workspace-docs.md +89 -0
  134. package/skills/remove-repo.md +25 -0
  135. package/skills/run-command.md +23 -0
  136. package/skills/save-context.md +68 -0
  137. package/skills/search-repos.md +31 -0
  138. package/skills/snapshot-list.md +18 -0
  139. package/skills/snapshot-save.md +12 -0
  140. package/skills/switch-branch.md +18 -0
  141. package/skills/update-cache.md +21 -0
  142. package/skills/update-workspace.md +66 -0
  143. package/skills/workspace-cleanup.md +18 -0
  144. package/skills/workspace-diff.md +23 -0
  145. package/skills/workspace-doctor.md +23 -0
  146. package/skills/workspace-info.md +45 -0
  147. package/skills/workspace-manager/SKILL.md +201 -0
  148. package/skills/workspace-manager/references/ai-prompt.md +44 -0
  149. package/skills/workspace-manager/references/analyze-deps.md +45 -0
  150. package/skills/workspace-manager/references/archive-workspace.md +38 -0
  151. package/skills/workspace-manager/references/branch-create.md +31 -0
  152. package/skills/workspace-manager/references/branch-merge.md +22 -0
  153. package/skills/workspace-manager/references/branch-rebase.md +22 -0
  154. package/skills/workspace-manager/references/cache-clear.md +18 -0
  155. package/skills/workspace-manager/references/cache-info.md +22 -0
  156. package/skills/workspace-manager/references/configure-claude.md +31 -0
  157. package/skills/workspace-manager/references/configure.md +35 -0
  158. package/skills/workspace-manager/references/create-workspace.md +45 -0
  159. package/skills/workspace-manager/references/dashboard.md +61 -0
  160. package/skills/workspace-manager/references/delete-workspace.md +33 -0
  161. package/skills/workspace-manager/references/generate-docs.md +36 -0
  162. package/skills/workspace-manager/references/ghq-status.md +28 -0
  163. package/skills/workspace-manager/references/go.md +33 -0
  164. package/skills/workspace-manager/references/history.md +41 -0
  165. package/skills/workspace-manager/references/list-org-repos.md +26 -0
  166. package/skills/workspace-manager/references/list-suites.md +21 -0
  167. package/skills/workspace-manager/references/list-workspaces.md +27 -0
  168. package/skills/workspace-manager/references/mcp.md +49 -0
  169. package/skills/workspace-manager/references/remove-repo.md +26 -0
  170. package/skills/workspace-manager/references/run-command.md +44 -0
  171. package/skills/workspace-manager/references/search-repos.md +24 -0
  172. package/skills/workspace-manager/references/sessions.md +27 -0
  173. package/skills/workspace-manager/references/suite-create.md +22 -0
  174. package/skills/workspace-manager/references/suite-delete.md +21 -0
  175. package/skills/workspace-manager/references/suite-export.md +19 -0
  176. package/skills/workspace-manager/references/suite-import.md +19 -0
  177. package/skills/workspace-manager/references/suite-use.md +27 -0
  178. package/skills/workspace-manager/references/switch-branch.md +25 -0
  179. package/skills/workspace-manager/references/update-cache.md +22 -0
  180. package/skills/workspace-manager/references/update-workspace.md +50 -0
  181. package/skills/workspace-manager/references/workspace-cleanup.md +33 -0
  182. package/skills/workspace-manager/references/workspace-diff.md +27 -0
  183. package/skills/workspace-manager/references/workspace-doctor.md +27 -0
  184. package/skills/workspace-manager/references/workspace-info.md +33 -0
  185. package/skills/workspace-manager/references/workspace-status.md +43 -0
  186. package/skills/workspace-manager/references/workspace-sync.md +26 -0
  187. package/skills/workspace-status.md +26 -0
  188. package/skills/workspace-sync.md +23 -0
  189. package/src/cli/ai-prompt.test.ts +667 -0
  190. package/src/cli/ai-prompt.ts +421 -0
  191. package/src/cli/dashboard/AgentList.tsx +44 -0
  192. package/src/cli/dashboard/DashboardSidebar.tsx +291 -0
  193. package/src/cli/dashboard/HelpFooter.tsx +22 -0
  194. package/src/cli/dashboard/StatusBadge.tsx +23 -0
  195. package/src/cli/dashboard/index.ts +5 -0
  196. package/src/cli/dashboard/types.ts +16 -0
  197. package/src/cli/tui.tsx +51 -0
  198. package/src/cli/workspace-cli.test.ts +30 -0
  199. package/src/commands/ai-prompt.ts +21 -0
  200. package/src/commands/analyze-deps.ts +119 -0
  201. package/src/commands/archive.ts +114 -0
  202. package/src/commands/branch/create.ts +94 -0
  203. package/src/commands/branch/index.ts +74 -0
  204. package/src/commands/branch/merge.ts +61 -0
  205. package/src/commands/branch/rebase.ts +54 -0
  206. package/src/commands/branch/switch.ts +150 -0
  207. package/src/commands/cache/index.ts +51 -0
  208. package/src/commands/cache/manager.ts +168 -0
  209. package/src/commands/cleanup.ts +132 -0
  210. package/src/commands/configure-claude.ts +55 -0
  211. package/src/commands/configure.ts +204 -0
  212. package/src/commands/create.ts +196 -0
  213. package/src/commands/dashboard/hook-handler.ts +138 -0
  214. package/src/commands/dashboard/index.ts +248 -0
  215. package/src/commands/dashboard/launcher.ts +42 -0
  216. package/src/commands/dashboard/session-picker.ts +73 -0
  217. package/src/commands/dashboard/sidebar.js +39 -0
  218. package/src/commands/dashboard/workspace-picker.ts +62 -0
  219. package/src/commands/delete.test.ts +250 -0
  220. package/src/commands/delete.ts +171 -0
  221. package/src/commands/deprecated-aliases.ts +55 -0
  222. package/src/commands/diff.ts +106 -0
  223. package/src/commands/doctor.ts +110 -0
  224. package/src/commands/generate-docs.ts +45 -0
  225. package/src/commands/ghq-status.ts +70 -0
  226. package/src/commands/go.ts +125 -0
  227. package/src/commands/history.ts +136 -0
  228. package/src/commands/list.test.ts +219 -0
  229. package/src/commands/list.ts +176 -0
  230. package/src/commands/mcp/index.ts +39 -0
  231. package/src/commands/migrate.ts +277 -0
  232. package/src/commands/remove-repo.ts +194 -0
  233. package/src/commands/report-bug.ts +88 -0
  234. package/src/commands/run.ts +125 -0
  235. package/src/commands/save-context.test.ts +113 -0
  236. package/src/commands/save-context.ts +141 -0
  237. package/src/commands/sessions.ts +99 -0
  238. package/src/commands/status.ts +111 -0
  239. package/src/commands/suite/create.ts +240 -0
  240. package/src/commands/suite/delete.ts +65 -0
  241. package/src/commands/suite/export.ts +97 -0
  242. package/src/commands/suite/import.ts +100 -0
  243. package/src/commands/suite/index.ts +66 -0
  244. package/src/commands/suite/list.ts +54 -0
  245. package/src/commands/suite/use.ts +232 -0
  246. package/src/commands/sync.ts +97 -0
  247. package/src/commands/update.ts +197 -0
  248. package/src/mcp/install.ts +529 -0
  249. package/src/mcp/server.ts +579 -0
  250. package/src/mcp/tools.test.ts +545 -0
  251. package/src/mcp/tools.ts +1019 -0
  252. package/src/mcp/update-workspace.test.ts +220 -0
  253. package/src/pi-extensions/permission-sync.ts.template +41 -0
  254. package/src/pi-extensions/permissions-gate.ts.template +69 -0
  255. package/src/pi-extensions/pr-fix-trigger.ts.template +124 -0
  256. package/src/pi-extensions/review-reminder.ts.template +58 -0
  257. package/src/pi-extensions/workspace-input-status.ts.template +919 -0
  258. package/src/program.ts +112 -0
  259. package/src/scripts/workspace-table.py +394 -0
  260. package/src/types/dashboard.ts +29 -0
  261. package/src/types/index.ts +109 -0
  262. package/src/types/ink.d.ts +171 -0
  263. package/src/utils/agent-config.test.ts +303 -0
  264. package/src/utils/agent-config.ts +264 -0
  265. package/src/utils/agent-state.test.ts +166 -0
  266. package/src/utils/agent-state.ts +135 -0
  267. package/src/utils/banner.ts +24 -0
  268. package/src/utils/branch-operations.ts +237 -0
  269. package/src/utils/bug-report.test.ts +174 -0
  270. package/src/utils/bug-report.ts +355 -0
  271. package/src/utils/cache.ts +150 -0
  272. package/src/utils/claude-integration.test.ts +381 -0
  273. package/src/utils/claude-integration.ts +649 -0
  274. package/src/utils/claude-sessions.test.ts +262 -0
  275. package/src/utils/claude-sessions.ts +251 -0
  276. package/src/utils/cleanup-operations.ts +94 -0
  277. package/src/utils/colors.ts +25 -0
  278. package/src/utils/command-helpers.ts +46 -0
  279. package/src/utils/config.test.ts +203 -0
  280. package/src/utils/config.ts +133 -0
  281. package/src/utils/context-file.ts +36 -0
  282. package/src/utils/dashboard-hooks.test.ts +168 -0
  283. package/src/utils/dashboard-hooks.ts +163 -0
  284. package/src/utils/dependency-analyzer.ts +243 -0
  285. package/src/utils/diff-operations.ts +59 -0
  286. package/src/utils/doc-generator.ts +187 -0
  287. package/src/utils/ghq-integration.test.ts +195 -0
  288. package/src/utils/ghq-integration.ts +317 -0
  289. package/src/utils/git-operations.test.ts +265 -0
  290. package/src/utils/git-operations.ts +233 -0
  291. package/src/utils/git-status.ts +171 -0
  292. package/src/utils/github.ts +74 -0
  293. package/src/utils/health-checks.ts +359 -0
  294. package/src/utils/history.ts +140 -0
  295. package/src/utils/hooks.ts +92 -0
  296. package/src/utils/logger.ts +37 -0
  297. package/src/utils/permission-sync.test.ts +593 -0
  298. package/src/utils/permission-sync.ts +720 -0
  299. package/src/utils/pi-extensions.test.ts +182 -0
  300. package/src/utils/pi-extensions.ts +226 -0
  301. package/src/utils/progress.ts +73 -0
  302. package/src/utils/prompts.test.ts +169 -0
  303. package/src/utils/prompts.ts +296 -0
  304. package/src/utils/repo-resolver.test.ts +313 -0
  305. package/src/utils/repo-resolver.ts +294 -0
  306. package/src/utils/retry.test.ts +124 -0
  307. package/src/utils/retry.ts +85 -0
  308. package/src/utils/run-operations.ts +38 -0
  309. package/src/utils/suite.test.ts +256 -0
  310. package/src/utils/suite.ts +144 -0
  311. package/src/utils/sync-operations.ts +87 -0
  312. package/src/utils/tmux-dashboard.ts +193 -0
  313. package/src/utils/validation.test.ts +139 -0
  314. package/src/utils/validation.ts +128 -0
  315. package/src/utils/version-check.test.ts +108 -0
  316. package/src/utils/version-check.ts +96 -0
  317. package/src/utils/workspace-meta.ts +173 -0
  318. package/sync-permissions.sh +137 -0
  319. package/tsconfig.json +20 -0
  320. package/uninstall.sh +162 -0
@@ -0,0 +1,36 @@
1
+ # Generate Docs
2
+
3
+ Generate workspace documentation including a README, dependency graph, and repository index.
4
+
5
+ ## Instructions
6
+
7
+ ```bash
8
+ nemus generate-docs <workspace>
9
+ ```
10
+
11
+ Alias:
12
+ ```bash
13
+ w gd <workspace>
14
+ ```
15
+
16
+ Without a workspace name, prompts interactively:
17
+ ```bash
18
+ nemus generate-docs
19
+ ```
20
+
21
+ ## Generated Files
22
+
23
+ Creates these files in the workspace root:
24
+ - `WORKSPACE-README.md` — Overview of the workspace and its repos
25
+ - `DEPENDENCY-GRAPH.md` — Mermaid diagram of inter-repo dependencies
26
+ - `REPOSITORY-INDEX.md` — Detailed index of all repos
27
+
28
+ ## When to Suggest
29
+
30
+ - After creating a workspace with many repos
31
+ - When user wants to understand workspace structure
32
+ - When onboarding someone to a multi-repo project
33
+
34
+ ## Success Criteria
35
+
36
+ - All three documentation files are generated in the workspace directory.
@@ -0,0 +1,28 @@
1
+ # GHQ Status
2
+
3
+ Check the status of ghq integration for faster repository cloning.
4
+
5
+ ## Instructions
6
+
7
+ ```bash
8
+ nemus ghq-status
9
+ ```
10
+
11
+ ## What It Shows
12
+
13
+ - Whether ghq is installed
14
+ - ghq root directory and number of managed repos
15
+ - How ghq accelerates workspace creation (cached local copies)
16
+
17
+ ## How ghq Works with Workspace Manager
18
+
19
+ 1. **First clone**: ghq downloads repo to its cache
20
+ 2. **Workspace creation**: Copies from ghq cache instead of cloning from remote
21
+ 3. **Subsequent clones**: Much faster (local copy vs network clone)
22
+ 4. **Isolation**: Each workspace still gets its own independent clone
23
+
24
+ ## When to Suggest
25
+
26
+ - User reports slow workspace creation
27
+ - User asks about optimizing clone performance
28
+ - User asks what ghq is or whether to install it
@@ -0,0 +1,33 @@
1
+ # Go (Navigate to Workspace)
2
+
3
+ Quickly navigate to a workspace directory. Works with the `nemgo` shell function for auto-CD.
4
+
5
+ ## Instructions
6
+
7
+ With a known workspace name:
8
+ ```bash
9
+ nemus go <name>
10
+ ```
11
+
12
+ Without a name (interactive fuzzy picker):
13
+ ```bash
14
+ nemus go
15
+ ```
16
+
17
+ Or use the shell function (auto-CDs into the workspace):
18
+ ```bash
19
+ nemgo <name>
20
+ ```
21
+
22
+ The `nemgo` variant also launches Claude Code automatically if a session exists.
23
+
24
+ ## How It Works
25
+
26
+ 1. `nemus go` writes the workspace path to `~/.workspace-last-go`
27
+ 2. The shell integration function reads that file and runs `cd`
28
+ 3. If the workspace has an existing Claude session, it resumes it
29
+
30
+ ## Success Criteria
31
+
32
+ - The terminal's working directory changes to the workspace path.
33
+ - If a Claude session exists, it resumes automatically (with `nemgo`).
@@ -0,0 +1,41 @@
1
+ # History
2
+
3
+ View operation history for workspace-manager commands.
4
+
5
+ ## Instructions
6
+
7
+ ### Show Recent History
8
+
9
+ ```bash
10
+ nemus history
11
+ nemus history show 50 # last 50 records
12
+ nemus history show --command create # filter by command
13
+ nemus history show --workspace my-ws # filter by workspace
14
+ ```
15
+
16
+ ### Show Statistics
17
+
18
+ ```bash
19
+ nemus history stats
20
+ ```
21
+
22
+ Shows total operations, success rate, average duration, and per-command usage counts.
23
+
24
+ ### Clear History
25
+
26
+ ```bash
27
+ nemus history clear
28
+ nemus history clear --yes # skip confirmation
29
+ ```
30
+
31
+ ## Alias
32
+
33
+ ```bash
34
+ w h # same as nemus history
35
+ w h stats # same as nemus history stats
36
+ ```
37
+
38
+ ## Success Criteria
39
+
40
+ - History records are displayed in a table with timestamp, command, workspace, duration, and status.
41
+ - Stats show meaningful aggregations.
@@ -0,0 +1,26 @@
1
+ # List Org Repos
2
+
3
+ List all organization repositories from GitHub.
4
+
5
+ ## Instructions
6
+
7
+ 1. Run:
8
+ ```bash
9
+ nemus cache list
10
+ ```
11
+ Pass `--force-refresh` (or `-f`) only if the user explicitly asks to refresh the cache:
12
+ ```bash
13
+ nemus cache list --force-refresh
14
+ ```
15
+
16
+ 2. Present the repos in a clear format. Since there may be many, consider:
17
+ - Grouping by prefix (api-, service-, lib-, etc.)
18
+ - Showing count totals
19
+ - Asking the user to narrow down with `nemus cache search <query>` if needed
20
+
21
+ 3. If the cache is stale, suggest `nemus cache refresh` to update it.
22
+
23
+ ## Success Criteria
24
+
25
+ - All org repos are listed, optionally grouped by prefix.
26
+ - User is guided toward `nemus cache search` if the list is too large to browse.
@@ -0,0 +1,21 @@
1
+ # List Suites
2
+
3
+ List all saved suites with their repo counts.
4
+
5
+ ## Instructions
6
+
7
+ ```bash
8
+ nemus suite list
9
+ ```
10
+
11
+ Present the suites showing name, number of repos, description (if available), and repo list.
12
+
13
+ To create a workspace from a suite (non-interactive):
14
+ ```bash
15
+ nemus suite use --suite <suite-name> --workspace <workspace-name> --yes
16
+ ```
17
+
18
+ ## Success Criteria
19
+
20
+ - All available suites are listed with their repo counts and descriptions.
21
+ - User is guided toward `nemus suite use` if they want to create a workspace from a suite.
@@ -0,0 +1,27 @@
1
+ # List Workspaces
2
+
3
+ List all existing workspaces managed by workspace-manager.
4
+
5
+ ## Instructions
6
+
7
+ 1. Run:
8
+ ```bash
9
+ nemus list
10
+ ```
11
+ Pass `--archived` only if the user asks to see archived workspaces:
12
+ ```bash
13
+ nemus list --archived
14
+ ```
15
+
16
+ 2. Present the results showing:
17
+ - Workspace name
18
+ - Number of repositories
19
+ - Creation date
20
+ - Archived status (if applicable)
21
+
22
+ 3. If no workspaces exist, suggest creating one with `nemus create`.
23
+
24
+ ## Success Criteria
25
+
26
+ - All active workspaces are listed with repo count and creation date.
27
+ - Archived workspaces are shown only when explicitly requested.
@@ -0,0 +1,49 @@
1
+ # MCP Server
2
+
3
+ Manage the MCP (Model Context Protocol) server integration with Claude Code.
4
+
5
+ ## Commands
6
+
7
+ ### Install
8
+
9
+ Register the workspace-manager MCP server with Claude Code:
10
+ ```bash
11
+ nemus mcp install
12
+ ```
13
+
14
+ This also installs shell integration, permission sync hooks, and workspace skills.
15
+
16
+ ### Uninstall
17
+
18
+ Remove the MCP server registration:
19
+ ```bash
20
+ nemus mcp uninstall
21
+ ```
22
+
23
+ ### Upgrade
24
+
25
+ Update hooks and skills without re-registering the MCP server:
26
+ ```bash
27
+ nemus mcp upgrade
28
+ ```
29
+
30
+ Use after updating the workspace-manager package.
31
+
32
+ ### Status
33
+
34
+ Check if the MCP server is registered:
35
+ ```bash
36
+ nemus mcp status
37
+ ```
38
+
39
+ ## What MCP Provides
40
+
41
+ When installed, Claude Code gains access to workspace-manager tools:
42
+ - `create-workspace`, `list-workspaces`, `workspace-status`, etc.
43
+ - Enables natural language workspace management via `nemus -- <prompt>`
44
+
45
+ ## When to Suggest
46
+
47
+ - After installing or upgrading workspace-manager
48
+ - When Claude Code doesn't seem to have workspace tools
49
+ - When `nemus -- <prompt>` fails to find MCP tools
@@ -0,0 +1,26 @@
1
+ # Remove Repo
2
+
3
+ Remove a repository instance from a workspace.
4
+
5
+ ## Instructions
6
+
7
+ 1. Warn the user about any uncommitted changes before removing.
8
+
9
+ 2. Run the command:
10
+ ```bash
11
+ nemus remove-repo --workspace <name> --repos <dir-name> --yes
12
+ ```
13
+
14
+ Note: `--repos` takes the **directory name** inside the workspace (not the GitHub repo name — these differ when using suffixes).
15
+
16
+ ## Flags
17
+
18
+ | Flag | Short | Description |
19
+ |---|---|---|
20
+ | `--workspace <name>` | `-w` | Target workspace |
21
+ | `--repos <dir,...>` | `-r` | Comma-separated directory names to remove |
22
+ | `--yes` | `-y` | Skip confirmation prompt |
23
+
24
+ ## Success Criteria
25
+
26
+ - The specified repo directory is removed from the workspace after user confirmation.
@@ -0,0 +1,44 @@
1
+ # Run Command
2
+
3
+ Run a shell command across all repositories in a workspace (3 concurrent, 5 minute timeout per repo).
4
+
5
+ ## Instructions
6
+
7
+ ```bash
8
+ nemus run <workspace> <command>
9
+ ```
10
+
11
+ Alias:
12
+ ```bash
13
+ w r <workspace> <command>
14
+ ```
15
+
16
+ Without a workspace name, prompts interactively:
17
+ ```bash
18
+ nemus run "<command>"
19
+ ```
20
+
21
+ ## Examples
22
+
23
+ ```bash
24
+ nemus run my-workspace "npm install"
25
+ nemus run my-workspace "git status -s"
26
+ nemus run my-workspace "npm test"
27
+ nemus run my-workspace "echo hello"
28
+ nemus run my-workspace "git checkout main"
29
+ nemus run my-workspace "cat package.json | jq .version"
30
+ ```
31
+
32
+ ## Output
33
+
34
+ Shows per-repo results:
35
+ - ✓ for successful execution (with stdout)
36
+ - ✗ for failed execution (with stderr)
37
+ - Summary count of successes and failures
38
+
39
+ Exits with code 1 if any repo failed.
40
+
41
+ ## Success Criteria
42
+
43
+ - Command is executed in all repos and per-repo success/failure is reported.
44
+ - stdout and stderr from each repo are clearly displayed.
@@ -0,0 +1,24 @@
1
+ # Search Repos
2
+
3
+ Search organization repositories by name or description using fuzzy matching.
4
+
5
+ ## Instructions
6
+
7
+ 1. Run:
8
+ ```bash
9
+ nemus cache search <query>
10
+ ```
11
+
12
+ 2. Present matching repos with:
13
+ - Repository name
14
+ - Description
15
+ - URL
16
+
17
+ 3. If the user is looking for repos to add to a workspace, suggest:
18
+ - `nemus create` to create a new workspace with selected repos
19
+ - `nemus update` to add repos to an existing workspace
20
+
21
+ ## Success Criteria
22
+
23
+ - Matching repos are listed with name, description, and URL.
24
+ - Follow-up action (create or update workspace) is suggested if appropriate.
@@ -0,0 +1,27 @@
1
+ # Sessions
2
+
3
+ Pick a workspace with an active Claude Code session and resume it.
4
+
5
+ ## Instructions
6
+
7
+ Interactive only — displays a fuzzy-searchable list of workspaces with sessions:
8
+ ```bash
9
+ nemus sessions
10
+ ```
11
+
12
+ Alias:
13
+ ```bash
14
+ w ses
15
+ ```
16
+
17
+ ## How It Works
18
+
19
+ 1. Scans for Claude Code sessions across all workspaces
20
+ 2. Shows them sorted by last active time
21
+ 3. User picks one → terminal CDs to that workspace and resumes the Claude session
22
+
23
+ ## When to Suggest
24
+
25
+ - User asks to "continue where I left off"
26
+ - User wants to resume work on a previous workspace
27
+ - User asks about their recent Claude sessions
@@ -0,0 +1,22 @@
1
+ # Suite Create
2
+
3
+ Create a new suite (reusable collection of repositories) that can be used to quickly set up workspaces.
4
+
5
+ ## Instructions
6
+
7
+ 1. In interactive mode:
8
+ ```bash
9
+ nemus suite create
10
+ ```
11
+
12
+ 2. In non-interactive mode (for agents):
13
+ ```bash
14
+ nemus suite create --name <suite-name> --repos repo1,repo2,repo3 --description "optional description" --yes
15
+ ```
16
+
17
+ 3. After creation, confirm with the suite name and repo count.
18
+
19
+ ## Success Criteria
20
+
21
+ - Suite is saved with the specified name and repos.
22
+ - Suite appears in `nemus suite list`.
@@ -0,0 +1,21 @@
1
+ # Suite Delete
2
+
3
+ Delete a saved suite.
4
+
5
+ ## Instructions
6
+
7
+ 1. In interactive mode:
8
+ ```bash
9
+ nemus suite delete
10
+ ```
11
+
12
+ 2. In non-interactive mode (for agents):
13
+ ```bash
14
+ nemus suite delete --name <suite-name> --yes
15
+ ```
16
+
17
+ 3. Confirm deletion.
18
+
19
+ ## Success Criteria
20
+
21
+ - Suite is removed and no longer appears in `nemus suite list`.
@@ -0,0 +1,19 @@
1
+ # Suite Export
2
+
3
+ Export one or all suites to a JSON file for sharing.
4
+
5
+ ## Instructions
6
+
7
+ 1. Export all suites:
8
+ ```bash
9
+ nemus suite export ./suites.json
10
+ ```
11
+
12
+ 2. In interactive mode, you'll be prompted to choose a single suite or all.
13
+
14
+ 3. Share the exported file with teammates who can import it with `nemus suite import`.
15
+
16
+ ## Success Criteria
17
+
18
+ - JSON file is created with suite data.
19
+ - File can be imported with `nemus suite import`.
@@ -0,0 +1,19 @@
1
+ # Suite Import
2
+
3
+ Import suites from a JSON file (exported by `nemus suite export`).
4
+
5
+ ## Instructions
6
+
7
+ 1. Run:
8
+ ```bash
9
+ nemus suite import <file-path>
10
+ ```
11
+
12
+ 2. Existing suites with the same name will be skipped by default.
13
+
14
+ 3. After import, verify with `nemus suite list`.
15
+
16
+ ## Success Criteria
17
+
18
+ - Suites from the file are imported.
19
+ - Imported suites appear in `nemus suite list`.
@@ -0,0 +1,27 @@
1
+ # Suite Use
2
+
3
+ Create a new workspace from a saved suite.
4
+
5
+ ## Instructions
6
+
7
+ 1. In interactive mode:
8
+ ```bash
9
+ nemus suite use
10
+ ```
11
+
12
+ 2. In non-interactive mode (for agents):
13
+ ```bash
14
+ nemus suite use --suite <suite-name> --workspace <workspace-name> --yes
15
+ ```
16
+
17
+ 3. This will:
18
+ - Clone all repos defined in the suite
19
+ - Run any post-clone hooks configured in the suite
20
+ - Set up Claude Code integration
21
+
22
+ 4. After creation, suggest `nemus status <workspace>` to verify.
23
+
24
+ ## Success Criteria
25
+
26
+ - Workspace is created with all suite repos cloned.
27
+ - Post-clone hooks (if any) are executed.
@@ -0,0 +1,25 @@
1
+ # Switch Branch
2
+
3
+ Switch all repositories in a workspace to a specified branch.
4
+
5
+ ## Instructions
6
+
7
+ ```bash
8
+ nemus branch switch --workspace <name> --branch <branch-name>
9
+ ```
10
+
11
+ ## Flags
12
+
13
+ | Flag | Short | Description |
14
+ |---|---|---|
15
+ | `--workspace <name>` | `-w` | Target workspace |
16
+ | `--branch <name>` | `-b` | Target branch name |
17
+
18
+ If some repos fail to switch (due to uncommitted changes), suggest:
19
+ - Committing or stashing changes first
20
+ - Using `nemus status <name>` to check the state
21
+
22
+ ## Success Criteria
23
+
24
+ - All repos without uncommitted changes are switched to the target branch.
25
+ - Repos that failed to switch are clearly reported with the reason.
@@ -0,0 +1,22 @@
1
+ # Update Cache
2
+
3
+ Force refresh the GitHub repository cache so newly added repos become searchable.
4
+
5
+ ## Instructions
6
+
7
+ 1. Run:
8
+ ```bash
9
+ nemus cache refresh
10
+ ```
11
+ Or use the short flag on any command:
12
+ ```bash
13
+ nemus cache list --force-refresh
14
+ ```
15
+
16
+ 2. Report the result (number of repos cached, etc.).
17
+
18
+ 3. Suggest using `nemus cache search <query>` or `nemus cache list` to browse the updated list.
19
+
20
+ ## Success Criteria
21
+
22
+ - Cache is refreshed and the updated repo count is reported.
@@ -0,0 +1,50 @@
1
+ # Update Workspace
2
+
3
+ Add more repositories to an existing workspace.
4
+
5
+ ## Instructions
6
+
7
+ 1. Run the command with flags (non-interactive):
8
+ ```bash
9
+ nemus update --workspace <name> --repos <r1,r2,...>
10
+ ```
11
+
12
+ Or interactively:
13
+ ```bash
14
+ nemus update
15
+ ```
16
+
17
+ 2. Report which repos were added successfully and which were skipped (already exist).
18
+
19
+ ## Flags
20
+
21
+ | Flag | Short | Description |
22
+ |---|---|---|
23
+ | `--workspace <name>` | `-w` | Target workspace |
24
+ | `--repos <r1,r2,...>` | `-r` | Comma-separated repo names to add. Use `repo:suffix` to add the same repo again under a separate folder. |
25
+
26
+ ## Adding the same repo more than once (instances)
27
+
28
+ The same repository can live in a workspace multiple times under different
29
+ folders — useful for comparing branches/versions side by side, or keeping a
30
+ second checkout instead of a `git worktree` (which `nemus status`/`nemus sync` do NOT
31
+ track). Append `:suffix` to the repo name; the repo is cloned into
32
+ `<repo>-<suffix>`:
33
+
34
+ ```bash
35
+ # casper already in the workspace — add a second checkout for branch CAS-101
36
+ nemus update --workspace my-ws --repos casper:cas-101 # -> folder casper-cas-101
37
+ ```
38
+
39
+ The suffix may contain letters, numbers, hyphens, and underscores. Each
40
+ instance is tracked independently by `nemus status` and `nemus sync` and is labeled
41
+ `(instance: <folder>)` in the workspace context file.
42
+
43
+ > Do NOT use `git worktree` inside a workspace to get a second checkout of a
44
+ > tracked repo — worktrees are invisible to `nemus status`/`nemus sync`. Use
45
+ > `nemus update --repos <repo>:<suffix>` instead.
46
+
47
+ ## Success Criteria
48
+
49
+ - All specified repos are cloned into the workspace.
50
+ - User is informed of any repos skipped due to already existing.
@@ -0,0 +1,33 @@
1
+ # Workspace Cleanup
2
+
3
+ Remove node_modules and build artifacts from all repos in a workspace to free disk space.
4
+
5
+ ## Instructions
6
+
7
+ ```bash
8
+ nemus cleanup <workspace> --all --yes
9
+ ```
10
+
11
+ Or specify what to clean:
12
+ ```bash
13
+ nemus cleanup <workspace> --node-modules --yes
14
+ nemus cleanup <workspace> --build --yes
15
+ nemus cleanup <workspace> --git-clean --yes
16
+ ```
17
+
18
+ ## Flags
19
+
20
+ | Flag | Description |
21
+ |---|---|
22
+ | `--all` | Remove everything (node_modules + build artifacts + git clean) |
23
+ | `--node-modules` | Remove `node_modules` directories |
24
+ | `--build` | Remove `dist`, `build`, `.next`, `coverage`, `out` |
25
+ | `--git-clean` | Remove untracked files via git clean |
26
+ | `--yes` / `-y` | Skip confirmation prompt |
27
+
28
+ Remind the user they'll need to run `npm install` before building again.
29
+
30
+ ## Success Criteria
31
+
32
+ - Selected directories are removed and disk space freed is reported.
33
+ - User is reminded to re-run `npm install` before building.
@@ -0,0 +1,27 @@
1
+ # Workspace Diff
2
+
3
+ Show diff summary (staged/unstaged file counts, insertions, deletions) for all repos in a workspace.
4
+
5
+ ## Instructions
6
+
7
+ 1. If no workspace is specified, run `nemus list` and ask which one.
8
+
9
+ 2. Run:
10
+ ```bash
11
+ nemus diff
12
+ ```
13
+ Or target a specific workspace:
14
+ ```bash
15
+ nemus diff <name>
16
+ ```
17
+
18
+ 3. Present a clear summary showing per-repo:
19
+ - Number of staged/unstaged files
20
+ - Lines inserted/deleted
21
+ - Which files changed
22
+
23
+ 4. If the user wants full diff content, they can pipe through `less` or redirect to a file.
24
+
25
+ ## Success Criteria
26
+
27
+ - Per-repo diff summary is presented with file counts and line statistics.