Public Relations Manager
by @zhenstaff
AI-powered assistant for PR pros to match media, generate press releases and pitches, and plan multi-week public relations campaigns efficiently.
clawhub install public-relations-managerπ About This Skill
name: public-relations-manager display_name: Public Relations Manager version: 1.0.0 author: ZhenStaff category: productivity tags: - pr - public-relations - media-relations - press-release - content-calendar - media-pitch - marketing - communications license: MIT homepage: https://github.com/ZhenRobotics/openclaw-public-relations-manager repository: https://github.com/ZhenRobotics/openclaw-public-relations-manager
Public Relations Manager π°
> AI-Powered Public Relations Assistant for OpenClaw
Version: 1.0.0 | Status: Production Ready β
π Description
Public Relations Manager is a comprehensive AI-powered public relations assistant that helps PR professionals, marketers, and founders manage their media relations, create compelling content, and plan strategic campaigns.
Perfect for:
β¨ Core Features
1. π― Media Matching Engine
Intelligently match your story with the right journalists and media outlets using a 4-dimensional AI scoring algorithm:Recommendation Levels:
2. π° Press Release Generation
Generate professional press releases for:Each template includes:
3. βοΈ Media Pitch Creation
Create personalized media pitches with:4. π Campaign Planning
Plan comprehensive PR campaigns with:π¦ Installation
From PyPI (Recommended)
pip install openclaw-public-relations-manager
From ClawHub
clawhub install public-relations-manager
From GitHub Source
git clone https://github.com/ZhenRobotics/openclaw-public-relations-manager
cd openclaw-public-relations-manager
pip install -e .
π Quick Start
from pr_manager import PRManager, MediaCategoryInitialize PR Manager
pr = PRManager()Load sample media database (5 outlets + 5 journalists)
from pr_manager.data import load_sample_media_database
outlets, journalists = load_sample_media_database()
for outlet in outlets:
pr.add_media_outlet(outlet)
for journalist in journalists:
pr.add_journalist(journalist)Match a story to relevant media
result = pr.match_story_to_media(
story_title="Company Raises $10M Series A",
story_categories=[MediaCategory.TECH, MediaCategory.STARTUP],
min_score=60.0
)print(f"Found {len(result.matches)} relevant media contacts")
for match in result.get_top_matches(5):
print(f"{match.target_name}: {match.overall_score}/100")
π Usage Examples
Example 1: Generate Press Release
# Generate a product launch press release
press_release = pr.generate_product_launch_pr(
company_name="YourCompany",
product_name="YourProduct",
key_benefit="streamline team collaboration",
problem_solved="the challenge of remote coordination",
key_features=[
"Real-time collaboration",
"AI-powered automation",
"Enterprise security"
],
availability="available immediately",
pricing="Starting at $99/month",
quotes=[
{
"speaker": "CEO Name",
"title": "CEO",
"company": "YourCompany",
"text": "This is a game-changer for our industry."
}
],
boilerplate="About YourCompany: Leading software provider...",
contact_info={"Name": "PR Team", "Email": "pr@company.com"},
location="San Francisco, CA"
)Save as markdown
with open("press_release.md", "w") as f:
f.write(press_release.to_markdown())
Example 2: Quick Match and Pitch Workflow
# Match story to journalists and generate pitches in one step
results = pr.quick_match_and_pitch(
story_title="AI Startup Disrupts Industry",
story_categories=[MediaCategory.TECH, MediaCategory.STARTUP],
story_hook="Company launches breakthrough AI technology",
story_details="The platform automates complex workflows...",
why_relevant="This aligns with your AI coverage.",
top_n=5
)Review and send to top 5 matched journalists
for journalist, pitch in results:
print(f"\nTo: {journalist.email}")
print(f"Subject: {pitch.subject_line}")
print(pitch.to_email())
Example 3: Plan PR Campaign
from datetime import date, timedeltaCreate a 6-week product launch campaign
campaign = pr.create_campaign(
name="Product Launch Q2",
goal="product_launch",
description="Comprehensive launch campaign",
start_date=date.today() + timedelta(days=14),
duration_weeks=6,
target_categories=[MediaCategory.TECH, MediaCategory.BUSINESS],
key_messages=[
"Revolutionary AI technology",
"10x productivity improvement",
"Enterprise-ready security"
],
budget=75000
)Get AI-suggested content for the campaign
planner = pr.calendar_planner
suggestions = planner.suggest_campaign_content(campaign)for suggestion in suggestions:
print(f"{suggestion['title']} - {suggestion['content_type'].value}")
π Sample Database
The skill includes realistic sample data:
Media Outlets (5):
Journalists (5):
π§ͺ Testing
Run the comprehensive test suite:
python test_pr_manager.py
All 6 core tests pass with 100% success rate:
π§ Parameters & Configuration
MediaCategory Enum
MediaCategory.TECH # Technology
MediaCategory.STARTUP # Startups & entrepreneurship
MediaCategory.BUSINESS # General business
MediaCategory.FINANCE # Finance & investment
MediaCategory.CONSUMER # Consumer products
MediaCategory.ENTERPRISE # Enterprise software
MediaCategory.LIFESTYLE # Lifestyle & culture
MediaCategory.HEALTH # Healthcare & wellness
InfluenceLevel Enum
InfluenceLevel.TOP_TIER # Major outlets (NYT, WSJ, TechCrunch)
InfluenceLevel.MID_TIER # Industry publications
InfluenceLevel.NICHE # Specialized blogs/newsletters
InfluenceLevel.EMERGING # New/growing platforms
πΊοΈ Roadmap
v1.1 (Planned)
v1.2 (Planned)
v2.0 (Future)
π Resources
π€ Support
π License
MIT License - Open source and free to use
π₯ Credits
Author: Justin Wang Co-Author: Claude Sonnet 4.5 Organization: ZhenRobotics
π Technical Details
π― Best Practices
For PR Professionals
1. Build your media database gradually 2. Track journalist response rates 3. Personalize every pitch 4. Follow up strategicallyFor Startups
1. Prepare boilerplate and quotes in advance 2. Time announcements strategically 3. Build relationships before you need them 4. Measure and iterateFor Marketing Teams
1. Plan campaigns 4-6 weeks ahead 2. Align messaging across channels 3. Track all media interactions 4. Maintain consistent brand voiceπ Ready to transform your PR workflow? Install now and start managing media relations like a pro!
clawhub install public-relations-manager