@delta-infra/cli 1.0.80 → 1.0.82

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 (32) hide show
  1. package/README.md +429 -429
  2. package/checksums.txt +5 -5
  3. package/package.json +1 -1
  4. package/scripts/install-wizard.js +625 -625
  5. package/scripts/install.js +417 -417
  6. package/scripts/run.js +65 -65
  7. package/skills/delta-sandbox/SKILL.md +356 -356
  8. package/skills/delta-sandbox/agents/openai.yaml +4 -4
  9. package/skills/delta-sandbox/references/commands.md +56 -56
  10. package/skills/delta-sandbox/references/lifecycle.md +92 -92
  11. package/skills/delta-sandbox/references/recipes.md +133 -133
  12. package/skills/delta-science/SKILL.md +136 -150
  13. package/skills/delta-science/agents/openai.yaml +4 -4
  14. package/skills/delta-science/references/antbo.md +100 -100
  15. package/skills/delta-science/references/cli-contract.md +53 -83
  16. package/skills/delta-science/references/delta-bo.md +89 -90
  17. package/skills/delta-science/references/gsasii.md +116 -116
  18. package/skills/delta-science/references/lammps.md +66 -66
  19. package/skills/delta-science/references/ldm-bo.md +129 -130
  20. package/skills/delta-science/references/ldm.md +73 -72
  21. package/skills/delta-science/references/pubchem.md +126 -127
  22. package/skills/delta-science/references/pymatgen.md +68 -68
  23. package/skills/delta-science/references/rdkit.md +138 -139
  24. package/skills/delta-science/references/routing-index.md +36 -36
  25. package/skills/delta-science/references/strbo.md +87 -87
  26. package/skills/delta-science/references/synbo.md +198 -197
  27. package/skills/delta-science/references/workflows.md +61 -61
  28. package/skills/delta-shared/SKILL.md +95 -95
  29. package/skills/delta-shared/agents/openai.yaml +4 -4
  30. package/skills/manifest.json +19 -19
  31. package/skills/delta-science/scripts/catalog.py +0 -92
  32. package/skills/delta-science/scripts/invoke.py +0 -346
