@pikaa-ai/pikaa 0.3.23 → 0.3.24
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.
- package/assets/brand/orbit-logo-option4-whale.jpg +0 -0
- package/assets/brand/orbit-logo.jpg +0 -0
- package/assets/brand/orbit-logo.png +0 -0
- package/assets/brand/orbit-logo.svg +3 -0
- package/dist/cli.js +337 -162
- package/dist/index.js +1 -2
- package/package.json +1 -2
- package/skills/adaptyv/SKILL.md +0 -240
- package/skills/aeon/SKILL.md +0 -402
- package/skills/analytical-method-validation/SKILL.md +0 -299
- package/skills/anndata/SKILL.md +0 -431
- package/skills/arbor/SKILL.md +0 -152
- package/skills/arboreto/SKILL.md +0 -267
- package/skills/astropy/SKILL.md +0 -353
- package/skills/autoskill/SKILL.md +0 -233
- package/skills/benchling-integration/SKILL.md +0 -229
- package/skills/bgpt-paper-search/SKILL.md +0 -75
- package/skills/bids/SKILL.md +0 -237
- package/skills/biopython/SKILL.md +0 -472
- package/skills/bioservices/SKILL.md +0 -399
- package/skills/bulk-rnaseq/SKILL.md +0 -198
- package/skills/cellxgene-census/SKILL.md +0 -283
- package/skills/cirq/SKILL.md +0 -370
- package/skills/citation-management/SKILL.md +0 -329
- package/skills/clinical-decision-support/SKILL.md +0 -238
- package/skills/clinical-decision-support/references/README.md +0 -62
- package/skills/clinical-reports/SKILL.md +0 -248
- package/skills/clinical-reports/references/README.md +0 -34
- package/skills/cobrapy/SKILL.md +0 -496
- package/skills/consciousness-council/SKILL.md +0 -151
- package/skills/dask/SKILL.md +0 -482
- package/skills/database-lookup/SKILL.md +0 -386
- package/skills/datamol/SKILL.md +0 -200
- package/skills/deepchem/SKILL.md +0 -244
- package/skills/deepspot-m/SKILL.md +0 -175
- package/skills/deeptools/SKILL.md +0 -412
- package/skills/depmap/SKILL.md +0 -301
- package/skills/dhdna-profiler/SKILL.md +0 -184
- package/skills/diffdock/SKILL.md +0 -488
- package/skills/dnanexus-integration/SKILL.md +0 -325
- package/skills/docx/SKILL.md +0 -99
- package/skills/esm/SKILL.md +0 -334
- package/skills/etetoolkit/SKILL.md +0 -327
- package/skills/exa-search/SKILL.md +0 -102
- package/skills/executing-plans/SKILL.md +0 -14
- package/skills/experimental-design/SKILL.md +0 -234
- package/skills/exploratory-data-analysis/SKILL.md +0 -280
- package/skills/flowio/SKILL.md +0 -310
- package/skills/fluidsim/SKILL.md +0 -279
- package/skills/frontend-design/SKILL.md +0 -100
- package/skills/generate-image/SKILL.md +0 -304
- package/skills/geniml/SKILL.md +0 -310
- package/skills/genomic-coordinates/SKILL.md +0 -189
- package/skills/genomic-intelligence/SKILL.md +0 -243
- package/skills/geomaster/README.md +0 -105
- package/skills/geomaster/SKILL.md +0 -366
- package/skills/geopandas/SKILL.md +0 -250
- package/skills/get-available-resources/SKILL.md +0 -260
- package/skills/gget/SKILL.md +0 -153
- package/skills/ginkgo-cloud-lab/SKILL.md +0 -106
- package/skills/glycoengineering/SKILL.md +0 -339
- package/skills/gtars/SKILL.md +0 -282
- package/skills/guardian-rails/SKILL.md +0 -54
- package/skills/histolab/SKILL.md +0 -243
- package/skills/hugging-science/SKILL.md +0 -132
- package/skills/hypogenic/SKILL.md +0 -290
- package/skills/hypothesis-generation/SKILL.md +0 -264
- package/skills/imaging-data-commons/SKILL.md +0 -496
- package/skills/infographics/SKILL.md +0 -315
- package/skills/iso-standards-readiness/SKILL.md +0 -352
- package/skills/lab-hardware-cad/SKILL.md +0 -372
- package/skills/labarchive-integration/SKILL.md +0 -216
- package/skills/lamindb/SKILL.md +0 -408
- package/skills/latchbio-integration/SKILL.md +0 -227
- package/skills/latex-posters/SKILL.md +0 -369
- package/skills/latex-posters/references/README.md +0 -439
- package/skills/liteparse/SKILL.md +0 -295
- package/skills/literature-review/SKILL.md +0 -263
- package/skills/markdown-mermaid-writing/SKILL.md +0 -322
- package/skills/market-research-reports/SKILL.md +0 -337
- package/skills/markitdown/SKILL.md +0 -264
- package/skills/matchms/SKILL.md +0 -276
- package/skills/matlab/SKILL.md +0 -274
- package/skills/matplotlib/SKILL.md +0 -378
- package/skills/medchem/SKILL.md +0 -321
- package/skills/modal/SKILL.md +0 -468
- package/skills/molecular-dynamics/SKILL.md +0 -458
- package/skills/molfeat/SKILL.md +0 -348
- package/skills/ncats-arax/SKILL.md +0 -178
- package/skills/networkx/SKILL.md +0 -440
- package/skills/neurokit2/SKILL.md +0 -323
- package/skills/neuropixels-analysis/SKILL.md +0 -412
- package/skills/nextflow/SKILL.md +0 -195
- package/skills/omero-integration/SKILL.md +0 -222
- package/skills/onekgpd/SKILL.md +0 -371
- package/skills/ontology-term-resolution/SKILL.md +0 -147
- package/skills/open-notebook/SKILL.md +0 -297
- package/skills/openpiv/SKILL.md +0 -469
- package/skills/opentrons-integration/SKILL.md +0 -322
- package/skills/optimize-for-gpu/SKILL.md +0 -176
- package/skills/owasp-top10/SKILL.md +0 -48
- package/skills/pacsomatic/LICENSE +0 -21
- package/skills/pacsomatic/SKILL.md +0 -150
- package/skills/paper-lookup/SKILL.md +0 -263
- package/skills/paperclip/SKILL.md +0 -413
- package/skills/paperzilla/SKILL.md +0 -159
- package/skills/parallel-web/SKILL.md +0 -128
- package/skills/pathml/SKILL.md +0 -222
- package/skills/pathogen-variant-surveillance/SKILL.md +0 -208
- package/skills/pathway-enrichment/SKILL.md +0 -194
- package/skills/pdf/SKILL.md +0 -322
- package/skills/peer-review/SKILL.md +0 -288
- package/skills/penetration-testing/SKILL.md +0 -31
- package/skills/pennylane/SKILL.md +0 -240
- package/skills/phylogenetics/SKILL.md +0 -409
- package/skills/pi-agent/SKILL.md +0 -83
- package/skills/pkpd-modeling/SKILL.md +0 -381
- package/skills/polars/SKILL.md +0 -393
- package/skills/polars-bio/SKILL.md +0 -379
- package/skills/ponytail/SKILL.md +0 -31
- package/skills/ponytail-audit/SKILL.md +0 -18
- package/skills/pptx/SKILL.md +0 -246
- package/skills/pptx-posters/SKILL.md +0 -258
- package/skills/primekg/SKILL.md +0 -99
- package/skills/protocolsio-integration/SKILL.md +0 -236
- package/skills/pufferlib/SKILL.md +0 -328
- package/skills/pydeseq2/SKILL.md +0 -369
- package/skills/pydicom/SKILL.md +0 -381
- package/skills/pyhealth/SKILL.md +0 -124
- package/skills/pylabrobot/SKILL.md +0 -216
- package/skills/pymatgen/SKILL.md +0 -404
- package/skills/pymc/SKILL.md +0 -310
- package/skills/pymoo/SKILL.md +0 -276
- package/skills/pyopenms/SKILL.md +0 -179
- package/skills/pysam/SKILL.md +0 -330
- package/skills/pytdc/SKILL.md +0 -297
- package/skills/pytorch-lightning/SKILL.md +0 -191
- package/skills/pyzotero/SKILL.md +0 -137
- package/skills/qiskit/SKILL.md +0 -259
- package/skills/qutip/SKILL.md +0 -317
- package/skills/rdkit/SKILL.md +0 -94
- package/skills/relsa-severity-assessment/SKILL.md +0 -354
- package/skills/research-grants/SKILL.md +0 -296
- package/skills/research-grants/references/README.md +0 -287
- package/skills/research-lookup/README.md +0 -106
- package/skills/research-lookup/SKILL.md +0 -338
- package/skills/rowan/SKILL.md +0 -398
- package/skills/scanpy/SKILL.md +0 -303
- package/skills/scholar-evaluation/SKILL.md +0 -296
- package/skills/scientific-brainstorming/SKILL.md +0 -282
- package/skills/scientific-critical-thinking/SKILL.md +0 -180
- package/skills/scientific-schematics/SKILL.md +0 -370
- package/skills/scientific-slides/SKILL.md +0 -379
- package/skills/scientific-visualization/SKILL.md +0 -285
- package/skills/scientific-writing/SKILL.md +0 -356
- package/skills/scikit-bio/SKILL.md +0 -470
- package/skills/scikit-learn/SKILL.md +0 -324
- package/skills/scikit-survival/SKILL.md +0 -313
- package/skills/scvelo/SKILL.md +0 -328
- package/skills/scvi-tools/SKILL.md +0 -201
- package/skills/seaborn/SKILL.md +0 -254
- package/skills/security-auditor/SKILL.md +0 -37
- package/skills/shap/SKILL.md +0 -282
- package/skills/simpy/SKILL.md +0 -283
- package/skills/stable-baselines3/SKILL.md +0 -325
- package/skills/statistical-analysis/SKILL.md +0 -446
- package/skills/statistical-power/SKILL.md +0 -200
- package/skills/statsmodels/SKILL.md +0 -238
- package/skills/sympy/SKILL.md +0 -354
- package/skills/systematic-debugging/SKILL.md +0 -35
- package/skills/tamarind/SKILL.md +0 -285
- package/skills/tdd/SKILL.md +0 -26
- package/skills/tiledbvcf/SKILL.md +0 -456
- package/skills/timesfm-forecasting/SKILL.md +0 -408
- package/skills/timesfm-forecasting/examples/global-temperature/README.md +0 -178
- package/skills/torch-geometric/SKILL.md +0 -458
- package/skills/torchdrug/SKILL.md +0 -241
- package/skills/transformers/SKILL.md +0 -195
- package/skills/treatment-plans/SKILL.md +0 -174
- package/skills/treatment-plans/references/README.md +0 -19
- package/skills/umap-learn/SKILL.md +0 -488
- package/skills/uncertainty-and-units/SKILL.md +0 -384
- package/skills/usfiscaldata/SKILL.md +0 -171
- package/skills/vaex/SKILL.md +0 -204
- package/skills/venue-templates/SKILL.md +0 -269
- package/skills/verification-before-completion/SKILL.md +0 -22
- package/skills/waypoint-bio/SKILL.md +0 -273
- package/skills/what-if-oracle/SKILL.md +0 -184
- package/skills/writing-plans/SKILL.md +0 -15
- package/skills/xlsx/SKILL.md +0 -110
- package/skills/zarr-python/SKILL.md +0 -241
|
@@ -1,260 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: get-available-resources
|
|
3
|
-
description: Detect host inventory and effective CPU, memory, disk, scheduler, container, and accelerator limits when a user asks for resource-aware planning or before a clearly resource-sensitive local workload. Produces a redacted JSON snapshot and conservative planning helpers without stress tests or assuming visible host hardware is usable.
|
|
4
|
-
license: MIT
|
|
5
|
-
compatibility: Python 3.11+ on Linux, macOS, or Windows; standard library by default, optional psutil 7.2.2; accelerator and scheduler CLIs are optional read-only probes.
|
|
6
|
-
metadata:
|
|
7
|
-
version: "1.2"
|
|
8
|
-
skill-author: K-Dense Inc.
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Get Available Resources
|
|
12
|
-
|
|
13
|
-
Build a conservative picture of resources available to the **current process**.
|
|
14
|
-
Keep host inventory, process affinity, cgroup/container limits, scheduler
|
|
15
|
-
allocation, and accelerator runtime usability separate.
|
|
16
|
-
|
|
17
|
-
## Safety contract
|
|
18
|
-
|
|
19
|
-
Follow these rules:
|
|
20
|
-
|
|
21
|
-
- Run detection when the user requests it or a specific workload needs resource
|
|
22
|
-
planning. Do not persist a fingerprint for every scientific task.
|
|
23
|
-
- Use stdout by default. Persist only when the user chooses an explicit generic
|
|
24
|
-
local filename.
|
|
25
|
-
- Do not run stress tests, benchmarks, large allocations, write probes, device
|
|
26
|
-
resets, driver installation, or clock/power changes.
|
|
27
|
-
- Do not dump the environment. Read only the named Slurm and accelerator
|
|
28
|
-
variables implemented by the detector.
|
|
29
|
-
- Do not report hostnames, absolute paths, cgroup paths, job IDs, device UUIDs,
|
|
30
|
-
PCI addresses, or raw visibility-variable values.
|
|
31
|
-
- Treat a missing observation as unknown. Never convert unknown to unlimited.
|
|
32
|
-
- Never infer that a visible host CPU, memory pool, or GPU is usable inside a
|
|
33
|
-
scheduler allocation or container.
|
|
34
|
-
|
|
35
|
-
The bundled detector uses only fixed executable/argument tuples, no shell,
|
|
36
|
-
short timeouts, bounded stdout/stderr, and partial-failure warnings.
|
|
37
|
-
|
|
38
|
-
## Quick start
|
|
39
|
-
|
|
40
|
-
Run from this skill directory.
|
|
41
|
-
|
|
42
|
-
### Ephemeral stdout snapshot
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
python scripts/detect_resources.py
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
The command emits only JSON to stdout. Redirect it only when ordinary shell
|
|
49
|
-
permissions are acceptable.
|
|
50
|
-
|
|
51
|
-
### Explicit private file
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
python scripts/detect_resources.py --output resource-snapshot.json
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
Explicit output is restricted to one `.json` filename in the current
|
|
58
|
-
directory, uses private permissions, rejects symlinks and path traversal, and
|
|
59
|
-
refuses overwrite unless `--force` is supplied.
|
|
60
|
-
|
|
61
|
-
### Optional psutil enhancement
|
|
62
|
-
|
|
63
|
-
The standard-library detector works without installation. For broader
|
|
64
|
-
cross-platform physical-core, affinity, available-memory, swap, and disk
|
|
65
|
-
coverage:
|
|
66
|
-
|
|
67
|
-
```bash
|
|
68
|
-
uv pip install "psutil==7.2.2"
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
The import is lazy. Failure to import psutil becomes a warning, not a fatal
|
|
72
|
-
error.
|
|
73
|
-
|
|
74
|
-
### Skip management-tool probes
|
|
75
|
-
|
|
76
|
-
```bash
|
|
77
|
-
python scripts/detect_resources.py --skip-accelerators
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
Use this when accelerator discovery latency is undesirable. The detector still
|
|
81
|
-
summarizes the presence and state of allowlisted visibility variables without
|
|
82
|
-
returning their values.
|
|
83
|
-
|
|
84
|
-
## Required interpretation
|
|
85
|
-
|
|
86
|
-
### CPU
|
|
87
|
-
|
|
88
|
-
Read these as different facts:
|
|
89
|
-
|
|
90
|
-
- `cpu.host.logical`: system-visible scheduling units.
|
|
91
|
-
- `cpu.host.physical`: physical topology, or null; never inferred from logical
|
|
92
|
-
count.
|
|
93
|
-
- `cpu.process.affinity_logical`: current affinity-set size when supported.
|
|
94
|
-
- `cpu.cgroup_v2.cpuset_logical`: effective cgroup cpuset size.
|
|
95
|
-
- `cpu.cgroup_v2.quota_cores`: finite `cpu.max` capacity, possibly fractional.
|
|
96
|
-
- `scheduler.allocation.cpu_per_process`: bounded Slurm per-task
|
|
97
|
-
interpretation when scope is clear.
|
|
98
|
-
- `cpu.effective.capacity_cores`: minimum positive observed constraint.
|
|
99
|
-
- `cpu.effective.worker_ceiling`: conservative floor for CPU process workers.
|
|
100
|
-
|
|
101
|
-
A quota of 1.5 is CPU-time capacity, not 1.5 physical cores. Affinity and
|
|
102
|
-
cpusets constrain placement; quota constrains bandwidth.
|
|
103
|
-
|
|
104
|
-
### Memory
|
|
105
|
-
|
|
106
|
-
Keep these separate:
|
|
107
|
-
|
|
108
|
-
- host total/available memory;
|
|
109
|
-
- current cgroup usage, hard `memory.max`, and remaining hierarchical capacity;
|
|
110
|
-
- `memory.high`, which is a pressure/throttle boundary rather than a hard cap;
|
|
111
|
-
- scheduler memory allocation and its scope; and
|
|
112
|
-
- conservative effective hard limit and available estimate.
|
|
113
|
-
|
|
114
|
-
On Apple silicon, `memory.model` is `unified_cpu_gpu`. Do not add integrated GPU
|
|
115
|
-
memory to RAM or describe it as separate VRAM.
|
|
116
|
-
|
|
117
|
-
### Accelerators
|
|
118
|
-
|
|
119
|
-
Each device is a backend **candidate**:
|
|
120
|
-
|
|
121
|
-
- NVIDIA GPU → CUDA candidate;
|
|
122
|
-
- AMD GPU → ROCm candidate;
|
|
123
|
-
- Apple integrated GPU → Metal candidate.
|
|
124
|
-
|
|
125
|
-
Management-query visibility does not establish:
|
|
126
|
-
|
|
127
|
-
1. scheduler/container permission;
|
|
128
|
-
2. device-node access;
|
|
129
|
-
3. driver/runtime compatibility;
|
|
130
|
-
4. framework package compatibility; or
|
|
131
|
-
5. operator/data-type support.
|
|
132
|
-
|
|
133
|
-
Therefore `runtime_usable_devices` remains null and each device says
|
|
134
|
-
`runtime_compatibility: not_tested`. Visibility/allocation counts are upper
|
|
135
|
-
bounds, not guarantees.
|
|
136
|
-
|
|
137
|
-
### Disk
|
|
138
|
-
|
|
139
|
-
`capacity_bytes`, filesystem `free_bytes`, user-available blocks, and a
|
|
140
|
-
non-writing permission check are distinct. Filesystem or project quotas can
|
|
141
|
-
still be stricter. The absolute working path is always redacted.
|
|
142
|
-
|
|
143
|
-
### Scheduler and container
|
|
144
|
-
|
|
145
|
-
Slurm variables describe allocation scope, but enforcement depends on site
|
|
146
|
-
configuration such as task affinity or cgroups. Prefer affinity and cgroup
|
|
147
|
-
observations as enforcement evidence.
|
|
148
|
-
|
|
149
|
-
Container markers identify context; cgroup controls identify limits. A
|
|
150
|
-
container with no finite cgroup value can still see host inventory, and a
|
|
151
|
-
non-root cgroup is not automatically labeled a container.
|
|
152
|
-
|
|
153
|
-
See [`references/resource_semantics.md`](references/resource_semantics.md) for
|
|
154
|
-
the detailed platform rules.
|
|
155
|
-
|
|
156
|
-
## Plan a workload
|
|
157
|
-
|
|
158
|
-
The planner consumes a validated snapshot and performs no work:
|
|
159
|
-
|
|
160
|
-
```bash
|
|
161
|
-
python scripts/plan_workload.py resource-snapshot.json \
|
|
162
|
-
--workload cpu \
|
|
163
|
-
--tasks 100 \
|
|
164
|
-
--memory-per-worker-mib 2048
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
Optional controls:
|
|
168
|
-
|
|
169
|
-
- `--workers N`: explicit upper bound.
|
|
170
|
-
- `--reserve-memory-mib N`: memory kept outside the worker budget.
|
|
171
|
-
- `--workload cpu|mixed|io`: selects a bounded worker heuristic.
|
|
172
|
-
- `--accelerator none|any|cuda|rocm|metal`: requests a candidate backend
|
|
173
|
-
decision without claiming usability.
|
|
174
|
-
- `--output plan.json`: explicit private local output; stdout is default.
|
|
175
|
-
|
|
176
|
-
For CPU or mixed work, use `suggested_workers` and
|
|
177
|
-
`threads_per_worker` together. Process workers multiplied by BLAS/OpenMP native
|
|
178
|
-
threads can oversubscribe an allocation.
|
|
179
|
-
|
|
180
|
-
The I/O plan permits bounded oversubscription (maximum 32) but labels it a
|
|
181
|
-
heuristic. Benchmark only the real representative workload and stay within
|
|
182
|
-
scheduler/container limits.
|
|
183
|
-
|
|
184
|
-
## Validate or diff snapshots
|
|
185
|
-
|
|
186
|
-
Validate:
|
|
187
|
-
|
|
188
|
-
```bash
|
|
189
|
-
python scripts/snapshot_tools.py validate resource-snapshot.json
|
|
190
|
-
```
|
|
191
|
-
|
|
192
|
-
Diff resource state while ignoring `observed_at`:
|
|
193
|
-
|
|
194
|
-
```bash
|
|
195
|
-
python scripts/snapshot_tools.py diff before.json after.json
|
|
196
|
-
```
|
|
197
|
-
|
|
198
|
-
Use `--include-volatile` to include the timestamp. Inputs must be regular,
|
|
199
|
-
non-symlink JSON files no larger than 1 MiB. Diffs are bounded.
|
|
200
|
-
|
|
201
|
-
The schema and null/zero meanings are documented in
|
|
202
|
-
[`references/snapshot_schema.md`](references/snapshot_schema.md).
|
|
203
|
-
|
|
204
|
-
## Optional accelerator diagnostic plan
|
|
205
|
-
|
|
206
|
-
Generate a plan without executing any diagnostic:
|
|
207
|
-
|
|
208
|
-
```bash
|
|
209
|
-
python scripts/accelerator_diagnostics.py resource-snapshot.json \
|
|
210
|
-
--backend auto
|
|
211
|
-
```
|
|
212
|
-
|
|
213
|
-
The result contains fixed, read-only management query argument lists and
|
|
214
|
-
separate gates for visibility, permission, and runtime compatibility. Run a
|
|
215
|
-
framework's official availability check only in the exact environment that
|
|
216
|
-
will execute the workload. Do not install or mutate drivers automatically.
|
|
217
|
-
|
|
218
|
-
## Partial failures and provenance
|
|
219
|
-
|
|
220
|
-
One failed probe must not erase successful observations. Inspect:
|
|
221
|
-
|
|
222
|
-
- `completeness`;
|
|
223
|
-
- sorted `warnings` with stable codes;
|
|
224
|
-
- sorted `provenance` source/status records; and
|
|
225
|
-
- null fields.
|
|
226
|
-
|
|
227
|
-
Subprocess stderr and raw exception text are not copied into the snapshot
|
|
228
|
-
because they can contain identifiers or paths.
|
|
229
|
-
|
|
230
|
-
## Platform notes
|
|
231
|
-
|
|
232
|
-
- **Linux:** reads only bounded `/proc` and cgroup v2 files. Ancestor CPU and
|
|
233
|
-
memory limits are considered.
|
|
234
|
-
- **macOS:** uses fixed `sysctl` keys and a bounded
|
|
235
|
-
`system_profiler SPDisplaysDataType -json` query. Apple silicon memory is
|
|
236
|
-
unified.
|
|
237
|
-
- **Windows:** optional psutil improves physical-core, affinity, available
|
|
238
|
-
memory, and swap observations. Processor-group scope can make host and
|
|
239
|
-
process counts differ.
|
|
240
|
-
- **Slurm:** reads an allowlist of allocation variables. It never emits job,
|
|
241
|
-
node, submit-host, GPU-ID, or path values.
|
|
242
|
-
- **NVIDIA/AMD:** management CLIs are optional. Absence is normal; timeout,
|
|
243
|
-
truncation, parse failure, and runtime uncertainty remain explicit.
|
|
244
|
-
|
|
245
|
-
## Bundled files
|
|
246
|
-
|
|
247
|
-
- `scripts/detect_resources.py` — redacted snapshot collector.
|
|
248
|
-
- `scripts/plan_workload.py` — deterministic worker/memory planner.
|
|
249
|
-
- `scripts/snapshot_tools.py` — schema validator and bounded structural diff.
|
|
250
|
-
- `scripts/accelerator_diagnostics.py` — non-executing read-only diagnostic
|
|
251
|
-
plan.
|
|
252
|
-
- `tests/get-available-resources/` in the repository root — network-free
|
|
253
|
-
Linux, macOS, Windows, cgroup, Slurm, and accelerator cases.
|
|
254
|
-
- `references/resource_semantics.md` — interpretation and platform details.
|
|
255
|
-
- `references/snapshot_schema.md` — schema 1.1 contract.
|
|
256
|
-
- `references/sources.md` — dated official-source ledger.
|
|
257
|
-
|
|
258
|
-
Official documentation was refreshed on **2026-07-23**; consult
|
|
259
|
-
[`references/sources.md`](references/sources.md) before changing semantics or
|
|
260
|
-
dependency pins.
|
package/skills/gget/SKILL.md
DELETED
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: gget
|
|
3
|
-
description: "Fast CLI/Python queries to 20+ bioinformatics databases. Use for quick lookups: gene info, BLAST/BLAT, viral sequence downloads, AlphaFold structures, enrichment analysis, OpenTargets, COSMIC, CELLxGENE, and 8cube mouse specificity/expression data. Best for interactive exploration and simple queries. For batch processing or advanced BLAST use biopython; for multi-database Python workflows use bioservices."
|
|
4
|
-
license: BSD-2-Clause license
|
|
5
|
-
allowed-tools: Read Write Edit Bash
|
|
6
|
-
compatibility: Requires Python >=3.8 and gget 0.30.5-compatible APIs. Optional setup modules may install scientific dependencies that lag the newest Python releases; use Python 3.9 or 3.10 if `gget setup cellxgene` or `gget setup alphafold` fails.
|
|
7
|
-
metadata:
|
|
8
|
-
version: "1.4"
|
|
9
|
-
skill-author: K-Dense Inc.
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
# gget
|
|
13
|
-
|
|
14
|
-
## Overview
|
|
15
|
-
|
|
16
|
-
gget is a command-line bioinformatics tool and Python package providing unified access to 20+ genomic databases and analysis methods. Query gene information, sequence analysis, protein structures, viral sequences, expression data, disease associations, and mouse tissue/cell specificity metrics through a consistent interface. Most gget modules work both as command-line tools and as Python functions.
|
|
17
|
-
|
|
18
|
-
**Important**: The databases queried by gget are continuously updated, which sometimes changes their structure. Guidance here targets gget 0.30.5 (PyPI current as of 2026-06-07). For reproducible work, pin `gget==0.30.5`; for broken upstream database adapters, update gget after checking release notes.
|
|
19
|
-
|
|
20
|
-
## Installation
|
|
21
|
-
|
|
22
|
-
Install gget in a clean virtual environment to avoid conflicts:
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
# Reproducible install targeting this skill
|
|
26
|
-
uv venv .venv
|
|
27
|
-
source .venv/bin/activate
|
|
28
|
-
uv pip install "gget==0.30.5"
|
|
29
|
-
|
|
30
|
-
# In Python/Jupyter
|
|
31
|
-
import gget
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
## Quick Start
|
|
35
|
-
|
|
36
|
-
Basic usage pattern for all modules:
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
# Command-line
|
|
40
|
-
gget <module> [arguments] [options]
|
|
41
|
-
|
|
42
|
-
# Python
|
|
43
|
-
gget.module(arguments, options)
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Most modules return:
|
|
47
|
-
- **Command-line**: JSON (default) or CSV with `-csv` flag
|
|
48
|
-
- **Python**: DataFrame or dictionary
|
|
49
|
-
|
|
50
|
-
Common flags across modules:
|
|
51
|
-
- `-o/--out`: Save results to file
|
|
52
|
-
- `-q/--quiet`: Suppress progress information
|
|
53
|
-
- `-csv`: Return CSV format (command-line only)
|
|
54
|
-
|
|
55
|
-
Python argument names generally match long CLI options without leading dashes. For example, `--census_version` becomes `census_version=...`. Use `gget <module> --help` for the exact current signature.
|
|
56
|
-
|
|
57
|
-
## Module Categories
|
|
58
|
-
|
|
59
|
-
gget exposes 23 modules in six categories. Parameters, CLI and Python examples, and
|
|
60
|
-
return shapes for every one are in
|
|
61
|
-
[references/module_catalog.md](references/module_catalog.md); fuller per-parameter
|
|
62
|
-
documentation is in [references/module_reference.md](references/module_reference.md).
|
|
63
|
-
|
|
64
|
-
| Category | Modules |
|
|
65
|
-
| --- | --- |
|
|
66
|
-
| 1. Reference & gene information | `ref` (Ensembl reference downloads), `search` (gene search), `info` (gene/transcript detail), `seq` (nucleotide and protein sequences) |
|
|
67
|
-
| 2. Sequence analysis & alignment | `blast`, `blat`, `muscle` (multiple alignment), `diamond` (local alignment) |
|
|
68
|
-
| 3. Structural & protein analysis | `pdb` (structures and metadata), `alphafold` (structure prediction), `elm` (linear motifs) |
|
|
69
|
-
| 4. Expression & disease data | `archs4` (correlation, tissue expression), `cellxgene` (single-cell), `enrichr` (enrichment), `bgee` (orthology and expression), `opentargets` (disease and drug), `cbio` (cancer genomics), `cosmic` (mutations) |
|
|
70
|
-
| 5. Viral & mouse specificity | `virus` (viral sequences), `8cube` (mouse specificity and expression) |
|
|
71
|
-
| 6. Additional tools | `mutate` (mutated sequences), `gpt` (text generation), `setup` (install module dependencies) |
|
|
72
|
-
|
|
73
|
-
Several modules need a one-time `gget setup` before first use (`alphafold`, `elm`,
|
|
74
|
-
`cellxgene`), and `cosmic` prompts for COSMIC credentials to download its database.
|
|
75
|
-
|
|
76
|
-
## Common Workflows
|
|
77
|
-
|
|
78
|
-
Worked multi-module pipelines — gene characterization, structural comparison, expression
|
|
79
|
-
and enrichment analysis, disease and drug association, orthology comparison, and
|
|
80
|
-
reference-file preparation for kallisto or alignment — are in
|
|
81
|
-
[references/common_workflows.md](references/common_workflows.md), with longer versions in
|
|
82
|
-
[references/workflows.md](references/workflows.md).
|
|
83
|
-
|
|
84
|
-
## Best Practices
|
|
85
|
-
|
|
86
|
-
### Data Retrieval
|
|
87
|
-
- Use `--limit` to control result sizes for large queries
|
|
88
|
-
- Save results with `-o/--out` for reproducibility
|
|
89
|
-
- Check database versions/releases for consistency across analyses
|
|
90
|
-
- Use `--quiet` in production scripts to reduce output
|
|
91
|
-
|
|
92
|
-
### Sequence Analysis
|
|
93
|
-
- For BLAST/BLAT, start with default parameters, then adjust sensitivity
|
|
94
|
-
- Use `gget diamond` with `--threads` for faster local alignment
|
|
95
|
-
- Save DIAMOND databases with `--diamond_db` for repeated queries
|
|
96
|
-
- For multiple sequence alignment, use `-s5/--super5` for large datasets
|
|
97
|
-
|
|
98
|
-
### Expression and Disease Data
|
|
99
|
-
- Gene symbols are case-sensitive in cellxgene (e.g., 'PAX7' vs 'Pax7')
|
|
100
|
-
- Run `gget setup` before first use of alphafold, cellxgene, elm, gpt
|
|
101
|
-
- For enrichment analysis, use database shortcuts for convenience
|
|
102
|
-
- Cache cBioPortal data with `-dd` to avoid repeated downloads
|
|
103
|
-
- For OpenTargets, inspect returned column names before writing filters; gget 0.30.5 follows the newer OpenTargets API schema
|
|
104
|
-
|
|
105
|
-
### Structure Prediction
|
|
106
|
-
- AlphaFold multimer predictions: use `-mr 20` for higher accuracy
|
|
107
|
-
- Use `-r` flag for AMBER relaxation of final structures
|
|
108
|
-
- Visualize results in Python with `plot=True`
|
|
109
|
-
- Check PDB database first before running AlphaFold predictions
|
|
110
|
-
|
|
111
|
-
### Viral Data
|
|
112
|
-
- Use restrictive filters with `gget virus` before requesting broad viral datasets
|
|
113
|
-
- Keep `command_summary.txt` with downstream results for reproducibility and recovery after partial downloads
|
|
114
|
-
- Use `--baseline` and `--merge-results` to resume interrupted viral metadata/sequence downloads
|
|
115
|
-
|
|
116
|
-
### Error Handling
|
|
117
|
-
- Database structures change; when an adapter breaks, check upstream release notes and pin the newer fixed version explicitly
|
|
118
|
-
- Pin the known-good version for reproducible environments: `uv pip install "gget==0.30.5"`
|
|
119
|
-
- Process max ~1000 Ensembl IDs at once with gget info
|
|
120
|
-
- For large-scale analyses, implement rate limiting for API queries
|
|
121
|
-
- Use virtual environments to avoid dependency conflicts
|
|
122
|
-
- Keep COSMIC and OpenAI credentials in named environment variables or interactive prompts; do not write real credentials into examples, notebooks, or logs
|
|
123
|
-
|
|
124
|
-
## Output Formats
|
|
125
|
-
|
|
126
|
-
### Command-line
|
|
127
|
-
- Default: JSON
|
|
128
|
-
- CSV: Add `-csv` flag
|
|
129
|
-
- FASTA: gget seq, gget mutate
|
|
130
|
-
- PDB: gget pdb, gget alphafold
|
|
131
|
-
- PNG: gget cbio plot
|
|
132
|
-
- FASTA/CSV/JSONL folder: gget virus
|
|
133
|
-
|
|
134
|
-
### Python
|
|
135
|
-
- Default: DataFrame or dictionary
|
|
136
|
-
- JSON: Add `json=True` parameter
|
|
137
|
-
- Save to file: Add `save=True` or specify `out="filename"`
|
|
138
|
-
- AnnData: gget cellxgene
|
|
139
|
-
- DataFrame/JSON: gget 8cube specificity, psi_block, expression
|
|
140
|
-
|
|
141
|
-
## Resources
|
|
142
|
-
|
|
143
|
-
This skill includes reference documentation for detailed module information:
|
|
144
|
-
|
|
145
|
-
### references/
|
|
146
|
-
- `module_reference.md` - Comprehensive parameter reference for all modules
|
|
147
|
-
- `database_info.md` - Information about queried databases and their update frequencies
|
|
148
|
-
- `workflows.md` - Extended workflow examples and use cases
|
|
149
|
-
|
|
150
|
-
For additional help:
|
|
151
|
-
- Official documentation: https://pachterlab.github.io/gget/
|
|
152
|
-
- GitHub issues: https://github.com/pachterlab/gget/issues
|
|
153
|
-
- Citation: Luebbert, L. & Pachter, L. (2023). Efficient querying of genomic reference databases with gget. Bioinformatics. https://doi.org/10.1093/bioinformatics/btac836
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ginkgo-cloud-lab
|
|
3
|
-
description: Submit and manage protocols on Ginkgo Bioworks Cloud Lab (cloud.ginkgo.bio), a web-based interface for autonomous lab execution on Reconfigurable Automation Carts (RACs). Use when the user wants to run protein expression and purification (cell-free, E. coli, or Pichia), HiBiT or A280 or LabChip quantification, IVT mRNA/circRNA synthesis, thermal shift / developability assays, Echo-MS enzyme or analyte methods, SPR target onboarding, fluorescent pixel art, or otherwise interact with Ginkgo Cloud Lab services. Covers protocol selection, input preparation, pricing, and ordering workflows.
|
|
4
|
-
license: MIT license
|
|
5
|
-
allowed-tools: Read
|
|
6
|
-
metadata:
|
|
7
|
-
version: "2.0"
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Ginkgo Cloud Lab
|
|
11
|
-
|
|
12
|
-
## Overview
|
|
13
|
-
|
|
14
|
-
Ginkgo Cloud Lab (https://cloud.ginkgo.bio) provides remote access to Ginkgo Bioworks' autonomous lab infrastructure. Protocols are executed on Reconfigurable Automation Carts (RACs) -- modular units with robotic arms, maglev sample transport, and industrial-grade software spanning 70+ instruments.
|
|
15
|
-
|
|
16
|
-
The platform also includes **EstiMate**, an AI agent that accepts human-language protocol descriptions and returns feasibility assessments and pricing for custom workflows beyond the listed protocols.
|
|
17
|
-
|
|
18
|
-
The catalog is organized into **Expression & Purification** (in vitro / cell-free / E. coli / Pichia), **Characterization & Assay**, **Method & Target Onboarding**, and **Specialty**. Pick a protocol below, then read its reference file for inputs, outputs, the automated workflow, and ordering details.
|
|
19
|
-
|
|
20
|
-
## Available Protocols
|
|
21
|
-
|
|
22
|
-
### Expression & Purification - In vitro
|
|
23
|
-
|
|
24
|
-
| Protocol | Readout | Price | Turnaround | Status |
|
|
25
|
-
|---|---|---|---|---|
|
|
26
|
-
| [IVT mRNA/circRNA Synthesis](references/ivt-rna-synthesis-qpcr.md) | qPCR (mRNA or circRNA, 384-well) | $99/sample | up to 12 business days | Certified |
|
|
27
|
-
|
|
28
|
-
### Expression & Purification - Cell-free (E. coli CFPS)
|
|
29
|
-
|
|
30
|
-
| Protocol | Readout | Price | Turnaround | Status |
|
|
31
|
-
|---|---|---|---|---|
|
|
32
|
-
| [Validate sequence expression](references/cell-free-protein-expression-validation.md) | Go/no-go titer + purity (up to 1800 bp) | $39/sample | up to 10 days | Certified |
|
|
33
|
-
| [Optimize expression conditions](references/cell-free-protein-expression-optimization.md) | DoE across 24 conditions | $199/sample | up to 11 days | Certified |
|
|
34
|
-
| [Express + quantify (HiBiT)](references/cell-free-protein-expression-hibit.md) | Luminescence, no purification | $39/sample | up to 11 days | Certified |
|
|
35
|
-
| [Express + purify (A280)](references/cfps-strep-tag-purification-a280.md) | Strep-tag, A280 yield | $149/sample | up to 11 days | Certified |
|
|
36
|
-
| [Express + purify minibinder](references/minibinder-strep-tag-a280.md) | Strep-tag, A280, LabChip | $149/sample | up to 11 days | Certified |
|
|
37
|
-
| [Express + purify (A280 + LabChip)](references/cfps-expression-purification-quantification.md) | Strep-tag, A280 + purity/size | $159/sample | up to 12 days | Certified |
|
|
38
|
-
|
|
39
|
-
### Expression & Purification - E. coli
|
|
40
|
-
|
|
41
|
-
| Protocol | Readout | Price | Turnaround | Status |
|
|
42
|
-
|---|---|---|---|---|
|
|
43
|
-
| [Express + quantify (HiBiT)](references/ecoli-protein-expression-hibit.md) | Luminescence (up to 384 constructs) | $79/sample | up to 3 weeks | Certified |
|
|
44
|
-
| [Express + purify (A280)](references/ecoli-protein-expression-histag-a280.md) | His-tag, A280 yield | $199/sample | up to 3 weeks | Certified |
|
|
45
|
-
| [Express + purify minibinder](references/ecoli-minibinder-expression-histag-a280.md) | His-tag, A280 yield | $199/sample | up to 3 weeks | Certified |
|
|
46
|
-
| [Express + purify (A280 + LabChip)](references/ecoli-expression-purification-quantification.md) | His-tag, A280 + purity/size | $209/sample | up to 3 weeks | Certified |
|
|
47
|
-
|
|
48
|
-
### Expression & Purification - Pichia
|
|
49
|
-
|
|
50
|
-
| Protocol | Readout | Price | Turnaround | Status |
|
|
51
|
-
|---|---|---|---|---|
|
|
52
|
-
| [Express + quantify (LabChip)](references/pichia-protein-expression-labchip.md) | Secreted protein, size/purity (up to 96) | $89/sample | up to 4 weeks | Certified (New) |
|
|
53
|
-
|
|
54
|
-
### Characterization & Assay
|
|
55
|
-
|
|
56
|
-
| Protocol | Readout | Price | Turnaround | Status |
|
|
57
|
-
|---|---|---|---|---|
|
|
58
|
-
| [Express + thermal shift](references/cfps-strep-purification-thermal-shift.md) | SYPRO Orange Tm (Tonset, TM1-3) | $159/sample | up to 12 days | Certified |
|
|
59
|
-
| [Detect enzymatic products (Echo-MS)](references/echo-ms-cfps-detection.md) | Substrate/product by Echo-MS | $44/sample | up to 13 days | Beta |
|
|
60
|
-
|
|
61
|
-
### Method & Target Onboarding
|
|
62
|
-
|
|
63
|
-
| Protocol | Readout | Price | Turnaround | Status |
|
|
64
|
-
|---|---|---|---|---|
|
|
65
|
-
| [Onboard Echo-MS method](references/echo-ms-method-onboarding.md) | Calibration curve, LOD/LOQ | $799/molecule | up to 3 weeks | Certified |
|
|
66
|
-
| [Onboard SPR target](references/spr-target-onboarding.md) | Validated SPR capture method | $1,399/target | up to 4 weeks | Beta |
|
|
67
|
-
|
|
68
|
-
### Specialty
|
|
69
|
-
|
|
70
|
-
| Protocol | Readout | Price | Turnaround | Status |
|
|
71
|
-
|---|---|---|---|---|
|
|
72
|
-
| [Generate fluorescent pixel art](references/fluorescent-pixel-art-generation.md) | UV photo, 7-color E. coli palette | $25/plate | up to 7 days | Beta |
|
|
73
|
-
|
|
74
|
-
**Coming soon:** Protein Expression and Binding Affinity Characterization (express + purify, then screen binding affinity against a target).
|
|
75
|
-
|
|
76
|
-
## Choosing a Protocol
|
|
77
|
-
|
|
78
|
-
- **Quick expressibility screen?** Cell-free HiBiT ($39) or Validate sequence expression ($39).
|
|
79
|
-
- **Need purified protein + yield?** A280 tiers (cell-free or E. coli); add LabChip for purity/size.
|
|
80
|
-
- **Difficult / membrane / disulfide / cofactor targets?** Cell-free Optimize (24-condition DoE).
|
|
81
|
-
- **Secreted or eukaryotic targets?** Pichia expression.
|
|
82
|
-
- **Screening de novo binders/minibinders?** Cell-free or E. coli minibinder tiers, then SPR onboarding for kinetics.
|
|
83
|
-
- **Enzyme activity / biocatalysis?** Echo-MS enzymatic detection (onboard the analyte method first).
|
|
84
|
-
- **Stability / developability ranking?** Thermal shift assay.
|
|
85
|
-
- **RNA (mRNA/circRNA)?** IVT synthesis + qPCR.
|
|
86
|
-
|
|
87
|
-
## General Ordering Workflow
|
|
88
|
-
|
|
89
|
-
1. Select a protocol at https://cloud.ginkgo.bio/protocols
|
|
90
|
-
2. Configure parameters (number of proteins/samples/molecules/targets, replicates, plates)
|
|
91
|
-
3. Download the protocol's input template and upload inputs (FASTA/CSV/XLSX for sequence protocols; Design Tool for pixel art; vendor catalog numbers for onboarding)
|
|
92
|
-
4. Add any special requirements in the Additional Details field
|
|
93
|
-
5. Provide an email, agree to the protocol terms, and add to cart / submit to receive a feasibility report and price quote
|
|
94
|
-
|
|
95
|
-
For protocols not listed above, use the **EstiMate** chat (https://cloud.ginkgo.bio/estimate) to describe a custom protocol in plain language and receive a compatibility assessment and pricing.
|
|
96
|
-
|
|
97
|
-
## Authentication
|
|
98
|
-
|
|
99
|
-
Access Ginkgo Cloud Lab at https://cloud.ginkgo.bio. Account creation or institutional access may be required. Contact Ginkgo at cloud@ginkgo.bio for access questions.
|
|
100
|
-
|
|
101
|
-
## Key Infrastructure
|
|
102
|
-
|
|
103
|
-
- **RACs (Reconfigurable Automation Carts):** Modular robotic units with high-precision arms and maglev transport
|
|
104
|
-
- **Catalyst Software:** Protocol orchestration, scheduling, parameterization, and real-time monitoring
|
|
105
|
-
- **70+ integrated instruments:** Agilent Bravo liquid handlers, Beckman/Labcyte Echo acoustic dispensers, BMG PHERAstar / Tecan Spark readers, Revvity LabChip, Bio-Rad CFX Opus, Nicoya Alto SPR, SciEx Echo-MS, Inheco/Cytomat incubators, and more
|
|
106
|
-
- **Nebula:** Ginkgo's autonomous lab facility in Boston, MA
|