Editor and IDE connectors for ByteAsk — the Codex-style agentic coding harness specialized for C/C++ (compiler, disassembler, and debugger as first-class agent tools).
Each connector drives the same byteask CLI, so behavior stays consistent across
editors and every connector inherits new engine capabilities for free.
| Editor | Package | Status |
|---|---|---|
| Neovim | ByteAsk/ByteAsk.nvim (separate repo) |
✅ ready |
| VS Code | vscode-byteask |
✅ ready |
| Zed | zed-byteask |
🛠 planned |
| Emacs | byteask.el |
🛠 planned |
| JetBrains (CLion/IDEA) | byteask-jetbrains |
🛠 planned |
| Helix / Sublime | — | 🛠 planned |
Every connector targets one or more of these byteask entry points. New connectors
should prefer the highest tier they can support.
Tier 1 — Terminal (works everywhere).
Spawn the interactive TUI in the editor's terminal:
byteask [PROMPT] -m <model> -c <key=value>. This is what codex.nvim does; it's
the fastest path to a working connector.
Tier 2 — Headless commands (structured actions). Shell out and stream results, no TTY required:
byteask exec [PROMPT]— one-shot task.--jsonemits JSONL events;-o <file>writes the final message;--output-schema <file>constrains output.byteask review— repository code review.byteask apply— apply the agent's latest diff to the working tree (git apply).byteask resume [--last]/byteask fork [--last]— session control.
Tier 3 — App-server protocol (native UX).
byteask app-server runs a daemon with a ws/unix control socket the TUI itself
uses via --remote. byteask app-server generate-ts --out <dir> and
generate-json-schema emit typed bindings, so a connector can render inline diffs,
approvals, and streaming tool calls natively instead of scraping a terminal.
This is the target end-state for the flagship connectors.
To keep the ecosystem consistent, every connector should expose (named per the editor's conventions):
| Capability | CLI mapping |
|---|---|
| Open / toggle interactive session | byteask (Tier 1 terminal) |
| Exec a prompt (headless) | byteask exec <prompt> |
| Exec on selection (send as context) | byteask exec with selection appended |
| Fix diagnostics in current file | byteask exec with formatted diagnostics |
| Review repository | byteask review |
| Apply latest diff | byteask apply |
| Resume / fork session | byteask resume / byteask fork |
| Health check | byteask doctor |
| Setting: command path, model, extra args, auto-apply | -m, -c, argv |
Reference implementations: byteask.nvim/lua/byteask/ (Lua) and
vscode-byteask/src/extension.ts (TypeScript) both follow this contract.
All connectors require the byteask CLI:
pip install --upgrade byteask # or: pipx install byteask
byteask login
byteask doctor- Copy the connector contract above.
- Start at Tier 1 (terminal) for a working v0, then add Tier 2 headless commands.
- Use
byteask doctorfor the editor's health check. - Match the setting names (
command,model,extraArgs,autoApply).
See AGENTS.md — the CLI-exact install commands, the
release process (tag → verify), required secrets and where to get them, and a
CI gotcha worth reading before touching any workflow file.
Apache-2.0