Agent-friendly CLI for cached OrthoDB downloads and live API queries.
Project description
orthodb-cli
Agent-friendly CLI for OrthoDB v12.
Repo:
https://github.com/gumadeiras/orthodb-cli
Goals:
- cache official OrthoDB flat files locally with checksums
- answer common lookups from cached data when available
- fall back to the live OrthoDB URL API when local data is missing or too large
- emit machine-readable JSON by default for API responses and cache metadata
- stay easy to package for Homebrew
Install
Homebrew:
brew tap gumadeiras/tap
brew install orthodb-cli
From source:
python3 -m venv .venv
. .venv/bin/activate
python -m pip install -e .
Examples
orthodb version
orthodb search p450 --level 33208 --singlecopy 0.8 --take 2
orthodb group 4977at9604
orthodb orthologs 4977at9604 --species 9606_0,10090_0
orthodb fasta 4977at9604 --species 9606_0 --output group.fa
orthodb cache manifest
orthodb cache download species
orthodb cache plan orthologs
orthodb cache index species
orthodb cache sync minimal --index
orthodb resolve 4977at9604
orthodb local species "Homo sapiens"
orthodb local og "olfactory"
orthodb export ogs --query "olfactory receptor" --limit 10
/blast, /fasta, and /tab calls are rate-limited to one request per
second, matching OrthoDB's published API guidance.
Cache
Default cache root:
$XDG_CACHE_HOME/orthodb-cli
or:
~/.cache/orthodb-cli
Override with:
orthodb --cache-dir /path/to/cache cache status
The flat-file manifest is read from:
https://data.orthodb.org/current/download/odb_data_dump
Large data files are intentionally not auto-downloaded. Use
orthodb cache manifest first, then download a named dataset.
Curated sync profiles:
minimal: species, levels, level-to-speciesannotations: minimal metadata plus OG annotationsorthologs: OG tables, skipping multi-GB files unless--include-large
Build a local SQLite index from downloaded files:
orthodb cache index all
orthodb cache db
Indexed local queries:
orthodb local species "Homo sapiens"
orthodb local og "Cytochrome P450"
orthodb local gene P12345
orthodb local orthologs 4977at9604
orthodb export species --query "Homo sapiens" --limit 2
export emits newline-delimited JSON from the local SQLite index, capped by
--limit.
Resolve IDs before choosing a query path:
orthodb resolve 4977at9604
orthodb resolve 9606_0:0017fc
orthodb resolve P12345
Release
Current release: v0.1.1.
Release artifacts are attached to GitHub releases for Homebrew packaging:
https://github.com/gumadeiras/orthodb-cli/releases
Source Notes
Primary references:
- OrthoDB v12 user guide and URL API: https://www.ezlab.org/orthodb_v12_userguide.html#api
- OrthoDB current flat files: https://data.orthodb.org/current/download/odb_data_dump
- OrthoDB-py: https://gitlab.com/ezlab/orthodb_py
The official Python package is useful reference material, but this CLI uses direct HTTP calls and local flat files for a smaller runtime surface and simpler Homebrew packaging.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orthodb_cli-0.1.1.tar.gz.
File metadata
- Download URL: orthodb_cli-0.1.1.tar.gz
- Upload date:
- Size: 17.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d6b6d5ca55b7b0bc293d4e4342e9150640b6c1518558594b86f07b575efc334
|
|
| MD5 |
35a15bf5762befa24ba1073f1f3c4a93
|
|
| BLAKE2b-256 |
90a6f8646daf000e440e61e0566b27890fd7f5182879134d00cfa0dadda6f71e
|
Provenance
The following attestation bundles were made for orthodb_cli-0.1.1.tar.gz:
Publisher:
release.yml on gumadeiras/orthodb-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
orthodb_cli-0.1.1.tar.gz -
Subject digest:
4d6b6d5ca55b7b0bc293d4e4342e9150640b6c1518558594b86f07b575efc334 - Sigstore transparency entry: 1440356144
- Sigstore integration time:
-
Permalink:
gumadeiras/orthodb-cli@f8d19abde103a0b2ebf903f36ce54d86260e2e38 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/gumadeiras
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@f8d19abde103a0b2ebf903f36ce54d86260e2e38 -
Trigger Event:
push
-
Statement type:
File details
Details for the file orthodb_cli-0.1.1-py3-none-any.whl.
File metadata
- Download URL: orthodb_cli-0.1.1-py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5184c91923d82d50038df4d290db8328ee9d4ad5e513374efc15e4a46609d78b
|
|
| MD5 |
448943239bcfa40be9b4ae9195b1fbfa
|
|
| BLAKE2b-256 |
427d05c89d108bf75e17d543b04aa0893d933e24dd2c993d272b6ce864d63aeb
|
Provenance
The following attestation bundles were made for orthodb_cli-0.1.1-py3-none-any.whl:
Publisher:
release.yml on gumadeiras/orthodb-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
orthodb_cli-0.1.1-py3-none-any.whl -
Subject digest:
5184c91923d82d50038df4d290db8328ee9d4ad5e513374efc15e4a46609d78b - Sigstore transparency entry: 1440356183
- Sigstore integration time:
-
Permalink:
gumadeiras/orthodb-cli@f8d19abde103a0b2ebf903f36ce54d86260e2e38 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/gumadeiras
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@f8d19abde103a0b2ebf903f36ce54d86260e2e38 -
Trigger Event:
push
-
Statement type: