Skip to content

Repository files navigation

ArchForge

AI-powered TUI for PKGBUILD generation and AUR management.

Описание

ArchForge — это инструмент командной строки и TUI для генерации PKGBUILD файлов из описания на естественном языке и управления пакетами AUR.

Установка

Из AUR (рекомендуется)

# Using yay
yay -S archforge-git
# Using paru
paru -S archforge-git

Из исходников

git clone https://github.com/Scqxd/archforge.git
cd archforge
cargo build --release
./target/release/archforge --version

Быстрый старт

Генерация PKGBUILD

# Описание пакета -> готовый PKGBUILD
archforge generate "Консольный hello world на C"
archforge generate "Neovim с поддержкой Python и Lua"
archforge generate "Firefox с VAAPI"

Интерактивный режим

archforge interactive
# или просто
archforge

AI Генерация PKGBUILD

ArchForge использует Chutes API (MiniMaxAI) для интеллектуальной генерации PKGBUILD.

Настройка API ключа

Вариант 1: Переменная окружения

export CHUTES_API_KEY="твой_ключ"
archforge generate "пакет"

Вариант 2: Флаг --api-key

archforge generate "пакет" --api-key "твой_ключ"

Выбор AI провайдера

# Chutes API (MiniMaxAI/MiniMax-M2.1-TEE) - по умолчанию
archforge generate "пакет" --ai-provider chutes
# Локальная модель (в разработке)
archforge generate "пакет" --ai-provider local# OpenAI (в разработке)
archforge generate "пакет" --ai-provider openai

Примеры

# Простой C/C++ проект
archforge generate "Hello world на C"# Go приложение
archforge generate "HTTP сервер на Go"# Python утилита
archforge generate "Парсер JSON на Python"# Сложный пакет
archforge generate "Neovim с LSP для Rust и autocomplete"

Команды

generate — Генерация PKGBUILD

archforge generate "описание" [опции]
Опции:
-o, --output FILE Сохранить в файл
-q, --quiet Только вывод PKGBUILD
-a, --ai-provider Выбор AI провайдера (chutes/local/openai)
--api-key API ключ
Примеры:
archforge generate "firefox" -o PKGBUILD
archforge generate "hello" --api-key "ключ"

search — Поиск в AUR

archforge search "запрос" [опции]
Опции:
-j, --json JSON вывод
-l, --limit Лимит результатов (по умолчанию 20)
Примеры:
archforge search neovim
archforge search firefox -j

info — Информация о пакете

archforge info <имя_пакета>

build — Сборка пакета

archforge build <PKGBUILD/директория> [опции]
Опции:
-i, --install Установить после сборки
--nodeps Пропустить проверку зависимостей

init — Создание проекта

archforge init <имя> [опции]
Опции:
-t, --template Шаблон (basic)
-d, --directory Директория

interactive — Интерактивный TUI

archforge interactive

status — Статус системы

archforge status

cache — Управление кэшем

archforge cache stats # Статистика кэша
archforge cache models # Очистить кэш моделей
archforge cache builds # Очистить кэш сборок
archforge cache all # Очистить всё

Fallback шаблоны

Если AI недоступен, ArchForge автоматически использует шаблоны с автоопределением языка:

Ключевые словаmakedependsОсобенности
C, C++gcc, makemake сборка
Go, golanggogo build
Pythonpython, pipsetup.py
(по умолчанию)gcc, makeПростой C шаблон

Конфигурация

Файл: ~/.config/archforge/config.toml

[general]
verbose = falsecache_dir = "~/.cache/archforge"
[ai]
# Chutes API ключ (или используй CHUTES_API_KEY env)provider = "chutes"
[build]
makepkg_flags = ["--noconfirm", "--needed"]
parallel_jobs = 4
[aur]
rpc_url = "https://aur.archlinux.org/rpc"

Требования

  • Rust 1.75+
  • cargo
  • makepkg (base-devel)
  • git

Лицензия

MIT License

Ссылки

About

AI-powered TUI for PKGBUILD generation and AUR management

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages