Skip to main content

Built-in Tools Overview

Manasvi ships with a curated set of built-in tools that give it immediate, practical utility.

Every tool is:

  • Registered — declared in a typed manifest before it can be used
  • Policy-governed — policy decides whether a principal can invoke it
  • Execution-mediated — runs through the execution manager with intent signing and artifact verification
  • Sandboxed — runs inside an isolated child process with enforced network, filesystem, and memory limits
  • Auditable — every invocation produces an execution result artifact with trace metadata

This is not a plugin registry with raw capabilities. It is a governed toolset where every action passes through policy, intent creation, and sandboxed execution.


Built-in tools at a glance​

Manasvi ships with 30 built-in tools across 10 categories.

Filesystem​

Tool IDNameRiskApprovalWhat it does
tool.local-file-readLocal File ReadLowNot requiredReads a file in the sandbox
tool.fs-write-fileFS Write FileMediumMust requireCreates or overwrites a file in the workspace write zone
tool.fs-append-fileFS Append FileMediumMust requireAppends content to a file in the workspace write zone
tool.fs-apply-patchFS Apply PatchHighMust requireApplies a unified-diff patch to a workspace file
tool.fs-rename-fileFS Rename FileMediumMust requireRenames or moves a file within the workspace

Web​

Tool IDNameRiskApprovalWhat it does
tool.http-fetchHTTP FetchMediumMay requireFetches a remote URL under egress policy
tool.web-searchWeb SearchMediumMay requireWeb search with structured results
tool.x-searchX SearchMediumMay requireSearches X (Twitter) via the X API adapter

Memory​

Tool IDNameRiskApprovalWhat it does
tool.memory-note-writeNote WriteMediumMay requireWrites a note to a memory namespace
tool.memory-searchMemory SearchLowNot requiredSearches a memory namespace for matching notes
tool.memory-getMemory GetLowNot requiredRetrieves a specific memory record by ID

Runtime / Execution​

Tool IDNameRiskApprovalWhat it does
tool.execExecHighMust requireGoverned command execution in a sandbox
tool.processProcessHighMust requireInspect or signal sandbox processes
tool.code-executionCode ExecutionHighMust requireRuns code text in a managed language runtime
tool.bashBashHighMust requireRuns a bash script through the governed runtime
tool.shell-commandShell CommandHighMust requireBounded shell execution with explicit allowlist

Sessions / Subagents​

Tool IDNameRiskApprovalWhat it does
tool.sessions-listSessions ListLowNot requiredLists sessions visible to the caller
tool.sessions-historySessions HistoryLowNot requiredReads message history of a session
tool.session-statusSession StatusLowNot requiredReturns status and metadata for a session
tool.sessions-sendSessions SendMediumMay requireSends a message into an active session
tool.sessions-yieldSessions YieldMediumMay requireYields a result payload to a parent session
tool.sessions-spawnSessions SpawnHighMust requireCreates a new session or sub-session
tool.subagentsSubagentsHighMust requireSpawns and manages subordinate agents

UI​

Tool IDNameRiskApprovalWhat it does
tool.canvasCanvasMediumMay requireRenders structured content to the dashboard canvas
tool.browserBrowserHighMust requireControls a headless browser session

Automation​

Tool IDNameRiskApprovalWhat it does
tool.cronCronHighMust requireManages scheduled cron jobs
tool.gatewayGatewayHighMust requireInvokes operator-registered gateway endpoints

Messaging​

Tool IDNameRiskApprovalWhat it does
tool.messageMessageMediumMay requireSends to an operator-registered channel

Nodes​

Tool IDNameRiskApprovalWhat it does
tool.nodesNodesLowNot requiredInspects the distributed node manager

Workflow​

Tool IDNameRiskApprovalWhat it does
tool.approval-requestApproval RequestHighMust requireRoutes an action to a human reviewer
tool.agents-listAgents ListLowNot requiredLists available agent definitions

What "governed" means for tools​

