Перейти к содержанию

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

Это руководство поможет вам установить SILO, создать ваш первый скилл и исполнить его.

1. Установка

Вы можете установить SILO через pip или uv. Мы рекомендуем использовать uv для управления зависимостями.

pip install silo-framework
# ИЛИ
uv tool install silo-framework

Чтобы проверить установку, запустите:

silo --help
Симуляция вывода
Usage: silo [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  auth     Manage secret keys in the local vault.
  init     Scaffold a new SILO skill.
  inspect  Show detailed skill info.
  install  Install a skill to the hub.
  mcp-run  Run the SILO MCP server.
  ps       List installed skills.
  run      Execute a tool from a skill.
  search   Search for tools semantically.

2. Создание вашего первого скилла

В SILO есть CLI-инструмент для мгновенного создания заготовок скиллов. Давайте создадим скилл с именем weather.

silo init weather

Эта команда создаст папку weather с файлом skill.py. Откройте его в редакторе:

weather/skill.py
# /// script
# requires-python = ">=3.9"
# dependencies = [
#     "silo",
# ]
# ///

from silo import Skill, AgentResponse

skill = Skill(namespace="weather")

@skill.tool()
def get_forecast(city: str):
    """Возвращает прогноз погоды для города."""
    # В реальном скилле здесь был бы вызов API погоды.
    return AgentResponse(
        llm_text=f"Погода в городе {city}: солнечно, 25°C.",
        raw_data={"city": city, "temp": 25, "condition": "sunny"}
    )

Блок /// script сообщает uv, какие зависимости нужны этому файлу.

3. Установка и исполнение

Чтобы ваш скилл стал доступен в хабе SILO, установите его:

silo install ./weather

Теперь вы можете исполнить его через раннер SILO:

silo run weather get_forecast --city "Moscow"
Симуляция вывода
⠋ Executing weather:get_forecast...
╭────────────────────────────── Execution Result ───────────────────────────────╮
│ Погода в городе Moscow: солнечно, 25°C.                                      │
╰──────────────────────────────────────────────────────────────────────────────╯

4. Как работают секреты

Если вашему скиллу нужен API-ключ, используйте require_secret("KEY_NAME").

При первом запуске скилла SILO: 1. Проверит переменные окружения. 2. Проверит Keychain вашей ОС. 3. Если ключ не найден, откроется окно браузера, где вы сможете безопасно ввести ключ, который затем сохранится в Keychain.

При следующих запусках ключ будет подгружаться из Keychain автоматически.

Вы можете просмотреть все инструменты и инструкции установленного скилла с помощью команды:

silo inspect weather
Симуляция вывода
⠋ Inspecting weather...
╭─────────────────────────── Skill: weather (Instructions) ────────────────────────────╮
│ Use this tool when the user asks about weather or climate.                           │
╰──────────────────────────────────────────────────────────────────────────────────────╯
                                   Available Tools
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━┓
┃ Tool Name    ┃ Description                                              ┃ Approvals ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━┩
│ get_forecast │ Возвращает прогноз погоды для города.                     │   Auto    │
└──────────────┴──────────────────────────────────────────────────────────┴───────────┘

6. Поиск инструментов

Если вы не помните точное название инструмента или хотите посмотреть, что доступно для конкретной задачи, используйте команду поиска:

silo search "узнать погоду"
Симуляция вывода
⠋ Searching for 'узнать погоду'...
                         Search results for 'узнать погоду'
┏━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Tool (ID)            ┃ Description                                                  ┃
┡━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ weather.get_forecast │ Возвращает прогноз погоды для города.                         │
└──────────────────────┴──────────────────────────────────────────────────────────────┘

SILO использует семантическое сопоставление, чтобы найти наиболее релевантные инструменты во всех установленных скиллов.

Что дальше?

Теперь, когда вы знаете основы, изучите: * Написание скиллов: Более глубокий взгляд на инструменты и типы ответов. * Безопасность и управление секретами: Как SILO защищает ваши данные.