@@ -1,127 +1,126 @@
1
- # PubChem 详细规则
2
-
3
- 只能通过当前 Skill 目录下的 `scripts/invoke.py` 调用。wrapper 已解包服务
4
- 信封,因此以下文档所说的业务 `data` 在 wrapper 结果中就是 `result["native"]`
5
- 顶层;禁止再读取 `result["native"]["data"]`。本文件中的 URL 只用于说明 endpoint
6
- schema,不授权直接 HTTP。普通名称基础查询只调用一次 `compound-summary`;多个名称
7
- 只调用一次 `compound-batch-summary`,默认 body 仅包含 `identifiers` 和
8
- `namespace:"name"`,不得先调用 health/schema。
9
-
10
- 结果直接从 `native` 投影。批量记录位于 `native.results[*]`,原始标签在 `input`,
11
- 属性在嵌套 `properties`。SMILES 回退顺序固定为
12
- `CanonicalSMILES -> ConnectivitySMILES -> SMILES -> IsomericSMILES`。
13
- PubChem `XLogP` 与 RDKit `MolLogP` 不得互换;not_found 不得用本地计算补值。
14
-
15
- Namespaces: `cid`, `name`, `smiles`, `inchi`, `inchikey`, `formula`.
16
-
17
- ## Health
18
-
19
- operation:`health`,无 body。
20
-
21
- ## Resolve CIDs
22
-
23
- operation:`compound-resolve-cids`。
24
-
25
- ```json
26
- {"identifier": "aspirin", "namespace": "name", "max_records": 20}
27
- ```
28
-
29
- `max_records`: 1-100.
30
-
31
- ## Properties
32
-
33
- operation:`compound-properties`。
34
-
35
- ```json
36
- {
37
- "identifier": "2244",
38
- "namespace": "cid",
39
- "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "IUPACName"]
40
- }
41
- ```
42
-
43
- Allowed properties include `MolecularFormula`, `MolecularWeight`,
44
- `CanonicalSMILES`, `IsomericSMILES`, `SMILES`, `ConnectivitySMILES`,
45
- `IUPACName`, `InChI`, `InChIKey`, `XLogP`, `TPSA`, `HBondDonorCount`,
46
- `HBondAcceptorCount`, `RotatableBondCount`, `ExactMass`, `MonoisotopicMass`,
47
- `Charge`, `HeavyAtomCount`, `Complexity`, `CovalentUnitCount`,
48
- `DefinedAtomStereoCount`, `UndefinedAtomStereoCount`, `DefinedBondStereoCount`,
49
- `UndefinedBondStereoCount`, and `IsotopeAtomCount`.
50
-
51
- ## Synonyms
52
-
53
- operation:`compound-synonyms`。
54
-
55
- ```json
56
- {"identifier": "2244", "namespace": "cid", "max_synonyms": 50}
57
- ```
58
-
59
- `max_synonyms`: 1-500.
60
-
61
- ## Summary
62
-
63
- operation:`compound-summary`。
64
-
65
- ```json
66
- {
67
- "identifier": "aspirin",
68
- "namespace": "name",
69
- "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "IUPACName"],
70
- "synonym_limit": 20
71
- }
72
- ```
73
-
74
- `synonym_limit`: 0-100. Use this endpoint for general compound lookup because
75
- it resolves CID, selected properties, and synonyms in one call.
76
-
77
- Response fields include `valid`, `cid`, `properties`, `properties_raw`,
78
- `aliases`, `synonyms`, and `metadata`. Numeric properties are coerced to JSON
79
- numbers when possible. Requested SMILES aliases are filled when PubChem returns
80
- an equivalent key such as `ConnectivitySMILES`.
81
-
82
- ## Batch Summary
83
-
84
- operation:`compound-batch-summary`。
85
-
86
- ```json
87
- {
88
- "identifiers": ["aspirin", "ibuprofen", "caffeine"],
89
- "namespace": "name",
90
- "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "XLogP", "TPSA"],
91
- "synonym_limit": 5
92
- }
93
- ```
94
-
95
- Limits: 1-100 identifiers. The response preserves input order and includes
96
- per-item errors:
97
-
98
- ```json
99
- {
100
- "valid": false,
101
- "namespace": "name",
102
- "properties_requested": ["CanonicalSMILES"],
103
- "results": [
104
- {
105
- "input": "aspirin",
106
- "valid": true,
107
- "cid": 2244,
108
- "properties": {
109
- "CanonicalSMILES": "CC(=O)Oc1ccccc1C(=O)O",
110
- "ConnectivitySMILES": "CC(=O)Oc1ccccc1C(=O)O",
111
- "_aliases": {"CanonicalSMILES": "ConnectivitySMILES"},
112
- "properties_raw": {}
113
- },
114
- "properties_raw": {},
115
- "aliases": {"CanonicalSMILES": "ConnectivitySMILES"},
116
- "synonyms": []
117
- },
118
- {
119
- "input": "bad-name",
120
- "valid": false,
121
- "error": "not found"
122
- }
123
- ],
124
- "count": 2,
125
- "failed_count": 1
126
- }
127
- ```
1
+ # PubChem 详细规则
2
+
3
+ 只能通过 `delta-cli science invoke` 调用。本文件中的业务响应位于 CLI 顶层 `data`;
4
+ 只按本文件说明读取字段,不得递归搜索。本文件中的 URL 只用于说明 endpoint schema,
5
+ 不授权直接 HTTP。普通名称基础查询只调用一次 `compound-summary`;多个名称
6
+ 只调用一次 `compound-batch-summary`,默认 body 仅包含 `identifiers` 和
7
+ `namespace:"name"`,不得先调用 health/schema。
8
+
9
+ 结果直接从 `data` 投影。批量记录位于 `data.results[*]`,原始标签在 `input`,
10
+ 属性在嵌套 `properties`。SMILES 回退顺序固定为
11
+ `CanonicalSMILES -> ConnectivitySMILES -> SMILES -> IsomericSMILES`。
12
+ PubChem `XLogP` 与 RDKit `MolLogP` 不得互换;not_found 不得用本地计算补值。
13
+
14
+ Namespaces: `cid`, `name`, `smiles`, `inchi`, `inchikey`, `formula`.
15
+
16
+ ## Health
17
+
18
+ operation:`health`,无 body。
19
+
20
+ ## Resolve CIDs
21
+
22
+ operation:`compound-resolve-cids`。
23
+
24
+ ```json
25
+ {"identifier": "aspirin", "namespace": "name", "max_records": 20}
26
+ ```
27
+
28
+ `max_records`: 1-100.
29
+
30
+ ## Properties
31
+
32
+ operation:`compound-properties`。
33
+
34
+ ```json
35
+ {
36
+ "identifier": "2244",
37
+ "namespace": "cid",
38
+ "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "IUPACName"]
39
+ }
40
+ ```
41
+
42
+ Allowed properties include `MolecularFormula`, `MolecularWeight`,
43
+ `CanonicalSMILES`, `IsomericSMILES`, `SMILES`, `ConnectivitySMILES`,
44
+ `IUPACName`, `InChI`, `InChIKey`, `XLogP`, `TPSA`, `HBondDonorCount`,
45
+ `HBondAcceptorCount`, `RotatableBondCount`, `ExactMass`, `MonoisotopicMass`,
46
+ `Charge`, `HeavyAtomCount`, `Complexity`, `CovalentUnitCount`,
47
+ `DefinedAtomStereoCount`, `UndefinedAtomStereoCount`, `DefinedBondStereoCount`,
48
+ `UndefinedBondStereoCount`, and `IsotopeAtomCount`.
49
+
50
+ ## Synonyms
51
+
52
+ operation:`compound-synonyms`。
53
+
54
+ ```json
55
+ {"identifier": "2244", "namespace": "cid", "max_synonyms": 50}
56
+ ```
57
+
58
+ `max_synonyms`: 1-500.
59
+
60
+ ## Summary
61
+
62
+ operation:`compound-summary`。
63
+
64
+ ```json
65
+ {
66
+ "identifier": "aspirin",
67
+ "namespace": "name",
68
+ "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "IUPACName"],
69
+ "synonym_limit": 20
70
+ }
71
+ ```
72
+
73
+ `synonym_limit`: 0-100. Use this endpoint for general compound lookup because
74
+ it resolves CID, selected properties, and synonyms in one call.
75
+
76
+ Response fields include `valid`, `cid`, `properties`, `properties_raw`,
77
+ `aliases`, `synonyms`, and `metadata`. Numeric properties are coerced to JSON
78
+ numbers when possible. Requested SMILES aliases are filled when PubChem returns
79
+ an equivalent key such as `ConnectivitySMILES`.
80
+
81
+ ## Batch Summary
82
+
83
+ operation:`compound-batch-summary`。
84
+
85
+ ```json
86
+ {
87
+ "identifiers": ["aspirin", "ibuprofen", "caffeine"],
88
+ "namespace": "name",
89
+ "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "XLogP", "TPSA"],
90
+ "synonym_limit": 5
91
+ }
92
+ ```
93
+
94
+ Limits: 1-100 identifiers. The response preserves input order and includes
95
+ per-item errors:
96
+
97
+ ```json
98
+ {
99
+ "valid": false,
100
+ "namespace": "name",
101
+ "properties_requested": ["CanonicalSMILES"],
102
+ "results": [
103
+ {
104
+ "input": "aspirin",
105
+ "valid": true,
106
+ "cid": 2244,
107
+ "properties": {
108
+ "CanonicalSMILES": "CC(=O)Oc1ccccc1C(=O)O",
109
+ "ConnectivitySMILES": "CC(=O)Oc1ccccc1C(=O)O",
110
+ "_aliases": {"CanonicalSMILES": "ConnectivitySMILES"},
111
+ "properties_raw": {}
112
+ },
113
+ "properties_raw": {},
114
+ "aliases": {"CanonicalSMILES": "ConnectivitySMILES"},
115
+ "synonyms": []
116
+ },
117
+ {
118
+ "input": "bad-name",
119
+ "valid": false,
120
+ "error": "not found"
121
+ }
122
+ ],
123
+ "count": 2,
124
+ "failed_count": 1
125
+ }
126
+ ```
@@ -1,68 +1,68 @@
1
- # pymatgen 详细规则
2
-
3
- 所有调用只走统一 wrapper。无机化学式、组成和式量优先使用 pymatgen,不用 PubChem
4
- 或本地元素表替代。结构 operation 必须发送完整结构文本,不能发送本地文件路径;
5
- 支持 `cif`、`poscar`、`json`、`cssr`、`xsf`,不接收 LAMMPS data/dump。
6
-
7
- ## Health
8
-
9
- operation:`health`,无 body。
10
-
11
- ## Composition Parse
12
-
13
- operation:`composition-parse`。
14
-
15
- ```json
16
- {"formula": "LiFePO4", "format": "formula"}
17
- ```
18
-
19
- Key response fields in `data`: `valid`, `formula`, `reduced_formula`,
20
- `alphabetic_formula`, `anonymous_formula`, `chemical_system`,
21
- `number_of_atoms`, `weight`, `element_amounts`, `atomic_fractions`,
22
- `weight_fractions`, `error`.
23
-
24
- ## Structure Parse / Summary
25
-
26
- operation:`structure-parse` 或 `structure-summary`。
27
-
28
- ```json
29
- {"input": "<CIF text>", "format": "cif", "primitive": false}
30
- ```
31
-
32
- Input formats: `cif`, `poscar`, `json`, `cssr`, `xsf`.
33
-
34
- Summary fields include `formula`, `reduced_formula`, `chemical_system`,
35
- `nsites`, `nelements`, `density`, `volume`, `lattice`, `element_amounts`, and
36
- `species`.
37
-
38
- ## Structure Convert
39
-
40
- operation:`structure-convert`。
41
-
42
- ```json
43
- {
44
- "input": "<CIF text>",
45
- "input_format": "cif",
46
- "output_format": "poscar",
47
- "primitive": false
48
- }
49
- ```
50
-
51
- Output formats: `cif`, `poscar`, `json`, `cssr`, `xsf`.
52
-
53
- ## Symmetry
54
-
55
- operation:`structure-symmetry`。
56
-
57
- ```json
58
- {
59
- "input": "<CIF text>",
60
- "format": "cif",
61
- "primitive": false,
62
- "symprec": 0.01,
63
- "angle_tolerance": 5.0
64
- }
65
- ```
66
-
67
- Returns `space_group_symbol`, `space_group_number`, `crystal_system`,
68
- `point_group_symbol`, `hall`, and `nsites`.
1
+ # pymatgen 详细规则
2
+
3
+ 所有调用直接使用 `delta-cli science invoke`。无机化学式、组成和式量优先使用 pymatgen,不用 PubChem
4
+ 或本地元素表替代。结构 operation 必须发送完整结构文本,不能发送本地文件路径;
5
+ 支持 `cif`、`poscar`、`json`、`cssr`、`xsf`,不接收 LAMMPS data/dump。
6
+
7
+ ## Health
8
+
9
+ operation:`health`,无 body。
10
+
11
+ ## Composition Parse
12
+
13
+ operation:`composition-parse`。
14
+
15
+ ```json
16
+ {"formula": "LiFePO4", "format": "formula"}
17
+ ```
18
+
19
+ Key response fields in `data`: `valid`, `formula`, `reduced_formula`,
20
+ `alphabetic_formula`, `anonymous_formula`, `chemical_system`,
21
+ `number_of_atoms`, `weight`, `element_amounts`, `atomic_fractions`,
22
+ `weight_fractions`, `error`.
23
+
24
+ ## Structure Parse / Summary
25
+
26
+ operation:`structure-parse` 或 `structure-summary`。
27
+
28
+ ```json
29
+ {"input": "<CIF text>", "format": "cif", "primitive": false}
30
+ ```
31
+
32
+ Input formats: `cif`, `poscar`, `json`, `cssr`, `xsf`.
33
+
34
+ Summary fields include `formula`, `reduced_formula`, `chemical_system`,
35
+ `nsites`, `nelements`, `density`, `volume`, `lattice`, `element_amounts`, and
36
+ `species`.
37
+
38
+ ## Structure Convert
39
+
40
+ operation:`structure-convert`。
41
+
42
+ ```json
43
+ {
44
+ "input": "<CIF text>",
45
+ "input_format": "cif",
46
+ "output_format": "poscar",
47
+ "primitive": false
48
+ }
49
+ ```
50
+
51
+ Output formats: `cif`, `poscar`, `json`, `cssr`, `xsf`.
52
+
53
+ ## Symmetry
54
+
55
+ operation:`structure-symmetry`。
56
+
57
+ ```json
58
+ {
59
+ "input": "<CIF text>",
60
+ "format": "cif",
61
+ "primitive": false,
62
+ "symprec": 0.01,
63
+ "angle_tolerance": 5.0
64
+ }
65
+ ```
66
+
67
+ Returns `space_group_symbol`, `space_group_number`, `crystal_system`,
68
+ `point_group_symbol`, `hall`, and `nsites`.