Skip to content
[tools]
rust = { version = "1.97.1", components = "rustfmt,clippy" }

[env]
RUST_BACKTRACE = "1"

[tasks.build]
description = "Build the project"
run = "cargo build"

[tasks.run]
description = "Run the project"
run = "cargo run"

[tasks.fmt]
description = "Format the code and apply clippy fixes"
run = [
    "cargo clippy --fix --all-targets --all-features --allow-dirty --allow-staged",
    "cargo fmt --all",
]

[tasks.fmt-check]
description = "Check code formatting"
run = "cargo fmt --all -- --check"

[tasks.test]
description = "Run the test suite"
run = "cargo test --all-features"

[tasks.lint]
description = "Run clippy with pedantic lints"
run = "cargo clippy --all-targets --all-features -- -W clippy::pedantic -D warnings"

[tasks.verify]
description = "Run all checks: format, lint, and test"
depends = ["fmt-check", "lint", "test"]

[tasks.changelog]
description = "Generate a changelog for this repo (root commit → HEAD)"
env = { ERIS_AI = "opencode run" }
run = 'cargo run --quiet -- changelog "$(git rev-list --max-parents=0 HEAD | tail -1)" HEAD'

[tasks.install]
description = "Install the cli tool"
env = { ERIS_AI = "opencode run" }
run = "cargo install --path ."