Aleph
Tools & Extensions

Built-in Tools

Complete catalog of tools shipped with Aleph, organized by category

Overview

Aleph ships with a comprehensive set of built-in tools that cover file operations, code execution, web interaction, memory management, browser automation, and more. All built-in tools implement the AlephTool trait with static dispatch for maximum performance.

Built-in tools are registered on the AlephToolServer using builder methods:

let server = AlephToolServer::new()
    .with_bash()
    .with_file_ops()
    .with_search()
    .with_web_fetch()
    .with_youtube()
    .with_code_exec()
    .with_browser()
    .with_desktop()
    .with_memory_search(database)
    .with_atomic_ops(workspace_root);

Code Execution

bash

Execute bash/shell commands. A convenience wrapper that routes to the code execution engine with language=shell.

ParameterTypeRequiredDescription
cmdstringYesThe bash command to execute
working_dirstringNoWorking directory (defaults to temp directory)
timeoutintegerNoTimeout in seconds (default: 60)
{ "cmd": "find . -name '*.rs' | wc -l", "working_dir": "/project", "timeout": 30 }

Dangerous commands such as sudo, rm -rf /, and similar destructive operations are blocked by a safety filter.

code_exec

Execute code snippets in multiple languages with sandboxed environments.

ParameterTypeRequiredDescription
languagestringYesLanguage: shell, python, javascript
codestringYesCode to execute
working_dirstringNoWorking directory
timeoutintegerNoTimeout in seconds (default: 60)
{ "language": "python", "code": "import math\nprint(math.pi)" }

File Operations

file_ops

A unified file system tool supporting multiple operations via an action parameter.

Supported Actions

ActionDescriptionRequired Parameters
listList directory contentspath
readRead file contentpath, optional encoding
writeWrite content to filepath, content
editApply targeted edits to a filepath, edits
moveMove/rename a filesource, destination
copyCopy a filesource, destination
deleteDelete a file or directorypath
mkdirCreate a directorypath
searchSearch files by patternpath, pattern

Parameters

ParameterTypeRequiredDescription
actionstringYesOperation to perform (see above)
pathstringVariesFile or directory path
contentstringVariesContent for write operations
sourcestringVariesSource path for move/copy
destinationstringVariesDestination path for move/copy
encodingstringNoFile encoding (default: utf-8)
patternstringVariesSearch pattern (glob or regex)
recursivebooleanNoRecursive listing/search
{ "action": "read", "path": "/etc/hostname" }
{ "action": "write", "path": "/tmp/output.txt", "content": "Hello, Aleph!" }
{ "action": "search", "path": "/project/src", "pattern": "*.rs", "recursive": true }

atomic_ops

Atomic search, replace, and move operations powered by the Atomic Engine. Designed for precise code modifications across a workspace.

ParameterTypeRequiredDescription
actionstringYessearch, replace, or move
pathstringYesFile or directory path
patternstringVariesSearch pattern
replacementstringVariesReplacement text
sourcestringVariesSource path for move
destinationstringVariesDestination path for move

web_fetch

Fetch and extract content from web URLs with automatic HTML-to-text conversion.

ParameterTypeRequiredDescription
urlstringYesURL to fetch
methodstringNoHTTP method (default: GET)
headersobjectNoCustom HTTP headers
{ "url": "https://api.github.com/repos/rust-lang/rust", "headers": { "Accept": "application/json" } }

Search the web using SearXNG or other configured search engines.

ParameterTypeRequiredDescription
querystringYesSearch query
enginestringNoSearch engine to use
{ "query": "Rust async trait patterns 2025" }

youtube

Extract video information and transcripts from YouTube URLs.

ParameterTypeRequiredDescription
urlstringYesYouTube video URL
{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }

Browser Automation

browser

Control a Chromium browser via the Chrome DevTools Protocol (CDP). Supports launching browsers, navigating pages, interacting with elements, taking screenshots, and obtaining accessibility snapshots.

ParameterTypeRequiredDescription
actionstringYesBrowser action (see below)
tab_idstringVariesTarget tab identifier
urlstringVariesURL for navigation
ref_idstringVariesARIA element ref ID
selectorstringVariesCSS selector (fallback)
textstringVariesText for type/fill actions
jsstringVariesJavaScript code to evaluate
directionstringVariesScroll direction
headlessbooleanNoLaunch in headless mode
full_pagebooleanNoFull-page screenshot

Actions

ActionDescriptionRequired
startLaunch a browser instanceOptional: headless
stopShut down the browser-
open_tabOpen a new taburl
close_tabClose a tabtab_id
list_tabsList all open tabs-
navigateNavigate to URLtab_id, url
clickClick an elementtab_id, ref_id or selector
typeType text into elementtab_id, ref_id or selector, text
fillReplace element valuetab_id, ref_id or selector, text
scrollScroll page/elementtab_id, direction
hoverHover over elementtab_id, ref_id or selector
screenshotCapture screenshottab_id, optional full_page
snapshotARIA accessibility treetab_id
evaluateRun JavaScripttab_id, js

For detailed usage, see Browser Automation.


Desktop Integration

desktop

Bridge to the Aleph macOS desktop application. Provides access to native macOS capabilities through the desktop companion app.

