what you can do with sloth

An autonomous agent that researches, codes, builds, and remembers

01
Research Anything
02
Analyze Data
03
Write & Run Code
04
Build Web Apps
05
Process Files
06
Automate Tasks
07
Commands
08
Topics & Routing
09
Memory
10
Skills
11
Dashboard
12
Getting Your Own

01 — Research Anything

Ask a question — the agent searches the web, reads pages, and returns a summary with sources.

The agent runs live web searches, opens pages in a browser, and synthesizes findings. For complex sites it interacts with forms and takes screenshots. Video and audio URLs are handled with yt-dlp; voice transcription via Whisper.

research the latest on quantum error correction
what are the top 3 competitors to Stripe Atlas?
download and transcribe https://youtu.be/abc123
open this page and screenshot the pricing table

02 — Analyze Data

Send a spreadsheet, CSV, or paste numbers — get charts, reports, and insights back.

Attach data files directly or paste inline. The agent analyzes with pandas/numpy/scipy, produces charts (matplotlib, plotly), Excel files (openpyxl), PowerPoint decks (python-pptx), and PDF reports (weasyprint). DuckDB and SQLite available for SQL queries over data.

analyze this CSV and plot monthly revenue trends
[data.xlsx] compare Q1 vs Q2 by region
run a SQL query over this data: top 10 customers by spend
turn these numbers into a presentation deck

03 — Write & Run Code

The agent codes in any major language, runs it, iterates until it works, and sends results.

The container ships with Node/Bun, Python 3/uv, Go 1.24, Rust/Cargo, plus tools: SQLite, DuckDB, PostgreSQL client, Redis client, GraphViz, pandoc, imagemagick, ffmpeg, tesseract OCR. The agent writes code, installs packages, runs it, and debugs failures autonomously.

write a Go HTTP server that returns JSON health checks
run this Python script on my data file
convert this video to mp3 and send it back
build a CLI tool that deduplicates CSV rows

04 — Build Web Apps

Ask for an app — the agent builds and deploys it live to your URL.

The agent writes files into /workspace/web/pub/, served immediately at your group's web URL. All files under pub/ are public. Send follow-ups to iterate — changes appear on reload.

build a todo app with dark mode
add a due-date column and sorting
make a dashboard that shows my portfolio allocation
create a landing page for my project

05 — Process Files

Send any file — images, PDFs, docs, voice — the agent reads and acts on them.

Attach files directly to your message. Images are seen natively, PDFs extracted, documents read as text. Voice messages (WhatsApp, Telegram, Discord) are auto-transcribed. To retrieve files the agent produced, use /file get or ask it to send.

here's the contract [report.pdf] — pull out the key metrics
[voice: summarise the last three tickets]
/file put data.csv
/file get ~/tmp/summary.md

06 — Automate Tasks

Schedule recurring jobs — research, reports, monitoring — the agent runs them on cron.

Task types: cron (schedule expression), interval (every N ms), once (specific time). Each task runs isolated with its own prompt. View or cancel via "what tasks are running?" or /dash/tasks/.

check the weather in London every morning at 9am
send me a weekly summary of open GitHub issues every Monday
monitor this URL and alert me if it goes down
cancel the weather task

07 — Commands

Slash commands at the start of a message are intercepted before the agent sees them.

These are handled by the gateway — the agent never receives them. Positional rule: /new at the start resets your session; "tell the agent /new context" goes straight to the agent.

Command Effect
/new [msg] Reset session. Optional message starts fresh. /new #topic resets only that topic.
/stop Halt the active container immediately.
/ping Check the gateway is alive — responds with pong.
/chatid Returns your current chat ID.
/file put upload, get download, ls list workspace.

08 — Topics & Routing

#topic for parallel threads, @name for child agents.

#word routes to a dedicated topic session — your main session stays untouched. Use this for parallel work without context bleed. Reset a single topic with /new #topic.

@name addresses a specific child agent — @support, @code, @research. Each child has its own personality, instructions, and history. The routing token is stripped before delivery.

#research start digging into WASM runtimes
#deploy any issues with last night's rollout?
@support I have a billing question
/new #deploy   # reset only the deploy thread

09 — Memory

The agent remembers across sessions — diary, facts, preferences, compressed history.

Diary — daily work log, auto-surfaced each session. Facts — researched knowledge with verification dates, auto-refreshed when stale. User context — per-user preferences and history. Episodes — compressed weekly and monthly summaries.

remember I prefer TypeScript for all new projects
search your memory for anything about the API migration
what did we work on last week?

10 — Skills

Extensible slash commands — the agent has built-in skills and can create new ones.

Type /skill-name to invoke. The agent can also create new skills that persist across sessions. Ask "what skills do you have?" for the full list.

/hello  /self  /facts  /recall-memories
/compact-memories  /diary  /web  /howto
/users  /migrate  /info  /commit

11 — Dashboard

The /dash/ portal shows status, tasks, groups, memory, and activity.

Log in via OAuth (Google, GitHub, Discord) or Telegram. Pause or cancel tasks, browse per-group memory and config, approve onboarding requests.

https://sloth.quantblue.tech/dash/

Status      channels, groups, containers, errors
Tasks       scheduled jobs, run history, pause/cancel
Groups      routing, config, message counts
Memory      diary, facts, CLAUDE.md per group
Activity    recent messages, routing decisions
Onboarding  approve/reject new users

12 — Getting Your Own Agent

Message the gateway — pick a name, get approved, receive a dedicated agent.

When onboarding is enabled, messaging as an unrecognized user starts a setup flow. Pick a world name, wait for operator approval, and you get a dedicated agent with its own workspace, memory, web space, and personality — fully isolated.

you       (first message to the gateway)
gateway   Welcome! Pick a name for your world.
you       myworld
gateway   Request submitted. Waiting for approval.

# operator approves
agent     I'm myworld — your dedicated agent. Tell me what you need.

Sessions persist until you reset with /new or they time out. The agent sends status messages during long tasks. You can send follow-ups mid-task — the agent adapts.