> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # promptAddSection > Add a new section to the agent's structured prompt. [ref-agentbase]: /docs/server-sdks/reference/typescript/agents/agent-base Add a new section to the prompt. Sections give the AI structured instructions that are easier to follow than a single block of text. Each section has a title and optional body text, bullet points, and subsections. > **Warning** > > POM sections cannot be mixed with `setPromptText()` in the same agent. Use one > approach or the other. ## **Parameters** **`title`** `string` — required Section heading displayed to the AI. --- **`opts`** `object` Optional section content. --- **`opts.body`** `string` Section body text. --- **`opts.bullets`** `string[]` List of bullet point strings. --- **`opts.numbered`** `boolean` Whether the section itself should be numbered. --- **`opts.numberedBullets`** `boolean` Whether bullet points should be numbered instead of bulleted. --- **`opts.subsections`** `object[]` List of subsection objects, each with `title`, optional `body`, and optional `bullets`. --- ## **Returns** [`AgentBase`][ref-agentbase] -- Returns `this` for method chaining. ## **Example** ```typescript {4} import { AgentBase } from '@signalwire/sdk'; const agent = new AgentBase({ name: 'support', route: '/support' }); agent.promptAddSection('Role', { body: 'You are a customer support agent for Acme Corp.', }); agent.promptAddSection('Guidelines', { bullets: [ 'Always greet the caller by name if available', 'Never share internal pricing details', 'Escalate to a human if the caller asks', ], }); await agent.serve(); ``` > Add a new section to the agent's structured prompt.