project-conventions

Applies coding conventions and deterministic reproducibility checks to research code in R, Python, Fortran, Quarto, and LaTeX.

Updated Sep 11, 2026
One-click install
npx skills add https://github.com/cameronbracken/waterology-research --skill project-conventions-cameronbracken
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: project-conventions
Source: https://github.com/cameronbracken/waterology-research/tree/main/skills/project-conventions
Command: npx skills add https://github.com/cameronbracken/waterology-research --skill project-conventions-cameronbracken

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Research projects in hydrology, energy systems, and extremes analysis often mix R, Python, Fortran, Quarto, and LaTeX without consistent style rules or reproducibility safeguards. This Skill loads the right conventions for each file type and runs deterministic pass/fail checks only on content that actually changed, keeping research code portable and reproducible without redundant validation runs. ## Core Features & Use Cases - File-type conventions: Loads matching rule files for .R, .py, .f90, .qmd, .tex, .stan, and native build files before editing, deferring to existing local style on conflict. - Selective constraint checks: Runs check-all.py against changed paths to enforce no absolute paths, deterministic random seeds, pixi R-task dollar-sign safety, and Plotly layout text separation. - Repository hygiene: Prevents committing OS debris, editor state, and secret-bearing files like .env or .Renviron, and keeps .gitignore coverage correct. - Use Case: While editing a Fortran simulation and a Quarto paper in the same project, the Skill applies implicit none and explicit-kind conventions to the Fortran edit, then runs the seed and absolute-path checks only on the files you changed. ## Quick Start Ask the assistant to review or edit your R, Python, Fortran, Quarto, or LaTeX research files using the project conventions and run the applicable reproducibility checks on the changed files.

Frequently Asked Questions about project-conventions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enforce coding conventions across R, Python, and Fortran in one project?▼

Load the matching convention file for each file type before editing: r-conventions.md for R, python-conventions.md for Python, and fortran-conventions.md for Fortran. Each rule defers to a file's existing local style when they conflict, so mixed-language projects stay consistent without reformatting legacy code.

How to run reproducibility checks only on changed files?▼

Run `python3 constraints/check-all.py` with the changed paths as arguments after your final edit. Do not rerun checks when content is unchanged, since a passing run, a durable validation record, or passing CI for the same commit already establishes that state.

What deterministic checks does the constraint suite include?▼

The suite includes no-absolute-paths, deterministic-seed, pixi-r-task-dollar, and plotly-text-overlap checks. Each exits non-zero on a real violation and prints offending lines, with documented escape-hatch comments reserved for genuine exceptions.

Can I add a new reproducibility check to the constraint suite?▼

Yes, drop a paired constraints/<name>.md rule file and constraints/<name>.py standalone script that takes target paths as argv, prints findings, and exits 0 or 1. check-all.py discovers the new pair automatically with no additional wiring.

When should constraints not be run?▼

Skip constraints for read-only work, explanations, plans, or changes to unrelated file types. Whole-project runs are reserved for constraint changes, full repository validation requests, or release preparation.