Skip to content

Add AGENTS.md#12028

Open
itrujnara wants to merge 7 commits into
nf-core:masterfrom
itrujnara:add_agents_md
Open

Add AGENTS.md#12028
itrujnara wants to merge 7 commits into
nf-core:masterfrom
itrujnara:add_agents_md

Conversation

@itrujnara

Copy link
Copy Markdown
Contributor

This PR is part of the agent steering project (nf-core/proposals#143). It adds the initial version of AGENTS.md to facilitate AI-assisted development in this repository and increase submission quality.

The file is intended to provide basic guidance for agents working within the repository. It is not intended as a complete replacement for the component documentation or for the module developer agent skill. That said, I appreciate feedback on any missing basic information.

PR checklist

  • This comment contains a description of changes (with reason).

Comment thread AGENTS.md
Comment thread AGENTS.md
Comment thread AGENTS.md Outdated
Comment thread AGENTS.md Outdated
Comment thread AGENTS.md Outdated
Comment thread AGENTS.md Outdated
Comment on lines +70 to +85
main.nf **MUST** define one `process` with the following elements:
- Nextflow directives:
- `tag`: used for distinguishing processes in logs, usually set to "$meta.id"
- one or more `label`: used to set default resources
- `conda`: always set to "${moduleDir}/environment.yml"
- `container`: contains links to Docker and Singularity containers, gated by a fixed container engine check
- you **MUST NOT** add any other directives, they will be set by the pipeline
- Input section (`input:`): generally one tuple per logical entity (sample, reference, etc.) and `val` inputs for mandatory options; see https://nf-co.re/docs/specifications/components/modules/input-output-options for details
- Output section (`output:`): generally one output per logical file (e.g. one for sam/bam/cram and one for bai/crai); there must also be one topic output for each tool (to report the version); see https://nf-co.re/docs/specifications/components/modules/input-output-options for details
- `when:` section: you **MUST** leave the boilerplate intact
- Main script (`script:`): contains the shell script to execute, along with Nextflow code to generate the arguments; the definitions of `args` and `prefix` **MUST** be left intact
- Stub script (`stub`): contains a script to simulate the action of the module without running the tool
- All output file names **MUST** match the main script
- Compressed files **MUST** be generated by compressing an empty file
- The definitions of `args` and `prefix` **MUST** be left intact

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can't we just point to the specifications and to use nf-core m lint, otherwise this will be a pain to keep in sync

Comment thread AGENTS.md Outdated
└── nextflow.config // Nextflow configuration used for testing ONLY; multiple config files may exist in some cases
```

## Key terms

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think I know much about prompt engineering so my instincts may not be useful, but to a human reader, I think this terminology is better to have defined before they are used.

@itrujnara itrujnara requested review from mashehu and pontus June 24, 2026 13:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants