
A paired-scientist agent for reproducible research workflows.
Website · Documentation · Manuscript (pending arXiv submission #7284050) · YouTube Tutorial · Releases · Discord · Discussions
📬 Get email updates — occasional release notes, no spam.
sciClaw is a paired-scientist agent for rigorous research work. It connects to major LLM providers, proposes and executes hypothesis-driven loops, runs real tools (literature, documents, shell), and keeps an auditable evidence trail in your workspace.
Built on the PicoClaw runtime (a Go rewrite of nanobot), sciClaw keeps a single-binary footprint while adding a paired-scientist operating model: plan, evidence, review, iterate.
The most natural way to use sciClaw is through Telegram or Discord. You message it like you'd message a colleague. Ask a question, attach a file, get results back. No terminal, no special syntax.
You: "Find recent papers on TDP-43 proteinopathy in ALS"
sciClaw: [searches PubMed, returns 47 papers with citations, saves to workspace]
You: "Draft a methods section using the attached protocol"
sciClaw: [produces a Word doc with tracked changes you review in Microsoft Word]
New users should follow Quick Start below for the canonical setup path (install -> initialize -> authenticate -> connect chat).
Prefer a visual interface? Run
sciclaw appto open an interactive dashboard in your terminal — no CLI knowledge needed. A CLI is also available for power users:sciclaw agent -m "your question"orsciclaw agentfor interactive mode.
Discord on current main/dev builds also supports:
- queued background jobs with status/cancel cards
- /btw for explicit read-only side questions in the current workspace
- /skill with workspace-aware autocomplete for explicit skill use
- /theme to pick a response style (Clear, Formal, or Brief) that persists per user across sessions
Addons are optional capabilities installed separately from the core binary. Each addon is a standalone repo with a manifest, a sidecar binary, and optional install scripts. The gateway reconciler spawns addon sidecars automatically and keeps them in sync.
Two reference addons ship under the sciclaw org (private repos): - sciclaw-addon-webtop: per-user Ubuntu XFCE browser desktops via Docker. - sciclaw-addon-jupyter: per-user Jupyter Lab servers with rotating token auth.
Addons share the same workspace and user identity as your chat channels. Install with:
sciclaw addon install <url> --version v0.1.0
Ten lifecycle commands: install, enable, disable, uninstall, upgrade, verify, rollback, sbom, list, status. The web UI injects sidebar tabs for each enabled addon. See the dev log for implementation details.
brew tap drpedapati/tap && brew install sciclaw
Install surfaces are split intentionally:
- sciclaw.dev is the website and documentation
- drpedapati/sciclaw is the source repo and release binaries
- drpedapati/tap is the Homebrew tap for sciclaw, sciclaw-dev, irl, and sciclaw-* companion formulas
- drpedapati/tools is the Homebrew tap for standalone tools like docx-review, pubmed-cli, pdf-form-filler, and phi-cleaner
If you still have the old legacy tap installed, remove it to avoid ambiguity:
brew untap drpedapati/sciclaw
brew tap drpedapati/tap && brew install sciclaw-dev
sciclaw-dev tracks development branch releases. If stable sciclaw is already installed, uninstall it first to avoid binary name collisions.
macOS only:
brew install --cask quarto
Pre-compiled binaries for macOS (arm64), Linux (amd64, arm64, riscv64), and Windows (amd64/WSL) are on the releases page.
git clone https://github.com/drpedapati/sciclaw.git
cd sciclaw
make deps && make install
Homebrew pulls companion tools automatically (ImageMagick, IRL, ripgrep, docx-review, xlsx-review, pptx-review, pubmed-cli). For binary/source installs, run sciclaw doctor for hints. VM/bootstrap provisioning uses deploy/toolchain.env and installs the same core review companions.
After any install method, initialize once:
# Recommended: interactive app with first-run setup wizard
sciclaw app
# CLI alternative (headless/non-TUI)
sciclaw onboard
1. Initialize — choose one:
# Recommended: launches the app and starts first-run setup
sciclaw app
# CLI alternative (headless/non-TUI)
sciclaw onboard
2. Authenticate with your AI provider:
sciclaw auth login --provider openai # OAuth device code — works with your ChatGPT account
sciclaw auth login --provider anthropic # Token paste
# Optional: import from 1Password item JSON (requires OP_SERVICE_ACCOUNT_TOKEN)
export OP_SERVICE_ACCOUNT_TOKEN="ops_..."
sciclaw auth import-op --provider openai --item "OpenAI Credentials"
sciclaw auth import-op --provider anthropic --item "Anthropic Token" --vault "AI" --auth-method token
3. Connect a chat app and start messaging:
sciclaw channels setup telegram
sciclaw service install && sciclaw service start
See Authentication docs for all providers. See Chat Channels below for Telegram and Discord setup details.
sciClaw's default posture is local, private, and locked down. Here's what that means in practice:
~/sciclaw — a folder on your machine that you own and control. You can open it, back it up, or delete it anytime.~/.picoclaw/config.json). They're never transmitted to anyone except the provider they belong to.For the full security model, see Security.
sciClaw auto-detects the provider from the model name. Set credentials via the onboard wizard or sciclaw auth login.
| Provider | Models | Auth |
|---|---|---|
| OpenAI | gpt-5.5, gpt-5.2 (primary), gpt-5.2-chat-latest, gpt-5.2-pro | API key or device-code OAuth |
| Anthropic | claude-sonnet-4.6, claude-opus-4-6, claude-haiku-4-5-20251001 | API key, token paste, or Claude.ai oat-token bridge |
| Gemini | gemini-2.5-pro, gemini-2.5-flash | API key |
| OpenRouter | All models via openrouter/ prefix |
API key |
| DeepSeek | deepseek-chat, deepseek-reasoner | API key |
| Groq | Fast inference + Whisper voice transcription | API key |
| Zhipu | GLM models | API key |
Groq provides free voice transcription via Whisper. When configured, Telegram voice messages are automatically transcribed.
Bundled skills include:
.qmd authoring and rendering.docx manuscript generation from Markdown with NIH template auto-applymagick--create, v1.3.0+) (CLI tool)pandoc ... -o file.docx; sciClaw injects --defaults <generated-file> at runtime to apply a bundled NIH reference template (no global ~/.pandoc/defaults.yaml required).brew install drpedapati/tools/phi-cleaner)Additional skills: skills catalog — install with sciclaw skills install drpedapati/sciclaw-skills/<name>
Telegram and Discord are the recommended way to interact with sciClaw. You message it from the app you already have open.
When the agent generates deliverables (for example .docx), it can now send real file attachments back through Discord/Telegram via the message tool.
Discord-specific features on current main/dev builds:
- background jobs for long-running requests, with queue-aware progress cards
- /btw slash command for read-only side questions in the same workspace
- /skill slash command with workspace-aware skill autocomplete
- /theme slash command to pick Clear, Formal, or Brief response styles (persists per user)
Telegram setup (easiest)
@BotFather, send /newbot, copy the tokensciclaw channels setup telegram (pairs your account and writes config)sciclaw service install && sciclaw service startManual config (advanced) in ~/.picoclaw/config.json:
{
"channels": {
"telegram": {
"enabled": true,
"token": "YOUR_BOT_TOKEN",
"allow_from": ["YOUR_USER_ID"]
}
}
}
Discord setup
sciclaw channels setup discord or add to config manuallybot; permissions: Send Messages, Read Message History)sciclaw service install && sciclaw service startBackground service (recommended — keeps sciClaw running):
sciclaw service install # register with launchd (macOS) or systemd (Linux)
sciclaw service start
sciclaw service status # check it's running
For long-running Discord work, sciClaw now keeps the channel responsive:
- one main job runs per workspace
- additional main jobs queue instead of being silently downgraded
- /btw stays read-only and does not mutate the workspace
Platform notes:
- macOS: per-user launchd (~/Library/LaunchAgents/io.sciclaw.gateway.plist)
- Linux: systemd --user (~/.config/systemd/user/sciclaw-gateway.service)
- WSL: service mode works when systemd is enabled; otherwise sciclaw gateway in a terminal
Give each project its own chat room. Routing maps a Discord or Telegram channel to a specific data folder so the agent only sees that project's files — while still having access to your shared personality, skills, and memory from ~/sciclaw.
Mention to activate. In routed channels the bot stays quiet unless someone @mentions it, so collaborators can talk freely without triggering responses. DMs always work without a mention.
Example:
```bash sciclaw routing add \
$ claude mcp add sciclaw \
-- python -m otcore.mcp_server <graph>