plugins/life-science-research/skills/opentargets-skill/SKILL.md
Submit compact Open Targets Platform GraphQL requests for target, disease, drug, variant, study, and search data, including associated-disease datasource heatmap matrices. Use when a user wants concise Open Targets summaries or per-datasource evidence context
npx skillsauth add openai/plugins opentargets-skillInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
scripts/opentargets_graphql.py for all Open Targets GraphQL work.scripts/opentargets_disease_heatmap.py when the user wants the associated-disease bubble grid or a disease-by-datasource evidence matrix.max_items; for nested GraphQL results, start with max_items=3 to 5.query_path for long GraphQL documents instead of pasting large inline query strings.... in tool previews as UI truncation, not part of the real query.datasourceScores as evidence-source breadth/context. Do not treat heatmap breadth alone as proof of causal target assignment, mechanism, or direction of effect.query or query_pathvariables, max_items, max_depth, timeout_sec, save_raw, raw_output_path{"query":"query { __typename }"}{"query":"query searchAny($q: String!) { search(queryString: $q) { total hits { entity score object { ... on Target { id approvedSymbol } } } } }","variables":{"q":"MST1"},"max_items":3}ok, source, top_keys, a compact summary, and raw_output_path when save_raw=true.ok=false with error.code such as invalid_json, invalid_input, network_error, invalid_response, or graphql_error.echo '{"query":"query { __typename }"}' | python scripts/opentargets_graphql.py
Associated-disease heatmap helper:
echo '{
"ensembl_id":"ENSG00000186868",
"page_size":50,
"max_pages":4,
"disease_name_filter":"alzh"
}' | python scripts/opentargets_disease_heatmap.py
The helper paginates associatedDiseases, collects datasourceScores, and returns:
matrix.columns: datasource IDs plus display labelsmatrix.rows: diseases with datasource_scoressummary.rows_preview: top datasource signals per diseaseUse the disease-name filter as a client-side substring filter similar to the UI. If you later need the overall association score column, inspect the GraphQL row type first before adding candidate fields such as score or associationScore.
scripts/.development
Use when the user wants to spin up / create / launch / provision a DigitalOcean droplet (or "a remote dev box on DO") and connect to it from Codex as a remote SSH workspace.
data-ai
Search through Microsoft Teams chats or channels, triage unread or recent activity, draft follow-ups, and manage Planner tasks through connected Teams data.
tools
Motion / animation context for the `use_figma` MCP tool — animating Figma nodes via manual keyframes, animation styles, easing, and timeline duration. Load alongside figma-use whenever a task involves adding, editing, or inspecting animation on a node.
development
SwiftUI ↔ Figma translation. Use whenever the user mentions Swift, SwiftUI, iOS, iPhone, or iPad — in EITHER direction — translating a Figma design into SwiftUI (design → code), or pushing SwiftUI views / screens / tokens back into a Figma file (code → design). Triggers on phrases like 'implement this Figma design in SwiftUI', 'build this screen in Swift', 'push this SwiftUI view to Figma', 'mirror my Swift code in a Figma file', or whenever a Figma URL appears alongside `.swift` files / an `.xcodeproj`. Routes to a direction-specific reference doc; loads alongside `figma-use` for the code → design path.