dograh/docs/voice-agent/global.mdx
Rushil 96cde1b767
docs: flesh out all 5 voice agent node pages (#556)
* docs: flesh out stub node pages for Global, Start Call, Agent, End Call, QA

Each page was previously a stub (1 sentence or a single <Note>). Now contains:
- Plain-English explanation of what the node does and when it runs
- Fields/configuration reference
- Common mistakes section
- Next Steps with CardGroup links

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: fix heading structure, Warning placement, variable formatting in node pages

- qa.mdx: promote Viewing QA Results from h3 to h2 (was incorrectly nested under Where it sits on the canvas)
- end-call.mdx: move Warning inside Common Mistakes, directly after the bullet it relates to
- start-call/agent/end-call/qa.mdx: wrap bare gathered_context and initial_context in backticks in Card descriptions

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: correct node page errors found by cross-checking against live API + DTO

start-call:
- Fix Node Name description (canvas label, not agent spoken name)
- Split Greeting Text and Prompt into separate documented fields (were conflated)
- Add Delayed Start field (real config option, was missing entirely)
- Fix Common Mistakes (remove wrong Agent Name claim)
- Add Pre-recorded Audio note with link

end-call:
- Remove incorrect <Note> claiming one End Call per workflow
- DTO has no max_instances constraint; llm_hint explicitly says multiple are supported
- Fix Common Mistakes to reflect correct guidance (multiple allowed)

agent:
- Add Extracting variables section documenting extraction_enabled, extraction_prompt,
  extraction_variables fields with a concrete example

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: fix field names and QA model against live platform schemas

- qa.mdx: replace fictional criteria-list concept with accurate
  qa_system_prompt field; document default output format (tags, score,
  sentiment, summary); add sampling/duration/voicemail filter settings
- global.mdx: correct prompt-merge order (global prepended, not appended)
- start-call.mdx: update stale "Greeting Prompt" reference in common
  mistakes to match renamed field "Greeting Text"

Verified against live node schemas via Dograh MCP get_node_type.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: fix em dash violations and appended/prepended contradiction

- global.mdx: "silently appended" contradicted "global content first";
  changed to "prepended" for internal consistency and schema accuracy
- qa.mdx: remove two em dashes (hard no per style rules)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: correct node docs against live workflow SDK evidence

- start-call: replace invented fixed edge labels with accurate explanation
  that edge labels and conditions are user-defined; add real examples
- end-call: rename "Final Message" to "Prompt" to match SDK field name
  used in all real workflows; update all references
- global: add Start Call to Add Global Prompt toggle coverage
  (startCall has add_global_prompt: true by default per schema)
- qa: replace informal tag descriptions with actual default tag names
  from the qa_system_prompt schema

All changes verified against live Dograh MCP node schemas and
real workflow SDK code (workflow IDs 7764, 8291).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: flesh out all 5 voice agent node pages with accurate UI fields

Complete rewrite of stub docs for global, start-call, agent, end-call,
and qa nodes. Field names, toggle labels, and section headings now match
the actual Dograh UI exactly. Covers all fields visible in each node
edit panel including Allow Interruption, Add Global Prompt, Delayed Start,
Enable Variable Extraction, Pre-Call Data Fetch, and QA settings table.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: remove Allow Interruption from End Call node

End Call does not expose an Allow Interruption toggle in the UI.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: address cubic and greptile review comments on node pages

- agent.mdx, end-call.mdx: remove/correct gathered_context claims -
  it is not available in any node's Prompt, only in Webhook payloads
  and the run record (confirmed against context-and-variables.mdx)
- global.mdx: fix appended -> prepended in frontmatter description
  and Common Mistakes (contradicted How It Works section)
- introduction.mdx: update End Call node-type table - multiple End
  Call nodes are supported, not just one
- agent.mdx, end-call.mdx, qa.mdx, start-call.mdx: tag bare code
  fences as text for Mintlify syntax highlighting
- global.mdx, start-call.mdx, agent.mdx, end-call.mdx, qa.mdx:
  convert absolute internal links to relative paths per style guide

* docs: embed video tutorials on all 5 node pages, fix cubic grammar comment

- Add Video Tutorial section (iframe embed) to global, start-call,
  agent, end-call, and qa node pages, matching the pattern already
  used in webhook.mdx
- global.mdx: fix "Global Node contain" -> "Global Node contains" in
  frontmatter description, per cubic review on 09c5ff31

* docs: fix appended/prepended in introduction.mdx node table

Global node's node-type summary still said the prompt is "appended"
after Add Global Prompt is enabled, contradicting the corrected
"prepended" behavior documented everywhere else. Caught by greptile
P1 review on commit b7fe2d0d.

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-23 12:27:17 +05:30

69 lines
3 KiB
Text

---
title: "Global Node"
description: "Global Node contains the common prompt that is prepended to the prompt of every node, in which `Add Global Prompt` is turned on."
---
## Video Tutorial
<iframe
width="560"
height="315"
src="https://www.youtube.com/embed/ihMPJ4lCRfA"
title="Global Node Tutorial"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerPolicy="strict-origin-when-cross-origin"
allowFullScreen
></iframe>
<Note>
You should have only one Global node per Voice Agent.
</Note>
![Add Global Prompt Selector](../images/global-node.png)
Global Node is a shared prompt layer for your entire workflow. Write your agent's persona, tone guidelines, and compliance rules once in the **Global Prompt** field. Any Agent Node or Start Call node with "Add Global Prompt" turned on will receive this content prepended to its own prompt before each LLM call.
## What goes in the Global Node
Use Global Node for instructions that apply across every step of the conversation:
- **Persona:** Who is the agent? What company do they represent?
- **Tone rules:** How formal or warm should they be?
- **Compliance guardrails:** What must the agent never say?
- **Objection handling:** How should the agent respond to pushback?
Avoid putting step-specific logic here. Instructions like "offer the settlement option after the debtor confirms their identity" belong in the Agent Node prompt, not in Global.
## How it works
Global Node does not run as a separate step in the call. It has no edges and cannot be connected to other nodes. The Global Prompt is silently prepended to each node's prompt where "Add Global Prompt" is enabled.
The LLM sees one combined prompt: the global content first, followed by the node-specific instructions. The caller never notices the seam.
## Enabling it on an Agent Node
Each Agent Node and Start Call node has an "Add Global Prompt" toggle in its settings panel. Nodes with the toggle off receive no global content for that step.
<Tip>
Turn the toggle off selectively when a specific node needs different behavior. An escalation node, for example, may need a more formal tone that should not inherit your default persona.
</Tip>
## Common mistakes
**Putting node-specific logic in the Global Node.** Global is for rules that always apply, not for conversation-specific decisions. Sequence and outcome logic belong in each Agent Node prompt.
**Leaving the Global Node prompt empty with toggles on.** A blank Global Node prepended to every prompt does nothing harmful, but it is also pointless. Either fill it in or leave the toggle off.
**Adding a second Global Node.** Each workflow supports exactly one. Adding a second throws an error.
## Next Steps
<CardGroup cols={2}>
<Card title="Start Call Node" href="./start-call">
Configure how your agent opens the conversation.
</Card>
<Card title="Agent Node" href="./agent">
Build the core conversation logic that inherits your global prompt.
</Card>
</CardGroup>