Mayank Agarwal · Products

Product Manager's Assistant

21 consulting skills on speed dial - from a raw PM query to a stakeholder-ready deliverable in seconds

Visit Product ↗

Every product manager regularly faces consulting-grade questions. Should we build this? What is the real problem behind this stakeholder complaint? Which of these three options do we commit to, and what do we sacrifice? The discipline for answering them well exists - it is exactly what strategy consultants are trained on - but for most PMs it is locked away in expensive engagements, dense books, or the head of that one principal PM everyone queues up to talk to.

I had already converted that discipline into software once: PM-Consultant-Skills, a set of 21 Claude skills that codify the consulting method, each one turning business inputs into a client-ready artifact. But skills have a distribution problem. They only work if you run Claude, install the plugin, and know the skills exist. The Product Manager's Assistant removes all three conditions: it is a single web page where any PM picks a skill, pastes their situation, and gets the structured deliverable streamed back. No account, no install, no Claude subscription.

Getting the discipline the usual way
Weeks
Hire a consultant, book the principal PM, or work through a dense strategy book and hope it sticks under deadline pressure
vs
Product Manager's Assistant
Seconds
Pick one of 21 skills, paste your context, get the deliverable in the skill's fixed structure - free, in the browser

The Problem: Good Frameworks, Zero Distribution

The discovery question here was not "do PMs need structured thinking tools" - the PM-Consultant-Skills repo had already validated that the artifacts are useful. The question was sharper: why does a working set of 21 skills reach almost nobody?

Three friction points kept coming up:

The gap: the thinking system existed and worked, but there was no zero-install surface that put the full catalogue in front of a PM, organised by where they are stuck, with the conversation flattened into a single shot. That surface is the product.

Who It's For

The shared need: the deliverable, not the dialogue. That single insight drove the biggest design decision in the build.

The Three Insights That Made It Buildable

What Made This Possible

1. A SKILL.md is already a system prompt. Each skill in the source repo has the same anatomy: a role with a sharp mandate, the context to gather, three steps, a four-check quality gate, and a five-part output structure. That is not documentation that needs translating into a prompt - it is the prompt. The portal's core asset, lib/skills.js, is generated from the 21 SKILL.md files with one behavioural change.

2. One instruction converts a conversation into a single shot. Skills ask follow-up questions when inputs are missing. On the web that kills the experience. The fix is a single directive appended to every system prompt: assume and proceed. State your assumptions explicitly, then deliver anyway. Missing context becomes a labelled assumption in the output instead of a blocking question.

3. Fast inference is the feature. The value proposition is "deliverable in seconds", so model latency is not an implementation detail - it is the promise. Groq serving llama-3.3-70b-versatile streams tokens fast enough that the answer visibly pours onto the page. A slower model with marginally better prose would be a worse product.


Defining the MVP

As with every project in this series, I wrote the goals and non-goals down before touching code.

Goals

GoalSuccess looks like
Full catalogue, zero installAll 21 skills usable from a URL with no account or setup
Discovery built into the UISkills grouped by the six engagement phases so "where am I stuck" maps to a tab
Single-shot answersEvery query returns a deliverable; no skill ever responds with only questions
Answer in secondsStreaming starts fast enough to feel instant on a free-tier stack
Chainable outputEach deliverable is structured markdown a user can paste into the next skill

Non-Goals (Just as Important)

Architecture: One Route, Twenty-One Prompts

The whole system is deliberately small: a Next.js 14 App Router app with a single API route, a skills catalogue compiled into the bundle, and Groq as the inference layer. There is no database, no auth, and no state beyond the current request.

Browser (vertical tabs, 6 phases / 21 skills)
  ↓  POST /api/generate { skillId, query }
Next.js Route Handler (Vercel serverless)
  ↓  validate request → look up skill in lib/skills.js
Groq API (llama-3.3-70b-versatile)
  system prompt = the skill's adapted SKILL.md
  user message  = the PM's query
  ↓  token stream
Plain-text stream → client renders as markdown

lib/skills.js is the heart of it: an array of 21 objects, each carrying an id, phase, description, and the full system prompt generated from its SKILL.md. Embedding the prompts in the bundle instead of reading files at runtime keeps the API route dependency-free and the cold start minimal.

The six phases give the UI its information architecture, and the skill counts per phase fall out of the source repo:

