Repository navigation
Tools Hub
ChatHub includes a dedicated utility workspace:
- On desktop, select the Tools Wrench icon in the left sidebar, then choose a tool from the sub-navigation panel.
- On mobile, select More in the bottom navigation, choose Tools, then use the menu button in the page header to switch between tools. The compact tool drawer closes after a selection.
Chat conversations also expose an Agent Skills picker beside the tool picker.
Skills are user-installed instruction bundles; the picker and hidden
load_skill builtin use the same lazy-loading contract described in
Agent Skills.
Runs shell commands, git, Node.js, and Python in a Linux container for that
conversation, not in the browser. Enable Sandbox in the assistant's tool
picker. Operators deploy Sandbox (OpenSandbox)
(OPENSANDBOX_SERVER_URL and OPENSANDBOX_IMAGE). If those are unset, the
tool returns a configuration error and the model continues.
- The code and its result appear inline: standard output/error and any files or plots the code produced (images render; other files download).
- Long output is capped and marked as truncated so a runaway program can't freeze the page.
- If a run produces nothing, a "no output" note is shown; if it fails, the error is shown instead of a blank result.
- A run that hangs times out after 60 seconds unless
SANDBOX_TIMEOUTor the model'stimeoutsays otherwise. - Listing a name in
packagesdoes not install it. Install with a shell command inside the sandbox, or add the package todocker/opensandboxand rebuild the image. Missing imports fail as ordinary Python errors. - Attach the spreadsheet or document to the chat (paperclip). Knowledge Base-only files are not copied into the sandbox. See Sandbox (OpenSandbox) for the server, the image, and packages.
- Graphile runs Sandbox in the background. Enabling the tool does not force the whole reply onto the connected tab. A portal-thread run uses that thread’s files, not sibling threads.
Image and video hosting tool at /tools/picbed:
- Upload one or more images or videos via file select, drag-and-drop, or Ctrl+V / Command+V paste
- Videos may be up to 20 MiB, inclusive; larger videos and unsupported files are skipped while valid files in the same batch continue
- Auto-copies successful URLs to the clipboard, one URL per line
- Responsive media pagination (20 per page) with numbered desktop controls, compact mobile controls, direct page entry, and first/last-page jumps
- Lightbox image preview and native inline video controls without autoplay
- Deleting a media record requires confirmation and reports success or failure; failed items remain in the gallery
- S3-backed storage
Picbed media and upload batches belong to the active account. Signing out or switching accounts immediately clears the visible gallery and cancels any in-progress batch before the new account loads. If an account changes after a file reaches object storage, ChatHub does not create that media record for the new account; upload the file again after the account switch finishes.
Requires S3 environment variables:
S3_ACCESS_KEY_ID=...
S3_SECRET_ACCESS_KEY=...
S3_ENDPOINT=...
S3_BUCKET=...
S3_REGION=...REST API client at /tools/apitest:
- All HTTP methods (GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS)
- Auth: None / Bearer Token / Basic Auth
- Request headers editor, body editor with JSON formatter
- Response viewer with status code, timing, pretty-printed JSON, raw toggle
- Stateless — no database required
Utility at /tools/password for generating secure passwords.
- Create
src/app/[variants]/(main)/tools/<tool-name>/page.tsx - Add i18n keys to
src/locales/default/tools.ts+locales/en-US/tools.json+locales/zh-CN/tools.json - Add DB migration SQL in
packages/database/migrations/+ register inmeta/_journal.json - Add tRPC router in
src/server/routers/lambda/+ register inlambda/index.ts - Add the nav entry to
src/app/[variants]/(main)/tools/_layout/useToolsNav.tsx
- Home
- Quick Start
- Docker Deployment and Upgrades
- Authentication
- Model Providers
- Knowledge Base and RAG
- MarkItDown Sidecar
- Sandbox (OpenSandbox)
- OpenAI Compatible Cache Matrix
- Model Extension Options
- Memory & Context Compaction
- Background Conversation Generation
- Pasted Text
- Context Export
- Data Backup and Restore
- Image Generation
- Artifacts
- Inline SVG Diagrams
- Tools Hub
- MCP OAuth
- MCP Management
- Agent Skills
- Database
- Development
- Debug and Diagnostics
- Architecture Overview
- Docker Release
- Release Workflow