Metadata-Version: 2.4
Name: personal-jarvis
Version: 3.2.0
Summary: Turn your computer into an AI agent that coordinates apps, tools, models, and other agents
Author: Ruben Lütke
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/Dodaios/Dodaios
Project-URL: Repository, https://github.com/Dodaios/Dodaios
Project-URL: Issues, https://github.com/Dodaios/Dodaios/issues
Project-URL: Documentation, https://github.com/Dodaios/Dodaios/blob/main/README.md
Project-URL: Changelog, https://github.com/Dodaios/Dodaios/blob/main/CHANGELOG.md
Project-URL: Discord, https://discord.gg/x7USduHxbc
Keywords: voice-assistant,ai-agent,agents,llm,orchestrator,speech-to-text,text-to-speech,wake-word,computer-use,automation
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Multimedia :: Sound/Audio :: Speech
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Utilities
Requires-Python: <3.15,>=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
License-File: third_party/bezier-js/LICENSE
License-File: third_party/hermes-agent/LICENSE
License-File: third_party/lobe-icons/LICENSE
License-File: third_party/maath/LICENSE
License-File: third_party/onnxruntime/LICENSE
License-File: third_party/pierre-trees/LICENSE
License-File: third_party/radix-ui/LICENSE
License-File: third_party/react-arborist/LICENSE
License-File: third_party/react-force-graph/LICENSE
License-File: third_party/react-remove-scroll-bar/LICENSE
License-File: third_party/react-three-fiber/LICENSE
License-File: third_party/svgl/LICENSE
License-File: third_party/t3code/LICENSE
License-File: third_party/troika-fflate/LICENSE
License-File: third_party/typr/LICENSE
License-File: third_party/victory-vendor/LICENSE
License-File: third_party/woff2otf/LICENSE
License-File: third_party/woff2otf/NOTICE.txt
License-File: third_party/onnxruntime/ThirdPartyNotices.txt
License-File: jarvis/ui/web/frontend/src/assets/octicons-LICENSE.txt
Requires-Dist: tzdata>=2025.2
Requires-Dist: anthropic>=0.96
Requires-Dist: openai>=1.30
Requires-Dist: google-genai>=1.0
Requires-Dist: anyio>=4.14.2
Requires-Dist: json-repair>=0.30
Requires-Dist: charset-normalizer>=3.4
Requires-Dist: jedi>=0.19
Requires-Dist: Send2Trash>=1.8.3
Requires-Dist: cryptography>=50.0.2
Requires-Dist: pydantic<3.0,>=2.9
Requires-Dist: pydantic-settings>=2.6
Requires-Dist: pyyaml>=6.0
Requires-Dist: structlog>=24.4
Requires-Dist: loguru>=0.7
Requires-Dist: keyring>=25.5
Requires-Dist: asyncssh[bcrypt]>=2.24.0
Requires-Dist: pyjwt>=2.14.0
Requires-Dist: urllib3>=2.8.0
Requires-Dist: sounddevice>=0.5
Requires-Dist: aiortc>=1.13; sys_platform != "win32" or platform_machine != "ARM64"
Requires-Dist: av==15.1.0; sys_platform == "darwin" and platform_machine == "arm64"
Requires-Dist: numpy<2.2,>=1.26; python_version < "3.14" and (sys_platform != "win32" or platform_machine != "ARM64")
Requires-Dist: numpy<2.4,>=2.3.5; python_version >= "3.14" or (sys_platform == "win32" and platform_machine == "ARM64")
Requires-Dist: scipy>=1.14
Requires-Dist: audioop-lts; python_version >= "3.13"
Requires-Dist: openwakeword>=0.6; sys_platform != "linux" and (sys_platform != "darwin" or (python_version < "3.14" and platform_machine == "arm64"))
Requires-Dist: openwakeword>=0.6; sys_platform == "linux" and platform_machine == "x86_64" and python_version < "3.12"
Requires-Dist: onnxruntime<1.24,>=1.17; sys_platform == "darwin" and python_version < "3.14" and platform_machine == "arm64"
Requires-Dist: onnxruntime>=1.17; sys_platform != "darwin"
Requires-Dist: vosk<0.3.45,>=0.3.44; sys_platform != "win32" or platform_machine != "ARM64"
Requires-Dist: elevenlabs>=1.5
Requires-Dist: psutil>=6.1
Requires-Dist: pillow>=12.3.0
Requires-Dist: opentelemetry-api>=1.28
Requires-Dist: opentelemetry-sdk>=1.28
Requires-Dist: prometheus-client>=0.21
Requires-Dist: httpx>=0.27
Requires-Dist: ddgs==9.14.3
Requires-Dist: aiofiles>=24.1
Requires-Dist: aiolimiter>=1.1
Requires-Dist: tenacity>=9.0
Requires-Dist: mcp<2,>=1.28.1
Requires-Dist: rich>=13.9
Requires-Dist: typer>=0.12
Requires-Dist: platformdirs>=4
Requires-Dist: click>=8.1
Requires-Dist: fastapi>=0.115
Requires-Dist: uvicorn>=0.32
Requires-Dist: websockets>=13
Requires-Dist: filelock>=3.16
Requires-Dist: jsonschema>=4.23
Requires-Dist: packaging>=24.0
Requires-Dist: markdown>=3.5
Requires-Dist: num2words>=0.5.13
Requires-Dist: jinja2>=3.1
Requires-Dist: croniter>=6.0
Requires-Dist: gitpython>=3.1.60
Requires-Dist: watchdog>=5.0; (sys_platform != "darwin" or python_version < "3.14") and (sys_platform != "win32" or platform_machine != "ARM64")
Requires-Dist: tomlkit>=0.12
Requires-Dist: aiosqlite>=0.21
Requires-Dist: pypdf>=6.16.1
Requires-Dist: python-telegram-bot<23,>=22
Provides-Extra: trigger-streams
Requires-Dist: aiokafka<1,>=0.12; extra == "trigger-streams"
Requires-Dist: aio-pika<10,>=9; extra == "trigger-streams"
Requires-Dist: paho-mqtt<3,>=2.1; extra == "trigger-streams"
Requires-Dist: redis<9,>=5; extra == "trigger-streams"
Provides-Extra: dev
Requires-Dist: personal-jarvis[desktop,local-voice]; extra == "dev"
Requires-Dist: pytest>=8.3; extra == "dev"
Requires-Dist: pytest-asyncio>=0.24; extra == "dev"
Requires-Dist: pytest-cov>=6.0; extra == "dev"
Requires-Dist: hypothesis>=6.100; extra == "dev"
Requires-Dist: ruff>=0.7; extra == "dev"
Requires-Dist: mypy>=1.13; extra == "dev"
Requires-Dist: pyinstaller>=6.11; extra == "dev"
Provides-Extra: full
Requires-Dist: personal-jarvis[channels,desktop,desktop-macos,local-voice,telephony]; extra == "full"
Provides-Extra: telephony
Requires-Dist: twilio>=8.0; extra == "telephony"
Provides-Extra: channels
Requires-Dist: discord.py<3,>=2; extra == "channels"
Provides-Extra: desktop
Requires-Dist: global-hotkeys>=0.1.7; sys_platform == "win32" and extra == "desktop"
Requires-Dist: pywinauto>=0.6.9; sys_platform == "win32" and extra == "desktop"
Requires-Dist: pywin32>=308; sys_platform == "win32" and extra == "desktop"
Requires-Dist: pywinpty>=2.0; sys_platform == "win32" and extra == "desktop"
Requires-Dist: win10toast-click>=0.1.2; sys_platform == "win32" and extra == "desktop"
Requires-Dist: pycaw>=20240210; sys_platform == "win32" and extra == "desktop"
Requires-Dist: comtypes>=1.2; sys_platform == "win32" and extra == "desktop"
Requires-Dist: winrt-runtime>=3.2; sys_platform == "win32" and extra == "desktop"
Requires-Dist: winrt-Windows.Foundation>=3.2; sys_platform == "win32" and extra == "desktop"
Requires-Dist: winrt-Windows.Foundation.Collections>=3.2; sys_platform == "win32" and extra == "desktop"
Requires-Dist: winrt-Windows.Media.Control>=3.2; sys_platform == "win32" and extra == "desktop"
Requires-Dist: pystray>=0.19; extra == "desktop"
Requires-Dist: pywebview>=5.3; extra == "desktop"
Requires-Dist: pynput>=1.7; (sys_platform == "darwin" or sys_platform == "win32") and extra == "desktop"
Requires-Dist: ptyprocess>=0.7; sys_platform != "win32" and extra == "desktop"
Requires-Dist: pyautogui>=0.9.54; extra == "desktop"
Requires-Dist: mss>=10.0; extra == "desktop"
Requires-Dist: pyside6-essentials>=6.7; (sys_platform != "linux" or platform_machine != "aarch64") and extra == "desktop"
Requires-Dist: pyside6-addons>=6.7; (sys_platform != "linux" or platform_machine != "aarch64") and extra == "desktop"
Requires-Dist: av>=14; (sys_platform != "win32" or platform_machine != "ARM64") and extra == "desktop"
Requires-Dist: SoundCard>=0.4.6; (sys_platform == "win32" or sys_platform == "linux") and extra == "desktop"
Requires-Dist: tkinterdnd2==0.4.2; extra == "desktop"
Provides-Extra: desktop-linux
Requires-Dist: pynput>=1.7; sys_platform == "linux" and extra == "desktop-linux"
Provides-Extra: desktop-macos
Requires-Dist: pyobjc-framework-Quartz>=10; sys_platform == "darwin" and extra == "desktop-macos"
Requires-Dist: pyobjc-framework-ApplicationServices>=10; sys_platform == "darwin" and extra == "desktop-macos"
Requires-Dist: pyobjc-framework-Accessibility>=10; sys_platform == "darwin" and extra == "desktop-macos"
Requires-Dist: pyobjc-framework-AVFoundation>=10; sys_platform == "darwin" and extra == "desktop-macos"
Requires-Dist: pyobjc-framework-ScreenCaptureKit>=10; sys_platform == "darwin" and extra == "desktop-macos"
Provides-Extra: local-voice
Requires-Dist: webrtcvad-wheels>=2.0; (python_version < "3.14" and (sys_platform != "win32" or platform_machine != "ARM64")) and extra == "local-voice"
Requires-Dist: faster-whisper>=1.0; ((sys_platform != "win32" or platform_machine != "ARM64") and (sys_platform != "darwin" or python_version < "3.14")) and extra == "local-voice"
Requires-Dist: av==15.1.0; (sys_platform == "darwin" and platform_machine == "arm64") and extra == "local-voice"
Requires-Dist: sherpa-onnx>=1.13.3; (sys_platform != "win32" or platform_machine != "ARM64") and extra == "local-voice"
Provides-Extra: cuda
Requires-Dist: nvidia-cublas-cu12<13,>=12.4; sys_platform != "darwin" and extra == "cuda"
Requires-Dist: nvidia-cudnn-cu12<10,>=9; sys_platform != "darwin" and extra == "cuda"
Provides-Extra: tts-eval
Requires-Dist: faster-whisper>=1.0; ((sys_platform != "win32" or platform_machine != "ARM64") and (sys_platform != "darwin" or python_version < "3.14")) and extra == "tts-eval"
Requires-Dist: av==15.1.0; (sys_platform == "darwin" and platform_machine == "arm64") and extra == "tts-eval"
Dynamic: license-file

