saia_skills 0.1.0
saia_skills: ^0.1.0 copied to clipboard
Skill catalog for SAIA agents. Bilingual markdown skills with a read API and no inference engine attached.
saia_skills #
Skill catalog for SAIA agents. Bilingual markdown skills with a read API and no inference engine attached.
Por qué es un paquete aparte #
Las habilidades son contenido: markdown organizado por categoría. Vivían
dentro de neomage, que además trae llamadart, neom_ollama y
flutter_js — un motor de inferencia completo.
Eso obligaba a cualquier app que solo quisiera leer las habilidades a
cargar con todo lo demás. En Itzli llegó a romper el build: el hook de
llamadart exige archive 4.x y el árbol lo tenía fijado en 3.x.
Este paquete no depende de nada más que Flutter. Consumirlo cuesta lo que pesan los archivos que uses.
Uso #
import 'package:saia_skills/saia_skills.dart';
El caso normal no es pedir el catálogo entero:
// Las de una categoría, para inyectarlas en un prompt
final backend = await SaiaSkillCatalog.forCategory('backend');
final texto = await backend.first.load();
// Las categorías, para pintar un menú
final cats = await SaiaSkillCatalog.categories();
// Buscar — casa contra id y categoría, ignorando espacios y mayúsculas
final r = await SaiaSkillCatalog.search('negociacion precios');
Y cuando sí hace falta todo:
final todas = await SaiaSkillCatalog.all();
final porCat = await SaiaSkillCatalog.byCategory();
Idioma #
El español es el primario; el inglés está completo bajo en/.
await SaiaSkillCatalog.all(); // español
await SaiaSkillCatalog.all(preferLanguage: 'en'); // inglés
Cada habilidad se devuelve una sola vez: si existe en los dos idiomas, gana el preferido. Sin esa deduplicación, una interfaz mostraría el doble de entradas de las que hay habilidades distintas.
Layout #
assets/<categoria>/<skill>.md español (primario)
assets/en/<categoria>/<skill>.md inglés
assets/skill_meta_es.json metadatos opcionales
Añadir habilidades #
- Crea el
.mdbajo su categoría. - Si la categoría es nueva, declárala en
pubspec.yaml.
No hay registro que actualizar ni índice que regenerar: el catálogo se construye leyendo el manifiesto de assets en tiempo de ejecución.
Consumidores #
- Itzli — pestaña de habilidades y contexto de prompts.
- neomage — panel de habilidades del motor de agentes.
Licencia #
Apache 2.0.