block / block/buzz

[Proposal] Add `--format table` output option to `buzz-cli`

Open
#2,672 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
32.7k
Forks
4.3k
Avg merge
1d 13h
Merged PRs (30d)
253

Description

### Summary

Currently, `buzz-cli` supports `--format compact` for agent-first JSON output. When human developers or operators use `buzz` directly in the terminal (e.g., `buzz channels list` or `buzz messages list`), reading JSON arrays can be cumbersome.

I would like to propose adding a `--format table` option to `buzz-cli` to render query outputs (channels, messages, users, etc.) in a human-friendly ASCII/Unicode table view.

---

### Proposed Implementation & Library Selection

To format tables cleanly in terminal output, this feature would require adding a dedicated table formatting crate to `workspace.dependencies`.

I am considering two options and would love maintainer input on which one fits the repository best:

1. **`comfy-table`** (Recommended)
- Lightweight, fast, and handles dynamic terminal window width resizing and column wrapping cleanly.
- Clean API without heavy macro dependencies.
2. **`tabled`**
- Popular table formatting library in the Rust ecosystem with derive macro support.

---

### Key Questions for Maintainers

1. Would you welcome adding `--format table` to `buzz-cli` for human terminal usage?
2. Do you have a preference between `comfy-table` and `tabled` (or another preferred table formatting crate / minimal custom implementation) for the Buzz workspace?

If approved, I'd be happy to open a PR for this feature!

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.