// файл конфігурації
config.yaml
Розширення задаються в extensions у ~/.config/goose/config.yaml. Команда goose configure → Add Extension пише такий самий запис за вас.
Для користувачів Goose
Goose виконує роботу через розширення, і кожне розширення — це MCP-сервер. Maguyva — саме те, що індексує вашу кодову базу, тож Goose питає, де що лежить, а не перебирає каталоги.
Тариф Free: 3 репозиторії, До 50 тис. проіндексованих рядків репозиторію, без кредитної картки.
.goosehints — для того, як працювати. Maguyva — для того, що код каже зараз. Чотири факти саме про Goose.
// файл конфігурації
Розширення задаються в extensions у ~/.config/goose/config.yaml. Команда goose configure → Add Extension пише такий самий запис за вас.
// транспорт
Maguyva — розширення streamable_http, тож Goose сам під’єднується до ендпоінта: жодних локальних процесів, жодного Node.js. URL вказується в uri, а не в url.
// ключ
Goose надсилає мапу headers з кожним запитом, тому ключ вказується в заголовку Authorization. Goose також може підставити його зі змінної оточення, переліченої в env_keys.
// фільтр інструментів
Розширення може відкривати лише частину своїх інструментів: перелічіть потрібні в available_tools або залиште поле порожнім, щоб отримати всі.
# .goosehints
- Використовуй pnpm, а не npm.
- Запускай інтеграційні тести, перш ніж вважати зміну готовою.За замовчуванням Goose завантажує AGENTS.md і .goosehints: глобальні підказки з ~/.config/goose/.goosehints, підказки проєкту з репозиторію і вкладені файли, коли працює в підтеках. Для підказок потрібне розширення Developer. Вони підходять для:
Підказки описують проєкт. На питання “що від цього залежить?” вони не відповідають.
Три прогалини, які Goose закриває командами оболонки, файл за файлом.
У незнайомому репозиторії Goose орієнтується за списками каталогів і читанням файлів. Кожна така дія витрачає контекст ще до початку задачі.
Текстовий пошук не відрізняє справжній виклик від коментаря, мока чи методу з тим самим іменем.
Файл підказок, написаний минулого кварталу, описує структуру минулого кварталу. Goose однаково йому слідує.
Один запис у extensions дає Goose:
Підказки кажуть Goose, як працювати.
Maguyva дає Goose карту коду.
Спершу карта, потім хай Goose працює.
// workflow 01
goose> чому деякі вивантаження завершуються з нулем рядків? semantic_search("export job empty result") src/export/runner.ts:118 flushBatch() src/export/filters.ts:40 applyTenantFilter() → Goose читає два файли, а не весь пакет export. [exit 0]
Ранжовані результати звужують пошук ще до того, як Goose відкриє оболонку.
// workflow 02
goose> розділи клас Notifier на email і SMS dependency_search("Notifier", dependents) 11 посилань у 5 пакетах → План охоплює всі одинадцять до першої правки. [exit 0]
Goose отримує повний список залежних одним викликом, а не ланцюжком grep.
Три кроки. Тариф Free: 3 репозиторії, До 50 тис. проіндексованих рядків репозиторію, без кредитної картки.
// step 01
Оберіть той, який ви вже знаєте, щоб оцінити відповіді.
// step 02
~/.config/goose/config.yaml
extensions:
maguyva:
name: maguyva
type: streamable_http
uri: https://maguyva.tools/mcp
enabled: true
headers:
Authorization: Bearer mgv_xxxx
timeout: 300
// step 03
Замініть mgv_xxxx своїм API-ключем, запустіть goose session і поставте запитання, відповідь на яке вже знаєте. YAML чутливий до відступів: пробіли, а не таби.