@delta-infra/cli 1.1.16 → 1.1.18

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.
@@ -1,23 +1,24 @@
1
- # Delta-BO 详细规则
1
+ # Delta-BO reference
2
2
 
3
- 所有在线调用直接使用 `delta-cli science invoke`,tool 固定为 `delta-bo`。当前 CLI catalog 只暴露
4
- `commands` 和 `generate`;禁止根据旧 HTTP 文档猜测或直连 stateful command API。
3
+ Make all online calls with `delta-cli science invoke`; the tool is always `delta-bo`. The current
4
+ CLI catalogue exposes only `commands` and `generate`. Do not infer operations from old HTTP
5
+ documentation or call the stateful command API directly.
5
6
 
6
7
  ## commands
7
8
 
8
- 情景:用户要求查看当前部署支持的 Delta-BO 命令。
9
+ Use case: The user asks which Delta-BO commands are supported by the current deployment.
9
10
 
10
11
  ```text
11
12
  delta-cli science invoke --tool delta-bo --endpoint commands
12
13
  ```
13
14
 
14
- 无 body。只报告当前业务响应中的命令列表,不从历史文档补全。
15
+ No request body. Report only the command list in the current business response; do not fill it in from historical documentation.
15
16
 
16
17
  ## generate
17
18
 
18
- 情景:针对数值、整数或分类实验变量生成随机搜索或贝叶斯优化建议。
19
+ Use case: Generate random-search or Bayesian-optimisation suggestions for numeric, integer or categorical experimental variables.
19
20
 
20
- 无真实历史,或历史少于 5 条且用户没有明确要求 BO 时,使用有界随机搜索:
21
+ When there is no real history, or fewer than five historical observations and the user has not explicitly requested BO, use bounded random search:
21
22
 
22
23
  ```json
23
24
  {
@@ -30,7 +31,7 @@ delta-cli science invoke --tool delta-bo --endpoint commands
30
31
  }
31
32
  ```
32
33
 
33
- 有真实历史且用户明确要求 BO 时,可以使用:
34
+ When real history is available and the user explicitly requests BO, you may use:
34
35
 
35
36
  ```json
36
37
  {
@@ -58,10 +59,11 @@ delta-cli science invoke --tool delta-bo --endpoint commands
58
59
  }
59
60
  ```
60
61
 
61
- 参数类型仅支持 `numeric`、`integer`、`categorical`。优先使用 object-form history,
62
- 避免数组列顺序歧义。不得编造 observation、目标值或所谓最优点。
62
+ Supported parameter types are `numeric`, `integer` and `categorical`. Prefer object-form history
63
+ to avoid ambiguity about the order of array columns. Do not invent observations, objective values
64
+ or purported optima.
63
65
 
64
- 可选去重与约束:
66
+ Optional deduplication and constraints:
65
67
 
66
68
  ```json
67
69
  {
@@ -77,13 +79,14 @@ delta-cli science invoke --tool delta-bo --endpoint commands
77
79
  }
78
80
  ```
79
81
 
80
- 只报告业务响应的 `suggestions`、`suggestion_metadata`、`warnings`、
81
- `generated_candidate_count` 和 `diversity` 中实际存在的字段。空 suggestions 或失败
82
- 不得用本地 GP、UCB 或随机数替代。
82
+ Report only fields actually present in the business response: `suggestions`,
83
+ `suggestion_metadata`, `warnings`, `generated_candidate_count` and `diversity`. Do not replace
84
+ empty suggestions or a failure with local GP, UCB or random-number results.
83
85
 
84
- ## 已知但未暴露的旧能力
86
+ ## Known legacy capabilities that are not exposed
85
87
 
86
- 旧服务曾包含 session、space、objective、policy、suggest、observe、loop、status、
87
- best 等有状态命令,但它们不是当前 Delta CLI operation。本 Skill 只保留这条能力
88
- 边界,不保留 URL 或 curl 示例,也不执行这些操作。需要扩展时,先由 Science Server
89
- 暴露 operation 和请求 schema,再更新本 reference。
88
+ The old service included stateful commands such as session, space, objective, policy, suggest,
89
+ observe, loop, status and best, but they are not current Delta CLI operations. This Skill records
90
+ only that capability boundary: it includes no URL or curl examples and does not run those
91
+ operations. To extend the interface, first expose the operation and request schema through Science
92
+ Server, then update this reference.
@@ -1,21 +1,22 @@
1
- # GSAS-II 详细规则
1
+ # GSAS-II reference
2
2
 
