# How to Create Competitive Battlecards Using the /battlecard Command in phuryn/pm-skills

> Easily create competitive battlecards with phuryn/pm-skills /battlecard command. Automate competitor research and generate structured markdown sales documents.

- Repository: [Pawel Huryn/pm-skills](https://github.com/phuryn/pm-skills)
- Tags: how-to-guide
- Published: 2026-06-16

---

**Use the `/battlecard` command in the pm-go-to-market module to automatically research competitors and generate markdown battlecards by invoking the `competitive-battlecard` skill, which parses your product-vs-competitor input and outputs a structured sales document.**

The `phuryn/pm-skills` repository provides product management automation tools, including the **pm-go-to-market** module for sales enablement. When you need to create competitive battlecards, the `/battlecard` command streamlines research and documentation by orchestrating web searches and templated output generation according to the source implementation.

## Understanding the /battlecard Command Architecture

The `/battlecard` command implements a separation-of-concerns design that keeps the user interface simple while maximizing reusability across the codebase.

### Command Layer Entry Point

The command is defined in **[`pm-go-to-market/commands/battlecard.md`](https://github.com/phuryn/pm-skills/blob/main/pm-go-to-market/commands/battlecard.md)**. This file handles argument parsing and the step-by-step workflow orchestration. When you invoke `/battlecard`, the system captures your product-vs-competitor pairing (e.g., `OurCRM vs Salesforce`) and validates the input structure before proceeding.

### Skill Layer Logic

The command delegates processing to the **`competitive-battlecard`** skill, documented in [[`pm-go-to-market/skills/competitive-battlecard/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-go-to-market/skills/competitive-battlecard/SKILL.md)](https://github.com/phuryn/pm-skills/blob/main/pm-go-to-market/skills/competitive-battlecard/SKILL.md). This skill contains the detailed research checklist, web-search triggers, and the final markdown template assembly logic. This decoupling allows other commands to reuse the battlecard generation logic without duplicating code.

## Step-by-Step Workflow to Create Competitive Battlecards

When you execute the `/battlecard` command, the system follows a five-phase pipeline as implemented in the source files:

1. **Argument Parsing** – The command extracts the product name, competitor name, and optional context (such as buyer persona or market segment).

2. **Skill Invocation** – The `competitive-battlecard` skill loads its instruction set from [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md), including the research checklist and template structure.

3. **Automated Research** – The skill triggers a **web-search** step to gather current competitor intelligence, including product features, pricing, positioning, recent news, and user reviews.

4. **Document Assembly** – Using the predefined markdown template, the skill synthesizes the research into a structured battlecard containing company overviews, comparison matrices, and objection handling frameworks.

5. **Output Delivery** – The resulting markdown file is saved and displayed, ready for copying into **Notion**, **Confluence**, or direct distribution to sales teams.

## Battlecard Template Components

The generated battlecard follows a standardized markdown structure defined in the skill configuration. Each document includes:

- **Company Overview** – Brief profiles of both your product and the competitor.
- **Quick Comparison Table** – A capability matrix using the format `| Capability | Us | Them | Winner |` to highlight feature parity.
- **Win/Loss Patterns** – Analysis of where your solution outperforms the competitor and vice versa.
- **Objection Handling Matrix** – Pre-written responses to common competitive challenges.
- **Sales Enablement Assets** – Landmine questions, conversation starters, and resource links for deal support.

## Usage Examples and Syntax

You can invoke the `/battlecard` command with various argument patterns to match your research needs.

Basic competitive analysis:

```markdown
/battlecard OurCRM vs Salesforce

```

Targeted matchup with persona context:

```markdown
/battlecard ProjectFlow vs Monday.com for mid-market teams

```

Enhanced research with supporting documentation:

```markdown
/battlecard [upload competitor materials or win/loss data]

```

When you provide win/loss data or competitor materials as uploads, the skill incorporates these files into the research phase, enriching the final battlecard with internal intelligence alongside web-sourced data.

## Key Implementation Files

The battlecard functionality spans three critical files within the `pm-go-to-market/` directory:

| File | Purpose |
|------|---------|
| **[`pm-go-to-market/commands/battlecard.md`](https://github.com/phuryn/pm-skills/blob/main/pm-go-to-market/commands/battlecard.md)** | Defines the `/battlecard` command syntax, argument schema, and user interaction flow. |
| **[`pm-go-to-market/skills/competitive-battlecard/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-go-to-market/skills/competitive-battlecard/SKILL.md)** | Contains the skill logic, web-search triggers, research checklist, and markdown template structure. |
| **[`pm-go-to-market/README.md`](https://github.com/phuryn/pm-skills/blob/main/pm-go-to-market/README.md)** | Provides module-level documentation listing the `competitive-battlecard` capability among other go-to-market tools. |

## Summary

- The **`/battlecard`** command in `phuryn/pm-skills` automates competitive intelligence gathering and battlecard creation.
- The architecture separates the **command layer** ([`battlecard.md`](https://github.com/phuryn/pm-skills/blob/main/battlecard.md)) from the **skill layer** ([`competitive-battlecard/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/competitive-battlecard/SKILL.md)) for maintainability.
- Execution triggers automated **web-search** research followed by templated markdown generation.
- Output includes structured comparison tables, objection handling, and win/loss analysis ready for sales teams.
- Files reside under the `pm-go-to-market/` path and integrate with tools like Notion and Confluence.

## Frequently Asked Questions

### What information do I need to provide when running the /battlecard command?

You must provide a **product-vs-competitor pair** (e.g., `OurProduct vs CompetitorName`). Optionally, you can specify buyer personas, market segments, or upload win/loss data files to enrich the research phase. The command parses these arguments to tailor the web search and final battlecard content.

### How does the competitive-battlecard skill gather competitor data?

The skill triggers an automated **web-search** step that queries current sources for product features, pricing, positioning statements, recent news, and user reviews. According to the [`SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/SKILL.md) implementation, this research checklist ensures the generated battlecard reflects up-to-date market intelligence rather than static databases.

### Can I customize the battlecard template output?

The battlecard follows a predefined markdown template defined in **[`pm-go-to-market/skills/competitive-battlecard/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-go-to-market/skills/competitive-battlecard/SKILL.md)**, which includes standard sections like company overview, comparison tables, and objection handling. While the template structure is standardized, the content is dynamically generated based on your specific matchup and uploaded materials.

### Where can I share the generated battlecard?

The command outputs raw markdown that you can copy directly into **Notion**, **Confluence**, or any documentation platform that supports markdown. The file is also saved locally, allowing direct distribution to sales teams or import into other content management systems.