Skip to content

Agent Skill (Claude Code / Cursor / Copilot)

The BlogShoot Agent Skill lets any AI coding agent that supports the Agent Skills standard drive the full BlogShoot pipeline directly from a conversation: discover keywords, generate articles, monitor progress, and push to CMS — all from natural-language prompts.

It’s a thin, zero-dependency wrapper around the Open API, exposed as a single bundled script the agent calls via Bash.

  • Developers building blogs / docs sites who want their AI editor to manage content end-to-end
  • Solo operators running a small portfolio of sites
  • Anyone who’d rather say “Generate three Listicle articles about cross-border e-commerce and push them to WordPress as drafts” than click through the dashboard

For server-to-server automation (a SaaS calling BlogShoot programmatically), use the Open API directly — the skill is for interactive agent sessions, not production pipelines.

The skill follows the open Agent Skills standard, so it works with:

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • 40+ other compliant agents
Terminal window
npx skills add blogshoot/skills

Single dependency: curl (already on every dev machine). jq is optional and falls back gracefully.

  1. Sign up at app.blogshoot.com
  2. Settings → API Keys → Create Key. Select the scopes you’ll use (typically articles:read, articles:write, keywords:read, keywords:write, integrations:write)
  3. Copy the bsk_* value once — it’s only shown at create time
  4. Tell your agent:

Set up BlogShoot with this API key: bsk_your_key

The agent runs blogshoot.sh login bsk_... and verifies with status.

You can also bypass the saved-key flow by exporting BLOGSHOOT_API_KEY in your shell.

AreaCommands
Authlogin, logout, status
Workspaceworkspace
Articlesarticles-list, articles-get, research-topic, generate, articles-progress, articles-retry
Keywordskeywords-list, keywords-discover
Plannerplanner-show, planner-refill
Publishpush-wordpress

Each command is one HTTP call against the Open API; the agent never has to know the URL structure.

Topic research + generation

Research the topic “best b2b saas tools 2026”, show me the top SERP titles, then generate a Listicle article from the highest-opportunity angle.

The agent runs:

blogshoot.sh research-topic "best b2b saas tools 2026"
blogshoot.sh generate "best b2b saas tools 2026" "12 Best B2B SaaS Tools That Actually Scale in 2026" Listicle

Keyword scouting + bulk generation

Discover keywords for my workspace, then start generating Explainer articles for the top three by opportunity score.

blogshoot.sh keywords-discover "cross-border ecommerce, dropshipping, b2b saas"
# wait for completion
blogshoot.sh keywords-list
# agent picks top 3 by opportunity_score
blogshoot.sh generate "<kw 1>" "<auto title>" Explainer
blogshoot.sh generate "<kw 2>" "<auto title>" Explainer
blogshoot.sh generate "<kw 3>" "<auto title>" Explainer

Progress polling + publish

Check on the most recent article and push it to WordPress as a draft when it’s ready.

blogshoot.sh articles-list
blogshoot.sh articles-progress <id> # loops until status="Ready"
blogshoot.sh push-wordpress <id> draft

After installation:

~/.config/blogshoot/config # Saved API key (chmod 600 — never log)
<skill dir>/scripts/blogshoot.sh # The bundled curl wrapper

You can call the script directly from any shell — it’s a normal CLI, not agent-only:

Terminal window
~/.skills/blogshoot/scripts/blogshoot.sh status
~/.skills/blogshoot/scripts/blogshoot.sh keywords-list

The skill currently uses your workspace’s default language / target_market. To run multilingual workflows from a single workspace (e.g. discover both English and Chinese keywords), use the Open API directly — keywords-discover parameter overrides are tracked in skill roadmap.

For the architecture rationale, see Multilingual integration.

  • The script never echoes your API key to logs (it lives in $CONFIG_FILE with chmod 600)
  • Revoking a leaked key in Settings → API Keys invalidates it immediately — no need to upgrade the skill
  • Scopes attached to the key strictly limit what the agent can do. If you only granted articles:read, no generate call from the agent can charge your account