Fastfold AI Skills
Open skills where computational scientists and AI agents work together, with well-tested integrations.
Run them anywhere. Locally with sandwalk on your own compute, or in the Fastfold Cloud Agent, where they run in Modal sandboxes with a persistent filesystem workspace.
Built on the open Agent Skills ecosystem from Vercel, so they work in any compatible agent: Claude Code, Cursor, Codex, GitHub Copilot, Gemini, sandwalk, and many more.
Install
Install all skills with the open Skills CLI (Node/npx), which works across every supported agent:
npx skills add fastfold-ai/skills
Or with sandwalk (native, no Node required):
sandwalk skills add fastfold-ai/skills # all skills
sandwalk skills add fastfold-ai/skills@skills/fold # a single skill
These are the same catalog skills used by sandwalk. See:
- sandwalk
- Skills registry: skills.sh/fastfold-ai/skills
Usage
Once installed, the agent uses a skill when the task matches its description and “Use when” triggers.
Example:
With .env set up (or the key exported), run scripts without passing the key each time. Your agent can help you set this up. See Setting your API keys below.
Just Ask:
Use Boltz-2 in Fastfold with affinity property to the ligand. Fold this protein: PQITLWQRPLVTIKIGGQLKEALLDTGADDTVLEEMSLPGRWKPKMIGGIGGFIKVRQYDQILIEICGHKAIGTVLVGPTPVNIIGRNLLTQIGCTLNF and this ligand: CC1CN(CC(C1)NC(=O)C2=CC=CC=C2N)C(=O)NC(C)(C)C
Compute providers & API keys
These skills run against two compute providers. Set the key for whichever skills you use (a local .env is easiest), then see Setting your API keys.
| Provider | API key | Used by | Get a key |
|---|---|---|---|
| Fastfold Cloud (Jobs & Workflows API) | FASTFOLD_API_KEY |
fold, protein_design_boltzgen, md_openmm_calvados, md_openmmdl, slack_report |
cloud.fastfold.ai/api-keys |
| Boltz API | BOLTZ_API_KEY |
boltz |
Boltz Console, or enable the Fastfold Boltz provider |
Available Skills
Skills in this repo live in the skills/ folder.
| Skill | Primary use |
|---|---|
boltz |
Direct Boltz API workflows (SAB, protein/small-molecule design/screen, ADME, status/recovery) |
fold |
FastFold Jobs API submission, waiting, and result retrieval |
protein_design_boltzgen |
BoltzGen protein design workflow orchestration |
md_openmm_calvados |
CALVADOS + OpenMM molecular dynamics workflows |
md_openmmdl |
OpenMMDL protein-ligand molecular dynamics workflows |
slack_report |
Post markdown reports to Slack and save library copies |
diagrams_mermaid |
Generate Mermaid diagrams for complex workflows and pipeline explanations |
Install a single skill with sandwalk skills add fastfold-ai/skills@skills/<skill> (or npx skills add fastfold-ai/skills).
boltz
Drives the official boltz-api CLI directly for:
- structure-and-binding
- protein design and protein library screen
- small-molecule design and library screen
- ADME
- status / retrieve / list / recovery flows
Use when:
- The user explicitly wants direct Boltz API execution (
boltz-apiflows) - You need an estimate -> confirm -> submit -> wait/download flow
- You need run recovery and durable artifact persistence
Key runtime behavior:
- Always estimates cost and waits for explicit user approval before any billable submit
- Installs
boltz-apivia the official Boltz installer when missing (curl -fsSL https://install.boltz.bio/boltz-api/install.sh | sh) - Downloads into
/tmp/boltz-runs/<slug>(the/workspacemount is S3-backed, not POSIX), then persists withscripts/persist.sh - Recovers from the API by
idempotency_keyinstead of re-submitting a billable job
Scripts:
persist.sh– S3-safe copy of a finished run directory from/tmp/boltz-runs/<slug>to/workspace/boltz-artifacts/boltz/<slug>/
Example prompts (small runnable examples):
- "Run a simple ROR1-style Boltz-2 structure-and-binding smoke test with aspirin; estimate first, then execute."
- "Run a minimal AMBP-style protein design job with 10 proteins and return top metrics/artifact paths."
- "Screen aspirin, ibuprofen, and caffeine against a PknB-style target with small-molecule library screen and summarize top hits."
- "Run ADME quick triage for aspirin, ibuprofen, phenol, and caffeine."
- "Recover my earlier Boltz job by idempotency key, re-download results, and persist them to workspace."
Reference examples:
Requires: BOLTZ_API_KEY in the sandbox/runtime environment.
If missing, configure provider access at Fastfold Boltz Provider, create/get a key at Boltz Console, and restart the sandbox.
fold
Submits and manages FastFold protein folding jobs via the Jobs API. Covers authentication, creating jobs, polling for completion, and fetching CIF/PDB URLs, metrics, and 3D viewer links.
Use when:
- Folding a protein sequence with FastFold (API or scripts)
- Mentioning FastFold API, fold job, CIF/PDB results, or viewer link
- Scripting: create job → wait for completion → download results / metrics / viewer URL
Features:
- Create Job (POST
/v1/jobs) with sequences and params; optional constraints, libraryfromID - Wait for completion with configurable polling and timeout
- Fetch results (JSON or summary), download CIF(s), get 3D viewer link
- Self-contained OpenAPI schema in
references/jobs.yaml
Scripts:
wait_for_completion.py– poll until COMPLETED/FAILED/STOPPEDfetch_results.py– get job results summary (or--jsonfor raw output)download_cif.py– download CIF file(s) for completed jobsget_viewer_link.py– print Mol* viewer URL:https://cloud.fastfold.ai/mol/new?from=jobs&job_id=<id>
Requires: FASTFOLD_API_KEY from .env or environment. Agent will ask the user to set it locally before continuing if missing.
protein_design_boltzgen
BoltzGen protein design workflow automation (draft -> upsert -> execute -> ranked candidates).
Use when:
- Running BoltzGen design workflows from presets or custom specs
- Asking for example-first setup with bundled workflow examples
- Fetching ranked candidates, metrics, and Mol* links
Key scripts:
workflow_api.py– create/upload/build/upsert/execute/wait/resultsfetch_cif.py– fetch candidate CIF artifacts
md_openmm_calvados
CALVADOS + OpenMM workflow automation via the Workflows API (calvados_openmm_v1).
Use when:
- Running OpenMM simulations from completed fold jobs
- Submitting manual PDB + PAE simulation inputs
- Fetching workflow metrics, artifacts, and extracted frames
md_openmmdl
OpenMMDL protein-ligand workflow automation via the Workflows API (openmmdl_v1).
Use when:
- Submitting topology + ligand based MD jobs
- Preparing/executing draft OpenMMDL scripts
- Fetching analysis artifacts and trajectory frames
slack_report
Share markdown reports to Slack and save a copy to Fastfold library.
Use when:
- Sharing an agent/session report to a Slack channel
- Posting markdown summaries to team updates
- Saving the same report in library and Slack in one step
Features:
- Sends report via
POST /v1/slack/messages/agent-cli-report - Uses configured
agent_cli_reportchannel in Slack integrations - Returns friendly guidance when Slack is not configured
- Includes library open link when
library_item_idis returned
Scripts:
send_agent_cli_report.py– send markdown report to Slack report channel and save to library
Requires: FASTFOLD_API_KEY from environment or .env.
diagrams_mermaid
Generate Mermaid diagrams on demand and proactively for multi-step workflows.
Use when:
- User explicitly asks for flowcharts, sequence diagrams, Mermaid output, or architecture maps
- You are explaining complex pipelines with branching/dependencies
- You need visual workflow summaries for computational biology runs (for example BoltzGen, fold -> MD chains)
Features:
- Diagram type selection guidance (flowchart, sequence, state, ER)
- Syntax guardrails for reliable Mermaid rendering
- Reusable templates for FastFold and general multi-step workflow explanations
Requires: No API key.
Setting your API keys
Skills read keys from a .env file in the project (current directory or any parent), so you don't need to export them in the shell. Set only the key(s) for the providers you use (see Compute providers & API keys).
Fastfold Cloud, FASTFOLD_API_KEY (skills: fold, protein_design_boltzgen, md_openmm_calvados, md_openmmdl, slack_report)
- Copy the template:
cp skills/fold/references/.env.example .env - Add your key:
FASTFOLD_API_KEY=sk-your-actual-key-here - Get a key at Fastfold API Keys.
Boltz API, BOLTZ_API_KEY (skill: boltz)
- Add to the same
.env:BOLTZ_API_KEY=sk-your-boltz-key-here - Create or get a key at the Boltz Console, or enable the provider in Fastfold Cloud.
- In a hosted sandbox, set it as an environment variable and restart the session so it becomes visible.
Shell alternative: export FASTFOLD_API_KEY="sk-..." or export BOLTZ_API_KEY="sk-...". Environment variables take precedence over .env.
Do not commit .env (it's in .gitignore), and don't paste keys in chat. Keep secrets in local .env only.
License
MIT
No comments yet
Be the first to share your take.