RepoMicrosoftMicrosoftpublished Aug 27, 2026seen 1d

microsoft/amplifier-smart-tool-tmux

Python

Open original ↗

Captured source

source ↗

microsoft/amplifier-smart-tool-tmux

Description: Tmux smart tool powered by Amplifier Agent

Language: Python

License: MIT

Stars: 0

Forks: 1

Open issues: 1

Created: 2026-08-27T02:59:40Z

Pushed: 2026-08-27T04:53:56Z

Default branch: main

Fork: no

Archived: no

README:

tmux-fleet

A smart tool for tmux fleets: one library, one thin tmux-fleet CLI that tells you what is happening across every tmux session on a machine — which are parked at a prompt, which finished and how, which need a human — and, only under explicit per-invocation confirmation, types into one or starts one.

Deterministic paths (socket, sessions, attention, read, send, create, doctor, exit-code) run with nothing configured. Smart paths (triage, interpret) bring model-backed judgment, executed through amplifier-agent.

This repo is the first reference implementation of the amplifier smart-tools spec. See docs/VISION.md and contracts/cli.v1.md for the governing design.

Install

uv tool install git+

Use

tmux-fleet --help # full, agent-facing listing (names the model-backed verbs)
tmux-fleet socket # which socket am I reading, and on whose authority
tmux-fleet sessions # every session on the resolved socket, with slivers
tmux-fleet attention # triage ORDER: which sessions plausibly want a human
tmux-fleet read # one session's scrollback, with an honest completeness bound
tmux-fleet doctor # preflight: tmux present, socket resolvable/writable
tmux-fleet exit-code # tmux-native exit status of a finished session
tmux-fleet triage # [model-backed] fleet-wide: what needs attention and why
tmux-fleet interpret # [model-backed] what this session's state/output means
tmux-fleet send --text 'echo hi' --submit --confirmed # fenced write
tmux-fleet create --confirmed # fenced create

Every response is one JSON document on stdout. Failures are a JSON error envelope ({"error": {"code", "message", "remedy"}}) on stdout with a non-zero exit; diagnostics go to stderr. The write verbs refuse without --confirmed. There is deliberately no verb that kills or renames a session.

Library

Every capability is in the library; the CLI is a thin adapter.

import asyncio
from tmux_fleet import list_sessions, triage, manifest

asyncio.run(list_sessions())
manifest() # structured manifest, read from the copy built into the tool

Contributing

> [!NOTE] > This project is not currently accepting external contributions, but we're actively working toward opening this up. We value community input and look forward to collaborating in the future. For now, feel free to fork and experiment!

Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit Contributor License Agreements.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

Excerpt shown — open the source for the full document.

Notability

notability 3.0/10

routine repo, no traction evidence