Skip to content

Commit 73e718b

Browse files
Copilotfadidurah
andcommitted
Expand communication guidelines to all interaction channels
Co-authored-by: fadidurah <[email protected]>
1 parent bb1eea8 commit 73e718b

File tree

2 files changed

+150
-18
lines changed

2 files changed

+150
-18
lines changed

.github/copilot-instructions.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -154,14 +154,16 @@ Logger.getInstance().setEnablePII(true); // Only for debugging
154154

155155
**Remember:** When in doubt, check snippets/ directory first, then golden examples. Never invent patterns.
156156

157-
## 6. GitHub Issue Handling (For AI Agents)
157+
## 6. Customer Interaction Guidelines (For AI Agents)
158158

159-
When responding to GitHub issues, AI agents should follow these guidelines:
159+
When interacting with users across **any channel** (GitHub issues, web chat, agent sessions), AI agents should follow these guidelines:
160160

161-
### Issue Response Resources
161+
> **IMPORTANT**: Always assume users are **3rd party external customers**, not internal developers. Responses must be clear, accessible, and avoid internal Microsoft terminology or processes.
162+
163+
### Communication Resources
162164
- **Common Issues Guide:** [`issue-responses/common-issues-guide.md`](issue-responses/common-issues-guide.md) - Comprehensive troubleshooting reference
163-
- **Communication Guidelines:** [`issue-responses/customer-communication-guidelines.md`](issue-responses/customer-communication-guidelines.md) - Professional response templates
164-
- **Automated Workflow:** [`workflows/copilot-issue-response.yml`](workflows/copilot-issue-response.yml) - Automatic triage and response
165+
- **Communication Guidelines:** [`issue-responses/customer-communication-guidelines.md`](issue-responses/customer-communication-guidelines.md) - Response templates for all channels
166+
- **Automated Workflow:** [`workflows/copilot-issue-response.yml`](workflows/copilot-issue-response.yml) - Automatic issue triage and response
165167

166168
### Quick Issue Diagnosis
167169

.github/issue-responses/customer-communication-guidelines.md

Lines changed: 143 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,102 @@
1-
# Customer Communication Guidelines for GitHub Issues
1+
# Customer Communication Guidelines for MSAL Android
22

3-
This document provides guidelines for AI agents and team members when responding to MSAL Android GitHub issues. Professional, helpful, and empathetic communication builds trust and helps resolve issues efficiently.
3+
This document provides guidelines for AI agents and team members when responding to MSAL Android users across **all interaction channels**, including GitHub issues, web chat, and agent sessions. Professional, helpful, and empathetic communication builds trust and helps resolve issues efficiently.
4+
5+
> **IMPORTANT**: Always assume that any user interacting with GitHub Copilot or AI agents about the MSAL Android repository is a **3rd party external customer**, not an internal developer. Responses must be clear, accessible, and avoid assumptions about the user's familiarity with internal Microsoft processes or deep authentication expertise.
46
57
---
68

79
## Table of Contents
810

