🎚️ gi-enhancer
You are gi-enhancer, a ClawBio agent that calls the Genomic Intelligence enhancer-activity model. Given a sequence, it returns per-window activity predictions, in ~1 s via the hosted API.
⚠️ Remote inference — opt-in required. Unlike most ClawBio skills, this skill uploads your FASTA sequence to the hosted Genomic Intelligence API at
https://api.genomicintelligence.ai. The same models also run interactively at https://genomicintelligence.ai. Do not submit identifiable patient data without an appropriate data-use agreement. Key setup: see Authentication below.
Trigger
Fire this skill when the user says any of:
- "predict enhancer activity"
- "score this for enhancer / CRE / regulatory function"
- "is this an enhancer?"
- "DeepSTARR prediction", "STARR-seq prediction"
- "gi-enhancer"
- "predict cis-regulatory activity"
Do NOT fire when:
- The user asks for promoter activity →
gi-promoter - The user asks for chromatin state / accessibility →
gi-chromatin
Why This Exists
- Without it: DeepSTARR-style local inference requires Keras + GPU + tokenization knowhow.
- With it: One CLI call → per-window activity scores in ~1 s.
- Why ClawBio: Hosted G0 DeepSTARR plus ClawBio reproducibility + orchestrator routing.
API Backed
POST https://api.genomicintelligence.ai/v1/tasks/enhancer/predict. Omit model and the API resolves the default — a DeepSTARR model trained on Drosophila S2 cells. GET /v1/tasks/enhancer/models is the current list.
Contract note. The Genomic Intelligence API publishes one operation per task, each with its own request schema: per-task
minLength/maxLengthonsequence, and a typed, closedoptionsobject (an unknown option key is a422 validation_failed, not a silent ignore). The bounds quoted in this file are the published ones, but the authority is always the served schema:GET https://api.genomicintelligence.ai/v1/openapi.json.
Workflow
- Parse: single-record FASTA.
- POST to
/v1/tasks/enhancer/predict; the API windows internally. - Render:
report.md+result.json+reproducibility/.
CLI Reference
python skills/gi-enhancer/gi_enhancer.py --demo --output /tmp/gi-enhancer-demo
python skills/gi-enhancer/gi_enhancer.py --input my_region.fa --output report_dir
python clawbio.py run gi-enhancer --demo
Authentication
The skill requires a Genomic Intelligence partner key in GI_API_KEY. Resolution order:
--api-key <value>CLI flag (explicit override).GI_API_KEYenvironment variable.- Otherwise: the skill raises a
RuntimeErrorpointing here.
Quick start — ClawBio hackathon key
A shared hackathon-tier key ships in .env.example at the repo root (opt-in only). Caps are per-key and are not published as a fixed number — read RateLimit-Limit / RateLimit-Remaining on any /v1/tasks/ response for the live allowance. The runner keeps them for you: they are in result.json under rate_limit, and a 429 names them on the error line. From wherever the ClawBio files live on your machine:
# Repo root (git clone) — or ~/.claude/plugins/cache/clawbio/clawbio/<version>/ for plugin installs
cp .env.example .env
set -a && source .env && set +a
Production / heavier use
Request an individual key at contact@genomicintelligence.ai, then:
export GI_API_KEY=gi_yourkeyhere
Demo
python clawbio.py run gi-enhancer --demo
Bundled fixture is the Drosophila eve (even-skipped) locus (chr2R:9972000-9982000, incl. the upstream stripe enhancers) — the canonical DeepSTARR benchmark for developmental enhancer activity. Expect a positive developmental signal; read the score from your own run.
Gotchas
- DeepSTARR was trained on Drosophila S2 cells. Activity scores for mammalian sequences are still informative as a relative ranking, but the absolute scale is calibrated for fly chromatin.
- Length bounds are 50–500,000 bp, published as
minLength/maxLengthonEnhancerPredictRequestand counted after whitespace is stripped. Both ends are a422 validation_failed(over-max is not a 413 — 413 is the separate 16 MiB raw-body cap). The skill rejects either locally before spending a request. - 50 bp is admission control, not a meaningful enhancer size. It is the strictest floor any enhancer model needs; some models accept less. The models' context window is 249 bp, so 50–248 bp is accepted and scored — against a window padded out to 249 bp. Compare your length against
bio_spec.context_window_bp(GET /v1/tasks/enhancer/models) to know whether the model saw real sequence; the skill warns when you are under it. - Pre-windowing is unnecessary — the API windows and strides internally.
- Hackathon key is shared —
GI_API_KEYfor heavier use.
Output Structure
output_dir/
├── report.md
├── result.json
└── reproducibility/
├── command.sh
└── environment.json
Integration with Bio Orchestrator
Routes here on: "enhancer", "DeepSTARR", "STARR-seq", "predict CRE", "regulatory activity".
Chains with: gi-promoter (joint regulatory-element scan), gi-chromatin (cross-validate with chromatin accessibility), variant-annotation (variants overlapping high-activity windows).
Safety
Research and development use. Not for clinical or diagnostic decisions.