Metadata-Version: 2.4
Name: kosoftiks
Version: 0.2.0
Summary: Укороченный вызов к ИИ + запуск файлов и установка по ссылке
Author: kosoftiks
License: MIT
Keywords: ai,llm,openrouter,gemini,openai,utils,installer,launcher
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.28
Dynamic: license-file

# kosoftiks — укороченный вызов к ИИ

Одна строка настройки — и вызывай ИИ коротко:

```python
from kosoftiks import register, kosoftiks

register(provider="openrouter", model="gemini-3-pro", api_key="sk-or-...")

ответ = kosoftiks("Привет! Кто ты?")
print(ответ)
```

## Установка

```bash
pip install kosoftiks
```

## Настройка

```python
from kosoftiks import register, kosoftiks

# Вариант 1: ключ прямо в коде (только для тестов!)
register(provider="openrouter", model="gemini-3-pro", api_key="sk-or-ТВОЙ_КЛЮЧ")

# Вариант 2 (правильно): ключ в переменной окружения
# export OPENROUTER_API_KEY="sk-or-..."
register(provider="openrouter", model="gemini-3-pro")
```

Короткие имена моделей (сами превращаются в полные ID OpenRouter):

| Пишешь | Превращается в |
|---|---|
| `gemini-3-pro` | `google/gemini-2.5-pro` |
| `gemini-flash` | `google/gemini-2.0-flash-001` |
| `gpt-4o` | `openai/gpt-4o` |
| `gpt-4o-mini` | `openai/gpt-4o-mini` |

Можно писать и полный ID сразу: `model="google/gemini-2.0-flash-001"`.

## Способы вызова

```python
# Способ 1: обычный
ответ = kosoftiks("Напиши хокку про код")

# Способ 2: фабрика функций
ai = kosoftiks(register(provider="openrouter", model="gemini-3-pro"))
ответ = ai("Напиши шутку")

# Способ 3: всё в одну строку
ответ = kosoftiks("Привет!", provider="openrouter", model="gpt-4o-mini", api_key="sk-or-...")

# С системным промптом
ответ = kosoftiks("Привет!", system="Ты пират. Отвечай как пират.")
```

## Запуск файлов и установка программ

```python
from kosoftiks import kosoftiks, run, install

# Запустить файл
kosoftiks(run("file", "C:/Games/game.exe"))

# Запустить с правами администратора (3-й параметр "adm", выскочит окно UAC)
kosoftiks(run("file", "C:/setup.exe", "adm"))

# Выполнить команду
kosoftiks(run("cmd", "notepad"))

# Скачать и запустить установщик по ссылке
kosoftiks(install("https://example.com/setup.exe"))

# Тихая установка + права админа
kosoftiks(install("https://example.com/setup.exe", silent=True, admin=True))

# Только скачать, не запускать
kosoftiks(install("https://example.com/app.msi", run_after=False))
```

`run()` и `install()` выполняются сразу — обёртка `kosoftiks()` необязательна,
но с ней стиль единый. Результат — dict: `{"ok": True, "message": ..., "pid": ...}`.

Все параметры `install()`: `filename=` (имя файла), `silent=` (тихая установка),
`args=` (свои ключи, например `"/S"`), `admin=` (права админа),
`run_after=` (False — только скачать), `folder=` (куда скачать).

## Провайдеры

- `openrouter` (по умолчанию) — https://openrouter.ai/
- `openai` — https://platform.openai.com/

## License

MIT
