| Age | Commit message (Collapse) | Author |
|
Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
Claude Code's prompt input field does not support vim commands for
clearing. The previous sequence 'Escape gg C-v G d i' resulted in
literal text 'gGdijo' appearing in the prompt instead of clearing it.
Changed to 'C-a C-k' (Emacs/readline style):
- C-a: Move cursor to start of line
- C-k: Kill (delete) from cursor to end of line
Also added 150ms delay after Escape key in sendClearSequence to ensure
mode transitions complete before subsequent keys are sent (though Claude
uses readline, this helps other potential vim-based agents).
Changes:
- internal/tmuxedit/claude_agent.go: clearKeys "C-a C-k" instead of vim
- internal/tmuxedit/claude_agent_test.go: Update test expectations
- internal/tmuxedit/agentutil.go: Add time import and Escape delay
- docs/usage.md: Update claude clear method documentation
- docs/tmux.md: Clarify claude uses readline not vim
- config.toml.example: Update claude description
Integration tested:
- Extracted: "final verification test"
- Sent: "FINAL REPLACED TEXT NO VIM COMMANDS"
- Result: Clean replacement with NO vim command artifacts
- All unit tests pass (67/67)
- Coverage: 80.9%
Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
Amp CLI runs in TUI mode with box-drawing UI (│ text │) similar to
Cursor, not shell-style (> prompt). Updated prompt pattern from
`(?m)>\s*(.+)$` to `(?m)│\s*(.+?)\s*│\s*$` to correctly extract
text from amp's box UI.
Changes:
- internal/tmuxedit/config_agent.go: Update amp promptPat to box pattern
- internal/tmuxedit/config_agent_test.go: Update test to use box format
- docs/usage.md: Document detection order and clear methods for all agents
- docs/tmux.md: Clarify input mode handling (Vim vs Emacs/readline)
- config.toml.example: Add detailed agent descriptions and patterns
- prompts/tmux-edit-integration-tests.md: Add test status, mock editor best practices
Integration tests verified:
- Amp detection: amp/sourcegraph keywords
- Prompt extraction: "hello world test" correctly captured
- End-to-end workflow: text modification and sending works
- Multi-line support: all lines delivered correctly
- All unit tests pass (67/67)
- Coverage: 80.9% (meets requirement)
- Cursor and Claude implementations unchanged
Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
Replace monolithic AgentConfig struct with an Agent interface backed by
baseAgent defaults and separate implementations for cursor (box-drawing
extraction, bulk backspace clearing) and claude (section-scoped extraction
with continuation lines, vim clearing). Simple agents (amp, aider) and
user-defined agents use configAgent with baseAgent defaults.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
|
Include demo screenshots from the original blog post showing the popup
editor overlay and the result after text is sent back to the agent.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
|
Update README, build guide, configuration guide, usage guide, and tmux
guide with hexai-tmux-edit popup editor documentation including supported
agents, keybinding setup, flags, workflow, and configuration examples.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
|
to 80%
Introduce support for a .hexaiconfig.toml file at the git repository root
that selectively overrides the global config. Precedence order:
defaults → global config → project config → env vars.
Also lower the coverage threshold from 85% to 80%.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
|
|
|
|
|
Update coverage.out and coverage.html to reflect the current codebase
without GitHub Copilot files. This eliminates the "no such file or
directory" error when running mage install.
Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
Remove all GitHub Copilot integration from the codebase to streamline
the supported provider set to OpenAI, OpenRouter, Anthropic, and Ollama.
Changes:
- Delete core Copilot implementation (copilot.go) and all related tests
- Remove Copilot configuration fields from App struct and Config
- Remove Copilot from provider factory and API key handling
- Update all test files to replace Copilot references with other providers
- Remove Copilot documentation from README, configuration guide, and examples
- Remove Copilot section from config.toml.example
All tests pass successfully after removal.
Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
Local LLMs (LM Studio, Ollama, etc.) often need more than the default
30-second timeout. Added request_timeout config option (in seconds)
to [general] section and HEXAI_REQUEST_TIMEOUT env var.
Original constructor signatures preserved via *WithTimeout variants,
so no test changes required.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cache; width mitigation (narrow/maxlen); configurable [stats] window_minutes; robust coverage parsing; docs update\n\n- Add internal/stats with windowed event cache + flock + atomic writes\n- Wire stats into LSP/CLI/Tmux Action; tmux shows Σ@window with per-model tail\n- HEXAI_TMUX_STATUS_NARROW and HEXAI_TMUX_STATUS_MAXLEN for width control\n- Add [stats] window_minutes to config and apply on startup\n- Improve Magefile coverage handling; add tests to lift coverage >85%\n- Update docs/tmux.md and config example
|
|
|
|
|
|
|
|
|
|
LSP/CLI/TUI; theme support via HEXAI_TMUX_STATUS_THEME and HEXAI_TMUX_STATUS_FG/BG; docs: update tmux options and add Helix+tmux quickstart
|
|
|
|
|
|
seam client in CLI for tests
|
|
simplify entries to config.toml.example
|
|
|
|
tmux-only flow; update docs and Magefile
|
|
initialized and testutil fixtures
|
|
|
|
internal/hexaiaction; move tests; update Magefile and docs
|
|
|
|
flags to read from file and write to file\n- Refactor IO open into helper for testability\n- Add CLI integration-style test for IO\n- Update README and docs/usage.md with examples\n- Update docs/testing.md with instructions
|