senclaw/code-ide
app A VSCode-style code editor for a folder on this machine — or on a server over SSH: file explorer, Monaco editor with tabs, and an integrated AI chat panel on the right. Select code by line and pin it into the chat as context (Cmd/Ctrl+L), ask questions grounded in your open files, and apply AI-suggested edits straight back to disk. Remote folders are opened through the SSH Manager app (pick host → pick folder) and start read-only until you unlock writes. Powered by SenClaw's configured LLM.
Install
senclaw app install senclaw/code-ide
Verifies sha512 and SenClaw’s signature before writing to disk.
Documentation
SenClaw Code (IDE)
A VSCode-style code editor packaged as a SenClaw Space App. Open any local folder, edit real files in a Monaco editor, and pair with SenClaw's LLM in an integrated chat panel — pin code selections by line as context, ask questions grounded in your open files, and apply AI-suggested edits straight back to disk.
apps/code-ide/
├── Cargo.toml # crate `code-ide` (workspace member)
├── senclaw-manifest.json # Space-App manifest (server runtime, MCP, skills, personas)
├── src/ # Rust axum backend
│ ├── main.rs # serve web/dist + /api, restore last workspace
│ ├── api.rs # REST: open/tree/file/save/create/rename/delete/search/chat/events
│ ├── workspace.rs # file ops with path-traversal safety, binary/size guards
│ ├── llm.rs # chat via SenClaw bridge (pins + open file → prompt)
│ ├── mcp.rs # code-ide-mcp: ide_open/list_dir/read/write/create/rename/delete/search
│ ├── pty.rs # integrated terminal: WebSocket ↔ PTY shell (portable-pty)
│ ├── watch.rs # notify → SSE /api/events (external file changes)
│ └── db.rs # tiny SQLite: last root + recents
├── web/ # React 19 + Vite + Monaco (plain CSS, VSCode dark theme)
│ └── src/
│ ├── App.tsx # layout, resizers, tabs, pins, chat, apply, SSE, search
│ ├── components/ # Explorer, EditorPane (Monaco), ChatPanel
│ └── main.tsx # bundles Monaco + language workers locally (fully offline)
├── skills/ # code-edit, explain-selection
├── personas/ # pair-programmer
└── scripts/pack.sh # build + stage release/ + code-ide-app.zipFeatures
- File explorer — lazy tree, respects
.gitignore+ hard-ignores (.git,node_modules,target,dist); git status badges (M/A/U). - Monaco editor — the real VSCode editor, bundled offline: tabs, dirty indicators, minimap, syntax highlighting for 30+ languages.
Cmd/Ctrl+Ssaves. - Line pinning — select code, press
Cmd/Ctrl+Lto pin{file, lines, code}as chips above the chat input; pins are woven into the LLM prompt. Add the whole open file with the + Chat button orCmd/Ctrl+Shift+L. - Integrated terminal — a real login shell (PTY) rooted at the workspace, streamed over a WebSocket to xterm.js. Toggle with the ⌘ Terminal button or `
Ctrl+``; drag its top edge to resize. - AI chat — grounded in pinned selections + the open file, powered by SenClaw's active model via the Space-App
llm.requestbridge. Cited answers. Right-click a selection for 📌 pin / 💬 ask AI / ➕ add file menu actions. - Model + run-mode picker — a dropdown in the chat lists the daemon's configured LLMs (including local
local-mlxmodels) and switches the active one; a Chat / Plan / Agent / DAG toggle shapes how the AI responds. - DeepWiki tab (📖) — DeepWiki (tree-sitter code index, call graph, source-grounded wiki + Q&A) is vendored in-process: its Axum router is nested at
/api/deepwiki, its UI served at/deepwikiand embedded as a tab. Opening a folder auto-indexes it. (The standaloneapps/deepwikiis untouched.) - Apply edits — assistant code blocks get an Apply button; a
// file: pathheader on the first line targets a specific file (else the active tab). Writes go straight to disk. - Workspace search — case-insensitive text search across the workspace; click a hit to jump to that line.
- Live sync — a filesystem watcher pushes external changes over SSE so the explorer/git state stay current.
- MCP server (
code-ide-mcp) — lets the SenClaw agent drive the editor: open a folder, read/write/create/rename/delete files, and search.
Develop
# backend (serves API on :4340)
cargo run -p code-ide
# frontend (Vite dev server, proxies /api → :4340)
cd apps/code-ide/web && npm install && npm run devThe backend calls the running SenClaw daemon for LLM completions (SENCLAW_BASE_URL, default http://127.0.0.1:18788). File editing works without a daemon; only the AI chat needs one.
Build & package
apps/code-ide/scripts/pack.sh # web build + release binary + zip
apps/code-ide/scripts/pack.sh --skip-build # just re-stage/zipProduces apps/code-ide/code-ide-app.zip, installable in SenClaw.
Declared permissions
{
"network": [
"127.0.0.1"
],
"exec": [
"./code-ide"
]
}Declared by the publisher, not enforced by SenClaw. The CLI compares this against what you already have installed and asks before anything widens.
Published by
The checkmark means SenClaw confirmed who this publisher is. It says nothing about whether their packages are safe.
About
| Owner | @senclaw |
| Latest | 1.1.0 |
| Downloads | 2 |
Versions
| Version | Tags | Artifacts | Published |
|---|---|---|---|
1.1.0 | latest | darwin-arm64, linux-x64, win32-x64 | 2026-08-15 |
1.0.1 | darwin-arm64, linux-x64, win32-x64 | 2026-08-09 | |
1.0.0 | darwin-arm64, linux-x64, win32-x64 | 2026-07-20 |
Artifacts · 1.1.0
| Platform | Format | Signature | File | Size |
|---|---|---|---|---|
darwin-arm64 | zip | unsigned | code-ide-app.zip | 12203 KB |
linux-x64 | zip | unsigned | code-ide-app.zip | 12446 KB |
win32-x64 | zip | unsigned | code-ide-app.zip | 12404 KB |
Unsigned builds require sign-in to download and are not distributed to the auto-updater, because unsigned executables from a new domain get flagged as unsafe. Sign and notarize (macOS) or Authenticode-sign (Windows) to distribute publicly.
Auto-update endpoints
For a Tauri app — add to tauri.conf.json:
"endpoints": ["https://senclaw.bacnd.com/api/v1/updates/tauri/senclaw/code-ide/{{target}}/{{arch}}/{{current_version}}"]For an electron-updater app — generic provider URL:
https://senclaw.bacnd.com/updates/senclaw/code-ide/stable
Only signed/notarized artifacts are offered as updates — a client fetches the update without credentials, and unsigned binaries are not publicly downloadable.
Something wrong with this package?
Report this package
Report this package
Tell us what is wrong and a moderator will look at it. Be specific — a report that names a version and a behaviour can be checked in minutes; one that says “looks sketchy” cannot be acted on at all.
Not about this package? Contact us instead. What happens to a report is described in reporting and moderation.
API: GET https://senclaw.bacnd.com/api/v1/packages/senclaw/code-ide