Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
2388fdf
fix search on EcaServerMessages
joaopluigi Dec 11, 2025
249b513
add EcaServerTools command
joaopluigi Dec 11, 2025
50f20ce
fix mcp display info
joaopluigi Dec 11, 2025
c4ee96a
fix tool call name when calling MCP tools
joaopluigi Dec 11, 2025
9fae909
add expandable tool call
joaopluigi Dec 12, 2025
1303a82
fix MCP display
joaopluigi Dec 12, 2025
765269b
add view diff feature
joaopluigi Dec 12, 2025
9e9e87a
update README.md
joaopluigi Dec 12, 2025
c20c6bc
make server messages be searchable in EcaServeMessages command
joaopluigi Dec 12, 2025
b7999b9
abstract picker
joaopluigi Dec 12, 2025
bb89c05
add thinking behavior
joaopluigi Dec 12, 2025
733ecb7
fix typo
joaopluigi Dec 12, 2025
cf9546e
update README.md
joaopluigi Dec 12, 2025
c48e4e1
add expanded config for diff and thinking
joaopluigi Dec 12, 2025
3fbe87f
small adjustments
joaopluigi Dec 12, 2025
71f37f8
fix some bugs
joaopluigi Dec 13, 2025
92862d8
change EcaUsage to EcaLabel and some configs update
joaopluigi Dec 16, 2025
afdb9f1
change EcaUsage to EcaLabel at highlights
joaopluigi Dec 16, 2025
b77b6aa
some config updates
joaopluigi Dec 16, 2025
a8bb8ec
fix replace_text bug
joaopluigi Dec 17, 2025
6727eae
add tests
joaopluigi Jan 6, 2026
d09ba81
tool call improvements
joaopluigi Jan 6, 2026
824e793
make stream tick be a queue instead
joaopluigi Jan 6, 2026
5f85aae
update doc to reflect the typing configuration
joaopluigi Jan 6, 2026
fa37bf7
update docs
joaopluigi Jan 6, 2026
ac4faa2
fix stream queue typing behavior
joaopluigi Jan 6, 2026
0abbf53
add preserve cursor behavior
joaopluigi Jan 7, 2026
75d58e9
address pr review comments
joaopluigi Jan 7, 2026
157af2a
add better auto scroll behavior
joaopluigi Jan 7, 2026
63c6193
add test workflow for more recent nvim versions
joaopluigi Jan 7, 2026
a307556
fix EcaFixTreeSitter command and update docs
joaopluigi Jan 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
neovim_version: ['v0.9.5', 'v0.10.0', 'nightly']
neovim_version: ['v0.9.5', 'v0.10.0', 'v0.11.4', 'v0.12.0', 'nightly']

steps:
- uses: actions/checkout@v4

- name: Install Neovim
uses: rhysd/action-setup-vim@v1
with:
neovim: true

- name: Run tests
run: make test
40 changes: 14 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,54 +1,42 @@
# 🤖 ECA Neovim Plugin
# ECA Neovim Plugin

<img width="800" alt="demo" src="https://github.com/user-attachments/assets/d8417f8d-54cd-45fe-88a4-5e8dc245d73d" />

A modern Neovim plugin that integrates [ECA (Editor Code Assistant)](https://eca.dev/) directly into the editor for an intuitive, streaming AI experience.
A lightweight Neovim plugin that embeds [ECA (Editor Code Assistant)](https://eca.dev/) directly into your editor. It is designed to be very simple, while remaining highly customizable.

## ✨ Features
- 🤖 Integrated AI chat in Neovim
- 📁 Add files, directories and selections as context
- 🚀 Automatic ECA server download and start
- 🎨 Clean sidebar UI with Markdown rendering
- ⌨️ Intuitive defaults (Ctrl+S to send, Enter for newline)
- 🔧 Highly configurable windows, keymaps and behavior
- 📊 Usage and status feedback
> Status: **Work in Progress** — we’re actively developing this plugin and would love feedback, bug reports, and contributions. If you’d like to help, check out [Development & contributing](./docs/development.md) or open an issue/PR.

## ⚡ Quick Start
1. Install via your plugin manager (see Installation below)
2. Restart Neovim
3. Run `:EcaChat` or press `<leader>ec`
4. Type your message and press `Ctrl+S`
5. Add context with `:EcaAddFile` or `:EcaAddSelection`
## Quick Start

> Requires Neovim >= 0.8.0, curl and unzip.

## 📚 Documentation
1. Install via your plugin manager (see Installation below)
2. Run `:EcaChat` or press `<leader>ec`
3. Type your message and press `Ctrl+S`


## Documentation
- [Installation and system requirements](./docs/installation.md)
- [Usage guide (commands, keymaps, tips)](./docs/usage.md)
- [Configuration reference and presets](./docs/configuration.md)
- [Troubleshooting common issues](./docs/troubleshooting.md)
- [Development & contributing](./docs/development.md)

## 🔗 Useful Links
## Useful Links
- [Official ECA Website](https://eca.dev/)
- [ECA Documentation](https://docs.eca.dev/)
- [VS Code Plugin](https://marketplace.visualstudio.com/items?itemName=editor-code-assistant.eca-vscode)
- [ECA GitHub](https://github.com/editor-code-assistant)

## 📄 License
## License
Apache License 2.0 — see [LICENSE](LICENSE) for details.

## 🙏 Acknowledgments
Inspired by:
- [avante.nvim](https://github.com/yetone/avante.nvim) — base structure and UI concepts
- [eca-vscode](https://github.com/editor-code-assistant/eca-vscode) — ECA server integration

---

<div align="center">

Made with ❤️ for the Neovim community
Made for the Neovim community

[Give a star if this plugin was useful!](https://github.com/editor-code-assistant/eca-nvim)
[Give a star if this plugin was useful](https://github.com/editor-code-assistant/eca-nvim)

</div>
Loading