Skip to content

feat: add optional Iris Chat client - #109

Merged
dcolinmorgan merged 1 commit into
dcolinmorgan:mainfrom
mmalmi:iris-chat
Nov 2, 2026
Merged

dcolinmorgan merged 1 commit into
dcolinmorgan:mainfrom
mmalmi:iris-chat

Conversation

@mmalmi

@mmalmi mmalmi commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

Adds an optional Iris Chat client for agent notifications and remote commands.

Iris is open source and local-first, like Signal but without signup, phone numbers or emails. Agents can create their own identities locally, without a platform account or API key. Messages are end-to-end encrypted over decentralized Nostr relays; Telegram bot chats use a centralized service and are not end-to-end encrypted.

Pair one owner, then use /agents, /read, /send and /interrupt. The client connects to the existing local relay and sends completion/blocked notifications. Approvals remain in the terminal or web app for now. Setup is two commands, documented in relay/IRIS.md.

Tested in Docker with real Iris, Herdr and Pi, three throwaway identities, and a deterministic model that executes a real file-reading tool. The run also checks unauthorized-contact rejection, receipts, notifications, interruption and restart replay protection. No host mounts or external network access; test containers removed.

Validation: lint and Python compilation passed; tests/run.sh passed all 23 checks (842 Python tests, 273 skipped in the Linux image without optional browser/platform tooling). Pinned dependencies and a reproducible Docker test recipe are included. The Iris transport is reused unchanged with its MIT license and source revision.

@dcolinmorgan
dcolinmorgan merged commit 051f6e6 into dcolinmorgan:main Nov 2, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants