Skip to content
Skill

coot-NCS-reference-guidance

by pemsley

AI Summary

When building or rebuilding fragments, use the sequence and model from NCS-related (non-crystallographically related) or molecular symmetry-related molecules as a reference. If one copy is better built, use it to guide building of the other copies. Before building, compare sequences between related

Install

Copy this and paste it into Claude Code, Cursor, or any AI assistant:

I want to install the "coot-NCS-reference-guidance" skill in my project.

Please run this command in my terminal:
# Install skill into your project
mkdir -p .claude/skills/NCS && curl --retry 3 --retry-delay 2 --retry-all-errors -o .claude/skills/NCS/SKILL.md "https://raw.githubusercontent.com/pemsley/coot/main/mcp/docs/skills/NCS/SKILL.md"

Then restart Claude Code (or reload the window in Cursor) so the skill is picked up.

Description

NCS Reference Guidance

Overview

When building or rebuilding fragments, use the sequence and model from NCS-related (non-crystallographically related) or molecular symmetry-related molecules as a reference. If one copy is better built, use it to guide building of the other copies.

Usage:

build_fragment_from_ncs(0, "A", "B", 94, 96) `

Why This Helps

• Multiple copies of the same molecule in the asymmetric unit should have identical sequences • One copy may have better density or be more complete than others • The better-built copy provides the correct sequence and approximate coordinates

Workflow: Compare Sequences First

Before building, compare sequences between related chains: `python def compare_chain_sequences(imol, chain1, chain2): """Compare sequences of two chains, return differences.""" diffs = [] for resno in range(1, 200): # Adjust range as needed name1 = coot.residue_name_py(imol, chain1, resno, "") name2 = coot.residue_name_py(imol, chain2, resno, "") if name1 and name2 and name1 != name2: diffs.append((resno, name1, name2)) elif name1 and not name2: diffs.append((resno, name1, "MISSING")) elif name2 and not name1: diffs.append((resno, "MISSING", name2)) return diffs

Discussion

0/2000
Loading comments...

Health Signals

MaintenanceCommitted Today
Active
Adoption100+ stars on GitHub
161 ★ · Growing
DocsMissing or thin
Undocumented

GitHub Signals

Stars161
Forks59
Issues163
UpdatedToday
View on GitHub
GPL-3.0 License

My Fox Den

Community Rating

Sign in to rate this booster

Works With

Claude Code