Skip to main content

Carole.ai logo on a white background

www.caroleai.com

Carole.ai is a local AI agent workspace with chat, project tools, memory, MCP integrations, browser automation, and a Kanban board. The PyPI package includes the built web interface: one caroleai command runs the FastAPI backend and serves the frontend from the same address.

The public landing page is caroleai.com.

It does not host accounts or the backend: Sign in and Sign up open http://127.0.0.1:8000 on the visitor's own computer after they install and start Carole.ai.

Animated preview of the Carole.ai demo

Click the preview to watch the full video with sound.

Install and run

Use Python 3.11 or 3.12. A virtual environment is recommended:

python -m venv .venv
# macOS/Linux: source .venv/bin/activate
# Windows PowerShell: .venv\Scripts\Activate.ps1
python -m pip install carole.ai
caroleai

Open http://127.0.0.1:8000. The first account created becomes the local instance owner. Application data is stored in ~/.carole by default. Node.js and Docker are not required for the PyPI installation.

You can also install the command with pipx install carole.ai. To use browser automation, install the Chromium browser once with playwright install chromium. Connect an AI model provider in the app's settings or supply its API key through your environment.

To use Google Workspace tools, open Settings → Google Workspace Integration and choose Connect Google Account. Carole opens Google's consent page for the user's own account; no shared Google login is used. Refresh and access tokens remain on that computer in Windows Credential Manager, macOS Keychain, or Linux Secret Service. Read operations can run directly, while sending email or creating, editing, trashing, or deleting Google data requires human approval.

Run caroleai --help for options including --port, --data-dir, and --no-browser. The command binds to 127.0.0.1 by default. Keep it local unless you have deliberately secured access: the instance owner can use host-level capabilities such as shell, Git, plugins, and browser automation.

For persistent login sessions, set a stable, random JWT_SECRET in your environment or .env file before starting Carole.ai. Without one, a new secret is generated on each restart and existing sessions are invalidated. Never commit API keys or secrets to this repository.

Features

  • Hybrid GraphRAG memory with LanceDB and a networkx code graph.
  • MCP integrations and a dynamic tool registry.
  • Gmail, Calendar, Meet, and Google Tasks integration through local OAuth.
  • Browser and meeting workflows, including Google Meet integration.
  • Real-time Kanban and project-management tools.

Develop from source

The public GitHub repository contains both the FastAPI backend and the Next.js frontend. The following is for contributors working on the source; it is not needed to run the PyPI package.

Prerequisites: Python 3.11 or 3.12 and Node.js 22. From the repository root, create a Python environment and install the backend requirements:

python -m venv .venv
# Activate .venv for your shell, then:
python -m pip install -r backend/requirements.txt
cd backend
uvicorn main:app --reload

In another terminal, start the frontend:

cd frontend
npm ci
npm run dev

The development frontend is at http://localhost:3000, the API at http://localhost:8000, and API documentation at http://localhost:8000/docs. Set provider API keys in your own local environment if you want to use model-backed features.

Source, bug reports, and contributions are available through GitHub and its issue tracker.

Instance owner and upgrade notes

The first account created is automatically the local instance owner. An operator can optionally set CAROLE_OWNER_ID to an account UUID as a recovery override. The instance owner controls host capabilities: terminal/shell access, Git, browser automation, plugins, MCP servers, external workspace paths, and instance settings/model/prompt administration. These operations are unavailable until an owner is configured. Project ownership alone does not grant access to the host machine. Host tools run with the backend OS account's privileges; this is not an OS sandbox for untrusted tenants.

File, search, Git, and history APIs require an owned project UUID. Clients must use the backend Git API; the former Next.js Git endpoint returns HTTP 410. Attachments require authenticated downloads. Google accounts must reconnect through Settings after upgrading: credentials are stored separately per account in the operating-system credential vault, and any legacy private token file is migrated and removed. The bundled Desktop OAuth client identifies Carole.ai but does not grant access to any Google account; access begins only after the user consents locally. The OAuth start request must include browser credentials so its callback can verify the initiating browser.

Docker stores application data in the carole_data volume at /data/carole. Back up and copy any existing .carole data into that volume before switching an existing deployment; creating the volume does not migrate old data. An explicit DATABASE_URL or CAROLE_HOME_DIR override must point to persistent storage. Playwright browsers are installed at a path available to the non-root app user.

Metadata

Release files for carole.ai 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for carole.ai 0.1.2
File Size Uploaded
carole_ai-0.1.2.tar.gz 12.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for carole.ai 0.1.2
File Interpreter ABI Platform
carole_ai-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 24.0 MB

Release files / carole_ai-0.1.2.tar.gz

Download URL carole_ai-0.1.2.tar.gz
Size 12.0 MB
Tags Source
SHA-256 checksum
How to use checksums
5ef599c36d359bd02953be33853ff0698f1eeb46272a951edb4d575330b85370
BLAKE2b-256 checksum
How to use checksums
7908fe5bd366a307dc90e0c5160e1b49e4b93f9410b64f19bcd5006bc4f85ffd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / carole_ai-0.1.2-py3-none-any.whl

Download URL carole_ai-0.1.2-py3-none-any.whl
Size 12.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
e7d4cdde44a3700573af65fd719a8478708f534fa2ecc572966c2a2b59c45271
BLAKE2b-256 checksum
How to use checksums
915441e61bf589bbdc9a336d2e863e1c2b86ebc7622d698b466605e86fc0f2f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page