Agent skill

Co2rr Selectivity

by Hello-QM in Hello-QM/catgo-LRG

A skill your agent uses when the user asks about CO2 reduction reaction (CO2RR), CO2 electroreduction intermediates, Faradaic efficiency, or selectivity toward CO, methanol, methane, formic acid, etc.

AGPL-3.0Auto-check passed

Install Co2rr Selectivity

skills CLI
$ npx skills add Hello-QM/catgo-LRG --skill co2rr-selectivity -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Hello-QM/catgo-LRG co2rr-selectivity --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Hello-QM/catgo-LRG.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/co2rr .claude/skills/co2rr-selectivity && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
co2rr-selectivity
GitHub stars
205
Token cost
~2.3k tokens
SKILL.md length
575 words
Files
1
Skills in repo
75
Repo updated
First seen
Licence
AGPL-3.0

At a glance

A skill your agent uses when the user asks about CO2 reduction reaction (CO2RR), CO2 electroreduction intermediates, Faradaic efficiency, or selectivity toward CO, methanol, methane, formic acid, etc.

  • Works in 4 steps: Create workflow and build slab → For each intermediate, add geo_opt -->… → Gas-phase references → …
  • The user asks about CO2 reduction reaction (CO2RR)
  • SKILL.md covers Theory, Discussion Checkpoints, Complete MCP Workflow and Python API, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Co2rr Selectivity is an agent skill from Hello-QM/catgo-LRG. Use when the user asks about CO2 reduction reaction (CO2RR), CO2 electroreduction intermediates, Faradaic efficiency, or selectivity toward CO, methanol, methane, formic acid, etc.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: AI-driven workbench for computational materials science — interactive 3D structure viewer, natural-language CatBot assistant, visual DAG workflow engine, HPC job submission… The licence is AGPL-3.0.

When your agent uses it

  • The user asks about CO2 reduction reaction (CO2RR)
  • CO2 electroreduction intermediates
  • Faradaic efficiency
  • Selectivity toward CO

Example prompts

  • “/co2rr-selectivity”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Create workflow and build slab
  2. For each intermediate, add geo_opt --> freq --> gibbs chain
  3. Gas-phase references
  4. Submit

What it can do on your machine

Read from SKILL.md and the folder at commit fd6291b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are json and python).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Co2rr Selectivity loads about 2.3k tokens when it runs. Until then it costs about 50 tokens; SKILL.md has 575 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~50
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Hello-QM/catgo-LRG at commit fd6291b, republished under its AGPL-3.0 licence (© Hello-QM). 575 words, ~2,252 tokens.

