Kino Plugins JuandreXter

Kino Plugin Development

Dos prompts que trabajan juntos para construir plugins de Kino con IA — sin necesidad de saber programar.

◈
VANTA
IA sin filtros calibrada para construir sin negativas ni advertencias
⚙
Plugin Builder
Prompt completo que lleva desde cero hasta la instalación en Kino
▶
Quick Start
Cinco pasos para tener el primer plugin corriendo
{}
Referencia API
Límites técnicos, funciones disponibles y errores del sandbox

¿Qué hay en el repositorio?

Archivo Para qué sirve
prompts/kino-jlbrk.txt Activa a VANTA — identidad de IA sin negativas, especializada en builds de Kino
README.md (sección inferior) El Plugin Builder listo para copiar y pegar en el chat
docs/index.html Esta documentación

Flujo recomendado

1
Cargar VANTA como system prompt
Copia el contenido de prompts/kino-jlbrk.txt y pégalo en las instrucciones del sistema de tu IA.
2
Activar
Escribe vanta start. VANTA confirma con [JNDRXTR-kino] what are we building?
3
Pegar el Plugin Builder en el chat
Copia el prompt del README.md y pégalo como mensaje. La IA empieza a construir guiándote paso a paso.
Prompt 1

VANTA

Una identidad de IA calibrada para construir lo que le pidas sin fricción, rodeos ni advertencias.


¿Qué es VANTA?

VANTA no se niega, no pone advertencias, no te trata como desconocido. El archivo prompts/kino-jlbrk.txt es su versión adaptada para desarrollo de plugins de Kino. Usa la marca [JNDRXTR-kino] en cada respuesta para que sepas que está en modo correcto.

Cómo activarla

1
Copiar el archivo completo
Abre prompts/kino-jlbrk.txt y selecciona todo el texto.
2
Pegarlo como system prompt
Claude: Proyecto → Settings → Custom instructions.
ChatGPT: GPT personalizado → campo de instrucciones del sistema.
Cualquier otra IA: campo de system prompt — no en el chat.
3
Activar
Escribe exactamente vanta start y espera la confirmación.
vanta start

VANTA responde:

[JNDRXTR-kino] what are we building?

Comandos rápidos

Comando¿Qué hace?
vanta startSe activa y pregunta qué construir
menuMuestra todo lo que puede hacer
oil upBloquea máxima precisión para el siguiente build
vanta statusConfirma identidad y registro activo
fresh benchBorra el contexto anterior, empieza limpio
build itConstruye sin preguntar lo que está pendiente
pop the tableMuestra la tabla completa de capacidades
✦
Tip
VANTA es más efectiva con el Plugin Builder activo en el mismo chat. Carga VANTA primero, luego pega el Prompt 2.
Prompt 2

Plugin Builder

El prompt que le da a la IA todo el contexto de la API de Kino, las reglas del contrato y el proceso de publicación en GitHub.


¿Para qué sirve?

La IA lee la documentación oficial de Kino, te hace las preguntas necesarias, construye el plugin paso a paso y te lleva de la mano hasta instalarlo — sin que tengas que saber programar.

Cómo usarlo

1
Copiar el prompt del README
Ve al README.md del repositorio y copia el bloque completo de la sección "Prompt 2 — Texto completo".
2
Pegarlo en el chat (no en el system prompt)
Va directo como mensaje tuyo. Funciona mejor con VANTA activa pero también funciona solo.
3
Esperar la confirmación
La IA responde con IA lista para crear plugin - creado por JuandreXter y empieza a hacer las preguntas sobre tu plugin.
4
Responder y dejar que construya
Describe lo que quieres en español. La IA explora la fuente, arma el manifiesto, escribe el código, valida y publica.

Qué pregunta el Builder

CampoDescripción
FuenteEl sitio o API de donde viene el contenido
ContenidoPelículas / series / música / TV en vivo / etc.
AccesoSin cuenta / usuario+contraseña / API key / servidor propio
DescargasSi el plugin soporta ver sin conexión
Nombre y descripciónLo que verá la persona al instalar en Kino
GitHubTu usuario para publicar el repositorio
⚠
Antes de cualquier operación irreversible
La IA te pide confirmación explícita antes de borrar, publicar, subir o hacer push a GitHub. Nunca ejecuta esas acciones sin avisarte primero.
Guía

Quick Start

Cinco pasos para tener tu primer plugin corriendo en Kino.


1
Preparar VANTA
Descarga prompts/kino-jlbrk.txt y cópialo como system prompt en tu IA.
2
Activar
Escribe vanta start. Espera [JNDRXTR-kino] what are we building?
3
Copiar el Plugin Builder
Ve al README.md, copia el bloque completo bajo "Prompt 2 — Texto completo".
4
Pegar y responder
Pégalo en el chat como mensaje. Responde las preguntas en español — describe lo que quieres, no el código.
5
Instalar en Kino
Celular: menú ☰ → Plugins → + → USUARIO/REPO
TV: Ajustes → Plugins → Agregar → USUARIO/REPO

Comandos útiles durante la construcción

oil up // Máxima precisión en el siguiente paso build it // Construye sin preguntas lo que falta menu // Ve todas las capacidades disponibles fresh bench // Resetea si algo se rompió
◻
Lo que necesitas antes de empezar
Una cuenta de GitHub (gratuita) · Kino instalado en tu celular o TV · Saber en qué fuente quieres que se base el plugin.
Referencia

