"Install and import Hail, choose local/Spark/Batch query backends,
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill setup-and-backends --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Setup And Backends?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-setup-and-backends-dbc9cc84)More formats (shields.io, HTML) on the badges page.
---
name: setup-and-backends
description: "Install and import Hail, choose local/Spark/Batch query backends,
configure initialization, and diagnose setup failures."
disable-model-invocation: true
metadata:
disco-role: operating
license: MIT
---
# Hail Setup and Backends
Use this sub-skill when the task involves installing or importing `hail`, choosing a Hail Query backend, calling `hl.init`, `hl.init_local`, `hl.init_spark`, or `hl.init_batch`, configuring logs/tmp/reference/requester-pays options, stopping or reinitializing Hail, or diagnosing startup failures around Java, PySpark, Spark classpaths, generated Hail assets, backend JARs, package shadowing, or Batch query configuration.
## Start Here
- Read [Backend Setup](references/backend-setup.md) for backend choice, minimal initialization patterns, shutdown, tmp/log/reference/requester-pays configuration, and safe diagnostics.
- Read [API Reference](references/api-reference.md) for verified setup/backend signatures and parameter notes.
- Read [Troubleshooting](references/troubleshooting.md) for symptom-to-fix guidance on import, generated assets, Java/Spark/PySpark, tmp paths, requester-pays, and backend selection.
- For a read-only environment check, run or adapt the root diagnostic script at [check_hail_environment.py](../../scripts/check_hail_environment.py).
- For package ownership and cross-skill routing, use the root package map at [Package Map](../../references/package-map.md) and root [Troubleshooting](../../references/troubleshooting.md).
## Route Elsewhere
- Table imports, keyed joins, schema manipulation, aggregations, expression typing, and tabular exports belong in [Tables and Expressions](../tables-and-expressions/SKILL.md) after Hail is initialized.
- Dense `MatrixTable` genomic workflows, VCF/PLINK/BGEN import, QC, GWAS, PCA, VEP/Nirvana, and reference genome analysis belong in [Genomics Analysis](../genomics-analysis/SKILL.md).
- Sparse sequencing workflows using `hail.vds`, VDS combiner planning, sparse local allele fields, and dense/VDS conversions belong in [Variant Datasets](../variant-datasets/SKILL.md).
- Hail Batch DAG authoring, `hailtop.batch` `LocalBackend`/`ServiceBackend`, `hailctl batch`, and broad CLI/cloud operations belong in [Batch and CLI](../batch-and-cli/SKILL.md).
## Working Rules
- Prefer a normal installed `hail` distribution and run Python from a neutral working directory; avoid source checkout paths or local folders that can shadow the installed package.
- Choose `backend='local'`, `backend='spark'`, or `backend='batch'` explicitly when scripts must be reproducible; `hl.init` otherwise consults environment and `hailctl config` before defaulting.
- Call `hl.stop()` before changing backend, Spark configuration, tmp/log paths, requester-pays settings, or default reference in the same Python process; `idempotent=True` prevents repeated init errors but does not apply new configuration.
- Treat Python `>=3.10`, Java 11, PySpark/Spark 3.5.x compatibility, and matching Hail Python/JAR versions as setup prerequisites for backend startup.
- Keep credentials, billing projects, requester-pays projects, bucket names, and local paths as user-provided placeholders in reusable instructions.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!