@delta-infra/cli 1.1.18 → 1.1.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/README.md +507 -513
  2. package/checksums.txt +5 -5
  3. package/package.json +3 -2
  4. package/scripts/install-wizard.js +689 -701
  5. package/scripts/install.js +442 -442
  6. package/scripts/run.js +65 -65
  7. package/skills/delta-protein/AGENTS.md +73 -0
  8. package/skills/delta-protein/SKILL.md +389 -0
  9. package/skills/delta-protein/agents/openai.yaml +4 -0
  10. package/skills/delta-protein/references/bfitter.md +64 -0
  11. package/skills/delta-protein/references/catapro_predict.md +63 -0
  12. package/skills/delta-protein/references/catpred_predict.md +65 -0
  13. package/skills/delta-protein/references/caver_tunnel_analyze.md +63 -0
  14. package/skills/delta-protein/references/consensus_mutation.md +61 -0
  15. package/skills/delta-protein/references/consurf_predict.md +67 -0
  16. package/skills/delta-protein/references/crop_sequence.md +69 -0
  17. package/skills/delta-protein/references/dock.md +82 -0
  18. package/skills/delta-protein/references/dock_score.md +70 -0
  19. package/skills/delta-protein/references/easifa_predict_active_site.md +70 -0
  20. package/skills/delta-protein/references/ephod_predict_mutation.md +66 -0
  21. package/skills/delta-protein/references/ephod_predict_protein.md +61 -0
  22. package/skills/delta-protein/references/esmfold2_predict.md +67 -0
  23. package/skills/delta-protein/references/evcouplings_mutation.md +64 -0
  24. package/skills/delta-protein/references/fasta_to_sequence.md +59 -0
  25. package/skills/delta-protein/references/foldseek.md +61 -0
  26. package/skills/delta-protein/references/generate_msa.md +61 -0
  27. package/skills/delta-protein/references/interpro_analyze.md +63 -0
  28. package/skills/delta-protein/references/mpnn_design_sequence.md +71 -0
  29. package/skills/delta-protein/references/multievolve.md +73 -0
  30. package/skills/delta-protein/references/pisa_query.md +70 -0
  31. package/skills/delta-protein/references/plip_analyze.md +65 -0
  32. package/skills/delta-protein/references/pocket_prediction.md +63 -0
  33. package/skills/delta-protein/references/protein_design.md +65 -0
  34. package/skills/delta-protein/references/protein_evolution.md +77 -0
  35. package/skills/delta-protein/references/protein_sol_predict_mutation.md +66 -0
  36. package/skills/delta-protein/references/protein_sol_predict_protein.md +61 -0
  37. package/skills/delta-protein/references/protenix.md +66 -0
  38. package/skills/delta-protein/references/protrek_search.md +90 -0
  39. package/skills/delta-protein/references/pubchem_search.md +68 -0
  40. package/skills/delta-protein/references/pubmed_search.md +79 -0
  41. package/skills/delta-protein/references/reap_design_primer.md +69 -0
  42. package/skills/delta-protein/references/rfd3_design.md +65 -0
  43. package/skills/delta-protein/references/structure_to_sequence.md +61 -0
  44. package/skills/delta-protein/references/summarize_result.md +68 -0
  45. package/skills/delta-protein/references/surface_charge.md +84 -0
  46. package/skills/delta-protein/references/uniprot_batch_query.md +63 -0
  47. package/skills/delta-protein/references/uniprot_query.md +64 -0
  48. package/skills/delta-protein/references/zero_shot_mutant_candidates.md +76 -0
  49. package/skills/delta-protein/scripts/gen_references.py +167 -0
  50. package/skills/delta-protein/scripts/output_metadata.json +275 -0
  51. package/skills/delta-sandbox/SKILL.md +388 -388
  52. package/skills/delta-sandbox/agents/openai.yaml +4 -4
  53. package/skills/delta-sandbox/references/commands.md +58 -58
  54. package/skills/delta-sandbox/references/lifecycle.md +100 -100
  55. package/skills/delta-sandbox/references/recipes.md +138 -138
  56. package/skills/delta-science/AGENTS.md +47 -47
  57. package/skills/delta-science/SKILL.md +227 -227
  58. package/skills/delta-science/agents/openai.yaml +4 -4
  59. package/skills/delta-science/references/antbo.md +105 -105
  60. package/skills/delta-science/references/delta-bo.md +92 -92
  61. package/skills/delta-science/references/gsasii.md +118 -118
  62. package/skills/delta-science/references/lammps.md +68 -68
  63. package/skills/delta-science/references/ldm-bo.md +132 -132
  64. package/skills/delta-science/references/materials-design.md +130 -130
  65. package/skills/delta-science/references/pubchem.md +128 -128
  66. package/skills/delta-science/references/pymatgen.md +69 -69
  67. package/skills/delta-science/references/qe.md +134 -134
  68. package/skills/delta-science/references/rdkit.md +141 -141
  69. package/skills/delta-science/references/strbo.md +95 -95
  70. package/skills/delta-science/references/synbo.md +201 -201
  71. package/skills/delta-science/references/xrd.md +688 -197
  72. package/skills/delta-science/scripts/catalog.py +92 -92
  73. package/skills/delta-science/scripts/generated_catalog.py +69 -69
  74. package/skills/delta-science/scripts/invoke.py +346 -346
  75. package/skills/delta-shared/SKILL.md +113 -113
  76. package/skills/delta-shared/agents/openai.yaml +4 -4
  77. package/skills/manifest.json +20 -19
