* feat(mcp): resources support
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix: log
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix: mcp events
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* wip
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
---------
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
3a9d95d
fix(ui): use plain letters for lsp status (#2121)
Click to expand commit body
* fix(ui): use plain letters for lsp status
symbols might be wrongly interpreted by some terminals, so this might be a good idea
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* chore(ui): use consts for LSP symbols
* fix: missing icon usage
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
---------
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Co-authored-by: Christian Rocha <christian@rocha.is>
Carlos Alexandro Becker
and
Christian Rocha
created
f22a6f9
fix(ui): list: ensure the offset line does not go negative when scrolling up
Click to expand commit body
When scrolling up in the list, the offset line could become negative if
there was a gap between items. This change ensures that the offset line
is clamped to zero in such cases, preventing potential rendering issues.
This also adds a check to avoid unnecessary scrolling when already at
the bottom of the list. The calculation of item height has been
simplified by using strings.Count directly.
* fix(ui): width
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix: simplify
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
---------
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker
created
dd78d5d
chore(legal): @nickgrim has signed the CLA
* chore: update ui/agents.md
it should always do io inside a tea.cmd
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* Apply suggestion from @caarlos0
---------
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
needs https://github.com/charmbracelet/meta/pull/274
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker
created
15a729c
fix(ui): only scroll to selected item if item collapsed
Ayman Bagabas
created
3bda767
fix(ui): ensure we anchor the chat view to the bottom when toggling (#2117)
Click to expand commit body
an item at the bottom of the chat
When toggling an item in the chat, if that item is at the bottom of the
chat, we want to ensure that we stay anchored to the bottom. This
prevents a gap from appearing at the bottom of the chat when toggling an
item that is currently selected and at the bottom.
* fix(ui): context percentage updates
When the agent is performing tasks, the context percentage in the header
was not updating correctly. This commit fixes the issue by ensuring that
the header always draws the context details.
* fix(ui): always turn off compact mode when going to landing state
Ayman Bagabas
created
112fea8
fix(ui): cursor mispositioned when pasting large blocks of text in textarea (#2113)
Ayman Bagabas
created
6ff14c1
chore(legal): @zhiquanchi has signed the CLA
3c8be69
fix: fix pasting files on some terminal emulators (#2106)
Click to expand commit body
* Check `WT_SESSION` instead of `GOOS` for Windows Terminal.
* Be more strict on Windows Terminal: do not allow chars outside quotes
(prevents false positives).
* Some terminals just paste the literal paths (Rio as separate events,
Kitty separated by a line break). If it contains valid path(s) for
existing file(s), just use that.
* Workaround Rio on Windows that adds NULL chars to the string.
Andrey Nering
created
327e62f
fix(config): replace automatic JSON merging with explicit merge rules
Click to expand commit body
Replace go-jsons automatic merging with manual merge() methods that
define explicit behavior per field. This gives full control over how
config files are layered (global -> user -> project).
Merge behaviors:
- Booleans: true if any config has true (Disabled, Debug, Progress)
- Strings: later value replaces earlier (Model, InitializeAs)
- Slices (paths): appended, sorted, deduped (SkillsPaths, DisabledTools)
- Slices (args): later replaces entirely (LSP Args)
- Maps: merged, later values overwrite keys (Env, Headers)
- Timeouts: max value wins
- Pointers: later non-nil replaces earlier
Added merge() methods: Config, Options, MCPConfig, LSPConfig, TUIOptions,
Tools, ProviderConfig. Documented rules in AGENTS.md.
Assisted-by: Claude Opus 4.5 via Crush <crush@charm.land>
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
optional transparent mode.
this is enabled by default on apple terminal as it doesn't reset
properly.
refs #1140
refs #1137
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
7c5d6ca
chore(styles): make rename style definitions match UI language
Christian Rocha
created
d4b9b35
chore(style): add specific style for session rename placeholder
Christian Rocha
created
0979bd3
fix(styles): increase text contrast in active session deletion item
Christian Rocha
created
ea8c39f
feat: add configurable timeout for LSP initialization (#2075)
Click to expand commit body
* feat: add configurable timeout for LSP initialization
Add a timeout field to LSPConfig to allow users to customize
the initialization timeout for LSP servers. This is particularly
useful for slow-starting servers like kotlin-language-server that
may require more than the default 30 seconds to initialize.
Fixes #1865
* refactor: simplify timeout logic with cmp.Or
Simplified the timeout handling by using Go's cmp.Or() function instead
of manual conditional checks, reducing code from 5 lines to 1 line while
maintaining the same functionality.
huaiyuWangh
created
e6a4896
fix(ui): ensure `%d Queued` text is visible (#2096)
Scroll the chat view to ensure that an expanded message item is fully
visible after toggling its expanded state. This improves user experience
by keeping the context of the expanded content in view.
Ayman Bagabas
created
b7e814a
chore(legal): @acmacalister has signed the CLA
Charm
created
56769bb
fix(ui): fix permissions dialog rendering on small windows (#2093)
Click to expand commit body
* Ensure the viewport content is at least 3 cells tall, to always be able
to render at least 1 line of content + 1 top and 1 bottom margin.
* Render in fullscreen as soon as we don't have enough space to render
buttons without wrapping.
With auto discovery, the user configured lsps might be empty, but we
might still configure some LSPs. We need to check the proper places, as
well as refresh the tool list if LSPs are actually started.
This is an alternative implementation to #2079
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker
created
00bbf45
feat: add support for vercel provider (#2090)