@easynet/agent-tool-buildin
v0.0.120
Published
Tools extension for @easynet/agent-tool: FS, HTTP, util, security (sandbox, SSRF). Same contract as any other extension.
Downloads
1,956
Readme
@easynet/agent-tool-buildin
Introduction
@easynet/agent-tool-buildin is the built-in tool extension package for @easynet/agent-tool. It exposes the extension entry required by the tool runtime and also exports iTerm helpers from the ./iterm subpath.
API Reference
| API | What it does | Minimal usage |
| --- | --- | --- |
| register | Register this extension into a tool registry. | register(registry, { only: ["fs.readText"] }) |
| getExtensionContext | Read the current extension context inside a tool. | const ctx = getExtensionContext() |
| runWithExtensionContext | Run code with an injected extension context, mainly for tests. | runWithExtensionContext(ctx, () => fn()) |
| @easynet/agent-tool-buildin/iterm | Re-export iTerm-related helpers and tool implementations. | import * as iTermTools from "@easynet/agent-tool-buildin/iterm" |
Usage
Use the package from tool.yaml:
tools:
sandboxedPath: .
allowedHosts: []
blockedHosts: []
list:
- npm:@easynet/agent-tool-buildinEnable only specific tools:
tools:
sandboxedPath: .
allowedHosts: [api.github.com]
blockedHosts: []
list:
- npm:@easynet/agent-tool-buildin#fs.readText
- npm:@easynet/agent-tool-buildin#fs.writeText
- npm:@easynet/agent-tool-buildin#http.fetchJsonYAML config
This package ships an embedded config/tool.yaml with default settings for built-in tools. It is picked up automatically by @easynet/agent-tool when this extension is loaded.
Example:
apiVersion: easynet.world/v1
kind: ToolConfig
metadata:
name: agent-tool-buildin-default
spec:
tools:
sandboxedPath: .
enableSandboxValidation: false
allowedHosts: []
blockedHosts: []
defaults:
fs.readText:
maxBytes: 5242880
fs.listDir:
maxEntries: 2000
maxDepth: 5
http.fetchJson:
timeoutMs: 15000
maxBytes: 5242880
userAgent: "agent-tool-core/1.0"
exec.runCommand:
allowedCommands: [rg, sed, cat, ls]
maxOutputBytes: 1048576
timeoutMs: 10000Explanation:
enableSandboxValidation: controls extra sandbox validation behavior.defaults: per-tool default arguments merged at load time.fs.readText.maxBytes: read limit for file content.fs.listDir.maxEntriesandfs.listDir.maxDepth: directory traversal limits.http.fetchJson.timeoutMs: request timeout for HTTP JSON fetches.exec.runCommand.allowedCommands: shell commands allowed by the built-in exec tool.
