Work with files in the editor
Open a project file in Kora to edit it, add it to the chat context, and review changes proposed by the agent.
Open a file
Section titled “Open a file”- Click any file in the File Explorer sidebar (toggle it with
Cmd+Shift+\). - The file opens in a new editor tab. Kora auto-detects the language and starts the matching language server.
- To add the open file to the chat, mention it with
@or drag the tab into the message box.
Supported languages
Section titled “Supported languages”LSP is configured for 27 languages. Servers marked auto install on first use into ~/.kora/lsp/<id>/bin; those marked manual need the binary already on your PATH (or a custom path set in LSP settings).
| Language | Server | Install |
|---|---|---|
| TypeScript / JavaScript | typescript-language-server |
auto |
| Python | pyright-langserver |
auto |
| Rust | rust-analyzer |
manual |
| JSON / JSONC | vscode-json-language-server |
auto |
| CSS / SCSS / Less | vscode-css-language-server |
auto |
| HTML | vscode-html-language-server |
auto |
| Go | gopls |
manual |
| C / C++ | clangd |
manual |
| Ruby | ruby-lsp |
manual |
| Java | jdtls |
manual |
| Markdown | vscode-markdown-language-server |
auto |
| YAML | yaml-language-server |
auto |
| Vue | vue-language-server |
auto |
| Svelte | svelteserver |
auto |
| Shell (bash/zsh) | bash-language-server |
auto |
| TOML | taplo |
auto |
| GraphQL | graphql-lsp |
auto |
| Dockerfile | docker-langserver |
auto |
| Tailwind CSS | tailwindcss-language-server |
auto |
| ESLint | vscode-eslint-language-server |
auto |
| Biome | biome |
auto |
| Kotlin | kotlin-language-server |
manual |
| Swift | sourcekit-lsp |
manual |
| Lua | lua-language-server |
manual |
| Zig | zls |
manual |
| Nix | nixd |
manual |
| PHP | intelephense |
auto |
Edit proposals
Section titled “Edit proposals”When the agent calls the editFile tool, Kora renders the change as a diff in the Diff Viewer:
- Each pending edit shows Accept and Reject buttons, plus a toggle between Inline and Side-by-side view.
- Resolved edits are tagged Accepted (green) or Rejected (red).
- The Diff Toolbar offers Accept All and Reject All when there are multiple pending changes.
- A chat-side inline preview shows added/removed line counts and a View full diff link.
Troubleshooting
Section titled “Troubleshooting”- LSP provides no diagnostics → confirm the file has a supported extension and wait a few seconds after opening; the server may still be initializing.
- “Automatic install is not configured” → the server needs manual setup. Install the binary from its official source, ensure it is on your
PATH, or set a custom path in LSP settings. - Language server crashes repeatedly → Kora restarts it once automatically. If it keeps crashing, check the binary under
~/.kora/lsp/<id>/binor fall back to a system-installed server on yourPATH. - Edits don’t show a diff → confirm the editor panel is open (
Cmd+E) and the file belongs to the active project’s folder.
See also: First launch for how files are organized in the workspace.