portals

agent
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 6 GitHub stars
Code Gecti
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

Native iPhone, iPad and Mac app for your coding agents, running on your own computers.

README.md

Portals

Portals app icon: two arched doorways in shadow, with light where they overlap

Orchestrate your agent fleet across every computer you own, from any device, instantly in sync.

Download for Mac · iPhone and iPad on TestFlight · Getting started · Build from source · Privacy

Latest release portals-host on npm MIT license iOS and macOS 26.1 or newer The host runs on macOS and Linux


Portals is a native app for iPhone, iPad and Mac for working with Claude Code, Codex, Cursor, Droid, Pi and Hermes. The agents run on your own Mac or Linux computers, with your files, your settings and your logins. Start a thread at your desk, answer its question from your phone, and pick it up on your iPad.

Portals is in alpha. The Mac app is a download here, the iPhone and iPad apps are on TestFlight, and the source and the host are in this repo.

Portals on a Mac: a sidebar of threads across two computers, and Codex at work on a test suite

Features

  • Every agent in one place. Claude Code, Codex, Cursor, Droid, Pi and Hermes, each with your own account and settings.
  • All your computers. Run setup on each Mac or Linux computer, and every device reaches all of them.
  • In sync everywhere. Threads, what you've read, your sidebar's order and queued messages follow you between iPhone, iPad and Mac.
  • Approve from anywhere. Commands and edits wait on a card until you allow them, and each thread can run in its own permission mode.
  • Steer while it works. Send a message to change course, or queue the next one. Type / for commands and @ for files, and attach pictures.
  • See what it's doing. Steps, live command output, plans, subagents, workflows and the changes each turn made.
  • Agents together. Ask Claude Code to "start a Codex thread to review this", then follow that thread from the one that started it.
  • Private notifications. You're told when an agent finishes or needs you. The words are encrypted on your computer and can only be read on your device.
  • Visuals in the chat. Agents can draw interactive charts and diagrams in a reply, and formulas are typeset.

Portals on an iPhone: Claude Code asks how the tests should reach a payment sandbox   Portals on an iPad: Droid's finished work on rate-limiting webhooks

Getting started

You need:

  • A Mac or Linux computer for your agents, with Node 22.18 or newer and at least one agent installed and signed in.
  • Tailscale on that computer and on your devices, signed in to the same account.
  • An iPhone, iPad or Mac on iOS or macOS 26.1 or newer.

Then:

  1. Get the app. On a Mac, download the DMG and drag Portals to Applications. It keeps itself up to date. On an iPhone or iPad, join on TestFlight. To look around first, Try a demo on the welcome screen needs no computer.

  2. Set up the host. On the computer your agents run on:

    npx portals-host setup
    

    Setup finds your agents, makes the computer reachable over Tailscale, and keeps the host running across logins. It asks before changing Tailscale or installing anything.

  3. Add it to the app. Scan the QR code setup shows, or paste the link under it on an iPad or Mac.

Run setup again on any other computer to add it. The host's guide covers every option, Linux and updates, and the tester's guide covers using the app.

How it works

The app doesn't run agents. A small host, portals-host, runs beside them on each computer. It listens only on 127.0.0.1, and your devices reach it through your own Tailscale network. When a device can't reach it directly, the Portals relay can carry the connection, encrypted so that only your device and your computer can read it.

Folder What's in it
Portals/ The SwiftUI app for iPhone, iPad and Mac
PortalsNotifications/ The extension that opens encrypted notifications
Packages/PortalsKit/ The app's core: threads, sync and the wire protocol
bridge/ The host, published as portals-host (the folder keeps its old name)
relay/ The Cloudflare Worker behind notifications and the backup connection
hermes-plugin/ A Hermes plugin for notifications
docs/ The protocol, pairing and relay, and design and performance notes

Privacy

  • No account, no analytics, no tracking.
  • Your work stays on your computers. Conversations and files stay on the computers you own, and go only to the AI providers you use, under their terms.
  • On your device: the computers you've added and your settings, with passwords in the Keychain.
  • The relay can't read what it passes. Notifications and relayed connections are encrypted end to end, and it keeps no notifications.

Privacy policy · Report a security issue

Build from source

Build the app with Xcode

Built with Xcode 27.

git clone https://github.com/DanielOu1208/portals.git
cd portals
open Portals.xcodeproj

Run the Portals scheme on a simulator; that needs no signing, and Try a demo needs no host.

To run on a device, copy Config/Local.example.xcconfig to Config/Local.xcconfig and set your team. Then replace com.danielou.portals on both targets and PORTALS_APP_GROUP in Config/Shared.xcconfig with IDs of your own.

The hosted relay only sends notifications for the official app. For notifications in your own build, deploy your own relay with your own APNs key, then point PORTALS_RELAY_URL in Config/Portals.xcconfig and push.relay and relay.url in the host's config.json at it.

Run the host from source
cd bridge
npm ci
npm start

bridge/DEVELOPING.md explains how the host works.

Run the tests
(cd Packages/PortalsKit && swift test)
(cd bridge && npm ci && npm test)
(cd relay && npm ci && npm test)

Support

Open an issue for bugs or focused feature requests. Pull requests are welcome; CONTRIBUTING.md says what they need.

License

Source code and original artwork use the MIT License. The agents' logos belong to their owners, and Portals isn't affiliated with or endorsed by them; see third-party notices.

Yorumlar (0)

Sonuc bulunamadi