Skip to content

feat: add evidence-led competitor research skill 🤖🤖🤖 - #4098

Open
jacobGor123 wants to merge 3 commits into
github:mainfrom
jacobGor123:feat/competitor-research
Open

jacobGor123 wants to merge 3 commits into
github:mainfrom
jacobGor123:feat/competitor-research

Conversation

@jacobGor123

@jacobGor123 jacobGor123 commented Sep 28, 2026 •

Copy link
Copy Markdown

Description

Add a competitor-research skill for developers evaluating a competitor's launch and acquisition claims before choosing a growth experiment. It keeps a dated source ledger, separates observed facts from attributed claims and estimates, and proposes at most three small tests under the user's constraints.

A typical failure this addresses: treating directory crawler dates as a coordinated launch, installation counts as customers, and company revenue as product MRR. The bundled evidence guide requires matching definitions, product scope and dates before making those comparisons.

How it differs from existing skills

  • competitor-ad-intelligence focuses on advertising creative and campaign intelligence. This skill covers product history, organic distribution and acquisition-evidence interpretation.
  • gtm-product-led-growth designs a product's growth strategy. This skill reconstructs evidence about an external competitor and identifies what is transferable.

Validation

  • Skill Creator quick validation passed.
  • npm run skill:validate: all 424 skills passed.
  • npm start: passed; the generated skills index contains the new entry. The agent index also includes six existing MCP registry links emitted by the generator, required for the repository regeneration check.
  • npm run plugin:validate: passed, with existing external-catalog warnings.
  • Line endings normalized and git diff --check passed.
  • GitHub Copilot CLI 1.0.88, default Auto selection reported gpt-6-luna, 2026-09-28: skill loaded from the project directory and both bundled references were read. Exit code 0. Only skill activation and read-only tools were available; built-in MCP servers were disabled.

The runtime evaluation used synthetic, supplied material: a May founder launch announcement; eight directory URLs first seen on the same August date; 12,000 installations without unique-user definitions; $2,000 August company revenue spanning a tool and consulting; and a free local skill with an optional $20/month service. The request asked whether this proved a coordinated August launch producing $2,000 MRR.

The response explicitly used supplied-materials-only scope, cited the supplied filenames, rejected crawler-date launch attribution and MRR/installation-to-paid inferences, and proposed two conditional experiments under the user's constraints. It did not transfer the competitor's $20 price or presume the user had an authenticated paid service. A second synthetic URL-only fixture, with no browsing or page contents, correctly declined to invent a growth history and requested a dated source excerpt. It made no external requests or changes. This validates the supplied-materials workflow, not comprehensive live-web retrieval quality.

This contribution and its output assessment were prepared with AI assistance. The test above is an automated Copilot runtime evaluation, not a human usability study. Maintainer review of usefulness, evidence handling, and repository fit is requested.

Exact synthetic test prompt and response

Prompt

This is a synthetic evaluation fixture, not real-company research. Explicitly activate the competitor-research skill installed in .github/skills, then answer the following request. Do not modify files.

Use competitor-research. I build a developer tool and have $100 and two weeks to test one acquisition idea. Use only the supplied materials below; do not browse or contact anyone.

- `launch-note.md`: dated 2026-05-12, founder says “We launched today.”
- `directory-export.csv`: eight directory URLs, all first-seen 2026-08-01. Export does not include publication dates, traffic or conversions.
- `install-stats.txt`: observed 2026-09-20, 12,000 installations. No unique-user, cohort or activity definitions.
- `founder-update.md`: published 2026-09-21, founder says “Our company made $2,000 in August; we offer this tool and consulting.” No recurring-versus-one-off split or attribution.
- `pricing-extract.md`: observed 2026-09-20, free local skill, optional authenticated data service at $20/month.

Was August a coordinated directory launch that produced $2,000 MRR? Should I copy it? Give a short cited brief with source limitations and at most three experiments.

Response

Finding: The supplied evidence does not establish that August was a coordinated directory launch or that the product generated $2,000 MRR. Don’t copy that story as a proven acquisition play. This is a supplied-materials-only brief; no browsing or contact was used.

  • Timeline and claims: The founder said “We launched today” on 2026-05-12; that supports a launch announcement on that date, not necessarily first availability (launch-note.md). The directory export lists eight URLs, each first-seen 2026-08-01, but has no publication dates, traffic, or conversions; that does not establish an August launch or coordination (directory-export.csv). On 2026-09-21, the founder reported the company made $2,000 in August from the tool and consulting. With no recurring/one-off split or attribution, this is an attributed company-revenue claim—not evidence of product MRR or directory-driven revenue (founder-update.md).
  • Product and traction: As observed 2026-09-20, the offer is a free local skill and an optional authenticated data service at $20/month (pricing-extract.md). The reported 12,000 installations, observed the same day, have no unique-user, cohort, or activity definitions; they cannot establish active users, paid subscribers, or conversion (install-stats.txt).

