尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗This is a Next.js project bootstrapped with create-next-app.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
The frontend workflow in .github/workflows/frontend-ci.yml
runs on pushes and pull requests targeting main. It installs the dependencies, runs
npm run lint, npm test and npm run build with Node.js 24, matching the Docker image.
The workflow currently uses npm install --package-lock=false because the lockfile is
missing optional @emnapi entries and npm ci cannot install it yet. Once the lockfile
is regenerated and validated, replace that step with npm ci.
La configuración EPS existente conserva su flujo local y ofrece una conexión server-side
con Confianza. En desarrollo, define WAYLO_BACKEND_URL y WAYLO_BACKEND_KEY en el
entorno de Next.js; la clave nunca debe llevar el prefijo NEXT_PUBLIC_ ni llegar al
navegador. Las rutas BFF /api/ips/* mantienen la sesión Waylo y delegan al backend
adaptador, que es el único que consulta Confianza.
El alcance, los contratos, la seguridad, las responsabilidades de cada repositorio y la
secuencia completa están documentados en docs/001-ips-integration-mvp-prd.md.
El Route Handler /api/triage mantiene la sesión de Waylo y envía el historial al
backend privado /internal/chat/completion. Cuando la conexión con Confianza está activa,
el backend expone al agente las herramientas patient-scoped de perfil, catálogo,
disponibilidad, citas, historia institucional y constancias. Crear, cancelar y
reprogramar siempre requieren confirmación explícita.
La memoria entre conversaciones no reutiliza transcripciones: solo se carga la memoria
clínica estructurada que la persona confirmó, y puede editarse o eliminarse desde
Configuración → Memoria. La tabla se crea al ejecutar npm run db:migrate; las variables
WAYLO_BACKEND_URL y WAYLO_BACKEND_KEY deben existir únicamente en el entorno server-side.
El diseño y los contratos están en docs/003-chat-ips-tools-memory-prd.md.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
To learn more about Next.js, take a look at the following resources:
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.
Cada vez que alguien marca un mensaje de la IA como útil o no útil, /api/feedback envía un
aviso a un canal de Discord. Solo viaja el voto, el id del mensaje, el idioma y si la persona
tiene cuenta; nunca el texto de la conversación. Para activarlo, crea un webhook en el canal
(Configuración del servidor → Integraciones → Webhooks) y define DISCORD_FEEDBACK_WEBHOOK_URL
en .env.local y en el entorno de despliegue. Sin la variable, el botón funciona igual y no se
envía nada. La URL del webhook es un secreto: quien la tenga puede escribir en el canal.
Con DISCORD_ERRORS_WEBHOOK_URL definida, el servidor avisa en un canal (por ejemplo #errores)
de lo que falla en producción: el gateway de IA, la voz, la integración IPS, la base de datos y
cualquier error que nadie atrape (gancho onRequestError de Next.js, en src/instrumentation.ts).
Cada aviso lleva el sitio, el error, su código y las primeras líneas de la pila. Se ocultan
contraseñas en URLs, tokens, claves largas y correos; nunca se envía el texto de la conversación.
El mismo error del mismo sitio se manda una vez por minuto (con el conteo de repeticiones
omitidas) y nunca más de 20 mensajes por minuto. En desarrollo local no se envía nada.
Para reportar un error a mano en una ruta: reportError("api/mi-ruta", error) de @/lib/error-report.