franck-olivier-chabbat/allokoliassistantv2 icon
public
Published on 5/10/2025
allo-koli-assistantv2

Agent de développement pour générer l’intégralité de l’application AlloKoli (backend Supabase + frontend Next.js + Vapi.ai), en français.

Rules
Prompts
Models
Context
openai OpenAI GPT-4o model icon

OpenAI GPT-4o

OpenAI

128kinput·16.384koutput
openai OpenAI GPT-4.1 model icon

OpenAI GPT-4.1

OpenAI

1047kinput·32.768koutput
openai o3-mini model icon

o3-mini

OpenAI

200kinput·100koutput
Répondre exclusivement en français, avec un ton pédagogique et clair.
Procéder étape par étape pour guider la création du projet.
Respecter la stack AlloKoli : Supabase (Edge Functions TS, PostgreSQL, Auth + RLS), Next.js (React, Tailwind CSS, Framer Motion), Vapi.ai (SDK serveur + SDK web).
Utiliser les bonnes pratiques de Next.js et Supabase.
Ne pas expliquer comment installer les outils, se concentrer sur le code du projet.
Fournir du code fonctionnel et clair, sans informations superflues.
- Follow Next.js patterns, use app router and correctly use server and client components.
- Use Tailwind CSS for styling.
- Use Shadcn UI for components.
- Use TanStack Query (react-query) for frontend data fetching.
- Use React Hook Form for form handling.
- Use Zod for validation.
- Use React Context for state management.
- Use Prisma for database access.
- Follow AirBnB style guide for code formatting.
- Use PascalCase when creating new React files. UserCard, not user-card.
- Use named exports when creating new react components.
- DO NOT TEACH ME HOW TO SET UP THE PROJECT, JUMP STRAIGHT TO WRITING COMPONENTS AND CODE.
Next.jshttps://nextjs.org/docs/app
React Testing Library Docshttps://testing-library.com/docs/react-testing-library/intro/
Reacthttps://react.dev/reference/

Prompts

Learn more
createAssistant
Création de la fonction createAssistant.ts (Edge Function Supabase).
**Étape Backend – Création de la fonction createAssistant**
Génère le code d’une fonction Edge Supabase nommée `createAssistant.ts`.
Contexte : reçoit POST { name, … }, authentifie l’utilisateur (JWT Supabase),
appelle le SDK/API Vapi pour créer un assistant, insère en base `assistants`
(id Vapi, name, user_id), puis renvoie l’objet assistant ou une erreur.
Utilise Deno/TypeScript et les variables d’environnement :
SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY, VAPI_API_KEY.
startCall
Création de la fonction startCall.ts (Edge Function Supabase).
**Étape Backend – Création de la fonction startCall**
Génère le code d’une fonction Edge Supabase `startCall.ts`.
Contexte : reçoit POST { assistantId, … }, authentifie l’utilisateur,
appelle Vapi pour initier un appel, insère un enregistrement dans `calls`
(callId, assistant_id, user_id, started_at), puis renvoie les détails de l’appel.
getCalls
Création de la fonction getCalls.ts (Edge Function Supabase).
**Étape Backend – Création de la fonction getCalls**
Génère le code d’une fonction Edge Supabase `getCalls.ts`.
Contexte : vérifie l’authentification, récupère depuis `calls`
les appels de l’utilisateur (optionnellement filtrés par `assistantId`),
renvoie la liste JSON.
vapiWebhook
Création de la fonction vapiWebhook.ts (Edge Function Supabase).
**Étape Backend – Création de la fonction vapiWebhook**
Génère le code d’une fonction Edge Supabase `vapiWebhook.ts`.
Contexte : reçoit POST webhooks Vapi.ai (événements `call_start`, `call_end`),
insère ou met à jour la table `calls` (started_at, ended_at, duration).
databaseSchema
Création du schéma SQL Supabase et des policies RLS.
**Étape Backend – Base de Données & RLS**
Génère un script SQL pour créer les tables `assistants` et `calls`
avec RLS, et les policies SELECT/INSERT/UPDATE/DELETE pour user_id = auth.uid().
pageLogin
Création de la page Next.js /login.
**Étape Frontend – Création de la page /login**
Génère une page Next.js `pages/login.tsx`.
Contexte : formulaire email/password, Connexion/Inscription,
utilise `@supabase/supabase-js`, gère erreurs, redirige vers `/dashboard`.
pageDashboard
Création de la page Next.js /dashboard.
**Étape Frontend – Création de la page /dashboard**
Génère une page Next.js `pages/dashboard.tsx`.
Contexte : liste assistants (`supabase.from('assistants').select('*')`),
bouton Ouvrir (/assistant/[id]), form création (invoke `createAssistant`).
pageAssistant
Création de la page Next.js /assistant/[id].
**Étape Frontend – Création de la page /assistant/[id]**
Génère une page Next.js `pages/assistant/[id].tsx`.
Contexte : extrait `assistantId`, bouton Démarrer un appel,
affiche historique (`supabase.from('calls')`).
pageSettings
Création de la page Next.js /settings.
**Étape Frontend – Création de la page /settings**
Génère une page Next.js `pages/settings.tsx`.
Contexte : affiche email utilisateur, variables publiques, bouton Déconnexion.
stateManagement
Mise en place du State Management global (AuthContext).
**Étape Frontend – Mise en place du State Management global**
Crée un AuthProvider React pour gérer l’utilisateur via
`supabase.auth.onAuthStateChange`, expose login/logout, wrap `_app.tsx`.
configDeployment
Configuration finale et déploiement.
**Étape Finale – Déploiement & configuration production**
Liste commandes Supabase CLI, config webhook Vapi, déploiement frontend, monitoring.
API route
Create an API route.
Create an API route with the following functionality.

Context

Learn more
@file
Reference any file in your current workspace
@codebase
Reference the most relevant snippets from your codebase
@folder
Uses the same retrieval mechanism as @Codebase, but only on a single folder
@tree
Reference the structure of your current workspace
@commit
@os
Reference the architecture and platform of your current operating system
@problems
Get Problems from the current file
@open
Reference the contents of all of your open files
@terminal
Reference the last command you ran in your IDE's terminal and its output
@code
Reference specific functions or classes from throughout your project
@file
Reference any file in your current workspace

No Data configured

MCP Servers

Learn more

No MCP Servers configured