Code Editor
Blyck’s code editor is built on the same Monaco engine as VS Code. LSP language intelligence, inline AI editing, code execution, DB link (SQL autocompletion), and SFTP remote editing are integrated right into your editing flow.
Opening & saving files
Section titled “Opening & saving files”Double-click in the file tree or in terminal output to open the editor. You can also create an Untitled file with the new-file button in the tree.
Size policy
Section titled “Size policy”| File size | Handling |
|---|---|
| ≤ 2MB | Opens in the Monaco editor |
| 2 – 32MB | Read-only viewer (tab shows [read-only]) |
| > 32MB | Prompts you to open with the OS default app |
Special formats
Section titled “Special formats”| Format | Behavior |
|---|---|
| Images (PNG·JPG·GIF·WebP·SVG, etc.) | Built-in image viewer |
| Built-in PDF viewer (up to 32MB) | |
Markdown (.md) | Toolbar Preview button toggles between rendered HTML ↔ edit mode |
| Office (xlsx·docx·pptx) | OS default app — remote files are auto-downloaded then launched |
Language intelligence (LSP)
Section titled “Language intelligence (LSP)”Monaco built-in — no install needed
Section titled “Monaco built-in — no install needed”TypeScript and JavaScript work right away with Monaco’s built-in analysis engine. No separate install or configuration.
External LSP servers — auto-installed
Section titled “External LSP servers — auto-installed”Python·Go·Rust·C·C++·C#·Lua·Bash·JSON·YAML and others use dedicated LSP servers. The first time you open a file in such a language, a “Download?” modal appears, and on approval it installs automatically in the background.
| Language | LSP server |
|---|---|
| Python | Pyright |
| Go | gopls |
| Rust | rust-analyzer |
| C / C++ | clangd |
| C# | csharp-ls |
| Lua | lua-language-server |
| Bash | bash-language-server |
| JSON / YAML | vscode-json-language-server / yaml-language-server |
Install progress is shown in the UI, and if a server is already on the system PATH it is used preferentially. Otherwise the binary matching your OS/architecture is fetched from npm or a GitHub release and stored inside the app.
Features provided
Section titled “Features provided”| Feature | Supported |
|---|---|
| Autocompletion (IntelliSense) | ✅ |
| Hover hints (type · signature) | ✅ |
| Diagnostics (red underlines for syntax/type errors) | ✅ |
| Function signature hints | ✅ |
| Bulk symbol rename | ✅ |
| Go to definition | ✅ (within the same file) |
Inline AI — Ctrl+I
Section titled “Inline AI — Ctrl+I”Cursor-style inline editing.
- Select code (whole file if none) and press
Ctrl+Ior the toolbar AI (Ctrl+I) button. - Type an instruction in the input box near the cursor — “add error handling”, “make it type-safe”.
Enterto send,Shift+Enterfor a newline,Escto cancel. You can also change the model (Claude/Codex) in the dropdown on the right of the input box. - Before sending, RAG context is searched automatically — it finds related code in the project and passes it to the AI (“Finding related code…” is shown, up to 4 chunks). The result follows the same patterns and conventions.
- It operates in one of two modes, depending on the first line of the response:
- MODE:EDIT — A selection shows an inline diff (green/red) + an apply/cancel toolbar; the whole file shows a side-by-side diff modal. On apply, it’s recorded in ChangeSet.
- MODE:ANSWER — Shown as an explanation/review answer popover with no code change.
Applied changes are recorded in the active AI session’s ChangeSet so you can revert them later.
Ctrl+I also works outside the editor — pressing it in a terminal makes the AI analyze the selected output, and in a DB result grid the selected cells are passed as context.
Code execution (▶ Run)
Section titled “Code execution (▶ Run)”The toolbar ▶ Run button appears only for files saved locally. While running it toggles to ■ Stop.
Automatic project type detection
Section titled “Automatic project type detection”| Marker file | Detected type |
|---|---|
package.json | Node.js |
go.mod | Go |
Cargo.toml | Rust |
*.csproj | .NET |
pyproject.toml / setup.py | Python / pytest |
Makefile | Make |
CMakeLists.txt | CMake |
| (single file) | Per-language script execution |
Output panel
Section titled “Output panel”- Shows the run command ($), standard output (white), and standard error (red) in real time (up to 5,000 lines).
- Problem Matcher — Parses errors in the
filename:linepattern and shows them as red markers in the editor. Clicking jumps straight to that line.
SQL autocompletion inside code (DB link)
Section titled “SQL autocompletion inside code (DB link)”When writing SQL literals in a code file, you can use schema-based autocompletion from an open DB connection.
- Select a connection in the DB dropdown on the right of the toolbar to link it.
- Autocompletion is enabled in SQL literals inside the code (embedded SQL or SQL scratchpad conditions).
- Table suggestions after
FROM/JOIN/UPDATE/INTO - Column suggestions after
tablename.
- Table suggestions after
- A ▶ Run in DB code lens appears above the SQL statement. On click:
- Queries (SELECT): runs immediately and shows results
- DML/DDL: runs after a confirmation modal
SFTP remote editing
Section titled “SFTP remote editing”Opening a remote file from the Terminal · SSH · SFTP tree shows it in the Monaco editor. Saving with Ctrl+S immediately uploads to the remote and records the change in history.
File tree
Section titled “File tree”The left file tree (Ctrl+Shift+E) handles both local and SFTP remote the same way.
- git status badges —
?untracked,+staged,-deleted,!conflict (local tree only) - New file · new folder · refresh,
F2rename,Deleteto delete Ctrl+C/Ctrl+X/Ctrl+Vto copy/cut/paste (multiple files can be selected)- Double-clicking a filename in terminal output also opens the editor
Project-wide search — Ctrl+Shift+G
Section titled “Project-wide search — Ctrl+Shift+G”- Search text across the whole project (case-insensitive, up to 500 files at a time)
- SFTP remote folders are searched too
- Replacement comes in two forms — Replace Selected (only selected results) / Replace All — going through an “N files, M places replaced” confirmation modal before running
The AI operates the editor directly
Section titled “The AI operates the editor directly”AI Chat not only is aware of the active editor’s visible code, selection, and cursor position, but can also inject code directly into the editor with the editor_inject tool. Request review mode and it shows a diff card (Apply/Reject) for you to decide, instead of applying immediately.
For details, see AI Chat & RAG Search.
Editor shortcuts
Section titled “Editor shortcuts”| Key | Action |
|---|---|
Ctrl+I | Inline AI editing |
Ctrl+S | Save (upload if remote) |
Ctrl+F | In-file search (regex supported) |
Ctrl+H | In-file search & replace |
Ctrl+Shift+G | Project-wide search & replace |
Ctrl+L | Attach the current file to AI Chat |
Esc | Return to the file tree |
Ctrl+K | RAG search |
Ctrl+Shift+H | Change history (ChangeSet) |
Ctrl+= / Ctrl+- / Ctrl+0 | Editor font enlarge/shrink/reset |
Q. LSP autocompletion doesn’t work. → Check that it’s a file with the right language extension. If a “Download?” modal appears on first open, you must approve it to install. Remote SFTP files don’t support LSP.
Q. The ▶ Run button isn’t visible. → Remote files and Untitled files have no run button. It appears only for files saved locally.
Q. There are no connections in the DB dropdown. → First connect to a DB from the DB Client panel. The dropdown refreshes to the latest list each time it’s opened.
Q. Markdown preview doesn’t work.
→ Open a .md file in the editor and a preview button appears in the toolbar. Click it to switch to rendered HTML.
Q. I saved a remote file but it didn’t upload.
→ Check the SFTP connection state. The connection in the Terminal · SSH · SFTP tree must be alive for Ctrl+S to auto-upload.
Q. I want to revert after applying inline AI.
→ Open ChangeSet with Ctrl+Shift+H and press the revert button for that item. See Change History & Git for details.