Automations

An automation watches your terminals for a screen you described and presses the keys you chose. The usual use: answering the same permission prompt for the hundredth time.

How one fires

  1. The screen settles. Connecto waits until a terminal's screen stops changing (about one second, half a second when the terminal is asking for you), then reads the bottom of it. Only an automation whose trigger phrases are all on the screen is sent to Jev, which usually answers in a fraction of a second; the keys are typed as soon as the answer arrives.
  2. The trigger matches. Every phrase in the automation's trigger must be on the screen. This check is local and instant.
  3. The classifier decides. Only then is the screen text sent to Jev, a classifier model, with the automation's question. Secrets are redacted first.
  4. The keys are typed, if Jev's answer is the one the automation wants and its confidence is at or above your threshold.

If Jev's best answer is the right one but it is less sure than your threshold, Connecto asks you instead of typing. Anything else, and nothing happens.

Set up

Open Terminal → Automations… and go to the Setup tab. You need three things:

The automations that come with Connecto

They come in two groups: Accept defaults for Claude (the five Claude screens) and Accept defaults for Codex (the Codex folder prompt). A group has one switch for all of it, opens to show its automations on a click anywhere on its line, and each automation inside still has its own switch. The group shows how many of its automations are on ("3 of 5 on"), and the All, Claude and Codex tabs filter groups like any other row. Your own automations stay loose rows below the groups. If you already had these automations, they are simply shown inside their group: nothing is copied again and nothing you switched on is switched off.

A new install starts with six, ready to look at and switched off. Each one answers a first-run screen that Claude Code or Codex shows, so a newcomer's first terminal gets past it:

NameAgentWhat it does
Continue Claude welcome screenClaudePresses Enter on the "Welcome to Claude Code" security notes.
Choose the Dark theme in Claude setupClaudePresses Enter on the first-run text-style picker when Dark mode is selected.
Accept Claude folder trustClaudeAnswers "Yes, I trust this folder" on the workspace trust prompt.
Accept Claude Bypass Permissions warningClaudeAnswers "Yes, I accept" on the Bypass Permissions warning.
Accept the Claude in Chrome promptClaudeAnswers "Yes, use my browser" on the Chrome extension prompt.
Accept the Codex folder promptCodexAnswers "Trust and continue" on Codex's folder prompt.

They are off because an automation asks a model about the screen and types keys on its own, which needs your Jev key and your say-so. Some of them accept security prompts for you: switch on only the ones you want. Switch one on in the list once the key is set; until then the sheet says the key is not set.

Create an automation

  1. Click New automation, give it a name such as Accept edits, and choose Claude or Codex.
  2. Describe it: When the terminal shows… and Do this…. Or leave both empty and paste a screenshot of the prompt into the session that opens.
  3. A terminal opens with an agent that writes the rule with you. It checks its own work, and can test the trigger against a saved screen.
  4. When it is finished, turn on Enabled yourself. The agent is told never to do that for you.

Open session on an automation takes you back to that conversation, to change the rule later.

The Automations sheet

A strip under the sheet's tabs filters the list: All, Claude, Codex, each with how many it holds (a plain shell cannot have automations). The tab you choose is remembered the next time you open the sheet, and New automation creates one for the selected agent. The tabs are reachable with the keyboard like any button. Click anywhere on a row's line to open or close it; its switch and buttons keep their own clicks.

The file

Each automation is a folder in Connecto Home/automations/ with an automation.json. You rarely need to edit it by hand, but it is plain and readable:

{
  "version": 1,
  "name": "Approve edit prompts",
  "enabled": false,
  "agent": "claude",
  "model": "jev-1.14.0",
  "question": {
    "type": "choice",
    "instructions": "The text is the screen of a coding-agent terminal. Decide whether the terminal is showing a permission prompt that asks the user to approve a file edit.",
    "criteria": {
      "edit_prompt": "The screen shows a question like `Do you want to make this edit to <file>?` with numbered options. The prompt is still waiting for an answer.",
      "other": "Anything else: normal conversation, a different permission prompt, or output that only mentions an edit prompt."
    }
  },
  "match": "edit_prompt",
  "keys": ["down", "enter"],
  "trigger": ["Do you want to make this edit", "allow all edits during this session"],
  "threshold": 0.8
}
FieldRule
name1 to 64 characters.
agentWhich tool's terminals it applies to.
questionType choice: 2 to 32 named answers, one of them for "anything else". Type noul: a yes/no question, with match set to "true".
matchThe answer that fires the automation.
keys1 to 20 keys: enter esc tab shift-tab space backspace delete up down left right home end pageup pagedown insert f1…f12 ctrl-<letter> alt-<letter>, or one printable character.
triggerRequired. 1 to 5 phrases of 3 to 200 characters. Case, extra spaces, line wraps and box borders are ignored.
thresholdAbove 0.5, up to 1. The default is 0.8.

Check a file from any terminal:

connecto automation check <name>
connecto automation check <name> --screen screen.txt

Limits that keep it safe

An automation that approves prompts removes a check. Write the trigger and the question narrowly, for one kind of prompt. "Approve everything" is better done by choosing a launch mode on purpose.