Metadata-Version: 2.5
Name: byte-bot
Version: 0.1.1
Summary: Local dashboard for monitoring coding agents with optional Telegram status
Project-URL: Homepage, https://github.com/erajtob/byte-bot
Project-URL: Source, https://github.com/erajtob/byte-bot
Project-URL: Issues, https://github.com/erajtob/byte-bot/issues
Project-URL: Security, https://github.com/erajtob/byte-bot/security
Author-email: MD Raqibul Islam <hello@eraj.dev>
License: MIT
License-File: LICENSE
Requires-Python: >=3.12
Requires-Dist: textual<9,>=8.2.8
Description-Content-Type: text/markdown

<p align="center">
  <img src="docs/assets/byte-wordmark.svg" alt="byte-bot wordmark" width="760">
</p>

# byte-bot

**See what your coding agents are doing — and know when they need you.**

Byte is a small, local dashboard for coding agents. It watches supported agents
without controlling them, gives you one terminal view, and can optionally send the same
status to a private Telegram chat.

<p align="center">
  <img src="docs/assets/dashboard-demo.svg" alt="Synthetic byte-bot dashboard activity demo" width="1000">
</p>

*The dashboard above uses synthetic demo data.*

## Install

```bash
curl -fsSL https://raw.githubusercontent.com/erajtob/byte-bot/main/install.sh | sh
```

## Run

```bash
byte-bot
```

On first launch, choose the demo or follow the guided setup for your machine.

Already installed?

```bash
byte-bot update
```

**Beta status:** Linux-first. macOS has a foreground path but is not Beta-verified yet;
Windows is not Beta-supported yet.

## What you can see

- active supported agent sessions, grouped by project when Byte can prove the workspace;
- a short current-activity line such as reading files, editing, running a command, or thinking;
- model and usage information when the source provides it;
- permission or input blockers that need you;
- whether status is fresh or stale, and when a source could not be read.

Byte does not store or display private chain-of-thought, prompt bodies, command output,
or raw tool arguments as status.

## Telegram (optional)

<p align="center">
  <img src="docs/assets/telegram-preview.svg" alt="Synthetic byte-bot Telegram preview" width="760">
</p>

Pair Byte with one private Telegram chat to check status away from the terminal and receive
quiet notifications when an agent needs attention.

Telegram does **not** become a shell. It cannot change configured commands, start agents,
control Docker or sudo, browse the filesystem, or turn chat text into command input.

## Supported today

| Source | What Byte currently supports |
| --- | --- |
| OpenCode | Active sessions, projects, model/usage, current activity, and permission/input waits |
| Codex CLI 0.155.1 | Passive observation of an existing `exec --json` capture |
| Structured project sources | Status and events provided by a project adapter |
| Local status commands | Exact read-only commands you configure, with timeouts |

OpenCode is not pinned to one release number. Byte checks the small set of data it
relies on; if that data becomes incompatible, Byte marks the source degraded instead
of guessing.

## Read-only by design

byte-bot v0.1 only observes:

- Telegram cannot run arbitrary commands or control your agents;
- Byte only runs the exact local status commands you configure, with timeouts;
- there is no hosted Byte account; optional Telegram uses outbound connections only.

For the technical details, read [Security](SECURITY.md),
[How it works](docs/how-it-works.md), and [Compatibility](docs/compatibility.md).

## More

- [Install, update, and remove](docs/install.md)
- [Setup and configuration](docs/install.md#first-launch)
- [Support and troubleshooting](docs/support.md)
- [How it works](docs/how-it-works.md)
- [Contributing](CONTRIBUTING.md)

byte-bot stays project-agnostic and does not require any particular workload.

## License

[MIT](LICENSE).
