celltype-cli 0.1.0__py3-none-any.whl

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 (89) hide show
  1. celltype_cli-0.1.0.dist-info/METADATA +267 -0
  2. celltype_cli-0.1.0.dist-info/RECORD +89 -0
  3. celltype_cli-0.1.0.dist-info/WHEEL +4 -0
  4. celltype_cli-0.1.0.dist-info/entry_points.txt +2 -0
  5. celltype_cli-0.1.0.dist-info/licenses/LICENSE +21 -0
  6. ct/__init__.py +3 -0
  7. ct/agent/__init__.py +0 -0
  8. ct/agent/case_studies.py +426 -0
  9. ct/agent/config.py +523 -0
  10. ct/agent/doctor.py +544 -0
  11. ct/agent/knowledge.py +523 -0
  12. ct/agent/loop.py +99 -0
  13. ct/agent/mcp_server.py +478 -0
  14. ct/agent/orchestrator.py +733 -0
  15. ct/agent/runner.py +656 -0
  16. ct/agent/sandbox.py +481 -0
  17. ct/agent/session.py +145 -0
  18. ct/agent/system_prompt.py +186 -0
  19. ct/agent/trace_store.py +228 -0
  20. ct/agent/trajectory.py +169 -0
  21. ct/agent/types.py +182 -0
  22. ct/agent/workflows.py +462 -0
  23. ct/api/__init__.py +1 -0
  24. ct/api/app.py +211 -0
  25. ct/api/config.py +120 -0
  26. ct/api/engine.py +124 -0
  27. ct/cli.py +1448 -0
  28. ct/data/__init__.py +0 -0
  29. ct/data/compute_providers.json +59 -0
  30. ct/data/cro_database.json +395 -0
  31. ct/data/downloader.py +238 -0
  32. ct/data/loaders.py +252 -0
  33. ct/kb/__init__.py +5 -0
  34. ct/kb/benchmarks.py +147 -0
  35. ct/kb/governance.py +106 -0
  36. ct/kb/ingest.py +415 -0
  37. ct/kb/reasoning.py +129 -0
  38. ct/kb/schema_monitor.py +162 -0
  39. ct/kb/substrate.py +387 -0
  40. ct/models/__init__.py +0 -0
  41. ct/models/llm.py +370 -0
  42. ct/tools/__init__.py +195 -0
  43. ct/tools/_compound_resolver.py +297 -0
  44. ct/tools/biomarker.py +368 -0
  45. ct/tools/cellxgene.py +282 -0
  46. ct/tools/chemistry.py +1371 -0
  47. ct/tools/claude.py +390 -0
  48. ct/tools/clinical.py +1153 -0
  49. ct/tools/clue.py +249 -0
  50. ct/tools/code.py +1069 -0
  51. ct/tools/combination.py +397 -0
  52. ct/tools/compute.py +402 -0
  53. ct/tools/cro.py +413 -0
  54. ct/tools/data_api.py +2114 -0
  55. ct/tools/design.py +295 -0
  56. ct/tools/dna.py +575 -0
  57. ct/tools/experiment.py +604 -0
  58. ct/tools/expression.py +655 -0
  59. ct/tools/files.py +957 -0
  60. ct/tools/genomics.py +1387 -0
  61. ct/tools/http_client.py +146 -0
  62. ct/tools/imaging.py +319 -0
  63. ct/tools/intel.py +223 -0
  64. ct/tools/literature.py +743 -0
  65. ct/tools/network.py +422 -0
  66. ct/tools/notification.py +111 -0
  67. ct/tools/omics.py +3330 -0
  68. ct/tools/ops.py +1230 -0
  69. ct/tools/parity.py +649 -0
  70. ct/tools/pk.py +245 -0
  71. ct/tools/protein.py +678 -0
  72. ct/tools/regulatory.py +643 -0
  73. ct/tools/remote_data.py +179 -0
  74. ct/tools/report.py +181 -0
  75. ct/tools/repurposing.py +376 -0
  76. ct/tools/safety.py +1280 -0
  77. ct/tools/shell.py +178 -0
  78. ct/tools/singlecell.py +533 -0
  79. ct/tools/statistics.py +552 -0
  80. ct/tools/structure.py +882 -0
  81. ct/tools/target.py +901 -0
  82. ct/tools/translational.py +123 -0
  83. ct/tools/viability.py +218 -0
  84. ct/ui/__init__.py +0 -0
  85. ct/ui/markdown.py +31 -0
  86. ct/ui/status.py +258 -0
  87. ct/ui/suggestions.py +567 -0
  88. ct/ui/terminal.py +1456 -0
  89. ct/ui/traces.py +112 -0
