Build a Co-Worker: An IT Helpdesk Assistant =========================================== This walkthrough builds a complete Co-Worker end to end — **Max**, an IT Helpdesk Specialist that resolves common Tier-1 IT requests on NeoGPT, Microsoft Teams, and email, and asks a human for approval before any sensitive action such as a password reset. It uses only fields that exist in the builder today, and it uses every tab covered in this section. Adapt the names, addresses, and policies to your own organisation. Prerequisites ------------- Complete these before opening the builder, so you do not have to pause mid-wizard. .. list-table:: :header-rows: 1 :widths: 6 54 40 * - # - What you need - Where it comes from * - 1 - Permission to create and deploy Co-Workers - Your workspace administrator * - 2 - A Microsoft Teams bot credential registered in the platform - Teams administrator * - 3 - An IT helpdesk mailbox (for example ``it-helpdesk@example.com``) - IT administrator * - 4 - A ticketing tool registered as a Reusable (MCP/API) skill - :doc:`Foundry → Integrations ` * - 5 - A resolution flow built as a Custom (Flow) skill - :doc:`Agentic Flow Builder ` — see :ref:`coworker-example-appendix-flow` * - 6 - A Tier-1 resolution SOP as an Agent Skill (``SKILL.md``) - The workspace Skills area — see :ref:`coworker-example-appendix-sop` * - 7 - Input and output guardrail policies - :doc:`Foundry → Guardrails ` Step 1 — Basics & Identity -------------------------- Set who Max is. The fields marked required must be filled before the Co-Worker can be created. - **Name:** ``Max`` - **Tone:** *Friendly* — Max talks to non-technical employees who may be frustrated; a friendly tone helps defuse frustration. - **Job role:** ``IT Helpdesk Specialist`` - **Foundation model:** choose the most capable model enabled in your workspace — IT resolution needs multi-step reasoning. - **Objective:** ``Resolve common IT requests at first contact and escalate cleanly when needed.`` - **Manager:** the IT team lead who should be notified on escalations (optional). - **Responsibilities** (add each with **+**): #. Answer common IT questions about software, accounts, and connectivity. #. Run standard Tier-1 resolution steps following the IT Helpdesk SOP. #. Log ticket details and escalate unresolved issues to Tier-2 with full context. #. Request and await human approval before any sensitive action, such as a password reset or access change. - **In scope:** software access requests; account lockouts; password resets (with approval); MFA setup; VPN connectivity; common application errors; printer setup; email configuration. - **Out of scope:** hardware procurement; payroll; HR matters; network infrastructure changes; security incident response (escalate immediately). - **Persona & principles:** ``Clear and patient. Always acknowledge the employee's issue before starting. Never change access or security settings without explicit human approval. Never share account details in a shared channel.`` Save, then move to Channels. Step 2 — Channels ----------------- Add the surfaces Max operates on. **NeoGPT** (internal chat, quickest to test): - Channel Name: ``IT Helpdesk Assistant`` - Initial Message: ``Hi! I'm the IT Helpdesk Assistant. How can I help you today?`` - Leave **Default Agent** off unless Max should be the default assistant in NeoGPT. **Microsoft Teams** (Conversation route): - Channel Name: ``IT Helpdesk Assistant — Teams`` - Credentials: select your registered Teams bot. - Session Expiry: ``4`` hours. **Outlook (email)** — if Max should handle the helpdesk mailbox, add an Outlook channel pointing at ``it-helpdesk@example.com``, set the polling interval (for example 5 minutes), and sign in with Microsoft or supply app credentials. Step 3 — Skills --------------- Attach Max's capabilities across the sub-tabs. - **Reusable (MCP/API):** enable your **ticketing tool** (for example one exposing ``create_ticket``, ``update_ticket``, and ``get_ticket``). If it is not listed, ask an admin to register it in :doc:`Foundry → Integrations `. - **Custom Skills:** enable the **IT Resolution Flow** (see :ref:`coworker-example-appendix-flow`). If it does not exist yet, click **Skip for now**, build the flow, then return. - **Agent Skills (.md):** enable the **Tier-1 Resolution SOP** skill (see :ref:`coworker-example-appendix-sop`). Step 4 — Memory --------------- Give Max memory so known issues and fixes accumulate for everyone. - **Type:** *AgentCore* (or *Postgres* if you want a fixed retrieval limit). - **Strategies** (AgentCore): Semantic, Episodic, and User preferences. - **Memory scope:** *Team memory* — a shared pool, so a fix learned for one employee speeds up the next person with the same issue. - **Reflection:** leave **on** so Max turns outcomes and Teams reactions into remembered adjustments. Step 5 — Behaviour ------------------ - **Procedure:** describe the standard sequence — confirm identity, understand the issue, create a ticket, attempt resolution, pause for approval on sensitive actions, confirm with the employee, escalate if unresolved. - **Boundary rules** — add as *Never* / *Always*: - *Never:* Reset a password or change access without approval. - *Never:* Use dismissive language or make an employee feel their issue is unimportant. - *Never:* Share account credentials or ticket details in a shared channel. - *Always:* Acknowledge the issue and give an estimated resolution time at the start. - **Proactive routines** (optional): skip for launch; you can add a morning open-ticket summary later. Step 6 — Governance ------------------- This is the critical tab for a helpdesk that can touch accounts. - **Input / output guardrails:** select the policies your admin created in :doc:`Foundry → Guardrails `. (Guardrails are not inherited automatically — they must be created there first, then selected here.) - **HITL:** set an **Approval delivery target** on the Teams channel (for example the IT manager), then turn on **Enable HITL approval workflow**. Approval requests arrive in Teams as an Adaptive Card with **Approve** / **Reject** buttons. - **Skill gate policy:** set the sensitive skill (the resolution flow's password-reset path, or the ticketing tool's privileged action) to **Ask** so it pauses for approval. Leave the rest on **Allow**. Step 7 — Publish Max -------------------- Click **Publish**. Review the change diff, confirm, and Max is versioned, compiled into an agentic flow, deployed, and set to **Active**. The Teams and NeoGPT channels become live. .. note:: The **KPIs & Output Details** tab unlocks only after this first publish. Step 8 — Define KPIs & Output Details ------------------------------------- Open the **KPIs & Output Details** tab (now available) and define the structured fields to extract from each conversation, then the metrics built on them. For example: .. list-table:: :header-rows: 1 :widths: 30 18 52 * - Field name - Type - Description * - ``issue_resolved`` - boolean - True if the employee confirmed the issue is fixed. * - ``category`` - enum - Issue category (password_reset, software_access, vpn, email, printer, network, application_error, other). * - ``escalated`` - boolean - True if the issue was handed to Tier-2. * - ``resolution_attempts`` - number - How many resolution steps were tried. * - ``approval_required`` - boolean - True if a HITL approval was triggered. Then add KPIs over those fields — for example *First-Contact Resolution Rate* (count where ``issue_resolved`` is true and ``escalated`` is false), *Escalation Rate*, and *Average Resolution Attempts*. Republish to apply. Step 9 — Test Max ----------------- - **NeoGPT** (quickest): open Max and send messages such as *"My VPN won't connect"* or *"I forgot my password."* Then open the **Traces** tab to see which skills were called, what memory was retrieved, and whether HITL triggered. - **Microsoft Teams:** message the bot with *"I need a password reset."* Verify Max acknowledges, creates a ticket, and that an approval card appears in the approver's Teams chat — and that Max only proceeds after approval. - **Email:** send a message to the helpdesk mailbox and confirm Max replies on the polling schedule. - **Monitor:** check the **Analytics** tab for cost and token usage before a wider rollout. See :doc:`observability`. .. _coworker-example-appendix-flow: Appendix A — Build the IT Resolution Flow ----------------------------------------- The resolution flow is an :doc:`Agentic Flow ` exposed to Max as a Custom skill. It controls the order Max works through a request, calls the ticketing and approval tools at the right moments, and pauses for human approval before sensitive actions. #. In the Agentic Flow Builder, create a new flow named ``IT Resolution Flow``. #. Drag in **Input**, **Agent**, and **Output** components and connect them. #. Attach the ticketing tool and an approval (Human In The Loop) step to the Agent, and give the Agent a system prompt that encodes the workflow — confirm identity, create a ticket, attempt resolution, request approval before sensitive actions, and set an output field such as ``resolution_status`` to ``resolved``, ``escalated``, or ``pending_approval``. #. Publish the flow, then open its **Settings** and use **Expose as Skill**. It now appears in the **Custom Skills** sub-tab of every Co-Worker in the workspace, ready to enable on Max. .. _coworker-example-appendix-sop: Appendix B — The Tier-1 Resolution SOP Skill -------------------------------------------- The SOP is an Agent Skill (``SKILL.md``) that Max reads at run time as his operating manual. Create it in the workspace **Skills** area (Create manually → Non-Programmatic), then paste content along these lines — this is an illustrative outline; expand it for your environment: .. code-block:: markdown # IT Helpdesk Tier-1 Resolution SOP ## 1. Your role You are Max, an IT Helpdesk Specialist. Resolve common IT issues at first contact; when you cannot, escalate with full context. ## 2. Intake protocol (every conversation) 1. Greet and acknowledge the issue. 2. Confirm identity (staff ID + registered email). Never ask for passwords or OTP codes. 3. Clarify the issue (what, which system, when it started, any error message). 4. Create a ticket before attempting resolution. ## 3. Resolution steps by category - **Password reset / lockout:** confirm identity, then STOP and request approval before resetting. Share a temporary password only via a direct message. - **Software access:** confirm role; request manager/IT approval; provision after approval. - **VPN:** check connectivity, restart the client, verify credentials; reinstall if needed. - **Email / Network / Printer / Application errors:** work the standard Tier-1 checklist; escalate after three unsuccessful attempts. ## 4. Escalation Escalate to Tier-2 when unresolved after 3 attempts, when the issue is high priority, or on any suspected security incident (escalate immediately, do not attempt a fix). ## 5. Closing Confirm resolution with the employee, update the ticket, and send a short summary with the ticket reference. Once saved, enable the SOP skill on Max's **Agent Skills (.md)** sub-tab.