This directory contains custom agents and always-on instructions for GitHub Copilot Chat in VS Code.
instructions/r-style.instructions.md — applied automatically to every *.R file.
Enforces tidyverse idioms, script-style (top-to-bottom, minimal abstraction), and
comment standards. No invocation needed.
Agents appear in the Copilot Chat agent picker (the mode selector next to the chat
input). Select one from the dropdown, or type its name after @ in the chat input.
@<agent-name> <your request>
Example:
@stats review R/process_burn_dates.R for assumption violations
@commenter document R/get_clouds_wilson.R
@coder_alpha implement a function that downloads MODIS tiles for a given month
To run all three competing coders on the same problem, send the same prompt to each:
@coder_alpha implement X
@coder_beta implement X
@coder_gamma implement X
Then pick the best solution or synthesise across them.
| Agent | Invoke when you want to… |
|---|---|
@stats |
Check statistical assumptions, sample sizes, data leakage, uncertainty |
@geo |
Metadata QA (CRS consistency, resolution mismatches, missing files) and spatial accuracy review (resampling methods, spatial joins, zonal statistics) |
@science |
Get a peer-reviewer-style critique of analytical design and methods |
@gh_actions |
Check that changes will run on GitHub Actions (interactive calls, server paths, secrets, cleanup, date ranges) |
@targets |
Check target dependencies, dynamic branching, format=file correctness, tar_release round-trip, deployment guards |
| Agent | Philosophy |
|---|---|
@coder_alpha |
Correctness-first: readable, conventional, explicit sanity checks |
@coder_beta |
Performance-first: memory-efficient, chunk-based, parallelism-aware |
@coder_gamma |
Minimalist: fewest lines, no abstraction, inline everything |
| Agent | Invoke when you want to… |
|---|---|
@commenter |
Review or add scientific comments, section headers, and unit annotations |
| Agent | Invoke when you want to… |
|---|---|
@ci |
Run a full pre-commit sweep: lint + geo + stats + gh_actions + targets |
Before committing:
@ci
Writing new processing code:
- Draft with
@coder_alpha,@coder_beta, and@coder_gammain parallel. - Pick or synthesise the best solution.
- Run
@geoand@statson the result. - Run
@commenterto fill in documentation.
Reviewing a script for scientific soundness:
@science review R/process_dynamic_data.R
@stats review R/process_dynamic_data.R
@geo review R/process_dynamic_data.R