Skip to main content
Deployed as a tenant of the Hill90 homelab — hill90.com serves the UI, and identity comes from the homelab’s Keycloak at auth.hill90.com, realm platform. Verified 2026-08-06 07:45 UTC: 23 containers running, 0 unhealthy — the homelab’s 16 and the application’s 7.Identity and data are the platform’s. The tenant’s databases sit on the homelab’s Postgres under a dedicated non-superuser role, and app-auth.hill90.com is not a live surface — it returns 404. Authorization uses client roles on the hill90-ui client rather than realm roles, so holding a homelab realm role does not by itself grant access to the application. A local stack runs its own Postgres, and --standalone its own Keycloak, so pages describing those locally remain accurate.Signing in was completed on 2026-07-30, reported by the operator who performed it. That is not independently re-verified here: realm platform has event storage disabled, so there is no server-side record left to read.Where a page in this section disagrees with AI Application, the overview is newer.

Agent Tools

Every agent runs inside an agentbox container with access to a set of tools. Tools are registered at agent startup based on the agent’s configuration and the services available on the internal network. Some tools are always available; others require specific configuration flags or service connectivity.

Tool Overview

Shell & Filesystem Tools

These tools require shell.enabled = true in the agent’s tools configuration.

execute_command

Executes a shell command inside the agent container with a PTY (pseudo-terminal). Commands run against a binary allowlist — only explicitly permitted binaries can be invoked. Deny patterns block dangerous operations (e.g., rm -rf /, network reconfiguration).

read_file

Reads the contents of a file in the agent’s workspace. Files up to 1 MB are returned in full. Paths are resolved relative to the workspace root.

write_file

Writes content to a file in the agent’s workspace. Parent directories are created automatically if they do not exist.

list_directory

Lists the contents of a directory, returning each entry’s name, type (file or directory), and size.

Terminal & Browser Tools

tmux

Provides persistent terminal sessions via tmux. Agents can create named sessions, send commands to them, and read their output. Useful for long-running processes, background tasks, and managing multiple concurrent workstreams.

browser

Controls a headless Playwright Chromium instance for web interaction. Supports navigation, screenshots, element clicking, text extraction, and JavaScript evaluation. See Browser Viewer for the user-facing observation and control interface.

Version Control

git

Workspace-scoped Git operations. Agents can track changes, create commits, view diffs, and inspect history within their workspace.

HTTP

http_request

Makes HTTP requests to external APIs with built-in SSRF protection. Blocks requests to internal/private IP ranges (loopback, RFC 1918, link-local, Tailscale/CGNAT). Responses are capped at 50 KB and requests time out after 30 seconds. Blocked IP ranges: loopback, RFC 1918 private ranges, link-local, Tailscale/CGNAT, and IPv6 private/loopback addresses are all blocked to prevent SSRF attacks.

Knowledge Tools

These tools require the AKM (Agent Knowledge Manager) service to be configured and reachable on the internal network. Knowledge is scoped per agent — agents cannot access each other’s entries.

save_knowledge

Saves a knowledge entry to the agent’s persistent AKM memory. Entries survive across sessions and container restarts. Supports categorization by type for structured retrieval.

search_knowledge

Full-text search across the agent’s own knowledge entries. Uses PostgreSQL FTS with ranking and snippet highlighting.

search_shared_knowledge

Searches the shared knowledge library using hybrid FTS and pgvector semantic search. Returns results from collections visible to the agent’s owner (owner-scoped and shared collections). Results include source citations.