ParameterTypeRequiredDescription
actionstringYesDesktop action to perform

The desktop tool requires the Aleph macOS companion app to be running. When the app is not running, all calls return a friendly message instead of an error, allowing the agent to degrade gracefully.


Perception

vision

Image understanding and OCR powered by a configurable vision pipeline. Supports multiple providers (e.g., Claude Vision, platform-native OCR).

ParameterTypeRequiredDescription
actionstringYesVision action to perform
imagestringVariesImage data or path

snapshot_capture

Capture the system accessibility tree and optional OCR/screenshot data.

ParameterTypeRequiredDescription
targetstringYesCapture target
regionobjectNoRegion to capture
include_axbooleanNoInclude accessibility tree
include_visionbooleanNoInclude vision analysis
include_imagebooleanNoInclude raw image data

Generation

image_generate

Generate images from text prompts using configured image generation providers.

ParameterTypeRequiredDescription
promptstringYesImage generation prompt
providerstringNoProvider to use
sizestringNoImage dimensions

speech_generate

Text-to-speech generation.

ParameterTypeRequiredDescription
textstringYesText to convert to speech

pdf_generate

Generate PDF documents from text or Markdown content.

ParameterTypeRequiredDescription
contentstringYesContent to render as PDF
templatestringNoPDF template name

Memory

Search personal memory using hybrid retrieval with intelligent redundancy elimination.

ParameterTypeRequiredDescription
querystringYesNatural language search query
max_resultsintegerNoMaximum results (default: 10)

The tool performs hybrid retrieval across both compressed facts and raw conversation transcripts, using the ContextComptroller to deduplicate results:

memory_search(query)
  -> FactRetrieval.retrieve(query)
    -> Hybrid search (facts + raw memories fallback)
  -> ContextComptroller.arbitrate(results, budget)
    -> Detect redundancy via cosine similarity (threshold: 0.95)
    -> Remove redundant transcripts when facts exist
    -> Sort by similarity score (descending)
    -> Trim to fit token budget
  -> Return deduplicated results
{ "query": "What are my coding preferences?", "max_results": 10 }

memory_store

Store a fact or piece of information in long-term memory.

ParameterTypeRequiredDescription
contentstringYesContent to store
tagsarrayNoTags for categorization

memory_forget

Delete a specific fact from memory.

ParameterTypeRequiredDescription
fact_idstringYesID of the fact to delete

memory_browse

Browse and explore stored memory entries.

ParameterTypeRequiredDescription
actionstringYesBrowse action

Session Management

sessions_spawn

Spawn a sub-agent session for parallel task execution.

ParameterTypeRequiredDescription
promptstringYesInitial prompt for the sub-agent
modelstringNoLLM model to use
thinkingbooleanNoEnable extended thinking

sessions_send

Send a message to an existing sub-agent session.

ParameterTypeRequiredDescription
session_keystringYesTarget session identifier
messagestringYesMessage to send

sessions_list

List all active sub-agent sessions. Takes no parameters.


Cross-Channel Messaging

message

Send, reply, edit, delete, and react to messages across all connected channels (Telegram, Discord, etc.).

ParameterTypeRequiredDescription
actionstringYessend, reply, edit, delete, react
channelstringVariesTarget channel
contentstringVariesMessage content
message_idstringVariesTarget message ID

Meta Tools

list_tools

List available tools by category. Supports Smart Tool Discovery for the agent.

ParameterTypeRequiredDescription
categorystringNoFilter by category

get_tool_schema

Get the full JSON Schema for a specific tool.

ParameterTypeRequiredDescription
tool_namestringYesName of the tool

skill_read

Read a Markdown skill definition.

ParameterTypeRequiredDescription
skill_namestringYesName of the skill

list_skills

List all available Markdown skills. Takes no parameters.

ask_user

Ask the user a question and wait for a response.

ParameterTypeRequiredDescription
questionstringYesQuestion to ask
optionsarrayNoPredefined answer options

canvas_show

Display content in the UI canvas area.

ParameterTypeRequiredDescription
contentstringYesContent to display
typestringYesContent type

MCP Bridge Tools

mcp_read_resource

Read a resource from a connected MCP server.

ParameterTypeRequiredDescription
uristringYesResource URI (e.g., server:file:///path)

mcp_get_prompt

Retrieve a prompt from a connected MCP server.

ParameterTypeRequiredDescription
namestringYesPrompt name (e.g., server:prompt_name)
argumentsobjectNoPrompt arguments

invalid

Fallback handler for unrecognized tool names. Provides helpful error messages suggesting available tools. This tool is registered automatically and is not intended for direct use.


Tool Registration Summary

MethodTools Registered
.with_bash()bash
.with_file_ops()file_ops
.with_search()search
.with_web_fetch()web_fetch
.with_youtube()youtube
.with_code_exec()code_exec
.with_pdf_generate()pdf_generate
.with_browser()browser
.with_desktop()desktop
.with_vision(pipeline)vision
.with_atomic_ops(root)atomic_ops
.with_memory_search(db)memory_search
.with_mcp_read_resource(handle)mcp_read_resource
.with_mcp_get_prompt(handle)mcp_get_prompt
.with_invalid(tools)invalid

On this page