Skip to content

Latest commit

 

History

History
46 lines (33 loc) · 2.05 KB

CONTRIBUTING.md

File metadata and controls

46 lines (33 loc) · 2.05 KB

Contributing to fnox

Caution

AI replies to Discussions and Issues are restricted. Only use AI to reply to a thread if you created it, opened a PR that fixes it, or have already had a contribution, attributed to your GitHub account, merged into the default branch of fnox. Everyone else is not allowed to, including with lightly edited, reviewed, or disclosed model output. Doing this is an instant ban across all of jdx's projects. See Community Participation.

Read the contribution expectations before starting a substantial change. For repository conventions, see AGENTS.md.

Set up a checkout

mise install
mise run build

Development uses the debug build in target/debug. An activated mise shell puts the project tools on PATH.

Run the relevant checks

mise run test:cargo                 # Rust tests
mise run build                     # Build before Bats tests
mise run test:bats -- test/init.bats # One end-to-end test file
mise run test:bats                  # All Bats tests
mise run lint                      # Formatting and lint checks
mise run ci                        # Build, tests, and lint

Provider tests may require credentials or local services. See the test guide for setup and skip behavior.

Work on documentation

aube install
aube run docs:dev
aube run docs:build

The build checks internal links and social previews as well as rendering the site. See docs/README.md for layout, generated CLI pages, and visual checks. Markdown-only changes do not require the full Rust test suite.

mbx build cache

mise wraps cargo with mbx, so compiled work is shared across checkouts. mise run tasks and mise exec -- cargo … use the wrapper; plain cargo does too once mise is activated in your shell. Builds that set MBX_DISABLE=1, including CI, skip the cache.