Sign in
Join now
albedo
nonbinary.computer
/
Star
Starred
Star
0
Something went wrong. Try again.
Fork
0
Eye filled
Watch
Watching
Watch
small gleam coding and persistent agent daemon with a detachable cli and a canvas ui
forked from
okami.mom/albedo
Star
Starred
Star
0
Something went wrong. Try again.
Fork
0
Eye filled
Watch
Watching
Watch
Overview
Overview
Issues
Issues
Pulls
Pulls
Pipelines
Pipelines
albedo
/
cli
/
internal
/
tui
1 folder
·
125 files
at
density
nekomimi.pet
·
tui: drop the unit tests that drove screens against fakes; keep the benchmarks, the render-equivalence tests behind them, and the shot gallery
·
2w ago
45a16376
testdata
tui: agents, sessions, chat, context and tree keep what they are about at the in-between sizes
2w ago
agents_canvas.go
feat(api)!: migrate daemon and clients to protocol 3
1mo ago
agents_events.go
tui: tree and context inspector on listView, shared confirm for agent delete
1mo ago
agents_graph.go
tui: agents, sessions, chat, context and tree keep what they are about at the in-between sizes
2w ago
agents_operations.go
tui: tree and context inspector on listView, shared confirm for agent delete
1mo ago
agents_preview.go
feat(progress): reduce preview parsing from O(s*n^2) to O(n)
1mo ago
agents_render.go
tui: agents, sessions, chat, context and tree keep what they are about at the in-between sizes
2w ago
agents_subscription.go
feat(tui): show subagent tasks and progress in agent cards
1mo ago
agents_view.go
tui: cache frame pieces, render live replies block by block, rest when idle
3w ago
app_chat.go
sessions: a family change no longer invalidates a configuration edit
3w ago
app_commands.go
tui: save a model's cap and compact window as you set them
2w ago
app_login.go
feat(api)!: migrate daemon and clients to protocol 3
1mo ago
app_messages.go
tui: agents, sessions, chat, context and tree keep what they are about at the in-between sizes
2w ago
app_navigation.go
tui: timers are injected into the models, and the e2e driver delivers them at once instead of sleeping through them
2w ago
app_preferences.go
tui: agents, sessions, chat, context and tree keep what they are about at the in-between sizes
2w ago
app_session_facts.go
tui: keep the root's session listing instead of copies, build picker rows when shown
3w ago
app_sessions.go
tui: timers are injected into the models, and the e2e driver delivers them at once instead of sleeping through them
2w ago
app_view.go
tui: cache frame pieces, render live replies block by block, rest when idle
3w ago
app.go
tui: timers are injected into the models, and the e2e driver delivers them at once instead of sleeping through them
2w ago
artifact.go
tui: add copy button to artifact open rows
2w ago
attachments.go
feat: multiple images, collapsed pastes, and an attachment strip in the prompt
1mo ago
bootstrap.go
perf(tui): reuse prepared startup data
1mo ago
bounded_history.go
tui: read tool title from daemon and drop client title parsing
2w ago
burst.go
tui: read tool title from daemon and drop client title parsing
2w ago
capability_pages.go
tui: a dagger marks session overrides on /extensions and the caps pages; /work dims resolved rows, /quota aligns its last column
2w ago
cards.go
cli: albedo web serves artifact pages on /frame, and the tui opens them from a row under the burst
3w ago
chat_direnv.go
direnv: follow direnv's own allow list instead of an extension; run() loads what it allows, the tui offers direnv allow for a blocked .envrc
2w ago
chat_focus.go
tui: the status read itself refuses a chat with no client, so a page change before any session opens cannot panic either
3w ago
chat_footer.go
tui: cache frame pieces, render live replies block by block, rest when idle
3w ago
chat_history.go
tui: cache frame pieces, render live replies block by block, rest when idle
3w ago
chat_input.go
tui: add copy button to artifact open rows
2w ago
chat_layout.go
direnv: load a folder's .envrc into run() jobs once the person says y, asked above the composer
2w ago
chat_messages.go
rewind: /tree cuts a session back to before a user message and archives the rest, with an optional summary; /fork keeps the branch
4w ago
chat_operations.go
direnv: follow direnv's own allow list instead of an extension; run() loads what it allows, the tui offers direnv allow for a blocked .envrc
2w ago
chat_stream.go
tui: cache frame pieces, render live replies block by block, rest when idle
3w ago
chat_subscription.go
direnv: load a folder's .envrc into run() jobs once the person says y, asked above the composer
2w ago
chat_view.go
direnv: load a folder's .envrc into run() jobs once the person says y, asked above the composer
2w ago
chat.go
tui: add copy button to artifact open rows
2w ago
chips.go
tui: pointer app model, shared styles, reused glamour renderers, own transcript pane, reuse rows across older pages, gogc 50
1mo ago
chroma_lookup_test.go
tui: build chroma lexers and styles on first use through a patched chroma
3w ago
chroma_patch_test.go
tui: build chroma lexers and styles on first use through a patched chroma
3w ago
clipboard_terminal.go
tui: probe the terminal for kitty clipboard support before pasting an image
1mo ago
clipboard.go
fix(tui): paste clipboard images over ssh with OSC 5522
1mo ago
commands.go
Merge main into discord-bots
3w ago
config_form.go
add /config command to allow extensions to expose settings
3w ago
config_page.go
tui: /config lists one edit key
2w ago
confirm.go
tui: listView, confirm and one fuzzy matcher for list screens to share
1mo ago
context_inspector.go
tui: agents, sessions, chat, context and tree keep what they are about at the in-between sizes
2w ago
discord_form.go
discord: remove automated bot creation
3w ago
discord_page.go
discord: remove automated bot creation
3w ago
discord_render.go
tui: errors wrap above the keys, group headings keep their gap, and pane facts break paths after a slash
2w ago
editor.go
tui: ctrl-click a path in the transcript to open it in an editor
1mo ago
effort_selector.go
tui: pointer app model, shared styles, reused glamour renderers, own transcript pane, reuse rows across older pages, gogc 50
1mo ago
extension_picker.go
tui: a dagger marks session overrides on /extensions and the caps pages; /work dims resolved rows, /quota aligns its last column
2w ago
fixtures_test.go
tui: drop the unit tests that drove screens against fakes; keep the benchmarks, the render-equivalence tests behind them, and the shot gallery
2w ago
folder_picker_view.go
tui: /folders shows a failed listing as an error and drops the keys it cannot use
2w ago
folder_picker.go
tui: timers are injected into the models, and the e2e driver delivers them at once instead of sleeping through them
2w ago
folder_query.go
tui, web: unify fuzzy search ranking and share search card across pickers
2w ago
folder_requests.go
tui: timers are injected into the models, and the e2e driver delivers them at once instead of sleeping through them
2w ago
form.go
tui: model, quota, caps, config and login wrap their panes and keep their keys at the in-between sizes
2w ago
frame_cache_test.go
tui: cache frame pieces, render live replies block by block, rest when idle
3w ago
frame.go
tui: errors wrap above the keys, group headings keep their gap, and pane facts break paths after a slash
2w ago
host_auth.go
feat(api)!: migrate daemon and clients to protocol 3
1mo ago
ink_other.go
fix(tui): report terminal restoration failures during color detection
1mo ago
ink_unix.go
fix(tui): report terminal restoration failures during color detection
1mo ago
ink.go
tui: one delimiter table for math, bytes.Cut over hand scans, and the fork's IndentWriter for list items
1mo ago
list_view.go
tui: errors wrap above the keys, group headings keep their gap, and pane facts break paths after a slash
2w ago
live_rows_test.go
tui: cache frame pieces, render live replies block by block, rest when idle
3w ago
location.go
tui: show remote paths relative to the host's home, as scp reads them
1mo ago
login_accounts.go
providers: opt-in account rotation with api keys as accounts; fold alibaba into openai
2w ago
login_messages.go
feat(api)!: migrate daemon and clients to protocol 3
1mo ago
login_pick.go
tui: /login makes any number of named profiles per provider, edits a profile's account with ctrl+e and renames it with ctrl+r
2w ago
login_profile.go
providers: opt-in account rotation with api keys as accounts; fold alibaba into openai
2w ago
login_provider.go
feat(bedrock): add Converse, model reasoning and guarded transport
2w ago
login_view.go
providers: opt-in account rotation with api keys as accounts; fold alibaba into openai
2w ago
login.go
fix(cli): show provider chooser on first login
2w ago
markdown.go
tui: agents, sessions, chat, context and tree keep what they are about at the in-between sizes
2w ago
math.go
tui: one delimiter table for math, bytes.Cut over hand scans, and the fork's IndentWriter for list items
1mo ago
mcp_form.go
tui: model, quota, caps, config and login wrap their panes and keep their keys at the in-between sizes
2w ago
model_picker_view.go
tui: model, quota, caps, config and login wrap their panes and keep their keys at the in-between sizes
2w ago
model_picker.go
tui: save a model's cap and compact window as you set them
2w ago
model_search.go
search: preserve unicode matches and simplify both clients
2w ago
moods.go
ssh: say when a probe is copying the kernel to a host, in the picker and the chat
1mo ago
notice.go
refactor(tui): replace pick helpers with explicit branches
1mo ago
operation_error.go
sessions: a family change no longer invalidates a configuration edit
3w ago
page_render.go
tui: a dagger marks session overrides on /extensions and the caps pages; /work dims resolved rows, /quota aligns its last column
2w ago
page_view.go
tui: keep labels, group headings and the footer in place on every list screen
2w ago
page.go
tui: delete the old page helpers and inkWrap that no screen uses
1mo ago
perf_bench_test.go
tui: keep the root's session listing instead of copies, build picker rows when shown
3w ago
perf_harness_test.go
tui: benchmark suite and live-session fixture capture
3w ago
picker.go
tui, web: unify fuzzy search ranking and share search card across pickers
2w ago
quota_view.go
tui: a dagger marks session overrides on /extensions and the caps pages; /work dims resolved rows, /quota aligns its last column
2w ago
quota.go
tui: replace the generic /quota page with a screen of latest limits, bars and per-limit trails
1mo ago
rename.go
feat(api)!: migrate daemon and clients to protocol 3
1mo ago
rowactions.go
tui: add copy button to artifact open rows
2w ago
selection.go
fix macos terminal.app rendering
1mo ago
session_choice.go
tui: folders, discord and webhooks keep names, previews and errors whole at 100x24 and 80x24
2w ago
session_viewer_view.go
tui: errors wrap above the keys, group headings keep their gap, and pane facts break paths after a slash
2w ago
session_viewer.go
tui: keep the root's session listing instead of copies, build picker rows when shown
3w ago
settled_cache_test.go
tui: keep the root's session listing instead of copies, build picker rows when shown
3w ago
shot_agents_test.go
tui: shot the missing chat, agents, sessions, context and tree states
2w ago
shot_caps_test.go
tui: shot the missing model, login, config, caps, extensions, quota and work states
2w ago
shot_chat_test.go
direnv: follow direnv's own allow list instead of an extension; run() loads what it allows, the tui offers direnv allow for a blocked .envrc
2w ago
shot_config_test.go
tui: shot the missing model, login, config, caps, extensions, quota and work states
2w ago
shot_context_test.go
tui: shot the missing chat, agents, sessions, context and tree states
2w ago
shot_discord_test.go
tui: shot the missing webhooks, discord and folders states
2w ago
shot_extensions_test.go
tui: shot the missing model, login, config, caps, extensions, quota and work states
2w ago
shot_folders_test.go
tui: shot the missing webhooks, discord and folders states
2w ago
shot_login_test.go
fix(cli): show provider chooser on first login
2w ago
shot_model_test.go
tui: shot the missing model, login, config, caps, extensions, quota and work states
2w ago
shot_pages_test.go
tui: shot the missing model, login, config, caps, extensions, quota and work states
2w ago
shot_quota_test.go
tui: shot the missing model, login, config, caps, extensions, quota and work states
2w ago
shot_sessions_test.go
search: preserve unicode matches and simplify both clients
2w ago
shot_test.go
tui: shot every state at 100x24 and 80x24 too
2w ago
shot_transcript_test.go
tui: add copy button to artifact open rows
2w ago
shot_tree_test.go
tui: shot the missing chat, agents, sessions, context and tree states
2w ago
shot_webhooks_test.go
tui: shot the missing webhooks, discord and folders states
2w ago
theme.go
tui: keep labels, group headings and the footer in place on every list screen
2w ago
thumbnails.go
feat: multiple images, collapsed pastes, and an attachment strip in the prompt
1mo ago
timers.go
tui: timers are injected into the models, and the e2e driver delivers them at once instead of sleeping through them
2w ago
transcript_state.go
session: commit what a stopped or broken turn streamed, and resume a broken stream from it
2w ago
transcript.go
tui: read tool title from daemon and drop client title parsing
2w ago
tree_picker.go
tui: agents, sessions, chat, context and tree keep what they are about at the in-between sizes
2w ago
webhook_form.go
tui: /discord page for bots, channels, DM whitelist and automatic creation
3w ago
webhooks_page.go
webhooks: serve signed deliveries on their own intake port
4w ago
webhooks_render.go
tui: errors wrap above the keys, group headings keep their gap, and pane facts break paths after a slash
2w ago