Google Blogger

v1.0.0

Blogger API CLI for managing blog posts. Post, edit, delete, list, and monitor Blogger blogs. Use when the user wants to: (1) publish blog posts to Blogger,...

0· 272·0 current·0 all-time
bySaiteja mothukuri@saiteja007-mv
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description (Blogger CLI) align with the code and SKILL.md: the scripts call the Blogger API, implement OAuth flows, list/edit/post/delete posts, and include bulk-publish/monitoring tools. The included scripts operate on local HTML and posts.json files (used for bulk publishing), which is reasonable for a tool that publishes local content to Blogger.
Instruction Scope
Runtime instructions ask the user to place Google OAuth credentials at ~/.config/gblog/credentials.json and run `gblog auth`; the scripts will read/write ~/.config/gblog/token.json and a monitor state file, and several helper scripts read/write files under ~/.openclaw/workspace/... (posts.json, html files). This file I/O is consistent with bulk-publish and generation features but means the skill will access and modify local blog content/metadata — users should expect that.
Install Mechanism
No install spec is provided (instruction-only skill with bundled Python scripts). No external arbitrary downloads or extract-from-URL installs were detected. There are optional Python dependencies (README suggests pip install youtube-transcript-api) but nothing in the manifest indicates hidden installers or remote code fetches.
Credentials
The skill does not request unrelated environment credentials. It optionally uses environment variables (GBLOG_CREDENTIALS_PATH, GBLOG_TOKEN_PATH, GBLOG_DEFAULT_BLOG_ID) for convenience; the primary authentication is via Google OAuth stored in local credential/token JSON files. No AWS/other service secrets are requested.
Persistence & Privilege
The skill does persist tokens and state under ~/.config/gblog (token.json, monitor_state.json) which is expected for an OAuth CLI. always:false and no other elevated privileges are requested; the skill does not modify other skills or system-wide agent settings.
Assessment
This skill appears to do what it says: manage Blogger via Google OAuth and local HTML/metadata. Before installing or running it, review these points: (1) OAuth: you must create/download Google OAuth client credentials and the tool will save access/refresh tokens to ~/.config/gblog/token.json — treat that file as sensitive. (2) Local files: bulk/auto-publish scripts read and may update files under ~/.openclaw/workspace/... (posts.json and HTML files) and can modify posts.json if you use the --update-json option — back up those files beforehand. (3) Inspect scripts: the repository is bundled with Python scripts; if you don't trust the source, review them (notably gblog.py implements auth and API calls). (4) Least privilege: create an OAuth client with appropriate scopes and use it only for the blog/account you intend to manage. (5) Minor documentation mismatch: SKILL.md/README mention scripts like auth.py/blogger_api.py while the provided main script is gblog.py (functionality is present but filenames differ) — this is likely benign but worth noting. If you want stronger assurance, run the scripts in a sandboxed environment or inspect the files line-by-line before running authentication or publish commands.

Like a lobster shell, security has layers — review code before you run it.

latestvk975xc9p1k6sab0sxdcrpbvn5d829wkt
272downloads
0stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

gblog - Blogger CLI

Manage Blogger blogs via command line. Supports posting, editing, listing, and monitoring.

Quick Start

# Authenticate with Google
gblog auth

# List your blogs
gblog list-blogs

# List posts from a blog
gblog list-posts --blog-id YOUR_BLOG_ID

# Create a new post
gblog post --blog-id YOUR_BLOG_ID --title "My Post" --content ./post.html

# Edit a post
gblog edit --blog-id YOUR_BLOG_ID --post-id POST_ID --content ./updated.html

# Delete a post
gblog delete --blog-id YOUR_BLOG_ID --post-id POST_ID

Setup

1. Google Cloud Console Setup

  1. Go to Google Cloud Console
  2. Create a project or select existing
  3. Enable Blogger API v3
  4. Go to APIs & Services → Credentials
  5. Create OAuth 2.0 Client ID (Desktop application type)
  6. Add redirect URIs:
    • http://localhost:8085/oauth2callback
    • http://localhost:8080/oauth2callback
  7. Download credentials JSON

2. Local Setup

# Create config directory
mkdir -p ~/.config/gblog

# Save credentials
cp ~/Downloads/client_secret_*.json ~/.config/gblog/credentials.json

# Run authentication
gblog auth

3. Authentication

The first time you run gblog auth, it will:

  1. Open a browser for Google OAuth
  2. Request permissions for Blogger
  3. Save refresh token to ~/.config/gblog/token.json

Commands

Authentication

gblog auth                    # Authenticate with Google
gblog auth --status          # Check auth status
gblog auth --logout          # Clear saved tokens

Blog Management

gblog list-blogs             # List all your blogs
gblog get-blog --id BLOG_ID  # Get blog details

Post Management

# List posts
gblog list-posts --blog-id BLOG_ID

# Create post
gblog post \
  --blog-id BLOG_ID \
  --title "Post Title" \
  --content ./content.html \
  --labels "AI, Tutorial" \
  --draft

# Edit post
gblog edit \
  --blog-id BLOG_ID \
  --post-id POST_ID \
  --title "Updated Title" \
  --content ./updated.html

# Delete post
gblog delete --blog-id BLOG_ID --post-id POST_ID

# Get post
gblog get-post --blog-id BLOG_ID --post-id POST_ID

Monitoring

# Monitor new posts (poll every 5 minutes)
gblog monitor --blog-id BLOG_ID --interval 300

# Get post statistics
gblog stats --blog-id BLOG_ID

HTML Content Format

Posts support full HTML. Example structure:

<div style="font-family: Arial, sans-serif; line-height: 1.8;">
  <h1 style="color: #27ae60;">Post Title</h1>
  
  <p>Your content here...</p>
  
  <div style="background: #f5f5f5; padding: 20px; border-radius: 8px;">
    <h3>Call to Action</h3>
    <a href="...">Subscribe</a>
  </div>
</div>

Configuration Files

FilePurpose
~/.config/gblog/credentials.jsonOAuth client credentials
~/.config/gblog/token.jsonSaved access/refresh tokens
~/.config/gblog/config.jsonUser preferences

Environment Variables

export GBLOG_CREDENTIALS_PATH=/path/to/credentials.json
export GBLOG_TOKEN_PATH=/path/to/token.json
export GBLOG_DEFAULT_BLOG_ID=your-blog-id

Error Handling

Common errors and solutions:

ErrorSolution
invalid_grantRun gblog auth again
insufficient_permissionsCheck Blogger API is enabled
blog not foundVerify blog ID is correct
rate limit exceededWait 60 seconds and retry

API Reference

Uses Blogger API v3:

Scripts

  • scripts/gblog.py - Main CLI script
  • scripts/auth.py - OAuth authentication
  • scripts/blogger_api.py - API wrapper

Powered by Google Blogger API v3

Comments

Loading comments...