arboreto
Infers candidate gene regulatory networks from bulk or single-cell expression data using AertsLab Arboreto GRNBoost2 and GENIE3.
Skill by K-Dense-AI
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/k-dense-ai-arboreto
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/arboreto
What's inside
- Skill name
arboreto- Description
- Infers candidate gene regulatory networks from bulk or single-cell expression data using AertsLab Arboreto GRNBoost2 and GENIE3. Use for transcription factor-target association ranking, compatible Dask execution, sparse expression inputs, and network stability checks.
- License
- MIT
- Compatibility
- Requires the isolated Python 3.11 compatibility stack below, including Arboreto, Dask/distributed, NumPy, pandas, scikit-learn and SciPy. Network access is needed for installation, not local inference. No credentials required.
- Metadata
- version: 1.3 · skill-author: K-Dense Inc. · last-reviewed: 2026-09-30
- Instructions
- 194 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (5)
- SKILL.md
- algorithms.md · references/
- basic_inference.md · references/
- distributed_computing.md · references/
- basic_grn_inference.py · scripts/
SKILL.md (first lines)
# Arboreto
## When to use
Use Arboreto to rank candidate regulator-target associations from expression
measurements. GRNBoost2 fits stochastic gradient boosting regressions; GENIE3
fits random forests. Each target is predicted from candidate regulators, excluding
itself. These are observational predictive associations, not proof of direct
binding, activation/repression, or causal regulation.
The latest PyPI release checked is **0.1.6** (2021-02-09). Read the Docs still
labels its documentation 0.1.5; the current GitHub source contains fixes that are
**not in the PyPI wheel**. Do not assume a successful unpinned installation can
run inference. See [compatibility and distribution details](references/distributed_computing.md).
## Installation and compatibility
The following exact stack passed dense and CSC-sparse GRNBoost2, dense GENIE3,
custom GBM/RF, and wrapper smoke tests on macOS arm64 with Python 3.11.11:
```bash
uv venv --python 3.11 .venv-arboreto
uv pip install --python .venv-arboreto/bin/python \
'arboreto==0.1.6' 'dask[complete]==2024.7.1' 'distributed==2024.7.1' \
'numpy==1.26.4' 'pandas==2.2.3' 'scikit-learn==1.5.2' 'scipy==1.13.1'
```
This is a bounded compatibility recipe, not a claim that current releases of all
dependencies work. PyPI Arboreto builds an empty metadata graph that the newer
Dask dataframe implementation rejects. For this pinned Dask version, select its
legacy dataframe backend **before importing Arboreto or `dask.dataframe`**:
```python
import dask
dask.config.set({"dataframe.query-planning": False})
from arboreto.algo import grnboost2, genie3
```
The bundled wrapper does this for Dask 2024.7.1. Restart an existing notebook
kernel if it has already imported the newer dataframe backend. Sparse targets
also use `.A` inside Arboreto 0.1.6; this attribute was removed in SciPy 1.14.
Keep the tested SciPy pin for sparse inference. No monkeypatch to site-packages
is required by this recipe.
## Workflow
1. Select biologically comparable cells/samples; document normalization, filtering,
batch handling, organism, identifier namespace, and expression layer.
2. Prepare **rows = observations, columns = genes**. Exclude sample IDs from
expression values. Require unique gene names, numeric finite values, and a TF
list with a nonempty overlap. All-zero/constant genes provide no useful targets.
3. Choose GRNBoost2 for an efficient starting analysis, GENIE3 for method comparison,
or `diy` for explicit regressor settings. See [algorithms](references/algorithms.md).
4. Run a small subset first in the pinned environment, then scale worker counts to
available memory. Keep the `if __name__ == "__main__":` guard in process-based scripts.
5. Inspect worker warnings and target coverage, save the full ranked network, and
assess stability across seeds and resampled observations before prioritizing edges.
## Run the bundled wrapper
From this skill directory, with a TSV containing gene headers and numeric rows:
```bash
.venv-arboreto/bin/python scripts/basic_grn_inference.py expression_data.tsv network.tsv \
--tf-file tfs.txt --seed 777 --workers 2 --limit 5000
```
Add `--index-col 0` only if the first column contains cell/sample identifiers.
The wrapper rejects duplicate headers before pandas can rename them, nonnumeric
or nonfinite values, empty TF overlap, invalid limits, and wholly empty results.
It reports TF overlap and uses a fresh bounded Dask client that closes on error.
The default is one worker; increase it after a successful pilot. Without a TF
file, **all genes** are candidate regulators, even though the output column is
named `TF`.
Output is a headerless TSV in `TF`, `target`, `importance` order. For downstream
consumers that require column headers (including pySCENIC adjacency loading),
write a separate copy with `header=True` rather than assuming every tool accepts
the headerless upstream example format.
## Minimal Python example
This synthetic example checks execution and output structure; it is not a
biological benchmark. The same calls were tested with a 32-observation,
four-gene fixture.
```python
import dask
dask.config.set({"dataframe.query-planning": False})
import numpy as np
import pandas as pd
from arboreto.algo import grnboost2
from distributed import Client, LocalCluster
if __name__ == "__main__":
rng = np.random.default_rng(123)
values = rng.normal(size=(32, 4))
values[:, 2] = 3 * values[:, 0] + rng.normal(scale=0.1, size=32)
matrix = pd.DataFrame(values, columns=["TF1", "TF2", "G1", "G2"])
with LocalCluster(n_workers=1, threads_per_worker=1,
dashboard_address=None) as cluster, Client(cluster) as client:
network = grnboost2(expression_data=matrix, tf_names=["TF1", "TF2"],
seed=777, client_or_address=client)
assert not network.empty
assert not (network["TF"] == network["target"]).any()
network.to_csv("network.tsv", sep="\t", index=False, header=False)
```
For real DataFrame, ndarray, CSC, and AnnData input conventions, read
[basic inference](references/basic_inference.md).
## Interpret and validate output
| Column | Meaning |
| --- | --- |
| `TF` | Candidate predictor gene, restricted only if a TF list was supplied |
| `target` | Gene whose expression was predicted |
| `importance` | Nonnegative feature importance used to rank candidate links |From K-Dense-AI/scientific-agent-skills, MIT.
More from K-Dense-AI/scientific-agent-skills
- 0.699score
13c-metabolic-flux
K-Dense-AI
Estimates intracellular metabolic fluxes from steady-state carbon-13 isotope-tracing measurements using validated atom maps, mfapy isotope simulation…
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
adaptyv
K-Dense-AI
Uses the Adaptyv Bio Foundry API and Python SDK to design protein characterization experiments, estimate costs, submit sequences, monitor laboratory progress…
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
exploratory-data-analysis
K-Dense-AI
Performs bounded, local exploratory analysis of explicitly supported scientific files.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
openpiv
K-Dense-AI
Performs Particle Image Velocimetry (PIV) analysis with OpenPIV.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
citation-management
K-Dense-AI
Comprehensive citation management for academic research.
SkillAFreshness: A★ 54.4KClaude Code - 0.699score
parallel-web
K-Dense-AI
Uses Parallel CLI for web search, URL extraction, deep research, structured data enrichment, entity discovery, and recurring web monitoring.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
scientific-schematics
K-Dense-AI
Generates scientific diagram drafts using Nano Banana 2 AI with smart iterative refinement.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
glycoengineering
K-Dense-AI
Analyzes and engineers protein glycosylation by scanning canonical N-glycosylation sequons, describing S/T-rich regions, checking curated glycan evidence, and…
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
venue-templates
K-Dense-AI
Prepares journal manuscripts, conference papers, research posters, and grant documents using venue-specific formatting guidance and bundled LaTeX scaffolds.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
uncertainty-and-units
K-Dense-AI
Tracks physical units and propagates measurement uncertainty in scientific calculations using pint and uncertainties.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
ginkgo-cloud-lab
K-Dense-AI
Guides protocol selection, input preparation, pricing checks, and browser ordering on Ginkgo Bioworks Cloud Lab (cloud.ginkgo.bio).
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
alphagenome
K-Dense-AI
Looks up precomputed AlphaGenome Atlas effects for any GRCh38 single-nucleotide variant (AVI score with Phred and 18 SHAP feature attributions, plus raw and…
SkillAFreshness: A★ 54.4KClaude Code +9
Signals
- Stars
- 54,411
- Forks
- 4,797
- Open issues
- 8
- Last commit (this folder)
- Oct 1, 2026 (28 days ago)
- Last release
- Oct 1, 2026 (28 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.3
- License
- MIT
- Website
- arxiv.org/abs/2609.00065
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from K-Dense-AI
- 0.699score
exploratory-data-analysis
K-Dense-AI
Performs bounded, local exploratory analysis of explicitly supported scientific files.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
citation-management
K-Dense-AI
Comprehensive citation management for academic research.
SkillAFreshness: A★ 54.4KClaude Code - 0.699score
glycoengineering
K-Dense-AI
Analyzes and engineers protein glycosylation by scanning canonical N-glycosylation sequons, describing S/T-rich regions, checking curated glycan evidence, and…
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
openpiv
K-Dense-AI
Performs Particle Image Velocimetry (PIV) analysis with OpenPIV.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
ginkgo-cloud-lab
K-Dense-AI
Guides protocol selection, input preparation, pricing checks, and browser ordering on Ginkgo Bioworks Cloud Lab (cloud.ginkgo.bio).
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
parallel-web
K-Dense-AI
Uses Parallel CLI for web search, URL extraction, deep research, structured data enrichment, entity discovery, and recurring web monitoring.
SkillAFreshness: A★ 54.4KClaude Code +9
Cite this page
arboreto skill. Agent Mart. https://agentmart.dev/skills/k-dense-ai-arboreto (last updated 2026-10-24)