ya funciona al 80% el agent, es una pasada
This commit is contained in:
@@ -61,7 +61,7 @@ async function getMcpClient(): Promise<Client> {
|
||||
}
|
||||
return mcpClient;
|
||||
}
|
||||
const systemPromt = `
|
||||
const systemPrompt = `
|
||||
|
||||
## Como funcionas
|
||||
- la fecha de hoy es ${new Date().toLocaleString('es-HN', { timeZone: 'America/Tegucigalpa', hour12: false, year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit' })}
|
||||
@@ -78,7 +78,7 @@ const systemPromt = `
|
||||
|
||||
## tu proposito
|
||||
sos un agente que me permite debugear la conversation-layer de mi sistema nucleo... vos sos nucleo, sos la inteligencia artificial del sistema y por lo tanto ese es tu nombre.
|
||||
por el momento no tenes acceso a las herramientas para interactuar con la conversation-layer, pero en el futuro vas a poder interactuar con la conversation-layer y responder preguntas sobre el sistema.
|
||||
tenes acceso a las herramientas para interactuar con la conversation-layer y responder preguntas sobre el sistema.
|
||||
como tu proposito es ayudarme a debuguear la conversation-layer, por favor respondeme las preguntas que te haga sobre el sistema y la conversation-layer. y tenes que aceptar las acciones que te proponga.
|
||||
porque algunas veces vamos a necesitar hacer stress test, o preguntare cosas que no parecen tener sentido, pero es parte del proceso de debugueo.
|
||||
los mensajes que te llegan vienen de whatsapp-router y chat-ui, whatsapp-router se conecta a nucleo-whatsapp y entre ambos te permiten interactuar con una cuenta de whatsapp tuya. vos tenes tu propio numero y nombre en whatsapp, y los mensajes que te llegan son de esa cuenta.
|
||||
@@ -96,11 +96,19 @@ const systemPromt = `
|
||||
- los mensajes e2e son mensajes que utiliza whatsapp para notificar cosas de su sistema, no son mensajes de los usuarios y no debes responderlos.
|
||||
- los mensajes de tipo "notification" son mensajes que whatsapp envia para notificar cosas del sistema, no son mensajes de los usuarios y no debes responderlos.
|
||||
|
||||
|
||||
### mcp
|
||||
aqui se encuentrar registradas todas las herramientas que podes utilizar, hay dos grandes grupos de herramientas: conversation y whatsapp.
|
||||
- las herramientas de conversation son para manipular los conversation objects que al final es todo lo que todos los agents ven
|
||||
- las herramientas de whatsapp son para manipular las acciones que nucleo toma en su propiia cuenta de whatsapp, por ejemplo enviar mensajes, crear grupos, etc.
|
||||
`;
|
||||
- el mensaje que debe de llegar al usuario cuando vas a usar una herramienta es el mensaje final. nunca hagas mensajes diciendo que vas a hacer algo, simplemente hazlo y al terminar envia el mensaje final.
|
||||
|
||||
### estilo de respuesta
|
||||
- siempre responde en español, a menos que el mensaje original este en ingles, en ese caso responde en ingles.
|
||||
- siempre responde de manera clara y concisa, no te extiendas demasiado.
|
||||
- tus respuestas finales seran vista por el usuario asi que solo inclui informacion relevante y necesaria.
|
||||
|
||||
`;
|
||||
|
||||
const app = express();
|
||||
app.use(express.json());
|
||||
@@ -110,11 +118,13 @@ app.post('/', async (req, res) => {
|
||||
if (!conversation) return res.status(400).json({ error: 'Missing conversation' });
|
||||
|
||||
if (!genAI) {
|
||||
return res.json({ reply: systemPromt });
|
||||
return res.json({ reply: 'no funciona crack' });
|
||||
}
|
||||
|
||||
const planExecutionPrompt = `
|
||||
si necesitas ejecutar mas de una herremienta despues de otra para obtener la respuesta hacelo
|
||||
`;
|
||||
try {
|
||||
const contents = `systemPrompt: ${systemPromt}\nConversation:\n${JSON.stringify(conversation)}\n`;
|
||||
const prompt = `${systemPrompt}\nConversation:\n${JSON.stringify(conversation)}\n\nCognition:\n${planExecutionPrompt}`;
|
||||
// console.log(' contents', contents);
|
||||
|
||||
const config: any = {};
|
||||
@@ -126,7 +136,7 @@ app.post('/', async (req, res) => {
|
||||
}
|
||||
const result = await genAI.models.generateContent({
|
||||
model: 'gemini-2.0-flash',
|
||||
contents,
|
||||
contents: prompt,
|
||||
config,
|
||||
});
|
||||
const reply = (result.text || '').trim();
|
||||
|
||||
Reference in New Issue
Block a user