Skip to content

What it won't do and what it asks first

The Assistant can do most of what you can do in Frame Job, but a few jobs stay with you. It won’t record, close its own project or send audio to the cloud, and it stops to ask before it exports, saves, copies media or writes a file to a path it chose.

Where
Inspector ▸ Assistant tab, the row headed “The assistant asks first:”
Needs
An Anthropic API key. See Set up the Assistant.
Agent tools
record_screenclose_projecttranscribetranscribe_for_fillersexportexport_captionssave_projectconsolidate_mediaexport_graphicnew_project_from_rangemake_vertical_versionnew_projectrender_framerender_graphic

The Assistant works by calling tools, one for each job. Four jobs are yours to do yourself.

The job Tool Why Do it with
Record the screen or a camera record_screen Recording needs a person at the Record button. File ▸ New Recording… (⌥⌘N)
Close the project close_project Closing the project would close the window the conversation lives in. File ▸ Close (⌘W)
Transcribe in the cloud transcribe with the AssemblyAI engine Audio leaves your Mac only when you choose it, with the price in front of you. File ▸ Generate Captions…
Transcribe for filler words transcribe_for_fillers The same: it uploads audio to the cloud. Clip ▸ Remove Filler Words…

record_screen, close_project and transcribe_for_fillers are taken out of what the Assistant can see, so it can’t call them. transcribe stays, because transcribing on this Mac is allowed, and only a call that names the cloud engine is stopped.

If one of the four is called anyway, it doesn’t run. The transcript shows a failed: line, “tool is not available to the assistant:” and the reason, which names the menu item to use instead. For the cloud engine the line starts transcribe with engine "assemblyai".

Before it writes a movie, a caption file, a graphic package, the project, or anything else to a path it chose, the Assistant waits for you.

  1. The row headed “The assistant asks first:” appears in the Assistant tab, with a sentence saying what will happen, and Allow and Deny buttons. See what each question reads.

  2. Read the sentence. A capitalised REPLACES means a file is already there.

  3. Click Allow to run the tool, or Deny to decline.

Nothing runs until you click Allow. A question has no time limit, and it waits until you answer. You answer with a click only: no key answers it, and ↩ in the message field beeps. While a question waits, the Send button reads Stop.

The transcript keeps a record of each answer, as Allowed: or Declined: and the sentence.

The first five tools in this table ask whenever they would write. The last five ask only when the Assistant gives them a path: without one they write no project package, or only a temporary file.

Tool The question reads
export “export writes path”, or “export REPLACES path” when a file is already there
export_captions “export_captions writes path”, or “export_captions REPLACES path”
save_project “save_project writes path”, or “save_project REPLACES path”, with .framejob added when it’s missing
consolidate_media “consolidate_media copies every referenced file into package/media”
export_graphic “export_graphic writes path”, or “export_graphic REPLACES path”, with .fjgraphic added when it’s missing
new_project_from_range “new_project_from_range writes path”, with .framejob added when it’s missing
make_vertical_version “make_vertical_version writes path”, with .framejob added when it’s missing
new_project “new_project writes path”, or “new_project REPLACES path”, with .framejob added when it’s missing
render_frame “render_frame writes path”, or “render_frame REPLACES path”, with the format’s extension
render_graphic “render_graphic writes path”, or “render_graphic REPLACES path”, with .png added when it’s missing

The path in the sentence is the file the tool will write, with the extension Frame Job adds or corrects, and REPLACES means something is already at that file. A ~ in the path is expanded before the question is asked, so the sentence shows the full path.

A few answers depend on what’s on disk:

  • Saving a project that’s already on disk reads “save_project REPLACES path”, because the package is there. That’s the normal question for an ordinary save.
  • A scope render_frame is asked for is written beside the picture, as path.waveform.json for a waveform. When that file is already there, the sentence goes on “, and REPLACES path.waveform.json”.

Frame Job doesn’t ask about a call it can only refuse because of its path. The Assistant gets the reason instead, and nothing is written:

  • A call with no path where one is needed: export, export_captions and export_graphic, and save_project or consolidate_media in a project that has never been saved. consolidate_media needs the project saved first.
  • A path another open project holds.
  • For new_project_from_range and make_vertical_version, which never replace anything, a path with something already there. The Assistant is told to choose a new path.

A question can still end in a refusal for another reason, such as a preset Frame Job doesn’t have or a folder that doesn’t exist, and nothing is written after Allow. If an argument of export can’t be read, the sentence keeps the path as the Assistant gave it.

Some tools write files without a question.

What it does Tools
Writes a rendered frame, a PNG unless another format is asked for, to a temporary file, when the call names no path render_frame
Writes a graphic’s contact sheet as a PNG to a temporary file, when the call names no path render_graphic
Writes modules, fonts and assets into the project’s graphics folder write_graphic, import_graphic_font, import_graphic_asset, import_graphic

import_graphic replaces nothing: a name that’s already taken gets a suffix, and a picture whose name clashes stops the import.

While a question waits, a small dot in the accent colour shows on the Assistant tab title, whichever inspector tab you’re on. It sits to the right of the title, or raised at the title’s top-right corner when the tab is narrow.

The dot takes no clicks, so a click on it reaches the tab underneath. Frame Job doesn’t switch tabs for you. If the inspector is hidden, View ▸ Assistant (⌃⌘A) shows it and picks the tab.

Deny tells the Assistant you declined. The tool doesn’t run, and the Assistant is told not to try it again in the same turn unless you ask. The transcript shows a failed: line, “The person declined:” and the sentence, beside the Declined: record.

A question also counts as declined when the turn or the conversation ends under it, and the transcript says what ended it:

What happened The transcript reads
You clicked Deny Declined:
You clicked Stop Declined (stop):
A change of key or model in Settings ended the conversation Declined (close):
The helper, the small program that talks to Anthropic, stopped Declined (helper):

Clear and closing the window decline it too, and those take the transcript with them.

An unanswered question holds that window’s Assistant and no other’s. Other windows’ Assistants and agents over MCP keep working while it waits, and you can go on editing.

These rules belong to the Assistant. An agent connected over MCP drives the same tools directly, so it’s never asked first, and none of these tools is withheld from it.