Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/codehamr/codehamr
/ types & classes
Types & classes
43 in github.com/codehamr/codehamr
⨍
Functions
622
◇
Types & classes
43
Struct
BudgetStatus
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
Struct
Client
internal/llm/llm.go:211
Struct
Config
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
Struct
ErrUnreachable
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
Struct
Event
Event is what the TUI consumes. One event per stream update.
internal/llm/llm.go:123
TypeAlias
EventKind
internal/llm/llm.go:145
Struct
FunctionDef
internal/llm/llm.go:41
Struct
Message
internal/ctx/ctx.go:26
Struct
Model
internal/tui/model.go:92
Struct
PackResult
PackResult records what Pack kept: the packed messages.
internal/ctx/ctx.go:123
Struct
ProbeResult
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
Struct
Profile
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
TypeAlias
Role
internal/ctx/ctx.go:11
Struct
Tool
internal/llm/llm.go:36
Struct
ToolCall
internal/ctx/ctx.go:20
Struct
argOption
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
Struct
chatRequest
internal/llm/llm.go:74
Struct
chipContent
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
Struct
chipSpan
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
Struct
command
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
Struct
fakeRelease
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
Struct
goreleaserConfig
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
Struct
headTailBuffer
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
TypeAlias
phase
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
Struct
pingMsg
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
Struct
platformKey
platformKey is a comparable os/arch pair for set comparison.
internal/update/drift_test.go:23
Struct
probeMsg
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
Struct
promptEntry
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
Struct
promptInput
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
Struct
queuedPrompt
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
Struct
quitArmResetMsg
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
Struct
resizeSettleMsg
internal/tui/model.go:337
Struct
streamChunk
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
Struct
streamClosedMsg
internal/tui/commands.go:24
Struct
streamDelta
internal/llm/llm.go:111
Struct
streamEventMsg
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
Struct
streamOptions
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
Struct
toolCall
internal/llm/llm.go:60
Struct
toolCallFunc
internal/llm/llm.go:69
Struct
toolResultMsg
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
Struct
toolSlot
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
TypeAlias
turnOutcome
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
Struct
wireMessage
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