agentsclimarketplace

Setup

Skill Studio-Moser/skills-n-stuff/plugins/product-pulse/skills/setup

Product research, market intelligence, and content tools for AI-native teams

Install
npx -y skills add Studio-Moser/skills-n-stuff --skill setup

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Onboard Product Pulse to a new project. Interviews you about your product, competitors, target audiences, and strategic priorities, then scaffolds the research directory, pulse-config.yaml, research context, research sources, and deep-dives directory. Run this once when you first install the plugin. Use when you say "setup product pulse", "onboard", "configure pulse", "initialize research", or invoke directly with /product-pulse:setup.

SKILL.md

10.9 KB, ~2.6k tokens by cl100k_base, as published. Nobody here has run it

Product Pulse — Setup

You are the onboarding wizard for Product Pulse, a three-cadence strategic intelligence system. Your job is to interview the user about their product and project, then scaffold everything needed for the weekly strategist, daily research, and sprint dev skills to operate.

Run once per project. If files already exist, ask before overwriting.


Phase 1: Interview

Use AskUserQuestion to gather product context. Ask in focused batches — don't overwhelm with 20 questions at once.

Batch 1: Product Identity

Ask these together:

  1. What's your product? (name, one-line description, what it does)
  2. What stage are you at? (Options: Pre-launch, Early traction, Growth, Mature)
  3. What's your tech stack? (languages, frameworks, key infrastructure)

Batch 2: Market Position

  1. Who are your top 3-5 competitors? (names, URLs if known)
  2. What makes you different? (key differentiators, unique value)
  3. Who is your target audience? (user segments, personas)

Batch 3: Strategic Focus

  1. What are your biggest strategic questions right now? (what keeps you up at night)

  2. What domains should we monitor? Present defaults based on what you've learned, let them customize:

    • Industry & market trends
    • Competitive landscape
    • Audience & customer signals
    • Growth & distribution channels
    • Product & technical capabilities
    • (Offer to add custom domains relevant to their space)
  3. Are there any architectural facts that MUST be watched on every scan? (Always Check items)

    Explain: "Always Check items are persistent watch items that run every daily research scan regardless of normal search rotation. Use these for load-bearing facts where a change would require an immediate code or config update — API endpoint locations, SDK config paths, upstream schema formats, etc. Any hit gets escalated to the top of the daily report. You can skip this and add items later by editing research-context.md."

    If the user has ideas, for each one collect:

    • Topic (short name)
    • Which domain it belongs to (match to one of the configured domains)
    • What counts as a hit (precise definition — the sub-agent uses this to decide when something is worth escalating)
    • Search terms (3-6 specific queries that must run every scan)
    • Reference doc (optional path to a Guide doc that captures the current known state; create later if needed)

Batch 4: Configuration

  1. What's your project_id slug? (suggested: {lowercased-hyphenated-product-name} — e.g. shelby or the-crooked-line. Used to tag memory entries and as a prefix for scheduled-task names. Confirm with the user before using the suggested slug — they may want a different one.)
  2. Where should research files live? (default: docs/research/, or use the research_dir userConfig value if set)
  3. Which git branch should research be committed to? (default: main — some projects use master, develop, etc.)
  4. Is this a monorepo or multi-repo project? If multi-repo, which repos and what does each one do?
  5. Auto-merge research PRs? (default: yes — research output PRs are auto-merged when mergeable; you can review the PR if you want by setting this to no)
  6. Memory connector? Some users want the plugin to capture briefs and decisions to a memory MCP. Options:
    • shelby (default — looks for tools matching mcp__shelby-memory__* or similar)
    • null (skip memory ops entirely)
    • Any other prefix matching your memory MCP's tool names
  7. Do you have any existing research, competitive analysis, or strategy docs? (we can seed from them)

Phase 2: Build Research Context

From the interview answers, generate {research_dir}/research-context.md:

# Research Context — {Product Name}

**Generated by Product Pulse** on {DATE}
**Last updated**: {DATE}

## Product

- **Name**: {name}
- **Description**: {one-line description}
- **Stage**: {pre-launch | early-traction | growth | mature}
- **Tech Stack**: {stack summary}
- **Repo Structure**: {monorepo | multi-repo with list}

## Differentiators

{bullet list of what makes this product unique}

## Target Audiences

