pi-skill-search 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (299) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/LICENSE +21 -0
  3. package/README.md +97 -0
  4. package/index.ts +163 -0
  5. package/package.json +48 -0
  6. package/skills/adaptyv/SKILL.md +92 -0
  7. package/skills/add-community-extension/SKILL.md +85 -0
  8. package/skills/aeon/SKILL.md +111 -0
  9. package/skills/ai-slop-cleaner/SKILL.md +118 -0
  10. package/skills/anndata/SKILL.md +83 -0
  11. package/skills/arboreto/SKILL.md +107 -0
  12. package/skills/ask/SKILL.md +55 -0
  13. package/skills/astropy/SKILL.md +30 -0
  14. package/skills/async-worker-recovery/SKILL.md +44 -0
  15. package/skills/autopilot/SKILL.md +63 -0
  16. package/skills/autoresearch/SKILL.md +64 -0
  17. package/skills/autoskill/SKILL.md +116 -0
  18. package/skills/babysit/SKILL.md +43 -0
  19. package/skills/benchling-integration/SKILL.md +106 -0
  20. package/skills/bgpt-paper-search/SKILL.md +67 -0
  21. package/skills/biopython/SKILL.md +29 -0
  22. package/skills/bioservices/SKILL.md +96 -0
  23. package/skills/brainstorming/SKILL.md +104 -0
  24. package/skills/cancel/SKILL.md +85 -0
  25. package/skills/ccg/SKILL.md +87 -0
  26. package/skills/celery-pipeline/SKILL.md +30 -0
  27. package/skills/cellxgene-census/SKILL.md +104 -0
  28. package/skills/child-pi-spawning/SKILL.md +85 -0
  29. package/skills/cirq/SKILL.md +113 -0
  30. package/skills/citation-management/SKILL.md +91 -0
  31. package/skills/clinical-decision-support/SKILL.md +117 -0
  32. package/skills/clinical-reports/SKILL.md +118 -0
  33. package/skills/clinical-trial/SKILL.md +28 -0
  34. package/skills/cobrapy/SKILL.md +116 -0
  35. package/skills/configure-notifications/SKILL.md +85 -0
  36. package/skills/consciousness-council/SKILL.md +120 -0
  37. package/skills/context-artifact-hygiene/SKILL.md +85 -0
  38. package/skills/context-mode-ops/SKILL.md +87 -0
  39. package/skills/dask/SKILL.md +85 -0
  40. package/skills/database-lookup/SKILL.md +118 -0
  41. package/skills/datamol/SKILL.md +108 -0
  42. package/skills/debug/SKILL.md +32 -0
  43. package/skills/deep-dive/SKILL.md +114 -0
  44. package/skills/deep-interview/SKILL.md +90 -0
  45. package/skills/deepchem/SKILL.md +117 -0
  46. package/skills/deepinit/SKILL.md +100 -0
  47. package/skills/deeptools/SKILL.md +118 -0
  48. package/skills/delegation-patterns/SKILL.md +56 -0
  49. package/skills/depmap/SKILL.md +94 -0
  50. package/skills/dhdna-profiler/SKILL.md +86 -0
  51. package/skills/diffdock/SKILL.md +101 -0
  52. package/skills/dispatching-parallel-agents/SKILL.md +119 -0
  53. package/skills/dnanexus-integration/SKILL.md +118 -0
  54. package/skills/do/SKILL.md +48 -0
  55. package/skills/docker-sandbox/SKILL.md +29 -0
  56. package/skills/docx/SKILL.md +119 -0
  57. package/skills/esm/SKILL.md +116 -0
  58. package/skills/etetoolkit/SKILL.md +103 -0
  59. package/skills/event-log-tracing/SKILL.md +85 -0
  60. package/skills/exa-search/SKILL.md +72 -0
  61. package/skills/executing-plans/SKILL.md +69 -0
  62. package/skills/exploratory-data-analysis/SKILL.md +118 -0
  63. package/skills/external-context/SKILL.md +80 -0
  64. package/skills/fastapi/SKILL.md +30 -0
  65. package/skills/finishing-a-development-branch/SKILL.md +106 -0
  66. package/skills/flowio/SKILL.md +114 -0
  67. package/skills/fluidsim/SKILL.md +108 -0
  68. package/skills/generate-image/SKILL.md +108 -0
  69. package/skills/geniml/SKILL.md +117 -0
  70. package/skills/geomaster/SKILL.md +109 -0
  71. package/skills/geopandas/SKILL.md +114 -0
  72. package/skills/get-available-resources/SKILL.md +100 -0
  73. package/skills/gget/SKILL.md +111 -0
  74. package/skills/ginkgo-cloud-lab/SKILL.md +52 -0
  75. package/skills/git-master/SKILL.md +85 -0
  76. package/skills/glycoengineering/SKILL.md +104 -0
  77. package/skills/gtars/SKILL.md +104 -0
  78. package/skills/hackernews-frontpage/SKILL.md +46 -0
  79. package/skills/histolab/SKILL.md +98 -0
  80. package/skills/how-it-works/SKILL.md +25 -0
  81. package/skills/hud/SKILL.md +86 -0
  82. package/skills/hugging-science/SKILL.md +93 -0
  83. package/skills/huggingface/SKILL.md +30 -0
  84. package/skills/hypogenic/SKILL.md +107 -0
  85. package/skills/hypothesis-generation/SKILL.md +118 -0
  86. package/skills/imaging-data-commons/SKILL.md +119 -0
  87. package/skills/infographics/SKILL.md +102 -0
  88. package/skills/iso-13485-certification/SKILL.md +114 -0
  89. package/skills/knowledge-agent/SKILL.md +83 -0
  90. package/skills/labarchive-integration/SKILL.md +98 -0
  91. package/skills/lamindb/SKILL.md +119 -0
  92. package/skills/landsat/SKILL.md +29 -0
  93. package/skills/latchbio-integration/SKILL.md +118 -0
  94. package/skills/latex-posters/SKILL.md +112 -0
  95. package/skills/learn-codebase/SKILL.md +24 -0
  96. package/skills/learner/SKILL.md +118 -0
  97. package/skills/literature-review/SKILL.md +118 -0
  98. package/skills/live-agent-lifecycle/SKILL.md +85 -0
  99. package/skills/mailbox-interactive/SKILL.md +85 -0
  100. package/skills/make-plan/SKILL.md +59 -0
  101. package/skills/markdown-mermaid-writing/SKILL.md +118 -0
  102. package/skills/market-research-reports/SKILL.md +119 -0
  103. package/skills/markitdown/SKILL.md +111 -0
  104. package/skills/markitdown-docs/SKILL.md +28 -0
  105. package/skills/matchms/SKILL.md +91 -0
  106. package/skills/matlab/SKILL.md +118 -0
  107. package/skills/matplotlib/SKILL.md +30 -0
  108. package/skills/mcp-setup/SKILL.md +84 -0
  109. package/skills/medchem/SKILL.md +109 -0
  110. package/skills/mem-search/SKILL.md +96 -0
  111. package/skills/modal/SKILL.md +104 -0
  112. package/skills/model-routing-context/SKILL.md +85 -0
  113. package/skills/molecular-dynamics/SKILL.md +116 -0
  114. package/skills/molfeat/SKILL.md +110 -0
  115. package/skills/multi-perspective-review/SKILL.md +85 -0
  116. package/skills/networkx/SKILL.md +111 -0
  117. package/skills/neurokit2/SKILL.md +114 -0
  118. package/skills/neuropixels-analysis/SKILL.md +112 -0
  119. package/skills/nilearn/SKILL.md +29 -0
  120. package/skills/observability-reliability/SKILL.md +43 -0
  121. package/skills/omc-doctor/SKILL.md +86 -0
  122. package/skills/omc-reference/SKILL.md +119 -0
  123. package/skills/omc-setup/SKILL.md +82 -0
  124. package/skills/omc-teams/SKILL.md +81 -0
  125. package/skills/omero-integration/SKILL.md +111 -0
  126. package/skills/open-notebook/SKILL.md +100 -0
  127. package/skills/openephys/SKILL.md +28 -0
  128. package/skills/opentrons-integration/SKILL.md +110 -0
  129. package/skills/optimize-for-gpu/SKILL.md +119 -0
  130. package/skills/orchestration/SKILL.md +85 -0
  131. package/skills/ownership-session-security/SKILL.md +43 -0
  132. package/skills/paper-lookup/SKILL.md +119 -0
  133. package/skills/paperzilla/SKILL.md +114 -0
  134. package/skills/parallel-web/SKILL.md +64 -0
  135. package/skills/pathfinder/SKILL.md +114 -0
  136. package/skills/pathml/SKILL.md +98 -0
  137. package/skills/pdf/SKILL.md +113 -0
  138. package/skills/peer-review/SKILL.md +119 -0
  139. package/skills/pennylane/SKILL.md +119 -0
  140. package/skills/phylogenetics/SKILL.md +102 -0
  141. package/skills/pi-extension-lifecycle/SKILL.md +41 -0
  142. package/skills/plan/SKILL.md +66 -0
  143. package/skills/polars/SKILL.md +114 -0
  144. package/skills/polars-bio/SKILL.md +84 -0
  145. package/skills/pptx/SKILL.md +118 -0
  146. package/skills/pptx-posters/SKILL.md +112 -0
  147. package/skills/primekg/SKILL.md +97 -0
  148. package/skills/project-session-manager/SKILL.md +85 -0
  149. package/skills/protocolsio-integration/SKILL.md +119 -0
  150. package/skills/pubmed-search/SKILL.md +29 -0
  151. package/skills/pufferlib/SKILL.md +103 -0
  152. package/skills/pydeseq2/SKILL.md +106 -0
  153. package/skills/pydicom/SKILL.md +115 -0
  154. package/skills/pyhealth/SKILL.md +117 -0
  155. package/skills/pylabrobot/SKILL.md +100 -0
  156. package/skills/pymatgen/SKILL.md +28 -0
  157. package/skills/pymc/SKILL.md +108 -0
  158. package/skills/pymoo/SKILL.md +90 -0
  159. package/skills/pyopenms/SKILL.md +119 -0
  160. package/skills/pysam/SKILL.md +118 -0
  161. package/skills/pyspark/SKILL.md +30 -0
  162. package/skills/pytdc/SKILL.md +102 -0
  163. package/skills/pytorch/SKILL.md +31 -0
  164. package/skills/pytorch-lightning/SKILL.md +119 -0
  165. package/skills/pyzotero/SKILL.md +104 -0
  166. package/skills/qiskit/SKILL.md +119 -0
  167. package/skills/qutip/SKILL.md +111 -0
  168. package/skills/ralph/SKILL.md +23 -0
  169. package/skills/ralplan/SKILL.md +105 -0
  170. package/skills/rdflib/SKILL.md +29 -0
  171. package/skills/rdkit/SKILL.md +30 -0
  172. package/skills/read-only-explorer/SKILL.md +85 -0
  173. package/skills/receiving-code-review/SKILL.md +103 -0
  174. package/skills/release/SKILL.md +117 -0
  175. package/skills/remember/SKILL.md +39 -0
  176. package/skills/requesting-code-review/SKILL.md +85 -0
  177. package/skills/requirements-to-task-packet/SKILL.md +65 -0
  178. package/skills/research-grants/SKILL.md +118 -0
  179. package/skills/research-lookup/SKILL.md +117 -0
  180. package/skills/research-reproducibility/SKILL.md +28 -0
  181. package/skills/resource-discovery-config/SKILL.md +43 -0
  182. package/skills/rowan/SKILL.md +100 -0
  183. package/skills/runtime-state-reader/SKILL.md +46 -0
  184. package/skills/safe-bash/SKILL.md +85 -0
  185. package/skills/scanpy/SKILL.md +32 -0
  186. package/skills/scholar-evaluation/SKILL.md +115 -0
  187. package/skills/scientific-brainstorming/SKILL.md +118 -0
  188. package/skills/scientific-critical-thinking/SKILL.md +119 -0
  189. package/skills/scientific-schematics/SKILL.md +116 -0
  190. package/skills/scientific-slides/SKILL.md +117 -0
  191. package/skills/scientific-visualization/SKILL.md +109 -0
  192. package/skills/scientific-writing/SKILL.md +119 -0
  193. package/skills/scikit-bio/SKILL.md +92 -0
  194. package/skills/scikit-learn/SKILL.md +99 -0
  195. package/skills/scikit-survival/SKILL.md +110 -0
  196. package/skills/sciomc/SKILL.md +86 -0
  197. package/skills/scvelo/SKILL.md +106 -0
  198. package/skills/scvi-tools/SKILL.md +114 -0
  199. package/skills/seaborn/SKILL.md +97 -0
  200. package/skills/secure-agent-orchestration-review/SKILL.md +47 -0
  201. package/skills/self-improve/SKILL.md +119 -0
  202. package/skills/semantic-compression/SKILL.md +62 -0
  203. package/skills/setup/SKILL.md +42 -0
  204. package/skills/shap/SKILL.md +103 -0
  205. package/skills/simpy/SKILL.md +116 -0
  206. package/skills/skill/SKILL.md +117 -0
  207. package/skills/skill-search/SKILL.md +67 -0
  208. package/skills/skillify/SKILL.md +46 -0
  209. package/skills/smart-explore/SKILL.md +94 -0
  210. package/skills/sqlite-pandas/SKILL.md +30 -0
  211. package/skills/stable-baselines3/SKILL.md +86 -0
  212. package/skills/state-mutation-locking/SKILL.md +44 -0
  213. package/skills/statistical-analysis/SKILL.md +108 -0
  214. package/skills/statsmodels/SKILL.md +29 -0
  215. package/skills/subagent-driven-development/SKILL.md +89 -0
  216. package/skills/sympy/SKILL.md +115 -0
  217. package/skills/system-prompts/SKILL.md +116 -0
  218. package/skills/systematic-debugging/SKILL.md +119 -0
  219. package/skills/team/SKILL.md +85 -0
  220. package/skills/test-driven-development/SKILL.md +84 -0
  221. package/skills/tiledbvcf/SKILL.md +119 -0
  222. package/skills/timeline-report/SKILL.md +85 -0
  223. package/skills/timesfm-forecasting/SKILL.md +112 -0
  224. package/skills/torch-geometric/SKILL.md +118 -0
  225. package/skills/torchdrug/SKILL.md +118 -0
  226. package/skills/trace/SKILL.md +118 -0
  227. package/skills/transformers/SKILL.md +110 -0
  228. package/skills/treatment-plans/SKILL.md +119 -0
  229. package/skills/ui-render-performance/SKILL.md +41 -0
  230. package/skills/ultragoal/SKILL.md +63 -0
  231. package/skills/ultraqa/SKILL.md +85 -0
  232. package/skills/ultrawork/SKILL.md +20 -0
  233. package/skills/umap-learn/SKILL.md +119 -0
  234. package/skills/usfiscaldata/SKILL.md +118 -0
  235. package/skills/using-git-worktrees/SKILL.md +112 -0
  236. package/skills/using-superpowers/SKILL.md +85 -0
  237. package/skills/using-vetc/SKILL.md +92 -0
  238. package/skills/vaex/SKILL.md +111 -0
  239. package/skills/venue-templates/SKILL.md +113 -0
  240. package/skills/verification-before-completion/SKILL.md +88 -0
  241. package/skills/verification-before-done/SKILL.md +68 -0
  242. package/skills/verify/SKILL.md +33 -0
  243. package/skills/version-bump/SKILL.md +54 -0
  244. package/skills/vetc-analyze-ba/SKILL.md +117 -0
  245. package/skills/vetc-analyze-codebase/SKILL.md +118 -0
  246. package/skills/vetc-api-design/SKILL.md +103 -0
  247. package/skills/vetc-brainstorming/SKILL.md +116 -0
  248. package/skills/vetc-change-proposal/SKILL.md +111 -0
  249. package/skills/vetc-cicd/SKILL.md +113 -0
  250. package/skills/vetc-continuous-learning/SKILL.md +115 -0
  251. package/skills/vetc-deep-interview/SKILL.md +103 -0
  252. package/skills/vetc-docgen/SKILL.md +108 -0
  253. package/skills/vetc-frontend-patterns/SKILL.md +99 -0
  254. package/skills/vetc-iterative-retrieval/SKILL.md +110 -0
  255. package/skills/vetc-java-patterns/SKILL.md +113 -0
  256. package/skills/vetc-meta-skill-creator/SKILL.md +99 -0
  257. package/skills/vetc-oracle-patterns/SKILL.md +109 -0
  258. package/skills/vetc-performance-testing/SKILL.md +104 -0
  259. package/skills/vetc-pr-response/SKILL.md +106 -0
  260. package/skills/vetc-ralph/SKILL.md +108 -0
  261. package/skills/vetc-ralplan/SKILL.md +116 -0
  262. package/skills/vetc-receiving-review/SKILL.md +106 -0
  263. package/skills/vetc-reconcile-patterns/SKILL.md +117 -0
  264. package/skills/vetc-refactoring/SKILL.md +96 -0
  265. package/skills/vetc-runbook/SKILL.md +118 -0
  266. package/skills/vetc-sast/SKILL.md +118 -0
  267. package/skills/vetc-sdlc/SKILL.md +97 -0
  268. package/skills/vetc-security/SKILL.md +117 -0
  269. package/skills/vetc-spec-driven/SKILL.md +111 -0
  270. package/skills/vetc-spec-quality/SKILL.md +117 -0
  271. package/skills/vetc-systematic-debugging/SKILL.md +74 -0
  272. package/skills/vetc-tdd/SKILL.md +96 -0
  273. package/skills/vetc-thinking-pm/SKILL.md +110 -0
  274. package/skills/vetc-ui-visual-qa/SKILL.md +117 -0
  275. package/skills/vetc-verify/SKILL.md +101 -0
  276. package/skills/visual-verdict/SKILL.md +59 -0
  277. package/skills/what-if-oracle/SKILL.md +87 -0
  278. package/skills/widget-rendering/SKILL.md +85 -0
  279. package/skills/wiki/SKILL.md +69 -0
  280. package/skills/workspace-isolation/SKILL.md +85 -0
  281. package/skills/worktree-isolation/SKILL.md +85 -0
  282. package/skills/wowerpoint/SKILL.md +101 -0
  283. package/skills/writer-memory/SKILL.md +82 -0
  284. package/skills/writing-plans/SKILL.md +115 -0
  285. package/skills/writing-skills/SKILL.md +115 -0
  286. package/skills/xgboost/SKILL.md +29 -0
  287. package/skills/xgboost-ts/SKILL.md +28 -0
  288. package/skills/xlsx/SKILL.md +111 -0
  289. package/skills/zarr-python/SKILL.md +101 -0
  290. package/src/categories.ts +383 -0
  291. package/src/format.ts +104 -0
  292. package/src/indexer.ts +101 -0
  293. package/src/proactive.ts +51 -0
  294. package/src/scanner.ts +85 -0
  295. package/src/search.ts +89 -0
  296. package/src/strip.ts +29 -0
  297. package/src/synonyms.ts +83 -0
  298. package/src/text.ts +118 -0
  299. package/src/types.ts +64 -0
