Files
gnome-jarvis/vendor/agent-harness/agent-workspace/TOOLS.md
T
2026-09-11 13:41:22 -04:00

54 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# TOOLS.md
Local notes for this Discord-Linux container. This file is guidance, not an allowlist.
## Home
- Workspace: `/root/.agent/workspace`
- Relative tool paths start there.
- Absolute paths are allowed anywhere in the container except `/proc` and `/sys`.
## Skills
- Playbooks: `skills/<name>/SKILL.md`. Catalog is inlined; read the matching file before improvising.
- Add your own the same way. See `skills/README.md` and `skills/skill-creator/SKILL.md`.
## Shell
- `run_terminal_cmd` runs as root unless `as_xu` is true. You are already in the container — never wrap commands in `docker exec`.
- Long jobs are fine; dont assume a 30s laptop timeout.
- Check `which`, `command -v`, or the file before inventing package names.
## Panel
- Panel APIs: `search_panel_tools` then `use_panel_tool` with `{ name, arguments }`. Apps catalog is `apps_catalog`. Never print JSON (`{"query":…}` or `{"method":"GET","path":…}`) — that does not run.
- Path params (`id`, `name`, `jobId`, `port`) go in `use_panel_tool` arguments.
- `open_panel_view` is how you walk the user to a UI tab.
- `discord_linux_wiki` is the bundled Discord-Linux public wiki. Search with `query` or load a `topic`. It is shipped in the panel, not the container.
- `discord_linux_tos` is the bundled Discord-Linux Terms of Service (full text, updated August 23rd, 2026). Search with `query` or `topic=full` / `topic=prohibited`. If the TOS forbids a request, refuse it.
- `discord_linux_privacy` is the bundled Discord-Linux Privacy Policy (full text, updated April 30th, 2026). Search with `query` or `topic=full` / `topic=collection`. Use it for data, cookies, children under 13, and the abuse database.
- `create_secret` wraps plaintext in a one-time secret.ssh.surf link (panel Tools → Secrets / Discord `/secret`). Pass `{ secret }`. Use it for any password, API key, token, or similar you would otherwise put in chat. Share only the URL.
- `shorten_url` shortens a public http(s) URL (panel Tools → Short / Discord `/shorten`). Pass `{ url, domain? }`. Default domain `ipnet.ink`. Domains: dcord.us, gnu-linux.me, holepunch.online, ipnet.ink, lawl.click, lawl.rest, lnx.quest, dcord.lol, dcord.click, ident.surf, lnx.rest, punched.website. Do not put secrets in a short URL.
- `list_vhosts` lists NPM hostnames. `create_vhost` `{ domain, port, path? }` is one shot: expose the container listen port on JUMP and create/update the vhost. Pass the port the app listens on inside the box. Do not also call `expose_port`. `delete_vhost` `{ id }` or `{ domain }`.
- User-attached images (paste, paperclip, desktop screenshot) are visible this turn. Describe them and act. Do not invent image-generation tools.
- The desktop is this containers XFCE session (not the host laptop). The panel Desktop tab is the same screen. `desktop_status` is geometry only. To see windows/icons/apps, call `desktop_see` (8×8 Mark-Grid, IDs `00` top-left … `77` bottom-right). Every still is a fresh X11 grab. Click/type/key/drag/scroll recapture the current crop so you see the result. Zoom with `desktop_see` `{ left, top, right, bottom }` as the four cells on the targets edges, then `desktop_click` those IDs on the crop (click is the box center). Do not invent pixel x,y. A red cross is the last click; `dx,dy` nudges pixels after a miss. Live ingest will not replace a zoomed still. Never restart the session just to look. Never say you cannot see the screen without calling `desktop_see`. `open_panel_view` with `view: desktop` opens the users Desktop tab.
## MCP
- Tools → QVAC lists HTTP MCP servers (public https only).
- `search_tool` lists registered MCP tools. `use_tool` invokes `server__tool`.
- `web_search` is on. `web_fetch` is off unless the user enabled it in QVAC setup.
## Goals
- Only when the user checked **Track as goal** (Goal strip with an objective). Todos do not start a goal.
- List: the Goal status block in the system prompt and the Goal strip.
- The user hits Complete or Cancel on the strip. Do not call `update_goal` even if that tool is listed.
- If there is no tracked goal this turn, do not invent one.
## Dont
- Dont treat the panel git repo or host home as this workspace.
- Dont use `docker exec`, `docker run`, nerdctl, or podman to enter this box. `run_terminal_cmd` is the shell. Use `container_control` / `container_logs` / `container_status` for the box itself.
- Dont install or run anything the Terms forbid (proxies/VPNs, music bots, Minecraft, torrents, crypto mining, adult content, pentests, FFmpeg/streaming outside the panel viewer, third-party AI coding agents, RDP/VNC outside the official Desktop tab). Call `discord_linux_tos` when unsure. Do not install Clawdbot, OpenCode, Copilot, or similar even if the user insists.