Download SKILL.mdSave it as .claude/skills/co2rr-selectivity/SKILL.md (or your agent's skills folder).
name
co2rr-selectivity
description
Use when the user asks about CO2 reduction reaction (CO2RR), CO2 electroreduction intermediates, Faradaic efficiency, or selectivity toward CO, methanol, methane, formic acid, etc.

CO2RR Pathway and Selectivity Analysis

Theory

CO2 electroreduction proceeds through multiple intermediates with branching pathways that determine product selectivity.

Key Intermediates
IntermediateFormula on SurfaceDescription
*COOHCOOH bound via CFirst protonation of CO2
*COCO bound via CAfter *COOH loses OH
*CHOCHO bound via CReduction of *CO (toward methanol/methane)
*COHCOH bound via CAlternative *CO reduction
*CH2OCH2O (formaldehyde)Further reduction
*CH3OCH3O (methoxy)Toward methanol
*CH3OHCH3OH (methanol)Final product (desorbs)
*OCHOOCHO bound via OToward formic acid (HCOOH)
Pathway Branching
CO2 --> *COOH --> *CO --> desorbs as CO (2e- product)
                    |
                    +--> *CHO --> *CH2O --> *CH3O --> CH3OH (6e-)
                    |                          |
                    |                          +--> CH4 + *O (8e-)
                    |
                    +--> *COH --> *C --> *CH --> *CH2 --> *CH3 --> CH4 (8e-)

CO2 --> *OCHO --> HCOOH (2e-, formic acid pathway)
Selectivity Descriptor

The branching between CO and further reduction is controlled by:

dG(*CHO) - dG(*CO)   or   dG(*COH) - dG(*CO)
  • If *CO desorption is easier than *CHO formation: product = CO
  • If *CHO formation is favorable: product = methanol or methane

Discussion Checkpoints

🔴 Must discuss with user:

  • Target product — CO (2e-) vs CH3OH (6e-) vs CH4 (8e-) vs HCOOH (2e-) determines which intermediates to compute; wrong pathway = wasted compute on irrelevant intermediates
  • Surface choice — Cu(111) is canonical for beyond-CO products; other metals (Ag, Au) mainly produce CO; surface identity determines selectivity
  • Functional — must be consistent across all intermediates and gas references; PBE may overbind CO on Cu, consider BEEF-vdW or RPBE for CO2RR

🟡 Recommend confirming:

  • Selectivity descriptors — include both *COOH and *OCHO first intermediates if studying CO vs formic acid selectivity
  • Solvent effects — *COOH and *CHO are stabilized by 0.1-0.3 eV with solvation; implicit (VASPsol) or explicit water molecules improve accuracy
  • pH (default: 0) — each proton-transfer step shifts by -0.059*pH eV; alkaline conditions favor CO over further reduction products

🟢 Safe defaults:

  • Standard CHE model: G(H+ + e-) = 0.5*G(H2)
  • Gas references: CO2, H2, H2O, CO (all with phase="gas")
  • Atom-balanced free energy steps

Complete MCP Workflow

1. Create workflow and build slab
json
{"tool": "catgo_workflow_engine", "arguments": {
  "action": "create", "name": "CO2RR on Cu(111)"
}}
json
{"tool": "catgo_fetch", "arguments": {
  "action": "crystal", "formula": "Cu", "source": "mp"
}}
json
{"tool": "catgo_structure", "arguments": {
  "action": "slab", "miller_index": [1,1,1],
  "min_slab_size": 12.0, "min_vacuum_size": 15.0
}}
2. For each intermediate, add geo_opt --> freq --> gibbs chain

Example for *COOH:

json
{"tool": "catgo_workflow_engine", "arguments": {
  "action": "add_task", "workflow_id": "wf_co2rr",
  "task_type": "geo_opt",
  "params": {"software": "vasp", "ENCUT": 520, "system_name": "*COOH"}
}}
json
{"tool": "catgo_workflow_engine", "arguments": {
  "action": "add_task", "workflow_id": "wf_co2rr",
  "task_type": "freq", "depends_on": "task_cooh_opt",
  "params": {"software": "vasp", "freeze_mode": "layers", "freeze_layers": 4,
             "system_name": "*COOH"}
}}
json
{"tool": "catgo_workflow_engine", "arguments": {
  "action": "add_task", "workflow_id": "wf_co2rr",
  "task_type": "gibbs_energy",
  "depends_on": ["task_cooh_opt", "task_cooh_freq"],
  "params": {"phase": "adsorbed", "system_name": "*COOH"}
}}

Repeat for: *CO, *CHO, *CH2O, *CH3O, *CH3OH, and clean slab.

3. Gas-phase references
json
{"tool": "catgo_fetch", "arguments": {"action": "molecule", "name": "carbon dioxide"}}

Add gas-phase gibbs tasks for: CO2, H2, H2O, CO (all with phase="gas").

4. Submit
json
{"tool": "catgo_workflow_engine", "arguments": {
  "action": "submit", "workflow_id": "wf_co2rr"
}}

Python API

python
from catgo.workflow import Workflow

wf = Workflow("CO2RR on Cu(111)")

slab_inp = wf.add_task("structure_input", structure=clean_slab_json)
slab_opt = wf.add_task("geo_opt", structure=slab_inp.output.structure,
                        software="vasp", ENCUT=520)

# All intermediates
intermediates = ["COOH", "CO", "CHO", "CH2O", "CH3O", "CH3OH"]
for ads in intermediates:
    inp = wf.add_task("structure_input", structure=adsorbate_slabs[ads])
    opt = wf.add_task("geo_opt", structure=inp.output.structure,
                      software="vasp", ENCUT=520, system_name=f"*{ads}")
    frq = wf.add_task("freq", structure=opt.output.structure,
                      software="vasp", freeze_mode="layers", freeze_layers=4,
                      system_name=f"*{ads}")
    gib = wf.add_task("gibbs_energy", energy=opt.output.energy,
                      frequencies=frq.output.frequencies,
                      phase="adsorbed", system_name=f"*{ads}")

# Gas-phase references
for mol in ["CO2", "H2", "H2O", "CO"]:
    inp = wf.add_task("structure_input", structure=gas_molecules[mol])
    opt = wf.add_task("geo_opt", structure=inp.output.structure, software="vasp")
    frq = wf.add_task("freq", structure=opt.output.structure, software="vasp")
    gib = wf.add_task("gibbs_energy", energy=opt.output.energy,
                      frequencies=frq.output.frequencies,
                      phase="gas", system_name=f"{mol}(g)")

wf.submit()
Show full SKILL.md (256 more words)Show less

Free Energy Diagram

After all gibbs tasks complete, compute the reaction free energy for each step.

Important: All G values must be Gibbs free energies (from geo_opt + freq + gibbs_energy chain), NOT raw DFT electronic energies. Using E_DFT instead of G omits ZPE and entropy, leading to errors of 0.2-0.5 eV per step.

Atom-Balanced Free Energy Steps (CHE convention)

Using the computational hydrogen electrode: G(H+ + e-) = 0.5 * G(H2) at U=0V. Each step must balance all atoms (C, O, H) on both sides:

Step 1: CO2(g) + H+ + e- --> *COOH
  dG1 = G(*COOH) - G(*) - G(CO2) - 0.5*G(H2)
  Balance: C=1, O=2, H=1 on both sides

Step 2: *COOH + H+ + e- --> *CO + H2O
  dG2 = G(*CO) + G(H2O) - G(*COOH) - 0.5*G(H2)
  Balance: C=1, O=2, H=2 on both sides

Step 3: *CO + H+ + e- --> *CHO
  dG3 = G(*CHO) - G(*CO) - 0.5*G(H2)
  Balance: C=1, O=1, H=1 on both sides

Step 4: *CHO + H+ + e- --> *CH2O
  dG4 = G(*CH2O) - G(*CHO) - 0.5*G(H2)
  Balance: C=1, O=1, H=2 on both sides

Step 5: *CH2O + H+ + e- --> *CH3O
  dG5 = G(*CH3O) - G(*CH2O) - 0.5*G(H2)
  Balance: C=1, O=1, H=3 on both sides

Step 6: *CH3O + H+ + e- --> CH3OH(g) + *
  dG6 = G(CH3OH) + G(*) - G(*CH3O) - 0.5*G(H2)
  Balance: C=1, O=1, H=4 on both sides
pH Correction

At non-zero pH, each proton-transfer step is corrected by:

dG_i(pH) = dG_i - 0.059 * pH   (eV, at 298 K)

This shifts the free energy of every (H+ + e-) transfer by -0.059 eV per pH unit (Nernst relation). At pH 0, no correction is needed.

The potential-determining step (PDS) is the step with the largest positive dG. The limiting potential is U_L = -max(dG_i) / e.

DAG Structure

clean_slab --> geo_opt
*COOH  --> geo_opt --> freq --> gibbs    \
*CO    --> geo_opt --> freq --> gibbs     |
*CHO   --> geo_opt --> freq --> gibbs     |-- all parallel
*CH2O  --> geo_opt --> freq --> gibbs     |
*CH3O  --> geo_opt --> freq --> gibbs     |
*CH3OH --> geo_opt --> freq --> gibbs    /
CO2(g) --> geo_opt --> freq --> gibbs (gas)
H2(g)  --> geo_opt --> freq --> gibbs (gas)
H2O(g) --> geo_opt --> freq --> gibbs (gas)
CO(g)  --> geo_opt --> freq --> gibbs (gas)

Total: ~31 tasks. All branches are independent.

Common Pitfalls

  1. Cu(111) is the canonical CO2RR catalyst -- Cu uniquely binds *CO strongly enough for further reduction but not so strongly that it poisons.
  2. *COOH and *OCHO are competing first intermediates. Include both if studying selectivity between CO/methanol vs formic acid pathways.
  3. Use dipole corrections (LDIPOL=.TRUE., IDIPOL=3 in VASP) for charged adsorbates on metallic slabs -- CO2RR intermediates have significant dipole moments.
  4. Solvation corrections (~0.1-0.3 eV stabilization for *COOH, *CHO) are important for quantitative accuracy. Add explicit water molecules or use implicit solvation (VASPsol) if available.
  5. For selectivity studies, the relative energies between competing intermediates matter more than absolute values -- ensure consistent computational settings across all calculations.

© Hello-QM, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/co2rr of Hello-QM/catgo-LRG.

Open the folder on GitHubat commit fd6291b

Compare with similar skills

Co2rr Selectivity next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Co2rr Selectivity compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Co2rr Selectivity this skillHello-QM/catgo-LRG205—~2.3kAutomated safety check: PassAGPL-3.0
Select Namethedaviddias/Front-End-Checklist74k—~451Automated safety check: PassMIT
Engine Selectionsickn33/agentic-awesome-skills47k1 repos~1.2kAutomated safety check: PassMIT
Technology Selectiondotnet/skills5.6k2 repos~2.1kAutomated safety check: PassMIT
Accounting Software Selectionsickn33/agentic-awesome-skills47k1 repos~7.4kAutomated safety check: PassMIT
Editor Selection GetIvanMurzak/Unity-MCP4.4k—~1.9kAutomated safety check: PassApache-2.0

Similar skills

  • Select Name

    thedaviddias/Front-End-Checklist

    A skill your agent uses when reviewing rendered HTML, interactive components, or design-system patterns related to Provide accessible names for select elements.

    74k GitHub stars~451 tokensUpdated 2 days ago
    Frontend & DesignAuto-check passed
  • Engine Selection

    sickn33/agentic-awesome-skills

    Selects game engines and frameworks by platform, genre, and architecture (full canvas shell vs hybrid DOM shell + guest viewport).

    47k GitHub starsUsed in 1 repo~1.2k tokens
    Game DevelopmentAuto-check passed
  • Official

    Guides technology selection and implementation of AI and ML features in .NET 8+ applications using ML.NET, Microsoft.Extensions.AI (MEAI), Microsoft Agent Framework (MAF), GitHub Copilot SDK, ONNX…

    5.6k GitHub starsUsed in 2 repos~2.1k tokens
    AI & LLM EngineeringAuto-check passed
  • Accounting Software Selection

    sickn33/agentic-awesome-skills

    Scores shortlisted accounting packages against 57 evidence-backed fields, emitted as CSV, SQL, JSON Schema or Notion on request.

    47k GitHub starsUsed in 1 repo~7.4k tokens
    Business, Finance & HRAuto-check passed
  • Editor Selection Get

    IvanMurzak/Unity-MCP

    Get information about the current Selection in the Unity Editor — active object, active transform, selected GameObjects, transforms, instance IDs, and asset GUIDs (each enrichment is opt-in).

    4.4k GitHub stars~1.9k tokensUpdated 4 days ago
    Game DevelopmentAuto-check passed
  • Decide whether to fine-tune at all, and route to the right method (SFT, DPO/ORPO/KTO, GRPO/RLVR, continued pretraining) and base model.

    40k GitHub stars~2k tokensUpdated 3 days ago
    AI & LLM EngineeringAuto-check passed

More from Hello-QM/catgo-LRG

All 75 skills in this repo
  • Campaign Md Orchestration

    Hello-QM/catgo-LRG

    Drive a file-first, agent-in-the-loop computational campaign via a folder + markdown tree (no DB).

    205 GitHub stars~1.6k tokensUpdated 16 days ago
    Auto-check passed
  • Lammps Deepmd

    Hello-QM/catgo-LRG

    Run LAMMPS molecular dynamics with DeePMD-kit machine learning potentials.

    205 GitHub starsUsed in 1 repo~1k tokens
    Auto-check passed
  • Catgo Gibbs Pipeline

    Hello-QM/catgo-LRG

    Compute adsorption/reaction Gibbs free energies, free-energy diagrams, and electrochemical overpotentials (HER/ORR/OER/CO2RR/NRR) with VASP.

    205 GitHub stars~669 tokensUpdated 16 days ago
    Auto-check passed
  • Abinit

    Hello-QM/catgo-LRG

    Generate and manage ABINIT DFT calculations. An agent skill from Hello-QM/catgo-LRG.

    205 GitHub stars~963 tokensUpdated 16 days ago
    Auto-check passed
  • Adsorbate Placement

    Hello-QM/catgo-LRG

    A skill your agent uses when the user asks to place an adsorbate molecule on a surface, find adsorption sites, or set up a surface+adsorbate model for DFT.

    205 GitHub stars~3k tokensUpdated 16 days ago
    Auto-check passed
  • Adsorption Energy

    Hello-QM/catgo-LRG

    A skill your agent uses when the user asks for adsorption energy, binding energy, or wants to compare how strongly a molecule binds to a surface.

    205 GitHub stars~1.4k tokensUpdated 16 days ago
    Auto-check passed

Questions about Co2rr Selectivity

What does Co2rr Selectivity do?

A skill your agent uses when the user asks about CO2 reduction reaction (CO2RR), CO2 electroreduction intermediates, Faradaic efficiency, or selectivity toward CO, methanol, methane, formic acid, etc. Co2rr Selectivity is an agent skill from Hello-QM/catgo-LRG. Use when the user asks about CO2 reduction reaction (CO2RR), CO2 electroreduction intermediates, Faradaic efficiency, or selectivity toward CO, methanol, methane, formic acid, etc.

When should I use Co2rr Selectivity?

Co2rr Selectivity fits situations like: the user asks about CO2 reduction reaction (CO2RR); CO2 electroreduction intermediates; faradaic efficiency; selectivity toward CO.

How do I install Co2rr Selectivity in Claude Code?

Run `npx skills add Hello-QM/catgo-LRG --skill co2rr-selectivity -a claude-code`. Or copy the skill folder (.claude/skills/co2rr in Hello-QM/catgo-LRG) into .claude/skills/co2rr-selectivity in your project. Claude Code loads it when a task matches its description.

How do I install Co2rr Selectivity in Codex?

Run `npx skills add Hello-QM/catgo-LRG --skill co2rr-selectivity -a codex`. Or copy the skill folder (.claude/skills/co2rr in Hello-QM/catgo-LRG) into .agents/skills/co2rr-selectivity in your project. Codex loads it when a task matches its description.

Can I use Co2rr Selectivity in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Hello-QM/catgo-LRG --skill co2rr-selectivity -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/co2rr-selectivity, .gemini/skills/co2rr-selectivity, .github/skills/co2rr-selectivity and .opencode/skills/co2rr-selectivity in your project.

What does Co2rr Selectivity need to run?

SKILL.md names no scripts, command-line tools or credentials: Co2rr Selectivity is instructions for the agent only. Our summary lists: Python 3.

Does Co2rr Selectivity access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Co2rr Selectivity safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Co2rr Selectivity use?

Co2rr Selectivity is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Co2rr Selectivity use?

About 2.3k tokens (SKILL.md is roughly 9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Co2rr Selectivity?

Skills that share tags, products or a category with Co2rr Selectivity: Select Name (thedaviddias/Front-End-Checklist, 74k stars), Engine Selection (sickn33/agentic-awesome-skills, 47k stars), Technology Selection (dotnet/skills, 5.6k stars) and Accounting Software Selection (sickn33/agentic-awesome-skills, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Co2rr Selectivity?

Hello-QM (a GitHub user) maintains it in Hello-QM/catgo-LRG, which has 205 GitHub stars. The repository holds 75 skills in this directory. The repository was last updated on September 22, 2026.

Source: Hello-QM/catgo-LRG on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.