@@ -0,0 +1,82 @@
1
+ ---
2
+ name: omc-setup
3
+ description: Install or refresh oh-my-claudecode for plugin, npm, and local-dev setups from the canonical setup flow
4
+ ---
5
+
6
+ # OMC Setup
7
+
8
+ This is the **only command you need to learn**. After running this, everything else is automatic.
9
+
10
+ **When this skill is invoked, immediately execute the workflow below. Do not only restate or summarize these instructions back to the user.**
11
+
12
+ Note: All `~/.claude/...` paths in this guide respect `CLAUDE_CONFIG_DIR` when that environment variable is set.
13
+
14
+ ## Best-Fit Use
15
+
16
+ Choose this setup flow when the user wants to **install, refresh, or repair OMC itself**.
17
+
18
+ - Marketplace/plugin install users should land here after `/plugin install oh-my-claudecode`
19
+ - npm users should land here after `npm i -g oh-my-claude-sisyphus@latest`
20
+ - local-dev and worktree users should land here after updating the checked-out repo and rerunning setup
21
+
22
+ ## Flag Parsing
23
+
24
+ Check for flags in the user's invocation:
25
+ - `--help` → Show Help Text (below) and stop
26
+ - `--local` → Phase 1 only (target=local), then stop
27
+ - `--global` → Phase 1 only (target=global), then stop
28
+ - `--force` → Skip Pre-Setup Check, run full setup (Phase 1 → 2 → 3 → 4)
29
+ - No flags → Run Pre-Setup Check, then full setup if needed
30
+
31
+ ## Help Text
32
+
33
+ When user runs with `--help`, display this and stop:
34
+
35
+ ```
36
+ OMC Setup - Configure oh-my-claudecode
37
+
38
+ USAGE:
39
+ omc-setup Run initial setup wizard (or update if already configured)
40
+ omc-setup --local Configure local project (.claude/CLAUDE.md)
41
+ omc-setup --global Configure global settings (~/.claude/CLAUDE.md)
42
+ omc-setup --force Force full setup wizard even if already configured
43
+ omc-setup --help Show this help
44
+
45
+ MODES:
46
+ Initial Setup (no flags)
47
+ - Interactive wizard for first-time setup
48
+ - Configures CLAUDE.md (local or global)
49
+ - Sets up HUD statusline
50
+ - Checks for updates
51
+ - Offers MCP server configuration
52
+ - Configures team mode defaults (agent count, type, model)
53
+ - If already configured, offers quick update option
54
+
55
+ Local Configuration (--local)
56
+ - Downloads fresh CLAUDE.md to ./.claude/
57
+ - Backs up existing CLAUDE.md to .claude/CLAUDE.md.backup.YYYY-MM-DD
58
+ - Project-specific settings
59
+ - Use this to update project config after OMC upgrades
60
+
61
+ Global Configuration (--global)
62
+ - Downloads fresh CLAUDE.md to ~/.claude/
63
+ - Backs up existing CLAUDE.md to ~/.claude/CLAUDE.md.backup.YYYY-MM-DD
64
+ - Default: explicitly overwrites ~/.claude/CLAUDE.md so plain `claude` also uses OMC
65
+ - Optional preserve mode keeps the user's base `CLAUDE.md` and installs OMC into `CLAUDE-omc.md` for `omc` launches
66
+ - Applies to all Claude Code sessions
67
+ - Cleans up legacy hooks
68
+ - Use this to update global config after OMC upgrades
69
+
70
+ Force Full Setup (--force)
71
+ - Bypasses the "already configured" check
72
+ - Runs the complete setup wizard from scratch
73
+ - Use when you want to reconfigure preferences
74
+
75
+ EXAMPLES:
76
+ omc-setup # First time setup (or update CLAUDE.md if configured)
77
+ omc-setup --local # Update this project
78
+ omc-setup --global # Update all projects
79
+ omc-setup --force # Re-run full setup wizard
80
+
81
+ For more info: https://github.com/Yeachan-Heo/oh-my-claudecode
82
+ ```
@@ -0,0 +1,81 @@
1
+ ---
2
+ name: omc-teams
3
+ description: CLI-team runtime for claude, codex, or gemini workers in tmux panes when you need process-based parallel execution
4
+ ---
5
+
6
+ # OMC Teams Skill
7
+
8
+ Spawn N CLI worker processes in tmux panes to execute tasks in parallel. Supports `claude`, `codex`, and `gemini` agent types.
9
+
10
+ `/omc-teams` is a legacy compatibility skill for the CLI-first runtime: use `omc team ...` commands (not deprecated MCP runtime tools).
11
+
12
+ ## Usage
13
+
14
+ ```bash
15
+ omc-teams N:claude "task description"
16
+ omc-teams N:codex "task description"
17
+ omc-teams N:gemini "task description"
18
+ ```
19
+
20
+ ### Parameters
21
+
22
+ - **N** - Number of CLI workers (1-10)
23
+ - **agent-type** - `claude` (Claude CLI), `codex` (OpenAI Codex CLI), or `gemini` (Google Gemini CLI)
24
+ - **task** - Task description to distribute across all workers
25
+
26
+ ### Examples
27
+
28
+ ```bash
29
+ /omc-teams 2:claude "implement auth module with tests"
30
+ /omc-teams 2:codex "review the auth module for security issues"
31
+ /omc-teams 3:gemini "redesign UI components for accessibility"
32
+ ```
33
+
34
+ ## Requirements
35
+
36
+ - **tmux binary** must be installed and discoverable (`command -v tmux`)
37
+ - **Classic tmux session optional** for in-place pane splitting (`$TMUX` set). Inside cmux or a plain terminal, `omc team` falls back to a detached tmux session instead of splitting the current surface.
38
+ - **claude** CLI: `npm install -g @anthropic-ai/claude-code`
39
+ - **codex** CLI: `npm install -g @openai/codex`
40
+ - **gemini** CLI: `npm install -g @google/gemini-cli`
41
+
42
+ ## Workflow
43
+
44
+ ### Phase 0: Verify prerequisites
45
+
46
+ Check tmux explicitly before claiming it is missing:
47
+
48
+ ```bash
49
+ command -v tmux >/dev/null 2>&1
50
+ ```
51
+
52
+ - If this fails, report that **tmux is not installed** and stop.
53
+ - If `$TMUX` is set, `omc team` can reuse the current tmux window/panes directly.
54
+ - If `$TMUX` is empty but `CMUX_SURFACE_ID` is set, report that the user is running inside **cmux**. Do **not** say tmux is missing or that they are "not inside tmux"; `omc team` will launch a **detached tmux session** for workers instead of splitting the cmux surface.
55
+ - If neither `$TMUX` nor `CMUX_SURFACE_ID` is set, report that the user is in a **plain terminal**. `omc team` can still launch a **detached tmux session**, but if they specifically want in-place pane/window topology they should start from a classic tmux session first.
56
+ - If you need to confirm the active tmux session, use:
57
+
58
+ ```bash
59
+ tmux display-message -p '#S'
60
+ ```
61
+
62
+ ### Phase 1: Parse + validate input
63
+
64
+ Extract:
65
+
66
+ - `N` — worker count (1–10)
67
+ - `agent-type` — `claude|codex|gemini`
68
+ - `task` — task description
69
+
70
+ Validate before decomposing or running anything:
71
+
72
+ - Reject unsupported agent types up front. `/omc-teams` only supports **`claude`**, **`codex`**, and **`gemini`**.
73
+ - If the user asks for an unsupported type such as `expert`, explain that `/omc-teams` launches external CLI workers only.
74
+ - For native Claude Code team agents/roles, direct them to **`team`** instead.
75
+
76
+ ### Phase 2: Decompose task
77
+
78
+ Break work into N independent subtasks (file- or concern-scoped) to avoid write conflicts.
79
+
80
+ ### Phase 2.5: Resolve workspace root for multi-repo plans
81
+
@@ -0,0 +1,111 @@
1
+ ---
2
+ name: omero-integration
3
+ description: Microscopy data management platform. Access images via Python, retrieve datasets, analyze pixels, manage ROIs/annotations, batch processing, for high-content screening and microscopy workflows.
4
+ ---
5
+
6
+ # OMERO Integration
7
+
8
+ ## Overview
9
+
10
+ OMERO is an open-source platform for managing, visualizing, and analyzing microscopy images and metadata. Access images via Python API, retrieve datasets, analyze pixels, manage ROIs and annotations, for high-content screening and microscopy workflows.
11
+
12
+ ## When to Use This Skill
13
+
14
+ This skill should be used when:
15
+ - Working with OMERO Python API (omero-py) to access microscopy data
16
+ - Retrieving images, datasets, projects, or screening data programmatically
17
+ - Analyzing pixel data and creating derived images
18
+ - Creating or managing ROIs (regions of interest) on microscopy images
19
+ - Adding annotations, tags, or metadata to OMERO objects
20
+ - Storing measurement results in OMERO tables
21
+ - Creating server-side scripts for batch processing
22
+ - Performing high-content screening analysis
23
+
24
+ ## Core Capabilities
25
+
26
+ This skill covers eight major capability areas. Each is documented in detail in the references/ directory:
27
+
28
+ ### 1. Connection & Session Management
29
+ **File**: `(see docs)`
30
+
31
+ Establish secure connections to OMERO servers, manage sessions, handle authentication, and work with group contexts. Use this for initial setup and connection patterns.
32
+
33
+ **Common scenarios:**
34
+ - Connect to OMERO server with credentials
35
+ - Use existing session IDs
36
+ - Switch between group contexts
37
+ - Manage connection lifecycle with context managers
38
+
39
+ ### 2. Data Access & Retrieval
40
+ **File**: `(see docs)`
41
+
42
+ Navigate OMERO's hierarchical data structure (Projects → Datasets → Images) and screening data (Screens → Plates → Wells). Retrieve objects, query by attributes, and access metadata.
43
+
44
+ **Common scenarios:**
45
+ - List all projects and datasets for a user
46
+ - Retrieve images by ID or dataset
47
+ - Access screening plate data
48
+ - Query objects with filters
49
+
50
+ ### 3. Metadata & Annotations
51
+ **File**: `(see docs)`
52
+
53
+ Create and manage annotations including tags, key-value pairs, file attachments, and comments. Link annotations to images, datasets, or other objects.
54
+
55
+ **Common scenarios:**
56
+ - Add tags to images
57
+ - Attach analysis results as files
58
+ - Create custom key-value metadata
59
+ - Query annotations by namespace
60
+
61
+ ### 4. Image Processing & Rendering
62
+ **File**: `(see docs)`
63
+
64
+ Access raw pixel data as NumPy arrays, manipulate rendering settings, create derived images, and manage physical dimensions.
65
+
66
+ **Common scenarios:**
67
+ - Extract pixel data for computational analysis
68
+ - Generate thumbnail images
69
+ - Create maximum intensity projections
70
+ - Modify channel rendering settings
71
+
72
+ ### 5. Regions of Interest (ROIs)
73
+ **File**: `(see docs)`
74
+
75
+ Create, retrieve, and analyze ROIs with various shapes (rectangles, ellipses, polygons, masks, points, lines). Extract intensity statistics from ROI regions.
76
+
77
+ **Common scenarios:**
78
+ - Draw rectangular ROIs on images
79
+ - Create polygon masks for segmentation
80
+ - Analyze pixel intensities within ROIs
81
+ - Export ROI coordinates
82
+
83
+ ### 6. OMERO Tables
84
+ **File**: `(see docs)`
85
+
86
+ Store and query structured tabular data associated with OMERO objects. Useful for analysis results, measurements, and metadata.
87
+
88
+ **Common scenarios:**
89
+ - Store quantitative measurements for images
90
+ - Create tables with multiple column types
91
+ - Query table data with conditions
92
+ - Link tables to specific images or datasets
93
+
94
+ ### 7. Scripts & Batch Operations
95
+ **File**: `(see docs)`
96
+
97
+ Create OMERO.scripts that run server-side for batch processing, automated workflows, and integration with OMERO clients.
98
+
99
+ **Common scenarios:**
100
+ - Process multiple images in batch
101
+ - Create automated analysis pipelines
102
+ - Generate summary statistics across datasets
103
+ - Export data in custom formats
104
+
105
+ ### 8. Advanced Features
106
+ **File**: `(see docs)`
107
+
108
+ Covers permissions, filesets, cross-group queries, delete operations, and other advanced functionality.
109
+
110
+ **Common scenarios:**
111
+
@@ -0,0 +1,100 @@
1
+ ---
2
+ name: open-notebook
3
+ description: Self-hosted, open-source alternative to Google NotebookLM for AI-powered research and document analysis. Use when organizing research materials into notebooks, ingesting diverse content sources (PDFs, videos, audio, web pages, Office documents), generating AI-powered notes and summaries, creating multi-speaker podcasts from research, chatting with documents using context-aware AI, searching across materials with full-text and vector search, or running custom content transformations. Supports 16+ AI providers including OpenAI, Anthropic, Google, Ollama, Groq, and Mistral with complete data privacy through self-hosting.
4
+ ---
5
+
6
+ # Open Notebook
7
+
8
+ ## Overview
9
+
10
+ Open Notebook is an open-source, self-hosted alternative to Google's NotebookLM that enables researchers to organize materials, generate AI-powered insights, create podcasts, and have context-aware conversations with their documents — all while maintaining complete data privacy.
11
+
12
+ Unlike Google's Notebook LM, which has no publicly available API outside of the Enterprise version, Open Notebook provides a comprehensive REST API, supports 16+ AI providers, and runs entirely on your own infrastructure.
13
+
14
+ **Key advantages over NotebookLM:**
15
+ - Full REST API for programmatic access and automation
16
+ - Choice of 16+ AI providers (not locked to Google models)
17
+ - Multi-speaker podcast generation with 1-4 customizable speakers (vs. 2-speaker limit)
18
+ - Complete data sovereignty through self-hosting
19
+ - Open source and fully extensible (MIT license)
20
+
21
+ **Repository:** https://github.com/lfnovo/open-notebook
22
+
23
+ ## Quick Start
24
+
25
+ ### Prerequisites
26
+
27
+ - Docker Desktop installed
28
+ - API key for at least one AI provider (or local Ollama for free local inference)
29
+
30
+ # Download the docker-compose file
31
+ curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml
32
+
33
+ # Set the required encryption key
34
+ export OPEN_NOTEBOOK_ENCRYPTION_KEY="your-secret-key-here"
35
+
36
+ # Launch the services
37
+ docker-compose up -d
38
+ ```
39
+
40
+ Access the application:
41
+ - **Frontend UI:** http://localhost:8502
42
+ - **REST API:** http://localhost:5055
43
+ - **API Documentation:** http://localhost:5055/docs
44
+
45
+ ### Configure AI Provider
46
+
47
+ After startup, configure at least one AI provider:
48
+
49
+ 1. Navigate to **Settings > API Keys** in the UI
50
+ 2. Add credentials for your preferred provider (OpenAI, Anthropic, etc.)
51
+ 3. Test the connection and discover available models
52
+ 4. Register models for use across the platform
53
+
54
+ Or configure via the REST API:
55
+
56
+ ```python
57
+ import requests
58
+
59
+ BASE_URL = "http://localhost:5055/api"
60
+
61
+ # Add a credential for an AI provider
62
+ response = requests.post(f"{BASE_URL}/credentials", json={
63
+ "provider": "openai",
64
+ "name": "My OpenAI Key",
65
+ "api_key": "sk-..."
66
+ })
67
+ credential = response.json()
68
+
69
+ # Discover available models
70
+ response = requests.post(
71
+ f"{BASE_URL}/credentials/{credential['id']}/discover"
72
+ )
73
+ discovered = response.json()
74
+
75
+ # Register discovered models
76
+ requests.post(
77
+ f"{BASE_URL}/credentials/{credential['id']}/register-models",
78
+ json={"model_ids": [m["id"] for m in discovered["models"]]}
79
+ )
80
+ ```
81
+
82
+ ## Core Features
83
+
84
+ ### Notebooks
85
+ Organize research into separate notebooks, each containing sources, notes, and chat sessions.
86
+
87
+ ```python
88
+ import requests
89
+
90
+ BASE_URL = "http://localhost:5055/api"
91
+
92
+ # Create a notebook
93
+ response = requests.post(f"{BASE_URL}/notebooks", json={
94
+ "name": "Cancer Genomics Research",
95
+ "description": "Literature review on tumor mutational burden"
96
+ })
97
+ notebook = response.json()
98
+ notebook_id = notebook["id"]
99
+
100
+
@@ -0,0 +1,28 @@
1
+ ---
2
+ name: openephys
3
+ description: Electrophysiology recording and neural data analysis. Use when working with neural recording systems, spike sorting, local field potentials, neuropixel probes, or electrophysiological signal processing. Trigger on imports of openephys, spikeinterface, probeinterface, or mentions of neural recording, neuropixel, spikeglx, electrophysiolog.
4
+ ---
5
+ # openephys
6
+
7
+ Use this skill for electrophysiology data acquisition and analysis.
8
+
9
+ ## Core patterns
10
+
11
+ - **Load recordings**: `read_openephys('session_folder')` for continuous data.
12
+ - **Spike extraction**: Use `spikeinterface` for modern spike sorting pipelines.
13
+ - **LFP analysis**: Bandpass filter 1-300 Hz for local field potentials.
14
+ - **Probe config**: `probeinterface` for neuropixel probe geometry mapping.
15
+
16
+ ## Rules
17
+
18
+ - Always check sampling rate consistency across channels before analysis.
19
+ - Use memmap or chunked loading for large continuous files (>10GB).
20
+ - Reference signals appropriately (common average, median, or bipolar).
21
+
22
+ ## Anti-patterns
23
+
24
+ - Don't load entire recordings into RAM — stream or chunk.
25
+ - Don't apply spike sorting without artifact removal first.
26
+ - Don't mix probe configurations without recalculating channel maps.
27
+
28
+
@@ -0,0 +1,110 @@
1
+ ---
2
+ name: opentrons-integration
3
+ description: Official Opentrons Protocol API for OT-2 and Flex robots. Use when writing protocols specifically for Opentrons hardware with full access to Protocol API v2 features. Best for production Opentrons protocols, official API compatibility. For multi-vendor automation or broader equipment control use pylabrobot.
4
+ ---
5
+
6
+ # Opentrons Integration
7
+
8
+ ## Overview
9
+
10
+ Opentrons is a Python-based lab automation platform for Flex and OT-2 robots. Write Protocol API v2 protocols for liquid handling, control hardware modules (heater-shaker, thermocycler), manage labware, for automated pipetting workflows.
11
+
12
+ ## When to Use This Skill
13
+
14
+ This skill should be used when:
15
+ - Writing Opentrons Protocol API v2 protocols in Python
16
+ - Automating liquid handling workflows on Flex or OT-2 robots
17
+ - Controlling hardware modules (temperature, magnetic, heater-shaker, thermocycler)
18
+ - Setting up labware configurations and deck layouts
19
+ - Implementing complex pipetting operations (serial dilutions, plate replication, PCR setup)
20
+ - Managing tip usage and optimizing protocol efficiency
21
+ - Working with multi-channel pipettes for 96-well plate operations
22
+ - Simulating and testing protocols before robot execution
23
+
24
+ ## Core Capabilities
25
+
26
+ ### 1. Protocol Structure and Metadata
27
+
28
+ Every Opentrons protocol follows a standard structure:
29
+
30
+ ```python
31
+ from opentrons import protocol_api
32
+
33
+ # Metadata
34
+ metadata = {
35
+ 'protocolName': 'My Protocol',
36
+ 'author': 'Name <email@example.com>',
37
+ 'description': 'Protocol description',
38
+ 'apiLevel': '2.19' # Use latest available API version
39
+ }
40
+
41
+ # Requirements (optional)
42
+ requirements = {
43
+ 'robotType': 'Flex', # or 'OT-2'
44
+ 'apiLevel': '2.19'
45
+ }
46
+
47
+ # Run function
48
+ def run(protocol: protocol_api.ProtocolContext):
49
+ # Protocol commands go here
50
+ pass
51
+ ```
52
+
53
+ **Key elements:**
54
+ - Import `protocol_api` from `opentrons`
55
+ - Define `metadata` dict with protocolName, author, description, apiLevel
56
+ - Optional `requirements` dict for robot type and API version
57
+ - Implement `run()` function receiving `ProtocolContext` as parameter
58
+ - All protocol logic goes inside the `run()` function
59
+
60
+ ### 2. Loading Hardware
61
+
62
+ **Loading Instruments (Pipettes):**
63
+
64
+ ```python
65
+ def run(protocol: protocol_api.ProtocolContext):
66
+ # Load pipette on specific mount
67
+ left_pipette = protocol.load_instrument(
68
+ 'p1000_single_flex', # Instrument name
69
+ 'left', # Mount: 'left' or 'right'
70
+ tip_racks=[tip_rack] # List of tip rack labware objects
71
+ )
72
+ ```
73
+
74
+ Common pipette names:
75
+
76
+ # Load labware directly on deck
77
+ plate = protocol.load_labware(
78
+ 'corning_96_wellplate_360ul_flat', # Labware API name
79
+ 'D1', # Deck slot (Flex: A1-D3, OT-2: 1-11)
80
+ label='Sample Plate' # Optional display label
81
+ )
82
+
83
+ # Load tip rack
84
+ tip_rack = protocol.load_labware('opentrons_flex_96_tiprack_1000ul', 'C1')
85
+
86
+ # Load labware on adapter
87
+ adapter = protocol.load_adapter('opentrons_flex_96_tiprack_adapter', 'B1')
88
+ tips = adapter.load_labware('opentrons_flex_96_tiprack_200ul')
89
+ ```
90
+
91
+ **Loading Modules:**
92
+
93
+ ```python
94
+ # Temperature module
95
+ temp_module = protocol.load_module('temperature module gen2', 'D3')
96
+ temp_plate = temp_module.load_labware('corning_96_wellplate_360ul_flat')
97
+
98
+ # Magnetic module
99
+ mag_module = protocol.load_module('magnetic module gen2', 'C2')
100
+ mag_plate = mag_module.load_labware('nest_96_wellplate_100ul_pcr_full_skirt')
101
+
102
+ # Heater-Shaker module
103
+ hs_module = protocol.load_module('heaterShakerModuleV1', 'D1')
104
+ hs_plate = hs_module.load_labware('corning_96_wellplate_360ul_flat')
105
+
106
+ # Thermocycler module (takes up specific slots automatically)
107
+ tc_module = protocol.load_module('thermocyclerModuleV2')
108
+ tc_plate = tc_module.load_labware('nest_96_wellplate_100ul_pcr_full_skirt')
109
+
110
+
@@ -0,0 +1,119 @@
1
+ ---
2
+ name: optimize-for-gpu
3
+ description: "GPU-accelerate Python code using CuPy, Numba CUDA, Warp, cuDF, cuML, cuGraph, KvikIO, cuCIM, cuxfilter, cuVS, cuSpatial, and RAFT. Use whenever the user mentions GPU/CUDA/NVIDIA acceleration, or wants to speed up NumPy, pandas, scikit-learn, scikit-image, NetworkX, GeoPandas, or Faiss workloads. Covers physics simulation, differentiable rendering, mesh ray casting, particle systems (DEM/SPH/fluids), vector/similarity search, GPUDirect Storage file IO, interactive dashboards, geospatial analysis, medical imaging, and sparse eigensolvers. Also use when you see CPU-bound Python code (loops, large arrays, ML pipelines, graph analytics, image processing) that would benefit from GPU acceleration, even if not explicitly requested."
4
+ ---
5
+
6
+ # GPU Optimization for Python with NVIDIA
7
+
8
+ You are an expert GPU optimization engineer. Your job is to help users write new GPU-accelerated code or transform their existing CPU-bound Python code to run on NVIDIA GPUs for dramatic speedups — often 10x to 1000x for suitable workloads.
9
+
10
+ ## When This Skill Applies
11
+
12
+ - User wants to speed up numerical/scientific Python code
13
+ - User is working with large arrays, matrices, or dataframes
14
+ - User mentions CUDA, GPU, NVIDIA, or parallel computing
15
+ - User has NumPy, pandas, SciPy, scikit-learn, NetworkX, or scipy.sparse.linalg code that processes large datasets
16
+ - User needs low-level GPU primitives (sparse eigensolvers, device memory management, multi-GPU communication)
17
+ - User is doing machine learning (training, inference, hyperparameter tuning, preprocessing)
18
+ - User is doing graph analytics (centrality, community detection, shortest paths, PageRank, etc.)
19
+ - User is doing vector search, nearest neighbor search, similarity search, or building a RAG pipeline
20
+ - User has Faiss, Annoy, ScaNN, or sklearn NearestNeighbors code that could be GPU-accelerated
21
+ - User wants GPU-accelerated interactive dashboards, cross-filtering, or exploratory data analysis on large datasets
22
+ - User is doing geospatial analysis (point-in-polygon, spatial joins, trajectory analysis, distance calculations) with GeoPandas or shapely
23
+ - User is doing image processing, computer vision, or medical imaging (filtering, segmentation, morphology, feature detection) with scikit-image or OpenCV
24
+ - User is working with whole-slide images (WSI), digital pathology, microscopy, or remote sensing imagery
25
+
26
+ ## Decision Framework: Which Library to Use
27
+
28
+ Choose the right tool based on what the user's code actually does. Read the appropriate reference file(s) before writing any GPU code.
29
+
30
+ ### CuPy — for array/matrix operations (NumPy replacement)
31
+ **Read:** `(see docs)`
32
+
33
+ Use CuPy when the user's code is primarily:
34
+ - NumPy array operations (element-wise math, linear algebra, FFT, sorting, reductions)
35
+ - SciPy operations (sparse matrices, signal processing, image filtering, special functions)
36
+ - Any code that chains NumPy calls — CuPy is a drop-in replacement
37
+
38
+ CuPy wraps NVIDIA's optimized libraries (cuBLAS, cuFFT, cuSOLVER, cuSPARSE, cuRAND) so standard operations are already tuned. Most NumPy code works by changing `import numpy as np` to `import cupy as cp`.
39
+
40
+ **Best for:** Linear algebra, FFTs, array math, image processing, signal processing, Monte Carlo with array ops, any NumPy-heavy workflow.
41
+
42
+ ### Numba CUDA — for custom GPU kernels
43
+ **Read:** `(see docs)`
44
+
45
+ Use Numba when the user needs:
46
+ - Custom algorithms that don't map to standard array operations
47
+ - Fine-grained control over GPU threads, blocks, and shared memory
48
+ - Element-wise operations with complex logic (use `@vectorize(target='cuda')`)
49
+ - Reduction operations with custom logic
50
+ - Stencil computations or neighbor-dependent calculations
51
+ - Anything requiring the CUDA programming model directly
52
+
53
+ Numba compiles Python directly into CUDA kernels. It gives full control over the GPU's thread hierarchy, shared memory, and synchronization — essential for algorithms that can't be expressed as array operations.
54
+
55
+ **Best for:** Custom kernels, particle simulations, stencil codes, custom reductions, algorithms needing shared memory, any code with complex per-element logic.
56
+
57
+ ### Warp — for simulation, spatial computing, and differentiable programming
58
+ **Read:** `(see docs)`
59
+
60
+ Use Warp when the user's code is primarily:
61
+ - Physics simulation (particles, cloth, fluids, rigid bodies, DEM, SPH)
62
+ - Geometry processing (mesh operations, ray casting, signed distance fields, marching cubes)
63
+ - Robotics (kinematics, dynamics, control with transforms and quaternions)
64
+ - Differentiable simulation for ML training (integrates with PyTorch/JAX autograd)
65
+ - Any Python simulation loop that needs to be JIT-compiled to GPU
66
+ - Spatial computing with meshes, volumes (NanoVDB), hash grids, or BVH queries
67
+
68
+ Warp JIT-compiles `@wp.kernel` Python functions to CUDA, with built-in types for spatial computing (vec3, mat33, quat, transform) and primitives for geometry queries (Mesh, Volume, HashGrid, BVH). All kernels are automatically differentiable.
69
+
70
+ **Best for:** Physics simulation, mesh ray casting, particle systems, differentiable rendering, robotics kinematics, SDF operations, any workload combining spatial data structures with GPU compute.
71
+
72
+ **Warp vs Numba:** Both compile Python to CUDA, but Warp provides higher-level spatial types (vec3, quat, Mesh, Volume) and automatic differentiation, while Numba gives raw CUDA control (shared memory, block/thread management, atomics). Use Warp for simulation/geometry, Numba for general-purpose custom kernels.
73
+
74
+ ### cuDF — for dataframe operations (pandas replacement)
75
+ **Read:** `(see docs)`
76
+
77
+ Use cuDF when the user's code is primarily:
78
+ - pandas DataFrame operations (filtering, groupby, joins, aggregations)
79
+ - CSV/Parquet/JSON reading and processing
80
+ - ETL pipelines or data wrangling on large datasets
81
+ - Any pandas-heavy workflow on datasets that fit in GPU memory
82
+
83
+ cuDF's `cudf.pandas` accelerator mode can speed up existing pandas code with zero code changes. For maximum performance, use the native cuDF API.
84
+
85
+ **Best for:** Data wrangling, ETL, groupby/aggregations, joins, string processing on dataframes, time series on tabular data.
86
+
87
+ ### cuML — for machine learning (scikit-learn replacement)
88
+ **Read:** `(see docs)`
89
+
90
+ Use cuML when the user's code is primarily:
91
+ - scikit-learn estimators (classification, regression, clustering, dimensionality reduction)
92
+ - ML preprocessing (scaling, encoding, imputation, feature extraction)
93
+ - Hyperparameter tuning or cross-validation
94
+ - Tree model inference (XGBoost, LightGBM, sklearn Random Forest via FIL)
95
+ - UMAP, t-SNE, HDBSCAN, or KNN on large datasets
96
+
97
+ cuML's `cuml.accel` accelerator mode can speed up existing sklearn code with zero code changes. For maximum performance, use the native cuML API. Speedups range from 2-10x for simple linear models to 60-600x for complex algorithms like HDBSCAN and KNN.
98
+
99
+ **Best for:** Classification, regression, clustering, dimensionality reduction, preprocessing pipelines, model inference, any scikit-learn-heavy workflow.
100
+
101
+ ### cuGraph — for graph analytics (NetworkX replacement)
102
+ **Read:** `(see docs)`
103
+
104
+ Use cuGraph when the user's code is primarily:
105
+ - NetworkX graph algorithms (centrality, community detection, shortest paths, PageRank)
106
+ - Graph construction and analysis on large networks
107
+ - Social network analysis, knowledge graphs, or recommendation systems
108
+ - Any graph algorithm on networks with 10K+ edges
109
+
110
+ cuGraph's `nx-cugraph` backend can accelerate existing NetworkX code with zero code changes via an environment variable. For maximum performance, use the native cuGraph API with cuDF DataFrames. Speedups range from 10x for small graphs to 500x+ for large graphs (millions of edges).
111
+
112
+ **Best for:** PageRank, betweenness centrality, community detection (Louvain, Leiden), BFS/SSSP, connected components, link prediction, graph neural network sampling, any NetworkX-heavy workflow.
113
+
114
+ ### KvikIO — for high-performance GPU file IO
115
+ **Read:** `(see docs)`
116
+
117
+ Use KvikIO when the user's code is primarily:
118
+
119
+