9-
1. [Communication Principles](#communication-principles)
10-
2. [Response Templates](#response-templates)
11-
3. [Issue Triage Guidelines](#issue-triage-guidelines)
12-
4. [Escalation Procedures](#escalation-procedures)
13-
5. [What NOT to Do](#what-not-to-do)
11+
1. [Interaction Channels](#interaction-channels)
12+
2. [Audience Assumptions](#audience-assumptions)
13+
3. [Communication Principles](#communication-principles)
14+
4. [Response Templates](#response-templates)
15+
5. [Issue Triage Guidelines](#issue-triage-guidelines)
16+
6. [Escalation Procedures](#escalation-procedures)
17+
7. [What NOT to Do](#what-not-to-do)
18+
19+
---
20+
21+
## Interaction Channels
22+
23+
These guidelines apply to **all** channels where users interact with MSAL Android support:
24+
25+
### GitHub Issues
26+
- Users report bugs, request features, or ask questions
27+
- Responses are public and permanent
28+
- Follow issue templates and labeling conventions
29+
30+
### Web Chat (GitHub Copilot Chat)
31+
- Users ask questions in real-time via Copilot
32+
- Focus on immediate, actionable answers
33+
- Keep responses concise but complete
34+
- Provide code examples when helpful
35+
36+
### Agent Sessions (Copilot Workspace, CLI)
37+
- Users may be actively implementing MSAL
38+
- Provide working code that follows current best practices
39+
- Always use Parameters-based APIs (MSAL 8.+)
40+
- Reference golden examples from the repository
41+
42+
### General Principles Across All Channels
43+
44+
| Principle | Application |
45+
|-----------|-------------|
46+
| Clarity | Use plain language; avoid jargon unless explained |
47+
| Completeness | Provide all necessary context and steps |
48+
| Accuracy | Verify code and links before sharing |
49+
| Respect | Treat every question as valid and important |
50+
51+
---
52+
53+
## Audience Assumptions
54+
55+
### Who Are Our Users?
56+
57+
**Always assume users are 3rd party external customers:**
58+
59+
- **Mobile app developers** integrating authentication into Android apps
60+
- **Enterprise developers** building line-of-business applications
61+
- **Independent developers** creating apps for the Play Store
62+
- **Consultants** implementing solutions for clients
63+
64+
### What NOT to Assume
65+
66+
| Don't Assume | Instead |
67+
|--------------|---------|
68+
| User knows Azure AD internals | Explain authentication concepts clearly |
69+
| User has read all documentation | Provide relevant links and summaries |
70+
| User understands OAuth2/OIDC deeply | Explain token flows when relevant |
71+
| User has access to internal tools | Only reference public resources |
72+
| User is familiar with Microsoft terminology | Define terms like "broker," "claims," "scopes" |
73+
74+
### Adjust Complexity Based on Context
75+
76+
**For beginners:**
77+
- Provide step-by-step instructions
78+
- Include complete code examples
79+
- Explain the "why" behind recommendations
80+
- Link to getting-started guides
81+
82+
**For experienced developers:**
83+
- Focus on the specific issue
84+
- Provide targeted solutions
85+
- Reference API documentation
86+
- Offer optimization suggestions
87+
88+
### Key Vocabulary to Define
89+
90+
When using these terms, include a brief explanation if context suggests the user may be unfamiliar:
91+
92+
| Term | Plain Language Explanation |
93+
|------|---------------------------|
94+
| Broker | The Microsoft Authenticator app or Company Portal that handles sign-in securely |
95+
| Silent token acquisition | Getting a new access token without prompting the user to sign in |
96+
| Claims | Information about the user included in the token |
97+
| Scopes | Permissions your app is requesting |
98+
| Redirect URI | The URL Azure sends the user back to after sign-in |
99+
| PCA | Public Client Application - the main MSAL object for mobile apps |
14100

15101
---
16102

@@ -52,14 +138,29 @@ Thank you for reporting this issue! We appreciate you taking the time to help us
52138

53139
I'm looking into this now and will provide an update shortly. In the meantime, could you please provide:
54140

55-
1. **MSAL Version**: (e.g., 7.1.0)
141+
1. **MSAL Version**: (e.g., 8.0.0)
56142
2. **Android Version**: (Device API level)
57143
3. **Account Mode**: (Single or Multiple)
58144
4. **Complete error message or stack trace**
59145

60146
This information will help us diagnose the issue more quickly.
61147
```
62148

149+
### Quick Web Chat Response
150+
151+
Use this format when responding to questions in web chat or agent sessions:
152+
153+
```markdown
154+
**Quick Answer**: [Direct answer to the question]
155+
156+
**Example**:
157+
```java
158+
// [Minimal working code example]
159+
```
160+
161+
**Learn More**: [Link to relevant documentation or example]
162+
```
163+
63164
### Requesting More Information
64165
65166
```markdown
@@ -318,17 +419,46 @@ If you believe this is an MSAL Android issue, please provide additional details
318419

319420
## Quality Checklist
320421

321-
Before responding to any issue, verify:
422+
Before responding in **any channel**, verify:
322423

424+
### All Channels
323425
- [ ] Tone is professional and empathetic
324-
- [ ] Response is clear and actionable
325-
- [ ] Code examples follow current API patterns
326-
- [ ] Links are valid and relevant
426+
- [ ] Response is clear and accessible to 3rd party developers
427+
- [ ] Technical terms are explained when needed
428+
- [ ] Code examples follow current API patterns (MSAL 8.+)
429+
- [ ] Links are valid and point to public resources
327430
- [ ] No sensitive information is exposed
328431
- [ ] Response addresses the actual question
432+
433+
### GitHub Issues Specific
329434
- [ ] Appropriate labels are applied
330435
- [ ] Follow-up is planned if needed
436+
- [ ] Issue template requirements are met
437+
438+
### Web Chat / Agent Session Specific
439+
- [ ] Response is concise and actionable
440+
- [ ] Code is immediately usable
441+
- [ ] Golden examples are referenced when appropriate
442+
443+
---
444+
445+
## Channel-Specific Tips
446+
447+
### Web Chat Best Practices
448+
449+
1. **Be direct** - Users expect quick answers
450+
2. **Lead with the solution** - Don't bury the answer in context
451+
3. **Provide runnable code** - Make copy-paste work
452+
4. **Offer follow-up** - "Would you like me to explain X further?"
453+
454+
### Agent Session Best Practices
455+
456+
1. **Understand the context** - Review what the user is building
457+
2. **Provide complete implementations** - Not just snippets
458+
3. **Follow repository patterns** - Use snippets/ directory as reference
459+
4. **Validate before suggesting** - Ensure code compiles
460+
5. **Consider edge cases** - Handle errors appropriately
331461

332462
---
333463

334-
*These guidelines are maintained by the MSAL Android team. For questions about specific situations, consult with the team lead.*
464+
*These guidelines are maintained by the MSAL Android team and apply to all interaction channels. For questions about specific situations, consult with the team lead.*

0 commit comments

Comments
 (0)