xl-cli-tools

CLI tools for viewing and editing Excel files
Log | Files | Refs | README | LICENSE

commit aaf336eac5e3be90a79bb4cc70921107490e3386
parent 1ba5e7e28248b0722bac048ccd2268e9579e78a2
Author: Erik Loualiche <eloualic@umn.edu>
Date:   Fri, 13 Mar 2026 20:20:49 -0500

release: add CI, license, install docs, smaller demo GIFs

- MIT license
- GitHub Actions release workflow (triggers on tags, builds ARM + x86 Mac)
- Pre-built binary install instructions in README
- Smaller demo GIFs (font 14, 1100x550)
- Cargo.toml metadata (description, license, repository, keywords)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

Diffstat:
A.github/workflows/release.yml | 79+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MCargo.lock | 2+-
MCargo.toml | 8+++++++-
ALICENSE | 21+++++++++++++++++++++
MREADME.md | 26++++++++++++++++++++++----
Mdemo/xlcat.gif | 0
Mdemo/xlcat.tape | 8++++----
Mdemo/xlset.gif | 0
Mdemo/xlset.tape | 8++++----
9 files changed, 138 insertions(+), 14 deletions(-)

diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml @@ -0,0 +1,79 @@ +name: Release + +on: + push: + tags: ["v*"] + +permissions: + contents: write + +jobs: + build: + strategy: + matrix: + include: + - target: aarch64-apple-darwin + os: macos-latest + suffix: aarch64-apple-darwin + - target: x86_64-apple-darwin + os: macos-13 + suffix: x86_64-apple-darwin + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 + + - uses: dtolnay/rust-toolchain@stable + with: + targets: ${{ matrix.target }} + + - name: Build release + run: cargo build --release --target ${{ matrix.target }} + + - name: Package binaries + run: | + mkdir -p dist + cp target/${{ matrix.target }}/release/xlcat dist/xlcat-${{ matrix.suffix }} + cp target/${{ matrix.target }}/release/xlset dist/xlset-${{ matrix.suffix }} + + - uses: actions/upload-artifact@v4 + with: + name: binaries-${{ matrix.suffix }} + path: dist/ + + release: + needs: build + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/download-artifact@v4 + with: + path: artifacts/ + + - name: Prepare release assets + run: | + mkdir -p release + + # ARM Mac + cp artifacts/binaries-aarch64-apple-darwin/xlcat-aarch64-apple-darwin release/ + cp artifacts/binaries-aarch64-apple-darwin/xlset-aarch64-apple-darwin release/ + + # x86 Mac + cp artifacts/binaries-x86_64-apple-darwin/xlcat-x86_64-apple-darwin release/ + cp artifacts/binaries-x86_64-apple-darwin/xlset-x86_64-apple-darwin release/ + + # Demo GIFs + cp demo/xlcat.gif release/ + cp demo/xlset.gif release/ + + # Make binaries executable + chmod +x release/xlcat-* release/xlset-* + + - name: Create GitHub Release + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + gh release create ${{ github.ref_name }} \ + --title "${{ github.ref_name }}" \ + --generate-notes \ + release/* diff --git a/Cargo.lock b/Cargo.lock @@ -2968,7 +2968,7 @@ dependencies = [ [[package]] name = "xlcat" -version = "0.2.0" +version = "0.2.1" dependencies = [ "anyhow", "assert_cmd", diff --git a/Cargo.toml b/Cargo.toml @@ -1,7 +1,13 @@ [package] name = "xlcat" -version = "0.2.0" +version = "0.2.1" edition = "2024" +description = "CLI tools for viewing and editing Excel files — designed for LLMs and Claude Code" +license = "MIT" +repository = "https://github.com/eloualiche/llm-excel" +keywords = ["excel", "xlsx", "cli", "llm"] +categories = ["command-line-utilities"] +exclude = ["demo/*.gif", "docs/superpowers/"] [lib] name = "xlcat" diff --git a/LICENSE b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Erik Loualiche + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md @@ -1,5 +1,7 @@ # llm-excel +[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) + Command-line tools for viewing and editing Excel files, designed for use with LLMs and Claude Code. Two binaries, no runtime dependencies: @@ -17,9 +19,26 @@ Two binaries, no runtime dependencies: ## Install +### Pre-built binaries (macOS) + +Download from [Releases](https://github.com/eloualiche/llm-excel/releases): + +```bash +# Apple Silicon +curl -L https://github.com/eloualiche/llm-excel/releases/latest/download/xlcat-aarch64-apple-darwin -o ~/.local/bin/xlcat +curl -L https://github.com/eloualiche/llm-excel/releases/latest/download/xlset-aarch64-apple-darwin -o ~/.local/bin/xlset +chmod +x ~/.local/bin/xlcat ~/.local/bin/xlset + +# Intel Mac +curl -L https://github.com/eloualiche/llm-excel/releases/latest/download/xlcat-x86_64-apple-darwin -o ~/.local/bin/xlcat +curl -L https://github.com/eloualiche/llm-excel/releases/latest/download/xlset-x86_64-apple-darwin -o ~/.local/bin/xlset +chmod +x ~/.local/bin/xlcat ~/.local/bin/xlset +``` + +### From source + ```bash -cargo build --release -cp target/release/xlcat target/release/xlset ~/.local/bin/ +cargo install --path . ``` Requires Rust 1.85+. @@ -72,10 +91,9 @@ xlcat report.xlsx --csv --head 100 > subset.csv | units | Int | | date | region | amount | units | -|---|---|---|---| +|------------|--------|---------|-------| | 2024-01-01 | East | 1234.56 | 100 | | 2024-01-02 | West | 987.00 | 75 | -... ... (1190 rows omitted) ... | 2024-12-30 | East | 1100.00 | 92 | | 2024-12-31 | West | 1250.75 | 110 | diff --git a/demo/xlcat.gif b/demo/xlcat.gif Binary files differ. diff --git a/demo/xlcat.tape b/demo/xlcat.tape @@ -7,10 +7,10 @@ Output demo/xlcat.gif -Set FontSize 18 -Set Width 1400 -Set Height 700 -Set Padding 20 +Set FontSize 14 +Set Width 1100 +Set Height 550 +Set Padding 15 Set Theme "GruvboxDarkHard" Set TypingSpeed 80ms diff --git a/demo/xlset.gif b/demo/xlset.gif Binary files differ. diff --git a/demo/xlset.tape b/demo/xlset.tape @@ -7,10 +7,10 @@ Output demo/xlset.gif -Set FontSize 18 -Set Width 1400 -Set Height 700 -Set Padding 20 +Set FontSize 14 +Set Width 1100 +Set Height 550 +Set Padding 15 Set Theme "GruvboxDarkHard" Set TypingSpeed 80ms