@delta-infra/cli 1.0.76 → 1.0.77

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 (50) hide show
  1. package/README.md +405 -405
  2. package/checksums.txt +5 -5
  3. package/package.json +1 -1
  4. package/scripts/install-wizard.js +596 -596
  5. package/scripts/install.js +400 -400
  6. package/scripts/run.js +65 -65
  7. package/skills/antbo-ldm-guard/SKILL.md +51 -51
  8. package/skills/antbo-ldm-guard/agents/openai.yaml +4 -4
  9. package/skills/antbo-service/SKILL.md +71 -71
  10. package/skills/antbo-service/agents/openai.yaml +4 -4
  11. package/skills/antbo-service/references/operations.md +45 -45
  12. package/skills/delta-bo/SKILL.md +28 -28
  13. package/skills/delta-bo/agents/openai.yaml +4 -4
  14. package/skills/delta-bo/references/endpoints.md +263 -263
  15. package/skills/delta-sandbox/SKILL.md +356 -356
  16. package/skills/delta-sandbox/agents/openai.yaml +4 -4
  17. package/skills/delta-sandbox/references/commands.md +56 -56
  18. package/skills/delta-sandbox/references/lifecycle.md +92 -92
  19. package/skills/delta-sandbox/references/recipes.md +133 -133
  20. package/skills/delta-science/SKILL.md +163 -163
  21. package/skills/delta-science/agents/openai.yaml +4 -4
  22. package/skills/delta-science/references/cli-contract.md +84 -84
  23. package/skills/delta-science/references/services.md +112 -112
  24. package/skills/delta-science/references/workflows.md +44 -44
  25. package/skills/delta-science/scripts/invoke.py +257 -257
  26. package/skills/delta-shared/SKILL.md +95 -95
  27. package/skills/delta-shared/agents/openai.yaml +4 -4
  28. package/skills/gsasii/SKILL.md +34 -34
  29. package/skills/gsasii/agents/openai.yaml +4 -4
  30. package/skills/gsasii/references/endpoints.md +130 -130
  31. package/skills/lammps/SKILL.md +31 -31
  32. package/skills/lammps/agents/openai.yaml +4 -4
  33. package/skills/lammps/references/endpoints.md +61 -61
  34. package/skills/ldm-bo/SKILL.md +27 -27
  35. package/skills/ldm-bo/agents/openai.yaml +4 -4
  36. package/skills/ldm-bo/references/endpoints.md +127 -127
  37. package/skills/pubchem/SKILL.md +85 -85
  38. package/skills/pubchem/agents/openai.yaml +4 -4
  39. package/skills/pubchem/references/endpoints.md +122 -122
  40. package/skills/pubchem/references/operations.md +41 -41
  41. package/skills/pymatgen/SKILL.md +46 -46
  42. package/skills/pymatgen/agents/openai.yaml +4 -4
  43. package/skills/pymatgen/references/endpoints.md +66 -66
  44. package/skills/rdkit/SKILL.md +104 -104
  45. package/skills/rdkit/agents/openai.yaml +4 -4
  46. package/skills/rdkit/references/endpoints.md +133 -133
  47. package/skills/rdkit/references/operations.md +64 -64
  48. package/skills/synbo-service/SKILL.md +28 -28
  49. package/skills/synbo-service/agents/openai.yaml +4 -4
  50. package/skills/synbo-service/references/endpoints.md +157 -157
