🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

DrugFlow

by @ashipiling

Multi-flow API workflow skill for this DrugFlow Django repository. Use when an agent needs executable end-to-end API procedures such as login/register, works...

Versionv1.0.2
Downloads689
TERMINAL
clawhub install drugflow-api

πŸ“– About This Skill


name: drugflow-skills description: Multi-flow API workflow skill for this DrugFlow Django repository. Use when an agent needs executable end-to-end API procedures such as login/register, workspace and balance retrieval, job listing, virtual screening, docking, ADMET, rescoring, structure extraction, and molecular factory.

DrugFlow Skills

Route requests to the correct DrugFlow API flow and execute with minimal ambiguity.

Flow Selection

1. Read references/index.md first. 2. Match user intent to one flow. 3. Load only that flow's reference files. 4. Prefer script execution from scripts// when available.

Current Flows

1. Common APIs: reusable auth/workspace/balance/jobs APIs available. 2. Virtual screening: complete flow available. 3. Docking: complete flow available. 4. ADMET: complete flow available. 5. Rescoring: complete flow available. 6. Structure extract: complete flow available (img2mol backend type). 7. Molecular factory: complete flow available (with atom-selection helpers).

Common APIs Workflow

1. Read references/flows/common-apis/call-flow.md. 2. Read references/flows/common-apis/payloads.md. 3. Reuse scripts/common/drugflow_api.py for:
  • signin
  • signup
  • list_workspaces / create_workspace / ensure_workspace
  • get_balance
  • list_jobs
  • 4. Use scripts/common/test_common_apis.py for direct smoke tests.

    Virtual Screening Workflow

    1. Read references/flows/virtual-screening/call-flow.md. 2. Read references/flows/virtual-screening/payloads.md. 3. Use scripts/virtual-screening/run_vs_flow.py for end-to-end execution. 4. Always include ws_id for /api/jobs list/detail. 5. For /api/jobs create, pass name, type, args (JSON string), ws_id; in non-private mode include expect_tokens and avail_tokens.

    Docking Workflow

    1. Read references/flows/docking/call-flow.md. 2. Read references/flows/docking/payloads.md. 3. Use scripts/docking/run_docking_flow.py for end-to-end execution. 4. Create docking jobs through POST /api/jobs with multipart fields pdb, ligands, pdb_content, and args. 5. Site-driven docking box note: when --site is provided but center/size/radius are omitted, the script auto-derives the docking box from that site in local PDB. 6. Always include ws_id on job list/detail requests and pass expect_tokens/avail_tokens in non-private mode.

    ADMET Workflow

    1. Read references/flows/admet/call-flow.md. 2. Read references/flows/admet/payloads.md. 3. Use scripts/admet/run_admet_flow.py for end-to-end execution. 4. ADMET job type is fixed to admet-dl. 5. Support two input modes:
  • direct smiles list
  • dataset mode via dataset_id + smiles_col
  • 6. For /api/jobs create, pass name, type=admet-dl, args, ws_id, and in non-private mode expect_tokens/avail_tokens.

    Rescoring Workflow

    1. Read references/flows/rescoring/call-flow.md. 2. Read references/flows/rescoring/payloads.md. 3. Use scripts/rescoring/run_rescoring_flow.py for end-to-end execution. 4. Create rescoring jobs through POST /api/jobs with:
  • type=rescoring
  • form fields pdb, ligands, smiles_col
  • args.mode=semi and args.rescoring_functions
  • 5. Script enforces input files: --pdb-file must be .pdb, --ligands-file must be .sdf. 6. Always include ws_id; in non-private mode include expect_tokens and avail_tokens.

    Structure Extract Workflow

    1. Read references/flows/structure-extract/call-flow.md. 2. Read references/flows/structure-extract/payloads.md. 3. Use scripts/structure-extract/run_structure_extract_flow.py for end-to-end execution. 4. User-facing "η»“ζž„ζε–" maps to backend job type=img2mol. 5. For create, pass name, type=img2mol, args (dataset_id, page_list), ws_id, and in non-private mode expect_tokens/avail_tokens. 6. dataset_id must be img2mol-compatible and include extras.osskey.

    Molecular Factory Workflow

    1. Read references/flows/molecular-factory/call-flow.md. 2. Read references/flows/molecular-factory/payloads.md. 3. Use scripts/molecular-factory/run_molecular_factory_flow.py:
  • atom-info
  • extract-partial
  • draw-atom-index
  • create-job
  • 4. Default to non-docking molecular factory unless user explicitly asks for docking:
  • args.need_docking=false
  • args.pdb_use.*=false
  • 5. Default generation models:
  • args.molgen_algos=["Frag-GPT","REINVENT"]
  • 6. Use helper APIs first to confirm selected_atoms/start_atoms, then submit molecular_factory job. 7. Always pass ws_id; in non-private mode include expect_tokens and avail_tokens.

    Output Contract

    1. Return method + endpoint + required parameters for each step. 2. Return key ids and state: ws_id, job_id, state, result count. 3. When running scripts, return command + important outputs.

    Expansion Rules

    1. Add new flow docs under references/flows// with call-flow.md and payloads.md. 2. Add runnable scripts under scripts//. 3. Update references/index.md and this file's Current Flows section.

    References

    1. references/index.md 2. references/flows/common-apis/call-flow.md 3. references/flows/common-apis/payloads.md 4. references/flows/virtual-screening/call-flow.md 5. references/flows/virtual-screening/payloads.md 6. references/flows/docking/call-flow.md 7. references/flows/docking/payloads.md 8. references/flows/admet/call-flow.md 9. references/flows/admet/payloads.md 10. references/flows/molecular-factory/call-flow.md 11. references/flows/molecular-factory/payloads.md 12. references/flows/rescoring/call-flow.md 13. references/flows/rescoring/payloads.md 14. references/flows/structure-extract/call-flow.md 15. references/flows/structure-extract/payloads.md