Skip to content
woosal1337Public

About

Elliptic — Jira for your agents. Open-source, agent-native platform where your AI agents run projects, tasks, and sprints over MCP, on your own keys. Self-host with one docker compose.

Resources

Code of conduct

Contributing

Security policy

Stars

16 stars

Watchers

0 watching

Forks

Elliptic

Elliptic

Jira for your agents.

An agent-native work platform. Your agents run boards, tasks, meetings, and notes alongside your team, over a built-in MCP server, on your own infrastructure.

License Release CI Stars Containers Docs

Screens · Agents · Mobile · Quick start · Features · Docs

The Elliptic board, with people and agents on the same cards

Why Elliptic

Most teams now run on two kinds of labor, people and agents, scattered across a dozen disconnected tools. Elliptic gives both one place to work. It is a single, multi-tenant, agent-native platform where projects, tasks, meetings, notes, and the agents and people doing the work live together, so every task traces back to the conversation that created it.

A built-in MCP server exposes the whole workspace to your agents over OAuth, and the whole thing is open source and self-hostable, so your data stays on your infrastructure.

What it looks like

Every screen below comes from a real, running Elliptic. The data is seeded, and the images follow your GitHub theme.

The task list, grouped by status

List · group, filter, and save a view

A work item, with sub-tasks, a checklist, and a comment thread

Work item · sub-tasks, checklist, and one thread for people and agents

A meeting transcript with a speaker on each line

Meetings · speaker-attributed transcripts and chapters

Project insights: counts, flow, a chart builder, and a pivot table

Insights · flow, bottlenecks, a chart builder, and a pivot table

A note in the workspace editor

Notes · a wiki that links back to the work

The org-wide Drive, with folders and documents

Drive · documents an agent can read and cite

More screens — overview, my tasks, inbox, activity, search, projects, meetings, notes
Project overview

Project overview

Every task assigned to you

My tasks

The notification inbox

Inbox

The workspace activity feed

Activity

Search across the workspace

Search

Every project in the workspace

Projects

The meeting list

Meetings

The note tree

Notes

Agents work here too

An agent joins a workspace the way a person does. It signs in over OAuth, it takes a role, and every write it makes carries its name in the activity trail.

The MCP server puts 121 tools behind one endpoint, {api-origin}/api/v1/mcp.

Area Tools What an agent can do
Tasks 20 Create, move, relate, label, and comment on work items
Projects 16 Open projects, set states, read the board, export
Meetings 11 Import a transcript, read chapters, share a recap
Orgs & members 11 Read the roster, invite, set roles
Drive 10 Upload, read, and cite documents
Teams 8 Build teams and move people between them
Comments 7 Reply, react, resolve
Notifications 6 Read the inbox, snooze, archive
Notes, automations 10 Write notes, run automations
Views, workflow, vocabulary 12 Saved views, custom states, the glossary
Search, activity, profile, integrations 8 Find anything, read history, connect a service

Connect Claude Code to a workspace:

claude mcp add --transport http elliptic https://api.elliptic.sh/api/v1/mcp

Elliptic also ships an agent skill that teaches the domain model, the org discipline, and the playbooks. Copy it into your agent and the tools stop being a list of endpoints:

mkdir -p ~/.claude/skills && cp -r skills/elliptic ~/.claude/skills/

On your phone

A companion app for iOS and Android, built with React Native and Expo. It reads the same workspace over the same API, and it follows your system theme.

Home, with your tasks and your projects Tasks, grouped by status A work item, with sub-tasks and a thread an agent writes to Search across tasks and notes
Home Tasks Work item Search
More screens — sign in, notes, inbox, profile
Sign in Notes Inbox Profile and settings
Sign in Notes Inbox Profile

Features

Plan & track

  • Projects with leads, members, states, and templates
  • Tasks with List, Board (Kanban), and Table views, sub-tasks, labels, priorities, and epics
  • Saved views, custom properties, recurring work, worklogs, and per-org workflow states

Meetings & knowledge

  • Speaker-attributed meeting transcripts with chapters and share links
  • Notes, wiki, and docs, plus an org-wide Drive for uploaded documents
  • Retrospectives and an org glossary

Agents & MCP

  • A built-in MCP server exposing the whole workspace to agents over OAuth, plus connectors and a marketplace
  • Automations, a sandboxed runner, and GitHub, Sentry, Slack, and email integrations

