Noru Flow Docs

Docs  ·  Connect your AI

Tool reference

Once connected, your agent has six read-only tools. It picks the right one from what you ask, so most of the time you just talk. Here's what each does.

Every tool is read-only. Noru hands your agent what's on your screen, it never clicks, types, or acts for you. Everything runs on your Mac, and nothing leaves it unless your agent sends it on.

Capture tools

Available on the free tier, for every capture you take.

get_latest_capture

The live handoff. Returns the capture you just took, the image or images, plus its on-screen text layer and any note you added. This is what fires when you say "this," "here," or "fix the error in this screenshot."

It's consume-on-pull and time-windowed: it routes to whichever agent you talk to next, and a capture from an hour ago won't ambush an unrelated prompt. Pass text_only to get just the text and skip the image when you're saving tokens.

If the live pull comes up empty

Two things keep the live handoff honest. A capture is delivered once, so a second question right after won't re-serve the same image; and the pull only reaches back over a short, recent window, so an older capture won't be mistaken for what you mean now. Both have the same easy recovery: if the agent says there's nothing new, ask for the capture by name or describe it. It falls back to list_captures and get_capture, which read your full history without consuming or time-windowing anything.

list_captures

Browse your capture history, newest first. Each row carries its id, age, contents, source (the app, repo, and display it came from), and a note preview, so the agent can then fetch a specific one.

display, app, workspaceNarrow to one screen, app, or repo.
since, beforeBound a time window, a relative age like 1h or 2d, or an absolute time.
orderoldest_first to replay a sequence in order.

Read-only: listing delivers and consumes nothing, so it can't disturb the live handoff.

get_capture

Fetch one specific capture, by id (from list_captures), by index (1 is most recent), or by a source filter, for example get_capture(workspace='repoB') for the latest capture of another repo's screen. Returns the image or images plus any text and note. Unlike the live handoff, this doesn't consume anything, so it's safe to call repeatedly and on older captures.

search_captures

Find a past capture by what was in it. Searches the verbatim on-screen text, transcript, and notes for a word or phrase, for example "the screenshot with the Stripe 400" or "where I saw that stack trace." Returns lightweight locator rows, not images; the agent then pulls the pixels of a hit with get_capture. Read-only.

Pro (memory): beyond the free text search, the memory tier also surfaces captures related by meaning, and lets the agent find captures that look like a given one through on-device image similarity.

Audio tools

These read the measured health of a recording's microphone track. The model never hears the audio, it gets facts, not sound.

get_audio_events

List recent recordings that captured a microphone track, newest first, each with its audio-health summary: present versus silent, peak loudness in dBFS, whether it clipped, and whether a transcript landed. Use it to find a recording to inspect, or to check whether a sound was captured at all.

get_audio_analysis

The measured audio-health facts for one recording: present versus silent, onset, peak and RMS loudness, noise floor, and clipping, each with the threshold that produced it. It tells you whether a sound fired, on time, and undistorted. It can't judge whether a sound is aesthetically "right," that's reference-dependent, and the measurements are authoritative.

Pro (ears): microphone audio-health checks are free. On-device transcription fused into the timeline, and capturing system audio rather than just the mic, arrive with Pro after launch. See pricing.

You don't call these by hand

You talk to your agent the way you always do. It reads which tool fits, latest capture, a specific older one, a search, and calls it. The names here are just so you know what it's reaching for.