GitHub Hot Board

GitHub Hot Board · Repository archive

benord-labs/frink

Desktop-first, open-source (MIT) application for running parallel agents, and multi-step custom workflows triggered by schedules, webhooks or events from tools like Linear and Sentry, across your already-used providers. (This description comes from the repository itself.)

Data at October 22benord-labs

Best

#128

Underappreciated Gems

100

Total stars

5

Total forks

1

Days on boards (30d)

README

Frink Frink

GitHub stars License: MIT Supported platforms: macOS 13 or later, and Linux

Desktop-first app for parallel agents and triggered multi-step workflows.
Workflows can include steps you write yourself in code, alongside agent, command and approval steps.

Save a routine as a Flow and it starts by itself: on a schedule, from any webhook, or from an event in Linear, Shortcut, ClickUp, Sentry, PostHog or Vercel.
Finished work and agent questions wait for you in the Work Queue, on your computer or on your iPhone (beta).
It all runs on your computer while Frink is open, with the AI coding tool you already use. No Frink account.

A sentence typed into Frink becomes a Flow with a schedule and an approval step, a finished task is reviewed from the Work Queue, and four agents work side by side

Features

Run four agents side by side

Split the window into up to four panes and give each agent a different job. They work at the same time, and each pane keeps its own model and its own diff to review. Put each one on its own git worktree and they never touch the same files.

Docs →

Four panes, each with an agent working on a different task in the same project at the same time

One sentence becomes an automation

Type the routine the way you would say it: "Every weekday at 9am, run the tests. If any fail, have an agent fix them, then wait for my approval before it opens a PR." Frink builds it as a Flow and lists every step, so you can read it and change it before it runs.

Docs →

Asking the agent to save a weekday test-and-fix routine as a Flow

It starts when something happens

A new ticket in Linear, Shortcut or ClickUp, an error in Sentry, an event in PostHog or Vercel, any webhook, or a time of day. The Flow checks a condition to pick its path, and waits at an approval step until you say yes.

Docs →

Choosing a Flow trigger, then a condition step and an approval step

Everything that needs you, in one queue

Every run from every project shows up in the Work Queue as running, ready for review or queued. A badge appears when a Flow stops for approval or an agent has a question. Read what it did, then approve it or reply to send it back.

Docs →

Reviewing a finished task from the Work Queue and marking it complete

Check the work and fix it yourself

Every file the agent changes shows as a diff. Open it in the built-in editor, change a line and save, run a command in the terminal, or roll the chat and its code back to an earlier point.

Docs →

Opening a file from the tree, editing it and saving, with the change shown inline

Also in the box:

  • Custom steps — need a step Frink doesn't have? Ask the agent to write one in JavaScript, or write it yourself, and reuse it in any Flow. For another language, use a command step.
  • Plugins & MCP — connect Linear, Shortcut, ClickUp, GitHub, Notion, Slack, Sentry, PostHog and more, as chat tools and Flow steps.
  • Your own AI sign-in — uses your existing Claude Code or Codex login, the OpenCode or GitHub Copilot you installed, or your Cursor sign-in. Frink only checks that you are signed in and leaves the login with the tool. If you paste an Anthropic API key instead, it is stored encrypted on your computer.
  • Local-first — chats, Flows and tasks live in SQLite on your machine. No account needed. Official builds send anonymous usage counts and crash reports: everything Frink sends.

Supported Agents

Claude Code logo Claude Code   Codex logo Codex   OpenCode logo OpenCode   GitHub Copilot logo GitHub Copilot   Cursor logo Cursor

Bring your own subscription or API key — Frink runs the agent, you keep the account.


Install

Linux (x64 and arm64)

Download the AppImage or the .deb from frink.dev/download, or directly: x64 AppImage · .deb, arm64 AppImage · .deb. Both update themselves.

  • AppImage (any distro): chmod +x Frink-X.Y.Z.AppImage && ./Frink-X.Y.Z.AppImage, with X.Y.Z the version you downloaded. It does not need libfuse2: it mounts itself with fusermount3 from the fuse3 package. If it will not start, install fuse3 or start it with --appimage-extract-and-run. Keep it in a folder you can write to, such as ~/Applications, so updates can replace it.
  • .deb (Debian/Ubuntu): sudo apt install ./frink_X.Y.Z_amd64.deb (_arm64.deb on arm64). Updates ask for your password in a system prompt.

Frink saves API keys and MCP credentials only when it can encrypt them with a desktop keyring (GNOME Keyring or KWallet). Without one it does not save them, so install one and relaunch Frink before adding accounts.


Community & Support


Developing

Want to contribute or run locally? See our CONTRIBUTING.md guide.

License

Frink is licensed under the MIT License. Copyright 2026 Benji Norval.

Third-party licenses are listed in THIRD_PARTY_LICENSES.md.

Current rankings

  • 128

    Underappreciated Gems

    100 stars · 5 fork · Total stars (ascending)

    Underrated →

Momentum, past 30 days

Cumulative stars

Rank movement

← Back to boards