Skip to main content
AgentOS provides 60+ built-in tools organized into 14 categories, offering agents comprehensive capabilities for file operations, web access, code analysis, system monitoring, and more. Tools are efficiently filtered by profile to optimize token usage and reduce prompt overhead.

Tool Categories

File Operations

Read, write, list, search, patch, and watch files with path containment6 tools · read · write · list · search · apply_patch · watch

Web Tools

Search, fetch, screenshot, and browser automation with SSRF protection4 tools · search · fetch · screenshot · browser actions

Code Tools

Analyze, format, lint, test, and explain code across multiple languages5 tools · analyze · format · lint · test · explain

Shell Execution

Execute commands with sandbox isolation and allowlist enforcement2 tools · exec · spawn

Data Processing

JSON, CSV, YAML parsing and transformation utilities8 tools · json_parse/stringify/query/transform · csv_parse/stringify · yaml_parse/stringify

Memory

Store, recall, and search episodic memory with metadata3 tools · store · recall · search

Scheduling

Time-based reminders and cron job management4 tools · schedule_reminder · cron_create/list/delete

Collaboration

Task management and todo tracking4 tools · todo_create/list/update/delete

Media

Image analysis, audio transcription, TTS, and media downloads5 tools · image_analyze · audio_transcribe · tts_speak · media_download · image_generate_prompt

Knowledge Graph

Entity-relation graph with traversal and visualization3 tools · kg_add · kg_query · kg_visualize

Inter-Agent

Agent discovery, delegation, and messaging3 tools · agent_list · agent_delegate · channel_send

System

System info, process monitoring, disk usage, network checks5 tools · env_get · system_info · process_list · disk_usage · network_check

Utility

UUID generation, hashing, regex matching, snapshots4 tools · uuid_generate · hash_compute · regex_match/replace

Database

SQL query building with parameterization and injection prevention4 tools · db_query · db_insert · db_update · db_delete

Tool Profiles

AgentOS uses tool profiles to filter which tools are available to each agent, reducing token overhead and improving performance. See Tool Profiles for details.
ProfileTools IncludedUse Case
chatweb_search, web_fetch, memory_recall, memory_storeGeneral conversation and web research
codefile_, shell_exec, code_, apply_patchSoftware development and debugging
researchweb_, browser_, memory_*Deep research and information gathering
opsshell_exec, system_, process_, disk_, network_System administration and monitoring
datajson_, csv_, yaml_, regex_, file_*Data processing and transformation
fulltool::, memory::All tools available (for advanced agents)

Tool Architecture

Worker Registration

Tools are registered as iii-engine functions in two TypeScript workers:
  • tools.ts — 22 core tools (file, web, shell, agent communication)
  • tools-extended.ts — 38 extended tools (scheduling, media, data, system, code)
import { init } from "iii-sdk";

const { registerFunction, trigger } = init(ENGINE_URL, { workerName: "tools" });

registerFunction(
  {
    id: "tool::file_read",
    description: "Read file contents with path containment",
    metadata: { category: "tool" },
  },
  async ({ path, maxBytes }: { path: string; maxBytes?: number }) => {
    const resolved = resolve(WORKSPACE_ROOT, path);
    assertPathContained(resolved); // Security: prevent path traversal
    const content = await readFile(resolved, "utf-8");
    return { content, path: resolved, size: content.length };
  }
);

Security Features

All tools include security safeguards:
  • Path containment — File operations restricted to workspace
  • SSRF protection — Web tools validate URLs against private/reserved IP ranges
  • Command allowlist — Shell execution limited to approved binaries
  • Resource limits — Timeouts, memory caps, and rate limiting
  • Audit logging — All tool executions logged to security audit chain

Metrics & Observability

Tools emit OpenTelemetry metrics:
recordMetric("tool_execution_total", 1, { toolId, status: "success" });
recordMetric(
  "function_call_duration_ms",
  Date.now() - start,
  { functionId: toolId, status: "success" },
  "histogram"
);

Tool Discovery

Agents receive tool definitions based on their assigned profile:
import { filterToolsByProfile } from "./tool-profiles.js";

const allTools = await trigger("tools::list");
const agentTools = filterToolsByProfile(allTools, agent.profile || "full");
Wildcard patterns enable flexible filtering:
  • tool::file_* matches tool::file_read, tool::file_write, tool::file_list
  • tool::web_* matches all web-related tools
  • tool::* matches all tools

Next Steps

File Operations

Learn about file reading, writing, and patching

Web Tools

Explore web search, fetch, and browser automation

Code Tools

Discover code analysis, formatting, and testing tools

Tool Profiles

Understand how profiles optimize tool availability

Build docs developers (and LLMs) love