<h1 align="center">Dodaios</h1>

<p align="center">
  <strong>English</strong> ·
  <a href="https://github.com/Dodaios/Dodaios/blob/main/README.zh-CN.md">简体中文</a>
</p>

<p align="center">
  <strong>Dodaios is an open-source agent OS for your desktop.</strong><br />
  It is the layer between you and your AI agents: it runs them, remembers for them, connects their tools and keeps you in control.
</p>

<p align="center">
  <a href="#install"><strong>Install in one line</strong></a> ·
  <a href="https://github.com/Dodaios/Dodaios/releases/latest">Download the desktop app</a><br />
  <sub>No API key needed if you have a Claude or ChatGPT subscription, or a local model.</sub>
</p>

<p align="center"><sub>Formerly Personal Jarvis.</sub></p>

<p align="center">
  <a href="https://pypi.org/project/personal-jarvis/"><img alt="PyPI" src="https://img.shields.io/pypi/v/personal-jarvis?labelColor=0A0A0A&amp;color=F7F7F4" /></a>
  <a href="https://github.com/Dodaios/Dodaios/blob/main/LICENSE"><img alt="Apache 2.0" src="https://img.shields.io/badge/License-Apache_2.0-F7F7F4?labelColor=0A0A0A" /></a>
  <a href="https://github.com/Dodaios/Dodaios/actions/workflows/ci.yml"><img alt="CI" src="https://github.com/Dodaios/Dodaios/actions/workflows/ci.yml/badge.svg" /></a>
  <a href="https://discord.gg/x7USduHxbc"><img alt="Discord" src="https://img.shields.io/badge/Discord-join-F7F7F4?labelColor=0A0A0A&amp;logo=discord&amp;logoColor=white" /></a>
