mirror of
https://github.com/alirezarezvani/claude-skills.git
synced 2026-10-07 02:58:13 +00:00
2 commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
7405298b4b
|
fix: resolve the actionable reported issues (#954, #949, #933, #931, #969, #968, #924, #885)
- #954: strip non-spec source/attribution keys from all 39 plugin.json manifests so Claude Code's validator accepts them; metadata preserved in new .claude-plugin/authoring-notes.json sidecars; check_plugin_json.py now hard-fails manifests carrying those keys and sanity-checks the sidecar; CLAUDE.md ClawHub schema section updated to the new rule. - #949: move the c-level-agents plugin out of c-level-advisor/ to a top-level directory so the two marketplace sources no longer overlap; updated marketplace.json source, homepage, descriptions, all cross-references, docs, harness manifest, mirror-tree symlinks/indexes, and rebased the moved files' relative links; domain counters trued up (18 -> 19 domains). - #933: replace dead links to the gitignored maintainer-local megaprompts/ tree with annotated plain-text references (44 files: SKILL.md, READMEs, agents, commands). - #931: DynamoDB on-demand pricing updated to post-Nov-2024 rates ($0.625/M writes, $0.125/M strongly consistent reads). - #969: skill_security_auditor.py and the three dossier scripts reconfigure stdout/stderr to UTF-8 (errors=replace) so legacy Windows codepages no longer crash at print time; PYTHONUTF8=1 documented. - #968: Windows Notes section in INSTALLATION.md + README pointer for the core.symlinks mirror-tree checkout caveat. - #924/#885 residuals: hook commands quote "${CLAUDE_PLUGIN_ROOT}" paths in all plugin hooks.json/settings.json (space-safe roots); removed the stale pre-rename status/review mirror symlinks and index entries left over from the memory-status/memory-review rename. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Qgc6RYXWJPr5oW9DHU7zR4 |
||
|
|
ac6db2fab7
|
feat(research): notebooklm — Path-B browser-automation slice from megaprompt 03
Slice 6: browser-automation shape — the only such skill in the v2 collection. Distinct from research-pack convention (no Agent Integrity Rules, no 1 q/sec, no DOCX). Action-routing intake (Q1 picks one of 4 actions). After this merges: 11 of 13 v2 megaprompts shipped. Only Slice 7 (13-research orchestrator) remains. SOURCE SPEC megaprompts/03-notebooklm-megaprompt.md (PR #657). WHAT THE SKILL DOES Controls Google NotebookLM via browser automation. 4 core actions: 1. Read/Extract — chat-based extraction from existing notebook 2. Add Sources — push URL/text/file/Google Doc/synthesized content 3. Studio Outputs — 9 types (Audio Overview, Study Guide, Briefing Doc, Timeline, FAQ, Table of Contents, Infographic, Slides, Mind Map) with MANDATORY custom prompts 4. Create New Notebook — initialize with title + initial sources DOMAIN FOLDER research/. Semantic domain is research (users automate NotebookLM as part of their research workflow). But technical shape is completely different from research-pack siblings — distinct enough that the README + SKILL.md explicitly call out the shape difference. KEY PATH-B PRESERVED ELEMENTS - Critical portability notice at top — requires browser automation; graceful failure in non-automation contexts (Step 0 check) - Action-routing intake: Q1 forces 1-of-4 action commitment; refuses to start without it - Q2-Q4 branch per action (per-source-type for Q3, mandatory custom prompt for Q4 when Studio) - Screenshot-first discipline (NotebookLM is dynamic SPA) - find()-before-click semantic finder discipline - Tool-agnostic vocabulary (no "Claude Chrome Extension" hardcoding) - Never auto-handle login (detect login wall → halt, never type credentials) - Async fire-and-notify pattern for slow Studio ops (Audio Overview 5-10 min, Infographic/Slides/Mind Map 2-5 min) - Studio customization menu MANDATORY (chevron, not main button — defaults produce mediocre output) - File upload via file-upload tool, NOT native picker REPO STRUCTURE research/notebooklm/ ├── .claude-plugin/plugin.json ├── README.md ├── agents/cs-notebooklm.md ← browser-automation persona, │ async-discipline + screenshot │ enforcer ├── commands/cs-notebooklm.md ← /cs:notebooklm └── skills/notebooklm/ ├── SKILL.md ├── references/ │ ├── browser_automation_canon.md ← screenshot-first + │ │ find-before-click + │ │ tool-agnostic (7 sources: │ │ Anthropic Computer Use, │ │ Playwright, Selenium, │ │ WebDriver, MS Power Auto, │ │ ARIA, Anthropic cookbook) │ ├── studio_output_custom_prompts.md ← per-output-type templates │ │ (7 sources: NotebookLM │ │ docs, Anthropic prompt │ │ eng, Refactoring UI, │ │ Gallo Talk Like TED, │ │ Lencioni BLUF, Bloom, │ │ Tufte) │ └── async_action_discipline.md ← fire-and-notify canon │ (7 sources: Anthropic API │ timeouts, NotebookLM │ timing data, Erlang let- │ it-crash, AWS Step │ Functions, Twelve-Factor, │ Node event loop, │ Playwright/Selenium) └── scripts/ ├── action_router.py ← stdlib: Q1-Q4 → action │ plan + UI flow + required │ params + per-source-type │ and per-studio-type │ branching + validation ├── custom_prompt_template_generator.py ← stdlib: output type + │ audience + length + angle │ → starter prompt for 9 │ studio output types └── async_action_classifier.py ← stdlib: action → WAIT (with timeout) or FIRE_AND_NOTIFY (with notify message) 11 files, 2,003 lines. VERIFIED CLEAN All 3 scripts pass smoke tests: - action_router: sample (studio + audio_overview + custom prompt) → correctly identifies FIRE_AND_NOTIFY timing, lists 11-step UI flow, flags critical rule "ALWAYS open customization menu (chevron) — NEVER click main Studio button". Add-source URL action → 3 screenshots, WAIT timing. Validation: studio without ≥30-char custom prompt → FAIL with explicit error. - custom_prompt_template_generator: sample (audio_overview + executive + compact) → produces complete starter prompt naming audience role, length, focus, structural requirements. Study_guide + undergraduate variant correctly applies "Define every technical term. Assume zero specialized background" rule. - async_action_classifier: audio_overview → FIRE_AND_NOTIFY (5-10 min, with notify message template). chat_send → WAIT (3-10s, 30s timeout, 3s polling). infographic → FIRE_AND_NOTIFY (2-5 min). All 16 documented actions routable. All 3 with --output json: valid JSON. plugin.json validates. VERTICAL-SLICE STATUS ✓ Slice 1: capture (PR #659) ✓ Slice 2: pulse (PR #660) ✓ Slice 3: email pair (PR #661) ✓ Slice 4: landing (PR #662) ✓ Slice 5 batch 1: litreview (PR #663) ✓ Slice 5 batch 2: grants + dossier (PR #664) ✓ Slice 5 batch 3: patent + syllabus (PR #666) ✓ Cleanup PR: move pulse + capture (PR #667) ✓ Slice 8: reflect (PR #668) ✓ Slice 6: notebooklm (this PR) ☐ Slice 7: 13-research orchestrator + autoresearch-agent reconciliation 11 of 13 v2 megaprompts shipped after this merge. Only Slice 7 remains, then v2 is complete. NOT DONE IN THIS PR (intentional) - .claude-plugin/marketplace.json not updated (separate concern; done after all 13 ship) - .codex/skills/notebooklm symlink not added (auto-sync workflow handles on merge) https://claude.ai/code/session_01FEUmeuYhmnxVFq7EZM8ZSw |