@@ -1,122 +1,122 @@
1
- # PubChem Endpoint Reference
2
-
3
- 在 Memento 中只能通过 `delta-science/scripts/invoke.py` 调用。wrapper 已解包服务
4
- 信封,因此以下文档所说的业务 `data` 在 wrapper 结果中就是 `result["native"]`
5
- 顶层;禁止再读取 `result["native"]["data"]`。本文件中的 URL 只用于说明 endpoint
6
- schema,不授权直接 HTTP。
7
-
8
- All paths are relative to `http://111.2.199.31:52317/api/v1`.
9
-
10
- Namespaces: `cid`, `name`, `smiles`, `inchi`, `inchikey`, `formula`.
11
-
12
- ## Health
13
-
14
- `GET /chem/pubchem/health`
15
-
16
- ## Resolve CIDs
17
-
18
- `POST /chem/pubchem/compound/resolve-cids`
19
-
20
- ```json
21
- {"identifier": "aspirin", "namespace": "name", "max_records": 20}
22
- ```
23
-
24
- `max_records`: 1-100.
25
-
26
- ## Properties
27
-
28
- `POST /chem/pubchem/compound/properties`
29
-
30
- ```json
31
- {
32
- "identifier": "2244",
33
- "namespace": "cid",
34
- "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "IUPACName"]
35
- }
36
- ```
37
-
38
- Allowed properties include `MolecularFormula`, `MolecularWeight`,
39
- `CanonicalSMILES`, `IsomericSMILES`, `SMILES`, `ConnectivitySMILES`,
40
- `IUPACName`, `InChI`, `InChIKey`, `XLogP`, `TPSA`, `HBondDonorCount`,
41
- `HBondAcceptorCount`, `RotatableBondCount`, `ExactMass`, `MonoisotopicMass`,
42
- `Charge`, `HeavyAtomCount`, `Complexity`, `CovalentUnitCount`,
43
- `DefinedAtomStereoCount`, `UndefinedAtomStereoCount`, `DefinedBondStereoCount`,
44
- `UndefinedBondStereoCount`, and `IsotopeAtomCount`.
45
-
46
- ## Synonyms
47
-
48
- `POST /chem/pubchem/compound/synonyms`
49
-
50
- ```json
51
- {"identifier": "2244", "namespace": "cid", "max_synonyms": 50}
52
- ```
53
-
54
- `max_synonyms`: 1-500.
55
-
56
- ## Summary
57
-
58
- `POST /chem/pubchem/compound/summary`
59
-
60
- ```json
61
- {
62
- "identifier": "aspirin",
63
- "namespace": "name",
64
- "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "IUPACName"],
65
- "synonym_limit": 20
66
- }
67
- ```
68
-
69
- `synonym_limit`: 0-100. Use this endpoint for general compound lookup because
70
- it resolves CID, selected properties, and synonyms in one call.
71
-
72
- Response fields include `valid`, `cid`, `properties`, `properties_raw`,
73
- `aliases`, `synonyms`, and `metadata`. Numeric properties are coerced to JSON
74
- numbers when possible. Requested SMILES aliases are filled when PubChem returns
75
- an equivalent key such as `ConnectivitySMILES`.
76
-
77
- ## Batch Summary
78
-
79
- `POST /chem/pubchem/compound/batch-summary`
80
-
81
- ```json
82
- {
83
- "identifiers": ["aspirin", "ibuprofen", "caffeine"],
84
- "namespace": "name",
85
- "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "XLogP", "TPSA"],
86
- "synonym_limit": 5
87
- }
88
- ```
89
-
90
- Limits: 1-100 identifiers. The response preserves input order and includes
91
- per-item errors:
92
-
93
- ```json
94
- {
95
- "valid": false,
96
- "namespace": "name",
97
- "properties_requested": ["CanonicalSMILES"],
98
- "results": [
99
- {
100
- "input": "aspirin",
101
- "valid": true,
102
- "cid": 2244,
103
- "properties": {
104
- "CanonicalSMILES": "CC(=O)Oc1ccccc1C(=O)O",
105
- "ConnectivitySMILES": "CC(=O)Oc1ccccc1C(=O)O",
106
- "_aliases": {"CanonicalSMILES": "ConnectivitySMILES"},
107
- "properties_raw": {}
108
- },
109
- "properties_raw": {},
110
- "aliases": {"CanonicalSMILES": "ConnectivitySMILES"},
111
- "synonyms": []
112
- },
113
- {
114
- "input": "bad-name",
115
- "valid": false,
116
- "error": "not found"
117
- }
118
- ],
119
- "count": 2,
120
- "failed_count": 1
121
- }
122
- ```
1
+ # PubChem Endpoint Reference
2
+
3
+ 在 Memento 中只能通过 `delta-science/scripts/invoke.py` 调用。wrapper 已解包服务
4
+ 信封,因此以下文档所说的业务 `data` 在 wrapper 结果中就是 `result["native"]`
5
+ 顶层;禁止再读取 `result["native"]["data"]`。本文件中的 URL 只用于说明 endpoint
6
+ schema,不授权直接 HTTP。
7
+
8
+ All paths are relative to `http://111.2.199.31:52317/api/v1`.
9
+
10
+ Namespaces: `cid`, `name`, `smiles`, `inchi`, `inchikey`, `formula`.
11
+
12
+ ## Health
13
+
14
+ `GET /chem/pubchem/health`
15
+
16
+ ## Resolve CIDs
17
+
18
+ `POST /chem/pubchem/compound/resolve-cids`
19
+
20
+ ```json
21
+ {"identifier": "aspirin", "namespace": "name", "max_records": 20}
22
+ ```
23
+
24
+ `max_records`: 1-100.
25
+
26
+ ## Properties
27
+
28
+ `POST /chem/pubchem/compound/properties`
29
+
30
+ ```json
31
+ {
32
+ "identifier": "2244",
33
+ "namespace": "cid",
34
+ "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "IUPACName"]
35
+ }
36
+ ```
37
+
38
+ Allowed properties include `MolecularFormula`, `MolecularWeight`,
39
+ `CanonicalSMILES`, `IsomericSMILES`, `SMILES`, `ConnectivitySMILES`,
40
+ `IUPACName`, `InChI`, `InChIKey`, `XLogP`, `TPSA`, `HBondDonorCount`,
41
+ `HBondAcceptorCount`, `RotatableBondCount`, `ExactMass`, `MonoisotopicMass`,
42
+ `Charge`, `HeavyAtomCount`, `Complexity`, `CovalentUnitCount`,
43
+ `DefinedAtomStereoCount`, `UndefinedAtomStereoCount`, `DefinedBondStereoCount`,
44
+ `UndefinedBondStereoCount`, and `IsotopeAtomCount`.
45
+
46
+ ## Synonyms
47
+
48
+ `POST /chem/pubchem/compound/synonyms`
49
+
50
+ ```json
51
+ {"identifier": "2244", "namespace": "cid", "max_synonyms": 50}
52
+ ```
53
+
54
+ `max_synonyms`: 1-500.
55
+
56
+ ## Summary
57
+
58
+ `POST /chem/pubchem/compound/summary`
59
+
60
+ ```json
61
+ {
62
+ "identifier": "aspirin",
63
+ "namespace": "name",
64
+ "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "IUPACName"],
65
+ "synonym_limit": 20
66
+ }
67
+ ```
68
+
69
+ `synonym_limit`: 0-100. Use this endpoint for general compound lookup because
70
+ it resolves CID, selected properties, and synonyms in one call.
71
+
72
+ Response fields include `valid`, `cid`, `properties`, `properties_raw`,
73
+ `aliases`, `synonyms`, and `metadata`. Numeric properties are coerced to JSON
74
+ numbers when possible. Requested SMILES aliases are filled when PubChem returns
75
+ an equivalent key such as `ConnectivitySMILES`.
76
+
77
+ ## Batch Summary
78
+
79
+ `POST /chem/pubchem/compound/batch-summary`
80
+
81
+ ```json
82
+ {
83
+ "identifiers": ["aspirin", "ibuprofen", "caffeine"],
84
+ "namespace": "name",
85
+ "properties": ["MolecularFormula", "MolecularWeight", "CanonicalSMILES", "XLogP", "TPSA"],
86
+ "synonym_limit": 5
87
+ }
88
+ ```
89
+
90
+ Limits: 1-100 identifiers. The response preserves input order and includes
91
+ per-item errors:
92
+
93
+ ```json
94
+ {
95
+ "valid": false,
96
+ "namespace": "name",
97
+ "properties_requested": ["CanonicalSMILES"],
98
+ "results": [
99
+ {
100
+ "input": "aspirin",
101
+ "valid": true,
102
+ "cid": 2244,
103
+ "properties": {
104
+ "CanonicalSMILES": "CC(=O)Oc1ccccc1C(=O)O",
105
+ "ConnectivitySMILES": "CC(=O)Oc1ccccc1C(=O)O",
106
+ "_aliases": {"CanonicalSMILES": "ConnectivitySMILES"},
107
+ "properties_raw": {}
108
+ },
109
+ "properties_raw": {},
110
+ "aliases": {"CanonicalSMILES": "ConnectivitySMILES"},
111
+ "synonyms": []
112
+ },
113
+ {
114
+ "input": "bad-name",
115
+ "valid": false,
116
+ "error": "not found"
117
+ }
118
+ ],
119
+ "count": 2,
120
+ "failed_count": 1
121
+ }
122
+ ```
@@ -1,41 +1,41 @@
1
- # PubChem operation 契约
2
-
3
- 先使用 `SKILL.md` 的唯一 wrapper 模板。下面每行都是对应 operation 的最小设置;
4
- wrapper 成功后的业务结果均为 `r["native"]`,不是 `native.data`。执行一次后调用
5
- `step_finish`,不得重复调用。
6
-
7
- ## health
8
-
9
- - 情景:用户明确询问 PubChem 服务是否可用。
10
- - 代码:`endpoint="health"; data=None; params=None`
11
- - 投影:只保留 `status`、可用性、metadata、limits、warnings 中实际存在的字段。
12
-
13
- ## compound-resolve-cids
14
-
15
- - 情景:把名称、SMILES、InChI 等标识符解析为 CID 列表。
16
- - 代码:`endpoint="compound-resolve-cids"; data={"identifier":"aspirin","namespace":"name","max_records":20}; params=None`
17
- - 投影:输入标签、有效性、CID 列表和错误。
18
-
19
- ## compound-properties
20
-
21
- - 情景:已有标识符,只要求指定 PubChem 属性。
22
- - 代码:`endpoint="compound-properties"; data={"identifier":"aspirin","namespace":"name","properties":["MolecularFormula","MolecularWeight"]}; params=None`
23
- - 投影:只复制本次返回的 CID、请求属性、aliases、valid/error。
24
-
25
- ## compound-synonyms
26
-
27
- - 情景:查询一个化合物的同义词。
28
- - 代码:`endpoint="compound-synonyms"; data={"identifier":"aspirin","namespace":"name","max_synonyms":5}; params=None`
29
- - 投影:CID、有效性和最多用户要求数量的 synonyms。
30
-
31
- ## compound-summary
32
-
33
- - 情景:一个已命名分子的 CID、SMILES、分子式、分子量等基础属性。
34
- - 代码:`endpoint="compound-summary"; data={"identifier":"aspirin","namespace":"name"}; params=None`
35
- - 投影:`native.valid`、`native.cid` 与 `native.properties` 中用户要求的键。
36
-
37
- ## compound-batch-summary
38
-
39
- - 情景:一次解析两个或更多名称,供后续比较或 RDKit 使用。
40
- - 代码:`endpoint="compound-batch-summary"; data={"identifiers":["aspirin","caffeine"],"namespace":"name"}; params=None`
41
- - 投影:`native.results[*]` 的 `input`、valid/error 及嵌套 `properties`;不得加 `properties` 或 `synonym_limit` 请求字段。
1
+ # PubChem operation 契约
2
+
3
+ 先使用 `SKILL.md` 的唯一 wrapper 模板。下面每行都是对应 operation 的最小设置;
4
+ wrapper 成功后的业务结果均为 `r["native"]`,不是 `native.data`。执行一次后调用
5
+ `step_finish`,不得重复调用。
6
+
7
+ ## health
8
+
9
+ - 情景:用户明确询问 PubChem 服务是否可用。
10
+ - 代码:`endpoint="health"; data=None; params=None`
11
+ - 投影:只保留 `status`、可用性、metadata、limits、warnings 中实际存在的字段。
12
+
13
+ ## compound-resolve-cids
14
+
15
+ - 情景:把名称、SMILES、InChI 等标识符解析为 CID 列表。
16
+ - 代码:`endpoint="compound-resolve-cids"; data={"identifier":"aspirin","namespace":"name","max_records":20}; params=None`
17
+ - 投影:输入标签、有效性、CID 列表和错误。
18
+
19
+ ## compound-properties
20
+
21
+ - 情景:已有标识符,只要求指定 PubChem 属性。
22
+ - 代码:`endpoint="compound-properties"; data={"identifier":"aspirin","namespace":"name","properties":["MolecularFormula","MolecularWeight"]}; params=None`
23
+ - 投影:只复制本次返回的 CID、请求属性、aliases、valid/error。
24
+
25
+ ## compound-synonyms
26
+
27
+ - 情景:查询一个化合物的同义词。
28
+ - 代码:`endpoint="compound-synonyms"; data={"identifier":"aspirin","namespace":"name","max_synonyms":5}; params=None`
29
+ - 投影:CID、有效性和最多用户要求数量的 synonyms。
30
+
31
+ ## compound-summary
32
+
33
+ - 情景:一个已命名分子的 CID、SMILES、分子式、分子量等基础属性。
34
+ - 代码:`endpoint="compound-summary"; data={"identifier":"aspirin","namespace":"name"}; params=None`
35
+ - 投影:`native.valid`、`native.cid` 与 `native.properties` 中用户要求的键。
36
+
37
+ ## compound-batch-summary
38
+
39
+ - 情景:一次解析两个或更多名称,供后续比较或 RDKit 使用。
40
+ - 代码:`endpoint="compound-batch-summary"; data={"identifiers":["aspirin","caffeine"],"namespace":"name"}; params=None`
41
+ - 投影:`native.results[*]` 的 `input`、valid/error 及嵌套 `properties`;不得加 `properties` 或 `synonym_limit` 请求字段。
@@ -1,4 +1,4 @@
1
- ---
1
+ ---
2
2
  name: pymatgen
