Cana logocana.build

Cana Desktop

Code, terminal and approvals

The agent reads, edits and runs code in your own project folder, you watch its terminals live beside your own, and you decide which edits and commands it may run without asking.

Live terminalsApprove or denyYour own folder

How it works

The idea in 5 steps

  1. 1

    The agent works in your own folder

    It searches your project, edits files, uses git and runs commands in the folder you opened. Your code stays as plain files in your own repository.

  2. 2

    You choose how much it does alone

    Each chat has a permission mode, from asking before anything runs to no prompts at all. You can change it at any point in the chat.

  3. 3

    Anything it must ask about waits for you

    An edit or command that needs your say appears as a card in the chat. You approve it, deny it, or allow that tool for the rest of the session.

  4. 4

    Its terminals run in plain sight

    Every terminal the agent starts is listed live next to your own, so you can watch the output or type an answer into a prompt.

  5. 5

    Some places are always off limits

    Credential folders, keychains, browser profiles and files such as keys and .env files are blocked in every mode, even with no prompts at all.

Tutorial

Step by step

Before you start

  • Cana Desktop installed and signed in
  • A project folder open in the chat (Cmd+O on a Mac, Ctrl+O on Windows)
  • A project with tests you can run, ideally under Git
  1. 1

    Pick a permission mode

    In the message box, click the Permission mode button and choose Accept Edits.

    You'll see: The button shows Accept Edits: file edits apply straight away, while commands and deletions still ask.

    Tip: Use Ask to check every step, or Bypass All only in a project you can safely throw away.

  2. 2

    Ask for the change

    Describe the change and how to check it, for example "rename getUser to fetchUser everywhere, run the tests and fix anything that breaks". Click Send message.

    You'll see: The agent searches the project and edits the files, showing each change in the chat.

  3. 3

    Approve or deny its commands

    When a card asks to run a command, read it and click Approve, or Deny to refuse.

    You'll see: An approved command runs and its output appears in the chat; a denied one is skipped and the agent is told.

    Tip: Open More approval options and choose Always Allow to stop being asked about that tool this session.

  4. 4

    Watch its terminals

    On the left rail, click More tools, then Terminal.

    You'll see: Agent terminals lists every terminal the agent started, with live output, above Your terminals.

    Tip: Click Pin to the rail next to Terminal in that menu to keep it one click away.

  5. 5

    Use a terminal of your own

    On the Terminal page, click New terminal and type your own commands, such as checking git status.

    You'll see: A new shell in your project folder, under Your terminals, next to the agent's.

  6. 6

    Find a command that failed

    Open Command History from the terminal, type into Search commands..., or choose Failed or Saved.

    You'll see: Earlier commands with their results; Failed shows only the ones that went wrong.

  7. 7

    Review the changes in the editor

    Click More tools, then Editor. The first time, click Download Editor (~470 MB).

    You'll see: A full code editor with your files, search and git, where you can read every change the agent made.

Worked example

A safe rename across the whole project

A function is used in dozens of files and you want it renamed everywhere, with the tests proving nothing broke.

You type

Rename getUser to fetchUser everywhere in this project, including tests and imports. Then run the test suite and fix anything that fails. Tell me which files changed.
  1. 1.Permission mode: Accept Edits, so file edits apply but commands still ask
  2. 2.Paste the request and click Send message
  3. 3.Click Approve when it asks to run the tests
  4. 4.Follow the run under Agent terminals

Result: Every use of the function renamed, the tests run and passing, and a list of the changed files to review in the editor.

Troubleshooting

If something doesn't work

I keep being asked to approve the same command
Open More approval options on the card and choose Always Allow for that tool. To skip command prompts in every chat, open Settings, Agents and turn on Terminal commands under Auto-approve Actions.
Every new chat starts in a mode I don't want
Open Settings, Agents and change Default permission mode. New chats start there; each chat can still be changed from the message box.
I can't see the Terminal or Editor on the rail
They are in the More tools menu by default. Open it and use Pin to the rail to keep one on the rail.
The agent says it can't open a file
The file is in a protected location, such as a credentials folder or a .env file. That is blocked in every mode; if a value is needed, paste it yourself.

For you

Get scripts and small tools built without memorising commands

Describe the result you need; the agent writes the code and runs it. Approval cards show each step before it happens, so you stay confident about what changes on your computer.

Clean up a data file

"Remove duplicate rows from customers.csv and save a cleaned copy." Approve the script before it runs.

Rename hundreds of files

"Rename the photos in this folder by date taken." Check the command, then Approve.

Small internal script

Have it write and run a script that totals this month's invoices from a folder of PDFs.

What changes for professionals: Routine file and data work done in minutes, with every action shown before it runs.

Technical details

What it connects to, and the controls you have

Permission modes
Ask, Accept Edits, Research and Plan, and Bypass All, chosen per chat; a default can be set in Settings, Agents
Auto-approve
Settings can let chosen kinds of action, such as terminal commands, run without asking
Protected locations
SSH, cloud and other credential folders, keychains, browser profiles, password-manager data and files such as .env, keys and certificates are blocked in every mode, including Bypass All
Terminals
Several terminals at once, the agent's terminals listed live beside your own, and a searchable command history with filters for failed and saved commands
Editor
A full code editor with file tree, search, git and an open extension registry, downloaded the first time you open it (about 470 MB)
Your code
Plain files in your own folder and Git repository

Why Cana

What you get here

  • Four permission modes, from approve-every-action to no prompts, chosen per chat
  • Credential folders and secret files are blocked in every mode, including Bypass All
  • The agent's terminals are visible live, and you can type into them
  • A full code editor inside Cana, installed only when you ask for it

Cana is opening up in waves. Get your place.

Join the waitlist