opencode-knowledge-work 0.0.0-stage → 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 (472) hide show
  1. package/LICENSE +212 -0
  2. package/README.md +124 -2
  3. package/content/bio-research/.mcp.json +48 -0
  4. package/content/bio-research/CONNECTORS.md +23 -0
  5. package/content/bio-research/LICENSE +202 -0
  6. package/content/bio-research/README.md +83 -0
  7. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/LICENSE.txt +201 -0
  8. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/SKILL.md +280 -0
  9. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/asm_schema_overview.md +226 -0
  10. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/field_classification_guide.md +503 -0
  11. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/flattening_guide.md +254 -0
  12. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/supported_instruments.md +151 -0
  13. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/requirements.txt +26 -0
  14. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/convert_to_asm.py +543 -0
  15. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/export_parser.py +481 -0
  16. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/flatten_asm.py +254 -0
  17. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/validate_asm.py +1102 -0
  18. package/content/bio-research/skills/bio-research-nextflow-development/LICENSE.txt +201 -0
  19. package/content/bio-research/skills/bio-research-nextflow-development/SKILL.md +290 -0
  20. package/content/bio-research/skills/bio-research-nextflow-development/references/geo-sra-acquisition.md +416 -0
  21. package/content/bio-research/skills/bio-research-nextflow-development/references/installation.md +96 -0
  22. package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/atacseq.md +138 -0
  23. package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/rnaseq.md +118 -0
  24. package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/sarek.md +145 -0
  25. package/content/bio-research/skills/bio-research-nextflow-development/references/troubleshooting.md +137 -0
  26. package/content/bio-research/skills/bio-research-nextflow-development/scripts/check_environment.py +452 -0
  27. package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/genomes.yaml +148 -0
  28. package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/atacseq.yaml +187 -0
  29. package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/rnaseq.yaml +147 -0
  30. package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/sarek.yaml +233 -0
  31. package/content/bio-research/skills/bio-research-nextflow-development/scripts/detect_data_type.py +300 -0
  32. package/content/bio-research/skills/bio-research-nextflow-development/scripts/generate_samplesheet.py +455 -0
  33. package/content/bio-research/skills/bio-research-nextflow-development/scripts/manage_genomes.py +521 -0
  34. package/content/bio-research/skills/bio-research-nextflow-development/scripts/sra_geo_fetch.py +732 -0
  35. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/__init__.py +69 -0
  36. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/file_discovery.py +189 -0
  37. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/ncbi_utils.py +808 -0
  38. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/sample_inference.py +290 -0
  39. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/validators.py +256 -0
  40. package/content/bio-research/skills/bio-research-scientific-problem-selection/LICENSE.txt +201 -0
  41. package/content/bio-research/skills/bio-research-scientific-problem-selection/SKILL.md +269 -0
  42. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/01-intuition-pumps.md +264 -0
  43. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/02-risk-assessment.md +323 -0
  44. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/03-optimization-function.md +481 -0
  45. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/04-parameter-strategy.md +396 -0
  46. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/05-decision-tree.md +85 -0
  47. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/06-adversity-planning.md +123 -0
  48. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/07-problem-inversion.md +152 -0
  49. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/08-integration-synthesis.md +173 -0
  50. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/09-meta-framework.md +504 -0
  51. package/content/bio-research/skills/bio-research-scvi-tools/LICENSE.txt +201 -0
  52. package/content/bio-research/skills/bio-research-scvi-tools/SKILL.md +155 -0
  53. package/content/bio-research/skills/bio-research-scvi-tools/references/atac_peakvi.md +398 -0
  54. package/content/bio-research/skills/bio-research-scvi-tools/references/batch_correction_sysvi.md +417 -0
  55. package/content/bio-research/skills/bio-research-scvi-tools/references/citeseq_totalvi.md +420 -0
  56. package/content/bio-research/skills/bio-research-scvi-tools/references/data_preparation.md +286 -0
  57. package/content/bio-research/skills/bio-research-scvi-tools/references/environment_setup.md +254 -0
  58. package/content/bio-research/skills/bio-research-scvi-tools/references/label_transfer.md +373 -0
  59. package/content/bio-research/skills/bio-research-scvi-tools/references/multiome_multivi.md +384 -0
  60. package/content/bio-research/skills/bio-research-scvi-tools/references/rna_velocity_velovi.md +410 -0
  61. package/content/bio-research/skills/bio-research-scvi-tools/references/scarches_mapping.md +401 -0
  62. package/content/bio-research/skills/bio-research-scvi-tools/references/scrna_integration.md +429 -0
  63. package/content/bio-research/skills/bio-research-scvi-tools/references/spatial_deconvolution.md +438 -0
  64. package/content/bio-research/skills/bio-research-scvi-tools/references/troubleshooting.md +420 -0
  65. package/content/bio-research/skills/bio-research-scvi-tools/scripts/cluster_embed.py +212 -0
  66. package/content/bio-research/skills/bio-research-scvi-tools/scripts/differential_expression.py +220 -0
  67. package/content/bio-research/skills/bio-research-scvi-tools/scripts/integrate_datasets.py +237 -0
  68. package/content/bio-research/skills/bio-research-scvi-tools/scripts/model_utils.py +634 -0
  69. package/content/bio-research/skills/bio-research-scvi-tools/scripts/prepare_data.py +169 -0
  70. package/content/bio-research/skills/bio-research-scvi-tools/scripts/train_model.py +370 -0
  71. package/content/bio-research/skills/bio-research-scvi-tools/scripts/transfer_labels.py +224 -0
  72. package/content/bio-research/skills/bio-research-scvi-tools/scripts/validate_adata.py +397 -0
  73. package/content/bio-research/skills/bio-research-single-cell-rna-qc/LICENSE.txt +201 -0
  74. package/content/bio-research/skills/bio-research-single-cell-rna-qc/SKILL.md +175 -0
  75. package/content/bio-research/skills/bio-research-single-cell-rna-qc/references/scverse_qc_guidelines.md +186 -0
  76. package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_analysis.py +232 -0
  77. package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_core.py +233 -0
  78. package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_plotting.py +235 -0
  79. package/content/bio-research/skills/bio-research-start/SKILL.md +79 -0
  80. package/content/customer-support/.mcp.json +40 -0
  81. package/content/customer-support/CONNECTORS.md +19 -0
  82. package/content/customer-support/LICENSE +202 -0
  83. package/content/customer-support/README.md +140 -0
  84. package/content/customer-support/skills/customer-support-customer-escalation/SKILL.md +248 -0
  85. package/content/customer-support/skills/customer-support-customer-research/SKILL.md +252 -0
  86. package/content/customer-support/skills/customer-support-draft-response/SKILL.md +418 -0
  87. package/content/customer-support/skills/customer-support-kb-article/SKILL.md +351 -0
  88. package/content/customer-support/skills/customer-support-ticket-triage/SKILL.md +275 -0
  89. package/content/data/.mcp.json +36 -0
  90. package/content/data/CONNECTORS.md +18 -0
  91. package/content/data/LICENSE +202 -0
  92. package/content/data/README.md +121 -0
  93. package/content/data/skills/data-analyze/SKILL.md +119 -0
  94. package/content/data/skills/data-build-dashboard/SKILL.md +924 -0
  95. package/content/data/skills/data-create-viz/SKILL.md +154 -0
  96. package/content/data/skills/data-data-context-extractor/SKILL.md +227 -0
  97. package/content/data/skills/data-data-context-extractor/references/domain-template.md +147 -0
  98. package/content/data/skills/data-data-context-extractor/references/example-output.md +198 -0
  99. package/content/data/skills/data-data-context-extractor/references/skill-template.md +148 -0
  100. package/content/data/skills/data-data-context-extractor/references/sql-dialects.md +121 -0
  101. package/content/data/skills/data-data-context-extractor/scripts/package_data_skill.py +126 -0
  102. package/content/data/skills/data-data-visualization/SKILL.md +305 -0
  103. package/content/data/skills/data-explore-data/SKILL.md +325 -0
  104. package/content/data/skills/data-sql-queries/SKILL.md +428 -0
  105. package/content/data/skills/data-statistical-analysis/SKILL.md +245 -0
  106. package/content/data/skills/data-validate-data/SKILL.md +383 -0
  107. package/content/data/skills/data-write-query/SKILL.md +122 -0
  108. package/content/design/.mcp.json +44 -0
  109. package/content/design/CONNECTORS.md +18 -0
  110. package/content/design/README.md +117 -0
  111. package/content/design/skills/design-accessibility-review/SKILL.md +128 -0
  112. package/content/design/skills/design-design-critique/SKILL.md +118 -0
  113. package/content/design/skills/design-design-handoff/SKILL.md +131 -0
  114. package/content/design/skills/design-design-system/SKILL.md +190 -0
  115. package/content/design/skills/design-research-synthesis/SKILL.md +92 -0
  116. package/content/design/skills/design-user-research/SKILL.md +41 -0
  117. package/content/design/skills/design-ux-copy/SKILL.md +107 -0
  118. package/content/engineering/.mcp.json +48 -0
  119. package/content/engineering/CONNECTORS.md +19 -0
  120. package/content/engineering/README.md +136 -0
  121. package/content/engineering/skills/engineering-architecture/SKILL.md +85 -0
  122. package/content/engineering/skills/engineering-code-review/SKILL.md +118 -0
  123. package/content/engineering/skills/engineering-debug/SKILL.md +95 -0
  124. package/content/engineering/skills/engineering-deploy-checklist/SKILL.md +78 -0
  125. package/content/engineering/skills/engineering-documentation/SKILL.md +49 -0
  126. package/content/engineering/skills/engineering-incident-response/SKILL.md +158 -0
  127. package/content/engineering/skills/engineering-standup/SKILL.md +75 -0
  128. package/content/engineering/skills/engineering-system-design/SKILL.md +42 -0
  129. package/content/engineering/skills/engineering-tech-debt/SKILL.md +32 -0
  130. package/content/engineering/skills/engineering-testing-strategy/SKILL.md +33 -0
  131. package/content/enterprise-search/.mcp.json +36 -0
  132. package/content/enterprise-search/CONNECTORS.md +21 -0
  133. package/content/enterprise-search/LICENSE +202 -0
  134. package/content/enterprise-search/README.md +157 -0
  135. package/content/enterprise-search/skills/enterprise-search-digest/SKILL.md +173 -0
  136. package/content/enterprise-search/skills/enterprise-search-knowledge-synthesis/SKILL.md +258 -0
  137. package/content/enterprise-search/skills/enterprise-search-search/SKILL.md +178 -0
  138. package/content/enterprise-search/skills/enterprise-search-search-strategy/SKILL.md +222 -0
  139. package/content/enterprise-search/skills/enterprise-search-source-management/SKILL.md +173 -0
  140. package/content/finance/.mcp.json +32 -0
  141. package/content/finance/CONNECTORS.md +20 -0
  142. package/content/finance/LICENSE +202 -0
  143. package/content/finance/README.md +92 -0
  144. package/content/finance/skills/finance-audit-support/SKILL.md +374 -0
  145. package/content/finance/skills/finance-close-management/SKILL.md +221 -0
  146. package/content/finance/skills/finance-financial-statements/SKILL.md +335 -0
  147. package/content/finance/skills/finance-journal-entry/SKILL.md +131 -0
  148. package/content/finance/skills/finance-journal-entry-prep/SKILL.md +186 -0
  149. package/content/finance/skills/finance-reconciliation/SKILL.md +175 -0
  150. package/content/finance/skills/finance-sox-testing/SKILL.md +218 -0
  151. package/content/finance/skills/finance-variance-analysis/SKILL.md +266 -0
  152. package/content/human-resources/.mcp.json +28 -0
  153. package/content/human-resources/CONNECTORS.md +19 -0
  154. package/content/human-resources/README.md +138 -0
  155. package/content/human-resources/skills/human-resources-comp-analysis/SKILL.md +92 -0
  156. package/content/human-resources/skills/human-resources-draft-offer/SKILL.md +82 -0
  157. package/content/human-resources/skills/human-resources-interview-prep/SKILL.md +37 -0
  158. package/content/human-resources/skills/human-resources-onboarding/SKILL.md +104 -0
  159. package/content/human-resources/skills/human-resources-org-planning/SKILL.md +28 -0
  160. package/content/human-resources/skills/human-resources-people-report/SKILL.md +99 -0
  161. package/content/human-resources/skills/human-resources-performance-review/SKILL.md +149 -0
  162. package/content/human-resources/skills/human-resources-policy-lookup/SKILL.md +94 -0
  163. package/content/human-resources/skills/human-resources-recruiting-pipeline/SKILL.md +31 -0
  164. package/content/legal/.mcp.json +36 -0
  165. package/content/legal/CONNECTORS.md +21 -0
  166. package/content/legal/LICENSE +202 -0
  167. package/content/legal/README.md +234 -0
  168. package/content/legal/skills/legal-brief/SKILL.md +208 -0
  169. package/content/legal/skills/legal-compliance-check/SKILL.md +274 -0
  170. package/content/legal/skills/legal-legal-response/SKILL.md +457 -0
  171. package/content/legal/skills/legal-legal-risk-assessment/SKILL.md +265 -0
  172. package/content/legal/skills/legal-meeting-briefing/SKILL.md +220 -0
  173. package/content/legal/skills/legal-review-contract/SKILL.md +358 -0
  174. package/content/legal/skills/legal-signature-request/SKILL.md +104 -0
  175. package/content/legal/skills/legal-triage-nda/SKILL.md +262 -0
  176. package/content/legal/skills/legal-vendor-check/SKILL.md +159 -0
  177. package/content/manifest.json +86 -0
  178. package/content/marketing/.mcp.json +60 -0
  179. package/content/marketing/CONNECTORS.md +20 -0
  180. package/content/marketing/LICENSE +202 -0
  181. package/content/marketing/README.md +90 -0
  182. package/content/marketing/skills/marketing-brand-review/SKILL.md +276 -0
  183. package/content/marketing/skills/marketing-campaign-plan/SKILL.md +308 -0
  184. package/content/marketing/skills/marketing-competitive-brief/SKILL.md +331 -0
  185. package/content/marketing/skills/marketing-content-creation/SKILL.md +157 -0
  186. package/content/marketing/skills/marketing-draft-content/SKILL.md +117 -0
  187. package/content/marketing/skills/marketing-email-sequence/SKILL.md +220 -0
  188. package/content/marketing/skills/marketing-performance-report/SKILL.md +392 -0
  189. package/content/marketing/skills/marketing-seo-audit/SKILL.md +190 -0
  190. package/content/operations/.mcp.json +32 -0
  191. package/content/operations/CONNECTORS.md +20 -0
  192. package/content/operations/README.md +135 -0
  193. package/content/operations/skills/operations-capacity-plan/SKILL.md +113 -0
  194. package/content/operations/skills/operations-change-request/SKILL.md +121 -0
  195. package/content/operations/skills/operations-compliance-tracking/SKILL.md +44 -0
  196. package/content/operations/skills/operations-process-doc/SKILL.md +82 -0
  197. package/content/operations/skills/operations-process-optimization/SKILL.md +39 -0
  198. package/content/operations/skills/operations-risk-assessment/SKILL.md +40 -0
  199. package/content/operations/skills/operations-runbook/SKILL.md +87 -0
  200. package/content/operations/skills/operations-status-report/SKILL.md +77 -0
  201. package/content/operations/skills/operations-vendor-review/SKILL.md +104 -0
  202. package/content/pdf-viewer/.mcp.json +8 -0
  203. package/content/pdf-viewer/CONNECTORS.md +15 -0
  204. package/content/pdf-viewer/LICENSE +202 -0
  205. package/content/pdf-viewer/README.md +57 -0
  206. package/content/pdf-viewer/commands/annotate.md +51 -0
  207. package/content/pdf-viewer/commands/fill-form.md +73 -0
  208. package/content/pdf-viewer/commands/open.md +34 -0
  209. package/content/pdf-viewer/commands/sign.md +54 -0
  210. package/content/pdf-viewer/skills/pdf-viewer-view-pdf/SKILL.md +147 -0
  211. package/content/product-management/.mcp.json +72 -0
  212. package/content/product-management/CONNECTORS.md +22 -0
  213. package/content/product-management/LICENSE +202 -0
  214. package/content/product-management/README.md +118 -0
  215. package/content/product-management/commands/brainstorm.md +120 -0
  216. package/content/product-management/skills/product-management-competitive-brief/SKILL.md +302 -0
  217. package/content/product-management/skills/product-management-metrics-review/SKILL.md +388 -0
  218. package/content/product-management/skills/product-management-product-brainstorming/SKILL.md +273 -0
  219. package/content/product-management/skills/product-management-roadmap-update/SKILL.md +266 -0
  220. package/content/product-management/skills/product-management-sprint-planning/SKILL.md +94 -0
  221. package/content/product-management/skills/product-management-stakeholder-update/SKILL.md +352 -0
  222. package/content/product-management/skills/product-management-synthesize-research/SKILL.md +312 -0
  223. package/content/product-management/skills/product-management-write-spec/SKILL.md +250 -0
  224. package/content/productivity/.mcp.json +44 -0
  225. package/content/productivity/CONNECTORS.md +18 -0
  226. package/content/productivity/LICENSE +202 -0
  227. package/content/productivity/README.md +97 -0
  228. package/content/productivity/skills/dashboard.html +3111 -0
  229. package/content/productivity/skills/productivity-memory-management/SKILL.md +323 -0
  230. package/content/productivity/skills/productivity-start/SKILL.md +158 -0
  231. package/content/productivity/skills/productivity-task-management/SKILL.md +91 -0
  232. package/content/productivity/skills/productivity-update/SKILL.md +168 -0
  233. package/content/sales/.mcp.json +100 -0
  234. package/content/sales/CONNECTORS.md +36 -0
  235. package/content/sales/LICENSE +202 -0
  236. package/content/sales/README.md +148 -0
  237. package/content/sales/skills/sales-account-context/SKILL.md +94 -0
  238. package/content/sales/skills/sales-account-plan/SKILL.md +95 -0
  239. package/content/sales/skills/sales-account-research/SKILL.md +99 -0
  240. package/content/sales/skills/sales-account-tiering/SKILL.md +101 -0
  241. package/content/sales/skills/sales-call-prep/SKILL.md +111 -0
  242. package/content/sales/skills/sales-call-summary/SKILL.md +111 -0
  243. package/content/sales/skills/sales-close-plan/SKILL.md +106 -0
  244. package/content/sales/skills/sales-competitive-intelligence/SKILL.md +102 -0
  245. package/content/sales/skills/sales-create-an-asset/SKILL.md +105 -0
  246. package/content/sales/skills/sales-crm-hygiene-check/SKILL.md +103 -0
  247. package/content/sales/skills/sales-customer-health/SKILL.md +108 -0
  248. package/content/sales/skills/sales-customer-voice/SKILL.md +94 -0
  249. package/content/sales/skills/sales-daily-briefing/SKILL.md +61 -0
  250. package/content/sales/skills/sales-deal-advance-gap/SKILL.md +102 -0
  251. package/content/sales/skills/sales-deal-review/SKILL.md +105 -0
  252. package/content/sales/skills/sales-deal-signals/SKILL.md +96 -0
  253. package/content/sales/skills/sales-deal-slip-scenario/SKILL.md +101 -0
  254. package/content/sales/skills/sales-draft-outreach/SKILL.md +116 -0
  255. package/content/sales/skills/sales-end-of-day/SKILL.md +114 -0
  256. package/content/sales/skills/sales-expansion-whitespace/SKILL.md +97 -0
  257. package/content/sales/skills/sales-forecast/SKILL.md +100 -0
  258. package/content/sales/skills/sales-handle-objection/SKILL.md +93 -0
  259. package/content/sales/skills/sales-inbox-sweep/SKILL.md +114 -0
  260. package/content/sales/skills/sales-lead-triage/SKILL.md +105 -0
  261. package/content/sales/skills/sales-log-activity/SKILL.md +111 -0
  262. package/content/sales/skills/sales-pipeline-review/SKILL.md +97 -0
  263. package/content/sales/skills/sales-renewal-radar/SKILL.md +95 -0
  264. package/content/sales/skills/sales-rep-context/SKILL.md +90 -0
  265. package/content/sales/skills/sales-route-lead/SKILL.md +111 -0
  266. package/content/sales/skills/sales-schedule-meeting/SKILL.md +99 -0
  267. package/content/sales/skills/sales-setup/SKILL.md +195 -0
  268. package/content/sales/skills/sales-stakeholder-map/SKILL.md +107 -0
  269. package/content/sales/skills/sales-team-pipeline/SKILL.md +105 -0
  270. package/content/sales/skills/sales-update-opportunity/SKILL.md +111 -0
  271. package/content/sales/skills/sales-weekly-wrap/SKILL.md +90 -0
  272. package/content/sales/skills/sales-win-loss-review/SKILL.md +88 -0
  273. package/content/small-business/.mcp.json +148 -0
  274. package/content/small-business/README.md +117 -0
  275. package/content/small-business/skills/small-business-ad-manager/SKILL.md +128 -0
  276. package/content/small-business/skills/small-business-ad-manager/reference/ad_copy.md +112 -0
  277. package/content/small-business/skills/small-business-ad-manager/reference/change_playbook.md +127 -0
  278. package/content/small-business/skills/small-business-ad-manager/reference/data_sources.md +100 -0
  279. package/content/small-business/skills/small-business-ad-manager/reference/diagnostics.md +89 -0
  280. package/content/small-business/skills/small-business-ad-manager/reference/gotchas.md +181 -0
  281. package/content/small-business/skills/small-business-ap-processor/SKILL.md +158 -0
  282. package/content/small-business/skills/small-business-ap-processor/reference/coding_rules.md +70 -0
  283. package/content/small-business/skills/small-business-ap-processor/reference/gotchas.md +131 -0
  284. package/content/small-business/skills/small-business-ap-processor/reference/intake_and_extraction.md +82 -0
  285. package/content/small-business/skills/small-business-ap-processor/reference/matching_and_exceptions.md +80 -0
  286. package/content/small-business/skills/small-business-ap-processor/reference/payment_run.md +77 -0
  287. package/content/small-business/skills/small-business-brand-style/SKILL.md +106 -0
  288. package/content/small-business/skills/small-business-build-agent/SKILL.md +105 -0
  289. package/content/small-business/skills/small-business-build-agent/reference/capture.md +133 -0
  290. package/content/small-business/skills/small-business-build-agent/reference/gotchas.md +204 -0
  291. package/content/small-business/skills/small-business-build-agent/reference/skill_authoring.md +165 -0
  292. package/content/small-business/skills/small-business-build-connector/SKILL.md +102 -0
  293. package/content/small-business/skills/small-business-build-connector/reference/discovery.md +120 -0
  294. package/content/small-business/skills/small-business-build-connector/reference/gotchas.md +237 -0
  295. package/content/small-business/skills/small-business-build-connector/reference/paths.md +106 -0
  296. package/content/small-business/skills/small-business-build-connector/reference/use-zapier.md +128 -0
  297. package/content/small-business/skills/small-business-business-pulse/SKILL.md +181 -0
  298. package/content/small-business/skills/small-business-business-pulse/reference/data_sources.md +173 -0
  299. package/content/small-business/skills/small-business-business-pulse/reference/gotchas.md +103 -0
  300. package/content/small-business/skills/small-business-business-pulse/reference/output_template.md +109 -0
  301. package/content/small-business/skills/small-business-business-pulse/reference/thresholds.md +71 -0
  302. package/content/small-business/skills/small-business-business-pulse/reference/v2_sources.md +63 -0
  303. package/content/small-business/skills/small-business-call-list/SKILL.md +82 -0
  304. package/content/small-business/skills/small-business-canva-creator/SKILL.md +448 -0
  305. package/content/small-business/skills/small-business-canva-creator/reference/canva-api.md +208 -0
  306. package/content/small-business/skills/small-business-canva-creator/reference/examples/boutique-brief-campaign.md +181 -0
  307. package/content/small-business/skills/small-business-canva-creator/reference/gotchas.md +380 -0
  308. package/content/small-business/skills/small-business-canva-creator/reference/hubspot-staging.md +137 -0
  309. package/content/small-business/skills/small-business-cash-flow-snapshot/SKILL.md +251 -0
  310. package/content/small-business/skills/small-business-cash-flow-snapshot/reference/examples/worked-example.md +92 -0
  311. package/content/small-business/skills/small-business-cash-flow-snapshot/reference/gotchas.md +62 -0
  312. package/content/small-business/skills/small-business-cash-flow-snapshot/reference/v2_sources.md +84 -0
  313. package/content/small-business/skills/small-business-close-month/SKILL.md +86 -0
  314. package/content/small-business/skills/small-business-content-strategy/SKILL.md +152 -0
  315. package/content/small-business/skills/small-business-content-strategy/reference/examples/retail-boutique-example.md +71 -0
  316. package/content/small-business/skills/small-business-content-strategy/reference/gotchas.md +104 -0
  317. package/content/small-business/skills/small-business-content-strategy/reference/v2_sources.md +40 -0
  318. package/content/small-business/skills/small-business-contract-review/SKILL.md +158 -0
  319. package/content/small-business/skills/small-business-contract-review/reference/docusign-fetch.md +32 -0
  320. package/content/small-business/skills/small-business-contract-review/reference/examples/flagged-summary-saas.md +97 -0
  321. package/content/small-business/skills/small-business-contract-review/reference/gmail-fetch.md +30 -0
  322. package/content/small-business/skills/small-business-contract-review/reference/gotchas.md +105 -0
  323. package/content/small-business/skills/small-business-contract-review/reference/m365-fetch.md +60 -0
  324. package/content/small-business/skills/small-business-crm-autopilot/SKILL.md +162 -0
  325. package/content/small-business/skills/small-business-crm-autopilot/reference/cleanup-checklist.md +82 -0
  326. package/content/small-business/skills/small-business-crm-autopilot/reference/examples/cleanup-deal.md +83 -0
  327. package/content/small-business/skills/small-business-crm-autopilot/reference/examples/log-call-happy-path.md +68 -0
  328. package/content/small-business/skills/small-business-crm-autopilot/reference/examples/log-email-happy-path.md +50 -0
  329. package/content/small-business/skills/small-business-crm-autopilot/reference/gotchas.md +110 -0
  330. package/content/small-business/skills/small-business-crm-autopilot/reference/hubspot-fields.md +62 -0
  331. package/content/small-business/skills/small-business-crm-autopilot/reference/lightweight_crm.md +125 -0
  332. package/content/small-business/skills/small-business-crm-autopilot/reference/salesforce-fields.md +122 -0
  333. package/content/small-business/skills/small-business-crm-autopilot/reference/standing_mode.md +144 -0
  334. package/content/small-business/skills/small-business-grant-rfp-writer/SKILL.md +162 -0
  335. package/content/small-business/skills/small-business-grant-rfp-writer/reference/drafting.md +129 -0
  336. package/content/small-business/skills/small-business-grant-rfp-writer/reference/go_no_go.md +125 -0
  337. package/content/small-business/skills/small-business-grant-rfp-writer/reference/gotchas.md +180 -0
  338. package/content/small-business/skills/small-business-grant-rfp-writer/reference/opportunity_sources.md +90 -0
  339. package/content/small-business/skills/small-business-grant-rfp-writer/reference/org_profile.md +81 -0
  340. package/content/small-business/skills/small-business-grow-pipeline/SKILL.md +92 -0
  341. package/content/small-business/skills/small-business-growth-pulse/SKILL.md +143 -0
  342. package/content/small-business/skills/small-business-growth-pulse/reference/data_sources.md +113 -0
  343. package/content/small-business/skills/small-business-growth-pulse/reference/gotchas.md +175 -0
  344. package/content/small-business/skills/small-business-growth-pulse/reference/output_template.md +122 -0
  345. package/content/small-business/skills/small-business-growth-pulse/reference/thresholds.md +110 -0
  346. package/content/small-business/skills/small-business-hiring-screener/SKILL.md +137 -0
  347. package/content/small-business/skills/small-business-hiring-screener/reference/candidate_comms.md +132 -0
  348. package/content/small-business/skills/small-business-hiring-screener/reference/fair_screening.md +103 -0
  349. package/content/small-business/skills/small-business-hiring-screener/reference/gotchas.md +183 -0
  350. package/content/small-business/skills/small-business-hiring-screener/reference/onboarding.md +82 -0
  351. package/content/small-business/skills/small-business-hiring-screener/reference/rubric.md +122 -0
  352. package/content/small-business/skills/small-business-inbox-manager/SKILL.md +130 -0
  353. package/content/small-business/skills/small-business-inbox-manager/reference/digest_format.md +110 -0
  354. package/content/small-business/skills/small-business-inbox-manager/reference/gotchas.md +220 -0
  355. package/content/small-business/skills/small-business-inbox-manager/reference/handoffs.md +77 -0
  356. package/content/small-business/skills/small-business-inbox-manager/reference/reply_drafting.md +116 -0
  357. package/content/small-business/skills/small-business-inbox-manager/reference/triage_rules.md +72 -0
  358. package/content/small-business/skills/small-business-inventory-planner/SKILL.md +126 -0
  359. package/content/small-business/skills/small-business-inventory-planner/reference/data_sources.md +94 -0
  360. package/content/small-business/skills/small-business-inventory-planner/reference/gotchas.md +153 -0
  361. package/content/small-business/skills/small-business-inventory-planner/reference/po_drafting.md +92 -0
  362. package/content/small-business/skills/small-business-inventory-planner/reference/seasonality.md +112 -0
  363. package/content/small-business/skills/small-business-inventory-planner/reference/velocity_and_reorder.md +154 -0
  364. package/content/small-business/skills/small-business-invoice-chase/SKILL.md +131 -0
  365. package/content/small-business/skills/small-business-invoice-chase/reference/examples/firm-reminder.md +28 -0
  366. package/content/small-business/skills/small-business-invoice-chase/reference/examples/gentle-reminder.md +27 -0
  367. package/content/small-business/skills/small-business-invoice-chase/reference/gotchas.md +75 -0
  368. package/content/small-business/skills/small-business-invoice-chase/reference/tone-matching.md +44 -0
  369. package/content/small-business/skills/small-business-invoice-chase/reference/v2_sources.md +78 -0
  370. package/content/small-business/skills/small-business-job-post-builder/SKILL.md +204 -0
  371. package/content/small-business/skills/small-business-job-post-builder/reference/docusign-routing.md +63 -0
  372. package/content/small-business/skills/small-business-job-post-builder/reference/examples/worked-example.md +110 -0
  373. package/content/small-business/skills/small-business-job-post-builder/reference/existing-document-merge.md +58 -0
  374. package/content/small-business/skills/small-business-job-post-builder/reference/gotchas.md +68 -0
  375. package/content/small-business/skills/small-business-job-post-builder/reference/interview-guide-structure.md +93 -0
  376. package/content/small-business/skills/small-business-job-post-builder/reference/job-post-structure.md +62 -0
  377. package/content/small-business/skills/small-business-job-post-builder/reference/offer-letter-template.md +145 -0
  378. package/content/small-business/skills/small-business-job-post-builder/reference/role-intake.md +73 -0
  379. package/content/small-business/skills/small-business-lead-finder/SKILL.md +119 -0
  380. package/content/small-business/skills/small-business-lead-finder/reference/gotchas.md +152 -0
  381. package/content/small-business/skills/small-business-lead-finder/reference/icp_method.md +97 -0
  382. package/content/small-business/skills/small-business-lead-finder/reference/output_template.md +124 -0
  383. package/content/small-business/skills/small-business-lead-finder/reference/scoring.md +92 -0
  384. package/content/small-business/skills/small-business-lead-finder/reference/sourcing.md +78 -0
  385. package/content/small-business/skills/small-business-lead-triage/SKILL.md +81 -0
  386. package/content/small-business/skills/small-business-lead-triage/reference/examples/happy-path-triage.md +68 -0
  387. package/content/small-business/skills/small-business-lead-triage/reference/gotchas.md +76 -0
  388. package/content/small-business/skills/small-business-lead-triage/reference/hubspot-scoring.md +169 -0
  389. package/content/small-business/skills/small-business-marketing-monday/SKILL.md +108 -0
  390. package/content/small-business/skills/small-business-monday-brief/SKILL.md +97 -0
  391. package/content/small-business/skills/small-business-month-end-prep/SKILL.md +331 -0
  392. package/content/small-business/skills/small-business-month-end-prep/reference/close-packet-format.md +127 -0
  393. package/content/small-business/skills/small-business-month-end-prep/reference/examples/pl-narrative.md +52 -0
  394. package/content/small-business/skills/small-business-month-end-prep/reference/gotchas.md +113 -0
  395. package/content/small-business/skills/small-business-month-end-prep/reference/paypal-settlements.md +110 -0
  396. package/content/small-business/skills/small-business-month-end-prep/reference/quickbooks-reconcile.md +71 -0
  397. package/content/small-business/skills/small-business-month-end-prep/reference/v2_sources.md +125 -0
  398. package/content/small-business/skills/small-business-month-end-prep/reference/xero-reconcile.md +175 -0
  399. package/content/small-business/skills/small-business-month-end-prep/reference/zoho-books-reconcile.md +168 -0
  400. package/content/small-business/skills/small-business-outreach-composer/SKILL.md +144 -0
  401. package/content/small-business/skills/small-business-outreach-composer/reference/gotchas.md +213 -0
  402. package/content/small-business/skills/small-business-outreach-composer/reference/output_template.md +147 -0
  403. package/content/small-business/skills/small-business-outreach-composer/reference/sequence_patterns.md +99 -0
  404. package/content/small-business/skills/small-business-outreach-composer/reference/slop_test.md +164 -0
  405. package/content/small-business/skills/small-business-pay-the-bills/SKILL.md +101 -0
  406. package/content/small-business/skills/small-business-payroll-prep/SKILL.md +139 -0
  407. package/content/small-business/skills/small-business-payroll-prep/reference/anomaly_rules.md +99 -0
  408. package/content/small-business/skills/small-business-payroll-prep/reference/books_sync.md +72 -0
  409. package/content/small-business/skills/small-business-payroll-prep/reference/gotchas.md +153 -0
  410. package/content/small-business/skills/small-business-payroll-prep/reference/run_sheet_format.md +90 -0
  411. package/content/small-business/skills/small-business-payroll-prep/reference/timesheet_intake.md +118 -0
  412. package/content/small-business/skills/small-business-plan-payroll/SKILL.md +88 -0
  413. package/content/small-business/skills/small-business-proposal-builder/SKILL.md +168 -0
  414. package/content/small-business/skills/small-business-proposal-builder/reference/discovery_extraction.md +138 -0
  415. package/content/small-business/skills/small-business-proposal-builder/reference/gotchas.md +184 -0
  416. package/content/small-business/skills/small-business-proposal-builder/reference/output_template.md +128 -0
  417. package/content/small-business/skills/small-business-proposal-builder/reference/pricing_method.md +125 -0
  418. package/content/small-business/skills/small-business-proposal-builder/reference/proposal_structure.md +120 -0
  419. package/content/small-business/skills/small-business-reactivate/SKILL.md +109 -0
  420. package/content/small-business/skills/small-business-report-builder/SKILL.md +142 -0
  421. package/content/small-business/skills/small-business-report-builder/reference/data_sources.md +168 -0
  422. package/content/small-business/skills/small-business-report-builder/reference/gotchas.md +155 -0
  423. package/content/small-business/skills/small-business-report-builder/reference/output_template.md +109 -0
  424. package/content/small-business/skills/small-business-report-builder/reference/report_spec.md +109 -0
  425. package/content/small-business/skills/small-business-report-builder/reference/saved_reports.md +50 -0
  426. package/content/small-business/skills/small-business-report-pack/SKILL.md +83 -0
  427. package/content/small-business/skills/small-business-restock/SKILL.md +88 -0
  428. package/content/small-business/skills/small-business-review-reputation/SKILL.md +130 -0
  429. package/content/small-business/skills/small-business-review-reputation/reference/churn-signals.md +110 -0
  430. package/content/small-business/skills/small-business-review-reputation/reference/examples/example-report.md +150 -0
  431. package/content/small-business/skills/small-business-review-reputation/reference/gotchas.md +164 -0
  432. package/content/small-business/skills/small-business-review-reputation/reference/response-patterns.md +123 -0
  433. package/content/small-business/skills/small-business-review-reputation/reference/sources.md +116 -0
  434. package/content/small-business/skills/small-business-seo-ai-visibility/SKILL.md +143 -0
  435. package/content/small-business/skills/small-business-seo-ai-visibility/reference/ai_visibility.md +173 -0
  436. package/content/small-business/skills/small-business-seo-ai-visibility/reference/audit_checklist.md +134 -0
  437. package/content/small-business/skills/small-business-seo-ai-visibility/reference/catalog_refresh.md +126 -0
  438. package/content/small-business/skills/small-business-seo-ai-visibility/reference/content_rewrite.md +113 -0
  439. package/content/small-business/skills/small-business-seo-ai-visibility/reference/gotchas.md +211 -0
  440. package/content/small-business/skills/small-business-smb-onboard/SKILL.md +82 -0
  441. package/content/small-business/skills/small-business-smb-onboard/reference/examples/happy-path.md +190 -0
  442. package/content/small-business/skills/small-business-smb-onboard/reference/gotchas.md +111 -0
  443. package/content/small-business/skills/small-business-smb-onboard/reference/onboard-checklist.md +99 -0
  444. package/content/small-business/skills/small-business-smb-onboard/reference/website-research.md +82 -0
  445. package/content/small-business/skills/small-business-smb-router/SKILL.md +216 -0
  446. package/content/small-business/skills/small-business-smb-router/reference/connector-map.md +96 -0
  447. package/content/small-business/skills/small-business-social-content-engine/SKILL.md +162 -0
  448. package/content/small-business/skills/small-business-social-content-engine/reference/calendar.md +116 -0
  449. package/content/small-business/skills/small-business-social-content-engine/reference/canva-api.md +208 -0
  450. package/content/small-business/skills/small-business-social-content-engine/reference/examples/okonkwo-campaign.md +190 -0
  451. package/content/small-business/skills/small-business-social-content-engine/reference/gotchas.md +447 -0
  452. package/content/small-business/skills/small-business-social-content-engine/reference/publishing.md +166 -0
  453. package/content/small-business/skills/small-business-social-content-engine/reference/shopify-assets.md +77 -0
  454. package/content/small-business/skills/small-business-speed-to-lead/SKILL.md +172 -0
  455. package/content/small-business/skills/small-business-speed-to-lead/reference/approval.md +61 -0
  456. package/content/small-business/skills/small-business-speed-to-lead/reference/gotchas.md +167 -0
  457. package/content/small-business/skills/small-business-speed-to-lead/reference/qualification.md +153 -0
  458. package/content/small-business/skills/small-business-speed-to-lead/reference/response_patterns.md +184 -0
  459. package/content/small-business/skills/small-business-tax-prep/SKILL.md +85 -0
  460. package/content/small-business/skills/small-business-tax-season-organizer/SKILL.md +210 -0
  461. package/content/small-business/skills/small-business-tax-season-organizer/reference/calculation-assumptions.md +177 -0
  462. package/content/small-business/skills/small-business-tax-season-organizer/reference/connector-queries.md +267 -0
  463. package/content/small-business/skills/small-business-tax-season-organizer/reference/examples/quarterly-estimate.md +92 -0
  464. package/content/small-business/skills/small-business-tax-season-organizer/reference/examples/year-end-1099.md +102 -0
  465. package/content/small-business/skills/small-business-tax-season-organizer/reference/gotchas.md +104 -0
  466. package/content/small-business/skills/small-business-tax-season-organizer/reference/output-formats.md +68 -0
  467. package/content/small-business/skills/small-business-ticket-deflector/SKILL.md +164 -0
  468. package/content/small-business/skills/small-business-ticket-deflector/reference/examples/deny-refund-request.md +98 -0
  469. package/content/small-business/skills/small-business-ticket-deflector/reference/examples/respond-refund-request.md +77 -0
  470. package/content/small-business/skills/small-business-ticket-deflector/reference/gotchas.md +57 -0
  471. package/index.ts +84 -0
  472. package/package.json +30 -3
