Initial commit: Chai-1 protein structure prediction pipeline for WES

- Nextflow pipeline using chai1 Docker image from Harbor
- S3-based input/output paths (s3://omic/eureka/chai-lab/)
- GPU-accelerated protein folding with MSA support

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-16 12:55:08 +01:00
commit f971fd0e21
26 changed files with 1289 additions and 0 deletions

83
params.json Executable file
View File

@@ -0,0 +1,83 @@
{
"params": {
"input_dir": {
"type": "folder",
"description": "Directory containing FASTA files and optional restraints",
"default": "s3://omic/eureka/chai-lab/input",
"required": true,
"pipeline_io": "input",
"var_name": "params.input_dir",
"examples": [
"s3://omic/eureka/chai-lab/input"
],
"pattern": ".*",
"enum": [],
"validation": {},
"notes": "Directory containing FASTA files (with *_complex.fasta suffix) and optional restraints files (with *_restraints.txt suffix)"
},
"outdir": {
"type": "folder",
"description": "Directory for chai1 prediction results",
"default": "s3://omic/eureka/chai-lab/output",
"required": true,
"pipeline_io": "output",
"var_name": "params.outdir",
"examples": [
"s3://omic/eureka/chai-lab/output"
],
"pattern": ".*",
"enum": [],
"validation": {},
"notes": "Directory where prediction results and log files will be stored. Will be created if it doesn't exist."
},
"use_msa": {
"type": "boolean",
"description": "Enable/disable MSA server usage",
"default": true,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.use_msa",
"examples": [
true,
false
],
"enum": [true, false],
"validation": {},
"notes": "Whether to use MSA server for improved predictions"
},
"msa_server": {
"type": "string",
"description": "MSA server URL",
"default": "https://api.colabfold.com",
"required": false,
"pipeline_io": "parameter",
"var_name": "params.msa_server",
"examples": [
"https://api.colabfold.com"
],
"pattern": "^https?://.*",
"enum": [],
"validation": {},
"notes": "URL of the MSA server to use when use_msa is enabled"
},
"num_samples": {
"type": "integer",
"description": "Number of diffusion samples to generate",
"default": 5,
"required": false,
"pipeline_io": "parameter",
"var_name": "params.num_samples",
"examples": [
5,
10
],
"pattern": "^[1-9]\\d*$",
"enum": [],
"validation": {
"min": 1,
"max": 50
},
"notes": "Number of structure samples to generate using diffusion"
}
}
}