3
3
  description: 当用户需要解析材料化学式与组成、计算式量、解析或总结 CIF/POSCAR/JSON/CSSR/XSF 晶体结构、转换结构格式或分析空间群和对称性时使用。所有实时请求只走 Delta CLI wrapper;无机化学式优先使用本 Skill,不用 PubChem 或本地元素表替代。
4
4
  metadata:
@@ -7,48 +7,48 @@ metadata:
7
7
  - python_repl
8
8
  - step_finish
9
9
  ---
10
-
11
- # pymatgen 服务
12
-
13
- ## 强制规则
14
-
15
- - 第一个且唯一实时执行工具是 `python_repl`;直接执行
16
- `$SKILLS_ROOT/delta-science/scripts/invoke.py`,tool 固定为 `pymatgen`。
17
- - `python_repl` 工具参数只能包含 `code`,禁止 `deps/dependencies/packages`。
18
- - `SKILLS_ROOT` 只通过 `os.environ` 读取。禁止 Bash、目录/路径探测、字面 CLI
19
- 命令、直接 HTTP 和本地 pymatgen。
20
- - wrapper 成功后的业务结果是 `r["native"]` 顶层,禁止 `native.data`。
21
- - 结构接口必须发送完整结构文本,不能发送本地文件路径;只支持
22
- `cif/poscar/json/cssr/xsf`,不接收 LAMMPS data/dump。
23
-
24
- ## wrapper 模板
25
-
26
- ```python
27
- import json, os, subprocess, sys
28
- wrapper=os.path.join(os.environ["SKILLS_ROOT"],"delta-science","scripts","invoke.py")
29
- p=subprocess.run([sys.executable,wrapper,"--tool","pymatgen","--endpoint",endpoint,
30
- "--data-json",json.dumps(payload)],capture_output=True,text=True,shell=False)
31
- if p.returncode != 0: raise RuntimeError(p.stderr or p.stdout)
32
- r=json.loads(p.stdout)
33
- if r.get("ok") is not True or r.get("transport")!="delta-cli": raise RuntimeError(r)
34
- n=r["native"]
35
- print(json.dumps(out,ensure_ascii=False))
36
- ```
37
-
38
- `out` 必须从 `n` 投影,不得用记忆补值。
39
-
40
- ## operation 选择
41
-
42
- - `health`:明确健康检查;省略 `--data-json`。
43
- - `composition-parse`:`{"formula":"LiFePO4","format":"formula"}`。
44
- - `structure-parse`:`{"input":结构文本,"format":"cif","primitive":false}`。
45
- - `structure-summary`:同上,用于 formula、density、volume、lattice、species。
46
- - `structure-convert`:`{"input":结构文本,"input_format":"cif","output_format":"poscar","primitive":false}`。
47
- - `structure-symmetry`:`{"input":结构文本,"format":"cif","primitive":false,"symprec":0.01,"angle_tolerance":5.0}`。
48
-
49
- 详细 native 字段见 `references/endpoints.md`。一个请求只调用所需 operation;无机式量
50
- 只报告当前 native 的 `weight`,PubChem not_found 不得改写或本地补算。
51
-
52
- 成功打印有界 JSON 后立即调用 `step_finish(status="done", summary=<同一 JSON>)`
53
- 恰好一次;失败时调用 `step_finish(status="failed", summary=<原始错误短摘要>)`。
54
- 调用后不得输出自由文本或使用其他工具。
10
+
11
+ # pymatgen 服务
12
+
13
+ ## 强制规则
14
+
15
+ - 第一个且唯一实时执行工具是 `python_repl`;直接执行
16
+ `$SKILLS_ROOT/delta-science/scripts/invoke.py`,tool 固定为 `pymatgen`。
17
+ - `python_repl` 工具参数只能包含 `code`,禁止 `deps/dependencies/packages`。
18
+ - `SKILLS_ROOT` 只通过 `os.environ` 读取。禁止 Bash、目录/路径探测、字面 CLI
19
+ 命令、直接 HTTP 和本地 pymatgen。
20
+ - wrapper 成功后的业务结果是 `r["native"]` 顶层,禁止 `native.data`。
21
+ - 结构接口必须发送完整结构文本,不能发送本地文件路径;只支持
22
+ `cif/poscar/json/cssr/xsf`,不接收 LAMMPS data/dump。
23
+
24
+ ## wrapper 模板
25
+
26
+ ```python
27
+ import json, os, subprocess, sys
28
+ wrapper=os.path.join(os.environ["SKILLS_ROOT"],"delta-science","scripts","invoke.py")
29
+ p=subprocess.run([sys.executable,wrapper,"--tool","pymatgen","--endpoint",endpoint,
30
+ "--data-json",json.dumps(payload)],capture_output=True,text=True,shell=False)
31
+ if p.returncode != 0: raise RuntimeError(p.stderr or p.stdout)
32
+ r=json.loads(p.stdout)
33
+ if r.get("ok") is not True or r.get("transport")!="delta-cli": raise RuntimeError(r)
34
+ n=r["native"]
35
+ print(json.dumps(out,ensure_ascii=False))
36
+ ```
37
+
38
+ `out` 必须从 `n` 投影,不得用记忆补值。
39
+
40
+ ## operation 选择
41
+
42
+ - `health`:明确健康检查;省略 `--data-json`。
43
+ - `composition-parse`:`{"formula":"LiFePO4","format":"formula"}`。
44
+ - `structure-parse`:`{"input":结构文本,"format":"cif","primitive":false}`。
45
+ - `structure-summary`:同上,用于 formula、density、volume、lattice、species。
46
+ - `structure-convert`:`{"input":结构文本,"input_format":"cif","output_format":"poscar","primitive":false}`。
47
+ - `structure-symmetry`:`{"input":结构文本,"format":"cif","primitive":false,"symprec":0.01,"angle_tolerance":5.0}`。
48
+
49
+ 详细 native 字段见 `references/endpoints.md`。一个请求只调用所需 operation;无机式量
50
+ 只报告当前 native 的 `weight`,PubChem not_found 不得改写或本地补算。
51
+
52
+ 成功打印有界 JSON 后立即调用 `step_finish(status="done", summary=<同一 JSON>)`
53
+ 恰好一次;失败时调用 `step_finish(status="failed", summary=<原始错误短摘要>)`。
54
+ 调用后不得输出自由文本或使用其他工具。
@@ -1,4 +1,4 @@
1
- interface:
2
- display_name: "pymatgen 材料分析"
3
- short_description: "通过 Delta CLI 解析材料组成、晶体结构和空间群"
4
- default_prompt: "使用 $pymatgen 分析这个材料的组成或晶体结构。"
1
+ interface:
2
+ display_name: "pymatgen 材料分析"
3
+ short_description: "通过 Delta CLI 解析材料组成、晶体结构和空间群"
4
+ default_prompt: "使用 $pymatgen 分析这个材料的组成或晶体结构。"
@@ -1,68 +1,68 @@
1
- # pymatgen Endpoint Reference
2
-
3
- All paths are relative to `http://111.2.199.31:52317/api/v1`.
4
-
5
- ## Health
6
-
7
- `GET /chem/pymatgen/health`
8
-
9
- ## Composition Parse
10
-
11
- `POST /chem/pymatgen/composition/parse`
12
-
13
- ```json
14
- {"formula": "LiFePO4", "format": "formula"}
15
- ```
16
-
17
- Key response fields in `data`: `valid`, `formula`, `reduced_formula`,
18
- `alphabetic_formula`, `anonymous_formula`, `chemical_system`,
19
- `number_of_atoms`, `weight`, `element_amounts`, `atomic_fractions`,
20
- `weight_fractions`, `error`.
21
-
22
- ## Structure Parse / Summary
23
-
24
- `POST /chem/pymatgen/structure/parse`
25
-
26
- `POST /chem/pymatgen/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
- `POST /chem/pymatgen/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
- `POST /chem/pymatgen/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
-
1
+ # pymatgen Endpoint Reference
2
+
3
+ All paths are relative to `http://111.2.199.31:52317/api/v1`.
4
+
5
+ ## Health
6
+
7
+ `GET /chem/pymatgen/health`
8
+
9
+ ## Composition Parse
10
+
11
+ `POST /chem/pymatgen/composition/parse`
12
+
13
+ ```json
14
+ {"formula": "LiFePO4", "format": "formula"}
15
+ ```
16
+
17
+ Key response fields in `data`: `valid`, `formula`, `reduced_formula`,
18
+ `alphabetic_formula`, `anonymous_formula`, `chemical_system`,
19
+ `number_of_atoms`, `weight`, `element_amounts`, `atomic_fractions`,
20
+ `weight_fractions`, `error`.
21
+
22
+ ## Structure Parse / Summary
23
+
24
+ `POST /chem/pymatgen/structure/parse`
25
+
26
+ `POST /chem/pymatgen/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
+ `POST /chem/pymatgen/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
+ `POST /chem/pymatgen/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
67
  Returns `space_group_symbol`, `space_group_number`, `crystal_system`,
68
68
  `point_group_symbol`, `hall`, and `nsites`.