@@ -0,0 +1,267 @@
1
+ Metadata-Version: 2.4
2
+ Name: celltype-cli
3
+ Version: 0.1.0
4
+ Summary: CellType CLI — An autonomous agent for drug discovery research
5
+ Author: CellType Inc.
6
+ License-Expression: MIT
7
+ License-File: LICENSE
8
+ Requires-Python: >=3.10
9
+ Requires-Dist: anthropic>=0.40
10
+ Requires-Dist: claude-agent-sdk>=0.1
11
+ Requires-Dist: httpx>=0.27
12
+ Requires-Dist: markdown>=3.5
13
+ Requires-Dist: nbformat>=5.7
14
+ Requires-Dist: numpy>=1.24
15
+ Requires-Dist: openai>=1.0
16
+ Requires-Dist: pandas>=2.0
17
+ Requires-Dist: prompt-toolkit>=3.0
18
+ Requires-Dist: python-dotenv>=1.0
19
+ Requires-Dist: rich>=13.0
20
+ Requires-Dist: scipy>=1.10
21
+ Requires-Dist: typer>=0.12
22
+ Provides-Extra: all
23
+ Requires-Dist: anndata>=0.10; extra == 'all'
24
+ Requires-Dist: biopython>=1.81; extra == 'all'
25
+ Requires-Dist: celltypist>=1.6; extra == 'all'
26
+ Requires-Dist: cellxgene-census>=1.0; extra == 'all'
27
+ Requires-Dist: fair-esm>=2.0; extra == 'all'
28
+ Requires-Dist: rdkit>=2023.03; extra == 'all'
29
+ Requires-Dist: scanpy>=1.9; extra == 'all'
30
+ Requires-Dist: scikit-learn>=1.3; extra == 'all'
31
+ Requires-Dist: seaborn>=0.13; extra == 'all'
32
+ Requires-Dist: tiledbsoma>=1.0; extra == 'all'
33
+ Requires-Dist: torch>=2.0; extra == 'all'
34
+ Requires-Dist: transformers>=4.40; extra == 'all'
35
+ Provides-Extra: analysis
36
+ Requires-Dist: scikit-learn>=1.3; extra == 'analysis'
37
+ Requires-Dist: seaborn>=0.13; extra == 'analysis'
38
+ Provides-Extra: api
39
+ Requires-Dist: duckdb>=1.0; extra == 'api'
40
+ Requires-Dist: fastapi>=0.100; extra == 'api'
41
+ Requires-Dist: uvicorn[standard]>=0.20; extra == 'api'
42
+ Provides-Extra: biology
43
+ Requires-Dist: biopython>=1.81; extra == 'biology'
44
+ Provides-Extra: chemistry
45
+ Requires-Dist: rdkit>=2023.03; extra == 'chemistry'
46
+ Provides-Extra: dev
47
+ Requires-Dist: pytest-cov>=5.0; extra == 'dev'
48
+ Requires-Dist: pytest>=8.0; extra == 'dev'
49
+ Requires-Dist: ruff>=0.5; extra == 'dev'
50
+ Provides-Extra: ml
51
+ Requires-Dist: fair-esm>=2.0; extra == 'ml'
52
+ Requires-Dist: torch>=2.0; extra == 'ml'
53
+ Requires-Dist: transformers>=4.40; extra == 'ml'
54
+ Provides-Extra: notebook
55
+ Requires-Dist: nbconvert>=7.0; extra == 'notebook'
56
+ Provides-Extra: singlecell
57
+ Requires-Dist: anndata>=0.10; extra == 'singlecell'
58
+ Requires-Dist: celltypist>=1.6; extra == 'singlecell'
59
+ Requires-Dist: cellxgene-census>=1.0; extra == 'singlecell'
60
+ Requires-Dist: scanpy>=1.9; extra == 'singlecell'
61
+ Requires-Dist: tiledbsoma>=1.0; extra == 'singlecell'
62
+ Description-Content-Type: text/markdown
63
+
64
+ # celltype-cli
65
+
66
+ An autonomous agent for drug discovery research. Like Claude Code, but for biology.
67
+
68
+ Ask questions in natural language. celltype-cli plans the analysis, selects the right tools, executes them, validates results, and returns data-backed conclusions.
69
+
70
+ <img src="assets/ct2.gif" alt="ct demo" width="70%">
71
+
72
+ ## Benchmark
73
+
74
+ CellType CLI achieves **90% accuracy** on [BixBench-Verified-50](https://github.com/bixbench/bixbench), outperforming all existing agentic systems for computational biology.
75
+
76
+ ![BixBench Benchmark Results](assets/bixbench_benchmark.png)
77
+
78
+ | System | Accuracy |
79
+ |--------|----------|
80
+ | **celltype-cli (Opus 4.6)** | **90.0%** |
81
+ | Phylo BiomniLab | 88.7% |
82
+ | Edison Analysis | 78.0% |
83
+ | Claude Code (Opus 4.6) | 65.3% |
84
+ | OpenAI Agents SDK (GPT 5.2) | 61.3% |
85
+
86
+ ## Why ct?
87
+
88
+ - **190+ drug discovery tools** — Target prioritization, compound profiling, dose-response modeling, pathway enrichment, safety assessment, clinical development, and more.
89
+ - **Claude-powered reasoning** — Built on the Claude Agent SDK. Claude plans multi-step research workflows, calls tools, self-corrects, and synthesizes findings.
90
+ - **Managed data pipelines** — One-command download of DepMap, PRISM, L1000, and proteomics datasets with auto-discovery loaders.
91
+ - **30+ database APIs** — PubMed, ChEMBL, UniProt, Open Targets, ClinicalTrials.gov, Reactome, PDBe, and more — no setup required.
92
+ - **Research UX** — Interactive terminal with @mentions, session resume, trace logging, HTML reports, and notebook export.
93
+ - **Persistent sandbox** — Stateful Python and R execution across turns (pandas, scipy, gseapy, pydeseq2, BioPython).
94
+ - **Open source** — MIT licensed.
95
+
96
+ ## Installation
97
+
98
+ ### Quick install
99
+
100
+ ```bash
101
+ curl -fsSL https://raw.githubusercontent.com/celltype/cli/main/install.sh | bash
102
+ ```
103
+
104
+ Detects Python 3.10+, installs via `pipx` or `pip`, and launches an interactive setup wizard.
105
+
106
+ ### Manual install
107
+
108
+ ```bash
109
+ # With pipx (isolated environment, recommended)
110
+ pipx install celltype-cli
111
+
112
+ # Or with pip
113
+ pip install celltype-cli
114
+
115
+ # Or with optional scientific stacks (RDKit, scanpy, torch, etc.)
116
+ pip install "celltype-cli[all]"
117
+
118
+ # Run the setup wizard
119
+ ct setup
120
+ ```
121
+
122
+ ### Authentication
123
+
124
+ ```bash
125
+ # Interactive setup (recommended)
126
+ ct setup
127
+
128
+ # Or set directly
129
+ export ANTHROPIC_API_KEY="sk-ant-..."
130
+
131
+ # Non-interactive (CI/scripting)
132
+ ct setup --api-key sk-ant-api03-...
133
+ ```
134
+
135
+ ## Getting Started
136
+
137
+ ### Basic usage
138
+
139
+ ```bash
140
+ # Start interactive session
141
+ ct
142
+
143
+ # Single query
144
+ ct "What are the top degradation targets for this compound?"
145
+
146
+ # Validate setup
147
+ ct doctor
148
+ ```
149
+
150
+ ### Interactive commands
151
+
152
+ Inside `ct` interactive mode:
153
+
154
+ - `/help` — command reference + examples
155
+ - `/tools` — list all tools with status
156
+ - `/agents N <query>` — run N parallel research agents
157
+ - `/case-study <id>` — curated multi-agent case studies
158
+ - `/sessions`, `/resume` — session lifecycle
159
+ - `/copy`, `/export` — save/share outputs
160
+ - `/usage` — token and cost tracking
161
+
162
+ ### Quick examples
163
+
164
+ **Target prioritization**
165
+ ```
166
+ $ ct "I have a CRBN molecular glue. Proteomics shows it degrades
167
+ IKZF1, GSPT1, and CK1α. Which target should I prioritize?"
168
+ ```
169
+
170
+ **Combination strategy**
171
+ ```
172
+ $ ct "My lead compound is immune-cold. What combination strategy should I use?"
173
+ ```
174
+
175
+ **Resistance biomarkers**
176
+ ```
177
+ $ ct "Build a resistance biomarker panel for my lead compound"
178
+ ```
179
+
180
+ ## Key Features
181
+
182
+ ### 190+ Domain Tools
183
+
184
+ | Category | Examples |
185
+ |----------|---------|
186
+ | **Target** | Neosubstrate scoring, degron prediction, co-essentiality networks |
187
+ | **Chemistry** | SAR analysis, fingerprint similarity, scaffold clustering |
188
+ | **Expression** | L1000 signatures, pathway enrichment, TF activity, immune scoring |
189
+ | **Viability** | Dose-response modeling, PRISM screening, therapeutic windows |
190
+ | **Biomarker** | Mutation sensitivity, resistance profiling, dependency validation |
191
+ | **Clinical** | Indication mapping, population sizing, TCGA stratification |
192
+ | **Safety** | Anti-target flagging, multi-modal profiling, SALL4 risk |
193
+ | **Literature** | PubMed, OpenAlex, ChEMBL search |
194
+ | **DNA** | ORF finding, codon optimization, primer design, Golden Gate/Gibson assembly |
195
+ | **Data APIs** | MyGene, UniProt, Reactome, PDBe, ClinicalTrials.gov, and 25+ more |
196
+
197
+ ### Data Management
198
+
199
+ ```bash
200
+ # Download core datasets
201
+ ct data pull depmap # DepMap CRISPR, mutations, expression
202
+ ct data pull prism # PRISM cell viability
203
+ ct data pull msigdb # Gene sets
204
+ ct data pull alphafold # Protein structures (on-demand)
205
+
206
+ # Or point to existing data
207
+ ct config set data.depmap /path/to/depmap/
208
+ ct config set data.prism /path/to/prism/
209
+ ```
210
+
211
+ Without local data, ct still works using 30+ database APIs.
212
+
213
+ ### Reports
214
+
215
+ Every query auto-saves a markdown report. Convert to branded, self-contained HTML:
216
+
217
+ ```bash
218
+ ct report list # list reports
219
+ ct report publish # convert latest .md to .html
220
+ ct report show # open in browser
221
+ ```
222
+
223
+ Dark theme, responsive layout, inline CSS. No CDN, no JavaScript. Shareable via email/Slack.
224
+
225
+ ## Known Limitations
226
+
227
+ - **Local data for some tools** — Target, viability, expression, combination, biomarker tools need local DepMap/PRISM/L1000 datasets. The planner auto-excludes unavailable tools and uses API alternatives.
228
+ - **Optional dependencies** — RDKit (chemistry), scanpy (single-cell), torch (protein embeddings). Tools report install instructions if missing.
229
+ - **API rate limits** — PubMed, UniProt, Open Targets may rate-limit heavy usage.
230
+
231
+ ## Troubleshooting
232
+
233
+ | Symptom | Fix |
234
+ |---------|-----|
235
+ | `ct` fails at startup | `ct doctor` |
236
+ | No API key | `ct setup` or `export ANTHROPIC_API_KEY=...` |
237
+ | Data not found | `ct data pull <dataset>` |
238
+ | Missing dependency | `pip install "celltype-cli[all]"` |
239
+ | Session lost | `ct --continue` (sessions auto-save) |
240
+
241
+ ## Contributing
242
+
243
+ ```bash
244
+ git clone https://github.com/celltype/cli.git
245
+ cd cli
246
+ pip install -e ".[dev]"
247
+ ct setup
248
+ pytest tests/
249
+ ```
250
+
251
+ We welcome contributions — bug reports, feature requests, documentation improvements, and pull requests.
252
+
253
+ ## Enterprise & On-Premise
254
+
255
+ celltype-cli is free and open source, powered by Claude out of the box.
256
+
257
+ For pharma and biotech teams that need to keep data on-premise, CellType offers proprietary research agent models purpose-built to replace frontier LLMs — deployable locally behind your firewall with zero data leaving your infrastructure.
258
+
259
+ **[Contact us](mailto:hello@celltype.com)** to learn more.
260
+
261
+ ## License
262
+
263
+ MIT — see [LICENSE](LICENSE)
264
+
265
+ ---
266
+
267
+ Built by [CellType Inc.](https://celltype.com)
@@ -0,0 +1,89 @@
1
+ ct/__init__.py,sha256=eijQfZAmn822YwCX-q0Vf-qpHf2ayIR2iccB0NAzI_I,92
2
+ ct/cli.py,sha256=V7NbnZKueWoZPpE2B4Hy7HIcomB7cUx0PKY-Fb9CTQc,55125
3
+ ct/agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ ct/agent/case_studies.py,sha256=8RjizVZbi2AQikIUq0V8c0Lr4ab9CpN7MgKOIact-Bg,15730
5
+ ct/agent/config.py,sha256=TI48do3JVEzQD_dCY1YHLGZuI32paTInKaNv1K6Sue8,19308
6
+ ct/agent/doctor.py,sha256=opJxtbXUfGL2yum_mRO-urTUZCiUfInI_MjvNnSPkoY,17112
7
+ ct/agent/knowledge.py,sha256=PJLO7t5Njk90a3gRJ7Q8rIfex7-SMh0h_kBORrLmQR8,34089
8
+ ct/agent/loop.py,sha256=iI5aMh8Un3z6YfzoBCUTiotDFzY9AZvGnJLTH-qDn5k,3376
9
+ ct/agent/mcp_server.py,sha256=nOZhgs_4bPGxZ3ONHVHLfbHEFRt18rmN1YqFBMER7x0,17844
10
+ ct/agent/orchestrator.py,sha256=DDLcW4jDjK_FvJE1r9t8feyw69HX3FJqSDT8x2JWUMM,29086
11
+ ct/agent/runner.py,sha256=skU2_y-_ZzHckoPWaoPgrMrfhD4A37DOZ_pBM9rYTns,26492
12
+ ct/agent/sandbox.py,sha256=EMfbzNqyaE3GwKr-tJsB-iawEX2uJho7M5lPaC4M17s,17694
13
+ ct/agent/session.py,sha256=UNb0w24NGIdg5oS0_0e0mbnjkDH5gS34TD9Fkvvo-Jg,5155
14
+ ct/agent/system_prompt.py,sha256=nEt6aFwA2t0aggrM4PM4D0JujZEFWgGTXu20E7c6T3I,8606
15
+ ct/agent/trace_store.py,sha256=LtBdHTbhGQBw8mw2zYCtXdOlAMEZBu9NFp8XApJDbWk,6898
16
+ ct/agent/trajectory.py,sha256=pYKq39ql3ArwTYt8gTX4ib6pDk1NIbGYHte28vb-EJo,6386
17
+ ct/agent/types.py,sha256=j0Lr5mjKb9tPXCjmy9njEmKJk8sD-Q5OgEEJCEYhT6w,6514
18
+ ct/agent/workflows.py,sha256=jRx4AieT94RY2IdudPbrvwgkza_nmufnweUPpENiZCA,26742
19
+ ct/api/__init__.py,sha256=eMDfvXkGO3L9oe0db0k4pbBQ6W8qfRcq8lEDzgFoybo,87
20
+ ct/api/app.py,sha256=rR5SjyCYMTmMdeGeiB1FYbao2H6dGxjjojroJDsv_5w,6903
21
+ ct/api/config.py,sha256=4X_UNiAe93rFve8v0vGCZVl0_5YMmWc3avKPMRF5m0Q,4060
22
+ ct/api/engine.py,sha256=Rh3n3i8tp1xxTT53qAt3Y5akDOKcTXIuDlyrF1GBQSE,4995
23
+ ct/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
+ ct/data/compute_providers.json,sha256=qcsBsm5841wDTPbhtyctusdkYR_P38bcxFfvyUZxd8o,2160
25
+ ct/data/cro_database.json,sha256=GCDkQZiRpob2B5Q-i94i0-Iut_BQLXWnHq5ClqVgCqg,21470
26
+ ct/data/downloader.py,sha256=rrHMg1xHLcU_ebwVaPmN6uHmlNSBoA45EwuQKmStwfQ,8881
27
+ ct/data/loaders.py,sha256=Z3y3YbJQw3tOUlNQHPxzEqzFswBBHy1U-Iy0HrXShTk,8280
28
+ ct/kb/__init__.py,sha256=M4OqJwjIXAJA1bDBfBmH0Diky_V4sR8eFtOw72dRzos,124
29
+ ct/kb/benchmarks.py,sha256=T1FEGc2bhtWh8IqnniKr1upC_4MSwbB9xBtjWkkiW6M,4944
30
+ ct/kb/governance.py,sha256=TE4YmGv4v5UhFRCo328dVtPdYSXJO2v77dCINzUocrQ,4413
31
+ ct/kb/ingest.py,sha256=qgFe1si3514Qrl48p8v1Y6e_XZaB9kIVyaZLaZuscyA,15812
32
+ ct/kb/reasoning.py,sha256=UD_Uh_4KOBRj-ltrFoqw6t_GV3ITU8huQAF8Ffd07vk,4671
33
+ ct/kb/schema_monitor.py,sha256=OVrwhY6G9OagRVokoe0MkXaazKObc7Hu4MQ0OEfcM74,5546
34
+ ct/kb/substrate.py,sha256=MdrXr64EY2tkp3wQOP7EJ4heWyecAwaBsjKqhO763jg,13807
35
+ ct/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
+ ct/models/llm.py,sha256=DsH8z9yyqNkfkHJLDAwOtC729MoDiqw9_wJUKNzZiVs,14049
37
+ ct/tools/__init__.py,sha256=aIE6NuIi8ug_J1zd7n-jRsyMvs-FXxNE08XiJNRoPzA,5959
38
+ ct/tools/_compound_resolver.py,sha256=QGpi_aMM4uPwTb5OyMZhxH61ZJM-H_Jak9jtJKiEjRE,9625
39
+ ct/tools/biomarker.py,sha256=geY16CCKEk4aikb4ll5v5HzAwfs5FWua0Y_lBIszhwc,14630
40
+ ct/tools/cellxgene.py,sha256=LSzyx4-9Pf-pdp4CyNeRnf-TPCkI5D-ZUp2DYt9QQow,10901
41
+ ct/tools/chemistry.py,sha256=tDRvJRSWytJaRFhXr7_-WcMXbnHxi6F82fXrZDufnSY,55907
42
+ ct/tools/claude.py,sha256=AKjA3lMuWw7-6FzimPY_BwqrhwnPbHg4TI-z5U2R3g4,13388
43
+ ct/tools/clinical.py,sha256=LbpglVZ0l0MmkidVw2qvDqRZCRde788ENQNmXqihnIo,45814
44
+ ct/tools/clue.py,sha256=71ou8HT8MzNM4_ZbV7PPWnfrL4qEOVb_pVHL66HyM4Y,9044
45
+ ct/tools/code.py,sha256=CoRj0Z0n6CrZmdBJaUR6Q8anxGr1znNUAdpzeRCDbVI,45358
46
+ ct/tools/combination.py,sha256=aMLxxE_XUkczgWsjtgolCcR7G5sIseBYXRwCxAucaBY,16779
47
+ ct/tools/compute.py,sha256=3PTUICP8WtUeHTV76aSepu8A0ONLj7vVag5voTaueqk,15826
48
+ ct/tools/cro.py,sha256=OzDyPjkDqsqT30kgZeR-M_QnA1_zS7bl99_5ZEhQTqA,15382
49
+ ct/tools/data_api.py,sha256=GXRQrPP2d-tlLUsXkuDphUzcTY9FHGLBWz1uOGufoi0,79083
50
+ ct/tools/design.py,sha256=1QvQptvi0ZVzE4xO6eyS2h7juzYUbo3ZRNh-GB2cMlw,13179
51
+ ct/tools/dna.py,sha256=pBnLN_9g1OuH2K2HtrwFSstDdKl2faf0uVhAT-D5H6U,20586
52
+ ct/tools/experiment.py,sha256=j0eNcgRmyJOD5FxMzjSbjYZoFXe9ruyMOjfFQz9ry7g,28272
53
+ ct/tools/expression.py,sha256=q0pU8X_68KiaEZwS8jpGvzE5eBh4v4RhO_ErsPdqQ2I,28378
54
+ ct/tools/files.py,sha256=MzhChCYGL-sY8HqxvAA3cKex5Nr18bvkA867sf6fZR8,35513
55
+ ct/tools/genomics.py,sha256=NymMh1-LHEev73fNpC-qDzJkcWFk1AX5ltT-oXGMG3Q,54869
56
+ ct/tools/http_client.py,sha256=d8jj5aUsuAf9Z5RDT-UVykyWreR9CA1535GZX4wYHJI,4159
57
+ ct/tools/imaging.py,sha256=cGQ2B_qlyjG9wMa0vDBiGOpsTO_saZPvrEVd3QJYwJo,13458
58
+ ct/tools/intel.py,sha256=dGQYb39bVOsSujYp6xlGt_4fDYlwymMVPS4nfD3EMdc,8645
59
+ ct/tools/literature.py,sha256=C2Scpenohm8bVjMvsTfsPMkDT_LThGw5QyZWY3lhFqM,28366
60
+ ct/tools/network.py,sha256=cdXP9zQfLnJnRgLOSKOgiFt6tPyHyxrG2ItXcWWyFx4,16128
61
+ ct/tools/notification.py,sha256=RCDsOpfCVjzxtqqB19qe15p4dmWkK0gfZC66t7sueNo,3328
62
+ ct/tools/omics.py,sha256=TUtnPeVaMawOxdFsyK54QAyoeewZ2RUyC8YR5rtOKBo,130007
63
+ ct/tools/ops.py,sha256=wk0VeASfoLdB1GC-cEQ-mqtQTyzB0P33TC3iKDkcPn8,42447
64
+ ct/tools/parity.py,sha256=XBE1JDeM1N__YpdsyplmpPL3BAy8vUIoeqTOzdqFKNk,21987
65
+ ct/tools/pk.py,sha256=rQKXaWLY6v0b7N-1HIBYgIQZOOcjmDYro6k-79E_O0k,9558
66
+ ct/tools/protein.py,sha256=gahmw8Yq-cbo1-wlBq3Fb95zXZPYx0DLOJD0oUqkdQ0,25882
67
+ ct/tools/regulatory.py,sha256=A5z01rSdsRg2b082z4dPN38tL8FinmgHz4olB1RvjLg,23339
68
+ ct/tools/remote_data.py,sha256=sJAzSaYkvNb_vW5l50rY4pKafIqtp0nGy_I5CkKpNeQ,5961
69
+ ct/tools/report.py,sha256=0s3YONU5amsbUUK460huQO1dIeCgapvs4Sas_lrSQeo,6272
70
+ ct/tools/repurposing.py,sha256=aSQO0xNszLCTHKzAuxG_CNjGq0_FbxrTzkSuNnkcwRw,14640
71
+ ct/tools/safety.py,sha256=Gs3Y8hSxPkZ-x8LoqC-TABYOcMDw7GSnNpwFfdYtIcU,49791
72
+ ct/tools/shell.py,sha256=yyBZ9sZhFq0tS4r-FjcRg37LqQiCdGjOYPS5q5xZtjw,5605
73
+ ct/tools/singlecell.py,sha256=hTE-qd6j68wVmLbVO5EF2qK_I6Qyl_M2d4soAJZKQSU,20824
74
+ ct/tools/statistics.py,sha256=xnO5r4P_6s0xoHNqiZB7ZWx8EPoleBLiGyuYszrl9Bg,23572
75
+ ct/tools/structure.py,sha256=7r5cltThDUZHpbI9ZTX-PPW0Hw7ob7er_1hUU-1_rco,34650
76
+ ct/tools/target.py,sha256=eXqcqojWQK85rS6yRcWoouf7wtuhPbom-ynaBAkdUTg,34953
77
+ ct/tools/translational.py,sha256=jmNSLQ8I1yXep2jpnh9n60wLf8OlDpnME7NV4cLOrhc,4603
78
+ ct/tools/viability.py,sha256=83ZQuNjnGtNIbcH81YsqMtqnGWbZsV-PexHF7NkAcrI,8873
79
+ ct/ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
80
+ ct/ui/markdown.py,sha256=dIqb_40OIszW14KVcu1FopnJmJx28SThiBoCObD_EcY,888
81
+ ct/ui/status.py,sha256=lCM1ABgsSKskV8w-0mrAYI3fIvBR5mRn9PURjdpM79I,9609
82
+ ct/ui/suggestions.py,sha256=NMudhU1qPQmlMJhLqvpOE2L_t4hGzutsluM6sjHSvVw,39548
83
+ ct/ui/terminal.py,sha256=fa-TpWImrPH18oYev-6g8am3FucjxYpaBihHqrInkng,58749
84
+ ct/ui/traces.py,sha256=h-3M9mEYkGNLBXVoCSENarOhxoUvJxsp77c00p0Db8E,3592
85
+ celltype_cli-0.1.0.dist-info/METADATA,sha256=IxKNJfgsUqA6I79Z-20_4L_w1lEoPNED1FHyujRva70,8917
86
+ celltype_cli-0.1.0.dist-info/WHEEL,sha256=QccIxa26bgl1E6uMy58deGWi-0aeIkkangHcxk2kWfw,87
87
+ celltype_cli-0.1.0.dist-info/entry_points.txt,sha256=_lqfZifPwauVPWAE4MgLSBSo9RmzfYkFeS0gY3danc0,36
88
+ celltype_cli-0.1.0.dist-info/licenses/LICENSE,sha256=6ksOhIwAkmw9zofwHAJypzHZ8_PdElN8d2WwAVy05rk,1070
89
+ celltype_cli-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.29.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ ct = ct.cli:entry
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 CellType Inc.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
ct/__init__.py ADDED
@@ -0,0 +1,3 @@
1
+ """celltype-cli: An autonomous agent for drug discovery research."""
2
+
3
+ __version__ = "0.1.0"
ct/agent/__init__.py ADDED
File without changes