case-to-resolution-protocol
Use this skill when a customer service case must be triaged, routed to the right team, driven to resolution, and captured as reusable knowledge in Dynamics 365 Customer Service. Covers intake-to-routing, SLA tracking, escalation gates, knowledge capture, and post-resolution CSAT.
Install
npx skills add https://github.com/VincentChuWaiChow/vanguard-frontier-agentic/tree/master/skills/cross-functional/case-to-resolution-protocol
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install vincentchuwaichow-vanguard-frontier-agentic@llmmart
git clone https://github.com/VincentChuWaiChow/vanguard-frontier-agentic.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole vincentchuwaichow/vanguard-frontier-agentic collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Case to Resolution Protocol
Purpose
This skill defines how a customer service case moves from first contact through routing, active resolution, and closure — and how every resolved case feeds the knowledge base so future cases resolve faster. It exists to ensure SLA accountability, consistent routing logic, and structured knowledge reuse across Dynamics 365 Customer Service. It does not replace human judgment on complex resolutions; it structures the handoffs so nothing falls through.
When to use
- A new case must be triaged and routed to a queue, team, or specialist.
- An active case risks breaching its SLA and needs escalation.
- A case is resolved and a knowledge article should be created or updated.
- Post-resolution CSAT is due and results must feed continuous-improvement loops.
- Multiple channels (email, chat, voice, social) need a unified intake view.
When NOT to use
- The case is already resolved and closed — routing decisions are moot.
- The matter is a product defect escalation requiring engineering triage — use your engineering escalation runbook.
- Regulated health or financial-services data handling requires compliance counsel that supersedes this protocol.
- You need live Dynamics 365 configuration changes — escalate to the service owner; this protocol is recommendation-only.
Participating agents
d365-customer-service-contact-center-agent(primary — case intake, routing, SLA monitoring, resolution, knowledge capture)
Inputs required
- Case description and channel of origin (email, chat, voice, social, web form)
- Customer or employee identity (authenticated or pending authentication)
- Priority signal or SLA entitlement reference
- Existing case history for this customer (if available)
- Knowledge base search results (Dynamics 365 Customer Service or SharePoint)
Evidence required
- Unified routing configuration (queues, skills, capacity rules) is in place
- SLA definitions and entitlements are configured in Dynamics 365 Customer Service
- Knowledge base is seeded and publishing workflow is active
- CSAT survey mechanism (Dynamics 365 Customer Voice or equivalent) is configured
Workflow
- Intake — Log the case: capture channel, customer identity, description, priority. Apply record creation and update rules to standardise fields.
- Authentication — Verify the requester's identity via entitlement lookup or Dynamics 365 authentication flow before exposing account data.
- Route — Apply unified routing rules (skills matching, queue capacity, SLA tier). Assign to the correct queue or representative automatically where rules allow; flag ambiguous cases for supervisor review.
- Acknowledge — Send SLA-compliant acknowledgment to the customer. Start the SLA clock.
- Investigate — Representative works the case using the knowledge base, AI suggestions (Copilot in Dynamics 365), and collaboration via Microsoft Teams swarming where needed.
- Gate 1 — SLA attainment check — If the first-response or resolution SLA is at risk, escalate to supervisor and reassign if necessary. Do not allow silent SLA breach.
- Resolve — Apply the resolution. Record resolution type, billable time, and resolution summary in the case record.
- Gate 2 — Knowledge capture — Before closing, check whether the resolution should produce a new or updated knowledge article. If yes, draft the article and route it through the knowledge publishing workflow.
- Close — Set case status to Resolved. Trigger post-resolution CSAT survey via Dynamics 365 Customer Voice.
- CSAT review — Route CSAT results to the responsible team. Flag low- scoring cases for quality review and root-cause analysis.
Decision gates
| Gate | Condition | Action |
|---|---|---|
| SLA attainment | First-response or resolution timer at 80% elapsed | Escalate to supervisor; consider reassignment |
| Knowledge capture | Resolution not covered by existing article | Draft knowledge article before close |
| Escalation trigger | Case complexity exceeds representative skill tier | Invoke Teams swarming or senior escalation queue |
| CSAT threshold | CSAT score below agreed threshold | Flag for quality review; root-cause required |
Refusal triggers
- Stop if the case requires access to regulated personal data (health, financial) and applicable compliance requirements are not confirmed — escalate to compliance owner.
- Stop if resolving the case requires a live Dynamics 365 configuration change that has not been approved by the service owner.
- Stop if customer authentication has not been confirmed before exposing account-specific data.
Handoff rules
- All handoffs carry: case_id, skill_id, skill_version, invoked_by, routing_basis, sla_status, open_questions, do_not_do_list.
- Human escalations always include the SLA time remaining and a clear statement of what has been tried.
- Knowledge articles drafted by this protocol are submitted for human review before publishing; this skill never auto-publishes.
KPIs
- SLA attainment rate (first response, resolution)
- Case resolution time (mean, P90)
- Knowledge article creation rate per resolved case
- CSAT score (mean, trend, low-score rate)
- First-contact resolution rate
References
- https://learn.microsoft.com/dynamics365/guidance/business-processes/case-to-resolution-introduction
- https://learn.microsoft.com/dynamics365/guidance/business-processes/case-to-resolution-areas
- https://learn.microsoft.com/dynamics365/customer-service/administer/overview-cases
- https://learn.microsoft.com/dynamics365/customer-service/use/customer-service-hub-user-guide-resolve-cancel-reassign-a-case
- https://learn.microsoft.com/dynamics365/customer-service/administer/set-up-case-resolution-agent
Files (vanguard-frontier-agentic)
-
references
-
workflow-and-output.md 8.1 KB
# Case to Resolution Protocol — Workflow and Output Contract ## Detailed Workflow ### Phase 1: Intake and Authentication **Trigger events** - Inbound email, chat, voice, social media, or web form submission - Agent or bot escalation from self-service channel - Manual case creation by a representative **Step 1.1 — Case logging** Log the case record in Dynamics 365 Customer Service. Capture: - Channel of origin - Customer/employee identity reference (do not log unverified PII as confirmed) - Case description and initial priority signal - Applicable entitlement or SLA tier **Step 1.2 — Record creation rules** Apply configured record creation and update rules to normalise fields. If the case arrives via email, validate that the record creation rule mapped it correctly to the right case type and queue. **Step 1.3 — Authentication gate** Verify the requester's identity before exposing account data. Options: - Entitlement lookup (case linked to known customer account) - Dynamics 365 authentication / Nuance Gatekeeper (voice) - Representative manual verification (flag as manually verified) If authentication cannot be confirmed, hold the case in a pending-authentication queue and notify the customer. Do not expose account data on an unverified case. --- ### Phase 2: Routing **Step 2.1 — Unified routing evaluation** Apply Dynamics 365 unified routing rules: - Skills matching (representative skill set vs. case requirements) - Queue capacity (available capacity in target queue) - SLA tier (premium entitlements route to priority queues) - Case type (product, billing, technical, returns, etc.) **Step 2.2 — Routing outcome** - If rules produce a confident match: auto-assign to queue or representative. - If rules produce an ambiguous match: flag for supervisor review; do not silently assign to a default queue. - If case crosses multiple service domains: assign a primary representative and note the secondary domain for potential swarm. **Step 2.3 — SLA clock start** Once routed, start the SLA clock. Send the SLA-compliant acknowledgment to the customer (configured in Dynamics 365 Customer Service SLA settings). --- ### Phase 3: Investigation and Resolution **Step 3.1 — Knowledge base search** Representative searches the Dynamics 365 knowledge base and any connected SharePoint knowledge sources. Copilot suggestions (AI-suggested articles and similar cases) are surfaced in Customer Service Workspace. **Step 3.2 — Collaboration** If the case requires cross-team input, invoke Microsoft Teams swarming from within Dynamics 365 Customer Service. Log all collaboration as activities on the case record. **Step 3.3 — SLA attainment check (Gate 1)** At 80% of the first-response or resolution SLA timer: - If on track: continue. - If at risk: escalate to supervisor via Dynamics 365 alert. Supervisor reviews and either reassigns or confirms continued ownership with an agreed plan. Do not allow silent SLA breach. **Step 3.4 — Resolution** Apply the resolution. Complete the resolution dialog in Dynamics 365 Customer Service: - Resolution type (how it was resolved) - Resolution summary (what was done) - Billable time (if entitlement tracks billable minutes) Case status transitions to Resolved only when the Resolve Case action is explicitly taken. --- ### Phase 4: Knowledge Capture and Closure **Step 4.1 — Knowledge capture gate (Gate 2)** Before closing, evaluate whether the resolution should produce a new or updated knowledge article: - Is this case type covered by an existing article? If yes, is the article accurate and complete given this resolution? - If no: draft a new article. - If yes but outdated: flag the article for update. This gate is mandatory. If the representative cannot determine article coverage, escalate to the knowledge base owner before closure. **Step 4.2 — Knowledge article draft** Draft the article in the Dynamics 365 knowledge authoring tool. Submit for review through the configured publishing workflow. This protocol never auto-publishes a knowledge article. **Step 4.3 — Case closure** Set case status to Resolved. Confirm open activities are handled (cancelled or completed). Trigger the post-resolution CSAT survey via Dynamics 365 Customer Voice. --- ### Phase 5: CSAT Review **Step 5.1 — CSAT collection** Dynamics 365 Customer Voice sends the configured post-resolution survey to the customer. Respect opt-out preferences and survey fatigue controls. **Step 5.2 — CSAT routing** Route CSAT results to the responsible team or supervisor dashboard. Aggregate results in Power BI dashboards connected to Dynamics 365 Customer Service Insights. **Step 5.3 — Low-CSAT escalation** If CSAT score falls below the agreed threshold: - Flag the case for quality review. - Require a root-cause analysis within the agreed SLA. - Feed findings into the continuous-improvement process. --- ## Decision Tree ``` Case received └── Authentication confirmed? ├── No → Hold in pending-authentication queue; notify customer └── Yes → Log case; apply routing rules └── Routing rules produce confident match? ├── No → Supervisor review; manual assignment └── Yes → Auto-assign; start SLA clock └── SLA at risk (80% elapsed)? ├── Yes → Escalate to supervisor └── No → Investigate and resolve └── Resolution complete? └── Knowledge article needed? ├── Yes → Draft article; submit for review └── No → Close case; trigger CSAT └── CSAT below threshold? ├── Yes → Flag for quality review; root-cause required └── No → Close cycle ``` --- ## Output Contract Every execution of this protocol produces the following artefacts: ### Case capsule (per case) | Field | Type | Description | |---|---|---| | case_id | string | Dynamics 365 case identifier | | skill_id | string | `case-to-resolution-protocol` | | skill_version | string | `0.1.0` | | invoked_by | string | Agent or human who invoked this protocol | | channel | enum | email / chat / voice / social / web / manual | | routing_basis | string | Rule set applied for routing | | sla_status | enum | on-track / at-risk / breached | | knowledge_article_action | enum | none / drafted / updated | | csat_score | number or null | Post-resolution CSAT (null if not yet received) | | open_questions | array | Unresolved questions at handoff | | do_not_do_list | array | Actions explicitly excluded from this protocol's scope | | escalation_fired | boolean | Whether a human escalation was triggered | | timestamp | ISO 8601 | Protocol execution timestamp | ### Gate verdicts (per gate) | Gate | Verdict options | |---|---| | SLA attainment check | pass / escalated / breached | | Knowledge capture | article-drafted / article-updated / no-action-required | ### Refusal record (when triggered) | Field | Description | |---|---| | refusal_reason | Which refusal trigger was hit | | escalation_target | Where the case was sent | | timestamp | ISO 8601 | --- ## Quality Assurance Notes - This protocol does not modify Dynamics 365 routing rules, SLA definitions, or queue configurations. Changes to these settings require the service owner. - Knowledge articles drafted by this protocol are in draft state until a human knowledge manager approves and publishes them. - CSAT data is handled in aggregate only. Individual representative CSAT data requires HR and privacy-team approval before use in performance review.
-
-
metadata.json 2.1 KB
{ "id": "case-to-resolution-protocol", "name": "Case to Resolution Protocol", "type": "skill", "provider": "generic", "harnesses": ["codex", "claude-code", "cursor", "gemini", "kiro", "other"], "summary": "Intake-to-routing-to-resolution-to-CSAT orchestration protocol for Dynamics 365 Customer Service. Covers case triage, unified routing, SLA tracking, escalation gates, knowledge capture, and post-resolution CSAT — ensuring every case closes with actionable knowledge and measurable service quality. Routing and resolution steps are recommendations only; all production-impacting decisions require the relevant service or quality owner.", "source_type": "original", "official_docs": [ "https://learn.microsoft.com/dynamics365/guidance/business-processes/case-to-resolution-introduction", "https://learn.microsoft.com/dynamics365/guidance/business-processes/case-to-resolution-areas", "https://learn.microsoft.com/dynamics365/customer-service/administer/overview-cases", "https://learn.microsoft.com/dynamics365/customer-service/use/customer-service-hub-user-guide-resolve-cancel-reassign-a-case", "https://learn.microsoft.com/dynamics365/customer-service/administer/set-up-case-resolution-agent" ], "security_notes": "This protocol is a recommendation and orchestration aid only; it is never an authorisation to resolve, escalate, or close a case. It never requests customer credentials, session IDs, PII, or production Dynamics 365 org IDs to classify or route a case. Cases involving regulated personal data (health, financial) require compliance owner confirmation before proceeding. Knowledge articles produced by this protocol are submitted for human review before publishing and are never auto-published. Production configuration changes (SLA rules, routing rules, queue setup) escalate to the relevant service owner. CSAT data is handled in aggregate and is never used to identify individual representatives without HR and privacy-team approval.", "last_verified": "2026-06-16", "path": "skills/cross-functional/case-to-resolution-protocol", "author": "github: VincentChuWaiChow", "version": "0.1.0" } -
SKILL.md 6.5 KB
--- name: case-to-resolution-protocol description: Use this skill when a customer service case must be triaged, routed to the right team, driven to resolution, and captured as reusable knowledge in Dynamics 365 Customer Service. Covers intake-to-routing, SLA tracking, escalation gates, knowledge capture, and post-resolution CSAT. Orchestrates the d365-customer-service-contact-center-agent as primary and invokes human escalation when SLA risk or knowledge gaps are detected. Does not make final resolution decisions or override customer service policies; all production-impacting steps escalate to the relevant service owner or quality team. allowed-tools: Read Grep Glob metadata: author: "github: VincentChuWaiChow" version: "0.1.0" updated: "2026-06-16" category: operational lifecycle: experimental --- # Case to Resolution Protocol ## Purpose This skill defines how a customer service case moves from first contact through routing, active resolution, and closure — and how every resolved case feeds the knowledge base so future cases resolve faster. It exists to ensure SLA accountability, consistent routing logic, and structured knowledge reuse across Dynamics 365 Customer Service. It does not replace human judgment on complex resolutions; it structures the handoffs so nothing falls through. ## When to use - A new case must be triaged and routed to a queue, team, or specialist. - An active case risks breaching its SLA and needs escalation. - A case is resolved and a knowledge article should be created or updated. - Post-resolution CSAT is due and results must feed continuous-improvement loops. - Multiple channels (email, chat, voice, social) need a unified intake view. ## When NOT to use - The case is already resolved and closed — routing decisions are moot. - The matter is a product defect escalation requiring engineering triage — use your engineering escalation runbook. - Regulated health or financial-services data handling requires compliance counsel that supersedes this protocol. - You need live Dynamics 365 configuration changes — escalate to the service owner; this protocol is recommendation-only. ## Participating agents - `d365-customer-service-contact-center-agent` (primary — case intake, routing, SLA monitoring, resolution, knowledge capture) ## Inputs required - Case description and channel of origin (email, chat, voice, social, web form) - Customer or employee identity (authenticated or pending authentication) - Priority signal or SLA entitlement reference - Existing case history for this customer (if available) - Knowledge base search results (Dynamics 365 Customer Service or SharePoint) ## Evidence required - Unified routing configuration (queues, skills, capacity rules) is in place - SLA definitions and entitlements are configured in Dynamics 365 Customer Service - Knowledge base is seeded and publishing workflow is active - CSAT survey mechanism (Dynamics 365 Customer Voice or equivalent) is configured ## Workflow 1. **Intake** — Log the case: capture channel, customer identity, description, priority. Apply record creation and update rules to standardise fields. 2. **Authentication** — Verify the requester's identity via entitlement lookup or Dynamics 365 authentication flow before exposing account data. 3. **Route** — Apply unified routing rules (skills matching, queue capacity, SLA tier). Assign to the correct queue or representative automatically where rules allow; flag ambiguous cases for supervisor review. 4. **Acknowledge** — Send SLA-compliant acknowledgment to the customer. Start the SLA clock. 5. **Investigate** — Representative works the case using the knowledge base, AI suggestions (Copilot in Dynamics 365), and collaboration via Microsoft Teams swarming where needed. 6. **Gate 1 — SLA attainment check** — If the first-response or resolution SLA is at risk, escalate to supervisor and reassign if necessary. Do not allow silent SLA breach. 7. **Resolve** — Apply the resolution. Record resolution type, billable time, and resolution summary in the case record. 8. **Gate 2 — Knowledge capture** — Before closing, check whether the resolution should produce a new or updated knowledge article. If yes, draft the article and route it through the knowledge publishing workflow. 9. **Close** — Set case status to Resolved. Trigger post-resolution CSAT survey via Dynamics 365 Customer Voice. 10. **CSAT review** — Route CSAT results to the responsible team. Flag low- scoring cases for quality review and root-cause analysis. ## Decision gates | Gate | Condition | Action | |---|---|---| | SLA attainment | First-response or resolution timer at 80% elapsed | Escalate to supervisor; consider reassignment | | Knowledge capture | Resolution not covered by existing article | Draft knowledge article before close | | Escalation trigger | Case complexity exceeds representative skill tier | Invoke Teams swarming or senior escalation queue | | CSAT threshold | CSAT score below agreed threshold | Flag for quality review; root-cause required | ## Refusal triggers - Stop if the case requires access to regulated personal data (health, financial) and applicable compliance requirements are not confirmed — escalate to compliance owner. - Stop if resolving the case requires a live Dynamics 365 configuration change that has not been approved by the service owner. - Stop if customer authentication has not been confirmed before exposing account-specific data. ## Handoff rules - All handoffs carry: case_id, skill_id, skill_version, invoked_by, routing_basis, sla_status, open_questions, do_not_do_list. - Human escalations always include the SLA time remaining and a clear statement of what has been tried. - Knowledge articles drafted by this protocol are submitted for human review before publishing; this skill never auto-publishes. ## KPIs - SLA attainment rate (first response, resolution) - Case resolution time (mean, P90) - Knowledge article creation rate per resolved case - CSAT score (mean, trend, low-score rate) - First-contact resolution rate ## References - https://learn.microsoft.com/dynamics365/guidance/business-processes/case-to-resolution-introduction - https://learn.microsoft.com/dynamics365/guidance/business-processes/case-to-resolution-areas - https://learn.microsoft.com/dynamics365/customer-service/administer/overview-cases - https://learn.microsoft.com/dynamics365/customer-service/use/customer-service-hub-user-guide-resolve-cancel-reassign-a-case - https://learn.microsoft.com/dynamics365/customer-service/administer/set-up-case-resolution-agent
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.