When Manasvi considers using a tool, the following happens:

  1. Tool lookup — the tool ID is resolved in the in-memory registry
  2. Status check — if the tool is disabled or deprecated, the invocation fails immediately with TOOL_NOT_ENABLED
  3. Input validation — input is parsed against the tool's typed Zod schema; invalid input returns TOOL_INPUT_VALIDATION_FAILED
  4. Policy evaluation — the policy service evaluates whether the principal can perform the tool's action class on its resource class; DENY returns POLICY_DENIED
  5. Intent creation — an execution intent is created and signed, binding the action to the principal context
  6. Approval check — if policy returns REQUIRE_APPROVAL, an approval request is created and execution pauses
  7. Artifact issuance — if no approval is needed, a system approval artifact is issued
  8. Contract creation — a tool execution contract bundles the invocation, manifest, intent, and artifact
  9. Sandboxed execution — the execution manager verifies the contract, derives the runtime policy, and runs the tool in an isolated child process
  10. Output validation — output is parsed against the tool's typed output schema
  11. Result returned — the result includes provenance metadata and the execution artifact ID

Every step is logged and traceable. No step can be bypassed.


Trust classification on tool output​

Tool output is always classified. Manasvi never auto-promotes trust.

CategoryToolsOutput trust class
Filesystemlocal-file-read, fs-write-file, fs-append-file, fs-apply-patch, fs-rename-fileEXTERNAL_UNTRUSTED
Webhttp-fetch, web-search, x-searchEXTERNAL_UNTRUSTED
Runtimeexec, bash, code-execution, process, shell-commandEXTERNAL_UNTRUSTED
Memory writememory-note-writePreserves the trust class supplied by the caller
Memory readmemory-search, memory-getPer-record, as written (never silently promoted)
Sessionssessions-list, sessions-history, session-statusEXTERNAL_UNTRUSTED
UIbrowserEXTERNAL_UNTRUSTED
Web/socialx-searchEXTERNAL_UNTRUSTED
Workflowapproval-requestCONTROL_TRUSTED (artifact)
Messagingmessagen/a (send-only)

Manasvi does not auto-promote tool output trust. An agent cannot use untrusted content to make control-plane decisions without explicit operator promotion.


Sandbox modes by tool​

ToolSandbox modeNetworkFilesystem
tool.local-file-readread_only_localblockedread-only inputs
tool.fs-write-fileno_network_computeblockedscratch write
tool.fs-append-fileno_network_computeblockedscratch write
tool.fs-apply-patchno_network_computeblockedscratch write
tool.fs-rename-fileno_network_computeblockedscratch write
tool.http-fetchrestricted_remoteallowlist onlynone
tool.web-searchrestricted_remoteallowlist onlynone
tool.x-searchrestricted_remoteallowlist onlynone
tool.memory-note-writeread_only_localblockedscratch write
tool.memory-searchread_only_localblockednone
tool.memory-getread_only_localblockednone
tool.approval-requestread_only_localblockednone
tool.shell-commandno_network_computeblockedscratch write
tool.execno_network_computeblockedscratch write
tool.bashno_network_computeblockedscratch write
tool.code-executionno_network_computeblockedscratch write
tool.processno_network_computeblockednone
tool.sessions-*restricted_remotenonenone
tool.subagentsrestricted_remotenonenone
tool.agents-listrestricted_remotenonenone
tool.nodesrestricted_remotenonenone
tool.canvasrestricted_remotenonenone
tool.browserprivileged_operator_approvedallowlist onlynone
tool.cronrestricted_remotenonenone
tool.gatewayprivileged_operator_approvedallowlist onlynone
tool.messagerestricted_remoteallowlist onlynone

Default tool sets​

Rather than enabling tools one by one, Manasvi provides default tool sets — curated, named groups with a defined risk posture.

See Default Tool Sets for details.


Enabling and disabling tools​

Tools are registered in the orchestrator's in-memory registry at startup. Status can be changed at runtime via the orchestrator API.

# Disable a tool
curl -X POST http://localhost:4010/tools/status \
-H "content-type: application/json" \
-H "authorization: Bearer <token>" \
-d '{"toolId": "tool.shell-command", "version": "1.0.0", "status": "disabled"}'

# List all tools
curl http://localhost:4010/admin/tools

Or use the CLI:

pnpm manasvi tools list
pnpm manasvi tools inspect tool.web-search
pnpm manasvi tools sets

Policy configuration for tools​

Tools require matching policy rules. The default policy set at configs/policies/default-policy-set.json includes rules for the built-in tools.

Each tool declares its policyActionClass and policyResourceClass. Policy rules must explicitly allow the relevant actionClass for the requesting principal.

If a policy rule is missing, the tool invocation returns POLICY_DENIED with reason codes.


Tool reference docs​

Core tools (B4)​

New tools (B5)​

External tools​

Reference​