b6fd5ff406
- Fix plugin.json hooks field from invalid array to empty object - Add Claude Code plugin install above ClawHub badge - Version bump to v2.9.5 with new features block (Bluesky, comparative mode, ScrapeCreators X, per-project env, expanded tests) - Add Bluesky to all source list references - Document BSKY_HANDLE/BSKY_APP_PASSWORD env vars in install + optional sections Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
76 lines
3.1 KiB
Markdown
76 lines
3.1 KiB
Markdown
---
|
|
title: "docs: v2.9.5 README update, plugin.json fix, Claude Code install above fold"
|
|
type: docs
|
|
status: completed
|
|
date: 2026-03-09
|
|
---
|
|
|
|
# docs: v2.9.5 README update, plugin.json fix, Claude Code install above fold
|
|
|
|
Three things in one commit:
|
|
|
|
## 1. Fix plugin.json hooks field (Issue #62)
|
|
|
|
**Bug:** `"hooks": ["./hooks/"]` should be `"hooks": {}`. Array format is invalid per Claude Code plugin manifest schema. No hooks directory exists anyway.
|
|
|
|
**File:** `.claude-plugin/plugin.json:25`
|
|
|
|
**Fix:** Change `"hooks": ["./hooks/"]` to `"hooks": {}`
|
|
|
|
## 2. Add Claude Code install above ClawHub
|
|
|
|
Currently the README opens with ClawHub badge + install. User wants Claude Code (the default/best way) to be equally prominent ABOVE ClawHub.
|
|
|
|
**Add before the ClawHub badge:**
|
|
```
|
|
### Claude Code (recommended)
|
|
/plugin marketplace add mvanhorn/last30days-skill
|
|
/plugin install last30days@last30days-skill
|
|
```
|
|
|
|
This matches the Installation section further down but puts it above the fold where people actually see it.
|
|
|
|
## 3. Update README to v2.9.5
|
|
|
|
**Header:** Change `v2.9.1` to `v2.9.5`
|
|
|
|
**Source list:** Add "Bluesky" everywhere sources are listed (currently says "Reddit, X, YouTube, TikTok, Instagram, Hacker News, Polymarket, and the web")
|
|
|
|
**New in v2.9.5 block** (replace the v2.9.1 block):
|
|
|
|
Features shipped since v2.9.1:
|
|
- **ScrapeCreators X backend** (`4b7087e`) - X/Twitter search now uses ScrapeCreators as a backend option alongside Bird cookies
|
|
- **Bluesky/AT Protocol** (`9a1059e`, `adb5a67`) - New social source with full pipeline (search, parse, normalize, score, dedupe, render). Opt-in via `BSKY_HANDLE` + `BSKY_APP_PASSWORD` app password
|
|
- **Comparative mode** (`ecf90c0`) - "X vs Y" queries run 3 parallel research passes and output side-by-side comparison
|
|
- **Per-project .env config** (PR #59) - `.last30days.env` in project root for per-project API keys
|
|
- **SessionStart config check** (PR #58) - Validates config on session start
|
|
- **Expanded test coverage** (PRs #56, #57) - Unit tests for untested modules + smoke tests + edge cases
|
|
- **Claude Code marketplace plugin** (`627947f`) - Install via `/plugin install`
|
|
- **Gemini CLI extension** (`2f16ff1`) - `gemini extensions install`
|
|
|
|
**Env vars section:** Add `BSKY_HANDLE` and `BSKY_APP_PASSWORD` to the optional keys table
|
|
|
|
## Files to Change
|
|
|
|
| File | Change |
|
|
|------|--------|
|
|
| `README.md` | Version bump, Claude Code above fold, new features, Bluesky in source lists, env vars |
|
|
| `.claude-plugin/plugin.json` | Fix hooks field |
|
|
|
|
## Acceptance Criteria
|
|
|
|
- [x] `"hooks": {}` in plugin.json (fixes #62)
|
|
- [x] Claude Code plugin install appears ABOVE ClawHub badge
|
|
- [x] README says v2.9.5
|
|
- [x] "New in v2.9.5" block lists all features since v2.9.1
|
|
- [x] Bluesky appears in source list references
|
|
- [x] BSKY_HANDLE/BSKY_APP_PASSWORD documented in env vars
|
|
- [ ] Plugin installs successfully after fix
|
|
|
|
## Sources
|
|
|
|
- Issue #62: https://github.com/mvanhorn/last30days-skill/issues/62
|
|
- Issue #63: https://github.com/mvanhorn/last30days-skill/issues/63 (skipped - score 4/10, niche)
|
|
- Recent commits: `4b7087e`, `9a1059e`, `ecf90c0`, `adb5a67`
|
|
- PRs #56-#59 merged since v2.9.1
|