iris: screenshots for agents — manifest, cargo-building sidecar, session wrapper, affordance and skill
Designed 2026-08-20 in conversation; PLUGIN.md is the decision record. Nothing here has run yet: no live install, no build, no capture. The wrapper's two launch branches and the cookie-seeding are written against documented behaviour, not observed behaviour. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# Iris
|
||||
|
||||
Website screenshots for your agents. Install this and every agent you talk to can *see* rendered web
|
||||
pages — any site's, and your own Officer's — instead of inferring them from source code.
|
||||
|
||||
Built around [iris](https://github.com/brijr/iris), a Rust CLI that renders pages in a real
|
||||
Chrome-family browser (Brave, Chromium and Chrome all work) and captures them as images: full pages,
|
||||
single elements, phone and tablet viewports, light and dark.
|
||||
|
||||
## What installing gets you
|
||||
|
||||
- The `iris` CLI, compiled from source on first start and put on the standard path.
|
||||
- `iris-browser`, a launcher that lets captures reuse the web sessions you are signed into.
|
||||
- An affordance and a skill, so agents know the tool exists and how to drive it — you never have to
|
||||
explain it to them.
|
||||
|
||||
There is no screen and no dock tile: the consumer is the agent's shell, not you.
|
||||
|
||||
## Authenticated captures
|
||||
|
||||
Sessions are yours to grant, by signing in — never by handing credentials to an agent. The desktop
|
||||
plugin's browser keeps a persistent profile at `~/.config/officer/browser-profile`; sign in to a site
|
||||
there once, and captures ride a read-only copy of those cookies from then on. Each account's sessions
|
||||
live in that account's own home, so nobody captures with anyone else's logins.
|
||||
|
||||
## Requirements
|
||||
|
||||
- **Rust 1.88 or newer.** The install brings in your distribution's `cargo`; if that is older than 1.88
|
||||
(Ubuntu's currently is), the sidecar refuses with the exact rustup one-liner to run — check
|
||||
`pm2 logs officer-iris`.
|
||||
- **A Chrome-family browser.** Not installed by this plugin: the desktop plugin is the intended source,
|
||||
since its browser is also where you sign in. Any Brave/Chromium/Chrome already on the machine works
|
||||
for unauthenticated captures.
|
||||
|
||||
## State of this plugin, plainly
|
||||
|
||||
- The build-and-supervise sidecar, the wrapper, the affordance and the skill are written but **not yet
|
||||
verified on a live install** — this plugin has not been through the install table on a real machine.
|
||||
- The wrapper's session-seeding (copying cookies into the capture profile) is a design that needs live
|
||||
verification against how iris launches its browser; if iris supplies its own profile directory the
|
||||
wrapper seeds that instead of overriding it, but neither branch has run yet.
|
||||
- The desktop plugin this integrates with is not published yet; until it is, the persistent profile is
|
||||
whatever you put at `~/.config/officer/browser-profile` yourself.
|
||||
- No screen, no API, no database — deliberate for now, not missing.
|
||||
Reference in New Issue
Block a user