diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..d0bd243 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,49 @@ +name: CI + +on: + push: + branches: + - master + pull_request: + branches: + - master + +env: + CARGO_TERM_COLOR: always + +jobs: + check: + name: Check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + - run: cargo check --all-targets + + fmt: + name: Format + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + with: + components: rustfmt + - run: cargo fmt --all --check + + clippy: + name: Clippy + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + with: + components: clippy + - run: cargo clippy --all-targets --all-features -- -D warnings + + test: + name: Test + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + - run: cargo test --all-targets diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..fc4cea3 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,10 @@ +# Contributing + +Contributions welcome! Feel free to open issues or pull requests. + +## Branch naming + +- `feature/description` +- `fix/description` + +CI runs fmt, clippy, and tests on pull requests. diff --git a/README.md b/README.md index ba9cf74..f3277ae 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,12 @@ # claude-chill +[![CI](https://github.com/davidbeesley/claude-chill/actions/workflows/ci.yml/badge.svg)](https://github.com/davidbeesley/claude-chill/actions/workflows/ci.yml) +[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) +[![GitHub stars](https://img.shields.io/github/stars/davidbeesley/claude-chill)](https://github.com/davidbeesley/claude-chill/stargazers) +[![GitHub forks](https://img.shields.io/github/forks/davidbeesley/claude-chill)](https://github.com/davidbeesley/claude-chill/network) +![GitHub repo size](https://img.shields.io/github/repo-size/davidbeesley/claude-chill) +![Rust](https://img.shields.io/badge/rust-2024-orange) + A PTY proxy that tames Claude Code's massive terminal updates. ## The Problem @@ -76,6 +83,10 @@ Keys: `[a]`-`[z]`, `[f1]`-`[f12]`, `[pageup]`, `[pagedown]`, `[home]`, `[end]`, This tool was developed for personal convenience on Debian Linux. It works for me, but it hasn't been extensively tested across different terminals, operating systems, or edge cases. Don't use it to send anyone to space, perform surgery, or run critical infrastructure. If it breaks, you get to keep both pieces. +## Contributing + +See [CONTRIBUTING.md](CONTRIBUTING.md). + ## License MIT diff --git a/crates/claude-chill/src/cli.rs b/crates/claude-chill/src/cli.rs index cd94203..de531f1 100644 --- a/crates/claude-chill/src/cli.rs +++ b/crates/claude-chill/src/cli.rs @@ -23,11 +23,7 @@ use clap::Parser; Keys: [a]-[z], [f1]-[f12], [pageup], [enter], [space], etc." )] pub struct Cli { - #[arg( - help = "Command to run", - required = true, - value_name = "COMMAND" - )] + #[arg(help = "Command to run", required = true, value_name = "COMMAND")] pub command: String, #[arg(