Install
$ agentstack add skill-happy-technologies-llc-happy-platform-skills-sidebar-summarization ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ● Filesystem access Used
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Sidebar Summarization
Overview
This skill generates concise sidebar summaries for customer service agents working in Agent Workspace. When an agent opens or is assigned a case, the sidebar summary provides instant context without requiring the agent to read through the entire case history. It covers:
- Generating a compact case overview with priority, status, and age
- Pulling customer history including past cases, interactions, and satisfaction scores
- Summarizing the consumer profile and account tier for entitlement context
- Identifying related or similar cases that may indicate a broader issue
- Recommending next-best actions based on case category and resolution patterns
- Highlighting SLA status and any escalation risks
When to use: When agents need rapid context upon accepting a case, during live chat or phone interactions, or when reviewing a queue of assigned cases.
Value proposition: Reduces average handle time by providing agents with pre-assembled case context, customer history, and actionable recommendations in a scannable sidebar format. Eliminates the need to manually navigate between multiple records to build context.
Prerequisites
- Plugins: Customer Service Management (
com.sn_customerservice) must be active - Roles:
sn_customerservice_agent,sn_customerservice_manager, orcsm_admin - Access: Read access to
sn_customerservice_case,interaction,csm_consumer,customer_account,customer_contact,sys_journal_field, andkb_knowledgetables - Knowledge: Familiarity with Agent Workspace sidebar components and CSM case lifecycle
Procedure
Step 1: Retrieve the Active Case Details
Fetch the case currently open in the agent's workspace.
Using MCP (Claude Code/Desktop):
Tool: SN-Read-Record
Parameters:
table_name: sn_customerservice_case
sys_id: [case_sys_id]
fields: sys_id,number,short_description,description,state,priority,urgency,impact,category,subcategory,contact,account,consumer,product,asset,assigned_to,assignment_group,opened_at,sla_due,escalation,contact_type,resolution_code
Using REST API:
GET /api/now/table/sn_customerservice_case/{case_sys_id}?sysparm_fields=sys_id,number,short_description,description,state,priority,urgency,impact,category,subcategory,contact,account,consumer,product,asset,assigned_to,assignment_group,opened_at,sla_due,escalation,contact_type,resolution_code&sysparm_display_value=true
Step 2: Retrieve Consumer Profile
Fetch the consumer record to understand the customer's profile and history summary.
Using MCP:
Tool: SN-Query-Table
Parameters:
table_name: csm_consumer
query: sys_id=[consumer_sys_id]
fields: sys_id,name,email,phone,location,account,customer_tier,notes,preferred_language,time_zone
limit: 1
Using REST API:
GET /api/now/table/csm_consumer/{consumer_sys_id}?sysparm_fields=sys_id,name,email,phone,location,account,customer_tier,notes,preferred_language,time_zone&sysparm_display_value=true
Step 3: Pull Customer Account Context
Retrieve account-level details for entitlement and priority context.
Using MCP:
Tool: SN-Query-Table
Parameters:
table_name: customer_account
query: sys_id=[account_sys_id]
fields: sys_id,name,number,customer_tier,industry,notes,phone,street,city,state,country,account_code
limit: 1
Using REST API:
GET /api/now/table/customer_account/{account_sys_id}?sysparm_fields=sys_id,name,number,customer_tier,industry,notes,phone,account_code&sysparm_display_value=true
Step 4: Retrieve Customer Case History
Query recent cases for the same consumer or account to identify patterns.
Using MCP:
Tool: SN-Query-Table
Parameters:
table_name: sn_customerservice_case
query: consumer=[consumer_sys_id]^sys_id!=[current_case_sys_id]^ORDERBYDESCopened_at
fields: sys_id,number,short_description,state,priority,category,opened_at,closed_at,resolution_code
limit: 10
Using REST API:
GET /api/now/table/sn_customerservice_case?sysparm_query=consumer=[consumer_sys_id]^sys_id!=[current_case_sys_id]^ORDERBYDESCopened_at&sysparm_fields=sys_id,number,short_description,state,priority,category,opened_at,closed_at,resolution_code&sysparm_limit=10&sysparm_display_value=true
Step 5: Retrieve Recent Interactions
Pull the latest interactions for the case and the consumer.
Using MCP:
Tool: SN-Query-Table
Parameters:
table_name: interaction
query: parent=[case_sys_id]^ORDERBYDESCopened_at
fields: sys_id,number,type,channel,state,opened_at,closed_at,short_description,assigned_to,direction
limit: 5
For consumer-level interaction history:
Tool: SN-Query-Table
Parameters:
table_name: interaction
query: opened_for=[consumer_sys_id]^ORDERBYDESCopened_at
fields: sys_id,number,channel,state,opened_at,short_description
limit: 10
Using REST API:
GET /api/now/table/interaction?sysparm_query=parent=[case_sys_id]^ORDERBYDESCopened_at&sysparm_fields=sys_id,number,type,channel,state,opened_at,closed_at,short_description,assigned_to,direction&sysparm_limit=5&sysparm_display_value=true
GET /api/now/table/interaction?sysparm_query=opened_for=[consumer_sys_id]^ORDERBYDESCopened_at&sysparm_fields=sys_id,number,channel,state,opened_at,short_description&sysparm_limit=10&sysparm_display_value=true
Step 6: Check for Related Knowledge Articles
Search for knowledge articles matching the case category and product.
Using MCP:
Tool: SN-NL-Search
Parameters:
query: [case_short_description]
table: kb_knowledge
limit: 5
Using REST API:
GET /api/now/table/kb_knowledge?sysparm_query=topic=[case_category]^workflow_state=published^ORDERBYDESCsys_view_count&sysparm_fields=sys_id,number,short_description,kb_knowledge_base,sys_view_count,rating&sysparm_limit=5&sysparm_display_value=true
Step 7: Retrieve Latest Work Notes
Pull the most recent work notes for quick context on current progress.
Using MCP:
Tool: SN-Query-Table
Parameters:
table_name: sys_journal_field
query: element_id=[case_sys_id]^element=work_notes^ORDERBYDESCsys_created_on
fields: sys_id,value,sys_created_on,sys_created_by
limit: 5
Using REST API:
GET /api/now/table/sys_journal_field?sysparm_query=element_id=[case_sys_id]^element=work_notes^ORDERBYDESCsys_created_on&sysparm_fields=sys_id,value,sys_created_on,sys_created_by&sysparm_limit=5
Step 8: Assemble the Sidebar Summary
Compile all gathered data into a compact sidebar format:
=== SIDEBAR SUMMARY ===
CASE: CS0012345 | P2 | In Progress
Issue: Unable to process returns through online portal
Age: 4 days | SLA Due: Mar 21 14:00 (On Track)
Channel: Phone | Escalation: Normal
CUSTOMER SNAPSHOT:
Name: Jane Smith | Account: Acme Corp (Gold Tier)
Preferred Language: English | Timezone: US/Eastern
Contact: jane.smith@acme.com | +1-555-0123
CASE HISTORY (Last 90 days):
- 3 total cases | 2 resolved | 1 open (this case)
- Common categories: Portal Issues (2), Billing (1)
- Avg resolution time: 3.2 days
RECENT ACTIVITY:
- Mar 18: Agent reviewed portal logs, found session timeout
- Mar 17: Customer provided browser details
RECOMMENDED ACTIONS:
1. Review KB0045123: "Portal Session Timeout Troubleshooting"
2. Check related defect DEF0034521 for fix status
3. Consider escalation if not resolved by Mar 20
RELATED KB ARTICLES:
- KB0045123: Portal session management (42 views)
- KB0045089: Browser compatibility guide (28 views)
Tool Usage
MCP Tools Reference
| Tool | When to Use | |------|-------------| | SN-NL-Search | Natural language lookup for cases, consumers, or knowledge articles | | SN-Query-Table | Structured queries across case, interaction, consumer, and KB tables | | SN-Read-Record | Retrieve a single case or consumer record by sys_id |
REST API Reference
| Endpoint | Method | Purpose | |----------|--------|---------| | /api/now/table/sn_customerservice_case | GET | Query case records | | /api/now/table/interaction | GET | Retrieve case and consumer interactions | | /api/now/table/csm_consumer | GET | Consumer profile details | | /api/now/table/customer_account | GET | Account tier and entitlement info | | /api/now/table/customer_contact | GET | Contact preferences and details | | /api/now/table/sys_journal_field | GET | Work notes and comments | | /api/now/table/kb_knowledge | GET | Knowledge article recommendations |
Best Practices
- Keep summaries concise: Sidebar space is limited; aim for scannable bullet points rather than paragraphs
- Prioritize actionable information: Lead with status, SLA risk, and recommended next steps
- Show customer sentiment: If sentiment analysis data is available, include the latest sentiment score
- Highlight repeat contacts: Flag if the customer has contacted support multiple times for the same issue
- Include entitlement context: Account tier affects SLA targets and available support channels
- Refresh on case update: Sidebar summaries should be regenerated when significant case changes occur
- Respect privacy: Only display customer PII appropriate for the agent's role and jurisdiction
- Calculate case age dynamically: Display age in human-readable format (hours, days) relative to current time
Troubleshooting
"Consumer record not found"
Cause: The case may not have a consumer linked, or the consumer was created as an anonymous contact. Solution: Fall back to the contact field on the case. Query customer_contact instead of csm_consumer using the contact sys_id.
"No case history available"
Cause: This may be the customer's first case, or historical cases are archived. Solution: Expand the search to account-level cases using account=[account_sys_id] instead of filtering by consumer.
"Knowledge articles not relevant"
Cause: The category-based search may return generic articles. Solution: Use SN-NL-Search with the case short_description for semantic matching. Combine category and product filters for more targeted results.
"SLA information missing"
Cause: SLA definitions may not be configured for the case type or priority. Solution: Query task_sla with task=[case_sys_id] to check if SLAs are attached. Consult CSM admin if SLAs are tracked externally.
"Interaction records return empty"
Cause: Interactions may be stored with a different parent reference or the channel integration may not create interaction records. Solution: Check if interactions use document instead of parent as the reference field. Also query sys_journal_field for comments that may capture interaction history.
Examples
Example 1: Live Chat Sidebar Context
Scenario: Agent accepts an incoming chat and needs instant context.
Step 1 - Get case from interaction:
Tool: SN-Query-Table
Parameters:
table_name: interaction
query: sys_id=[interaction_sys_id]
fields: parent,opened_for,channel
limit: 1
Step 2 - Build sidebar from parent case:
Tool: SN-Read-Record
Parameters:
table_name: sn_customerservice_case
sys_id: [parent_sys_id]
fields: number,short_description,state,priority,consumer,account,category,opened_at,sla_due
Output:
LIVE CHAT CONTEXT
Case: CS0078901 | P3 | New
Issue: Billing discrepancy on March invoice
Customer: Robert Chen | TechStart Inc (Silver)
Previous cases: 1 (resolved - similar billing issue in Jan)
Suggested KB: KB0067890 - Invoice reconciliation guide
Example 2: Queue Review Sidebar Summaries
Scenario: Agent reviewing their assigned case queue needs summaries for each case.
Tool: SN-Query-Table
Parameters:
table_name: sn_customerservice_case
query: assigned_to=[agent_sys_id]^stateIN1,2,10^ORDERBYpriority
fields: sys_id,number,short_description,state,priority,consumer,account,category,opened_at,sla_due,escalation
limit: 20
Output:
QUEUE SUMMARY (5 cases assigned)
1. CS0078901 | P1 | SLA: 2hrs remaining | Acme Corp (Gold)
Production outage - API gateway errors
ACTION: Immediate attention required
2. CS0078905 | P2 | SLA: On Track | Globex (Silver)
Password reset failing for SSO users
ACTION: Check KB0045200, likely config issue
3. CS0078910 | P3 | SLA: On Track | Initech (Bronze)
Feature request - export to CSV
ACTION: Route to product team for evaluation
Example 3: Escalated Case Sidebar
Scenario: A P1 escalated case requires executive-level summary with full customer context.
Tool: SN-Read-Record
Parameters:
table_name: sn_customerservice_case
sys_id: [case_sys_id]
fields: number,short_description,state,priority,escalation,consumer,account,category,opened_at,sla_due,assigned_to,assignment_group
Output:
ESCALATED CASE SUMMARY
Case: CS0099001 | P1 CRITICAL | Escalated
Issue: Complete service outage affecting all users
Account: MegaCorp Industries (Platinum Tier)
Age: 6 hours | SLA: BREACHED (4hr target)
Escalation Level: 2 | Assigned: Sr. Engineer Team
Customer Impact: 500+ users affected
Previous escalations: 0 in last 12 months
EXEC ALERT: Platinum account - VP notification required
Related Skills
csm/case-summarization- Full case summarization with complete timelinecsm/sentiment-analysis- Customer sentiment analysis across communicationscsm/chat-recommendation- Generate chat response recommendationscsm/suggested-steps- AI-generated resolution step recommendationscsm/trending-topics- Trending topic analysis across case portfolioknowledge/content-recommendation- Knowledge article recommendations
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Happy-Technologies-LLC
- Source: Happy-Technologies-LLC/happy-platform-skills
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.