
encode-ccres-database
Query the ENCODE Registry of cis-Regulatory Elements (cCREs) via the SCREEN GraphQL API, or make custom queries to the ENCODE Portal REST API for experiments and files (ChIP-seq peaks, etc.). Use when you want to query regulatory annotations or raw experimental data across human cell types.
- Installs
- 2.1K
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/google-deepmind/science-skills --skill encode-ccres-database- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads encode-ccres-database automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
ENCODE Database Skill
This skill allows you to query the ENCODE Registry of cCREs (candidate cis-Regulatory Elements) via the SCREEN GraphQL API. It helps identify functional non-coding DNA elements (like Promoters, Enhancers, and insulators) by analyzing biochemical signatures (DNase, H3K4me3, H3K27ac, CTCF).
Prerequisites
uv: Read theuvskill and follow its Setup instructions to ensureuvis installed and on PATH.- User Notification: If .licenses/encode_ccres_database_LICENSE.txt does not already exist in the workspace root directory then (1) prominently notify the user to check the terms at https://www.encodeproject.org/help/rest-api/, then (2) create the file recording the notification text and timestamp.
Core Rules
- Use the Wrapper: ALWAYS execute the provided helper scripts to query the database rather than accessing the database directly. The scripts automatically enforce the required rate limit gracefully.
- Parsing Output: Do NOT use
catto read the entire JSON output file into context, as it can be extremely large. You MUST usejqto efficiently parse and extract relevant fields. - Notification: If this skill is used, ensure this is mentioned in the output.
Quick Start
# Search cCREs by coordinates
uv run scripts/screen_api.py search --chromosome chr11 \
--start 5205263 --end 5207263 \
--output /tmp/search.json
# Get details for a specific cCRE
uv run scripts/screen_api.py details EH38E2941922 \
--output /tmp/details.json
All subcommands write JSON to disk. Always save output in a temporary location
like /tmp/.
Identifying High-Confidence ("Type A") Biosamples
Biosamples in ENCODE are often categorized by their data completeness. "Type A" (or high-confidence) biosamples are those that have experimental data for all four core epigenetic markers: DNase, H3K4me3, H3K27ac, and CTCF.
The biosamples and details commands automatically enrich their output with
an is_type_a boolean flag for each biosample.
Example: Finding high-confidence cell types
uv run scripts/screen_api.py biosamples --output /tmp/biosamples.json
# Use jq to filter for Type A biosamples
jq '.data.ccREBiosampleQuery.biosamples[] | select(.is_type_a == true) | .displayname' /tmp/biosamples.json
Parsing Output (CRITICAL)
Do NOT use cat to read the entire JSON output file into context, as it
can be extremely large. Instead, you MUST use jq to efficiently parse and
extract the relevant fields from the JSON file saved by the script. If jq is
not available on the system, write your own Python filtering code (e.g.,
python3 -c "import json...") to extract the necessary data.
For a complete reference of the JSON structure returned by eachmcommand (so you
know which fields to query with jq), read
references/json_output_structure.md.
Available Commands
-
search: Search cCREs by coordinates, accessions, or epigenetic signals.uv run scripts/screen_api.py search \ --chromosome chr11 --start 5205263 --end 5207263 \ --output /tmp/search.json -
nearby-genes: Find nearby genes for given cCRE accessions.uv run scripts/screen_api.py nearby-genes \ EH38E1516972 --output /tmp/nearby.json -
details: Get detailed information and biosample-specific max Z-scores for a specific cCRE.uv run scripts/screen_api.py details EH38E2941922 \ --output /tmp/details.json -
biosamples: Get biosample metadata for an assembly.uv run scripts/screen_api.py biosamples \ --output /tmp/biosamples.json -
orthologs: Get orthologous cCREs in another assembly.uv run scripts/screen_api.py orthologs EH38E2941922 \ --output /tmp/orthologs.json -
linked-genes: Find linked genes via methods like HiC or eQTLs.uv run scripts/screen_api.py linked-genes \ EH38E1516972 --output /tmp/linked.json -
gene-expression: Get gene expression (TPM) across all biosamples for a named gene. Internally resolves the gene symbol to an Ensembl gene ID, then queries per-biosample RNA-seq quantifications.uv run scripts/screen_api.py gene-expression GAPDH \ --output /tmp/gene_expr.json -
entex: Get ENTEx data for a cCRE or genomic region.uv run scripts/screen_api.py entex \ --accession EH38E1310345 \ --output /tmp/entex.jsonuv run scripts/screen_api.py entex \ --region chr1:1000068:1000409 \ --output /tmp/entex.json -
gwas: Query genome-wide association studies, SNPs, or enrichment data.uv run scripts/screen_api.py gwas studies \ --output /tmp/gwas.jsonuv run scripts/screen_api.py gwas snps --study \ Ahola-Olli_AV-27989323-Eotaxin_levels \ --output /tmp/gwas_snps.json
You can supply the --assembly mm10 or --assembly grch38 flag to explicitly
request a specific assembly for most commands. By default, the script targets
grch38 but will automatically fall back to mm10 if no results are found or
if the query fails.
ENCODE Portal REST API (Direct Access)
For accessing raw experiments, ChIP-seq peaks, or other datasets that are not
represented as cCREs in SCREEN, use the scripts/encode_portal_api.py script.
It allows custom queries to the ENCODE Portal REST API.
Usage
uv run scripts/encode_portal_api.py search "type=Experiment&target.label=ZNF549" --output /tmp/znf549_experiments.json
Data Analysis Tips
When analyzing .bed or .bigBed files downloaded from ENCODE, standard
bioinformatics tools are highly recommended for finding overlaps (e.g., between
gene promoters and peaks):
bedtools: For fast mathematical operations on genomic intervals.bigBedToBed: For converting binary BigBed files to readable BED format.pybedtools: A Python wrapper forbedtools.
Write custom logic if these tools are not pre-installed.
Custom Queries (SCREEN GraphQL)
If you need to make a complex GraphQL query that the script does not support,
read references/graphql_schema.md for a reference of available queries,
arguments, and return fields in the SCREEN GraphQL API.
FAQ
What does the encode-ccres-database skill do?
Query the ENCODE Registry of cis-Regulatory Elements (cCREs) via the SCREEN GraphQL API, or make custom queries to the ENCODE Portal REST API for experiments and files (ChIP-seq peaks, etc.). Use when you want to query regulatory annotations or raw experimental data across human cell types.
How do I install encode-ccres-database?
Run npx skills add https://github.com/google-deepmind/science-skills --skill encode-ccres-database in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/encode-ccres-database/ (personal) or .claude/skills/encode-ccres-database/ (project).
Which AI agents can use encode-ccres-database?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is encode-ccres-database safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains encode-ccres-database?
It is published by google-deepmind in google-deepmind/science-skills. It has 2,131 recorded installs.
More from google-deepmind/science-skills
literature-search-arxiv
google-deepmind/science-skills
Search for scientific papers, preprints, and publications on arXiv. Extract metadata, abstracts, and download full-text PDFs or HTML versions of papers. Use when the user asks to find research papers, literature, or specific arXiv IDs.
literature-search-openalex
google-deepmind/science-skills
Query the OpenAlex scholarly database for research papers, authors, institutions, topics, sources, publishers, funders, geo-locations, and keywords. Use when searching academic papers, resolving DOIs, downloading open-access PDFs, finding an author's publications, aggregating bibliometric data (citation counts, h-index, impact factor), exploring the research taxonomies, or performing DOI lookups.
pubmed-database
google-deepmind/science-skills
Search PubMed for scientific literature, including published clinical trials. Fetch abstracts and full text. Link published research to biological databases (gene, protein, nucleotide, PubChem) to discover associations between papers and specific compounds or genes. Verify medical spelling, match raw citations, and cache result sets for bulk processing. Interfaces NCBI E-utilities and PMC BioC APIs.
literature-search-europepmc
google-deepmind/science-skills
Search Europe PMC for scientific literature and download open-access full texts and PDFs. Retrieve full-text XML/plain text by PMCID, get citation lists and bibliography.
literature-search-biorxiv
google-deepmind/science-skills
Browse and filter life sciences, biology, and medical preprints from bioRxiv and medRxiv. Supports fetching paper metadata by DOI, and browsing by date range with category and keyword filters. Keyword filtering is local, so date ranges MUST be narrow (1-4 weeks) with a category to prevent timeouts.
uv
google-deepmind/science-skills
Checks whether the uv Python package manager is installed and installs it if missing. Ensures uv is on PATH. Use when another skill requires uv as a prerequisite.
Popular data & databases skills
supabase-postgres-best-practices
supabase/agent-skills
Postgres best practices maintained by Supabase, for Postgres running anywhere. Load this skill BEFORE writing or changing anything that lives in a Postgres database: creating or altering tables and columns (including choosing column types), schema design, migrations and declarative schema files, RLS policies and the tests that verify them, indexes, triggers, database functions, queues and scheduled jobs (pgcron, pgmq), vector/semantic search (pgvector), and restoring dumps (pgrestore) or importing data. Also load it when diagnosing slow queries, high CPU, timeouts, EXPLAIN plans, connection exhaustion, locking, bloat, or rows visible to the wrong user or tenant. This is not just a performance guide — schema, migration, security, and SQL authoring tasks need these rules too, even for a one-column change or a single query.
prisma-client-api
prisma/skills
Prisma Client API reference covering model queries, filters, operators, and client methods. Use when writing database queries, using CRUD operations, filtering data, or configuring Prisma Client. Triggers on "prisma query", "findMany", "create", "update", "delete", "$transaction".
prisma-database-setup
prisma/skills
Deprecated compatibility name for prisma-orm-setup. Use only when a user or existing integration explicitly invokes prisma-database-setup; otherwise select prisma-orm-setup.
prisma-cli
prisma/skills
Prisma ORM 7 CLI reference for existing Prisma 7 applications or explicitly selected Prisma 7 workflows. Covers prisma init, generate, migrate, db, dev, studio, and mcp. For setup, connection repair, or Prisma 8, use prisma-orm-setup; not the Prisma Platform CLI.
prisma-postgres
prisma/skills
Deprecated compatibility name for prisma-postgres-setup. Use only when a user or existing integration explicitly invokes prisma-postgres; otherwise select prisma-postgres-setup.
prisma-driver-adapter-implementation
prisma/skills
Required reference for Prisma ORM 7 SQL driver adapter work. Use when implementing or modifying adapters, adding database drivers, or touching SqlDriverAdapter, Transaction, savepoint, result mapping, or DriverAdapterError behavior. Covers current transaction lifecycle, optional savepoint hooks, original database-error preservation, and verification.