{"id":1354,"date":"2026-03-24T01:38:50","date_gmt":"2026-03-24T01:38:50","guid":{"rendered":"https:\/\/myaiagenthub.com\/?page_id=1354"},"modified":"2026-06-11T21:57:25","modified_gmt":"2026-06-11T21:57:25","slug":"prompt-builder-agent-form","status":"publish","type":"page","link":"https:\/\/myaiagenthub.com\/es\/prompt-builder-agent-form\/","title":{"rendered":"Prompt Builder Agent Form"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1354\" class=\"elementor elementor-1354\">\n\t\t\t\t<div class=\"elementor-element elementor-element-97d112f e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-column-slider-no wpr-equal-height-no e-con e-parent\" data-id=\"97d112f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-71327ba elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"71327ba\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t\r\n<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<title>Prompt Builder Agent<\/title>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Sora:wght@400;600;700;800&display=swap\" rel=\"stylesheet\">\r\n<style>\r\n:root {\r\n  --cyan: #38bdf8;\r\n  --cyan-dark: #0284c7;\r\n  --green: #22c55e;\r\n  --navy: #1e293b;\r\n  --deep: #1a1a6e;\r\n  --bg: #f0f4f8;\r\n}\r\n* { box-sizing: border-box; margin: 0; padding: 0; }\r\nbody { font-family: 'Sora', sans-serif; background: var(--bg); color: var(--navy); min-height: 100vh; padding: 28px 16px 60px; }\r\n.wrapper { max-width: 580px; margin: 0 auto; }\r\n\r\n.header { text-align: center; margin-bottom: 24px; }\r\n.header .emoji { font-size: 48px; display: block; margin-bottom: 10px; }\r\n.header h1 { font-size: 26px; font-weight: 800; color: var(--deep); margin-bottom: 6px; }\r\n.header p { font-size: 14px; color: #64748b; line-height: 1.6; }\r\n\r\n.welcome-box {\r\n  background: #fff;\r\n  border: 2px solid var(--cyan);\r\n  border-radius: 14px;\r\n  padding: 16px 20px;\r\n  margin-bottom: 20px;\r\n  display: flex;\r\n  align-items: flex-start;\r\n  gap: 12px;\r\n}\r\n.welcome-box .w-icon { font-size: 26px; flex-shrink: 0; margin-top: 2px; }\r\n.welcome-box .w-name { font-size: 11px; font-weight: 700; color: var(--cyan-dark); text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 4px; }\r\n.welcome-box .w-msg { font-size: 14px; color: var(--navy); line-height: 1.6; min-height: 22px; }\r\n\r\n.question-card {\r\n  background: var(--deep);\r\n  border-radius: 20px;\r\n  padding: 28px 24px;\r\n  text-align: center;\r\n  margin-bottom: 20px;\r\n}\r\n.q-counter { font-size: 12px; font-weight: 700; color: var(--cyan); text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 12px; }\r\n.q-dots { display: flex; justify-content: center; gap: 7px; margin-bottom: 18px; }\r\n.q-dot { width: 10px; height: 10px; border-radius: 50%; background: #334155; transition: background 0.3s; }\r\n.q-dot.active { background: var(--cyan); }\r\n.q-dot.done { background: var(--green); }\r\n.q-text { font-size: 20px; font-weight: 700; color: #fff; margin-bottom: 24px; line-height: 1.4; min-height: 56px; }\r\n\r\n\/* White editable transcript box *\/\r\n.transcript-box {\r\n  background: #ffffff;\r\n  border: 2px solid var(--cyan);\r\n  border-radius: 10px;\r\n  padding: 12px 14px;\r\n  font-size: 14px;\r\n  font-weight: 600;\r\n  color: #0f1e36;\r\n  font-family: 'Sora', sans-serif;\r\n  min-height: 52px;\r\n  text-align: left;\r\n  margin: 12px 0;\r\n  width: 100%;\r\n  resize: vertical;\r\n  display: none;\r\n  box-sizing: border-box;\r\n}\r\n.transcript-box:focus { outline: none; border-color: var(--cyan-dark); background: #ffffff !important; color: #0f1e36 !important; }\r\n\r\n.mic-circle {\r\n  width: 80px; height: 80px; border-radius: 50%;\r\n  background: #1e3a5f;\r\n  border: 3px solid #334155;\r\n  display: flex; align-items: center; justify-content: center;\r\n  font-size: 32px; cursor: pointer; margin: 0 auto 16px;\r\n  transition: all 0.2s;\r\n}\r\n.mic-circle:hover { border-color: var(--cyan); background: #0f2d4a; }\r\n.mic-circle.listening { border-color: #f87171; background: #7f1d1d; animation: micPulse 1s infinite; }\r\n.mic-circle.disabled { opacity: 0.4; cursor: not-allowed; }\r\n@keyframes micPulse { 0%,100%{box-shadow:0 0 0 0 rgba(248,113,113,0.4)} 50%{box-shadow:0 0 0 14px rgba(248,113,113,0)} }\r\n.mic-label { font-size: 13px; color: #94a3b8; margin-bottom: 12px; }\r\n\r\n.voice-nav { display: none; gap: 10px; justify-content: center; flex-wrap: wrap; margin-top: 10px; }\r\n.btn-confirm { padding: 11px 24px; background: #22c55e; color: #fff; border: none; border-radius: 50px; font-family: 'Sora', sans-serif; font-size: 14px; font-weight: 700; cursor: pointer; }\r\n.btn-confirm:hover { background: #16a34a; }\r\n.btn-redo { padding: 11px 20px; background: transparent; color: var(--cyan); border: 2px solid var(--cyan); border-radius: 50px; font-family: 'Sora', sans-serif; font-size: 14px; font-weight: 600; cursor: pointer; }\r\n.btn-redo:hover { background: var(--cyan); color: #0f1e36; }\r\n\r\n.progress-wrap { margin-bottom: 16px; }\r\n.progress-text { font-size: 12px; color: #64748b; margin-bottom: 6px; }\r\n.progress-bar { background: #e2e8f0; border-radius: 20px; height: 6px; overflow: hidden; }\r\n.progress-fill { height: 6px; border-radius: 20px; background: linear-gradient(90deg, var(--cyan-dark), var(--green)); transition: width 0.4s; }\r\n\r\n.card { background: #fff; border-radius: 14px; padding: 18px 20px; margin-bottom: 12px; border: 2px solid #e2e8f0; transition: border-color 0.3s; }\r\n.card.active { border-color: var(--cyan); }\r\n.card.filled { border-color: var(--green); background: #f0fdf4; }\r\n.card label { display: block; font-size: 13px; font-weight: 600; color: var(--navy); margin-bottom: 8px; }\r\n.card input, .card textarea { width: 100%; padding: 11px 14px; border: 1.5px solid #e2e8f0; border-radius: 10px; font-family: 'Sora', sans-serif; font-size: 14px; color: var(--navy); background: #f8fafc; outline: none; transition: border-color 0.2s; resize: vertical; }\r\n.card textarea { min-height: 70px; }\r\n.card input:focus, .card textarea:focus { border-color: var(--cyan); background: white; }\r\n.card input.filled, .card textarea.filled { border-color: var(--green); background: #f0fdf4; }\r\n\r\n.submit-btn { width: 100%; background: linear-gradient(135deg, var(--deep), #2d2d9f); color: white; border: none; border-radius: 50px; padding: 18px; font-size: 16px; font-weight: 700; font-family: 'Sora', sans-serif; cursor: pointer; box-shadow: 0 4px 20px rgba(26,26,110,0.3); transition: transform 0.2s; margin-top: 8px; }\r\n.submit-btn:hover { transform: translateY(-2px); }\r\n.submit-btn:disabled { opacity: 0.6; cursor: not-allowed; transform: none; }\r\n\r\n#form-message { text-align: center; margin-top: 18px; font-size: 14px; font-weight: 500; line-height: 1.5; padding: 14px; border-radius: 10px; display: none; }\r\n#form-message.success { background: #f0fdf4; color: #166534; display: block; }\r\n#form-message.error { background: #fef2f2; color: #991b1b; display: block; }\r\n#form-message.loading { background: #eff6ff; color: #1d4ed8; display: block; }\r\n<\/style>\r\n<\/head>\r\n<body>\r\n<div class=\"wrapper\">\r\n\r\n  <div class=\"header\">\r\n    <span class=\"emoji\">\ud83e\udd16<\/span>\r\n    <h1>Prompt Builder Agent<\/h1>\r\n    <p>Alice will guide you through 6 quick questions. Just tap the mic and talk naturally \u2014 your custom AI prompt will be in your inbox within minutes.<\/p>\r\n  <\/div>\r\n\r\n  <div class=\"welcome-box\">\r\n    <div class=\"w-icon\">\ud83d\udc4b<\/div>\r\n    <div>\r\n      <div class=\"w-name\">Alice \u2014 Prompt Builder Agent<\/div>\r\n      <div class=\"w-msg\" id=\"welcomeMsg\"><\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"question-card\">\r\n    <div class=\"q-counter\" id=\"qCounter\">QUESTION 1 OF 6<\/div>\r\n    <div class=\"q-dots\" id=\"qDots\"><\/div>\r\n    <div class=\"q-text\" id=\"qText\">Getting ready...<\/div>\r\n    <button class=\"mic-circle disabled\" id=\"micCircle\" onclick=\"toggleMic()\">\ud83c\udfa4<\/button>\r\n    <div class=\"mic-label\" id=\"micLabel\">Alice is speaking \u2014 listen for your question...<\/div>\r\n    <textarea class=\"transcript-box\" id=\"transcriptBox\" rows=\"3\"><\/textarea>\r\n    <div class=\"voice-nav\" id=\"voiceNav\">\r\n      <button class=\"btn-confirm\" onclick=\"confirmAnswer()\">\u2705 Confirm<\/button>\r\n      <button class=\"btn-redo\" onclick=\"redoAnswer()\">\ud83d\udd04 Redo<\/button>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"progress-wrap\">\r\n    <div class=\"progress-text\" id=\"progressText\">0 of 6 fields completed<\/div>\r\n    <div class=\"progress-bar\"><div class=\"progress-fill\" id=\"progressFill\" style=\"width:0%\"><\/div><\/div>\r\n  <\/div>\r\n\r\n  <div class=\"card\" id=\"card_pb_name\">\r\n    <label for=\"pb_name\">Full Name *<\/label>\r\n    <input type=\"text\" id=\"pb_name\" placeholder=\"Your full name\" oninput=\"onFieldInput('pb_name')\">\r\n  <\/div>\r\n  <div class=\"card\" id=\"card_pb_email\">\r\n    <label for=\"pb_email\">Email Address *<\/label>\r\n    <input type=\"email\" id=\"pb_email\" placeholder=\"your@email.com\" oninput=\"this.value=this.value.replace(\/\\s\/g,'').toLowerCase(); onFieldInput('pb_email')\">\r\n  <\/div>\r\n  <div class=\"card\" id=\"card_pb_aitool\">\r\n    <label for=\"pb_aitool\">AI Tool *<\/label>\r\n    <input type=\"text\" id=\"pb_aitool\" placeholder=\"e.g. ChatGPT, Midjourney, Claude\" oninput=\"onFieldInput('pb_aitool')\">\r\n  <\/div>\r\n  <div class=\"card\" id=\"card_pb_tone\">\r\n    <label for=\"pb_tone\">Style &amp; Tone *<\/label>\r\n    <textarea id=\"pb_tone\" placeholder=\"What style and tone do you want?\" oninput=\"onFieldInput('pb_tone')\"><\/textarea>\r\n  <\/div>\r\n  <div class=\"card\" id=\"card_pb_goal\">\r\n    <label for=\"pb_goal\">What You Want To Get Out of the Prompt *<\/label>\r\n    <textarea id=\"pb_goal\" placeholder=\"What do you want to get out of the prompt?\" oninput=\"onFieldInput('pb_goal')\"><\/textarea>\r\n  <\/div>\r\n  <div class=\"card\" id=\"card_pb_content\">\r\n    <label for=\"pb_content\">What You Want the Prompt To Say *<\/label>\r\n    <textarea id=\"pb_content\" placeholder=\"What do you want the prompt to say?\" oninput=\"onFieldInput('pb_content')\"><\/textarea>\r\n  <\/div>\r\n\r\n  <button class=\"submit-btn\" onclick=\"submitForm()\">\ud83d\ude80 Build My Prompt<\/button>\r\n  <div id=\"form-message\"><\/div>\r\n  <p style=\"text-align:center;font-size:12px;color:#94a3b8;margin-top:12px;line-height:1.6;\">\r\n    Your custom prompt will be delivered to your email within minutes.<br>\r\n    Submit as many times as you need \u2014 your subscription is unlimited.\r\n  <\/p>\r\n\r\n<\/div>\r\n<script>\r\nconst questions = [\r\n  { field:'pb_name',    text:'What is your full name?',                          audio:'https:\/\/myaiagenthub.com\/wp-content\/uploads\/2026\/06\/Q1-1-4.mp3',  typeOnly:false, listenSec:8   },\r\n  { field:'pb_email',   text:'Please type your email address in the box below.', audio:'https:\/\/myaiagenthub.com\/wp-content\/uploads\/2026\/06\/Q2-6.mp3',    typeOnly:true,  listenSec:0   },\r\n  { field:'pb_aitool',  text:'What AI tool are you planning to use?',             audio:'https:\/\/myaiagenthub.com\/wp-content\/uploads\/2026\/06\/Q3-1-3.mp3',  typeOnly:false, listenSec:120 },\r\n  { field:'pb_tone',    text:'What style and tone do you want?',                  audio:'https:\/\/myaiagenthub.com\/wp-content\/uploads\/2026\/06\/Q4-5.mp3',    typeOnly:false, listenSec:120 },\r\n  { field:'pb_goal',    text:'What do you want to get out of the prompt?',        audio:'https:\/\/myaiagenthub.com\/wp-content\/uploads\/2026\/06\/Q5-1-5.mp3',  typeOnly:false, listenSec:120 },\r\n  { field:'pb_content', text:'What do you want the prompt to say?',               audio:'https:\/\/myaiagenthub.com\/wp-content\/uploads\/2026\/06\/Q6-.mp3',     typeOnly:false, listenSec:120 }\r\n];\r\n\r\nconst welcomeText = \"Welcome to the Prompt Builder Agent. I'm Alice, and I'm here to build you a complete custom AI prompt delivered straight to your inbox. I'm going to ask you six quick questions about what you need and I'll take care of the rest. Let's get started.\";\r\nconst welcomeAudio = new Audio('https:\/\/myaiagenthub.com\/wp-content\/uploads\/2026\/06\/Welcome-1-1.mp3');\r\nlet questionAudios = questions.map(q => new Audio(q.audio));\r\nlet currentQ = 0;\r\nlet isListening = false;\r\nlet recognition = null;\r\nlet currentFinalText = '';\r\nlet listenTimer = null;\r\nconst filledFields = new Set();\r\n\r\nconst SpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition;\r\n\r\nfunction buildDots() {\r\n  const c = document.getElementById('qDots');\r\n  c.innerHTML = questions.map((_,i) => `<div class=\"q-dot\" id=\"dot${i}\"><\/div>`).join('');\r\n}\r\n\r\nfunction updateDots(index) {\r\n  questions.forEach((q, i) => {\r\n    const d = document.getElementById('dot' + i);\r\n    if (!d) return;\r\n    if (filledFields.has(q.field)) d.className = 'q-dot done';\r\n    else if (i === index) d.className = 'q-dot active';\r\n    else d.className = 'q-dot';\r\n  });\r\n}\r\n\r\nfunction updateProgress() {\r\n  const pct = Math.round((filledFields.size \/ questions.length) * 100);\r\n  document.getElementById('progressText').textContent = `${filledFields.size} of ${questions.length} fields completed`;\r\n  document.getElementById('progressFill').style.width = pct + '%';\r\n}\r\n\r\nfunction activateQuestion(index) {\r\n  currentQ = index;\r\n  const q = questions[index];\r\n  document.getElementById('qCounter').textContent = `QUESTION ${index + 1} OF ${questions.length}`;\r\n  document.getElementById('qText').textContent = q.text;\r\n  document.getElementById('transcriptBox').style.display = 'none';\r\n  document.getElementById('transcriptBox').value = '';\r\n  document.getElementById('voiceNav').style.display = 'none';\r\n  document.getElementById('micCircle').className = 'mic-circle disabled';\r\n  setMicLabel('Alice is speaking \u2014 listen for your question...');\r\n  currentFinalText = '';\r\n  updateDots(index);\r\n\r\n  questions.forEach(qq => {\r\n    const card = document.getElementById('card_' + qq.id);\r\n    if (card) card.classList.remove('active');\r\n  });\r\n  const activeCard = document.getElementById('card_' + q.field);\r\n  if (activeCard) {\r\n    if (!filledFields.has(q.field)) activeCard.className = 'card active';\r\n  }\r\n\r\n  const audio = questionAudios[index];\r\n  audio.currentTime = 0;\r\n  audio.play().catch(() => {});\r\n  audio.onended = () => {\r\n    if (q.typeOnly) {\r\n      document.getElementById('micCircle').className = 'mic-circle disabled';\r\n      setMicLabel('\ud83d\udce7 Please type your email address in the box below.');\r\n      document.getElementById('transcriptBox').style.display = 'block';\r\n      document.getElementById('transcriptBox').focus();\r\n      document.getElementById('voiceNav').style.display = 'flex';\r\n    } else {\r\n      document.getElementById('micCircle').className = 'mic-circle';\r\n      setMicLabel('Tap the mic and speak your answer');\r\n    }\r\n  };\r\n}\r\n\r\nfunction toggleMic() {\r\n  if (document.getElementById('micCircle').classList.contains('disabled')) return;\r\n  if (!SpeechRecognition) { setMicLabel('Please use Chrome for voice input.'); return; }\r\n  isListening ? stopMic() : startMic();\r\n}\r\n\r\nfunction startMic() {\r\n  recognition = new SpeechRecognition();\r\n  recognition.continuous = true;\r\n  recognition.interimResults = true;\r\n  recognition.lang = 'en-US';\r\n  isListening = true;\r\n  currentFinalText = '';\r\n  document.getElementById('micCircle').classList.add('listening');\r\n  document.getElementById('micCircle').innerHTML = '\u23f9';\r\n  setMicLabel('\ud83d\udd34 Listening... tap again when done');\r\n  document.getElementById('transcriptBox').style.display = 'block';\r\n\r\n  recognition.onresult = (e) => {\r\n    let interim = '';\r\n    for (let i = e.resultIndex; i < e.results.length; i++) {\r\n      if (e.results[i].isFinal) currentFinalText += e.results[i][0].transcript + ' ';\r\n      else interim = e.results[i][0].transcript;\r\n    }\r\n    document.getElementById('transcriptBox').value = (currentFinalText + interim).trim();\r\n  };\r\n  recognition.onend = () => { if (isListening) { try { recognition.start(); } catch(e) {} } };\r\n  recognition.onerror = () => stopMic();\r\n  recognition.start();\r\n\r\n  clearTimeout(listenTimer);\r\n  listenTimer = setTimeout(() => stopMic(), questions[currentQ].listenSec * 1000);\r\n}\r\n\r\nfunction stopMic() {\r\n  isListening = false;\r\n  clearTimeout(listenTimer);\r\n  if (recognition) { recognition.onend = null; try { recognition.stop(); } catch(e) {} }\r\n  document.getElementById('micCircle').classList.remove('listening');\r\n  document.getElementById('micCircle').innerHTML = '\ud83c\udfa4';\r\n  const val = document.getElementById('transcriptBox').value.trim();\r\n  if (val) {\r\n    setMicLabel('Review your answer above \u2014 edit if needed.');\r\n    document.getElementById('voiceNav').style.display = 'flex';\r\n  } else {\r\n    setMicLabel('Tap the mic and speak your answer.');\r\n  }\r\n}\r\n\r\nfunction confirmAnswer() {\r\n  const val = document.getElementById('transcriptBox').value.trim();\r\n  if (!val) { setMicLabel('Please answer the question first.'); return; }\r\n  const q = questions[currentQ];\r\n  const field = document.getElementById(q.field);\r\n  if (field) {\r\n    field.value = q.field === 'pb_email' ? val.replace(\/\\s\/g,'').toLowerCase() : val;\r\n    field.classList.add('filled');\r\n  }\r\n  filledFields.add(q.field);\r\n  const card = document.getElementById('card_' + q.field);\r\n  if (card) card.className = 'card filled';\r\n  updateProgress();\r\n  updateDots(currentQ);\r\n  document.getElementById('voiceNav').style.display = 'none';\r\n  document.getElementById('transcriptBox').style.display = 'none';\r\n  const next = currentQ + 1;\r\n  if (next < questions.length) setTimeout(() => activateQuestion(next), 600);\r\n  else allDone();\r\n}\r\n\r\nfunction redoAnswer() {\r\n  document.getElementById('transcriptBox').value = '';\r\n  document.getElementById('voiceNav').style.display = 'none';\r\n  currentFinalText = '';\r\n  setMicLabel('Tap the mic and answer again.');\r\n  if (!questions[currentQ].typeOnly) startMic();\r\n}\r\n\r\nfunction allDone() {\r\n  document.getElementById('qText').textContent = '\ud83c\udf89 All done! Review your answers and hit the button below!';\r\n  document.getElementById('micCircle').style.display = 'none';\r\n  setMicLabel('');\r\n  updateDots(questions.length);\r\n}\r\n\r\nfunction setMicLabel(text) { document.getElementById('micLabel').textContent = text; }\r\n\r\nfunction onFieldInput(fieldId) {\r\n  const el = document.getElementById(fieldId);\r\n  const val = el ? el.value.trim() : '';\r\n  const card = document.getElementById('card_' + fieldId);\r\n  if (val) {\r\n    el.classList.add('filled');\r\n    filledFields.add(fieldId);\r\n    if (card) card.className = 'card filled';\r\n  } else {\r\n    el.classList.remove('filled');\r\n    filledFields.delete(fieldId);\r\n    if (card) card.className = 'card';\r\n  }\r\n  updateProgress();\r\n  updateDots(currentQ);\r\n}\r\n\r\nasync function submitForm() {\r\n  const required = ['pb_name','pb_email','pb_aitool','pb_tone','pb_goal','pb_content'];\r\n  for (const f of required) {\r\n    if (!document.getElementById(f).value.trim()) {\r\n      document.getElementById(f).focus();\r\n      const msg = document.getElementById('form-message');\r\n      msg.className = 'error';\r\n      msg.textContent = 'Please fill in all required fields before submitting.';\r\n      msg.style.display = 'block';\r\n      return;\r\n    }\r\n  }\r\n\r\n  const msg = document.getElementById('form-message');\r\n  msg.className = 'loading';\r\n  msg.textContent = '\u23f3 Building your prompt... please wait.';\r\n  msg.style.display = 'block';\r\n  document.querySelector('.submit-btn').disabled = true;\r\n\r\n  const get = id => {\r\n    const val = document.getElementById(id).value.trim();\r\n    return id === 'pb_email' ? val.replace(\/\\s\/g,'').toLowerCase() : val;\r\n  };\r\n\r\n  try {\r\n    await fetch('https:\/\/api-bcbe5a.stack.tryrelevance.com\/latest\/agents\/trigger', {\r\n      method: 'POST',\r\n      headers: {\r\n        'Content-Type': 'application\/json',\r\n        'Authorization': 'b831f1f2-22e3-4067-b1f5-c431251db0cc:sk-YmQyNzMzZWUtZDQzMC00ODAzLWEyNDQtNzcxZjM4NTNlZGJj'\r\n      },\r\n      body: JSON.stringify({\r\n        agent_id: 'cb311d5e-c951-4ecd-830c-9e7c324ee76b',\r\n        message: {\r\n          role: 'user',\r\n          content: `My name is ${get('pb_name')}. My email is ${get('pb_email')}.\r\nAI Tool: ${get('pb_aitool')}.\r\nStyle and Tone: ${get('pb_tone')}.\r\nWhat I want to get out of the prompt: ${get('pb_goal')}.\r\nWhat I want the prompt to say: ${get('pb_content')}.`\r\n        }\r\n      })\r\n    });\r\n    msg.className = 'success';\r\n    msg.textContent = '\u2705 Your prompt is being built! Check your inbox in just a few minutes.';\r\n  } catch(e) {\r\n    msg.className = 'error';\r\n    msg.textContent = '\u274c Something went wrong. Please try again.';\r\n    document.querySelector('.submit-btn').disabled = false;\r\n  }\r\n}\r\n\r\n\/\/ Init\r\nbuildDots();\r\nconst welcomeMsg = document.getElementById('welcomeMsg');\r\nconst words = welcomeText.split(' ');\r\nlet wi = 0;\r\nwelcomeAudio.play().catch(() => {});\r\nconst wInt = setInterval(() => {\r\n  if (wi < words.length) { welcomeMsg.textContent += (wi === 0 ? '' : ' ') + words[wi++]; }\r\n  else clearInterval(wInt);\r\n}, 1000 \/ 2.8);\r\nwelcomeAudio.onended = () => {\r\n  clearInterval(wInt);\r\n  welcomeMsg.textContent = welcomeText;\r\n  setTimeout(() => activateQuestion(0), 1500);\r\n};\r\nwelcomeAudio.onerror = () => {\r\n  welcomeMsg.textContent = welcomeText;\r\n  setTimeout(() => activateQuestion(0), 1000);\r\n};\r\n<\/script>\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5c3a60f e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-column-slider-no wpr-equal-height-no e-con e-parent\" data-id=\"5c3a60f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2d06c40 elementor-widget elementor-widget-heading\" data-id=\"2d06c40\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u201cFor guidance only. Results depend on how prompts are used.\u201d<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-40a112a e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-column-slider-no wpr-equal-height-no e-con e-parent\" data-id=\"40a112a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4c3d637 elementor-widget elementor-widget-text-editor\" data-id=\"4c3d637\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><strong>Disclaimer<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-85dea43 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-column-slider-no wpr-equal-height-no e-con e-parent\" data-id=\"85dea43\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5a92998 elementor-widget elementor-widget-text-editor\" data-id=\"5a92998\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"797\" data-end=\"1064\">The Dealflow Agent provides property analysis and investment insights based on the data entered by the user and available information. All results are for informational purposes only and do not constitute financial, real estate, or investment advice.<\/p><p data-start=\"1066\" data-end=\"1243\">The accuracy of results depends on the information provided and available data. The agent does not guarantee property values, profits, market conditions, or investment outcomes.<\/p><p data-start=\"1245\" data-end=\"1389\">Users are responsible for verifying all information and conducting their own due diligence before making any real estate or financial decisions.<\/p><p data-start=\"1391\" data-end=\"1534\">By using this tool, you agree that My AI Agent Hub is not liable for any decisions, losses, or outcomes resulting from the use of this service.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Prompt Builder Agent \ud83e\udd16 Prompt Builder Agent Alice will guide you through 6 quick questions. Just tap the mic and talk naturally \u2014 your custom AI prompt will be in your inbox within minutes. \ud83d\udc4b Alice \u2014 Prompt Builder Agent QUESTION 1 OF 6 Getting ready&#8230; \ud83c\udfa4 Alice is speaking \u2014 listen for your question&#8230; \u2705 Confirm \ud83d\udd04 Redo 0 of 6 fields completed Full Name * Email Address * AI Tool * Style &amp; Tone * What You Want To Get Out of the Prompt * What You Want the Prompt To Say * \ud83d\ude80 Build My Prompt Your custom prompt will be delivered to your email within minutes. Submit as many times as you need \u2014 your subscription is unlimited. \u201cFor guidance only. Results depend on how prompts are used.\u201d Disclaimer The Dealflow Agent provides property analysis and investment insights based on the data entered by the user and available information. All results are for informational purposes only and do not constitute financial, real estate, or investment advice. The accuracy of results depends on the information provided and available data. The agent does not guarantee property values, profits, market conditions, or investment outcomes. Users are responsible for verifying all information and conducting their own due diligence before making any real estate or financial decisions. By using this tool, you agree that My AI Agent Hub is not liable for any decisions, losses, or outcomes resulting from the use of this service.<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-1354","page","type-page","status-publish","hentry"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/myaiagenthub.com\/es\/wp-json\/wp\/v2\/pages\/1354","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/myaiagenthub.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/myaiagenthub.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/myaiagenthub.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/myaiagenthub.com\/es\/wp-json\/wp\/v2\/comments?post=1354"}],"version-history":[{"count":66,"href":"https:\/\/myaiagenthub.com\/es\/wp-json\/wp\/v2\/pages\/1354\/revisions"}],"predecessor-version":[{"id":4972,"href":"https:\/\/myaiagenthub.com\/es\/wp-json\/wp\/v2\/pages\/1354\/revisions\/4972"}],"wp:attachment":[{"href":"https:\/\/myaiagenthub.com\/es\/wp-json\/wp\/v2\/media?parent=1354"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}