bosshogg 2026.5.3

BossHogg — the agent-first PostHog CLI. Feature flags, HogQL queries, insights, dashboards, cohorts, persons, events, experiments, and more — from the terminal or from a Claude Code / Cursor / other coding-agent loop. Ships with a Claude Code skill (~200 idle tokens) that teaches models how to use it.
Documentation
//! Table rendering — comfy-table wrapper, UTF-8 borders, header bold when TTY.

use comfy_table::{Cell, Row, Table, presets::UTF8_FULL};

use crate::output::color;

/// Print a table with the given header cells and rows to stdout.
pub fn print(headers: &[&str], rows: &[Vec<String>]) {
    let mut t = Table::new();
    t.load_preset(UTF8_FULL);

    let header_cells: Vec<Cell> = headers.iter().map(|h| Cell::new(color::bold(h))).collect();
    t.set_header(Row::from(header_cells));

    for r in rows {
        t.add_row(Row::from(r.iter().map(Cell::new).collect::<Vec<_>>()));
    }

    println!("{t}");
}