3
- 所有调用直接使用 `delta-cli science invoke`。模拟必须使用真实 CIF;精修必须使用真实 powder data、
4
- instrument parameters 和 phase CIF,任何失败不得用合成数据补齐。输入不是 CIF 时,
5
- 先使用当前任务中成功的 pymatgen `structure-convert` 结果。
3
+ Make all calls with `delta-cli science invoke`. Simulation requires a real CIF; refinement
4
+ requires real powder data, instrument parameters and phase CIFs. Never fill in a failed result
5
+ with synthetic data. If the input is not a CIF, first use a successful pymatgen
6
+ `structure-convert` result from the current task.
6
7
 
7
8
  ## Health
8
9
 
9
- operation:`health`,无 body。
10
+ Operation: `health`; no request body.
10
11
 
11
12
  Key response fields in `data`: `status`, `service`, `gsasii_available`,
12
13
  `metadata`, and `limits`.
13
14
 
14
- 只有用户明确要求健康检查时才调用;不要在模拟或精修前自动增加 health。
15
+ Call this only when the user explicitly asks for a health check; do not add a health call automatically before simulation or refinement.
15
16
 
16
17
  ## Powder Simulation
17
18
 
18
- operation:`powder-simulate`。
19
+ Operation: `powder-simulate`.
19
20
 
20
21
  ```json
21
22
  {
@@ -63,7 +64,7 @@ Notes:
63
64
 
64
65
  ## Powder Refinement
65
66
 
66
- operation:`powder-refine`。
67
+ Operation: `powder-refine`.
67
68
 
68
69
  ```json
