Навыки developing-genkit-dart
📦

developing-genkit-dart

Безопасно

Создание AI-приложений с помощью Genkit Dart SDK

Интеграция AI-моделей в приложения на Dart и Flutter требует понимания потоков, инструментов и плагинов Genkit. Этот навык предоставляет подробную справочную документацию и примеры кода для Genkit Dart SDK.

Поддерживает: Claude Codex Code(CC)
🥉 76 Бронза
1

Скачать ZIP навыка

2

Загрузить в Claude

Перейдите в Settings → Capabilities → Skills → Upload skill

3

Включите и начните использовать

Протестировать

Использование «developing-genkit-dart». Инициализация Genkit с плагином Anthropic и генерация текста с помощью Claude.

Ожидаемый результат:

Главная функция на Dart, которая импортирует genkit и genkit_anthropic, считывает ANTHROPIC_API_KEY из Platform.environment, создаёт экземпляр Genkit с плагином anthropic и вызывает ai.generate с моделью claude-sonnet-4-5.

Использование «developing-genkit-dart». Определение клиента удалённого действия, вызывающего поток, работающий на localhost.

Ожидаемый результат:

Dart-код с использованием defineRemoteAction с URL localhost, показывающий оба паттерна вызова — без потоковой передачи и с потоковой передачей, с типизированными схемами входных и выходных данных.

Использование «developing-genkit-dart». Настройка Shelf HTTP-сервера для обслуживания потоков Genkit.

Ожидаемый результат:

Главная функция на Dart, которая импортирует genkit_shelf, определяет простой поток и запускает HTTP-сервер на порту 8080 с помощью startFlowServer.

Аудит безопасности

Безопасно
v1 • 4/15/2026

This skill is a documentation and reference guide from the official Firebase agent-skills repository. It contains 11 markdown files with Dart code examples for the Genkit Dart SDK. The static analyzer reported 202 potential issues, but all are false positives. The primary detection was markdown code fences (```) misinterpreted as Ruby/shell backtick execution. Environment variable references in examples follow secure patterns (reading from Platform.environment rather than hardcoding credentials). Localhost URLs and API endpoint references are standard documentation examples. No executable code, no prompt injection attempts, and no malicious patterns were found. The skill is safe for publication.

11
Просканировано файлов
1,078
Проанализировано строк
0
находки
1
Всего аудитов
Проблем безопасности не найдено
Проверено: claude

Оценка качества

45
Архитектура
100
Сопровождаемость
87
Контент
50
Сообщество
100
Безопасность
91
Соответствие спецификации

Что вы можете построить

Flutter-разработчик добавляет AI-функции

Flutter-разработчик интегрирует AI-генерацию текста, распознавание изображений и вызов инструментов в своё мобильное приложение с помощью Genkit Dart.

Backend-инженер на Dart создаёт AI-агентов

Backend-инженер определяет потоки Genkit со структурированными выходными данными и интегрирует несколько провайдеров AI-моделей, включая Google Gemini и Anthropic Claude.

Команда внедряет Model Context Protocol

Команда разработчиков реализует конфигурации MCP host и server для соединения приложений на базе Genkit с внешними серверами инструментов.

Попробуйте эти промпты

Начинающий: генерация текста с помощью Genkit
Напишите функцию на Dart, которая инициализирует Genkit с плагином Google AI и генерирует ответ на запрос пользователя с помощью модели Gemini.
Начинающий: определение простого инструмента
Покажите, как определить инструмент Genkit в Dart с использованием schemantic для схемы входных данных, с функцией, возвращающей данные о погоде для указанного местоположения.
Средний: создание потокового потока
Напишите поток Genkit на Dart, который принимает строку темы, генерирует историю с помощью Gemini, потоково передаёт фрагменты вывода через context.sendChunk и возвращает сообщение о завершении.
Продвинутый: настройка MCP host с несколькими серверами
Покажите, как настроить MCP host в Genkit Dart, который подключается к MCP-серверу файловой системы через npx, и как использовать агрегированные инструменты в вызове generate.

Лучшие практики

  • Считывайте API-ключи из переменных окружения через Platform.environment вместо их хардкодинга в исходных файлах
  • Используйте библиотеку schemantic с аннотациями @Schema для всех схем входных данных инструментов и выходных данных потоков для обеспечения типобезопасности
  • Оборачивайте потоки Genkit в startFlowServer или интегрируйте с существующими Shelf-роутерами для продакшен HTTP-эндпоинтов

Избегать

  • Хардкодинг API-ключей непосредственно в Dart-файлах вместо использования переменных окружения
  • Пропуск шага build_runner после определения схем schemantic, что предотвращает генерацию кода
  • Привязка HTTP-серверов ко всем сетевым интерфейсам в продакшене вместо localhost для эндпоинтов разработки

Часто задаваемые вопросы

Что такое Genkit Dart?
Genkit Dart — это AI SDK для языка Dart. Он предоставляет унифицированный интерфейс для генерации текста, структурированных выходных данных, вызова инструментов, эмбеддингов и агентных рабочих процессов.
Какие AI-провайдеры моделей поддерживает Genkit Dart?
Genkit Dart поддерживает Google Gemini, Anthropic Claude, OpenAI и совместимые провайдеры через архитектуру плагинов. Он также поддерживает интеграцию MCP и Chrome local AI.
Как установить Genkit CLI?
Вы можете установить Genkit CLI через curl с cli.genkit.dev или через npm с помощью npm install -g genkit-cli. Запустите genkit start для запуска UI разработчика.
Что такое schemantic и зачем он нужен Genkit?
Schemantic — это Dart-библиотека для определения строго типизированных классов данных с автоматической генерацией JSON-схемы. Genkit использует её для всех моделей данных, включая инструменты, потоки и сообщения.
Как вызвать удалённый поток Genkit из клиента?
Используйте defineRemoteAction из package:genkit/client.dart для определения типизированного клиента с URL потока и схемами, затем вызывайте его напрямую или через потоковую передачу.
Можно ли требовать подтверждения перед выполнением инструментов?
Да. Пакет genkit_middleware предоставляет ToolApprovalPlugin, который перехватывает вызовы инструментов и возвращает FinishReason.interrupted, позволяя запросить подтверждение пользователя перед выполнением.

Сведения для разработчиков

Автор

firebase

Лицензия

MIT

Ссылка

main