pase-omo

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

No AI report is available for this listing yet.

SUMMARY

OmO agent provider and workflow UI for Paseo - DAG graphs, live todo cards, approval popups, mobile-ready

README.md

pase-omo

OmO — inside Paseo.

Workflow DAGs you can read. Todo lists that tick off live.
Questions you can actually answer. On desktop and on your phone.

English · 한국어

OmO running a six-node workflow DAG in Paseo


What you get

OmO as an agent provider

Once installed, OmO shows up in Paseo's model picker like any other agent.
Sessions, streaming, tool calls and child agents all run through Paseo's own chat.

Workflow DAGs, drawn as graphs

Every workflow run becomes a real dependency graph in the chat timeline. Arrows
turn green as upstream nodes finish, and the run keeps one card instead of
stacking a new one on every state change.

DAG card in the chat timeline

The same run opens in a side panel with every session under the project, run and
task counts, and an inspector: tap any node for its description, the agent and
model that ran it, turn and tool-call counts, elapsed time and the linked task id.

OmO DAG panel with the node detail inspector open

Todo cards that tick off live

The plugin replaces Paseo's built-in todo row with a card that updates in place
while the turn is still streaming — you watch the checklist fill instead of
re-reading a wall of text.

Todo card while the turn is running Todo card once every item is done

Approvals, questions and choices

When OmO needs a confirmation, a pick from a list, or a free-text answer, it
arrives as a popup with the suggested answers as buttons — plus a Needs reply
pill in the composer so you never miss one while scrolled away.

OmO question popup with suggested answers

Composer pills

The composer is the one surface that is always on screen, so that is where the
pills live. The DAG pill opens the running graph in a popover; the approvals pill
opens any pending request.

DAG popover opened from the composer pill

Panels

Panel What it shows
OmO DAG Every session under a project path, run and task counts, and the full graph for the selected run
OmO Approvals Pending confirmations, choices and questions for the current agent
OmO Folders Sessions, runs and tasks grouped into a browsable tree

All three open from the command center or the workspace tab bar.

Built for a phone too

Every surface answers to one readability contract instead of degrading into a
flat list on a narrow screen. The graph turns on its side, shrinks only as far as
a readability floor and then scrolls, type stops shrinking at a floor of its own,
and a node too short for two lines drops the state word rather than clipping its
label.

DAG card on a phone DAG pill sheet on a phone
Chat DAG card DAG pill sheet
Approvals sheet on a phone Todo card on a phone
Approvals sheet Live todo card

Requirements

  • Paseo 0.8.0 or newer (declared in paseo-plugin.json)
  • OmO installed and reachable — the plugin resolves the omo executable from
    PATH first, then falls back to a Bun global install
    (~/.bun/install/global/node_modules/omo-ai/bin/omo.js)

Install

Paseo installs plugins straight from a Git source. On the machine running the
Paseo daemon:

paseo plugin add Hakubisual/pase-omo

That is the GitHub owner/repository shorthand. A full Git URL works too:

paseo plugin add https://github.com/Hakubisual/pase-omo.git

Omitting --ref tracks the repository's default branch. To pin a commit or tag,
or to track a different branch, pass one:

paseo plugin add Hakubisual/pase-omo --ref main

Korean interface

The ko branch is the same plugin with every string in Korean:

paseo plugin add Hakubisual/pase-omo --ref ko

Manage it

paseo plugin ls              # installed plugins and their runtime ids
paseo plugin status          # fetch tracked refs, compare installed vs available
paseo plugin update omo      # update this plugin
paseo plugin update --all    # update everything
paseo plugin logs omo        # recent plugin log tail

The plugin registers under the runtime id omo. Pass --id at install time
if that id is already taken on your daemon.

From a local checkout

git clone https://github.com/Hakubisual/pase-omo.git
paseo plugin install /absolute/path/to/pase-omo

Trust every plugin you add. Paseo plugins are unsandboxed: server code runs
with the daemon user's access on the daemon host, and client contributions run
inside the Paseo app. Installing a plugin means trusting its codebase, its
dependencies and its future updates.


Development

bun install
bun x tsc --noEmit    # types
bun x vitest run      # tests

No build step is declared, so Paseo compiles the sources directly on install —
there is no bundle to produce.

extension/omo-tools.ts is the OmO-side half: an optional extension exposing a
paseo_workers tool so OmO can launch and inspect Paseo terminal workers itself.
It types against a local structural declaration of the senpi extension API
(extension/senpi-types.ts), so the repository stays installable and
type-checkable without a local senpi checkout.

Path Role
index.client.tsx Every client contribution: panels, surface, command items, renderers, pills
index.server.ts Daemon side: the agent provider, DAG/approval/worker RPCs, timeline publisher
client/ React Native views — graph layout and visuals, DAG panel, approvals, folders, todo card
server/ Provider, session store, DAG snapshot readers, worker manager
shared/ Row schemas and RPC contracts shared by both halves

Thanks

Huge shout-out to YeonGyu — github.com/code-yeongyu,
the author of OmO.

OmO has genuinely been changing my life — how I work, the pace I work at, and what
I believe one person can actually ship in a day. I built this plugin because I
wanted to see what OmO was doing, and none of it would exist without his work.
Go look at what he builds.

And thanks to the Paseo team for a plugin API open enough
that an agent can bring its whole interface with it.

This repository was written with OmO,
which is why OmO appears in the commit history as a co-author of its own plugin.


License

MIT

Reviews (0)

No results found