Перейти к основному содержимому
AI-shell

AI-shell

SELECTOS AI-shell (aish) — это утилита-оболочка для управления операционной системой текстовыми сообщениями свободного формата. Утилита использует AI-ассистента для обработки сообщений администратора и преобразования их в команды.

осторожно

Не используйте текущую версию aish в production-окружениях. На данный момент утилита находится в режиме public preview.

Как попробовать aish

Утилита aish входит в состав открытого репозитория SELECTOS и доступна всем пользователям SELECTOS.

Установка и запуск

  1. Обновите список пакетов командой sudo apt update.

  2. Установите aish командой sudo apt install aish.

  3. Запустите приложение командой aish.

Работа в aish

  1. Запустите приложение командой aish.
  2. Сделайте чат активным с помощью мыши или клавиатуры: Ctrl + →.
  3. Опишите свою задачу в поле ввода в правой части экрана и нажмите Enter для отправки сообщения.
  4. Ознакомьтесь с ответом: AI-ассистент может предложить выполнение команд для решения задачи, а так же запросить ваше разрешение на чтение и запись файлов, выполнение команд от имени пользователя.
  5. Для ответа c помощью клавиатуры возьмите в фокус кнопку Once, Always или Reject и нажмите Enter:
  • Once — разрешить действие один раз
  • Always — всегда разрешать это действие и больше не спрашивать в рамках текущей сессии
  • Reject — отказаться от действия
примечание

Действия, для которых нужно разрешение

  • чтение файлов (tool: read)
  • запись файлов (tool: write)
  • выполнение команд (tool: shell)

Интерфейс взаимодействия

По умолчанию aish имеет режим разделенного экрана. Слева открыт терминал с оболочкой пользователя, а справа — чат с AI-ассистентом.

Подсказки по управлению приложением находятся под полем ввода сообщений.

примечание

Поддержка мыши и сочетания клавиш

Мышью можно скроллить и переключаться между терминалом и чатом.

Все остальные действия выполняются с помощью клавиатуры. В совместимых с aish терминалах сочетания клавиш работают независимо от раскладки.

Примечание

  • В версии public preview в случае запуска интерактивного процесса AI-ассистент не сможет самостоятельно его завершить (например, закрыть редактор текста). Чтобы AI-ассистент смог выполнять команды, завершите интерактивные процессы самостоятельно.
  • Вы можете остановить выполнение команды, переключив фокус на терминал мышью или комбинацией клавиш Ctrl + ← и остановить команду с помощью Ctrl + С.
  • Команды, предлагаемые AI-ассистентом, будут выполнены от имени текущего пользователя.

Управление приложением

Ctrl + ←/→переключение между терминалом и чатом (или мышью)
Ctrl + Lсброс контекста чата
Ctrl + Состановить генерацию ответа
Ctrl + Qвыйти из aish (или написать в чате "exit")
SHIFT + ↑/↓скролл в чате (или мышью)
Enterотправить сообщение в чат (фокус на чате)

Примеры использования

Чтобы взаимодействие с помощником было эффективным, мы рекомендуем качественно описывать контекст и проблему, а также учитывать, что AI-ассистент будет выполнять команды от имени текущего пользователя. Он не сможет выполнить команды, требующие привилегий пользователя root, если у текущего пользователя недостаточно прав.

Ниже несколько примеров.

примечание

Настроить cron

Промпт: «Запускай скрипт /USER/dummy.sh каждый день в 2 ночи»

Ассистент покажет строку для crontab: 0 2 * * * /home/user/backup.sh и спросит разрешения за редактирование файла. В случае согласия задача будет добавлена в cron -l для текущего пользователя.

примечание

Создать и разметить RAID

Промпт: «объедини несколько дисков в RAID, разметь и примонтируй в /dev/» Ассистент выполнит следующие действия в случае азрешения:

  • установит mdadm для создания массива,
  • проверит, какие файловые системы и точки монтирования уже используются дисками,
  • создаст RAID0 массив из трех дисков,
  • создаст ext4 файловую систему,
  • создаст и смонтирует RAID-устройство в /mnt/raid0,
  • добавит запись в fstab для автоматического монтирования RAID.
примечание

Создать пользователя

Промпт: «Создай нового пользователя trex»

Ассистент предложит команду sudo useradd -m trex и будет ожидать разрешения на выполнение команды. В случае принятия предлагаемой команды будет создан новый пользователь.

примечание

Найти файлы

Промпт: «Найди все файлы с текстом special content в текущей директории»

Ассистент предложит команду grep -r "special content". В случае принятия предлагаемой команды будет выведен путь до файла.

Совместимость

Совместимые

  • Gnome Terminal
  • Konsole
  • Terminator

Условно совместимые

Warpсочетания клавиш работают только в английской раскладке
Alacrittyсочетания клавиш работают только в английской раскладке
Ghosttyсочетания клавиш работают только в английской раскладке
PowerShell (windows)сочетания клавиш работают только в английской раскладке
Terminal (MacOS)переключение между чатом и терминалом доступно только мышью
iTerm2 (MacOS)
  • переключение между чатом и терминалом доступно только мышью
  • сочетания клавиш работают только в английской раскладке

Несовместимые

  • PuTTY (Windows)
  • XTerm