The open-source skills that turn your agent into a full PR team.
Install once. Your agent β Claude Code, Codex, Hermes, OpenClaw β becomes a PR team.
curl -fsSL newsjack.sh | bashAre you an agent? Check out Getting started
Are you a human? π Copy this prompt to any AI:
help me install https://newsjack.sh from the github repo and setup a daily newsjack monitoring for my company.
Jump to platform-specific setup below for per platform breakdown.
Four problems, separate lanes.
Each capability is a skill. Invoke it by name β /angle-generator, /fact-check β
or just describe what you want and your agent picks the right one.
- βοΈ
/newsjack-monitor-setupβ build the monitoring profile once: your standing, beat topics, competitors, proof assets, spokespeople, feeds (local agent only) - π‘
/newsjack-detectorβ find newsjacking opportunities: fresh stories you have the standing to jump on before the wave breaks (see a sample run) - π
/news-searchβ dated, attributed articles on a topic, company, or competitor: when they launch, raise, or stumble, you know - π
/story-origin-checkβ verify the story is still fresh: who broke it, who owns it, what oxygen's left - π§Ή
/relevance-coarse-filterβ cheap high-recall first pass that throws out obvious junk before anything expensive runs - π¦
/newsjack-triageβ route surviving stories by whether you actually have standing: pitch now, watch, or surface as big news - π
/coverage-tracker-setupβ declare the keywords you want watched, and what each one actually means (local agent only) - ποΈ
/coverage-trackerβ Google Alerts-style keyword tracking with LLM filtering for real features, alerting only on genuinely new coverage
- π―
/angle-generatorβ turn one update into hooks framed for different beats - π
/headline-generatorβ headlines and pitch subject lines built from the story's raw facts - π₯
/meanest-editorβ roast your pitch against the rubric editors actually use - π¨
/crisis-holdingβ holding statements, journalist Q&A posture, and what not to say, with a hard legal-counsel gate - ποΈ
/reactive-commentβ triage inbound HARO-style source requests, draft only the real fits - β
/fact-checkβ extract claims, verify each, flag the shaky ones before you send - π€
/journalist-fit-checkβ will this reporter actually care, or are you spamming? - π₯
/same-outlet-rankerβ rank colleagues at the same publication and send to one, instead of spraying the masthead - π£οΈ
/voice-extractorβ fingerprint your real writing, kill the AI tells - π
/find-journalistsβ build a fit-checked media list: targeted reporters, not scraped contact dumps - π°
/press-clipβ turn a live article URL into a branded press-clip PDF: the outlet's own logo and layout kept, ads and clutter stripped, the client's mention highlighted (local agent only)
- πΊοΈ
/pr-strategistβ opinionated walkthrough if you're not PR-fluent yet: audience first, positioning second, news pegs third, drumbeat over big-bang - π
/pr-calendarβ plan six months of source-backed upcoming hooks, with prior-year coverage patterns for angle inspiration - π
/newsworthiness-checkβ cold read on whether it clears the bar before you act
- βοΈ
/ai-visibility-writingβ audit or fact-preservingly revise supplied copy so AI answers can reuse it, without inventing evidence or promising rankings or citations - π§
/build-ai-visibility-panelβ to measure it, run this one first: it drives the six below it in order, turning any public URL and description into an evidence-bound prompt list across intent, journey, B0βB5 proximity, aided status, roles, locales, surfaces, and tracking partitions - π₯
/icp-evidence-analysisβ turn a company and market dossier into testable ideal-customer hypotheses, buying roles, triggers, disqualifiers, and named research gaps - π§©
/buyer-job-intent-analysisβ recover the jobs, struggling moments, workarounds, and authentic buyer language from real customer, review, forum, and search evidence - ποΈ
/prompt-proximity-architectureβ blueprint which prompt cells are required, optional, and prohibited before anyone writes prompt wording - π¬
/realistic-prompt-generationβ write natural prompt variants from a target-blind brief, so the panel isn't quietly written to flatter you - π§ͺ
/prompt-set-qaβ gate the prompt set on provenance, contamination, answer leakage, naturalness, and semantic duplicates, quarantining anything the evidence doesn't support - π
/ai-visibility-panel-designβ select QA-approved prompts into a versioned tracking panel with partitions, surfaces, locales, repetitions, weights, and refresh rules, keeping aided and unaided denominators separate and gating on a human instead of inventing an βAI visibility scoreβ
- Founders doing their own PR because the agency quote was insane
- PR agencies running more accounts than humans can babysit
- Marketers at small companies who need leverage, not headcount
- Anyone whose agent is already running their day-to-day β and should be better at it
Newsjack is a set of open skills β plain-Markdown instructions your agent reads β plus a small open-source CLI. Most skills run anywhere your agent runs. A few reach for a live news index, journalist enrichment, or locally-saved monitoring state β those work best in a local agent.
| Skill | Claude.ai | ChatGPT | ChatGPT Work | Cowork | Claude Code | Codex | Hermes | OpenClaw | Medialyst |
|---|---|---|---|---|---|---|---|---|---|
| Strategize | |||||||||
| pr-strategist | β | β | β | β | β | β | β | β | |
| pr-calendar | π§ | π§ | π§ | π§ | π§ | π§ | π§ | β | |
| newsworthiness-check | β | β | β | β | β | β | β | β | |
| AI visibility | |||||||||
| ai-visibility-writing | β | β | β | β | β | β | β | β | |
| build-ai-visibility-panel | β | β | β | β | β | β | β | β | |
| icp-evidence-analysis | β | β | β | β | β | β | β | β | |
| buyer-job-intent-analysis | β | β | β | β | β | β | β | β | |
| prompt-proximity-architecture | β | β | β | β | β | β | β | β | |
| realistic-prompt-generation | β | β | β | β | β | β | β | β | |
| prompt-set-qa | β | β | β | β | β | β | β | β | |
| ai-visibility-panel-design | β | β | β | β | β | β | β | β | |
| Act | |||||||||
| angle-generator | β | β | β | β | β | β | β | β | |
| headline-generator | β | β | β | β | β | β | β | β | |
| meanest-editor | β | β | β | β | β | β | β | β | |
| crisis-holding | β | β | β | β | β | β | β | β | |
| reactive-comment | β | β | β | β | β | β | β | β | |
| fact-check | β | β | β | β | β | β | β | β | |
| journalist-fit-check | β | β | β | β | β | β | β | β | |
| same-outlet-ranker | β | β | β | β | β | β | β | β | |
| voice-extractor | β | β | β | β | β | β | β | ||
| find-journalists | π§ | π§ | π§ | π§ | π§ | π§ | π§ | β | |
| press-clip | β | β | β | β | β | β | β | β | π |
| Detect | |||||||||
| news-search | β | π§ | π§ | π§ | π§ | π§ | π§ | β | |
| story-origin-check | π§ | π§ | π§ | π§ | π§ | π§ | π§ | β | |
| relevance-coarse-filter | β | β | β | β | β | β | β | β | |
| newsjack-triage | β | β | β | β | β | β | β | β | |
| newsjack-detector | π§ | π§ | π§ | π§ | π | ||||
| newsjack-monitor-setup | β | β | β | β | β | β | β | β | π |
| coverage-tracker | β | β | β | β | π | ||||
| coverage-tracker-setup | β | β | β | β | β | β | β | β | π |
Legend:
- β Runs out of the box β no setup; works anywhere your agent does.
- π§ May need an external connection β requires or does its best work with an external data source connected (e.g. the X API or the Medialyst API).
β οΈ Limited Mode β runs in a chat app, but as a best-effort, one-shot pass with nothing saved between sessions: no stored voice fingerprint, no scheduled monitoring, no repeat-suppression. Connect a local agent for the saved, scheduled version.- π Coming soon β not available here yet.
- β Not supported here β needs a local agent. The two setup skills (
newsjack-monitor-setup,coverage-tracker-setup) only save a profile or config and schedule it;press-clipdrives a real Chrome/Edge browser via Playwright to render and clip the live page, which chat apps can't do.
pr-calendar is setup-required but portable: it works anywhere the agent can use the newsjack CLI or a connected Medialyst MCP/connector. The calendar endpoint is free; login is required only to prevent abuse. Consumer ChatGPT is the exception for now because of the same skill-loading limitation called out above.
Set up your agent:
- Local agents β Claude Code, Codex, Hermes, OpenClaw
- Claude.ai & Cowork β Anthropic plugin + Medialyst connector
- ChatGPT β consumer accounts, no Skills
- ChatGPT Work β Skills beta
Technical? One line on macOS / Linux (review install.sh first if you like):
curl -fsSL newsjack.sh | bashNot technical? π Copy this prompt to any AI:
help me setup https://newsjack.sh
It reads the guide and handles the rest β npm fallback, Windows, credentials β on any platform.
Prefer a video? Watch the Newsjack installation walkthrough.
Install the Newsjack plugin:
- Open Customize.
- Go to Personal plugins.
- Click Create plugin.
- Choose Add marketplace.
- Choose Add from a repository.
- In the repository URL field, enter
elvisun/newsjackand confirm. - Open the new
elvisun/newsjackmarketplace, find thenewsjack@newsjackplugin, and click Install. - (Optional) Unlock the π§ skills by connecting a Medialyst account so your agent can access live news search, PR calendar lookup, and journalist enrichment. In local agent harnesses, run
newsjack loginand approve the printed Medialyst link. If you don't have an account you can create a free one on the Medialyst signup page. - (Optional) Back in Claude, find the Medialyst connector under the installed Newsjack plugin page, click Connect on the Medialyst connector and authorize it over OAuth.
Note: A community marketplace plugin, newsjack@claude-community, is pending review
and will be added soon.
The two always-on monitors run here in
ChatGPT runs Newsjack only in a degraded
ChatGPT Work has the Skills beta, so Newsjack runs there at the same level as
Cowork: everything except the two setup skills and press-clip, which need a
local agent.
~/.newsjack/
βββ bin/newsjack # CLI
βββ newsjack/ # managed bundle
skills installed to your detected runtime(s):
newsworthiness-check score whether your news clears the bar
headline-generator headlines and subject lines from raw story facts
find-journalists build small, fit-checked journalist lists
...and more
The npm package bundles the same CLI and skills, with the newsjack command installed on PATH.
Curl-installed Newsjack auto-updates from the latest GitHub Release before each run. Set NEWSJACK_AUTO_UPDATE=0 to disable.
You can also install the CLI by itself using npm:
npm i -g newsjack@latest