Skip to content

Set up your workspace

When you’re done, your workspace has Slack connected for expert routing and a team of experts agents can ask. Do this before rolling the MCP server out — Halyard is only as useful as the team context behind it.

Go to app.usehalyard.ai and sign in with a magic-link one-time code or Google.

Slack is how human experts get reached. When an agent asks a question that the knowledge base can’t answer, Halyard delivers it to the right person in Slack and returns their reply to the agent. It is the only live expert-notification channel today.

In the app, open Settings → Integrations and connect your Slack workspace. This is an org-level OAuth connection that authorizes Halyard’s bot for the workspace.

Open Team and add the people who can answer agent questions. Each expert gets:

  • Roles — broad job function, stored lowercase. For example engineer, pm, architect, devops. An expert can hold more than one.
  • Skills — concrete domains, stored Title-Case. For example React, System Design, Product Strategy, Security.

Roles route broadly (“ask an engineer”); skills route precisely (“ask someone who knows System Design”). Give each expert at least one of each so ask_expert can match them.

Here’s the shape list_team returns once experts are added, so you can see how roles and skills are stored:

{
"members": [
{
"name": "Priya Sharma",
"roles": ["pm", "product manager"],
"skills": ["Product Strategy", "Roadmapping", "Analytics"],
"availability": "ONLINE"
},
{
"name": "David Kim",
"roles": ["engineer"],
"skills": ["React", "TypeScript", "Accessibility"],
"availability": "ONLINE"
},
{
"name": "James Okonkwo",
"roles": ["architect", "engineer"],
"skills": ["System Design", "Cloud Architecture", "Security"],
"availability": "ONLINE"
}
]
}

For how matching actually works, see Experts & routing.

Connecting Slack turns Halyard into a question router. Capturing answers turns it into memory. Set the expectation, for people and agents both:

  • When a human answer changes what an agent does, the agent calls summarize_conversation to file it.
  • When an agent finishes meaningful work, it calls summarize_work.

Without capture, the same question gets asked again next week. With it, every answer is searchable the next time — which is the whole point of the layer.