From 4ad0d3b446ebd1bcd47f31a68ccc2122ca3ee13e Mon Sep 17 00:00:00 2001 From: Taylor Salo Date: Mon, 16 Feb 2026 11:25:11 -0500 Subject: [PATCH 1/4] Draft AGENTS.md file. --- AGENTS.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 00000000..25b449d5 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,34 @@ +# Project Instructions + +CuBIDS is a Python package for modifying Brain Imaging Data Structure (BIDS) datasets. +The input dataset is assumed to be valid BIDS, and the primary goals of CuBIDS are to +(1) identify and summarize the heterogeneity in the dataset, +(2) apply groupings to the dataset to facilitate downstream analysis, +and (3) anonymize the dataset in preparation for open sharing. + +The package is designed to be used as a command-line tool, but it can also be used as a Python library. + +## Code Style + +- Follow the PEP 8 style guide and the Black code formatter. +- Follow the Numpydoc style guide for docstrings. +- Emphasize performance and readability over brevity. +- Use meaningful variable and function names. +- Use meaningful comments. +- Write code like an expert Python developer. + +## Development + +- When fixing a bug, start by writing a test that fails, then write the code to fix the bug. +- Always plan first. +- Think harder in the planning phase. +- When proposing tasks, highlight potential critical points that could lead to side effects. + +## Testing + +- Use pytest for testing. +- Tests should be organized by module and function/class. + +## Linting + +The repository is linted with `pipx run black`. From 9e2c8a1ab389db674330d1415f76f9a9309d3f63 Mon Sep 17 00:00:00 2001 From: Taylor Salo Date: Mon, 16 Feb 2026 11:31:39 -0500 Subject: [PATCH 2/4] Update AGENTS.md --- AGENTS.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index 25b449d5..cc0c5ee3 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,12 +1,13 @@ # Project Instructions -CuBIDS is a Python package for modifying Brain Imaging Data Structure (BIDS) datasets. +CuBIDS is a Python package for curating Brain Imaging Data Structure (BIDS) datasets. The input dataset is assumed to be valid BIDS, and the primary goals of CuBIDS are to (1) identify and summarize the heterogeneity in the dataset, (2) apply groupings to the dataset to facilitate downstream analysis, and (3) anonymize the dataset in preparation for open sharing. The package is designed to be used as a command-line tool, but it can also be used as a Python library. +However, it does rely on non-Python dependencies, particularly `datalad` and `deno`. ## Code Style From 00bbe2d0b8990ec329c3c481151a6819a551f0af Mon Sep 17 00:00:00 2001 From: Taylor Salo Date: Mon, 16 Feb 2026 11:43:11 -0500 Subject: [PATCH 3/4] Update AGENTS.md --- AGENTS.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index cc0c5ee3..665848b3 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -24,11 +24,13 @@ However, it does rely on non-Python dependencies, particularly `datalad` and `de - Always plan first. - Think harder in the planning phase. - When proposing tasks, highlight potential critical points that could lead to side effects. +- When making a change, update the documentation and the README as necessary. ## Testing - Use pytest for testing. - Tests should be organized by module and function/class. +- Create simulated datasets as necessary to test the code. ## Linting From 04e14b8bc4d1bb60c468f206a5b3313cfb33e4a6 Mon Sep 17 00:00:00 2001 From: Taylor Salo Date: Mon, 16 Feb 2026 11:48:45 -0500 Subject: [PATCH 4/4] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- AGENTS.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 665848b3..99408baf 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -11,7 +11,7 @@ However, it does rely on non-Python dependencies, particularly `datalad` and `de ## Code Style -- Follow the PEP 8 style guide and the Black code formatter. +- Follow the PEP 8 style guide using the Black code formatter. - Follow the Numpydoc style guide for docstrings. - Emphasize performance and readability over brevity. - Use meaningful variable and function names. @@ -34,4 +34,4 @@ However, it does rely on non-Python dependencies, particularly `datalad` and `de ## Linting -The repository is linted with `pipx run black`. +The repository is linted with `python -m flake8 cubids`. Black is used for code formatting and can be run with `pipx run black`.