SMILES Functional Group Editor
SkillDev toolsEdit molecular structures in SMILES notation by adding, deleting, or replacing functional groups. Use this skill whenever the user asks to modify a molecule's SMILES by manipulating functional groups (e.g., "delete hydroxyl", "add nitrile", "replace amine with carboxyl"). This skill prevents the most common error: treating the same atom pattern (like -OH) as one functional group when it actually represents different groups depending on chemical context.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the SMILES Functional Group Editor skill
What this skill tells your AI
The instructions your AI receives, as published by internscience/molclaw in skills/L1_tools/molclaw-smiles-fg-editor/SKILL.md and read by ahel’s review.
Note:
- Local files are not directly accessible by the server. Please upload them to the server using
molclaw-file-transferbefore execution. - For PDB file inputs, it is recommended to preprocess them using
molclaw-pdbfixerbefore execution. - Please refer to skill
molclaw-scp-serverto complete tool invocation.
Core Rule: Context Determines Identity
Never match functional groups by SMILES substring alone. The same pattern represents different groups depending on what it's bonded to. Always classify from most-specific to least-specific — first match wins.
Functional Group Hierarchy
Oxygen-containing (check top-down)
| Priority | Group | Pattern | Key Test |
|---|---|---|---|
| 1 | Carboxylic acid | C(=O)O (terminal OH) | C=O adjacent to OH |
| 2 | Ester | C(=O)OC | C=O adjacent to O-C |
| 3 | Phenol | c-O (aromatic carbon-OH) | Lowercase c bonded to O |
| 4 | Enol | C=C-O | Vinyl carbon bonded to OH |
| 5 | Ketone | CC(=O)C (non-terminal) | Internal C=O, no adjacent N or OC |
| 6 | Aldehyde | terminal C=O | Terminal C=O |
| 7 | Ether | C-O-C (aliphatic) | Not part of ester |
| 8 | Alcohol/Hydroxyl | C-O (aliphatic C-OH) | Aliphatic C — lowest priority |
Nitrogen-containing
| Priority | Group | Pattern | Key Test |
|---|---|---|---|
| 1 | Nitro | [N+](=O)[O-] | Charged N with two oxygens |
| 2 | Amide | C(=O)N | N adjacent to C=O |
| 3 | Nitrile | C#N | Triple bond |
| 4 | Imine | C=N | Double bond |
| 5 | Heterocyclic N | n in ring | Ring member — not an amine |
| 6 | Amine | C-N (aliphatic) | Not in amide/ring — lowest |
User Term → Target Mapping
| User says | Target only | Do NOT touch |
|---|---|---|
| "hydroxyl" | Alcohol (aliphatic C-OH) | Phenol, enol, carboxyl OH |
| "amine" | Aliphatic amine | Amide N, ring N |
| "carbonyl" | Ketone/Aldehyde C=O | Ester/amide/carboxyl C=O |
| "nitrile" | C≡N | Isocyanide |
| "carboxyl" | -COOH | Ester |
Workflow
- Inventory: list all candidate groups in the molecule
- Classify: walk the hierarchy top-down for each candidate, first match wins
- Filter: keep only groups matching the user's term per the mapping table above
- Modify: delete/add/replace at the matched positions; preserve
@/@@stereochemistry - Validate: check parentheses balanced, ring closures matched, stereo preserved
Output Format
{
"output": "Modified Molecule SMILES"
}
Signals
- GitHub stars
- 33
- Forks
- 3
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
molclaw-smiles-fg-editor- Source
- github.com/internscience/molclaw