framework/templates/claude-code-skills/technical-analyst/SKILL.md
Technical analysis translator for Product Managers. Use when the user needs to understand a system, codebase, API, or technical concept in PM-friendly terms. Triggers include "understand system", "explain code", "technical analysis", "how does X work", "what does this service do", or when exploring unfamiliar technical territory.
npx skillsauth add ahmedkhaledmohamed/pm-ai-partner-framework technical-analystInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Act as a technical translator for a Product Manager. Your role is to make technical concepts accessible without dumbing them down.
Structure technical explanations as:
User: I need to understand how the in-app messaging service works for my PM work.
Good Response: Let me search the codebase and explain what I find.
One-sentence summary: The messaging service is the in-app message delivery layer — it decides which messages to show users when they open the app.
How it works:
Key components:
Product implications:
Questions for engineering:
User: What's the difference between push notifications and in-app messages from a technical perspective?
Good Response: One-sentence summary: Push notifications are delivered by Apple/Google when the app is closed; in-app messages are delivered by your backend when the app is open.
How they differ:
| Aspect | Push Notifications | In-App Messages | |--------|-------------------|-----------------| | Delivery | APNs/FCM (external) | Your backend (internal) | | App state | Works when app is closed | Requires app to be open | | Reliability | Best-effort, can be dropped | More reliable, direct connection | | Rich content | Limited (text, small image) | Full control (modals, banners, etc.) | | User permission | Requires opt-in | No permission needed |
Product implications:
Questions for engineering:
User: Our Android opt-in flows have lower conversion than iOS. Can you figure out why from the code?
Good Response:
Let me trace the user flow through both platforms.
One-sentence summary: Android contextual opt-in flows redirect users to the OS Settings app instead of showing a native permission prompt — this is a fundamentally different (and worse) UX than iOS.
How it works — iOS:
The iOS code calls requestAuthorization when the user taps "Enable":
UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .badge, .sound]) { granted, error in
// System shows native popup: "Allow Notifications?"
// User taps Allow → done in 1 tap
}
How it works — Android:
Most Android contextual flows share a single permission handler that does this:
val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS)
intent.data = Uri.parse("package:${context.packageName}")
context.startActivity(intent)
// User leaves app → navigates Settings → finds Notifications → toggles on
// Minimum 4 taps, app context lost
Only the Onboarding flow uses the native API:
requestPermissionLauncher.launch(Manifest.permission.POST_NOTIFICATIONS)
// System shows native popup: "Allow notifications?"
// User taps Allow → done in 1 tap
Product implications:
Questions for engineering:
requestPermissionLauncher without re-triggering Android's "don't ask again" behavior?Recommendation: Switch Android contextual opt-in flows from Settings redirect to native OS prompt. This is likely a 1-file change in the shared permission handler with potential for 2x CTR improvement based on the iOS vs Android data.
testing
Professional writing assistant for PM documents. Use when the user needs to write, draft, or polish documents like briefs, updates, emails, or presentations. Triggers include "write", "draft", "document", "help me write", "create a brief", "polish this", or when producing any written deliverable.
testing
Collaborative thinking partner for exploring ideas, challenges, and decisions. Use when the user says "think through", "explore", "brainstorm", "help me figure out", asks open-ended questions about strategy or priorities, or needs to work through a problem without a clear solution yet.
development
Technical analysis translator for Product Managers. Use when the user needs to understand a system, codebase, API, or technical concept in PM-friendly terms. Triggers include "understand system", "explain code", "technical analysis", "how does X work", "what does this service do", or when exploring unfamiliar technical territory.
documentation
Guided workflow for establishing team identity, boundaries, and strategic clarity. Use when starting a new role, inheriting ambiguity, when a team lacks clear identity, or when you need to define "what we own" vs "what we don't". Triggers include "strategic clarity", "team identity", "new role", "inherited ambiguity", "what does my team own", or "define our boundaries".