{/ Эта страница автоматически передается из навыков SKILL.md с помощью сайта/scripts/generate-skill-docs.py. Редактируйте исходный SKILL.md, а не эту страницу. /}

Карты

Геокодирование, POI, маршруты, часовые пояса через OpenStreetMap/OSRM.

Метаданные навыки

Источник Встроенный (установлен по умолчанию)
Путь навыки/производительность/карты
Версия 1.2.0
Автор Мибай
Лицензия Массачусетский технологический институт
Платформы Linux, MacOS, Windows
Теги карты, геокодирование, места, маршрутизация, расстояние, направления, поблизости, локация, openstreetmap, номинатим, эстакада, osrm

Справочник: полный SKILL.md:::информация

Ниже приведено полное описание навыков, которые Hermes загружает при его активации. Это то, что агент видит в качестве инструкций, когда навыки активны.

Навык Карты

Геолокационная аналитика с использованием открытых источников данных. 8 команд, 44 категории POI, нулевые в зависимости (только стандартная библиотека Python), не требуется API-ключ.

Источники данных: OpenStreetMap/Nominatim, Overpass API, OSRM, TimeAPI.io.

Этот навык заменяет старые навыки find-nearby — вся функциональность find-nearby покрывается командой nearby ниже, с тем же сокращением --near "<место>" и поддержкой нескольких категорий.

Когда использовать

Предварительные требования

Python 3.8+ (только стандартная библиотека — установка через pip не требуется).

Путь к скрипту: ~/.hermes/skills/maps/scripts/maps_client.py

Команды

MAPS=~/.hermes/skills/maps/scripts/maps_client.py

поиск — Геокодирование названия места

python3 $MAPS search "Эйфелева башня"
python3 $MAPS search "1600 Pennsylvania Ave, Washington DC"

Возвращает: широту, долготу, отображаемое имя, тип, ограничивающую сторону, значение важности.

обратный — Координаты по адресу

python3 $MAPS reverse 48.8584 2.2945

Возвращает: полный адрес (улица, город, штат, страна, почтовый индекс).

рядом — Поиск мест по категории

# По координатам (например, из геометки Telegram)
python3 $MAPS nearby 48.8584 2.2945 restaurant --limit 10
python3 $MAPS nearby 40.7128 -74.0060 hospital --radius 2000

# По адресу / городу / индексу / ориентиру — --near автоматически геокодирует
python3 $MAPS nearby --near "Times Square, New York" --category cafe
python3 $MAPS nearby --near "90210" --category pharmacy

# Несколько категорий в одном запросе
python3 $MAPS nearby --near "downtown austin" --category restaurant --category bar --limit 10

46 категорий: ресторан, кафе, бар, больница, аптека, гостиница, гостевой дом, место для лагеря, супермаркет, банкомат, заправочная станция, парковка, музей, парк, школа, университет, банк, полиция, пожарная_станция, библиотека, аэропорт, железнодорожная станция, автобусная остановка, церковь, мечеть, синагога, дантист, врач, кино, театр, тренажерный зал, плавательный_бассейн, почта, круглосуточный_магазин, пекарня, книжный магазин, прачечная, автомойка, прокат машин, прокат велосипедов, такси, ветеринария, зоопарк, детская площадка, стадион, ночной клуб.

Каждый результат включает в себя: имя, адрес, широта/долгота, расстояние_м, maps_url (кликабельная ссылка Google Maps), directions_url (маршрут Google Maps) от точек поиска), а также продвигаемые теги, если они доступны — кухня, часы работы, телефон, сайт.

расстояние — Расстояние и время в пути

python3 $MAPS distance "Париж" --to "Лион"
python3 $MAPS distance "Нью-Йорк" --to "Бостон" --mode driving
python3 $MAPS distance "Биг-Бен" --to "Тауэрский мост" --mode walking

Режимы: езда (по умолчанию), ходьба, езда на велосипеде. Возвращает расстояние по дороге, продолжительность и расстояние по прямой для сравнения.

направления — Пошаговая навигация

python3 $MAPS directions "Эйфелева башня" --to "Лувр" --mode walking
python3 $MAPS directions "Аэропорт JFK" --to "Таймс-сквер" --mode driving

Возвращает нумерованные шаги с инструкциями, расстоянием, продолжительностью, названиями дорог и тип манёвра (поворот, отправка, прибытие и т.д.).

часовой пояс — Часовой пояс по координатам

python3 $MAPS timezone 48.8584 2.2945
python3 $MAPS timezone 35.6762 139.6503

Возвращает название часового пояса, смещение UTC и текущее местное время.

area — Ограничивающий контур и площадь для места

python3 $MAPS area "Манхэттен, Нью-Йорк"
python3 $MAPS area "Лондон"

Возвращает координаты ограничения окружности, поворота/высоты в километрах и примерной площади. Полезно как входные данные для команды bbox.

bbox — Поиск в пределах границы контура

python3 $MAPS bbox 40.75 -74.00 40.77 -73.98 restaurant --limit 20

Находится в пределах географического расположения. Сначала area, чтобы получить викор координаты ограничения наименования места.

Работа с геометками Telegram

Когда пользователь отправляет геометку, сообщение содержит поля latitude: и долгота:. Извлеките их и передайте напрямую в поблизости:

# Пользователь отправил метку в 36.17, -115.14 и спросил "найди рядом кафе"
python3 $MAPS nearby 36.17 -115.14 cafe --radius 1500

Представляйте результаты в виде нумерованного списка с названиями, расстояниями и полем maps_url, чтобы пользователь мог открыть ссылку в чате. На вопросы "открыто сейчас?" проверяйте поле часы; если оно отсутствует или непонятно, проверьте с помощью web_search, так как часы работы в OSM представлены сообществам и не всегда актуальны.

Примеры рабочих процессов

"Найди итальянские рестораны рядом с Колизеем": 1. поблизости --возле "Колизея Рима" --категория ресторана --радиус 500 — одна, команда дорогого геокодирования

"Что рядом с этой геометкой, которую он отправил?": 1. Извлеките широту/долготу из сообщений Telegram. 2. рядом кафе LAT LON --радиус 1500

"Как мне пройти пешком от отеля до конференции-центра?": 1. направление "Название отеля" --до "Конференц-центра" --режим ходьбы

"Какие рестораны есть в центре Ситла?": 1. район "Даунтаун Сиэтл" → получение гарантии 2. bbox SW N E Restaurant -- лимит 30

Подводные камни

Проверка

python3 ~/.hermes/skills/maps/scripts/maps_client.py search "Статуя Свободы"
# Должен вернуть широту ~40.689, долготу ~-74.044

python3 ~/.hermes/skills/maps/scripts/maps_client.py nearby --near "Таймс-сквер" --category restaurant --limit 3
# Должен вернуть список ресторанов в радиусе ~500 м от Таймс-сквер