iPhone, iPad and CarPlay client for the Hermes AI agent or any OpenAI-compatible model. Talk or type, watch it work, approve what it runs. No account, no tracking.
# Add to your Claude Code skills
git clone https://github.com/goosehouse-llc/reddeSee how redde compares with popular alternatives.
redde is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by goosehouse-llc. iPhone, iPad and CarPlay client for the Hermes AI agent or any OpenAI-compatible model. Talk or type, watch it work, approve what it runs. No account, no tracking. It has 50 GitHub stars.
redde's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/goosehouse-llc/redde" and add it to your Claude Code skills directory (see the Installation section above).
redde is primarily written in Swift. It is open-source under goosehouse-llc on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh redde against similar tools.
No comments yet. Be the first to share your thoughts!
Available after the catalog security scan passes.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
An iPhone, iPad and CarPlay client for Hermes, the open-source AI agent you run on your own machine, or for any OpenAI-compatible model server. Talk or type, watch the agent think and use its tools, approve what it wants to run, and manage its sessions, projects, skills, cron jobs and Kanban board from your phone.
No account and no analytics: your conversations go only to the server you set up, speech is recognized on the device, and credentials stay in the iOS Keychain. The one service Goosehouse runs is an optional relay for notifications when the app is closed, which carries them encrypted and can't read them (docs/push.md).
| Connection | Server | Best for |
|---|---|---|
| Hermes Dashboard | hermes serve (port 9119), dashboard username and password, or a browser sign-in |
Everything: live reasoning, approvals, slash commands, projects, Kanban, file editing |
| Hermes API | The Hermes gateway's API server (port 8642), API_SERVER_KEY |
The shared session ledger with a single key |
| OpenAI-compatible | llama.cpp, llama-swap, vLLM, Ollama or a hosted provider | Talking straight to a model, with no agent |
Profiles need Hermes 0.21 or later. Over the Hermes API a named profile also needs
gateway.multiplex_profiles and that profile's own API_SERVER_KEY.
A Dashboard that signs you in with Google or another identity provider has no password to type: tap Sign in with a browser (Hermes 0.21 or later). A server behind a reverse proxy that asks for a header of its own takes it under Settings → Connection details → Custom headers, next to the Cloudflare Access service token.
Instead of typing an address and a key on the phone, hand Redde a setup code: a link, or a QR code of it.
scripts/setup-code.py --name Home --dashboard http://hermes.home.example:9119 --user redde
The script asks for the password without showing it and prints the link, plus its QR code when
qrencode is installed. In Redde's setup screen choose
Scan a setup code or Paste a setup link; the iPhone Camera opens the code too, and so does
tapping the link in Messages or Mail. Redde shows what the code sets and where it points, and
saves nothing until you agree. It never overwrites a server that is already set up: the code is
added beside it.
Once one device is set up, Settings › Connection › Set up another device shows its code. Passwords and keys are left out until you ask for them, which takes Face ID or the passcode.
The link is https://redde.goosehouse.org/connect# followed by any of these, percent-encoded:
| Parameter | Meaning |
|---|---|
name |
What the server is called in Redde |
dashboard, user, password |
Hermes Dashboard address and login |
api, key |
Hermes API server address and API_SERVER_KEY |
profile, profile-key |
A Hermes profile, and its own API key if it has one |
access-id, access-secret |
A Cloudflare Access service token |
header |
A header your reverse proxy asks for, as Name: value; may be repeated (setup-code.py --header Name) |
model-url, model-key, model |
An OpenAI-compatible endpoint |
use |
dashboard, api or model: which connection Redde talks to (default: the first in the code) |
It is a web address so that iOS opens it in Redde wherever it is tapped (a universal link, which
no other app can claim), and so that a device without the app gets a page saying what to do. The
connection comes after the #, the part of an address a browser never sends, so the site doesn't
see it; the page is a static file (companion/website) whose script only
hands the link to the app. To involve no website at all, use the app's own form, with the same
parameters after redde://connect? (scripts/setup-code.py --app-link).
A code with a password in it is as good as the password. Show it to your own devices, not in a screenshot or a chat.
Requires Xcode 27 and XcodeGen (brew install xcodegen).
The Xcode project is generated and not committed.
xcodegen generate
open Echo.xcodeproj
The code name is Echo: targets, folders, the bundle ID (com.goosehouse.echo) and the app's own
echo:// links keep it; everything a user sees says Redde, setup links (redde://connect) included.
To prefill your own servers in development builds, add a git-ignored
Echo/Resources/LocalDefaults.json with any of transport, gatewayURL, serveURL,
serveUsername, fastLaneURL, fastLaneModel, kokoroURL, kokoroVoice, contextWindow. It is
applied once on first launch and never ships.
xcodebuild -project Echo.xcodeproj -scheme Echo -destination 'platform=iOS Simulator,name=iPhone 17 Pro' test
Unit tests cover streaming and parsing, the transports, markdown, voice, profiles and automation.
Live tests run against the servers in LocalDefaults.json when they're reachable and skip otherwise.
The UI tests have a scheme of their own, -scheme EchoUITests; they drive the app in the simulator
on built-in demo conversations and need no server.
Debug builds accept launch flags for demos and screenshots, all listed in
Echo/App/DevHooks.swift.
| Path | What's there |
|---|---|
Echo/ |
The app: App, Models, Services (transports, voice, settings), Views, Intents, CarPlay |
Shared/ |
Code shared with the extensions (attachments, what the widgets show, controls) |
EchoControls/, EchoShare/, EchoPush/ |
Widget and controls extension; share extension; the extension that opens a paired Hermes's notifications |
Watch/, WatchWidgets/ |
The Apple Watch app, and its complication |
EchoTests/, EchoUITests/ |
Tests |
companion/ |
The website, the push-notif |