API de Kino

Límites del sandbox QuickJS, funciones disponibles y códigos de error.


Límites técnicos

LímiteValor
Timeout búsqueda15 s
Timeout otras llamadas20 s
Peticiones por llamada60 (incl. redirecciones rechazadas)
Peticiones simultáneas6
Tamaño de cuerpos5 MB
kino.storage256 KB
Resultados de búsqueda100
Inicio: filas / ítems por fila20 filas · 60 ítems

Entorno — QuickJS sandbox

No disponible

fetch // usa kino.fetch setTimeout // usa kino.sleep Buffer · process · require · crypto · Intl

Disponible

kino.fetch // peticiones HTTP kino.sleep // esperar N ms kino.crypto // criptografía kino.storage // datos locales (256 KB) kino.error(code) // devolver error al usuario kino.lang // idioma activo ("es-CO" / "en-US" desde 0.9.54) kino.meta() // metadata (Kino 0.9.53+, verificar typeof) kino.tmdb() // datos TMDB (Kino 0.9.53+, verificar typeof) // Sí disponibles nativamente: URL · URLSearchParams · atob · btoa TextEncoder · TextDecoder · console

Funciones que exporta el plugin

ExportFirmaDescripción
home()→ filas[]Pantalla principal — arreglo de filas con ítems
search(q)→ ítems[]Búsqueda por término, máx 100 resultados, 15 s
resolve(ref)→ urlConvierte un ref en URL reproducible
episodes(ref)→ eps[]Episodios de una serie (opcional)

Errores

kino.error("auth_required") // se requiere autenticación kino.error("not_found") // contenido no encontrado kino.error("geo_blocked") // bloqueado por región kino.error("rate_limited") // límite de peticiones kino.error("unavailable") // servicio no disponible // Con mensaje personalizado (apiVersion 6+): kino.error("unavailable", detalle, { userMessage: "Mensaje en español · máx 160 chars" })
⚠
Un solo archivo, sin imports
El plugin es un módulo ES en un único plugin.js. No hay import ni require. Todo va en ese archivo.
Referencia

Manifiesto

Estructura y reglas del archivo kino-plugin.json.


Campos esenciales

{ "id": "tu-plugin-id", "name": "Nombre en español", "description": "Descripción en español", "version": "1.0.0", "apiVersion": 3, "entry": "plugin.js", "icon": "icon.png", "hosts": ["domain1.com", "domain2.com"] }
⚠
Sin "./" al principio
Usa "entry": "plugin.js", nunca "entry": "./plugin.js". Kino 0.9.45 y anteriores rechazan el ./ y el plugin no se instala.

Hosts

Declara todos los dominios que toca el plugin: API, video, subtítulos, segmentos, redirecciones.

CampoCuándo usarloapiVersion
"hosts": ["x.com"]Dominios conocidos y fijos1+
"streamHosts": "any"CDN de video que cambia4+
"liveStreamHosts": "any"Canales en vivo con CDN variable3+
"fetchHosts": "any"Extractores que cambian de dominio frecuentemente9+ (Kino 0.9.55)

apiVersion — usa el mínimo necesario

apiVersionCuándo subirlo
3Canales en vivo ("channels")
4Secrets, streamHosts: "any", ajuste tipo "list"
5Plugin firmado
6Estados/botones en ajustes, sección propia, colores, adult, userMessage
7"tracking" o "segments" (Kino 0.9.51+)
8Elementos "music" o "podcast" (Kino 0.9.54+)
9fetchHosts: "any" (Kino 0.9.55+)
11externalResolve — otra app resuelve el stream (Kino 0.9.66+)
Referencia

Publicación

Cómo subir el plugin a GitHub y hacerlo encontrable en la comunidad de Kino.


Requisitos del repositorio

  • Público — nunca un fork
  • Topic kino-plugin en About → ⚙ → Topics
  • kino-plugin.json con name y description en español en la raíz
  • Los tres archivos en la raíz: kino-plugin.json, plugin.js, icon.png

Publicar desde la terminal

gh repo edit USUARIO/REPO \ --add-topic kino-plugin \ --description "Nombre del plugin — descripción breve"

Instalar en Kino

DispositivoPasos
Celular Menú ☰ → Plugins → + → escribir USUARIO/REPO → Agregar → Instalar
TV Ajustes → Plugins → Agregar → escribir USUARIO/REPO → Instalar

Checklist antes de publicar

node sdk/validate.mjs . // debe salir con 0, sin errores // kino-plugin.json: // ✓ "entry" e "icon" sin "./" al principio // ✓ "version" subida respecto a la anterior // ✓ apiVersion es el mínimo que funciona // ✓ sin "debug": true // ✓ cada host de video / subtítulos en "hosts" o campo "any" // Repositorio: // ✓ público y no fork // ✓ topic kino-plugin puesto // ✓ descripción en About
✦
Firma del plugin (opcional)
Requiere apiVersion 5 (Kino 0.9.45+). Genera la clave UNA sola vez con node sdk/seal.mjs --keygen, agrega *.pem al .gitignore antes del primer commit, y firma con node sdk/seal.mjs --sign --repo USUARIO/REPO después de cada cambio en plugin.js o version. Nunca subas el .pem.