ArqZero

Tools

$ arqzero --docs-tools

ArqZero ships 18 built-in tools. Each has a permission level that determines when user approval is required.

safeRuns without asking
askRequires user approval
proAdvanced, auto-approved in pro mode

Safe Tools

Readsafe

Read files with line numbers. Supports images, PDFs, and Jupyter notebooks.

> Read({ file_path: "/src/index.ts", offset: 10, limit: 50 })
Globsafe

Find files by glob pattern. Returns paths sorted by modification time.

> Glob({ pattern: "src/**/*.ts" })
Grepsafe

Search file contents with regex. Supports context lines and multiline.

> Grep({ pattern: "export function", glob: "*.ts", output_mode: "content" })
LSsafe

List directory contents with file sizes and types.

> LS({ path: "/src/tools" })
Promptsafe

Ask the user a clarifying question before proceeding.

> Prompt({ question: "Which database driver should I use?" })

Ask Tools

Writeask

Create or overwrite files. Requires reading the file first if it exists.

> Write({ file_path: "/src/new.ts", content: "export const x = 1;" })
Editask

Exact string replacement in files. Fails if old_string is not unique.

> Edit({ file_path: "/src/index.ts", old_string: "foo", new_string: "bar" })
Bashask

Execute shell commands. Working directory persists between calls.

> Bash({ command: "npm test", timeout: 30000 })
WebSearchask

Search the web and return summarized results.

> WebSearch({ query: "node.js stream backpressure" })
WebFetchask

Fetch content from a URL. Returns text, HTML, or JSON.

> WebFetch({ url: "https://api.example.com/data" })

Pro Tools

MultiEditpro

Apply multiple edits to a single file in one operation.

> MultiEdit({ file_path: "/src/index.ts", edits: [{ old: "a", new: "b" }, { old: "c", new: "d" }] })
BashOutputpro

Read stdout/stderr from running background processes.

> BashOutput({ pid: 12345 })
KillShellpro

Terminate running shell processes by PID.

> KillShell({ pid: 12345 })
Dispatchpro

Launch up to 7 parallel sub-agents for concurrent work.

> Dispatch({ tasks: [{ description: "fix tests" }, { description: "update docs" }] })
TodoWritepro

Create and manage persistent task lists across sessions.

> TodoWrite({ action: "add", text: "Implement auth middleware" })
TodoReadpro

Read current task list with status and priority.

> TodoRead({})
NotebookReadpro

Read Jupyter notebook cells with outputs and visualizations.

> NotebookRead({ file_path: "/notebooks/analysis.ipynb" })
NotebookEditpro

Edit Jupyter notebook cells — insert, replace, or delete.

> NotebookEdit({ file_path: "/notebooks/analysis.ipynb", cell_index: 3, source: "print('hello')" })