Setup
Connect GitHub and sync your first assistant from YAML and Markdown.
Assistants as code lets you manage assistant settings, prompts, functions, and workflows in a GitHub repository. Pushes to the repository's default branch sync the configuration to Neuroline. In the dashboard, this feature is called Infrastructure-as-code.
This guide creates a working inbound receptionist. You need a GitHub repository, permission to install the Neuroline GitHub App for it, and an owner or admin role in your Neuroline organization. Each organization can connect one repository, which can contain multiple assistants.
1. Connect your repository
- Open Organization → Infrastructure-as-code in the dashboard.
- Select Connect GitHub and authorize the Neuroline GitHub App.
- If needed, install the app and grant access to your repository. A GitHub organization administrator may need to approve the installation.
- Choose the GitHub account and repository, then select Connect & sync.
You need write or admin access to the repository. If it is missing from the list,
select Manage GitHub access, grant access, and refresh the list after returning.
An empty repository can be connected before adding any files. No auth.yaml or
API key is required. See Authentication.
2. Add the assistant files
Create this structure at the repository root:
.
└── reception/
├── config.yaml
├── base.md
└── default.mdname: Reception
type: inbound
spokenName: Reception
timeout:
firstNotice: 30
final: 60
languages: [en]
timezone: Europe/Amsterdam
opening:
en: "Hello, you are speaking with {{assistant_name}} at {{organization_name}}. How can I help?"
faq:
hours:
en:
question: "When are you open?"
answer: "Monday to Friday, from 9am to 5pm."Replace the example opening hours with your organization's hours before use.
You are the receptionist for {{organization_name}}.
Speak {{language}} and keep answers brief and clear.
Ask one question at a time. Never invent opening hours or appointment availability.Find out what the caller needs and answer questions using the available knowledge.
If you cannot answer, say so and ask how else you can help.
Do not claim to book appointments or transfer calls without an available function.base.md contains instructions that apply throughout the call. default.md
guides the conversation when no workflow is active. Both files must contain
nonempty text. Functions and workflows are optional for this first assistant.
3. Push and sync
Commit these files and push them to the repository's default branch, then the configuration syncs automatically. You can also select Sync now in the dashboard.
After a successful sync, the dashboard shows the imported Reception assistant and the last successful commit. If an error appears, correct the named file, push the fix, and retry. Nothing is imported until the complete configuration passes validation.
Open the assistant in the dashboard and assign an inbound phone number to test it. Call that number and ask about the opening hours you configured. Phone assignments remain managed in the dashboard.
4. Make your first update
Change an answer in reception/config.yaml, commit, and push to the default
branch. Check the successful commit in the dashboard, then make a new call to
try the updated answer. You can select Sync now to request a sync immediately.
Assistant configuration from GitHub is read-only in the dashboard; make further configuration changes in your repository.
Add more behavior
| Guide | What you can add or configure |
|---|---|
| Assistants | Settings, languages, FAQ, and multiple assistants. |
| Workflows | A booking request process for the receptionist. |
| Steps | Task prompts, step ordering, and transitions. |
| Functions | HTTP calls, integrations, saved variables, SMS, and transfers. |
| Prompts | Shared instructions, task instructions, and template variables. |
| Syncing and changes | Updates, errors, renames, removals, and disconnecting. |