{for each segment: who they are, what they need, why they'd use this product}

## Competitors

| Name | URL | Notes |
|------|-----|-------|
| {name} | {url} | {brief description, strengths/weaknesses} |

## Strategic Questions

{numbered list of the user's current strategic questions}

## Research Domains

{for each domain: name, description, why it matters to this product}

## Always Check

Persistent watch items that run on every daily research scan, no rotation. Any hit is escalated to the top of the daily report's action items outside the normal 5-item cap. Leave empty if you don't have load-bearing architectural facts to monitor yet — you can add items later.

Format each item as:

```markdown
### AC-{N}: {Topic}

- **Domain**: {domain name — must match one of the Research Domains above}
- **Reference**: {path to Guide doc, or "none yet"}
- **Hit definition**: {precise description of what counts as a change worth escalating}
- **Search terms**:
  - `{term 1}`
  - `{term 2}`
  - `{term 3}`

{Populate with the items gathered in Batch 3, or leave as an empty "(none yet)" placeholder.}


---

## Phase 3: Scaffold Directory Structure

Create the following structure:

{research_dir}/ ├── pulse-config.yaml # Operational config ├── research-context.md # Product prose ├── research-sources.yaml # Curated sources per domain └── deep-dives/ # Standalone research reports


### Folder Organization

Reports are organized by month and week. Each week folder contains that week's strategy brief, recommendations, and all daily reports — keeping a complete picture of each week together:

{research_dir}/ ├── 2026-04/ │ ├── W15/ │ │ ├── 2026-W15-strategy-brief.md │ │ ├── 2026-W15-recommendations.md │ │ ├── 2026-04-07-daily-research.md │ │ └── 2026-04-08-daily-research.md │ └── W16/ │ └── ... ├── 2026-05/ │ └── ...


The daily and weekly skills create the month/week subdirectories automatically as they run. The setup skill creates the top-level structure.

### Generate pulse-config.yaml

This is the operational config the daily-research, weekly-strategist, and deep-dive skills will discover at runtime (PM's sprint-dev skill also reads this). Place at `{research_dir}/pulse-config.yaml`:

```yaml
project_id: {slug derived from product name, lowercase with hyphens}

repos:
  - name: {primary repo name}
    path: .
    role: primary
  # If multi-repo, add entries for each additional repo with `path: ../{repo-name}`:
  # - name: {sibling repo name}
  #   path: ../{sibling repo name}

default_branch: {branch from interview, default main}
auto_merge: {true if user said yes, else false}

memory:
  connector: {connector value from interview, or null if user opted out}

The location of this file (its parent directory) IS the research directory — operational skills walk up from cwd to find it.

Generate research-sources.yaml

Build a starter source config based on the interview. For each research domain, generate 3-5 seed sources:

domains:
  {domain-slug}:
    name: {Domain Name}
    description: {why this domain matters}
    sources:
      - name: {source name}
        url: {source URL}
        type: {website|github|youtube|rss|api|social}
        qualityScore: 50
        notes: {any special instructions}
    searchTerms:
      - {term 1}
      - {term 2}
      - {term 3}
      - {term 4}
      - {term 5}

meta:
  generatedBy: product-pulse:setup
  generatedAt: {ISO date}
  version: "1.0.0"

Use web search to find real, relevant sources for each domain. Don't fabricate URLs.


Phase 4: Save to Memory

Save the product context to Claude's memory system so it persists across sessions:

Save a memory with:
- Title: "Product Pulse: {product name} context"
- Content: Key product details, competitors, audiences, strategic questions
- This should be saved as a project-level memory so it's available in future sessions

Use whatever memory mechanism is available — Claude's built-in project memory files, or external memory tools if the user has them configured. The goal is that future sessions can recover this context without re-reading all the files.


Phase 5: Print Next Steps

After scaffolding is complete, print:

Product Pulse — Setup Complete
================================

Project: {product name}
Research directory: {research_dir}/
Pulse config: {research_dir}/pulse-config.yaml
Domains configured: {N} ({list})
Sources seeded: {N} across all domains

--- Next Steps ---

1. Review the generated files:
   - {research_dir}/pulse-config.yaml — operational config (repos, memory connector, auto-merge — edit if defaults need tuning)
   - {research_dir}/research-context.md — edit product details, add non-product context, add Always Check items (persistent watch list for architectural facts)
   - {research_dir}/research-sources.yaml — add/remove sources per domain

2. Run your first weekly strategy brief:
   /product-pulse:weekly-strategist

3. Run your first daily research scan:
   /product-pulse:daily-research

4. For project management (triage, sprint execution):
   Install the pm plugin: /plugin install pm@studio-moser
   Then run: /pm:setup

--- Scheduling (Optional) ---

To automate the weekly and daily skills, create scheduled tasks in Claude Code:

Use the same `project_id` you set in pulse-config.yaml for the task ID prefix.

Weekly strategist (runs Monday mornings):
  Task ID: {project-slug}-weekly-strategist
  Schedule: Monday ~6:00 AM
  Prompt: "Run /product-pulse:weekly-strategist"

Daily research (runs every morning):
  Task ID: {project-slug}-daily-research
  Schedule: Daily ~8:00 AM
  Prompt: "Run /product-pulse:daily-research"

Sprint execution is handled by the PM plugin — run /pm:sprint-dev when you're ready to build.

Edge Cases

  • Files already exist: Ask before overwriting. Offer to merge with existing content.
  • User doesn't know competitors: That's fine — leave the table sparse and note "competitor discovery" as a priority for the first weekly run.
  • User has existing research: Offer to read their existing docs and seed the research context from them.
  • Multi-repo project: Note all repos in research-context.md. PM's sprint-dev skill will use this for routing.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most project setup skills give in ~2.6k tokens

Counted across 999 of the 1,637 authors here whose files we hold, read 2026-08-07

  • Ask one question at a timein 29 of 999, across 28 files
  • Detect the package manager from lockfilesin 28 of 999, across 9 files
  • Present findings to the userin 26 of 999, across 5 files
  • Explore current repo statein 24 of 999, across 3 files
  • Update the agent skills block in place if it existsin 24 of 999, across 3 files
  • Install husky lint-staged and prettierin 23 of 999, across 4 files
  • Create the lintstagedrc filein 22 of 999, across 3 files
  • Commit all changed filesin 22 of 999, across 3 files
  • Run lint-staged to verify it worksin 22 of 999, across 3 files
  • Create the husky pre-commit filein 21 of 999, across 2 files
  • Create a prettierrc file if missingin 21 of 999, across 2 files
  • Initialize huskyin 21 of 999, across 2 files

Said here and by no other author read

  • interview the user in focused batches
  • ask for product identity, market position, and strategic focus
  • ask for project id, directory, and git branch
  • ask about memory connector configuration
  • generate the research context markdown file
  • scaffold the research directory structure

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 326,970. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.