Yenisei CLIFeatures

Features

What the assistant can do in a project, how it shows changes and when it asks for permission.

The assistant reads and edits code, runs commands and tests, reads documents and saves every change it makes to git. This page describes exactly what it does at each step and when it stops to ask you.

The assistant builds a map of files with their functions and classes and searches through the code. The /map command shows the map.

Editing files

The assistant shows every edit as - and + lines with a count of changed lines. If a file uses Windows line endings, the edit preserves them.

Two edits in main.py and a commit after the task

File permissions

  • Before deleting a file, the assistant asks for permission.
  • It also asks before accessing files outside the working folder, once for each path.
  • If you answered "no", no command will touch that file until the end of the task.

Running commands

The assistant runs commands on its own, but asks for permission before some of them.

  • Read-only commands run immediately: ls, cat, grep, git status, git diff, git log, and on Windows dir, type.
  • Other commands wait for your answer to the question "? run: … [y/N]".
  • Dangerous commands are always confirmed with you, even in auto mode, and marked with the warning "⚠ dangerous command". These are rm, mv, curl, sudo, kill, git push, git reset, git clean, and on Windows del, rd, format and similar.
  • The whole line is checked: ls && rm file counts as dangerous.
  • Each command is given up to 3 minutes.

Before a regular command the assistant asks for permission

The assistant always asks before a dangerous command

Background processes

The assistant starts a development server or a build in the background and writes the log to the .yenisei-bg/ folder inside the project. On exit it stops everything it started.

Saving changes to git

  • After each task, the changed files are saved in a commit named yenisei: <task>. Only files the assistant changed go into the commit.
  • The /diff command shows which files are changed and not yet saved in a commit.
  • The /undo command rolls back the assistant's last commit. It never touches someone else's commit.

Rolling back the last edit with /undo

If the folder has no git, the assistant works, but does not save changes and cannot roll them back, see Frequently asked questions.

Documents

The assistant reads PDF, Word, Excel and PowerPoint files. More on the Working with files and documents page.

Auto mode

Auto mode is turned on with the -y flag at startup (yenisei -y) or with the /auto command in the conversation. In this mode the assistant does not ask for permission for regular commands, for deleting files or for access outside the working folder.

The assistant asks before dangerous commands even in auto mode.