xlflow CLI

CLI for Excel VBA development: export, edit, lint, test and run macros from a terminal with a bundled agent skill.

  • 95 ★ on the repository
  • Last commit
CLI

Broad access

Why this level

  • The CLI runs VBA macros in Excel through COM and writes code into workbooks, and the skill lets an agent do it on its own.
All reasons and checks

harumiweb/xlflow

Install

Manual install

winget install HarumiWeb.Xlflow

Also `scoop bucket add harumiweb https://github.com/harumiWeb/scoop-bucket` and `scoop install xlflow`. Then `xlflow skill install`.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The CLI runs VBA macros in Excel through COM and writes code into workbooks, and the skill lets an agent do it on its own.

This is third-party code. Review the repository files before installing.

What it does

xlflow turns `.xlsm` workbooks, `.xlam` add-ins and `.xlsb` binary workbooks into a version-controlled project where VBA is exported, edited, linted, imported back, tested and run from the command line. Modules, classes, UserForms and document modules land in plain files, while worksheet formulas and defined names export to JSONL by region. For agents the commands return stable JSON, and a bundled skill installs with `xlflow skill install` or while creating a project via `xlflow new Book.xlsm --with-skill`. After that you state the task in plain language, for example `/xlflow` with a request to write Hello, world! into A1. A formatter, workbook diff, an LSP server and a VS Code extension are included.

Who it is for. Excel macro developers who want Git, tests and agent edits for their macros.

Good fit when

  • Macros live inside a workbook and nobody tracks their change history.
  • An agent must edit VBA and run tests and the linter itself.
  • You need to compare two workbook versions: values, formulas, sheets and code.
  • A macro has to run with typed arguments from a script.

Not a fit when

  • You need workbook operations without Excel, which require Microsoft Excel and COM.
  • Work happens on a Mac where Excel COM is unavailable.
  • Access to the VBA project object model is forbidden by company policy.

Example request

/xlflow Create a VBA macro that writes Hello, world! into cell A1 and run the tests.

Limitations

Workbook operations run on Windows through Microsoft Excel and COM with a .NET bridge, while commands without Excel such as `lint`, `fmt` and parts of `diff` work anywhere. For `pull`, `push` and `run` enable trust access to the VBA project object model in Excel, otherwise commands fail even with Excel installed. The Linux archive holds the WSL CLI only with no .NET bridge, and `go install` installs xlflow alone without `xlflow-excel-bridge.exe`. The bridge may be blocked by AppLocker, WDAC, Defender or antivirus, the files carry no Authenticode signature, so verify checksums.

How to disable. Remove the skill from the agent skills directory and the CLI through the package manager (`winget uninstall HarumiWeb.Xlflow`). Exported project files stay on disk.

FAQ

How do I install the agent skill?

With `xlflow skill install` or `xlflow new Book.xlsm --with-skill`. A skills manager can use `npx skills add harumiWeb/xlflow/internal/agentskill/templates --skill xlflow`.

What is needed to work with a workbook?

Windows, installed Microsoft Excel and trust access to the VBA project object model enabled. WSL works as a frontend while Excel runs in Windows.

How do I attach to an open workbook?

With `xlflow attach --active --json`: it validates the active workbook before you work with it.

What does the linter catch?

Missing `Option Explicit`, `Select` and `Activate`, broad error handling, implicit Variants, unqualified Excel objects, public module fields and interactive operations.

How do I export formulas?

With `xlflow formulas pull --src Book.xlsx --out formulas --json` or `xlflow pull --formulas --json` inside a project.

Discussion

No questions or reviews yet.

CLI tools
Russian stack

A linter with autofixes, an LSP, docs search and metadata scaffolding for 1C:Element, plus an MCP server and a VS Code extension on one engine

CLIExtended access3Repository stars

A plugin for Claude Code and Codex with xdo, xdel and xflow modes: a main agent plans, a coder builds, an evaluator checks.

PluginExtended access54Repository stars

A skill for Codex and Claude Code that turns ideas and bugs into working code through a writer, tester and reviewers

SkillBroad access125Repository stars

Three skills by one author for an agent on Windows: safe PowerShell, reading Bilibili videos and working with an open Unity Editor

SkillExtended access288Repository stars

CLI that turns an OpenAPI spec into an Agent Skill of markdown files an agent reads piece by piece, saving context.

CLIMinimal access342Repository stars
Official

Official TMS Software skills: agents write Delphi and .NET code with Aurelius ORM and FlexCel without invented APIs.

SkillMinimal access14Repository stars

README in short

The framework calls itself a harness around Excel VBA that makes projects operable from terminals, scripts and agents. Examples built by an agent from short requests show a QR generator, Tetris and a date picker in a UserForm.

README badge

Report a problem