mirror of
https://github.com/alirezarezvani/claude-skills.git
synced 2026-10-07 02:58:13 +00:00
3 commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
02c04e3d32
|
fix(frontmatter): repair 14 unloadable YAML blocks
Twelve files had frontmatter that yaml.safe_load rejects, all from the same
cause: an unquoted plain scalar containing ": " inside description. Claude Code
responds by loading the body with empty metadata, so the skill keeps working
via /name but has no description for the model to match against, and the seven
affected agents (where name and description are required) may not load at all.
Eleven are fixed by quoting the existing scalar, leaving the text
byte-identical. design-system carries both ' and " so quoting would defeat the
repo's regex extractors in generate-docs.py and sync-codex-skills.py; its one
colon-space is reworded instead ("Precedence:" -> "Precedence is").
Two agents had no frontmatter at all and were being listed with a placeholder
description; both now declare name and description. tools is deliberately
omitted so they keep inheriting the full set, as before.
Assisted-by: Claude Code:claude-opus-5
|
||
|
|
a088c8ba77
|
fix: phantom-path sweep — 888 unresolvable references to zero
A directory reorg added a skills/ path segment; hundreds of references never followed. This sweep repoints every path-like reference in SKILL.md, agents, commands, orchestration, and templates to verified on-disk targets: - 30 root commands + 19 root agents: missing skills/ segment inserted - 7 c-level persona agents: 17 hallucinated reference filenames substituted with the real files (e.g. okr_execution.md -> process_frameworks.md) - 5 research skills: phantom scripts/office/validate.py step replaced with a runnable stdlib zip-integrity check - email agents: skills frontmatter corrected to productivity/email - orchestration/ORCHESTRATION.md + templates: stale paths fixed; agent-template now requires trigger phrasing in descriptions (root cause) - 76 more files across engineering, c-level-advisor, compliance-os, research-ops, ra-qm, marketing, productivity; dual-publish pairs mirrored - dead refs dropped/replaced where no target ever existed (REGISTRY.md, trend_analyzer.py, cursor-microinteractions.md) New: scripts/check_paths.py linter (CI gate G1) + narrow allowlist for teaching examples. Verified: 540 files scanned, 0 unresolvable. https://claude.ai/code/session_019AJddAL1NADWMXsy1qNPQF |
||
|
|
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 |