</p>

<p align="center">
  <a href="https://dodaios.ai">Website</a> ·
  <a href="https://github.com/Dodaios/Dodaios/blob/main/docs/product/start-here/welcome-to-dodaios.md">Docs</a> ·
  <a href="https://discord.gg/x7USduHxbc">Discord</a> ·
  <a href="https://x.com/dodaios">X</a>
</p>

https://github.com/user-attachments/assets/42afcb9f-323b-4a57-9b6d-17aa7a2585b2

<p align="center"><sub>A real, unedited recording of the app with sound: talking to Dodaios by voice, handing work to agents, and following them in the coding workspace.</sub></p>

---

## Install

**Windows (PowerShell)**

```powershell
irm https://raw.githubusercontent.com/Dodaios/Dodaios/main/install/install.ps1 | iex
```

**macOS and Linux**

```bash
curl -fsSL https://raw.githubusercontent.com/Dodaios/Dodaios/main/install/install.sh | bash
```

The installer checks for Python 3.11 or newer and Git, offers to install
whatever is missing, adds the desktop launcher and opens the app. If you run it
again, it updates your existing installation. You choose your language, wake
phrase and models inside the app.

You need one API key, a subscription or a local model. A microphone helps for
voice. You do not need a GPU. Desktop installers and the server setup are under
[more ways to install](#more-ways-to-install).

## What's inside

Dodaios is one desktop app for everything AI can do on a computer. It
has a workspace where several coding agents run side by side, AI agents that
keep their own memory, a voice assistant with a wake word, control of your
desktop and browser, and a plugin marketplace. It works with the models you
already pay for, whether hosted, local or through a subscription you have.

You say what you want. Dodaios answers you, does the task on your computer, or
hands it to the agent that fits, and you can watch every step.

It is free and open source, and it runs on your own machine. You do not need an
account, and there is no cloud of ours between you and your models. It runs on
Windows, macOS and Linux, and as a server without a screen.

| | |
|---|---|
| **Agentic IDE** | Run Claude Code, Codex, OpenCode, Kimi Code, GLM, Grok Build, Antigravity, Cursor CLI and DeepSeek Harness side by side in live terminal panes, as many as your machine can hold. You can brief them by voice. |
| **Voice** | A wake word, live conversations, dictation into any app, and phone calls. You can interrupt it mid-sentence. |
| **Dodaios Agents** | Build a team of AI agents that stay around. Each one has its own chat, instructions, tools, schedule and memory, and learns from its own work. |
| **Dodaios Verse** | Watch your agents in a 3D world. They walk to their desks, pick up work, and show what they are doing right now. |
| **Computer use** | Dodaios clicks, types and reads the screen on your desktop and in your browser. You decide what it may do. |
| **Marketplace** | More than 40 plugins, MCP servers, skills and command-line tools you install with one click, including GitHub, Google Workspace, Notion, Slack, Linear, Spotify and Home Assistant. |
| **Any model** | OpenAI, Anthropic, Gemini, OpenRouter, NVIDIA, Ollama and any local server, or your Claude and ChatGPT subscriptions. You can pick a different one for each task. |
| **Memory** | A local wiki that Dodaios reads, writes and cites, so it remembers context across chats, agents and days. |
| **Routines** | Work that repeats on a schedule, such as a morning briefing, an inbox sweep or a nightly report. |
| **Appshots** | Press two keys to show Dodaios the window you are looking at, or just one area of it. You can record clips the same way. |
| **Pets** | A small animated companion on your desktop that reacts while Dodaios listens, thinks and talks. |

## Run every coding agent at once

The Agentic IDE turns one screen into a room full of coding agents. You open a
project, split the screen into panes, and give each pane its own coding agent.
Every pane gets a short call sign such as T1 or T2, so you can steer them
without touching the keyboard. You might say "Tell T1 to write the tests",
"What is T2 working on?" or "Send the fix plan to all panes".

- Dodaios finds the coding tools you already have installed and starts any of
  them in a pane with one key. You keep using the subscriptions you pay for.
- You can send the same task to several panes and compare what comes back.
- You can talk to Dodaios while the agents type, and it passes your brief to the
  right pane by its call sign.
- Every pane is a real terminal, so you can type into it yourself at any time.

The [Agentic IDE guide](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/agentic-ide.md) has the details.

## A team of agents that keeps working

Dodaios Agents are specialists you create with one click and keep for as long as
you like: a researcher, a release manager, a marketing writer, or whatever your
work needs.

- Each agent has one chat that never ends, so tomorrow you continue where you
  stopped today.
- Agents keep private notes on what they learned from their own work, and they
  get better at your tasks over time.
- Give an agent a routine and it does the work on schedule, without being asked.
- Files, reports and plans they produce land in Artifacts, and you can see every
  tool they used along the way.
- Longer coding missions run in their own copy of your repository (a git
  worktree), can split into parallel workers, and pass a review before you see
  the result.

Read more in the [Agents guide](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/jarvis-agents.md),
[how agents learn](https://github.com/Dodaios/Dodaios/blob/main/docs/agent-society/self-learning.md)
and [routines](https://github.com/Dodaios/Dodaios/blob/main/docs/routines.md).

## Talk to your computer

You pick your own wake phrase, such as "Hey Nova", "Computer" or anything else,
and then you talk.

- Conversations are live and take turns naturally. Mid-sentence you can ask it
  to open a website, check your calendar or start an agent.
- Dictation types what you say into any app and learns your words from a
  personal dictionary.
- Phone calls go through your own number. You can call Dodaios, or let it call
  someone for you once you approve.
- Speech recognition and voices can run fully offline. Hosted voices are
  optional.

Read more in the [voice guide](https://github.com/Dodaios/Dodaios/blob/main/docs/product/everyday-use/voice-conversations.md)
and the [dictation guide](https://github.com/Dodaios/Dodaios/blob/main/docs/product/everyday-use/dictation.md).

## Connect your tools

- Install plugins from the marketplace with one sign-in in your browser, or add
  any MCP server yourself.
- Dodaios finds command-line tools such as GitHub, Vercel, Supabase, Stripe,
  Docker and the cloud CLIs, and signs you in to them from the app.
- Skills are reusable instructions that Dodaios picks up when your request fits
  one.
- You can reach Dodaios from Telegram and Discord.
- The `jarvis` command and a local API give your own scripts, and other agents,
  the same control you have.

Read more about [plugins](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/plugins.md),
[MCP](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/mcp-connections.md),
[command-line tools](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/cli-connections.md)
and the [Dodaios CLI](https://github.com/Dodaios/Dodaios/blob/main/docs/jarvis-cli.md).

## You stay in control

Every action Dodaios takes passes a risk check with four levels: safe, monitor,
ask and block. Anything that could change your system waits for your approval,
and every run is recorded, so you can see later exactly what happened. Your keys
are kept in your operating system's credential store. Nothing leaves your
machine unless you connect a service that needs it.

Read more about [safety and approvals](https://github.com/Dodaios/Dodaios/blob/main/docs/product/privacy-safety-and-support/safety-and-approvals.md)
and [privacy and local data](https://github.com/Dodaios/Dodaios/blob/main/docs/product/privacy-safety-and-support/privacy-and-local-data.md).

## More ways to install

The [one-line installer](#install) is the quickest way in. After it has run,
open Dodaios from the desktop launcher or from a terminal:

```bash
jarvis          # full desktop
```

If you prefer a regular desktop installer, download one here:

- [Windows](https://github.com/Dodaios/Dodaios/releases/latest/download/PersonalJarvis-Setup-x64.exe)
- [macOS on Apple Silicon](https://github.com/Dodaios/Dodaios/releases/latest/download/PersonalJarvis-macOS-arm64.dmg)
- [macOS on Intel](https://github.com/Dodaios/Dodaios/releases/latest/download/PersonalJarvis-macOS-x64.dmg)
- [Linux AppImage](https://github.com/Dodaios/Dodaios/releases/latest/download/PersonalJarvis-Linux-x86_64.AppImage)

Windows installers are signed under our
[code signing policy](https://github.com/Dodaios/Dodaios/blob/main/docs/code-signing-policy.md)
once the SignPath Foundation program approves the project. Free code signing
provided by SignPath.io, certificate by SignPath Foundation.

The macOS disk image is not notarized by Apple yet. The first time you open it
on macOS 15, go to **System Settings > Privacy & Security** and click **Open
Anyway**. Up to macOS 14, right-click the app and choose **Open**. The one-line
installer above does not need this step.

To run Dodaios on a server, use `pip install personal-jarvis` and `jarvis serve`,
then open `http://localhost:47821` in a browser. Using a microphone from another
computer needs HTTPS. The [headless deployment guide](https://github.com/Dodaios/Dodaios/blob/main/docs/headless-vps-deployment.md)
explains the setup. If you install with pip or pipx by hand on an Intel Mac or
on Windows ARM64, you also need the
[native package index](https://github.com/Dodaios/Dodaios/blob/main/docs/product/start-here/install-dodaios.md#install-the-isolated-pypi-package).
The installer sets that up for you.

## First steps

1. Finish the short setup in the app. Pick your language, a wake phrase (or a
   keyboard shortcut instead) and one model.
2. Say your wake phrase and ask for something, for example "Plan a small project
   with me and ask what you need to know."
3. Open a project folder in the Agentic IDE, or create your first agent.

## Works with

- **Models:** OpenAI, Anthropic Claude, Google Gemini and Vertex AI, OpenRouter, NVIDIA, Ollama and any OpenAI-compatible local server, plus your Claude Code and Codex subscriptions.
- **Coding agents:** Claude Code, Codex, OpenCode, Kimi Code, GLM, Grok Build, Antigravity, Cursor CLI and DeepSeek Harness.
- **Speech:** local Whisper, OpenAI, Gemini, Groq, Deepgram and OpenRouter for listening; Piper (local), ElevenLabs, Cartesia, Inworld, Gemini and OpenRouter voices for speaking.

## Docs

- **Getting started:** [quick start](https://github.com/Dodaios/Dodaios/blob/main/docs/product/start-here/first-run-setup.md), [app tour](https://github.com/Dodaios/Dodaios/blob/main/docs/product/start-here/desktop-app-tour.md)
- **Everyday use:** [voice](https://github.com/Dodaios/Dodaios/blob/main/docs/product/everyday-use/voice-conversations.md), [dictation](https://github.com/Dodaios/Dodaios/blob/main/docs/product/everyday-use/dictation.md), [memory](https://github.com/Dodaios/Dodaios/blob/main/docs/product/knowledge-and-sharing/wiki-and-memory.md)
- **Agents and automation:** [agentic IDE](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/agentic-ide.md), [agents](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/jarvis-agents.md), [computer use](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/computer-use.md), [plugins](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/plugins.md), [MCP](https://github.com/Dodaios/Dodaios/blob/main/docs/product/extend-and-automate/mcp-connections.md), [CLI](https://github.com/Dodaios/Dodaios/blob/main/docs/jarvis-cli.md)
- **Models:** [providers](https://github.com/Dodaios/Dodaios/blob/main/docs/product/personalize-and-connect/providers-and-api-keys.md), [local models](https://github.com/Dodaios/Dodaios/blob/main/docs/product/personalize-and-connect/local-ai-providers.md)
- **Running and fixing:** [server](https://github.com/Dodaios/Dodaios/blob/main/docs/headless-vps-deployment.md), [architecture](https://github.com/Dodaios/Dodaios/blob/main/docs/architecture-overview.md), [troubleshooting](https://github.com/Dodaios/Dodaios/blob/main/docs/product/privacy-safety-and-support/troubleshooting.md)

## Contribute

A good place to start is a [good first issue](https://github.com/Dodaios/Dodaios/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) and the guide to [your first contribution in 10 minutes](https://github.com/Dodaios/Dodaios/blob/main/CONTRIBUTING.md#your-first-contribution-in-10-minutes). Questions and ideas go to [discussions](https://github.com/Dodaios/Dodaios/discussions), and security reports follow [SECURITY.md](https://github.com/Dodaios/Dodaios/blob/main/SECURITY.md).

If you are an AI agent helping with this repository, read [`AGENTS.md`](https://github.com/Dodaios/Dodaios/blob/main/AGENTS.md) first.

If Dodaios is useful to you, a star on GitHub helps other people find it. Sponsors are listed in [SPONSORS.md](https://github.com/Dodaios/Dodaios/blob/main/SPONSORS.md).

<!-- contributors:start -->

<a href="https://github.com/rubenluetke10-beep"><img src="https://avatars.githubusercontent.com/u/226271791?v=4&s=48" width="48" height="48" alt="rubenluetke10-beep"></a>

<!-- contributors:end -->

## License

[Apache 2.0](https://github.com/Dodaios/Dodaios/blob/main/LICENSE). Releases up to and including 1.6.0 keep their original MIT license. See [NOTICE](https://github.com/Dodaios/Dodaios/blob/main/NOTICE) and the [trademark guidance](https://github.com/Dodaios/Dodaios/blob/main/TRADEMARK.md).