@@ -0,0 +1,90 @@
1
+ # ProTrek API Search (`huada_protein_tools` / `protrek_search`)
2
+
3
+ This endpoint is a real endpoint of the `huada_protein_tools` tool. It can only be
4
+ called via `delta-cli science invoke`; the business response described below lives
5
+ under the CLI top-level `data` — read fields as documented in this file, do not
6
+ recursively search. This file only documents the endpoint schema; it does not
7
+ authorize direct HTTP. Endpoint names are authoritative as returned by
8
+ `delta-cli science endpoints list huada_protein_tools`; use them verbatim — never
9
+ guess, truncate, or alias.
10
+
11
+ ## Overview
12
+
13
+ Open-ended protein retrieval (text/sequence/structure) across multiple databases
14
+ with the ProTrek protein search API.
15
+ - Typical scenarios:
16
+ - Search related proteins by functional/reaction/family descriptions in protein
17
+ databases (`input_type=text`).
18
+ - Search similar proteins by sequence (`input_type=sequence`).
19
+ - Search similar structures by structure (`input_type=structure`).
20
+ - Not for: exact metadata queries of a known UniProt accession / UniParc ID / gene
21
+ name / protein name (use `uniprot_query` for those).
22
+ - Optional parameters: `input_type` (text/sequence/structure), `query_type`
23
+ (sequence/structure), `topk` (10), `db` (Swiss-Prot), `protein_sequence`,
24
+ `sequence_file`, `structure_file`, `chain` (A), `text`
25
+ - `query_type` defaults to `sequence`;
26
+ - when the user mentions "structure search / structure / 3D structure", choose `structure`;
27
+ - `input_type` is inferred from whether a sequence/structure file is provided; when
28
+ neither is provided, `input_type` is `text`;
29
+ - the `text` parameter is specifically for functional/reaction/family
30
+ description-style text searches;
31
+ - Supported databases: with `query_type=sequence`, Swiss-Prot/UniRef50/Uncharacterized/OMG_prot50/PDB/GOPC/NCBI/MGnify/OMG are supported; with `query_type=structure`, only PDB
32
+
33
+ ## Invocation
34
+
35
+ ```text
36
+ delta-cli science invoke --tool huada_protein_tools --endpoint protrek_search --data JSON
37
+ ```
38
+
39
+ Required input groups (at least one per group; all groups must be satisfied):
40
+
41
+ - `protein_sequence` / `sequence_file` / `structure_file` / `text`
42
+
43
+ Server-side default parameters:
44
+
45
+ - `input_type` = `sequence`
46
+ - `query_type` = `sequence`
47
+ - `topk` = `10`
48
+ - `db` = `Swiss-Prot`
49
+
50
+ Request fields:
51
+
52
+ | Field | Description | Default |
53
+ |---|---|---|
54
+ | `input_type` | Input type: text/sequence/structure; inferred from whether a sequence/structure file is provided, text when neither | sequence |
55
+ | `query_type` | Query type: sequence/structure; default sequence; choose structure when "structure search" is mentioned | sequence |
56
+ | `topk` | Number of results to return, default 10 | 10 |
57
+ | `db` | Database name or list, default Swiss-Prot; with query_type=sequence supports ['Swiss-Prot', 'UniRef50', 'Uncharacterized', 'OMG_prot50', 'PDB', 'GOPC', 'NCBI', 'MGnify', 'OMG']; with query_type=structure only PDB | Swiss-Prot |
58
+ | `protein_sequence` | | - |
59
+ | `sequence_file` | FASTA/FA | - |
60
+ | `structure_file` | PDB/CIF | - |
61
+ | `chain` | Protein chain identifier, default A | A |
62
+ | `text` | Core search description when input_type=text, e.g. function/reaction/family; translate to English | - |
63
+
64
+ ## Response
65
+
66
+ - CLI top-level envelope: a call succeeds only when the exit code is 0 AND `ok` is `true`; the service response lives under `data`.
67
+ - Server-side contract: `status` (success/error/partial), `message`, `tool_type`, `resultjson`, `download_url`; some endpoints also return `total_count`. `resultjson` may be a single object or an array — read only the keys documented in this file, do not recursively search.
68
+ - Binary/file artifacts (such as the PDB/XLSX/FASTA/ZIP files that `download_url` points to) are downloaded and verified with
69
+ `delta-cli science file download --tool huada_protein_tools --endpoint ... --output <path>`;
70
+ do not treat file contents as ordinary JSON results.
71
+
72
+ ## Output Projection
73
+
74
+ > Verification status: derived from ToolSpec/agent templates; pending live calibration
75
+
76
+ - Projection content: Hit protein entries, similarity and functional information
77
+ - Presentation form: Hit list text/table
78
+ - Downstream reuse: for known targets with metadata use uniprot_query; this endpoint is for open-ended retrieval
79
+ ## Output Template
80
+
81
+ - Title: **ProTrek database search result**
82
+ - Lead with the conclusion: number of hit protein entries; list similarity per hit (score vs query) and functional information
83
+ - For structure/sequence search, state the retrieval mode (query_type/input_type)
84
+
85
+ ## Boundaries & Failure Modes
86
+
87
+ - File-type parameters (`structure_file`/`sequence_file`/`msa_file` etc.) take server-accessible URL/path strings, not local upload paths; a `download_url` or `pdb_url` returned by an upstream endpoint can be backfilled directly as downstream input.
88
+ - Make only the minimal calls needed to complete the task; `--data` carries only the fields declared by this endpoint. Do not invent enum values or branches beyond the required combinations.
89
+ - Do not pass off local tool (RDKit/pymatgen/LAMMPS/self-attached MCP) results as this endpoint's results; do not connect directly to Huada or gateway URLs.
90
+ - On failure, report a short summary of the CLI's raw error; do not blindly retry after remote computation timeouts (the outcome may be unknown because the task may already have happened).
@@ -0,0 +1,68 @@
1
+ # PubChem Compound Search (`huada_protein_tools` / `pubchem_search`)
2
+
3
+ This endpoint is a real endpoint of the `huada_protein_tools` tool. It can only be
4
+ called via `delta-cli science invoke`; the business response described below lives
5
+ under the CLI top-level `data` — read fields as documented in this file, do not
6
+ recursively search. This file only documents the endpoint schema; it does not
7
+ authorize direct HTTP. Endpoint names are authoritative as returned by
8
+ `delta-cli science endpoints list huada_protein_tools`; use them verbatim — never
9
+ guess, truncate, or alias.
10
+
11
+ ## Overview
12
+
13
+ Call PubChem (NCBI) to search basic chemical molecule information.
14
+ - Supports querying compounds by name, SMILES, InChI, InChIKey, PubChem CID.
15
+ - `input_type` options: name (default) | smiles | inchi | inchikey | cid.
16
+ - `query` passes the corresponding identifier per input_type: name like "aspirin",
17
+ SMILES like "CC(=O)OC1=CC=CC=C1C(=O)O", CID like "2244".
18
+ - Optional: `max_results` (default 10, max 100)
19
+ - Output: compound results `resultjson`, containing
20
+ cid/name/molecular_formula/molecular_weight/canonical_smiles/inchi/inchikey/
21
+ iupac_name/synonyms/pubchem_url
22
+
23
+ ## Invocation
24
+
25
+ ```text
26
+ delta-cli science invoke --tool huada_protein_tools --endpoint pubchem_search --data JSON
27
+ ```
28
+
29
+ Required input groups (at least one per group; all groups must be satisfied):
30
+
31
+ - `query`
32
+
33
+ Request fields:
34
+
35
+ | Field | Description | Default |
36
+ |---|---|---|
37
+ | `query` | Query string: name, SMILES, InChI, InChIKey, or CID | - |
38
+ | `input_type` | Query type: name \| smiles \| inchi \| inchikey \| cid, default name | name |
39
+ | `max_results` | Maximum number of compounds to return, default 10, max 100 | 10 |
40
+
41
+ ## Response
42
+
43
+ - CLI top-level envelope: a call succeeds only when the exit code is 0 AND `ok` is `true`; the service response lives under `data`.
44
+ - Server-side contract: `status` (success/error/partial), `message`, `tool_type`, `resultjson`, `download_url`; some endpoints also return `total_count`. `resultjson` may be a single object or an array — read only the keys documented in this file, do not recursively search.
45
+ - Binary/file artifacts (such as the PDB/XLSX/FASTA/ZIP files that `download_url` points to) are downloaded and verified with
46
+ `delta-cli science file download --tool huada_protein_tools --endpoint ... --output <path>`;
47
+ do not treat file contents as ordinary JSON results.
48
+
49
+ ## Output Projection
50
+
51
+ > Verification status: verified by a real `delta-cli` invocation
52
+
53
+ - Projection content: Compound entries: name, synonyms, molecular_formula, molecular_weight, canonical_smiles, inchi, inchikey, cid, pubchem_url
54
+ - Presentation form: Text (formula/weight/name/SMILES) + entry URL
55
+ - Downstream reuse: canonical_smiles -> smiles / primary_smiles for catpred_predict / catapro_predict
56
+ ## Output Template
57
+
58
+ - Title: **PubChem compound search**
59
+ - Lead with the conclusion: compound name, molecular formula, molecular weight
60
+ - Also give: canonical_smiles / InChIKey, cid, `[PubChem entry](pubchem_url)` (URL in a safe form)
61
+ - Avoid listing every JSON key
62
+
63
+ ## Boundaries & Failure Modes
64
+
65
+ - File-type parameters (`structure_file`/`sequence_file`/`msa_file` etc.) take server-accessible URL/path strings, not local upload paths; a `download_url` or `pdb_url` returned by an upstream endpoint can be backfilled directly as downstream input.
66
+ - Make only the minimal calls needed to complete the task; `--data` carries only the fields declared by this endpoint. Do not invent enum values or branches beyond the required combinations.
67
+ - Do not pass off local tool (RDKit/pymatgen/LAMMPS/self-attached MCP) results as this endpoint's results; do not connect directly to Huada or gateway URLs.
68
+ - On failure, report a short summary of the CLI's raw error; do not blindly retry after remote computation timeouts (the outcome may be unknown because the task may already have happened).
@@ -0,0 +1,79 @@
1
+ # PubMed Literature Search (`huada_protein_tools` / `pubmed_search`)
2
+
3
+ This endpoint is a real endpoint of the `huada_protein_tools` tool. It can only be
4
+ called via `delta-cli science invoke`; the business response described below lives
5
+ under the CLI top-level `data` — read fields as documented in this file, do not
6
+ recursively search. This file only documents the endpoint schema; it does not
7
+ authorize direct HTTP. Endpoint names are authoritative as returned by
8
+ `delta-cli science endpoints list huada_protein_tools`; use them verbatim — never
9
+ guess, truncate, or alias.
10
+
11
+ ## Overview
12
+
13
+ Call PubMed (NCBI) to search academic literature, supporting cascaded retrieval of
14
+ PMC/Europe PMC/OA PDF full texts. Various tasks may attempt to obtain relevant
15
+ information through literature search.
16
+ - `query` must be an English PubMed boolean search expression. If the user inputs
17
+ Chinese, first translate the core concepts into English academic terms, then
18
+ assemble them into a boolean expression. Recommended format:
19
+ ("concept A" OR "synonym A2") AND ("concept B" OR "synonym B2") AND ... Split
20
+ into 2-4 core concept groups, each with 2-4 English synonyms/related terms/MeSH
21
+ terms; phrases wrapped in double quotes.
22
+ - Correct example: ("human enterokinase" OR "human enteropeptidase" OR
23
+ "enterokinase catalytic subunit") AND (solubility OR "soluble expression") AND
24
+ (mutation OR mutagenesis); when the user asks about "溶菌酶 活性位点" (lysozyme
25
+ active site), the query should be ("lysozyme" OR "muramidase") AND ("active site"
26
+ OR "catalytic site") AND (mutation OR mutagenesis).
27
+ - Forbidden: UniProt IDs, full English questions, meaningless words (analysis of /
28
+ study of / improvement / optimization / design of / engineering of).
29
+ - Optional: `max_results` (default 10, max 10), `min_year` (default 2000),
30
+ `max_year` (default 2026)
31
+ - Output: literature results `resultjson`
32
+
33
+ ## Invocation
34
+
35
+ ```text
36
+ delta-cli science invoke --tool huada_protein_tools --endpoint pubmed_search --data JSON
37
+ ```
38
+
39
+ Required input groups (at least one per group; all groups must be satisfied):
40
+
41
+ - `query`
42
+
43
+ Request fields:
44
+
45
+ | Field | Description | Default |
46
+ |---|---|---|
47
+ | `query` | PubMed English boolean search expression; when the user inputs Chinese, provide the translated & expanded English boolean expression here, never pass Chinese | - |
48
+ | `max_results` | Maximum number of papers to return, default 10, max 10 | 10 |
49
+ | `min_year` | Start year, default 2000 | 2000 |
50
+ | `max_year` | End year, default 2026 | 2026 |
51
+
52
+ ## Response
53
+
54
+ - CLI top-level envelope: a call succeeds only when the exit code is 0 AND `ok` is `true`; the service response lives under `data`.
55
+ - Server-side contract: `status` (success/error/partial), `message`, `tool_type`, `resultjson`, `download_url`; some endpoints also return `total_count`. `resultjson` may be a single object or an array — read only the keys documented in this file, do not recursively search.
56
+ - Binary/file artifacts (such as the PDB/XLSX/FASTA/ZIP files that `download_url` points to) are downloaded and verified with
57
+ `delta-cli science file download --tool huada_protein_tools --endpoint ... --output <path>`;
58
+ do not treat file contents as ordinary JSON results.
59
+
60
+ ## Output Projection
61
+
62
+ > Verification status: derived from ToolSpec/agent templates; pending live calibration
63
+
64
+ - Projection content: extracted_papers and summary; table grouped by PMID (protein name, mutation (original notation), key finding, source reference)
65
+ - Presentation form: Markdown table; keep original mutation notation (e.g. Y126A/Y206F); site-level comparison only when zero-shot mutant results exist and the literature contains those mutations
66
+ - Downstream reuse: literature evidence can be cross-checked with zero_shot_mutant_candidates positions (note the PMID, distinguish reported hotspots/new targets)
67
+ ## Output Template
68
+
69
+ - Title: **PubMed literature search result**
70
+ - Lead with a review summary: 4-6 bullet points depending on focus (mutation/engineering vs application/mechanism)
71
+ - Table grouped by PMID with the source reference in the last column (`PMID: XXXXXXXX`, fall back to the title when missing); keep original mutation notation
72
+ - Papers with empty mutations do not show mutation-related columns; site-level comparison only when zero-shot mutant results exist and the literature contains those mutations
73
+
74
+ ## Boundaries & Failure Modes
75
+
76
+ - File-type parameters (`structure_file`/`sequence_file`/`msa_file` etc.) take server-accessible URL/path strings, not local upload paths; a `download_url` or `pdb_url` returned by an upstream endpoint can be backfilled directly as downstream input.
77
+ - Make only the minimal calls needed to complete the task; `--data` carries only the fields declared by this endpoint. Do not invent enum values or branches beyond the required combinations.
78
+ - Do not pass off local tool (RDKit/pymatgen/LAMMPS/self-attached MCP) results as this endpoint's results; do not connect directly to Huada or gateway URLs.
79
+ - On failure, report a short summary of the CLI's raw error; do not blindly retry after remote computation timeouts (the outcome may be unknown because the task may already have happened).
@@ -0,0 +1,69 @@
1
+ # Single-site Mutation Primer Design (`huada_protein_tools` / `reap_design_primer`)
2
+
3
+ This endpoint is a real endpoint of the `huada_protein_tools` tool. It can only be
4
+ called via `delta-cli science invoke`; the business response described below lives
5
+ under the CLI top-level `data` — read fields as documented in this file, do not
6
+ recursively search. This file only documents the endpoint schema; it does not
7
+ authorize direct HTTP. Endpoint names are authoritative as returned by
8
+ `delta-cli science endpoints list huada_protein_tools`; use them verbatim — never
9
+ guess, truncate, or alias.
10
+
11
+ ## Overview
12
+
13
+ REAP Step 7: design overlapping PCR site-directed mutagenesis primers for single-site
14
+ mutations.
15
+ - Required: `mutant_list_file` (Excel/CSV with a mutant column)
16
+ - Required: `plasmid_fasta` (user-uploaded DNA FASTA template)
17
+ - Required: `cds_start` (0-based CDS start in `plasmid_fasta`; needs to be extracted from the user's question)
18
+ - Optional: `mutation_format` (protein default A123C / dna → G367A), `codon_pref_file`, `sheet`
19
+ - Output: primer Excel `download_url`, ZIP `zip_download_url`, `resultjson` (primer preview and Tm)
20
+
21
+ ## Invocation
22
+
23
+ ```text
24
+ delta-cli science invoke --tool huada_protein_tools --endpoint reap_design_primer --data JSON
25
+ ```
26
+
27
+ Required input groups (at least one per group; all groups must be satisfied):
28
+
29
+ - `mutant_list_file` **and** `template_file` / `plasmid_fasta`
30
+
31
+ Request fields:
32
+
33
+ | Field | Description | Default |
34
+ |---|---|---|
35
+ | `mutant_list_file` | Excel/CSV/TXT mutation list | - |
36
+ | `template_file` | Segmented template TXT (upstream/gene/downstream) | - |
37
+ | `plasmid_fasta` | Plasmid/template DNA FASTA | - |
38
+ | `cds_start` | 0-based CDS start position in plasmid_fasta mode | - |
39
+ | `mutation_format` | Mutation format: protein or dna, default protein | protein |
40
+ | `codon_pref_file` | AA:CODON codon preference file | - |
41
+ | `sheet` | Excel sheet index or name, default 0 | 0 |
42
+
43
+ ## Response
44
+
45
+ - CLI top-level envelope: a call succeeds only when the exit code is 0 AND `ok` is `true`; the service response lives under `data`.
46
+ - Server-side contract: `status` (success/error/partial), `message`, `tool_type`, `resultjson`, `download_url`; some endpoints also return `total_count`. `resultjson` may be a single object or an array — read only the keys documented in this file, do not recursively search.
47
+ - Binary/file artifacts (such as the PDB/XLSX/FASTA/ZIP files that `download_url` points to) are downloaded and verified with
48
+ `delta-cli science file download --tool huada_protein_tools --endpoint ... --output <path>`;
49
+ do not treat file contents as ordinary JSON results.
50
+
51
+ ## Output Projection
52
+
53
+ > Verification status: derived from ToolSpec/agent templates; pending live calibration
54
+
55
+ - Projection content: Primer design table (mutation id, forward/reverse primer sequences, Tm) + Excel download_url + ZIP zip_download_url
56
+ - Presentation form: Markdown table + Excel/ZIP download links
57
+ - Downstream reuse: -
58
+ ## Output Template
59
+
60
+ - Title: **Single-site mutation primer design result (REAP Step 7)**
61
+ - Markdown table: `| Mutation ID | Forward primer | Reverse primer | Tm |`
62
+ - Add the Excel and ZIP to the "Result files & downloads" section
63
+
64
+ ## Boundaries & Failure Modes
65
+
66
+ - File-type parameters (`structure_file`/`sequence_file`/`msa_file` etc.) take server-accessible URL/path strings, not local upload paths; a `download_url` or `pdb_url` returned by an upstream endpoint can be backfilled directly as downstream input.
67
+ - Make only the minimal calls needed to complete the task; `--data` carries only the fields declared by this endpoint. Do not invent enum values or branches beyond the required combinations.
68
+ - Do not pass off local tool (RDKit/pymatgen/LAMMPS/self-attached MCP) results as this endpoint's results; do not connect directly to Huada or gateway URLs.
69
+ - On failure, report a short summary of the CLI's raw error; do not blindly retry after remote computation timeouts (the outcome may be unknown because the task may already have happened).
@@ -0,0 +1,65 @@
1
+ # Protein Scaffold Design (RFdiffusion3) (`huada_protein_tools` / `rfd3_design`)
2
+
3
+ This endpoint is a real endpoint of the `huada_protein_tools` tool. It can only be
4
+ called via `delta-cli science invoke`; the business response described below lives
5
+ under the CLI top-level `data` — read fields as documented in this file, do not
6
+ recursively search. This file only documents the endpoint schema; it does not
7
+ authorize direct HTTP. Endpoint names are authoritative as returned by
8
+ `delta-cli science endpoints list huada_protein_tools`; use them verbatim — never
9
+ guess, truncate, or alias.
10
+
11
+ ## Overview
12
+
13
+ Protein scaffold design with RFdiffusion3 (without MPNN sequence design).
14
+ - Required: `structure_file` (cropped PDB/CIF structure URL or path, e.g. the `download_url` returned by pocket_prediction)
15
+ - Optional: `chain_id` (design only this chain, default "A"; specifying a single chain on a multi-chain structure such as a tetramer avoids cross-chain cost-matrix conflicts), `length` (design length range, e.g. "100-200", default "100-200"), `rfd3_n` (RFdiffusion3 sample count, default 1)
16
+ - The backend auto-infers `unindex` / `select_fixed_atoms` / `ori_token`
17
+ - Output: generated PDB structure files and sequence FASTA files packaged as a ZIP `download_url`; `resultjson` contains `{structures: [...], structure_links: [...]}`, where each `structures` entry carries chain/length/sequence/sample_score/quality_metrics, and `quality_metrics` includes insertion RMSD, clashes, chain breaks, secondary structure, etc.; `structure_links` are the best ≤5 scaffold PDB links sorted by `sample_score` (highest score first)
18
+ - Use case: scaffold design only, without MPNN sequence design
19
+
20
+ ## Invocation
21
+
22
+ ```text
23
+ delta-cli science invoke --tool huada_protein_tools --endpoint rfd3_design --data JSON
24
+ ```
25
+
26
+ Required input groups (at least one per group; all groups must be satisfied):
27
+
28
+ - `structure_file`
29
+
30
+ Request fields:
31
+
32
+ | Field | Description | Default |
33
+ |---|---|---|
34
+ | `structure_file` | Cropped PDB/CIF | - |
35
+ | `chain_id` | Design only this protein chain, default "A" | A |
36
+ | `length` | Design length range, e.g. "100-200" | 100-200 |
37
+ | `rfd3_n` | RFdiffusion3 sample count, default 1 | 1 |
38
+
39
+ ## Response
40
+
41
+ - CLI top-level envelope: a call succeeds only when the exit code is 0 AND `ok` is `true`; the service response lives under `data`.
42
+ - Server-side contract: `status` (success/error/partial), `message`, `tool_type`, `resultjson`, `download_url`; some endpoints also return `total_count`. `resultjson` may be a single object or an array — read only the keys documented in this file, do not recursively search.
43
+ - Binary/file artifacts (such as the PDB/XLSX/FASTA/ZIP files that `download_url` points to) are downloaded and verified with
44
+ `delta-cli science file download --tool huada_protein_tools --endpoint ... --output <path>`;
45
+ do not treat file contents as ordinary JSON results.
46
+
47
+ ## Output Projection
48
+
49
+ > Verification status: derived from ToolSpec/agent templates; pending live calibration
50
+
51
+ - Projection content: structure_links (best ≤5 scaffold PDBs sorted by sample_score) with structures overview (chain/length/sequence/sample_score/quality metrics)
52
+ - Presentation form: Scaffold PDB link list; quality metrics include insertion RMSD, clashes, chain breaks, secondary structure
53
+ - Downstream reuse: scaffolds can feed mpnn_design_sequence / protein_design for sequence design
54
+ ## Output Template
55
+
56
+ - Title: **RFdiffusion3 protein scaffold design result**
57
+ - Lead with the conclusion: number of scaffolds generated (best ≤5), sample_score range
58
+ - Add scaffold PDB links to the "Result files & downloads" section; summarize quality metrics in text (insertion RMSD/clashes/chain breaks/secondary structure)
59
+
60
+ ## Boundaries & Failure Modes
61
+
62
+ - File-type parameters (`structure_file`/`sequence_file`/`msa_file` etc.) take server-accessible URL/path strings, not local upload paths; a `download_url` or `pdb_url` returned by an upstream endpoint can be backfilled directly as downstream input.
63
+ - Make only the minimal calls needed to complete the task; `--data` carries only the fields declared by this endpoint. Do not invent enum values or branches beyond the required combinations.
64
+ - Do not pass off local tool (RDKit/pymatgen/LAMMPS/self-attached MCP) results as this endpoint's results; do not connect directly to Huada or gateway URLs.
65
+ - On failure, report a short summary of the CLI's raw error; do not blindly retry after remote computation timeouts (the outcome may be unknown because the task may already have happened).
@@ -0,0 +1,61 @@
1
+ # PDB Sequence Extraction (`huada_protein_tools` / `structure_to_sequence`)
2
+
3
+ This endpoint is a real endpoint of the `huada_protein_tools` tool. It can only be
4
+ called via `delta-cli science invoke`; the business response described below lives
5
+ under the CLI top-level `data` — read fields as documented in this file, do not
6
+ recursively search. This file only documents the endpoint schema; it does not
7
+ authorize direct HTTP. Endpoint names are authoritative as returned by
8
+ `delta-cli science endpoints list huada_protein_tools`; use them verbatim — never
9
+ guess, truncate, or alias.
10
+
11
+ ## Overview
12
+
13
+ Extract the protein sequence from a PDB/CIF structure file.
14
+ - Required: `structure_file`
15
+ - Optional: `chain` (A)
16
+ - Output: extracted protein sequence `resultjson`
17
+
18
+ ## Invocation
19
+
20
+ ```text
21
+ delta-cli science invoke --tool huada_protein_tools --endpoint structure_to_sequence --data JSON
22
+ ```
23
+
24
+ Required input groups (at least one per group; all groups must be satisfied):
25
+
26
+ - `structure_file`
27
+
28
+ Request fields:
29
+
30
+ | Field | Description | Default |
31
+ |---|---|---|
32
+ | `structure_file` | PDB/CIF | - |
33
+ | `chain` | Protein chain identifier, default A | A |
34
+
35
+ ## Response
36
+
37
+ - CLI top-level envelope: a call succeeds only when the exit code is 0 AND `ok` is `true`; the service response lives under `data`.
38
+ - Server-side contract: `status` (success/error/partial), `message`, `tool_type`, `resultjson`, `download_url`; some endpoints also return `total_count`. `resultjson` may be a single object or an array — read only the keys documented in this file, do not recursively search.
39
+ - Binary/file artifacts (such as the PDB/XLSX/FASTA/ZIP files that `download_url` points to) are downloaded and verified with
40
+ `delta-cli science file download --tool huada_protein_tools --endpoint ... --output <path>`;
41
+ do not treat file contents as ordinary JSON results.
42
+
43
+ ## Output Projection
44
+
45
+ > Verification status: derived from ToolSpec/agent templates; pending live calibration
46
+
47
+ - Projection content: Protein sequence extracted from PDB/CIF
48
+ - Presentation form: Sequence shown as inline code
49
+ - Downstream reuse: sequence can be used as protein_sequence for downstream mutation/design/annotation endpoints (e.g. consensus_mutation, interpro_analyze)
50
+ ## Output Template
51
+
52
+ - Title: **Structure-to-sequence extraction result**
53
+ - Lead with the conclusion: extracted protein sequence for chain=<chain> (length N aa)
54
+ - Show the sequence as inline code; no download needed
55
+
56
+ ## Boundaries & Failure Modes
57
+
58
+ - File-type parameters (`structure_file`/`sequence_file`/`msa_file` etc.) take server-accessible URL/path strings, not local upload paths; a `download_url` or `pdb_url` returned by an upstream endpoint can be backfilled directly as downstream input.
59
+ - Make only the minimal calls needed to complete the task; `--data` carries only the fields declared by this endpoint. Do not invent enum values or branches beyond the required combinations.
60
+ - Do not pass off local tool (RDKit/pymatgen/LAMMPS/self-attached MCP) results as this endpoint's results; do not connect directly to Huada or gateway URLs.
61
+ - On failure, report a short summary of the CLI's raw error; do not blindly retry after remote computation timeouts (the outcome may be unknown because the task may already have happened).
@@ -0,0 +1,68 @@
1
+ # Multi-model Result Summary (`huada_protein_tools` / `summarize_result`)
2
+
3
+ This endpoint is a real endpoint of the `huada_protein_tools` tool. It can only be
4
+ called via `delta-cli science invoke`; the business response described below lives
5
+ under the CLI top-level `data` — read fields as documented in this file, do not
6
+ recursively search. This file only documents the endpoint schema; it does not
7
+ authorize direct HTTP. Endpoint names are authoritative as returned by
8
+ `delta-cli science endpoints list huada_protein_tools`; use them verbatim — never
9
+ guess, truncate, or alias.
10
+
11
+ ## Overview
12
+
13
+ Summarize multi-model zero-shot prediction results as the final step of the
14
+ mutation-prediction flow.
15
+ - Required: `result_files` (list of paths to multiple prediction result files)
16
+ - Optional: `protein_sequence`, `topk` (10)
17
+ - Output: summarized ranking `download_url`
18
+
19
+ ## Invocation
20
+
21
+ ```text
22
+ delta-cli science invoke --tool huada_protein_tools --endpoint summarize_result --data JSON
23
+ ```
24
+
25
+ Required input groups (at least one per group; all groups must be satisfied):
26
+
27
+ - `result_files`
28
+
29
+ Server-side default parameters:
30
+
31
+ - `topk` = `10`
32
+
33
+ Request fields:
34
+
35
+ | Field | Description | Default |
36
+ |---|---|---|
37
+ | `result_files` | URL list of result files from previous steps | [] |
38
+ | `protein_sequence` | | - |
39
+ | `topk` | Return the top k results, default 10 | 10 |
40
+
41
+ ## Response
42
+
43
+ - CLI top-level envelope: a call succeeds only when the exit code is 0 AND `ok` is `true`; the service response lives under `data`.
44
+ - Server-side contract: `status` (success/error/partial), `message`, `tool_type`, `resultjson`, `download_url`; some endpoints also return `total_count`. `resultjson` may be a single object or an array — read only the keys documented in this file, do not recursively search.
45
+ - Binary/file artifacts (such as the PDB/XLSX/FASTA/ZIP files that `download_url` points to) are downloaded and verified with
46
+ `delta-cli science file download --tool huada_protein_tools --endpoint ... --output <path>`;
47
+ do not treat file contents as ordinary JSON results.
48
+
49
+ ## Output Projection
50
+
51
+ > Verification status: derived from ToolSpec/agent templates; pending live calibration
52
+
53
+ - Projection content: Multi-model summarized ranking (topk) with all rows retained; restated as a table with the tool's original fields, prompting download of the full file when too long
54
+ - Presentation form: Full Markdown table (≤100 rows); better for filtering/sorting
55
+ - Downstream reuse: final step of the mutation-prediction chain (terminal)
56
+ ## Output Template
57
+
58
+ - Title: **Multi-model result summary**
59
+ - Show the full summary table (≤100 rows, no truncation), column names restated in natural language
60
+ - Lead with the conclusion: positions where models agree/disagree; base final recommendations on the summary rather than restating single-model raw tables
61
+ - When more than 100 rows, prompt downloading the full file
62
+
63
+ ## Boundaries & Failure Modes
64
+
65
+ - File-type parameters (`structure_file`/`sequence_file`/`msa_file` etc.) take server-accessible URL/path strings, not local upload paths; a `download_url` or `pdb_url` returned by an upstream endpoint can be backfilled directly as downstream input.
66
+ - Make only the minimal calls needed to complete the task; `--data` carries only the fields declared by this endpoint. Do not invent enum values or branches beyond the required combinations.
67
+ - Do not pass off local tool (RDKit/pymatgen/LAMMPS/self-attached MCP) results as this endpoint's results; do not connect directly to Huada or gateway URLs.
68
+ - On failure, report a short summary of the CLI's raw error; do not blindly retry after remote computation timeouts (the outcome may be unknown because the task may already have happened).
@@ -0,0 +1,84 @@
1
+ # Surface Residue Charge Analysis (`huada_protein_tools` / `surface_charge`)
2
+
3
+ This endpoint is a real endpoint of the `huada_protein_tools` tool. It can only be
4
+ called via `delta-cli science invoke`; the business response described below lives
5
+ under the CLI top-level `data` — read fields as documented in this file, do not
6
+ recursively search. This file only documents the endpoint schema; it does not
7
+ authorize direct HTTP. Endpoint names are authoritative as returned by
8
+ `delta-cli science endpoints list huada_protein_tools`; use them verbatim — never
9
+ guess, truncate, or alias.
10
+
11
+ ## Overview
12
+
13
+ Analyze protein surface residue charges with ProCaliper + APBS.
14
+ - Required: `structure_file` (.pdb/.cif/.ent)
15
+ - Optional: `pH` (default 7.4), `forcefield` (default PARSE), `chain_ids` (e.g. 'A,B'),
16
+ `sasa_threshold` (default 20.0 Ų), `potential_threshold` (default 1.0 kT/e), `precision` (standard/high)
17
+ - ProCaliper computes SASA + PROPKA pKa to determine surface/buried status and charge type; pH affects PDB2PQR protonation (APBS) and charge-type determination
18
+ - APBS solves the electrostatic potential .dx grid → maps it back to surface residues, identifying charge patches
19
+ - Use case: analyze protein surface electrostatic properties, identify charge patches, assist binding-interface analysis
20
+
21
+ This endpoint's `resultjson` is a flat structure (tested, not an analysis/visualization wrapper):
22
+
23
+ - `negative_surface` / `positive_surface` / `net_surface_charge`: negative/positive/net charge residue counts
24
+ - `patch_count` / `patches[]`: charge patches (non-empty only when APBS is available)
25
+ - `residues[]`: per residue `chain` / `res3` / `seq` / `sasa` / `pka` / `charge_type` /
26
+ `is_surface` / `protonation_state` / `potential` / `potential_type` / `in_patch` / `patch_id`
27
+ - `sasa_threshold` / `surface_residues`: surface-determination threshold and surface residue count
28
+ - `pdb2pqr{pka_df[]}`: PROPKA pKa details; `procaliper{sasa, titration}`: SASA and titration state
29
+ - `apbs{status, message}`: electrostatic-potential solving status. When APBS is unavailable the overall
30
+ `status` is `partial`, `message` notes the reason (e.g. `APBS executable 'apbs' not found. Set APBS_BIN.`),
31
+ `potential` is null and `patch_count=0`; in that case report only the ProCaliper charge results and do
32
+ not misreport it as a call failure
33
+ - `download_url`: the electrostatic potential `.dx` grid download link when APBS is available
34
+
35
+ ## Invocation
36
+
37
+ ```text
38
+ delta-cli science invoke --tool huada_protein_tools --endpoint surface_charge --data JSON
39
+ ```
40
+
41
+ Required input groups (at least one per group; all groups must be satisfied):
42
+
43
+ - `structure_file`
44
+
45
+ Request fields:
46
+
47
+ | Field | Description | Default |
48
+ |---|---|---|
49
+ | `structure_file` | PDB/CIF | - |
50
+ | `pH` | pH value; affects APBS protonation and residue charge-type determination | 7.4 |
51
+ | `forcefield` | PDB2PQR forcefield | PARSE |
52
+ | `chain_ids` | Select chains in multi-chain structures, e.g. A,B; default all chains | - |
53
+ | `sasa_threshold` | Surface residue SASA threshold (Ų) | 20.0 |
54
+ | `potential_threshold` | Potential polarity threshold (kT/e) | 1.0 |
55
+ | `precision` | Grid precision: standard / high | standard |
56
+
57
+ ## Response
58
+
59
+ - CLI top-level envelope: a call succeeds only when the exit code is 0 AND `ok` is `true`; the service response lives under `data`.
60
+ - Server-side contract: `status` (success/error/partial), `message`, `tool_type`, `resultjson`, `download_url`; some endpoints also return `total_count`. `resultjson` may be a single object or an array — read only the keys documented in this file, do not recursively search.
61
+ - Binary/file artifacts (such as the PDB/XLSX/FASTA/ZIP files that `download_url` points to) are downloaded and verified with
62
+ `delta-cli science file download --tool huada_protein_tools --endpoint ... --output <path>`;
63
+ do not treat file contents as ordinary JSON results.
64
+
65
+ ## Output Projection
66
+
67
+ > Verification status: verified by a real `delta-cli` invocation
68
+
69
+ - Projection content: Charge summary: negative_surface / positive_surface / net_surface_charge / surface_residues / patch_count / patches; residues[] details (sasa/pka/charge_type/is_surface)
70
+ - Presentation form: Text/table; when APBS is unavailable status=partial — report only ProCaliper results and explain why; download_url is the .dx grid (when APBS available)
71
+ - Downstream reuse: -
72
+ ## Output Template
73
+
74
+ - Title: **Surface residue charge analysis result (ProCaliper + APBS)**
75
+ - Lead with the conclusion: net charge (positive/negative/net_surface_charge), surface residue count, charge patch count
76
+ - List key surface positive/negative-charge residues (with pKa/sasa)
77
+ - When APBS is unavailable (status=partial) state plainly that electrostatics were not solved and report only ProCaliper results; add the .dx grid (if any) to the "Result files & downloads" section
78
+
79
+ ## Boundaries & Failure Modes
80
+
81
+ - File-type parameters (`structure_file`/`sequence_file`/`msa_file` etc.) take server-accessible URL/path strings, not local upload paths; a `download_url` or `pdb_url` returned by an upstream endpoint can be backfilled directly as downstream input.
82
+ - Make only the minimal calls needed to complete the task; `--data` carries only the fields declared by this endpoint. Do not invent enum values or branches beyond the required combinations.
83
+ - Do not pass off local tool (RDKit/pymatgen/LAMMPS/self-attached MCP) results as this endpoint's results; do not connect directly to Huada or gateway URLs.
84
+ - On failure, report a short summary of the CLI's raw error; do not blindly retry after remote computation timeouts (the outcome may be unknown because the task may already have happened).