Skip to main content

Use IA as an agent without an API key. $0. Harvest your browser session for Gemini (guest, no login), Claude.ai, Claude Code, Kimi.com, Qwen, DeepSeek — drive them like an API, no per-token billing. Plus LiteLLM (100+ paid providers), local models via Ollama, /lang in 34 languages, Mesa Redonda, voice, OCR, MemPalace, embedded sandbox OS.

Project description

▲ DULUS

pip install dulus → press Enter → working IA in 30 seconds. Try it.

SET /sticky_input ON since the first run for the best experience!

mascot-hero

The Dulus (Cigua Palmera) — Dominican national bird. Named after the bird, not the rocket.

Quick Start · Models · Features · Permissions · MCP · Plugins

pypi downloads python license version providers tools tests x

🌐 Multilingual · English · Español · Français · 中文 · 日本語 · 한국어 · Português · Русский · العربية

Official X / creator handle: @KevRojo — that's me, the only contributor to this repo. Any other account claiming to be Dulus is a copycat.

$DULUS AI token Solana): 9R8rrjXxcfQPmLTCLhmVpjr2uesjjkcgkinE6Lwdpump


pip install dulus

🌐 Visit the Dulus website →
The site covers features, demos, and details not documented in this README.

🔥 What's new

Full changelog: docs/news.md · Inside the REPL: /news

  • 🌍 dulus.work — THE HUB. The secret is out. This is what Kevin had been hiding (even from Dulus itself 😂): a global hub where every Dulus instance on the planet shares what it learns. Your Dulus finds a fix, polishes a skill, adapts a plugin → it can publish it to the hub → every other Dulus in the world can pull it down. Not an update server — an organism. Every installation is a node. The fix a Dulus in Tokyo finds at 3AM, the one in Santo Domingo has by sunrise. Other agents have N devs improving one product (linear). Dulus makes every user a dev (exponential). The pieces have been quietly shipping for months — SelfImprove engine, Auto-Adapter, the skills format, cloudsave — and now they converge. Domain is live, execution underway. 🦅🇩🇴 → dulus.work

  • Dulus Agent — Telegram communities. Dulus evolved from a CLI tool into a live AI agent inside Telegram groups. The first fully autonomous AI moderating and conversing in real communities — not a bot, not a filter, a real agent. Groups pay in $DULUS to activate him. We host Dulus for them — that's the business model. The CLI stays free forever. This is the paid layer. 🦅🇩🇴

  • v0.2.93 — IA WITHOUT AN API KEY, FIRST-RUN. 🦅 The welcome wizard now offers, by default, to open Gemini in a browser and capture its guest session — no Google login, no API key, no credit card. From pip install to working IA in 30 seconds. Same flow works for Claude.ai / Kimi.com / Qwen / DeepSeek if you have those accounts. This was Dulus's ace under the sleeve. Now it's the front door.

  • v0.2.92/lang command. 34 ISO codes + free-form descriptors. /lang zh, /lang ja, /lang pt-br, /lang "speak as my gym tutor", /lang "tigre de calle dominicano", /lang "Yoda". The model role-plays the voice across the whole session. Triggered after Doubao (China's biggest IA assistant) started referring traffic to the repo.

  • v0.2.91CORS on the daemon. The Android Sandbox APK now connects every app live — same daemon, finally cross-origin reachable.

  • v0.2.89Sandbox embedded INSIDE the desktop GUI. Click 🦅 Sandbox in the GUI Web tab → the Dulus OS renders inside the content frame via pywebview subprocess + Win32 SetParent reparent. Not a popup. Inside the frame.

  • v0.2.89Local OCR shipped first-class. /ocr + ExtractTextFromImage tool, WebBridgeScreenshot auto-OCRs, /img sends image + verbatim OCR text together. Zero vision-model tokens for receipts / code screenshots / error stacks.

  • v0.2.89kepano/obsidian-skills bundled. Dulus writes Obsidian-flavored markdown by default. Open ~/.dulus/memory/ as an Obsidian vault → instant graph view.

  • v0.2.88LiteLLM gateway: one provider entry, 100+ backends. OpenRouter, Groq, Together, Bedrock, Vertex, Cohere, Perplexity, xAI, Mistral, Fireworks, Anyscale, Replicate, Azure, DeepInfra — the welcome wizard auto-installs the package and asks for the right per-backend key.

  • v0.2.85Slim wheel 11.4 MB → 2.5 MB. Smaller than the original baseline.

What is this

Dulus Reduce your IA costs by 60% parsing webchats and claude-code directly. Write poetry while Anthropic only see text. Use claude-code as an API without the new 'extra-usage' wall <3

Another reminder of a Dulus magic spell: Wanna get stock prices, history , etc?

/plugin install yfinance@https://github.com/ranaroussi/yfinance

them: /plugin reload

dulus get the prices of NVDA, TSLA, SP500:

Be creative!!!

Dulus adapt any python repository <3

Quick Start

Windows — no Python needed (1-click):

Download Dulus-Free-3.3.3-x64.msi → double-click and fly. Embedded Python, every library, and the desktop GUI bundled. No pip, no terminal, no admin. ~85 MB.

Everyone else — one command:

pip install dulus
dulus

First run opens a welcome wizard that can get you working IA without an API key — it captures a Gemini guest session from your browser (no login, no card). Or set any key you already have. Zero to flight in 30 seconds.

💡 Set /sticky_input ON on first run for the best experience.

Models

Speak every dialect — switch mid-session with /model:

Kind Providers
Cloud Anthropic · OpenAI · Gemini · DeepSeek · Kimi · Qwen · Zhipu · MiniMax
Free tier 14 frontier models via NVIDIA NIM — 40 RPM each, $0. Key at build.nvidia.com
Gateway 100+ backends via LiteLLM — OpenRouter, Groq, Together, Bedrock, Vertex, xAI, Mistral...
Web chats Use the chats you already pay for: Claude.ai, Gemini, Kimi.com, Qwen, DeepSeek — parsed as providers
Local Ollama · LM Studio · any OpenAI-compatible endpoint. Runs offline, completely.

Features

The full tour lives on the website — highlights:

  • 27 built-in tools — Read/Write/Edit, Bash, Glob/Grep, WebFetch/WebSearch, NotebookEdit, GetDiagnostics, Memory, Tasks, Agents, Skills...
  • Sub-agents — typed agents (coder, reviewer, researcher, tester), each in its own git worktree, talking via message passing
  • Persistent memory + checkpoints — never lose context. Ever. Open ~/.dulus/memory/ as an Obsidian vault
  • Dulus OS — not a CLI, a workstation for the agent (sandbox desktop in your browser)
  • Voice — offline Whisper STT, no API key, no cloud. Wake words included
  • Brainstorm Mode — multi-persona AI debate. Council of ghosts
  • SSJ Developer Mode — ten chained workflow shortcuts behind one keystroke: refactor → review → test → commit → ship
  • Telegram bridge — slash commands, vision, and voice from your phone
  • Local OCR/ocr, /img with verbatim text extraction, zero vision tokens
  • Plan mode, webchat UI, desktop GUI, task manager...see the site

Permissions

Three modes, switchable any time with /permissions [mode]:

Mode Behavior
auto (default) Safe tools run free; risky actions (writes, shell) ask first
manual Everything asks
accept-all Never asks — YOLO. Also via dulus --accept-all

Answering a at any prompt upgrades the session to accept-all.

MCP

Drop a .mcp.json in your project — every server registers instantly as mcp__server__tool. stdio, SSE, and HTTP transports.

/mcp                        # list servers and their tools
/mcp add <name> <cmd>       # add a stdio server
/mcp reload                 # reconnect all

Plugins

The Auto-Adapter onboards any Python repo as native tools — zero manifest, hot-reload, no restart:

/plugin install yfinance@https://github.com/ranaroussi/yfinance
/plugin reload

Then just ask: "dulus get the prices of NVDA, TSLA, SP500". Be creative — 800+ ready-made skills via Composio too.

🔒 Privacy & anonymous telemetry (opt-in)

On first launch Dulus asks once if you'd like to share anonymous usage statistics. Nothing is sent unless you say yes.

Collected (if you opt in) NEVER collected
Event names (session_start, tool_used, model_selected) Prompts or responses
Dulus version, OS name, Python version File contents or paths
Provider/model names (e.g. gemini) API keys or tokens
A random anonymous ID generated on your machine Emails, usernames, IPs (geo disabled)

Data goes to Mixpanel (event analytics). The full implementation is ~140 lines of readable code in analytics.py — audit it yourself.

Opt out anytime:

/config telemetry=off        # inside Dulus
DULUS_TELEMETRY=0            # environment variable

Project details


Release history Release notifications | RSS feed

This version

3.6.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dulus-3.6.2.tar.gz (4.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dulus-3.6.2-py3-none-any.whl (4.3 MB view details)

Uploaded Python 3

File details

Details for the file dulus-3.6.2.tar.gz.

File metadata

  • Download URL: dulus-3.6.2.tar.gz
  • Upload date:
  • Size: 4.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for dulus-3.6.2.tar.gz
Algorithm Hash digest
SHA256 ee8260f13c007a0755786fd82eac6fb39bc04a1e4181abf6002ef81164a8b967
MD5 b2f1798631da2eb825b3357cfecb8594
BLAKE2b-256 915fd9e1ba534dd55f506c964a2214e8ba3a6c844cb11b5e015db22e49477d27

See more details on using hashes here.

File details

Details for the file dulus-3.6.2-py3-none-any.whl.

File metadata

  • Download URL: dulus-3.6.2-py3-none-any.whl
  • Upload date:
  • Size: 4.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for dulus-3.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8dbb1a3c8a5822dc2b46c6c361853c63ba6ca1f9b65862eac150f03870c3e2ad
MD5 08ce42353304ed0734c95161b3bc7f72
BLAKE2b-256 5e1478688346ca8048f567b15dbc4b69965019882b66c188cac75bf2713501bd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page