Skip to content

Enhance agent and UI features with error handling, tools, and themes - #76

Merged
Nithwin merged 102 commits into
mainfrom
v2
Jul 26, 2026
Merged

Enhance agent and UI features with error handling, tools, and themes#76
Nithwin merged 102 commits into
mainfrom
v2

Conversation

@Nithwin

@Nithwin Nithwin commented Jul 26, 2026

Copy link
Copy Markdown
Owner

No description provided.

Nithwin and others added 30 commits July 26, 2026 12:59
fix(agent): implement exponential backoff retry in loop
fix(chat): implement graceful context cancellation on ctrl+c
fix(config): allow setting base URL for providers
feat(agent): implement concurrent tool execution
feat(providers): add deepseek, mistral, and kimi models
feat(providers): add latest 2026 models and new providers (Perplexity, Together)
feat(config): support saving and displaying custom models persistently
feat(tools): implement priority 1 essential tools
feat(tools): implement GitTool and PatchTool
feat(tools): tool categorization and permission levels
feat(persistence): implement SQLite session persistence
Nithwin and others added 21 commits July 26, 2026 17:45
feat(mcp): model context protocol integration
fix(gemini): resolve 400 error and implement MCP installer
feat(ui): add /apikey command and rename plan mode to chat
feat(mcp): auto-extract github token using gh cli
feat(mcp): implement native GitHub device flow OAuth
…bubble tea components

refactor(chat): split commands.go into modular domain files
fix(ui): prevent terminal blanking and refactor commands
fix(gemini): support array parameters in schema translation
…ck, scrolling

Bug 1 (Race Condition):
- Block AI message submission while m.loading is true
- Cancel previous in-flight context before starting new request
- Show feedback message when user tries to send during loading

Bug 2 (No Loading Feedback):
- Convert sendMessage to sendMessageCmd returning proper tea.Cmd
- Add tick-based animated spinner (⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏) while loading
- Show animated spinner in conversation view AND prompt label
- Reset spinner state on cancel/error/completion

Bug 3 (Broken Scrolling):
- Enable tea.WithMouseCellMotion() for mouse events
- Enable viewport.MouseWheelEnabled with 3-line delta
- Add explicit mouse wheel handlers for scroll up/down
- Add scroll percentage indicator when content overflows
- Smart auto-scroll: only auto-scroll to bottom during loading
  or when user was already at bottom (prevents viewport jumping)
- Account for scroll indicator and file picker in viewport sizing
…G infrastructure including text chunking and TF-IDF embedding modules.
@Nithwin Nithwin added bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request labels Jul 26, 2026
@Nithwin
Nithwin merged commit 9e222e7 into main Jul 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants