Skip to content
hazyioPublic

About

Run commands and get notified while they run and when they finish. Desktop and chat notifications, plus hooks for AI coding agents like Claude Code, Codex, Gemini CLI and Cursor.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

43 Commits

Folders and files

Repository files navigation

Midway

Midway runs shell commands and can send periodic notifications while they run, followed by a completion notification. Running notifications are enabled by default and repeat every 15 seconds; completion notifications are sent for commands that run at least 10 seconds. Configure command_notifications in midway.yaml to change this behavior. Notifications can be sent to local desktop notifications and configured messaging services.

Quick start

Install Midway with Cargo:

cargo install midway-cli

Prebuilt releases are available for Linux x86_64, Windows x86_64, and Apple Silicon macOS (aarch64). On ARM64 Windows, ARM64 Linux, or Intel macOS (x86_64), install Rust and Cargo and use the command above to build Midway for your machine.

Create a configuration, then run a command through Midway:

midway init
midway run cargo build

To send a notification directly:

midway send-text --message "Build finished"

Documentation

See the Midway documentation for installation options, configuration, commands, and notification setup.

AI agent notifications

Use your coding agent's lifecycle hooks to call midway send-text when an agent finishes or needs approval. Guides for Claude Code, Codex CLI, GitHub Copilot, Gemini CLI, Antigravity CLI, OpenCode, and Cursor are in the docs.

Use --background in hooks so the notification still sends if the agent or hook process is interrupted.

Development

Install the stable Rust toolchain with the rustfmt and clippy components. On Linux, also install pkg-config and the OpenSSL development headers (on Ubuntu: sudo apt-get install pkg-config libssl-dev). Run this from the repository root to check formatting and Clippy rules before opening a pull request. CI also runs tests, release builds, and a package check.

bash scripts/check.sh

Roadmap

  • Handle log_lines_to_include in notify_after
  • Handle chained commands
  • Microsoft Teams
  • Google Chat
  • Mattermost and Rocket.Chat
  • Zulip
  • Matrix
  • Generic webhook

About

Run commands and get notified while they run and when they finish. Desktop and chat notifications, plus hooks for AI coding agents like Claude Code, Codex, Gemini CLI and Cursor.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Contributors

Languages