@octavus/docs 0.0.9 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/README.md +127 -0
  2. package/content/01-getting-started/01-introduction.md +3 -3
  3. package/content/01-getting-started/02-quickstart.md +40 -17
  4. package/content/02-server-sdk/01-overview.md +54 -11
  5. package/content/02-server-sdk/02-sessions.md +166 -15
  6. package/content/02-server-sdk/03-tools.md +21 -21
  7. package/content/02-server-sdk/04-streaming.md +50 -20
  8. package/content/02-server-sdk/05-cli.md +247 -0
  9. package/content/03-client-sdk/01-overview.md +65 -35
  10. package/content/03-client-sdk/02-messages.md +116 -8
  11. package/content/03-client-sdk/03-streaming.md +36 -17
  12. package/content/03-client-sdk/04-execution-blocks.md +8 -12
  13. package/content/03-client-sdk/05-socket-transport.md +161 -45
  14. package/content/03-client-sdk/06-http-transport.md +48 -24
  15. package/content/03-client-sdk/07-structured-output.md +412 -0
  16. package/content/03-client-sdk/08-file-uploads.md +473 -0
  17. package/content/03-client-sdk/09-error-handling.md +274 -0
  18. package/content/04-protocol/01-overview.md +24 -14
  19. package/content/04-protocol/02-input-resources.md +35 -35
  20. package/content/04-protocol/03-triggers.md +9 -11
  21. package/content/04-protocol/04-tools.md +63 -29
  22. package/content/04-protocol/05-skills.md +304 -0
  23. package/content/04-protocol/06-handlers.md +304 -0
  24. package/content/04-protocol/07-agent-config.md +334 -0
  25. package/content/04-protocol/{07-provider-options.md → 08-provider-options.md} +54 -35
  26. package/content/04-protocol/09-skills-advanced.md +439 -0
  27. package/content/04-protocol/10-types.md +719 -0
  28. package/content/05-api-reference/01-overview.md +20 -21
  29. package/content/05-api-reference/02-sessions.md +192 -37
  30. package/content/05-api-reference/03-agents.md +25 -37
  31. package/content/06-examples/01-overview.md +6 -4
  32. package/content/06-examples/02-nextjs-chat.md +28 -18
  33. package/content/06-examples/03-socket-chat.md +53 -30
  34. package/content/06-examples/_meta.md +0 -1
  35. package/dist/chunk-WJ2W3DUC.js +663 -0
  36. package/dist/chunk-WJ2W3DUC.js.map +1 -0
  37. package/dist/content.js +1 -1
  38. package/dist/docs.json +99 -36
  39. package/dist/index.js +1 -1
  40. package/dist/search-index.json +1 -1
  41. package/dist/search.js +1 -1
  42. package/dist/search.js.map +1 -1
  43. package/dist/sections.json +99 -36
  44. package/package.json +12 -2
  45. package/content/04-protocol/05-handlers.md +0 -251
  46. package/content/04-protocol/06-agent-config.md +0 -242
  47. package/dist/chunk-232K4EME.js +0 -439
  48. package/dist/chunk-232K4EME.js.map +0 -1
  49. package/dist/chunk-2JDZLMS3.js +0 -439
  50. package/dist/chunk-2JDZLMS3.js.map +0 -1
  51. package/dist/chunk-2YMRODFE.js +0 -421
  52. package/dist/chunk-2YMRODFE.js.map +0 -1
  53. package/dist/chunk-2ZBPX5QB.js +0 -421
  54. package/dist/chunk-2ZBPX5QB.js.map +0 -1
  55. package/dist/chunk-3PIIST4D.js +0 -421
  56. package/dist/chunk-3PIIST4D.js.map +0 -1
  57. package/dist/chunk-42JETGDO.js +0 -421
  58. package/dist/chunk-42JETGDO.js.map +0 -1
  59. package/dist/chunk-4WWUKU4V.js +0 -421
  60. package/dist/chunk-4WWUKU4V.js.map +0 -1
  61. package/dist/chunk-5M7DS4DF.js +0 -519
  62. package/dist/chunk-5M7DS4DF.js.map +0 -1
  63. package/dist/chunk-6JQ3OMGF.js +0 -421
  64. package/dist/chunk-6JQ3OMGF.js.map +0 -1
  65. package/dist/chunk-7AOWCJHW.js +0 -421
  66. package/dist/chunk-7AOWCJHW.js.map +0 -1
  67. package/dist/chunk-7AS4ST73.js +0 -421
  68. package/dist/chunk-7AS4ST73.js.map +0 -1
  69. package/dist/chunk-7F5WOCIL.js +0 -421
  70. package/dist/chunk-7F5WOCIL.js.map +0 -1
  71. package/dist/chunk-7FPUAWSX.js +0 -421
  72. package/dist/chunk-7FPUAWSX.js.map +0 -1
  73. package/dist/chunk-7KXF63FV.js +0 -537
  74. package/dist/chunk-7KXF63FV.js.map +0 -1
  75. package/dist/chunk-APASMJBS.js +0 -421
  76. package/dist/chunk-APASMJBS.js.map +0 -1
  77. package/dist/chunk-BCEV3WV2.js +0 -421
  78. package/dist/chunk-BCEV3WV2.js.map +0 -1
  79. package/dist/chunk-CHGY4G27.js +0 -421
  80. package/dist/chunk-CHGY4G27.js.map +0 -1
  81. package/dist/chunk-CI7JDWKU.js +0 -421
  82. package/dist/chunk-CI7JDWKU.js.map +0 -1
  83. package/dist/chunk-CVFWWRL7.js +0 -421
  84. package/dist/chunk-CVFWWRL7.js.map +0 -1
  85. package/dist/chunk-EPDM2NIJ.js +0 -421
  86. package/dist/chunk-EPDM2NIJ.js.map +0 -1
  87. package/dist/chunk-ESGSYVGK.js +0 -421
  88. package/dist/chunk-ESGSYVGK.js.map +0 -1
  89. package/dist/chunk-GDCTM2SV.js +0 -421
  90. package/dist/chunk-GDCTM2SV.js.map +0 -1
  91. package/dist/chunk-GJ6FMIPD.js +0 -421
  92. package/dist/chunk-GJ6FMIPD.js.map +0 -1
  93. package/dist/chunk-H6JGSSAJ.js +0 -519
  94. package/dist/chunk-H6JGSSAJ.js.map +0 -1
  95. package/dist/chunk-IKQHGGUZ.js +0 -421
  96. package/dist/chunk-IKQHGGUZ.js.map +0 -1
  97. package/dist/chunk-IUKE3XDN.js +0 -421
  98. package/dist/chunk-IUKE3XDN.js.map +0 -1
  99. package/dist/chunk-J26MLMLN.js +0 -421
  100. package/dist/chunk-J26MLMLN.js.map +0 -1
  101. package/dist/chunk-J7BMB3ZW.js +0 -421
  102. package/dist/chunk-J7BMB3ZW.js.map +0 -1
  103. package/dist/chunk-JCBQRD5N.js +0 -421
  104. package/dist/chunk-JCBQRD5N.js.map +0 -1
  105. package/dist/chunk-JOB6YWEF.js +0 -421
  106. package/dist/chunk-JOB6YWEF.js.map +0 -1
  107. package/dist/chunk-JZRABTHU.js +0 -519
  108. package/dist/chunk-JZRABTHU.js.map +0 -1
  109. package/dist/chunk-K3GFQUMC.js +0 -421
  110. package/dist/chunk-K3GFQUMC.js.map +0 -1
  111. package/dist/chunk-LWYMRXBF.js +0 -421
  112. package/dist/chunk-LWYMRXBF.js.map +0 -1
  113. package/dist/chunk-M2R2NDPR.js +0 -421
  114. package/dist/chunk-M2R2NDPR.js.map +0 -1
  115. package/dist/chunk-MA3P7WCA.js +0 -421
  116. package/dist/chunk-MA3P7WCA.js.map +0 -1
  117. package/dist/chunk-MDMRCS4W.mjs +0 -421
  118. package/dist/chunk-MDMRCS4W.mjs.map +0 -1
  119. package/dist/chunk-MJXTA2R6.js +0 -421
  120. package/dist/chunk-MJXTA2R6.js.map +0 -1
  121. package/dist/chunk-NFVJQNDP.js +0 -421
  122. package/dist/chunk-NFVJQNDP.js.map +0 -1
  123. package/dist/chunk-O5TLYMQP.js +0 -421
  124. package/dist/chunk-O5TLYMQP.js.map +0 -1
  125. package/dist/chunk-OECAPVSX.js +0 -439
  126. package/dist/chunk-OECAPVSX.js.map +0 -1
  127. package/dist/chunk-OL5QDJ42.js +0 -483
  128. package/dist/chunk-OL5QDJ42.js.map +0 -1
  129. package/dist/chunk-PMOVVTHO.js +0 -519
  130. package/dist/chunk-PMOVVTHO.js.map +0 -1
  131. package/dist/chunk-QCHDPR2D.js +0 -421
  132. package/dist/chunk-QCHDPR2D.js.map +0 -1
  133. package/dist/chunk-R5MTVABN.js +0 -439
  134. package/dist/chunk-R5MTVABN.js.map +0 -1
  135. package/dist/chunk-RJ4H4YVA.js +0 -519
  136. package/dist/chunk-RJ4H4YVA.js.map +0 -1
  137. package/dist/chunk-S5U4IWCR.js +0 -439
  138. package/dist/chunk-S5U4IWCR.js.map +0 -1
  139. package/dist/chunk-SCKIOGKI.js +0 -421
  140. package/dist/chunk-SCKIOGKI.js.map +0 -1
  141. package/dist/chunk-TGJSIJYP.js +0 -421
  142. package/dist/chunk-TGJSIJYP.js.map +0 -1
  143. package/dist/chunk-TQJG6EBM.js +0 -537
  144. package/dist/chunk-TQJG6EBM.js.map +0 -1
  145. package/dist/chunk-TQZRBMU7.js +0 -421
  146. package/dist/chunk-TQZRBMU7.js.map +0 -1
  147. package/dist/chunk-TRL4RSEO.js +0 -421
  148. package/dist/chunk-TRL4RSEO.js.map +0 -1
  149. package/dist/chunk-TWUMRHQ7.js +0 -421
  150. package/dist/chunk-TWUMRHQ7.js.map +0 -1
  151. package/dist/chunk-UCJE36LL.js +0 -519
  152. package/dist/chunk-UCJE36LL.js.map +0 -1
  153. package/dist/chunk-VCASA6KL.js +0 -421
  154. package/dist/chunk-VCASA6KL.js.map +0 -1
  155. package/dist/chunk-VWPQ6ORV.js +0 -421
  156. package/dist/chunk-VWPQ6ORV.js.map +0 -1
  157. package/dist/chunk-WPXKIHLT.js +0 -421
  158. package/dist/chunk-WPXKIHLT.js.map +0 -1
  159. package/dist/chunk-WUNFFJ32.js +0 -421
  160. package/dist/chunk-WUNFFJ32.js.map +0 -1
  161. package/dist/chunk-WW7TRC7S.js +0 -519
  162. package/dist/chunk-WW7TRC7S.js.map +0 -1
  163. package/dist/chunk-XVSMRXBJ.js +0 -421
  164. package/dist/chunk-XVSMRXBJ.js.map +0 -1
  165. package/dist/chunk-YPPXXV3I.js +0 -421
  166. package/dist/chunk-YPPXXV3I.js.map +0 -1
  167. package/dist/chunk-ZKZVV4OQ.js +0 -421
  168. package/dist/chunk-ZKZVV4OQ.js.map +0 -1
  169. package/dist/chunk-ZOFEX73I.js +0 -421
  170. package/dist/chunk-ZOFEX73I.js.map +0 -1
  171. package/dist/content.mjs +0 -17
  172. package/dist/content.mjs.map +0 -1
  173. package/dist/index.mjs +0 -11
  174. package/dist/index.mjs.map +0 -1
  175. package/dist/search.mjs +0 -30
  176. package/dist/search.mjs.map +0 -1
  177. package/dist/types-BltYGlWI.d.ts +0 -36