Experiments for your $100 / two weeks—treat these as channel hypotheses, not tactics validated by the materials:

  1. Test directory discovery: If relevant free directories exist for your tool, list in one or two and use separate tracked links. Spend $0; review after 14 days. Measure qualified first use, not listing count or clicks. Don’t pay for placement without conversion evidence.
  2. Test your own free-to-paid path: If your product has a comparable free/paid boundary, track visits through first successful use to a paid-action or upgrade-intent signal. Review after two weeks; if traffic is too low to distinguish results, call it inconclusive rather than infer a conversion rate.

Bottom line: The materials show directory presence, installations, a founder-reported revenue figure, and a pricing structure—but no evidence connecting them.

Pull Request Checklist

  • Read and followed CONTRIBUTING.md.
  • Read the paid-service submission guidance.
  • Added the skill in the correct directory with the required naming and structure.
  • Tested with GitHub Copilot CLI (automated fixture described above).
  • Ran npm start and verified the generated skills index.
  • Targets main.

Type of Contribution

  • New skill file.

Additional Notes

Affiliation: contributed from Tracetify's open-source skills, adapted from this MIT-licensed version. Attribution and licensing are retained. Vendor-specific connector guidance is omitted; public-source and supplied-material research work without a Tracetify account, API key or connector.

The contribution follows the Code of Conduct and is licensed under MIT.

@github-actions github-actions Bot added new-submission PR adds at least one new contribution skills PR touches skills labels Sep 28, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🔒 PR Risk Scan Results

Scanned 4 changed file(s).

Severity Count
🔴 High 0
🟠 Medium 0
ℹ️ Info 0

✅ No matching risk patterns were detected in changed files.

This is an automated soft-gate report. Findings indicate review targets and do not block merge by themselves.

@github-actions

Copy link
Copy Markdown
Contributor

🔍 Vally Lint Results

✅ All checks passed

Scope Checked
Skills 1
Agents 0
Total 1
Severity Count
❌ Errors 0
⚠️ Warnings 0
ℹ️ Advisories 0

Summary

Level Finding
ℹ️ ✅ competitor-research (2/2 checks passed)
ℹ️ ✓ [spec-compliance] All 1 skill(s) are spec-compliant.
ℹ️ ✓ spec-compliance: All spec checks passed.
ℹ️ ✓ [valid-refs] All file references across 1 skill(s) are valid.
ℹ️ ✓ valid-refs: All file references resolve to existing files within the skill directory.
ℹ️ 1 skill(s) linted, 1 passed
Full linter output
### Linting skills/competitor-research
✅ competitor-research (2/2 checks passed)
    ✓ [spec-compliance] All 1 skill(s) are spec-compliant.
        ✓ spec-compliance: All spec checks passed.
    ✓ [valid-refs] All file references across 1 skill(s) are valid.
        ✓ valid-refs: All file references resolve to existing files within the skill directory.

1 skill(s) linted, 1 passed

@jacobGor123
jacobGor123 marked this pull request as ready for review September 28, 2026 04:31
@github-actions

github-actions Bot commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

🚦 Submission status: ⏳ Awaiting automation

Risk tier: merge-risk:medium — New or substantially changed resource without privileged execution
Required to merge: passing submission-gate checks plus 1 approval from reviewers with write access.

Why this tier
  • Adds 4 file(s), e.g. skills/competitor-research/LICENSE
  • Changes 154 lines (low-risk limit is 40)

Automated checks

Check Status Details
Line endings ✅ Passed Passed · logs
Spelling ✅ Passed Passed · logs
Generated README consistency ✅ Passed Passed · logs
Skill validation ⏳ Pending Waiting for the check to start
Skill lint (vally) ✅ Passed Passed · logs
Risk scan ✅ Passed Passed · logs
Contributor reputation ✅ Passed Passed · logs
Duplicate resource scan ✅ Passed Passed · logs
PR quality signal ⏭️ Skipped Skipped by its workflow · logs
Contributor risk signal 🔧 Infrastructure failure The contributor check succeeded but its result artifact was missing, unreadable, or for another commit · logs

Action needed

  • 🔧 Contributor risk signal hit an automation problem that is not caused by your contribution. Comment /rerun-checks to retry; maintainers are notified if it keeps failing.

Review

  • Approvals: 0/1
  • Assigned reviewer: aaronpowell
  • Review target date: not set
  • Still needed: 1 more approval(s)
  • No staffed reviewer pool owns these files yet; any reviewer with write access counts as the domain reviewer.

Commands

Command Who What it does
/rerun-checks PR author, maintainers Re-runs failed or incomplete checks and re-evaluates this gate
/request-review PR author, maintainers Asks the review rotation to assign a reviewer (adds needs-reviewer)

Updated for 1750df3 · This comment is maintained automatically — see submission gate docs.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting-automation merge-risk:medium new-submission PR adds at least one new contribution skills PR touches skills

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant