plugin-menu
Beta@fayz-ai/plugin-menu
A menu is the product catalog of a food business — and it changes by the hour. plugin-menu is the management surface for that: items, categories, allergens, and modifiers, with sold-out toggles that take effect instantly. It's the foundation the orders flow reads from, so the two compose into a working restaurant.
Visão geral
Gestão de cardápio: itens, categorias e modificadores, com controle de disponibilidade (disponível / esgotado). Monta a página /menu. É um plugin vertical (scope: 'vertical'), normalmente combinado com o plugin-orders.
Não empacota migrations. Por padrão roda com um provider mock e, para a plataforma Fayz, usa createFayzMenuProvider com tabelas configuráveis (categoriesTable, productsTable). O módulo modifiers vem ligado; deliveryPricing é opt-in. O canal stable já pina ^0.3.0.
Para IA, expõe listMenuItems e toggleMenuItemAvailability. Status beta / capability parcial.
Quando usar
- Manter um cardápio com categorias e modificadores.
- Marcar um item como esgotado em tempo real, inclusive via IA.
- Alimentar o plugin-orders com o catálogo de itens.
Ficha técnica
| Pacote | @fayz-ai/plugin-menu |
|---|---|
| Versão | 0.3.0 |
| Status | beta |
| Capability | Capability parcial |
| Canal stable | ^0.3.0 |
| Migrations | nenhuma |
| Factory | createMenuPlugin() |
Modelo de dados
tenant_id + RLS). Veja Modelo de dados.Tools de IA
| id | modo | descrição |
|---|---|---|
menu.list-items | read | Lists menu items, optionally filtered by category or status. |
menu.toggle-availability | persist | Marks a menu item as available or sold out. |
Ferramentas que um agente pode chamar contra o seu app. Seu app como camada de dados.
Integrações
Sem conector hospedado — provedores externos entram via connector spine. Veja o catálogo de integrações.
.md desta ficha (em plugins/plugin-menu.md) é o contrato agent-consumable — modelo de dados, tools e integrações num só arquivo que uma IA lê direto. Preview O comando fayz skill add plugin-menu chega em breve para instalar isso como skill. Veja Skills.Integrar
Adicione o plugin em surfaces.admin.plugins do app.manifest.json do seu app e rode o doctor para validar:
{
"surfaces": {
"admin": {
"plugins": [
{ "id": "menu", "enabled": true }
]
}
}
}npx fayz doctorO fayz doctor confere o manifesto contra o catálogo do SDK. Veja Configuração para o passo a passo completo.