@@ -0,0 +1,155 @@
1
+ ---
2
+ name: scvi-tools
3
+ description: Deep learning for single-cell analysis using scvi-tools. This skill should be used when users need (1) data integration and batch correction with scVI/scANVI, (2) ATAC-seq analysis with PeakVI, (3) CITE-seq multi-modal analysis with totalVI, (4) multiome RNA+ATAC analysis with MultiVI, (5) spatial transcriptomics deconvolution with DestVI, (6) label transfer and reference mapping with scANVI/scArches, (7) RNA velocity with veloVI, or (8) any deep learning-based single-cell method. Triggers include mentions of scVI, scANVI, totalVI, PeakVI, MultiVI, DestVI, veloVI, sysVI, scArches, variational autoencoder, VAE, batch correction, data integration, multi-modal, CITE-seq, multiome, reference mapping, latent space.
4
+ ---
5
+
6
+ # scvi-tools Deep Learning Skill
7
+
8
+ This skill provides guidance for deep learning-based single-cell analysis using scvi-tools, the leading framework for probabilistic models in single-cell genomics.
9
+
10
+ ## How to Use This Skill
11
+
12
+ 1. Identify the appropriate workflow from the model/workflow tables below
13
+ 2. Read the corresponding reference file for detailed steps and code
14
+ 3. Use scripts in `scripts/` to avoid rewriting common code
15
+ 4. For installation or GPU issues, consult `references/environment_setup.md`
16
+ 5. For debugging, consult `references/troubleshooting.md`
17
+
18
+ ## When to Use This Skill
19
+
20
+ - When scvi-tools, scVI, scANVI, or related models are mentioned
21
+ - When deep learning-based batch correction or integration is needed
22
+ - When working with multi-modal data (CITE-seq, multiome)
23
+ - When reference mapping or label transfer is required
24
+ - When analyzing ATAC-seq or spatial transcriptomics data
25
+ - When learning latent representations of single-cell data
26
+
27
+ ## Model Selection Guide
28
+
29
+ | Data Type | Model | Primary Use Case |
30
+ |-----------|-------|------------------|
31
+ | scRNA-seq | **scVI** | Unsupervised integration, DE, imputation |
32
+ | scRNA-seq + labels | **scANVI** | Label transfer, semi-supervised integration |
33
+ | CITE-seq (RNA+protein) | **totalVI** | Multi-modal integration, protein denoising |
34
+ | scATAC-seq | **PeakVI** | Chromatin accessibility analysis |
35
+ | Multiome (RNA+ATAC) | **MultiVI** | Joint modality analysis |
36
+ | Spatial + scRNA reference | **DestVI** | Cell type deconvolution |
37
+ | RNA velocity | **veloVI** | Transcriptional dynamics |
38
+ | Cross-technology | **sysVI** | System-level batch correction |
39
+
40
+ ## Workflow Reference Files
41
+
42
+ | Workflow | Reference File | Description |
43
+ |----------|---------------|-------------|
44
+ | Environment Setup | `references/environment_setup.md` | Installation, GPU, version info |
45
+ | Data Preparation | `references/data_preparation.md` | Formatting data for any model |
46
+ | scRNA Integration | `references/scrna_integration.md` | scVI/scANVI batch correction |
47
+ | ATAC-seq Analysis | `references/atac_peakvi.md` | PeakVI for accessibility |
48
+ | CITE-seq Analysis | `references/citeseq_totalvi.md` | totalVI for protein+RNA |
49
+ | Multiome Analysis | `references/multiome_multivi.md` | MultiVI for RNA+ATAC |
50
+ | Spatial Deconvolution | `references/spatial_deconvolution.md` | DestVI spatial analysis |
51
+ | Label Transfer | `references/label_transfer.md` | scANVI reference mapping |
52
+ | scArches Mapping | `references/scarches_mapping.md` | Query-to-reference mapping |
53
+ | Batch Correction | `references/batch_correction_sysvi.md` | Advanced batch methods |
54
+ | RNA Velocity | `references/rna_velocity_velovi.md` | veloVI dynamics |
55
+ | Troubleshooting | `references/troubleshooting.md` | Common issues and solutions |
56
+
57
+ ## CLI Scripts
58
+
59
+ Modular scripts for common workflows. Chain together or modify as needed.
60
+
61
+ ### Pipeline Scripts
62
+
63
+ | Script | Purpose | Usage |
64
+ |--------|---------|-------|
65
+ | `prepare_data.py` | QC, filter, HVG selection | `python scripts/prepare_data.py raw.h5ad prepared.h5ad --batch-key batch` |
66
+ | `train_model.py` | Train any scvi-tools model | `python scripts/train_model.py prepared.h5ad results/ --model scvi` |
67
+ | `cluster_embed.py` | Neighbors, UMAP, Leiden | `python scripts/cluster_embed.py adata.h5ad results/` |
68
+ | `differential_expression.py` | DE analysis | `python scripts/differential_expression.py model/ adata.h5ad de.csv --groupby leiden` |
69
+ | `transfer_labels.py` | Label transfer with scANVI | `python scripts/transfer_labels.py ref_model/ query.h5ad results/` |
70
+ | `integrate_datasets.py` | Multi-dataset integration | `python scripts/integrate_datasets.py results/ data1.h5ad data2.h5ad` |
71
+ | `validate_adata.py` | Check data compatibility | `python scripts/validate_adata.py data.h5ad --batch-key batch` |
72
+
73
+ ### Example Workflow
74
+
75
+ ```bash
76
+ # 1. Validate input data
77
+ python scripts/validate_adata.py raw.h5ad --batch-key batch --suggest
78
+
79
+ # 2. Prepare data (QC, HVG selection)
80
+ python scripts/prepare_data.py raw.h5ad prepared.h5ad --batch-key batch --n-hvgs 2000
81
+
82
+ # 3. Train model
83
+ python scripts/train_model.py prepared.h5ad results/ --model scvi --batch-key batch
84
+
85
+ # 4. Cluster and visualize
86
+ python scripts/cluster_embed.py results/adata_trained.h5ad results/ --resolution 0.8
87
+
88
+ # 5. Differential expression
89
+ python scripts/differential_expression.py results/model results/adata_clustered.h5ad results/de.csv --groupby leiden
90
+ ```
91
+
92
+ ### Python Utilities
93
+
94
+ The `scripts/model_utils.py` provides importable functions for custom workflows:
95
+
96
+ | Function | Purpose |
97
+ |----------|---------|
98
+ | `prepare_adata()` | Data preparation (QC, HVG, layer setup) |
99
+ | `train_scvi()` | Train scVI or scANVI |
100
+ | `evaluate_integration()` | Compute integration metrics |
101
+ | `get_marker_genes()` | Extract DE markers |
102
+ | `save_results()` | Save model, data, plots |
103
+ | `auto_select_model()` | Suggest best model |
104
+ | `quick_clustering()` | Neighbors + UMAP + Leiden |
105
+
106
+ ## Critical Requirements
107
+
108
+ 1. **Raw counts required**: scvi-tools models require integer count data
109
+ ```python
110
+ adata.layers["counts"] = adata.X.copy() # Before normalization
111
+ scvi.model.SCVI.setup_anndata(adata, layer="counts")
112
+ ```
113
+
114
+ 2. **HVG selection**: Use 2000-4000 highly variable genes
115
+ ```python
116
+ sc.pp.highly_variable_genes(adata, n_top_genes=2000, batch_key="batch", layer="counts", flavor="seurat_v3")
117
+ adata = adata[:, adata.var['highly_variable']].copy()
118
+ ```
119
+
120
+ 3. **Batch information**: Specify batch_key for integration
121
+ ```python
122
+ scvi.model.SCVI.setup_anndata(adata, layer="counts", batch_key="batch")
123
+ ```
124
+
125
+ ## Quick Decision Tree
126
+
127
+ ```
128
+ Need to integrate scRNA-seq data?
129
+ ├── Have cell type labels? → scANVI (references/label_transfer.md)
130
+ └── No labels? → scVI (references/scrna_integration.md)
131
+
132
+ Have multi-modal data?
133
+ ├── CITE-seq (RNA + protein)? → totalVI (references/citeseq_totalvi.md)
134
+ ├── Multiome (RNA + ATAC)? → MultiVI (references/multiome_multivi.md)
135
+ └── scATAC-seq only? → PeakVI (references/atac_peakvi.md)
136
+
137
+ Have spatial data?
138
+ └── Need cell type deconvolution? → DestVI (references/spatial_deconvolution.md)
139
+
140
+ Have pre-trained reference model?
141
+ └── Map query to reference? → scArches (references/scarches_mapping.md)
142
+
143
+ Need RNA velocity?
144
+ └── veloVI (references/rna_velocity_velovi.md)
145
+
146
+ Strong cross-technology batch effects?
147
+ └── sysVI (references/batch_correction_sysvi.md)
148
+ ```
149
+
150
+ ## Key Resources
151
+
152
+ - [scvi-tools Documentation](https://docs.scvi-tools.org/)
153
+ - [scvi-tools Tutorials](https://docs.scvi-tools.org/en/stable/tutorials/index.html)
154
+ - [Model Hub](https://huggingface.co/scvi-tools)
155
+ - [GitHub Issues](https://github.com/scverse/scvi-tools/issues)
@@ -0,0 +1,398 @@
1
+ # scATAC-seq Analysis with PeakVI
2
+
3
+ This reference covers single-cell ATAC-seq analysis using PeakVI for dimensionality reduction, batch correction, and differential accessibility.
4
+
5
+ ## Overview
6
+
7
+ PeakVI is a deep generative model for scATAC-seq data that:
8
+ - Models binary accessibility (peak open/closed)
9
+ - Handles batch effects
10
+ - Provides latent representation for clustering
11
+ - Enables differential accessibility analysis
12
+
13
+ ## Prerequisites
14
+
15
+ ```python
16
+ import scvi
17
+ import scanpy as sc
18
+ import numpy as np
19
+ import anndata as ad
20
+
21
+ print(f"scvi-tools version: {scvi.__version__}")
22
+ ```
23
+
24
+ ## Step 1: Load and Prepare ATAC Data
25
+
26
+ ### From 10x Genomics (Cell Ranger ATAC)
27
+
28
+ ```python
29
+ # Peak-cell matrix from fragments
30
+ # Usually in filtered_peak_bc_matrix format
31
+
32
+ adata = sc.read_10x_h5("filtered_peak_bc_matrix.h5")
33
+
34
+ # Or from mtx format
35
+ adata = sc.read_10x_mtx("filtered_peak_bc_matrix/")
36
+
37
+ # Check structure
38
+ print(f"Cells: {adata.n_obs}, Peaks: {adata.n_vars}")
39
+ print(f"Sparsity: {1 - adata.X.nnz / (adata.n_obs * adata.n_vars):.2%}")
40
+ ```
41
+
42
+ ### From ArchR/Signac
43
+
44
+ ```python
45
+ # Export from ArchR (in R)
46
+ # saveArchRProject(proj, outputDirectory="atac_export", load=FALSE)
47
+ # Then read the exported files in Python
48
+
49
+ # From Signac:
50
+ # Export peak matrix and metadata
51
+ ```
52
+
53
+ ## Step 2: Quality Control
54
+
55
+ ```python
56
+ # Calculate QC metrics
57
+ sc.pp.calculate_qc_metrics(adata, inplace=True)
58
+
59
+ # Key metrics for ATAC:
60
+ # - n_genes_by_counts: peaks per cell (should rename)
61
+ # - total_counts: fragments per cell
62
+ adata.obs['n_peaks'] = adata.obs['n_genes_by_counts']
63
+ adata.obs['total_fragments'] = adata.obs['total_counts']
64
+
65
+ # Filter cells
66
+ adata = adata[adata.obs['n_peaks'] > 500].copy()
67
+ adata = adata[adata.obs['n_peaks'] < 50000].copy() # Remove potential doublets
68
+
69
+ # Filter peaks (accessible in at least n cells)
70
+ sc.pp.filter_genes(adata, min_cells=10)
71
+
72
+ print(f"After QC: {adata.shape}")
73
+ ```
74
+
75
+ ### Binarize Data
76
+
77
+ ```python
78
+ # PeakVI works with binary accessibility
79
+ # Binarize if not already binary
80
+ adata.X = (adata.X > 0).astype(np.float32)
81
+
82
+ # Verify
83
+ print(f"Unique values: {np.unique(adata.X.data)}")
84
+ ```
85
+
86
+ ## Step 3: Feature Selection
87
+
88
+ Unlike RNA-seq, peak selection for ATAC is less established. Options:
89
+
90
+ ### Option A: Most Accessible Peaks
91
+
92
+ ```python
93
+ # Select top peaks by accessibility frequency
94
+ peak_accessibility = np.array(adata.X.sum(axis=0)).flatten()
95
+ top_peaks = np.argsort(peak_accessibility)[-50000:] # Top 50k peaks
96
+
97
+ adata = adata[:, top_peaks].copy()
98
+ ```
99
+
100
+ ### Option B: Variable Peaks
101
+
102
+ ```python
103
+ # Select peaks with high variance
104
+ # (Most informative for clustering)
105
+ from sklearn.feature_selection import VarianceThreshold
106
+
107
+ selector = VarianceThreshold(threshold=0.05)
108
+ selector.fit(adata.X)
109
+ adata = adata[:, selector.get_support()].copy()
110
+ ```
111
+
112
+ ### Option C: Peaks Near Genes
113
+
114
+ ```python
115
+ # Keep peaks within promoter regions or gene bodies
116
+ # Requires peak annotation
117
+ # gene_peaks = peaks with gene annotation
118
+ # adata = adata[:, adata.var['near_gene']].copy()
119
+ ```
120
+
121
+ ## Step 4: Add Batch Information
122
+
123
+ ```python
124
+ # Add batch annotation if multiple samples
125
+ adata.obs['batch'] = adata.obs['sample_id'] # Or appropriate column
126
+
127
+ print(adata.obs['batch'].value_counts())
128
+ ```
129
+
130
+ ## Step 5: Setup and Train PeakVI
131
+
132
+ ```python
133
+ # Setup AnnData
134
+ scvi.model.PEAKVI.setup_anndata(
135
+ adata,
136
+ batch_key="batch" # Optional, omit for single batch
137
+ )
138
+
139
+ # Create model
140
+ model = scvi.model.PEAKVI(
141
+ adata,
142
+ n_latent=20, # Latent dimensions
143
+ n_layers_encoder=2,
144
+ n_layers_decoder=2
145
+ )
146
+
147
+ # Train
148
+ model.train(
149
+ max_epochs=200,
150
+ early_stopping=True,
151
+ batch_size=128
152
+ )
153
+
154
+ # Check training
155
+ model.history['elbo_train'].plot()
156
+ ```
157
+
158
+ ## Step 6: Get Latent Representation
159
+
160
+ ```python
161
+ # Latent space for downstream analysis
162
+ adata.obsm["X_PeakVI"] = model.get_latent_representation()
163
+
164
+ # Clustering and visualization
165
+ sc.pp.neighbors(adata, use_rep="X_PeakVI", n_neighbors=15)
166
+ sc.tl.umap(adata)
167
+ sc.tl.leiden(adata, resolution=0.5)
168
+
169
+ # Visualize
170
+ sc.pl.umap(adata, color=['leiden', 'batch'], ncols=2)
171
+ ```
172
+
173
+ ## Step 7: Differential Accessibility
174
+
175
+ ```python
176
+ # Differential accessibility between clusters
177
+ da_results = model.differential_accessibility(
178
+ groupby='leiden',
179
+ group1='0',
180
+ group2='1'
181
+ )
182
+
183
+ # Filter significant peaks
184
+ da_sig = da_results[
185
+ (da_results['is_da_fdr_0.05']) &
186
+ (abs(da_results['lfc_mean']) > 1)
187
+ ]
188
+
189
+ print(f"Significant DA peaks: {len(da_sig)}")
190
+ print(da_sig.head())
191
+ ```
192
+
193
+ ### DA Between Conditions
194
+
195
+ ```python
196
+ # Compare conditions within cell type
197
+ adata_subset = adata[adata.obs['cell_type'] == 'CD4 T cells'].copy()
198
+
199
+ da_condition = model.differential_accessibility(
200
+ groupby='condition',
201
+ group1='treated',
202
+ group2='control'
203
+ )
204
+ ```
205
+
206
+ ## Step 8: Peak Annotation
207
+
208
+ ```python
209
+ # Annotate peaks with nearest genes
210
+ # Using pybedtools or similar
211
+
212
+ # Example peak name format: chr1:1000-2000
213
+ # Parse into bed format for annotation
214
+
215
+ import pandas as pd
216
+
217
+ def parse_peak_names(peak_names):
218
+ """Parse peak names into bed format."""
219
+ records = []
220
+ for peak in peak_names:
221
+ chrom, coords = peak.split(':')
222
+ start, end = coords.split('-')
223
+ records.append({
224
+ 'chrom': chrom,
225
+ 'start': int(start),
226
+ 'end': int(end),
227
+ 'peak': peak
228
+ })
229
+ return pd.DataFrame(records)
230
+
231
+ peak_bed = parse_peak_names(adata.var_names)
232
+ ```
233
+
234
+ ## Step 9: Motif Analysis
235
+
236
+ ```python
237
+ # Export significant peaks for motif analysis
238
+ # Use HOMER, MEME, or chromVAR
239
+
240
+ # Export peak sequences
241
+ sig_peaks = da_sig.index.tolist()
242
+ peak_bed_sig = peak_bed[peak_bed['peak'].isin(sig_peaks)]
243
+ peak_bed_sig.to_csv("significant_peaks.bed", sep='\t', index=False, header=False)
244
+
245
+ # Then run HOMER:
246
+ # findMotifsGenome.pl significant_peaks.bed hg38 motif_output/ -size 200
247
+ ```
248
+
249
+ ## Step 10: Gene Activity Scores
250
+
251
+ ```python
252
+ # Compute gene activity from peak accessibility
253
+ # (Requires peak-gene annotations)
254
+
255
+ def compute_gene_activity(adata, peak_gene_map):
256
+ """
257
+ Compute gene activity scores from peak accessibility.
258
+
259
+ Parameters
260
+ ----------
261
+ adata : AnnData
262
+ ATAC data with peaks
263
+ peak_gene_map : dict
264
+ Mapping of peaks to genes
265
+
266
+ Returns
267
+ -------
268
+ AnnData with gene activity scores
269
+ """
270
+ from scipy.sparse import csr_matrix
271
+
272
+ genes = list(set(peak_gene_map.values()))
273
+ gene_matrix = np.zeros((adata.n_obs, len(genes)))
274
+
275
+ for i, gene in enumerate(genes):
276
+ gene_peaks = [p for p, g in peak_gene_map.items() if g == gene]
277
+ if gene_peaks:
278
+ peak_idx = [list(adata.var_names).index(p) for p in gene_peaks if p in adata.var_names]
279
+ if peak_idx:
280
+ gene_matrix[:, i] = np.array(adata.X[:, peak_idx].sum(axis=1)).flatten()
281
+
282
+ adata_gene = ad.AnnData(
283
+ X=csr_matrix(gene_matrix),
284
+ obs=adata.obs.copy(),
285
+ var=pd.DataFrame(index=genes)
286
+ )
287
+
288
+ return adata_gene
289
+ ```
290
+
291
+ ## Complete Pipeline
292
+
293
+ ```python
294
+ def analyze_scatac(
295
+ adata,
296
+ batch_key=None,
297
+ n_top_peaks=50000,
298
+ n_latent=20,
299
+ resolution=0.5
300
+ ):
301
+ """
302
+ Complete scATAC-seq analysis with PeakVI.
303
+
304
+ Parameters
305
+ ----------
306
+ adata : AnnData
307
+ Raw peak-cell matrix
308
+ batch_key : str, optional
309
+ Batch annotation column
310
+ n_top_peaks : int
311
+ Number of top peaks to use
312
+ n_latent : int
313
+ Latent dimensions
314
+ resolution : float
315
+ Leiden clustering resolution
316
+
317
+ Returns
318
+ -------
319
+ Tuple of (processed AnnData, trained model)
320
+ """
321
+ import scvi
322
+ import scanpy as sc
323
+ import numpy as np
324
+
325
+ adata = adata.copy()
326
+
327
+ # QC
328
+ sc.pp.calculate_qc_metrics(adata, inplace=True)
329
+ adata = adata[adata.obs['n_genes_by_counts'] > 500].copy()
330
+ sc.pp.filter_genes(adata, min_cells=10)
331
+
332
+ # Binarize
333
+ adata.X = (adata.X > 0).astype(np.float32)
334
+
335
+ # Select top peaks
336
+ if adata.n_vars > n_top_peaks:
337
+ peak_accessibility = np.array(adata.X.sum(axis=0)).flatten()
338
+ top_peaks = np.argsort(peak_accessibility)[-n_top_peaks:]
339
+ adata = adata[:, top_peaks].copy()
340
+
341
+ # Setup PeakVI
342
+ scvi.model.PEAKVI.setup_anndata(adata, batch_key=batch_key)
343
+
344
+ # Train
345
+ model = scvi.model.PEAKVI(adata, n_latent=n_latent)
346
+ model.train(max_epochs=200, early_stopping=True)
347
+
348
+ # Latent representation
349
+ adata.obsm["X_PeakVI"] = model.get_latent_representation()
350
+
351
+ # Clustering
352
+ sc.pp.neighbors(adata, use_rep="X_PeakVI")
353
+ sc.tl.umap(adata)
354
+ sc.tl.leiden(adata, resolution=resolution)
355
+
356
+ return adata, model
357
+
358
+ # Usage
359
+ adata, model = analyze_scatac(
360
+ adata,
361
+ batch_key="sample",
362
+ n_top_peaks=50000
363
+ )
364
+
365
+ # Visualize
366
+ sc.pl.umap(adata, color=['leiden', 'sample'])
367
+
368
+ # Differential accessibility
369
+ da_results = model.differential_accessibility(
370
+ groupby='leiden',
371
+ group1='0',
372
+ group2='1'
373
+ )
374
+ ```
375
+
376
+ ## Integration with scRNA-seq
377
+
378
+ For multiome data or separate RNA/ATAC from same cells:
379
+
380
+ ```python
381
+ # See MultiVI for joint RNA+ATAC analysis
382
+ # Or use WNN (weighted nearest neighbors) approach
383
+
384
+ # Transfer labels from RNA to ATAC using shared latent space
385
+ ```
386
+
387
+ ## Troubleshooting
388
+
389
+ | Issue | Cause | Solution |
390
+ |-------|-------|----------|
391
+ | Training slow | Too many peaks | Subset to top 50k peaks |
392
+ | Poor clustering | Too few informative peaks | Use variable peaks |
393
+ | Batch dominates | Strong technical effects | Ensure batch_key is set |
394
+ | Memory error | Large peak matrix | Use sparse format, reduce peaks |
395
+
396
+ ## Key References
397
+
398
+ - Ashuach et al. (2022) "PeakVI: A deep generative model for single-cell chromatin accessibility analysis"