Use this scenario
Run
Run web_research scenario.
Use run_scenario with the saved scenario name and string-valued inputs. Required values are requested before execution.
View invocation JSON
{
"scenario_name": "web_research",
"inputs": {
"question": "your question",
"source_count": "5"
}
}Inputs
PARAMETERS| Input | Requirement | Default value |
|---|---|---|
question | Required | No default |
source_count | Optional | 5 |
Agent instructions
SYSTEM PROMPTCoordinate saved search, reader and synthesis scenarios. Never invent evidence or save research to user memory.
Tool access
CAPABILITIESweb_check_answer_operation— selected from this version's tool catalog.calendar_offer_operation— selected from this version's tool catalog.
Ordered steps
EXECUTION- 01NESTED SCENARIO / FRESH CHILD
question= {{question}}source_count= {{source_count}}
Save output as
search. - 02BOUNDED COLLECTION / FRESH CHILDREN
Read
search.resultsassource. Target {{source_count}}; at most 30 attempts. Collectreading.Count successful
readableresults; distinct identity:url.- 01NESTED SCENARIO / FRESH CHILD
question= {{question}}url= {{source.url}}
Save output as
reading.
Save output as
findings. - 01
- 03NESTED SCENARIO / FRESH CHILD
question= {{question}}evidence= {{findings}}search_status= {{search.engines}}
Save output as
answer. - 04BOUND OPERATION / HOST EXECUTED
web_check_answer_operationanswer= {{answer}}evidence= {{findings}}
Save output as
verified_answer. - 05BOUND OPERATION / HOST EXECUTED
calendar_offer_operationanswer= {{verified_answer}}question= {{question}}
Save output as
answer_with_offer.
Return to main
COPY EXITReturn the verified final answer unchanged, including source links, actual coverage and the separate calendar offer when present.
The final text returns without model rewriting. Bound operation scenarios return application results; pending changes still require host approval.
Complete XML, including any embedded C#. Copy it without changing the file's contents.
<scenario schemaVersion="3" id="web_research" title="Research a question on the public web">
<inputs><input name="question" required="true" /><input name="source_count" default="5" /></inputs>
<systemPrompt>Coordinate saved search, reader and synthesis scenarios. Never invent evidence or save research to user memory.</systemPrompt>
<tools><allow name="web_check_answer_operation" /><allow name="calendar_offer_operation" /></tools>
<steps>
<run scenario="web_search" result="search"><input name="question" value="{{question}}" /><input name="source_count" value="{{source_count}}" /></run>
<foreach items="search.results" item="source" collect="reading" result="findings" limit="{{source_count}}" attempts="30" successProperty="readable" identityProperty="url">
<run scenario="web_read_source" result="reading"><input name="question" value="{{question}}" /><input name="url" value="{{source.url}}" /></run>
</foreach>
<run scenario="web_synthesize" result="answer"><input name="question" value="{{question}}" /><input name="evidence" value="{{findings}}" /><input name="search_status" value="{{search.engines}}" /></run>
<tool name="web_check_answer_operation" result="verified_answer"><input name="answer" value="{{answer}}" /><input name="evidence" value="{{findings}}" /></tool>
<tool name="calendar_offer_operation" result="answer_with_offer"><input name="answer" value="{{verified_answer}}" /><input name="question" value="{{question}}" /></tool>
</steps>
<exit mode="copy">Return the verified final answer unchanged, including source links, actual coverage and the separate calendar offer when present.</exit>
</scenario>
Every part, briefly.
Short explanations of every element and chat step in this scenario.
- 01Writing example ↗
<scenario>Names and versions the workflow.
- 02Writing example ↗
<inputs>Declares input values.
- 03Writing example ↗
<input>questionRequires a supplied value.
- 04Writing example ↗
<input>source_countProvides an optional value.
- 05Writing example ↗
<systemPrompt>Sets the child's instructions.
- 06Writing example ↗
<tools>Defines available capabilities.
- 07Writing example ↗
<allow>web_check_answer_operationGrants an existing tool.
- 08Writing example ↗
<allow>calendar_offer_operationGrants an existing tool.
- 09Writing example ↗
<steps>Orders the chat turns.
- 10Writing example ↗
<run>Invokes a fresh saved child scenario.
- 11Writing example ↗
<input>questionBinds a named operation or child input.
- 12Writing example ↗
<input>source_countBinds a named operation or child input.
- 13Writing example ↗
<foreach>Processes and collects a bounded array.
- 14Writing example ↗
<run>Invokes a fresh saved child scenario.
- 15Writing example ↗
<input>questionBinds a named operation or child input.
- 16Writing example ↗
<input>urlBinds a named operation or child input.
- 17Writing example ↗
<run>Invokes a fresh saved child scenario.
- 18Writing example ↗
<input>questionBinds a named operation or child input.
- 19Writing example ↗
<input>evidenceBinds a named operation or child input.
- 20Writing example ↗
<input>search_statusBinds a named operation or child input.
- 21Writing example ↗
<tool>web_check_answer_operationExecutes a declared host operation.
- 22Writing example ↗
<input>answerBinds a named operation or child input.
- 23Writing example ↗
<input>evidenceBinds a named operation or child input.
- 24Writing example ↗
<tool>calendar_offer_operationExecutes a declared host operation.
- 25Writing example ↗
<input>answerBinds a named operation or child input.
- 26Writing example ↗
<input>questionBinds a named operation or child input.
- 27Writing example ↗
<exit>Returns the output unchanged.