package/package.json CHANGED
@@ -1,14 +1,24 @@
1
1
  {
2
2
  "name": "@octavus/docs",
3
- "version": "0.0.9",
3
+ "version": "1.0.0",
4
4
  "description": "Documentation content for Octavus SDKs",
5
5
  "license": "MIT",
6
6
  "author": "Octavus AI <dev@octavus.ai>",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/octavus-ai/js-sdk.git",
10
+ "directory": "packages/docs"
11
+ },
12
+ "homepage": "https://octavus.ai",
13
+ "bugs": {
14
+ "url": "https://github.com/octavus-ai/js-sdk/issues"
15
+ },
7
16
  "keywords": [
8
17
  "octavus",
9
18
  "ai",
10
19
  "agents",
11
- "documentation"
20
+ "documentation",
21
+ "docs"
12
22
  ],
13
23
  "type": "module",
14
24
  "exports": {
@@ -1,251 +0,0 @@
1
- ---
2
- title: Handlers
3
- description: Defining execution handlers with blocks.
4
- ---
5
-
6
- # Handlers
7
-
8
- Handlers define what happens when a trigger fires. They contain execution blocks that run in sequence.
9
-
10
- ## Handler Structure
11
-
12
- ```yaml
13
- handlers:
14
- trigger-name:
15
- Block Name:
16
- type: block-type
17
- # block-specific properties
18
-
19
- Another Block:
20
- type: another-type
21
- # ...
22
- ```
23
-
24
- Each block has a human-readable name (shown in debug UI) and a type that determines its behavior.
25
-
26
- ## Block Types
27
-
28
- ### next-message
29
-
30
- Generate a response from the LLM:
31
-
32
- ```yaml
33
- handlers:
34
- user-message:
35
- Respond to user:
36
- type: next-message
37
- # Uses main conversation thread by default
38
- # Display defaults to 'stream'
39
- ```
40
-
41
- With options:
42
-
43
- ```yaml
44
- Generate summary:
45
- type: next-message
46
- thread: summary # Use named thread
47
- display: stream # Show streaming content
48
- independent: true # Don't add to main chat
49
- output: SUMMARY # Store output in variable
50
- description: Generating summary # Shown in UI
51
- ```
52
-
53
- ### add-message
54
-
55
- Add a message to the conversation:
56
-
57
- ```yaml
58
- Add user message:
59
- type: add-message
60
- role: user # user | assistant | system
61
- prompt: user-message # Reference to prompt file
62
- input: [USER_MESSAGE] # Variables to interpolate
63
- display: hidden # Don't show in UI
64
- ```
65
-
66
- For internal directives (LLM sees it, user doesn't):
67
-
68
- ```yaml
69
- Add internal directive:
70
- type: add-message
71
- role: user
72
- prompt: ticket-directive
73
- input: [TICKET_DETAILS]
74
- visible: false # LLM sees this, user doesn't
75
- ```
76
-
77
- ### tool-call
78
-
79
- Call a tool deterministically:
80
-
81
- ```yaml
82
- Create ticket:
83
- type: tool-call
84
- tool: create-support-ticket
85
- input:
86
- summary: SUMMARY # Variable reference
87
- priority: medium # Literal value
88
- output: TICKET # Store result
89
- ```
90
-
91
- ### set-resource
92
-
93
- Update a persistent resource:
94
-
95
- ```yaml
96
- Save summary:
97
- type: set-resource
98
- resource: CONVERSATION_SUMMARY
99
- value: SUMMARY # Variable to save
100
- display: name # Show block name
101
- ```
102
-
103
- ### start-thread
104
-
105
- Create a named conversation thread:
106
-
107
- ```yaml
108
- Start summary thread:
109
- type: start-thread
110
- thread: summary # Thread name
111
- model: anthropic/claude-sonnet-4-5 # Optional: different model
112
- thinking: low # Extended reasoning level
113
- maxSteps: 1 # Tool call limit
114
- system: escalation-summary # System prompt
115
- input: [COMPANY_NAME] # Variables for prompt
116
- ```
117
-
118
- ### serialize-thread
119
-
120
- Convert conversation to text:
121
-
122
- ```yaml
123
- Serialize conversation:
124
- type: serialize-thread
125
- thread: main # Which thread (default: main)
126
- format: markdown # markdown | json
127
- output: CONVERSATION_TEXT # Variable to store result
128
- ```
129
-
130
- ## Display Modes
131
-
132
- Every block has a `display` property:
133
-
134
- | Mode | Default For | Behavior |
135
- |------|-------------|----------|
136
- | `hidden` | add-message | Not shown to user |
137
- | `name` | set-resource | Shows block name |
138
- | `description` | tool-call | Shows description |
139
- | `stream` | next-message | Streams content |
140
-
141
- ## Complete Example
142
-
143
- ```yaml
144
- handlers:
145
- user-message:
146
- # Add the user's message to conversation
147
- Add user message:
148
- type: add-message
149
- role: user
150
- prompt: user-message
151
- input: [USER_MESSAGE]
152
- display: hidden
153
-
154
- # Generate response (LLM may call tools)
155
- Respond to user:
156
- type: next-message
157
- # display: stream (default)
158
-
159
- request-human:
160
- # Step 1: Serialize conversation for summary
161
- Serialize conversation:
162
- type: serialize-thread
163
- format: markdown
164
- output: CONVERSATION_TEXT
165
-
166
- # Step 2: Create separate thread for summarization
167
- Start summary thread:
168
- type: start-thread
169
- thread: summary
170
- model: anthropic/claude-sonnet-4-5
171
- thinking: low
172
- system: escalation-summary
173
- input: [COMPANY_NAME]
174
-
175
- # Step 3: Add request to summary thread
176
- Add summarize request:
177
- type: add-message
178
- thread: summary
179
- role: user
180
- prompt: summarize-request
181
- input:
182
- - CONVERSATION: CONVERSATION_TEXT
183
-
184
- # Step 4: Generate summary
185
- Generate summary:
186
- type: next-message
187
- thread: summary
188
- display: stream
189
- description: Summarizing your conversation
190
- independent: true
191
- output: SUMMARY
192
-
193
- # Step 5: Save to resource
194
- Save summary:
195
- type: set-resource
196
- resource: CONVERSATION_SUMMARY
197
- value: SUMMARY
198
-
199
- # Step 6: Create support ticket
200
- Create ticket:
201
- type: tool-call
202
- tool: create-support-ticket
203
- input:
204
- summary: SUMMARY
205
- priority: medium
206
- output: TICKET
207
-
208
- # Step 7: Add directive for response
209
- Add directive:
210
- type: add-message
211
- role: user
212
- prompt: ticket-directive
213
- input: [TICKET_DETAILS: TICKET]
214
- visible: false
215
-
216
- # Step 8: Respond to user
217
- Respond:
218
- type: next-message
219
- ```
220
-
221
- ## Block Input Mapping
222
-
223
- Map variables to block inputs:
224
-
225
- ```yaml
226
- # Simple list (variable name = prompt variable)
227
- input: [USER_MESSAGE, COMPANY_NAME]
228
-
229
- # Mapping (different names)
230
- input:
231
- - CONVERSATION: CONVERSATION_TEXT # CONVERSATION in prompt = CONVERSATION_TEXT
232
- - TICKET_DETAILS: TICKET
233
- ```
234
-
235
- ## Independent Blocks
236
-
237
- Use `independent: true` for content that shouldn't go to the main chat:
238
-
239
- ```yaml
240
- Generate summary:
241
- type: next-message
242
- thread: summary
243
- independent: true # Output stored in variable, not main chat
244
- output: SUMMARY
245
- ```
246
-
247
- This is useful for:
248
- - Background processing
249
- - Summarization in separate threads
250
- - Generating content for tools
251
-
@@ -1,242 +0,0 @@
1
- ---
2
- title: Agent Config
3
- description: Configuring the agent model and behavior.
4
- ---
5
-
6
- # Agent Config
7
-
8
- The `agent` section configures the LLM model, system prompt, tools, and behavior.
9
-
10
- ## Basic Configuration
11
-
12
- ```yaml
13
- agent:
14
- model: anthropic/claude-sonnet-4-5
15
- system: system # References prompts/system.md
16
- tools: [get-user-account] # Available tools
17
- ```
18
-
19
- ## Configuration Options
20
-
21
- | Field | Required | Description |
22
- |-------|----------|-------------|
23
- | `model` | Yes | Model identifier (provider/model-id) |
24
- | `system` | Yes | System prompt filename (without .md) |
25
- | `input` | No | Variables to interpolate in system prompt |
26
- | `tools` | No | List of tools the LLM can call |
27
- | `agentic` | No | Allow multiple tool call cycles |
28
- | `maxSteps` | No | Maximum agentic steps (default: 10) |
29
- | `temperature` | No | Model temperature (0-2) |
30
- | `thinking` | No | Extended reasoning level |
31
- | `anthropic` | No | Anthropic-specific options (tools, skills) |
32
-
33
- ## Models
34
-
35
- Specify models in `provider/model-id` format:
36
-
37
- ```yaml
38
- # Anthropic
39
- agent:
40
- model: anthropic/claude-sonnet-4-5 # Claude 4.5 Sonnet
41
- model: anthropic/claude-opus-4 # Claude 4 Opus
42
-
43
- # OpenAI
44
- agent:
45
- model: openai/gpt-4o # GPT-4o
46
- model: openai/gpt-4o-mini # GPT-4o Mini
47
- model: openai/o1 # O1
48
- model: openai/o3-mini # O3 Mini
49
- ```
50
-
51
- ## System Prompt
52
-
53
- The system prompt sets the agent's persona and instructions:
54
-
55
- ```yaml
56
- agent:
57
- system: system # Uses prompts/system.md
58
- input:
59
- - COMPANY_NAME
60
- - PRODUCT_NAME
61
- ```
62
-
63
- Example `prompts/system.md`:
64
-
65
- ```markdown
66
- You are a friendly support agent for {{COMPANY_NAME}}.
67
-
68
- ## Your Role
69
-
70
- Help users with questions about {{PRODUCT_NAME}}.
71
-
72
- ## Guidelines
73
-
74
- - Be helpful and professional
75
- - If you can't help, offer to escalate
76
- - Never share internal information
77
- ```
78
-
79
- ## Agentic Mode
80
-
81
- Enable multi-step tool calling:
82
-
83
- ```yaml
84
- agent:
85
- model: anthropic/claude-sonnet-4-5
86
- system: system
87
- tools: [get-user-account, search-docs, create-ticket]
88
- agentic: true # LLM can call multiple tools
89
- maxSteps: 10 # Limit cycles to prevent runaway
90
- ```
91
-
92
- **How it works:**
93
- 1. LLM receives user message
94
- 2. LLM decides to call a tool
95
- 3. Tool executes, result returned to LLM
96
- 4. LLM decides if more tools needed
97
- 5. Repeat until LLM responds or maxSteps reached
98
-
99
- ## Extended Thinking
100
-
101
- Enable extended reasoning for complex tasks:
102
-
103
- ```yaml
104
- agent:
105
- model: anthropic/claude-sonnet-4-5
106
- thinking: medium # low | medium | high
107
- ```
108
-
109
- | Level | Token Budget | Use Case |
110
- |-------|-------------|----------|
111
- | `low` | ~5,000 | Simple reasoning |
112
- | `medium` | ~10,000 | Moderate complexity |
113
- | `high` | ~20,000 | Complex analysis |
114
-
115
- Thinking content streams to the UI and can be displayed to users.
116
-
117
- ## Temperature
118
-
119
- Control response randomness:
120
-
121
- ```yaml
122
- agent:
123
- model: openai/gpt-4o
124
- temperature: 0.7 # 0 = deterministic, 2 = creative
125
- ```
126
-
127
- **Guidelines:**
128
- - `0 - 0.3`: Factual, consistent responses
129
- - `0.4 - 0.7`: Balanced (good default)
130
- - `0.8 - 1.2`: Creative, varied responses
131
- - `> 1.2`: Very creative (may be inconsistent)
132
-
133
- ## Provider Options
134
-
135
- Enable provider-specific features like Anthropic's built-in tools and skills:
136
-
137
- ```yaml
138
- agent:
139
- model: anthropic/claude-sonnet-4-5
140
- anthropic:
141
- tools:
142
- web-search:
143
- display: description
144
- description: Searching the web
145
- skills:
146
- pdf:
147
- type: anthropic
148
- description: Processing PDF
149
- ```
150
-
151
- Provider options are validated against the model—using `anthropic:` with a non-Anthropic model will fail validation.
152
-
153
- See [Provider Options](/docs/protocol/provider-options) for full documentation.
154
-
155
- ## Thread-Specific Config
156
-
157
- Override config for named threads:
158
-
159
- ```yaml
160
- handlers:
161
- request-human:
162
- Start summary thread:
163
- type: start-thread
164
- thread: summary
165
- model: anthropic/claude-sonnet-4-5 # Different model
166
- thinking: low # Different thinking
167
- maxSteps: 1 # Limit tool calls
168
- system: escalation-summary # Different prompt
169
- ```
170
-
171
- ## Full Example
172
-
173
- ```yaml
174
- input:
175
- COMPANY_NAME: { type: string }
176
- PRODUCT_NAME: { type: string }
177
- USER_ID: { type: string, optional: true }
178
-
179
- resources:
180
- CONVERSATION_SUMMARY:
181
- type: string
182
- default: ""
183
-
184
- tools:
185
- get-user-account:
186
- description: Look up user account
187
- parameters:
188
- userId: { type: string }
189
-
190
- search-docs:
191
- description: Search help documentation
192
- parameters:
193
- query: { type: string }
194
-
195
- create-support-ticket:
196
- description: Create a support ticket
197
- parameters:
198
- summary: { type: string }
199
- priority: { type: string } # low, medium, high
200
-
201
- agent:
202
- model: anthropic/claude-sonnet-4-5
203
- system: system
204
- input:
205
- - COMPANY_NAME
206
- - PRODUCT_NAME
207
- tools:
208
- - get-user-account
209
- - search-docs
210
- - create-support-ticket
211
- agentic: true
212
- maxSteps: 10
213
- thinking: medium
214
- # Anthropic-specific options
215
- anthropic:
216
- tools:
217
- web-search:
218
- display: description
219
- description: Searching the web
220
- skills:
221
- pdf:
222
- type: anthropic
223
- description: Processing PDF
224
-
225
- triggers:
226
- user-message:
227
- input:
228
- USER_MESSAGE: { type: string }
229
-
230
- handlers:
231
- user-message:
232
- Add message:
233
- type: add-message
234
- role: user
235
- prompt: user-message
236
- input: [USER_MESSAGE]
237
- display: hidden
238
-
239
- Respond:
240
- type: next-message
241
- ```
242
-