MCPcopy Create free account

hub / github.com/codehamr/codehamr / types & classes

Types & classes43 in github.com/codehamr/codehamr

StructBudgetStatus
BudgetStatus is the client's latest snapshot of server accounting. Set is false until the first cloud response, so zero values never render. Remaining
internal/cloud/cloud.go:56
StructClient
internal/llm/llm.go:211
StructConfig
Config is the on-disk schema at .codehamr/config.yaml. Strict decoding: unknown top-level keys fail Bootstrap so typos and stale schemas surface immed
internal/config/config.go:83
StructErrUnreachable
ErrUnreachable wraps transport errors (refused, timeout, DNS miss) so the TUI can render a hint instead of a raw wrap.
internal/cloud/cloud.go:107
StructEvent
Event is what the TUI consumes. One event per stream update.
internal/llm/llm.go:123
TypeAliasEventKind
internal/llm/llm.go:145
StructFunctionDef
internal/llm/llm.go:41
StructMessage
internal/ctx/ctx.go:26
StructModel
internal/tui/model.go:92
StructPackResult
PackResult records what Pack kept: the packed messages.
internal/ctx/ctx.go:123
StructProbeResult
ProbeResult holds what Probe extracts from a one-shot hello request: the live context window and budget snapshot. The TUI shows the real window at act
internal/llm/llm.go:252
StructProfile
Profile is one named model endpoint in config.yaml; `/models` switches between them. ContextSize is omitempty so server-managed cloud profiles omit it
internal/config/config.go:73
TypeAliasRole
internal/ctx/ctx.go:11
StructTool
internal/llm/llm.go:36
StructToolCall
internal/ctx/ctx.go:20
StructargOption
argOption is one popover entry, used at command-level (one row per command) and argument-level (one row per accepted value for the active command).
internal/tui/slash.go:19
StructchatRequest
internal/llm/llm.go:74
StructchipContent
chipContent is the payload behind a chip, kept in store by id so the visible label can collapse while the real text survives for Value() and replay.
internal/tui/prompt.go:36
StructchipSpan
chipSpan marks the rune range [start, end) in the value holding a chip's label. Reconciled after any key event that can shift the value.
internal/tui/prompt.go:43
Structcommand
command is one row in the popover, --help, and the dispatch table. args, if non-nil, supplies the argument-level popover entries.
internal/tui/slash.go:27
StructfakeRelease
fakeRelease serves a goreleaser-style manifest plus one binary asset; tests plug its URL into the package vars via withReleaseURLs.
internal/update/update_test.go:20
StructgoreleaserConfig
goreleaserConfig is the slice of .goreleaser.yaml we assert against: the goos x goarch cross-product goreleaser builds a binary for.
internal/update/drift_test.go:27
StructheadTailBuffer
headTailBuffer is an io.Writer keeping the first bashOutputHead and the last bashOutputTail bytes written, discarding the middle. The tail is a fixed
internal/tools/bash.go:231
TypeAliasphase
phase is the turn state machine and single source of truth: idle = no turn; thinking = awaiting the model, no tokens yet; streaming = content flowing;
internal/tui/model.go:34
StructpingMsg
pingMsg carries a backend-reachability result. baseURL is the URL probed; Update drops the message when it no longer matches the live client's URL, el
internal/tui/model.go:350
StructplatformKey
platformKey is a comparable os/arch pair for set comparison.
internal/update/drift_test.go:23
StructprobeMsg
probeMsg carries the outcome of an activation-time Probe (hello-world chat): validates URL+model+key in one round trip and harvests the live context w
internal/tui/probe.go:23
StructpromptEntry
promptEntry is a frozen promptInput snapshot for history replay: displayed text plus the chip metadata needed to restore atomic-chip behaviour on ↑/↓.
internal/tui/prompt.go:50
StructpromptInput
promptInput wraps bubbles/textarea with an atomic-chip model. A large paste collapses into a single inline label [Pasted text +N lines] that acts as o
internal/tui/prompt.go:27
StructqueuedPrompt
queuedPrompt is a prompt the user committed while a turn was running, held until the turn ends and then auto-submitted. send is the chip-expanded text
internal/tui/model.go:87
StructquitArmResetMsg
quitArmResetMsg fires ~3s after Ctrl+C arms the quit: if not already quit or re-armed, clear the hint from the status bar.
internal/tui/model.go:357
StructresizeSettleMsg
internal/tui/model.go:337
StructstreamChunk
streamChunk is one OpenAI SSE frame. finish_reason is deliberately not decoded: readSSE dispatches accumulated tool calls at stream end, not on finish
internal/llm/llm.go:93
StructstreamClosedMsg
internal/tui/commands.go:24
StructstreamDelta
internal/llm/llm.go:111
StructstreamEventMsg
streamEventMsg and streamClosedMsg tag their originating channel so the model can drop events from a stream the current turn no longer owns. After Ctr
internal/tui/commands.go:19
StructstreamOptions
streamOptions: without include_usage, OpenAI-compatible servers omit the usage block in the SSE tail chunk and the per-turn token counter sits at 0.
internal/llm/llm.go:85
StructtoolCall
internal/llm/llm.go:60
StructtoolCallFunc
internal/llm/llm.go:69
StructtoolResultMsg
toolResultMsg carries one finished tool call back to Update, tagged with the turnCtx it was dispatched against. Update drops it when that ctx no longe
internal/tui/commands.go:33
StructtoolSlot
toolSlot accumulates one streamed tool call. OpenAI delivers `arguments` as JSON fragmented across chunks, each fragment invalid alone; we append raw
internal/llm/llm.go:589
TypeAliasturnOutcome
turnOutcome is how a finished turn ended, frozen into the status bar until the next submit. outcomeNone is the zero value (no turn has finished yet, o
internal/tui/model.go:60
StructwireMessage
wireMessage is the outbound OpenAI request shape; responses parse via streamChunk. Content has no omitempty: silent bash commands (e.g. heredoc write
internal/llm/llm.go:52