Vibe.Tool.Output.Window (vibe v0.2.1)

Copy Markdown View Source

Reusable line/byte windows for large model-facing tool output.

Summary

Types

mode()

@type mode() :: :head | :tail

t()

@type t() :: %Vibe.Tool.Output.Window{
  full_output_path: String.t() | nil,
  limit_bytes: pos_integer(),
  limit_lines: pos_integer(),
  mode: mode(),
  output_bytes: non_neg_integer(),
  output_lines: non_neg_integer(),
  partial_line?: boolean(),
  text: String.t(),
  total_bytes: non_neg_integer(),
  total_lines: non_neg_integer(),
  truncated?: boolean()
}

Functions

build(text, opts \\ [])

@spec build(
  String.t(),
  keyword()
) :: t()

default_max_lines()

@spec default_max_lines() :: pos_integer()

notice(window)

@spec notice(t()) :: String.t()

text_with_notice(text, opts \\ [])

@spec text_with_notice(
  String.t(),
  keyword()
) :: String.t()