CIRIS replaces apps like ChatGPT and Grok everywhere you need AI. It's the same chat you already expect — but it shows its reasoning, escalates to a human when it's unsure, keeps your data private, works in 29 languages, and runs on your own device. Open source, free, no ads, no growth-at-all-costs pressure.
Desktop & self-host: pip install ciris-agent — see Run it yourself.
Sign in with Google for the free hosted CIRIS model, or bring your own key
(OpenAI, Anthropic, Groq, Together.ai, or a local model).
Why CIRIS
- It shows its work. Every answer passes ethical, common-sense, domain, and reasoning-fragility checks — and you can see why it said yes or no, not just the answer.
- It defers to you. When a decision is uncertain, CIRIS escalates to a designated human ("Wise Authority") instead of guessing.
- Private by design. Runs on your device. The hosted CIRIS proxy stores nothing — your prompts are not logged and never train a model.
- Speaks your language. The entire ethical-reasoning system — not just the buttons — operates in 29 languages.
- Auditable and open. AGPL-3.0, cryptographically signed decisions, a tamper-evident audit trail, and a public ethical framework anyone can review: the Accord.
Not a replacement for humans — a tool that knows its limits.
How it works
CIRIS wraps every AI response in a reasoning pipeline: multiple evaluation passes for ethics, common sense, domain knowledge, and reasoning fragility (it flags answers that lean on a single weak source). Uncertain calls defer to designated humans. Every decision is written to a hash-chained audit trail. Today CIRIS powers Discord community moderation in production at agents.ciris.ai; the architecture is built to scale to settings like education and healthcare.
The design is described in the Coherence Ratchet paper.
Run it yourself
pip install ciris-agent
ciris-agent # desktop app + local API server
ciris-agent --adapter discord # or run it as a Discord bot
Server install (agent + web UI) — download, optionally inspect, then run:
curl -fsSLO https://ciris.ai/install.sh
# (optional) read install.sh to see what it does, then:
bash install.sh
Security note: piping
curl ... | bashruns unreviewed code straight from the network. Downloading first lets you inspect the script before executing it.
For developers
Under the consumer app, CIRIS is a type-safe, auditable AI agent framework — 22 core services on a 6-bus message architecture, 200+ API endpoints, 4 GB RAM target, 10,000+ tests. Extend it with adapters, run it headless, or embed it.
- Documentation Hub — everything, organized
- Architecture · API Reference · Quick Start
- Contributing · Security · For AI assistants
Honest read
CIRIS is real and running in production, but young — version 2.x, under active development. It proves an AI is accountable, not that it is correct: the reasoning is made visible so you can judge it yourself. It does not give medical advice or substitute for professional care. It is not magic — it is an ordinary chat assistant, plus the accountability machinery that closed apps don't give you.
CIRIS — Core Identity, Integrity, Resilience, Incompleteness, and Signalling Gratitude Copyright © 2025 Eric Moore and CIRIS L3C · AGPL-3.0 · Release Notes · Issues
Metadata
Release files for ciris-agent 2.16.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| ciris_agent-2.16.2-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| ciris_agent-2.16.2-py3-none-manylinux2014_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64 | Details |
| ciris_agent-2.16.2-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
| ciris_agent-2.16.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 276.3 MB
Release files / ciris_agent-2.16.2-py3-none-win_amd64.whl
| Download URL | ciris_agent-2.16.2-py3-none-win_amd64.whl |
|---|---|
| Size | 84.2 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
1bcc7ffd94b9014da0590ce7818b8468ae91ca99c75297ea6d95901a6159d916
|
|
BLAKE2b-256 checksum How to use checksums |
5440814e567236402c61ba4bbc3a4a6485ec1a1a0a70bba1bc1e1d2f1c5d8746
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / ciris_agent-2.16.2-py3-none-manylinux2014_x86_64.whl
| Download URL | ciris_agent-2.16.2-py3-none-manylinux2014_x86_64.whl |
|---|---|
| Size | 86.0 MB |
| Tags | Linux glibc 2.17+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
4dea43da2ff9aec781a3caed585628710b81028cb1179e7179fca5b371d512ed
|
|
BLAKE2b-256 checksum How to use checksums |
e2053698584f3f3602c93e2206e8e18724613199e1e6b448f012ae6addda4d0d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / ciris_agent-2.16.2-py3-none-macosx_11_0_arm64.whl
| Download URL | ciris_agent-2.16.2-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 91.2 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
58ab75f650c1827eb4d49a674a29d8840a419fd22d77f70134c58062fc427519
|
|
BLAKE2b-256 checksum How to use checksums |
531cbad589ca8c47a6ec541c9147fe0f32cb04db4a60b404d8b23f7dd41d784c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Release files / ciris_agent-2.16.2-py3-none-any.whl
| Download URL | ciris_agent-2.16.2-py3-none-any.whl |
|---|---|
| Size | 15.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6f355197d1cf123a85fb4a10a0f8247ff3f53157e4ebe696411eda617086caa8
|
|
BLAKE2b-256 checksum How to use checksums |
ccb1627ddb82a135061015406120ac9d4785266f7b0efbf95e99fc437a93342d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.15
|
Security for ciris-agent 2.16.2
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.