Bootstrap AI App (B2B)
ethora-b2b-app-bootstrap-aiOne-call B2B orchestrator: create an app, set it as the current context, index RAG sources, then configure and enable its AI bot. Source ingest and bot activation are best-effort (the app is still created if a later step fails); crawl/embedding continues asynchronously after this returns. Returns a per-step log including the new appId.
Auth: B2B mode (ethora-auth-use-b2b + a configured b2bToken); internally switches to app-token mode for source-ingest steps. Errors: aborts with the partial step log if app creation fails; previous auth mode restored best-effort. Related: rooms+tokens variant is ethora-b2b-app-provision.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| docs | No | Optional docs to ingest (base64) | |
| crawlUrl | No | Optional website URL to crawl and index into the new app's RAG sources. | |
| llmModel | No | Optional generation model for the default AI bot (example: 'gpt-4o-mini'). | |
| enableBot | No | If true, enables botStatus=on (best-effort AI service activation) | |
| botTrigger | No | Optional bot trigger (e.g. '/bot' or 'any_message') | |
| followLink | No | For `crawlUrl`: also follow in-domain links (default true). Can ingest many pages. | |
| agentPrompt | No | Phase 1: persona/instructions for the newly-created Agent. | |
| displayName | Yes | Display name for the new app. | |
| llmProvider | No | Optional generation provider for the default AI bot (example: 'openai' or 'openai-compatible'). | |
| savedAgentId | No | Optional saved agent to bind as the active bot for the new app. | |
| setAsCurrent | No | If true (default), set the new app as the session's current app and switch to app-token auth so follow-up tools can omit appId. | |
| agentVisibility | No | Phase 1: visibility for the newly-created Agent. | |
| agentDisplayName | No | Phase 1: create a new Agent with this display name as part of bootstrap. | |
| inviteToDefaultRoom | No | Phase 1: if true (default), invite the newly-created Agent into the App's first default room. |