69
70
  {
@@ -109,8 +110,9 @@ Notes:
109
110
  - Refinement may return `valid: false` with partial phase/profile information
110
111
  if GSAS-II constructed the project but a refinement step failed.
111
112
 
112
- ## 跨工具交接
113
+ ## Cross-tool hand-off
113
114
 
114
- 结构转换、衍射模拟和精修必须在本 Skill 内通过 CLI 逐步完成:
115
- `pymatgen structure-convert -> gsasii powder-simulate/powder-refine`。下游只使用上一步
116
- 成功业务响应中的结构文本或 profile;不得执行本地脚本或直连服务。
115
+ Complete structure conversion, diffraction simulation and refinement step by step through the
116
+ CLI within this Skill: `pymatgen structure-convert -> gsasii powder-simulate/powder-refine`.
117
+ Use downstream only the structure text or profile from the preceding successful business response;
118
+ do not run local scripts or call the service directly.
@@ -1,27 +1,28 @@
1
- # LAMMPS 详细规则
1
+ # LAMMPS reference
2
2
 
3
- 所有调用直接使用 `delta-cli science invoke`。LAMMPS 不从化学式、CIF 或 POSCAR 自动推断 data、原子
4
- 类型、势函数与边界条件。成功执行不表示物理收敛或生产可用。
3
+ Make all calls with `delta-cli science invoke`. LAMMPS does not infer data files, atom types,
4
+ potentials or boundary conditions from a formula, CIF or POSCAR. Successful execution does not
5
+ establish physical convergence or production readiness.
5
6
 
6
7
  ## Health
7
8
 
8
- operation:`health`,无 body。
9
+ Operation: `health`; no request body.
9
10
 
10
11
  Key response fields in `data`: `status`, `service`, `lammps_available`,
11
12
  `metadata`, and `limits`.
12
13
 
13
- 只有用户明确要求健康检查时才调用;不要在模拟前自动增加 health。
14
+ Call this only when the user explicitly asks for a health check; do not add a health call automatically before simulation.
14
15
 
15
16
  ## Built-In Lennard-Jones Example
16
17
 
17
- operation:`lj-melt-example`。
18
+ Operation: `lj-melt-example`.
18
19
 
19
20
  Returns a complete `request` payload for the `run` operation, plus workflow notes
20
21
  showing where pymatgen and GSAS-II fit around LAMMPS.
21
22
 
22
23
  ## Run
23
24
 
24
- operation:`run`。
25
+ Operation: `run`.
25
26
 
26
27
  ```json
27
28
  {
@@ -60,7 +61,8 @@ Notes:
60
61
  - Force-field choice is caller responsibility. The service executes explicit
61
62
  LAMMPS input and does not infer potentials from formulas or structures.
62
63
 
63
- 最终只复制当前业务响应的 `last_thermo`、final step/temperature/total energy、
64
- warnings 和用户要求的输出文件摘要。禁止把总能量除以原子数、替换步数、换算单位或
65
- 推测收敛性、稳定性。最小示例必须先调用 `lj-melt-example`,再把其
66
- 当前业务响应的 `request` 原样交给 `run`;不得传 CLI 外层 envelope。
64
+ In the final reply, include only `last_thermo`, the final step/temperature/total energy,
65
+ warnings, and a summary of output files requested by the user from the current business response.
66
+ Do not divide total energy by the atom count, substitute steps, convert units, or infer
67
+ convergence or stability. For the minimal example, call `lj-melt-example` first, then pass its
68
+ `request` from the current business response to `run` unchanged; do not pass the outer CLI envelope.
@@ -1,12 +1,13 @@
1
- # LDM-BO 详细规则
1
+ # LDM-BO reference
2
2
 
3
- 所有调用直接使用 `delta-cli science invoke`,不是本地 PDF2Dock runner。仅用于小分子 SMILES;
4
- 抗体、CDRH3 或 AntBO 场景必须使用 AntBO 能力边界。
5
- provider、模型路径、Vina/ReaSyn/GPU/LLM 配置由服务端注入,不放入请求 JSON。
3
+ Make all calls with `delta-cli science invoke`; do not use the local PDF2Dock runner. This tool is
4
+ for small-molecule SMILES only. Use the AntBO capability boundary for antibody, CDRH3 or AntBO
5
+ tasks. The server injects the provider, model paths and Vina/ReaSyn/GPU/LLM settings; do not put
6
+ them in the request JSON.
6
7
 
7
8
  ## Health
8
9
 
9
- operation:`health`,无 body。
10
+ Operation: `health`; no request body.
10
11
 
11
12
  The response reports whether the adapter can see the mounted PDF2Dock
12
13
  interpreter, `bo_api.py`, Vina binary, ReaSyn repo/interpreter/checkpoints, NN
@@ -15,7 +16,7 @@ settings degrade health because LDM methods need them.
15
16
 
16
17
  ## One-Step Recommend
17
18
 
18
- operation:`recommend`。
19
+ Operation: `recommend`.
19
20
 
20
21
  Wraps `bo_api.recommend_next_smiles`.
21
22
 
@@ -45,14 +46,16 @@ Typical business response inside the documented gateway `data`:
45
46
 
46
47
  LDM methods may include an `llm` diagnostics object.
47
48
 
48
- `acquisition_values` 只能按业务响应原值报告。除非当前业务响应明确给出字段定义,否则
49
- 不得把它描述为预测 Vina、预测 objective、不确定性、置信度、expected improvement,
50
- 也不得自行判断“越大/越小越好”。服务未返回推荐理由时,明确写“服务未返回推荐
51
- 理由”,不得根据分子骨架、杂原子或模型机制补写解释。
49
+ Report `acquisition_values` exactly as returned in the business response. Unless the current
50
+ business response explicitly defines the field, do not describe it as predicted Vina, a predicted
51
+ objective, uncertainty, confidence or expected improvement, and do not infer whether higher or
52
+ lower is better. If the service provides no recommendation rationale, state “The service returned
53
+ no recommendation rationale”; do not add an explanation based on molecular scaffolds, heteroatoms
54
+ or model mechanisms.
52
55
 
53
56
  ## Full Trajectory
54
57
 
55
- operation:`trajectory`。
58
+ Operation: `trajectory`.
56
59
 
57
60
  Wraps `bo_api.run_search_trajectory`.
58
61
 
@@ -1,34 +1,36 @@
1
- # Materials Design 详细规则
1
+ # Materials Design reference
2
2
 
3
- Materials Design 用于从实验或计算材料表格中建立 surrogate、验证模型、定义可行候选空间,
4
- 并生成带不确定性的候选排序。推荐是待验证假设,不是已确认材料、合成方案或实验结果。
3
+ Materials Design builds surrogate models from experimental or computational materials tables,
4
+ validates models, defines feasible candidate spaces, and ranks candidates with uncertainty
5
+ estimates. Recommendations are hypotheses to validate, not confirmed materials, synthesis routes
6
+ or experimental results.
5
7
 
6
- 本 reference 的路由标签是 `materials-design`。`tools.name` 和
7
- `tool_endpoints.name` 仍以当前 `delta-cli science list` 和
8
- `delta-cli science endpoints list <tool>` 的返回为准;下列 Gateway 路径只是服务契约,
9
- 不是可以直接拼接或访问的 URL。
8
+ The routing label for this reference is `materials-design`. Use the current output of
9
+ `delta-cli science list` and `delta-cli science endpoints list <tool>` as the authority for
10
+ `tools.name` and `tool_endpoints.name`. The Gateway paths below describe the service contract;
11
+ they are not URLs to construct or access directly.
10
12
 
11
- ## 服务边界
13
+ ## Service boundary
12
14
 
13
- 服务提供以下能力:
15
+ The service provides the following capabilities:
14
16
 
15
- | 服务路径 | 作用 | 结果边界 |
17
+ | Service path | Purpose | Result boundary |
16
18
  | --- | --- | --- |
17
- | `/chem/materials-design/health` | Gateway 到服务的就绪检查 | `status`、依赖可用性、limits |
18
- | `/chem/materials-design/v1/capabilities` | 输入格式、模型、验证模式和限制 | 能力目录 |
19
- | `/chem/materials-design/v1/jobs` | 上传训练/候选表并创建异步作业 | `202`、`job_id`、状态和 links |
20
- | `/chem/materials-design/v1/jobs/{job_id}` | 查询作业 | `status`、`result_status`、result、warnings |
21
- | `/chem/materials-design/v1/jobs/{job_id}/cancel` | 请求取消 | 取消请求/终态 |
22
- | `/chem/materials-design/v1/jobs/{job_id}/artifacts` | 列出产物 | name、size、media_type、SHA-256 |
23
- | `/chem/materials-design/v1/jobs/{job_id}/artifacts/{path}` | 下载单个产物 | 原始 report/JSON/CSV/figure bytes |
19
+ | `/chem/materials-design/health` | Gateway-to-service readiness check | `status`, dependency availability, limits |
20
+ | `/chem/materials-design/v1/capabilities` | Input formats, models, validation modes and limits | Capability catalogue |
21
+ | `/chem/materials-design/v1/jobs` | Upload training/candidate tables and create an asynchronous job | `202`, `job_id`, status and links |
22
+ | `/chem/materials-design/v1/jobs/{job_id}` | Read job status | `status`, `result_status`, result, warnings |
23
+ | `/chem/materials-design/v1/jobs/{job_id}/cancel` | Request cancellation | Cancellation request/final state |
24
+ | `/chem/materials-design/v1/jobs/{job_id}/artifacts` | List artifacts | name, size, media_type, SHA-256 |
25
+ | `/chem/materials-design/v1/jobs/{job_id}/artifacts/{path}` | Download one artifact | Raw report/JSON/CSV/figure bytes |
24
26
 
25
- 所有 JSON/query 调用都必须走:
27
+ Route all JSON/query calls through:
26
28
 
27
29
  ```text
28
30
  delta-cli science invoke --tool TOOL --endpoint ENDPOINT --data JSON
29
31
  ```
30
32
 
31
- 训练表提交使用受控文件 adapter:
33
+ Submit training tables through the controlled file adapter:
32
34
 
33
35
  ```text
34
36
  delta-cli science file invoke --tool materials-design --endpoint job-submit \
@@ -39,12 +41,13 @@ delta-cli science file download --tool materials-design --endpoint artifact-down
39
41
  --params '{"job_id":"mdjob_...","artifact_path":"report.html"}' --output report.html
40
42
  ```
41
43
 
42
- 只读 query operation 才使用 `--params JSON`。如果新工具尚未出现在目录中,或目录没有
43
- 返回足够的请求 schema,停止并报告未暴露;不要猜测 endpoint 名、body 或兼容别名。
44
+ Use `--params JSON` only for read-only query operations. If a new tool is absent from the
45
+ catalogue, or the catalogue does not return enough request-schema detail, stop and report that it
46
+ is not exposed. Do not guess endpoint names, bodies or compatibility aliases.
44
47
 
45
- ## CLI 能力边界
48
+ ## CLI capability boundaries
46
49
 
47
- `POST /v1/jobs` 的原始服务请求是 `multipart/form-data`,至少包含:
50
+ The raw service request for `POST /v1/jobs` is `multipart/form-data` and contains at least:
48
51
 
49
52
  ```text
50
53
  file=<training table>
@@ -52,21 +55,22 @@ candidate_file=<optional candidate table>
52
55
  config=<serialized JSON object>
53
56
  ```
54
57
 
55
- `science invoke` 只接受 JSON object body 和 JSON query 参数,不能表达 multipart;因此不能
56
- 把本地路径或 base64 伪装成文件字段。artifact 下载同样是原始 bytes,必须通过
57
- `science file download` 保存并校验,不能当作普通 JSON 结果。不得调用
58
- `materials-design-service:8900` 或直连 preflight Gateway。
58
+ `science invoke` accepts only a JSON object body and JSON query parameters; it cannot express
59
+ multipart data. Do not disguise a local path or base64 as a file field. Artifact downloads are
60
+ also raw bytes: save and verify them with `science file download`, and do not treat them as
61
+ ordinary JSON results. Do not call `materials-design-service:8900` or connect directly to the
62
+ preflight Gateway.
59
63
 
60
- ## 输入与配置
64
+ ## Inputs and configuration
61
65
 
62
- 开始建模前必须确认:
66
+ Before modelling, confirm:
63
67
 
64
- - `feature_columns`、`controllable_columns`、`target_column` 或 `objectives`;
65
- - identifier、metadata、leakage、post-measurement、group/time 列及单位;
66
- - 目标方向、可行性约束、候选表或候选生成规则;
67
- - 缺失值、重复样本、测量条件、数据来源和验证切分策略。
68
+ - `feature_columns`, `controllable_columns`, `target_column` or `objectives`;
69
+ - identifier, metadata, leakage, post-measurement and group/time columns, and their units;
70
+ - objective direction, feasibility constraints, candidate table or candidate-generation rules;
71
+ - missing values, duplicate samples, measurement conditions, data sources and validation split strategy.
68
72
 
69
- 单目标配置的核心字段:
73
+ Core fields for a single-objective configuration:
70
74
 
71
75
  ```json
72
76
  {
@@ -82,37 +86,45 @@ config=<serialized JSON object>
82
86
  }
83
87
  ```
84
88
 
85
- 多目标使用 `objectives: [{"target_column": "...", "direction": "maximize|minimize"}]`
86
- 和显式的 Pareto/EHVI 配置。优先传入用户的 `candidate_file`;若服务按观测范围生成
87
- 候选,必须显式保留 steps、hard constraints、composition closure、`max_candidates` 和
88
- `allow_extrapolation`。禁止优化 identifier、测量后变量、泄漏列或未获授权的域外点,禁止
89
- 为填充候选数而任意外推。
90
-
91
- ## 结果处理
92
-
93
- 作业 `status` 与 `result_status` 必须分开判断:
94
-
95
- - `status`:`pending`、`running`、`completed`、`failed`、`cancelled`;
96
- - `result_status`:`complete`、`exploratory`、`readiness_only` 或 `failed`。
97
-
98
- `202` 只表示服务已接收/排队,不表示模型训练完成;`completed` 也不表示排序可靠。
99
- 只有在 `result_status` 为 `complete` 时才能说数据和验证支持候选排序;`exploratory` 只能
100
- 作为学习假设;`readiness_only` 要读取 readiness 信息并请求缺失输入;`failed` 原样报告。
101
- 始终保留服务返回的 validation、ranking、warnings 和 error。
102
-
103
- 预测结果必须和观测值、交叉验证预测区分。报告至少说明数据覆盖、切分、模型比较、
104
- 不确定性校准、候选可行性、域内/域外状态、EI/PI/UCB 或 Pareto 设置,以及后续实验验证
105
- 计划;不要用模型方差冒充实验误差或把候选预测写成实测值。
106
-
107
- ## Artifact 与错误
108
-
109
- 只有用户要求或工作流需要时才读取 artifacts。按 listing 返回的 `size`、`media_type` 和
110
- SHA-256 校验下载内容;不能凭文件名猜格式。服务可能产生 `report.html`、`result.json`、
111
- `data_dictionary.json`、`model_comparison.csv`、OOF/残差/校准文件、`search_space.json`、
112
- `candidate_predictions.csv`、`shortlist.csv`、`recommendation_views.csv`、
113
- `pareto_front.csv` 和 `figures/*`。
114
-
115
- 常见终止条件包括配置/文件格式错误、缺目标或候选空间、超出上传/行数/候选数限制、
116
- 后端未就绪、作业不存在和 artifact 不存在。提交超时或连接中断时不要盲目重试:multipart
117
- 上传可能已经创建作业,先检查是否已经得到 `job_id`。失败或空推荐不得用本地回归、GP、
118
- 随机数或人工排序替代。
89
+ For multiple objectives, use `objectives: [{"target_column": "...", "direction": "maximize|minimize"}]`
90
+ and explicit Pareto/EHVI settings. Prefer the user's `candidate_file`. If the service generates
91
+ candidates from observed ranges, explicitly preserve steps, hard constraints, composition
92
+ closure, `max_candidates` and `allow_extrapolation`. Do not optimise identifier, post-measurement
93
+ or leakage columns, or out-of-domain points without authorisation. Do not extrapolate arbitrarily
94
+ to fill the candidate count.
95
+
96
+ ## Results handling
97
+
98
+ Assess job `status` and `result_status` separately:
99
+
100
+ - `status`: `pending`, `running`, `completed`, `failed` or `cancelled`;
101
+ - `result_status`: `complete`, `exploratory`, `readiness_only` or `failed`.
102
+
103
+ `202` means only that the service accepted or queued the job; it does not mean model training is
104
+ complete. `completed` does not mean the ranking is reliable. Say that the data and validation
105
+ support candidate ranking only when `result_status` is `complete`. Treat `exploratory` only as a
106
+ learning hypothesis; for `readiness_only`, read the readiness information and request missing
107
+ inputs; report `failed` as returned. Always preserve the returned validation, ranking, warnings
108
+ and error.
109
+
110
+ Keep predictions distinct from observations and cross-validation predictions. At minimum, report
111
+ data coverage, the split, model comparisons, uncertainty calibration, candidate feasibility,
112
+ in-domain/out-of-domain status, EI/PI/UCB or Pareto settings, and the plan for experimental
113
+ validation. Do not present model variance as experimental error or candidate predictions as
114
+ measured values.
115
+
116
+ ## Artifacts and errors
117
+
118
+ Read artifacts only when the user asks for them or the workflow requires them. Verify downloaded
119
+ content against the `size`, `media_type` and SHA-256 returned by the listing; do not infer formats
120
+ from filenames. The service may produce `report.html`, `result.json`,
121
+ `data_dictionary.json`, `model_comparison.csv`, OOF/residual/calibration files,
122
+ `search_space.json`, `candidate_predictions.csv`, `shortlist.csv`, `recommendation_views.csv`,
123
+ `pareto_front.csv` and `figures/*`.
124
+
125
+ Common terminal conditions include configuration/file-format errors, a missing target or
126
+ candidate space, upload/row/candidate-count limits being exceeded, an unready backend, or a
127
+ missing job or artifact. Do not retry blindly after a submission timeout or disconnection: a
128
+ multipart upload may already have created a job, so first check whether a `job_id` was returned.
129
+ Do not replace a failure or empty recommendation with local regression, GP, random numbers or a
130
+ manual ranking.
@@ -1,25 +1,27 @@
1
- # PubChem 详细规则
1
+ # PubChem reference
2
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。
3
+ Call this tool only through `delta-cli science invoke`. Business responses are in the top-level
4
+ CLI `data`; read only the fields described here and do not search recursively. URLs in this file
5
+ explain the endpoint schema and do not authorise direct HTTP access. For a basic lookup by a
6
+ single common name, call `compound-summary` once. For multiple names, call
7
+ `compound-batch-summary` once with a default body containing only `identifiers` and
8
+ `namespace:"name"`; do not call health or schema first.
8
9
 
9
- 结果直接从 `data` 投影。批量记录位于 `data.results[*]`,原始标签在 `input`,
10
- 属性在嵌套 `properties`。SMILES 回退顺序固定为
11
- `CanonicalSMILES -> ConnectivitySMILES -> SMILES -> IsomericSMILES`。
12
- PubChem `XLogP` 与 RDKit `MolLogP` 不得互换;not_found 不得用本地计算补值。
10
+ Project results directly from `data`. Batch records are in `data.results[*]`, the original label
11
+ is in `input`, and properties are nested under `properties`. Use this fixed SMILES fallback
12
+ order: `CanonicalSMILES -> ConnectivitySMILES -> SMILES -> IsomericSMILES`. Do not treat PubChem
13
+ `XLogP` and RDKit `MolLogP` as interchangeable; do not fill a `not_found` result with local
14
+ calculations.
13
15
 
14
16
  Namespaces: `cid`, `name`, `smiles`, `inchi`, `inchikey`, `formula`.
15
17
 
16
18
  ## Health
17
19
 
18
- operation:`health`,无 body。
20
+ Operation: `health`; no request body.
19
21
 
20
22
  ## Resolve CIDs
21
23
 
22
- operation:`compound-resolve-cids`。
24
+ Operation: `compound-resolve-cids`.
23
25
 
24
26
  ```json
25
27
  {"identifier": "aspirin", "namespace": "name", "max_records": 20}
@@ -29,7 +31,7 @@ operation:`compound-resolve-cids`。
29
31
 
30
32
  ## Properties
31
33
 
32
- operation:`compound-properties`。
34
+ Operation: `compound-properties`.
33
35
 
34
36
  ```json
35
37
  {
@@ -49,7 +51,7 @@ Allowed properties include `MolecularFormula`, `MolecularWeight`,
49
51
 
50
52
  ## Synonyms
51
53
 
52
- operation:`compound-synonyms`。
54
+ Operation: `compound-synonyms`.
53
55
 
54
56
  ```json
55
57
  {"identifier": "2244", "namespace": "cid", "max_synonyms": 50}
@@ -59,7 +61,7 @@ operation:`compound-synonyms`。
59
61
 
60
62
  ## Summary
61
63
 
62
- operation:`compound-summary`。
64
+ Operation: `compound-summary`.
63
65
 
64
66
  ```json
65
67
  {
@@ -80,7 +82,7 @@ an equivalent key such as `ConnectivitySMILES`.
80
82
 
81
83
  ## Batch Summary
82
84
 
83
- operation:`compound-batch-summary`。
85
+ Operation: `compound-batch-summary`.
84
86
 
85
87
  ```json
86
88
  {
@@ -1,16 +1,17 @@
1
- # pymatgen 详细规则
1
+ # pymatgen reference
2
2
 
3
- 所有调用直接使用 `delta-cli science invoke`。无机化学式、组成和式量优先使用 pymatgen,不用 PubChem
4
- 或本地元素表替代。结构 operation 必须发送完整结构文本,不能发送本地文件路径;
5
- 支持 `cif`、`poscar`、`json`、`cssr`、`xsf`,不接收 LAMMPS data/dump。
3
+ Make all calls with `delta-cli science invoke`. Prefer pymatgen for inorganic formulae,
4
+ composition and formula weight; do not use PubChem or a local element table as a substitute.
5
+ Structure operations require the complete structure text, not a local file path. Supported formats
6
+ are `cif`, `poscar`, `json`, `cssr` and `xsf`; LAMMPS data and dump files are not accepted.
6
7
 
7
8
  ## Health
8
9
 
9
- operation:`health`,无 body。
10
+ Operation: `health`; no request body.
10
11
 
11
12
  ## Composition Parse
12
13
 
13
- operation:`composition-parse`。
14
+ Operation: `composition-parse`.
14
15
 
15
16
  ```json
16
17
  {"formula": "LiFePO4", "format": "formula"}
@@ -23,7 +24,7 @@ Key response fields in `data`: `valid`, `formula`, `reduced_formula`,
23
24
 
24
25
  ## Structure Parse / Summary
25
26
 
26
- operation:`structure-parse` 或 `structure-summary`。
27
+ Operation: `structure-parse` or `structure-summary`.
27
28
 
28
29
  ```json
29
30
  {"input": "<CIF text>", "format": "cif", "primitive": false}
@@ -37,7 +38,7 @@ Summary fields include `formula`, `reduced_formula`, `chemical_system`,
37
38
 
38
39
  ## Structure Convert
39
40
 
40
- operation:`structure-convert`。
41
+ Operation: `structure-convert`.
41
42
 
42
43
  ```json
43
44
  {
@@ -52,7 +53,7 @@ Output formats: `cif`, `poscar`, `json`, `cssr`, `xsf`.
52
53
 
53
54
  ## Symmetry
54
55
 
55
- operation:`structure-symmetry`。
56
+ Operation: `structure-symmetry`.
56
57
 
57
58
  ```json
58
59
  {