PhaseQuestion it answersSkills
DiagnoseWhat is the real problem, who is involved, what does success mean?Problem Framer, Stakeholder Mapper, Success Criteria Definer, Scope & Constraint Setter
AnalyzeWhat does the evidence say and what is the problem costing us?Evidence Collector, Hypothesis Builder, Root Cause Analyzer, Impact Quantifier
SynthesizeWhat are the real options and what does each one sacrifice?Option Generator, Trade-Off Analyzer, Assumption Stress-Tester, Scenario Modeler
DecideWhat do we commit to and how do we land it with leadership?Recommendation Builder, Business Case Builder, Executive Memo Writer
ExecuteIn what order, owned by whom, watching which risks?Initiative Sequencer, Ownership & Accountability Mapper, Risk & Dependency Mapper
MeasureDid the value land, and what do we learn?KPI Architect, Value Tracking System, Engagement Review System

Takeaway: When the intelligence lives in the prompts, the right amount of application code is almost none. Every layer I did not build (database, auth, session state) is a layer that cannot break.

From SKILL.md to System Prompt

The most interesting engineering in the project is not TypeScript - it is the adaptation of a conversational skill into a single-shot one. Each source skill closes with behaviours that make sense in Claude and fail on the web, so the generation step rewrites the contract:

Skill behaviour in ClaudeAdapted behaviour in the portal
Ask for the 3 context inputs if missingAssume sensible values, label every assumption in the output
Offer the next skill in the chain interactivelyClose the deliverable by naming the next skill and what to paste into it
Offer export formats (doc, deck, memo)Always return structured markdown ready to paste anywhere
Quality gate enforced across turnsQuality gate folded into the single response's structure

What survives untouched is the part that makes the outputs good: the role's sharp mandate ("your job is not to summarise options, it is to force a choice"), the fixed five-part output structure, and the quality-gate checks. Those constraints are why the answers read like a consultant's deliverable rather than generic LLM prose.

Takeaway: Prompt assets are portable across surfaces, but their interaction contract is not. Porting a skill from chat to web is 10% plumbing and 90% rewriting what the prompt is allowed to ask of the user.

Tech Stack Decisions

LayerChoiceWhy
FrameworkNext.js 14 (App Router)One repo serves the UI and the API route; static where possible, serverless where needed
InferenceGroq, llama-3.3-70b-versatileStreaming speed is the product promise; generous free tier keeps the tool free to run
Prompt storelib/skills.js in the bundleNo runtime file reads, no CMS, no cold-start penalty; the repo is the source of truth
TransportPlain-text token streamSimplest thing that shows progress; client renders the accumulating text as markdown
SecretsGROQ_API_KEY server-side onlyThe key never reaches the browser; the API route is the only caller
HostingVercelPush-to-deploy, serverless functions included, consistent with every other project in this series

The Groq decision deserves one more sentence, because it is a genuine trade-off. Claude produced noticeably richer prose in side-by-side tests, but at multiple seconds to first token the portal felt like submitting a form. Groq starts streaming almost immediately, and for a tool whose pitch is "structured thinking in seconds", perceived speed beats marginal eloquence. The skills' rigid output structures also do a lot of quality-levelling: with a five-part structure and a quality gate baked into the prompt, the floor on a fast open model is high enough.

What Ships: The User Journey

1
🗂️

Pick a skill from vertical tabs grouped Diagnose → Measure, matching where you are stuck

2
✍️

Drop your query - the situation, numbers, constraints, who decides. Cmd/Ctrl + Enter to run

3

Watch the deliverable stream in the skill's fixed structure, assumptions labelled

4
🔗

Chain it - paste the output into the next skill: Problem → Evidence → Options → Recommendation → Roadmap → Value

The chain in step 4 is the quiet centre of the product. A single skill output is useful; the sequence is the actual consulting method. Because every deliverable ends by naming its successor skill and what to feed it, a PM who arrives for one answer gets pulled into the full arc of a decision.

Learnings

What's Next

The takeaway

The Product Manager's Assistant is a thin product by design: one route, one model call, twenty-one prompts. All the leverage sits in assets that already existed - the consulting method in the skills, and the discipline of their fixed structures. The build was really a distribution project: taking a proven thinking system and removing every step between a stuck PM and a structured answer.

That is the general lesson of this one. When the intelligence lives in well-structured prompts, the fastest way to multiply their value is not a better model or a richer app - it is a surface with zero friction. The web page is not the product. The method, finally within reach of the people it was written for, is.

← Back to all products