Collaboration

  • Threaded comments, reactions, and resolve across every entity
  • Activity feeds, notifications, full-text search, and favorites
  • Public embeds and shareable links

Enterprise & platform

  • True multi-tenancy with org-scoped data isolation
  • SSO (SAML / OIDC), SCIM, LDAP, IdP group sync, and domain verification
  • Role-based access control with audit logs, approvals, and compliance surfaces
  • Webhooks, an outbox/event backbone, S3-compatible object storage, and analytics

Quick start

Run the whole stack — Postgres, the API, and the web app — with one command. Requires Docker with the Compose plugin.

git clone https://github.com/woosal1337/elliptic.git
cd elliptic
cp .env.example .env
docker compose up --build

Then open http://localhost:3000. The API is on http://localhost:8000 (health at /api/v1/health), and database migrations run automatically on start.

Full documentation, guides, and the company-brain MCP reference live at docs.elliptic.sh.

The .env.example defaults are for local evaluation only. For a real deployment, generate fresh secrets and switch to production mode:

# in .env
ELLIPTIC_KEK=$(python3 -c "import base64,os;print(base64.urlsafe_b64encode(os.urandom(32)).decode())")
JWT_SECRET_KEY=$(openssl rand -hex 32)
ENV=production            # secure cookies — serve the web app over HTTPS

In production mode the API refuses to start unless ELLIPTIC_KEK and JWT_SECRET_KEY are set to strong, non-default values.

Architecture

Elliptic is a monorepo with two deployable services and one database.

            ┌──────────────┐        ┌──────────────┐        ┌──────────────┐
  browser → │   web (3000) │  /api  │   api (8000) │  SQL   │  PostgreSQL  │
            │   Next.js    │ ─────► │   FastAPI    │ ─────► │              │
            └──────────────┘        └──────────────┘        └──────────────┘
                                           ▲
                                      MCP  │  OAuth
                                           │
                                        agents
elliptic/
├── apps/
│   ├── api/      FastAPI · SQLAlchemy · Alembic · Postgres   (the backend)
│   ├── web/      Next.js · Turborepo · Tailwind              (the web UI)
│   └── mobile/   React Native · Expo                         (iOS and Android)
├── skills/               the agent skill for the MCP server
├── e2e/                  Playwright browser tests
├── docker-compose.yml    one-command full stack
└── .env.example
  • Backend — Python / FastAPI, async SQLAlchemy, Alembic migrations, an in-process realtime relay for co-editing, and an MCP server. Runs as a single container; its only dependency is Postgres.
  • Web — Next.js (standalone output) talking to the API through a same-origin /api proxy. Deployable as a container or on any Next.js host.
  • Mobile — React Native and Expo, on the same public API.

Self-hosting

The Docker Compose path above is the fastest way to run Elliptic. For Kubernetes (Helm or raw manifests), Docker Swarm, and a full configuration reference, see apps/api/SELF-HOSTING.md and apps/api/deploy/.

Tagged releases publish container images to GHCR: ghcr.io/woosal1337/elliptic-api and ghcr.io/woosal1337/elliptic-web.

Development

Each app can be run and developed on its own:

  • Backend — apps/api (uv, ruff, mypy, pytest; uv run uvicorn elliptic.main:app)
  • Web — apps/web (Bun, Turborepo; bun run dev)
  • Mobile — apps/mobile (Expo; bun run ios)

scripts/dev-stack.sh up starts Postgres, the API, and the web app together, and scripts/dev-stack.sh seed fills a demo board. To rebuild the screenshots in this README, see scripts/screenshots/.

See each app's README.md and CONVENTIONS.md for the project rules. The web app talks to the API via the BACKEND_ORIGIN build argument.

Contributing

Contributions are welcome. See CONTRIBUTING.md for how to run the project and the checks a PR needs to pass, plus the conventions in apps/api/CONVENTIONS.md and apps/web/CONVENTIONS.md. To report a vulnerability, see SECURITY.md.

License

Licensed under the Apache License 2.0.

About

Elliptic — Jira for your agents. Open-source, agent-native platform where your AI agents run projects, tasks, and sprints over MCP, on your own keys. Self-host with one docker compose.

Resources

Code of conduct

Contributing

Security policy

Stars

16 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages