$npx -y skills add elvisun/newsjack --skill pr-calendarTurn the Medialyst PR calendar feed into a brand-specific, lead-time-aware plan. Pull source-backed upcoming moments, keep only the few a brand has real standing to own, schedule backward from the event date, screen out tone-deaf hooks, and hand selected moments to angle and jour
| 1 | # PR Calendar |
| 2 | |
| 3 | A PR calendar is the planned half of PR. `newsjack-detector` watches news breaking right now; this skill looks at known upcoming moments and decides which ones this brand should plan around, when pitching should start, and what proof the brand needs before anyone contacts journalists. |
| 4 | |
| 5 | The calendar feed is source-backed, but the value is still judgment. Do not dump a list of dates. Most moments should disappear because the brand has no standing, the hook is too generic, or the moment is unsafe to commercialize. |
| 6 | |
| 7 | This is a MOLECULE. It reads the brand's monitor profile, queries the calendar API through the CLI, cuts the feed to real candidates, checks what kinds of stories landed around last year's version of those moments, and returns a readable plan. It does not write angles or pitches itself, and it persists nothing. |
| 8 | |
| 9 | ## What this skill will not do |
| 10 | |
| 11 | - It will not promise a magical best day or best time to send a pitch. Use windows, not fake precision. |
| 12 | - It will not list every observance. A weak or generic hook is not a media plan. |
| 13 | - It will not invent dates. Every moment in **Act this week**, **Six-month plan**, **Watch list**, and **Avoid** must come from the calendar feed or from a date the user explicitly supplied. If an obvious anchor is missing from the feed, mention it only under **Gaps & clusters** as "missing from the feed; verify separately before planning." |
| 14 | - It will not run the detector pipeline, coarse relevance filter, story-origin check, or freshness gate. This is a smaller context problem. One careful LLM pass over the calendar results is enough. |
| 15 | |
| 16 | ## Inputs |
| 17 | |
| 18 | 1. **The brand profile.** Reuse the existing monitor profile from `newsjack-setup` or fixture profile JSON. Read company description, topics, search terms, competitors, standing, spokespeople, proof assets, and market. Do not run a new questionnaire unless no profile exists. |
| 19 | 2. **The planning window.** Default to the next six months from today. Long-lead opportunities can already be opening, so do not use a shorter default. |
| 20 | 3. **The calendar feed.** Dated opportunities come from `newsjack pr-calendar query`, which wraps Medialyst's PR calendar API. |
| 21 | |
| 22 | If no profile exists, ask only for the four things needed for judgment: what the brand does, what topics it can credibly speak to, what proof or data it can attach, and which market it pitches into. |
| 23 | |
| 24 | ## Get The Calendar |
| 25 | |
| 26 | Newsjack reaches the PR calendar two ways. Try them in this order and stop at the first one that works: |
| 27 | |
| 28 | 1. **CLI mode (preferred).** Use `newsjack pr-calendar query` when the CLI is installed and authenticated. |
| 29 | 2. **MCP mode (fallback).** If the `newsjack` CLI is not installed or not on PATH but the `medialyst` MCP server is connected, use the MCP PR calendar query tool. It mirrors `POST /api/v1/pr-calendar/query`, so the request fields and response shape are the same as the CLI — only the transport differs. |
| 30 | |
| 31 | The PR calendar endpoint is free to use. It requires Medialyst login only to prevent abuse. If the live path is unauthenticated, connect Medialyst and retry; do not build a fallback calendar from memory. |
| 32 | |
| 33 | ### CLI mode |
| 34 | |
| 35 | Use the repo shim in a source checkout and the installed binary otherwise: |
| 36 | |
| 37 | ```bash |
| 38 | bin/newsjack --version |
| 39 | newsjack --version |
| 40 | ``` |
| 41 | |
| 42 | If the command is unauthenticated and you have shell access, run: |
| 43 | |
| 44 | ```bash |
| 45 | newsjack login |
| 46 | ``` |
| 47 | |
| 48 | Tell the user to open the printed Medialyst link and approve `newsjack CLI`, then retry the calendar query. |
| 49 | |
| 50 | Then query one broad six-month window per profile: |
| 51 | |
| 52 | ```bash |
| 53 | newsjack pr-calendar query --from <YYYY-MM-DD> --to <YYYY-MM-DD> \ |
| 54 | --industry <tech|fin|health|retail|media|food> \ |
| 55 | --limit 100 |
| 56 | ``` |
| 57 | |
| 58 | Use `--query` only when it helps without over-narrowing. Keep it short and broad, usually one or two words. For a developer-tools or AI-software profile, `--industry tech` is often better than packing the whole topic list into `--query`. Over-specific queries can hide useful conferences and seasonal hooks. |
| 59 | |
| 60 | Do not use `--country-code` by default. Add it only when the user explicitly wants a local calendar, because many global events do not carry a country code. |
| 61 | |
| 62 | For exact API-shape |