From pr-media-work
Provision a new pr-media-work workspace on disk. Use when the user wants to start a new PR/media-monitoring project (media monitoring archive, PR response workspace, or comms strategy workspace). Accepts a workspace name and optional variant (media-monitoring | pr-response | comms-strategy). Scaffolds the workspace, personalises CLAUDE.md from the user's global memory, and (by default) creates a GitHub repo.
npx claudepluginhub danielrosehill/claude-code-plugins --plugin pr-media-workThis skill is limited to using the following tools:
Creates a new workspace for PR/media work. This plugin's commands (`/pr-media-work:scan-coverage`, `/pr-media-work:media-fetch`, `/pr-media-work:comms-initialize`, etc.) are globally available once installed — this skill only provisions the **data scaffold** (CLAUDE.md, context/, outputs/, etc.) that those commands read from and write to.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Automates semantic versioning and release workflow for Claude Code plugins: bumps versions in package.json, marketplace.json, plugin.json; verifies builds; creates git tags, GitHub releases, changelogs.
Creates a new workspace for PR/media work. This plugin's commands (/pr-media-work:scan-coverage, /pr-media-work:media-fetch, /pr-media-work:comms-initialize, etc.) are globally available once installed — this skill only provisions the data scaffold (CLAUDE.md, context/, outputs/, etc.) that those commands read from and write to.
$ARGUMENTS is parsed as:
~/repos/github/my-repos.--variant=<media-monitoring|pr-response|comms-strategy> (optional): which scaffold to copy. Default: media-monitoring.--local-only (optional): skip GitHub repo creation and push. Default: create a public GitHub repo and push.--private (optional): create the GitHub repo as private. Default: public./pr-media-work:new-workspace acme-coverage
/pr-media-work:new-workspace acme-pr --variant=pr-response
/pr-media-work:new-workspace acme-comms --variant=comms-strategy --private
/pr-media-work:new-workspace scratch-monitor --local-only
Extract workspace name, target parent path, variant, and flags from $ARGUMENTS. If workspace name is missing, ask the user for it before proceeding.
The bundled scaffold lives at ${CLAUDE_SKILL_DIR}/../../template/<variant>/. Confirm it exists. If the variant isn't media-monitoring, pr-response, or comms-strategy, tell the user which variants are available.
Read ~/.claude/CLAUDE.md if it exists. Extract OS, locale, timezone, and user identity facts. These will personalise the workspace's CLAUDE.md at step 6.
mkdir -p <target-parent>/<workspace-name>
cp -r ${CLAUDE_SKILL_DIR}/../../template/<variant>/. <target-parent>/<workspace-name>/
Do not copy any .claude/ tree. The plugin's primitives are global.
Open the new workspace's CLAUDE.md and:
Ask the user only for facts this plugin can't infer:
/pr-media-work:media-setup afterwards to build out the full monitoring context./pr-media-work:comms-initialize afterwards for the full interview-based setup.cd <target-parent>/<workspace-name>
git init
git add .
git commit -m "Initial workspace from pr-media-work plugin"
Unless --local-only is set:
gh repo create <workspace-name> --<public|private> --source=. --push
Use --public by default, --private if the flag was passed.
Tell the user:
media-monitoring: /pr-media-work:media-setup, /pr-media-work:media-fetch, /pr-media-work:media-batch, /pr-media-work:scan-coverage, /pr-media-work:summarize-press.pr-response: /pr-media-work:scan-coverage, /pr-media-work:pr-monitor-news, /pr-media-work:draft-response, /pr-media-work:pr-media-pitch, /pr-media-work:pr-build-media-list.comms-strategy: /pr-media-work:comms-initialize, /pr-media-work:comms-refresh-strategy, /pr-media-work:comms-create-campaign, /pr-media-work:comms-client-report.${CLAUDE_SKILL_DIR}/../../template/ (not ${CLAUDE_PLUGIN_ROOT} — that variable isn't exported in skill bash injection, only in hooks/MCP)..claude/commands/, .claude/agents/, or .claude/skills/ into the new workspace. If the user wants workspace-local overrides, they can add them manually later.