outfmt

package
v0.2.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 23, 2026 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Reset   = "\033[0m"
	Bold    = "\033[1m"
	Red     = "\033[31m"
	Green   = "\033[32m"
	Yellow  = "\033[33m"
	Blue    = "\033[34m"
	Magenta = "\033[35m"
	Cyan    = "\033[36m"
	Gray    = "\033[90m"
)

ANSI color codes

Variables

This section is empty.

Functions

func AgentHandlesEnabled added in v0.2.5

func AgentHandlesEnabled(ctx context.Context) bool

AgentHandlesEnabled reports whether handle tokens should be emitted.

func Colorize

func Colorize(text, color string, enabled bool) string

Colorize wraps text in ANSI color codes if colors are enabled

func FormatAgentChatID added in v0.2.3

func FormatAgentChatID(chatID string) string

func FormatAgentMessage added in v0.2.3

func FormatAgentMessage(msg AgentMessage) string

func FormatAgentMessageID added in v0.2.3

func FormatAgentMessageID(messageID string) string

func GetColor

func GetColor(ctx context.Context) string

func GetFormat

func GetFormat(ctx context.Context) string

func GetQuery

func GetQuery(ctx context.Context) string

func GetResultsOnly added in v0.2.12

func GetResultsOnly(ctx context.Context) bool

func GetTemplate added in v0.1.7

func GetTemplate(ctx context.Context) string

func GetTransform added in v0.2.14

func GetTransform(ctx context.Context) string

GetTransform returns the GJSON path expression from the context.

func IsTerminalWriter added in v0.2.14

func IsTerminalWriter(out io.Writer) bool

IsTerminalWriter reports whether the given writer is a terminal-backed file.

func OutputTo added in v0.1.7

func OutputTo(ctx context.Context, w io.Writer, data any, textFn func(io.Writer)) error

func OutputWithPager added in v0.2.14

func OutputWithPager(ctx context.Context, w io.Writer, data any, textFn func(io.Writer)) error

OutputWithPager works like OutputTo but routes output through a pager when the content exceeds the terminal height.

func OutputWithQueryTemplateTo added in v0.1.7

func OutputWithQueryTemplateTo(format, query, tmpl string, w io.Writer, data any, textFn func(io.Writer)) error

func OutputWithQueryTo added in v0.1.7

func OutputWithQueryTo(format, query string, w io.Writer, data any, textFn func(io.Writer)) error

func ResultsOnly added in v0.2.12

func ResultsOnly(data any) any

ResultsOnly strips common list envelopes (items/results/messages) and returns just the slice. If the input does not look like a supported envelope, it is returned unchanged.

func RunExplorer added in v0.2.14

func RunExplorer(w io.Writer, data any) error

RunExplorer launches the interactive JSON explorer TUI.

func ShouldColorizeWriter added in v0.1.7

func ShouldColorizeWriter(w io.Writer, mode string) bool

ShouldColorizeWriter returns true if output should be colorized for the writer.

func TerminalHeight added in v0.2.14

func TerminalHeight() int

TerminalHeight returns the height of the terminal attached to stdout, or 40 as a reasonable fallback.

func WithAgentHandles added in v0.2.5

func WithAgentHandles(ctx context.Context, enabled bool) context.Context

WithAgentHandles stores whether agent handle tokens should be emitted.

func WithColor

func WithColor(ctx context.Context, mode string) context.Context

func WithFormat

func WithFormat(ctx context.Context, format string) context.Context

func WithQuery

func WithQuery(ctx context.Context, query string) context.Context

func WithResultsOnly added in v0.2.12

func WithResultsOnly(ctx context.Context, enabled bool) context.Context

func WithTemplate added in v0.1.7

func WithTemplate(ctx context.Context, tmpl string) context.Context

func WithTransform added in v0.2.14

func WithTransform(ctx context.Context, t string) context.Context

WithTransform stores a GJSON path expression in the context.

func WriteAgentChats added in v0.2.1

func WriteAgentChats(w io.Writer, chats []AgentChat)

WriteAgentChats writes chats in agent-friendly format. Format: [chat:!id] Title (network) - N unread [group]

func WriteAgentHeader added in v0.2.3

func WriteAgentHeader(w io.Writer, chatID, title string)

func WriteAgentMessage added in v0.2.3

func WriteAgentMessage(w io.Writer, msg AgentMessage)

func WriteAgentMessages added in v0.2.1

func WriteAgentMessages(w io.Writer, chatID, title string, messages []AgentMessage)

WriteAgentMessages writes messages in agent-friendly format. Format: [chat:!id] Title header, then lines like: 10:23 Alice: Can you review the PR? [id:$msg1] 10:25 You: Sure, looking now [id:$msg2]

func WriteJSON

func WriteJSON(w io.Writer, data any) error

func WriteJSONLines added in v0.1.7

func WriteJSONLines(w io.Writer, data any, query string) error

func WriteJSONPretty

func WriteJSONPretty(w io.Writer, data any) error

func WriteJSONWithQuery

func WriteJSONWithQuery(w io.Writer, data any, queryStr string) error

func WriteJSONWithTransform added in v0.2.14

func WriteJSONWithTransform(w io.Writer, data any, expr string) error

WriteJSONWithTransform marshals data to JSON and applies a GJSON path expression, writing the matching result to w.

func WriteJSONWithTransformPretty added in v0.2.14

func WriteJSONWithTransformPretty(w io.Writer, data any, expr string) error

WriteJSONWithTransformPretty writes transform output using pretty-indented JSON.

func WriteTemplate added in v0.1.7

func WriteTemplate(w io.Writer, data any, tmplText string) error

Types

type AgentChat added in v0.2.1

type AgentChat struct {
	ID          string
	Title       string
	Network     string
	Type        string
	UnreadCount int
	Preview     string
	Handle      string
}

AgentChat is a simplified chat for agent output.

type AgentMessage added in v0.2.1

type AgentMessage struct {
	ID        string
	ChatID    string
	Timestamp time.Time
	Sender    string
	Text      string
	ReplyToID string
	Handle    string
}

AgentMessage is a simplified message for agent output.

type ColorMode

type ColorMode string

ColorMode represents color output setting

const (
	ColorAuto   ColorMode = "auto"
	ColorAlways ColorMode = "always"
	ColorNever  ColorMode = "never"
)

type PagerWriter added in v0.2.14

type PagerWriter struct {
	// contains filtered or unexported fields
}

PagerWriter buffers all written data and, on Close, either writes it directly to the underlying writer (if short or non-TTY) or pipes it through the user's $PAGER.

func (*PagerWriter) Close added in v0.2.14

func (p *PagerWriter) Close() error

func (*PagerWriter) Write added in v0.2.14

func (p *PagerWriter) Write(data []byte) (int, error)

type TableWriter

type TableWriter struct {
	// contains filtered or unexported fields
}

func NewTable added in v0.1.7

func NewTable(w io.Writer, headers []string, colorEnabled bool) *TableWriter

NewTable creates a TableWriter with optional colorized headers.

func NewTableWriter

func NewTableWriter(w io.Writer) *TableWriter

func (*TableWriter) Append

func (t *TableWriter) Append(row []string)

func (*TableWriter) Render

func (t *TableWriter) Render()

func (*TableWriter) SetHeader

func (t *TableWriter) SetHeader(headers []string)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL