Files
my-vault/.scripts
windyboy f77a4afd50 security: widen verifier (openssh/hyphenated-sk/ctx7sk/credential-assign/telegram/conn-string), fix GIT_WORKFLOW guidance
- BEGIN [A-Z0-9 ]*PRIVATE KEY now covers OPENSSH/RSA/EC variants
- sk- patterns tolerate hyphens and prefixed families (ctx7sk-)
- credential-assign catches PASSWORD=/token:/|API_KEY| tables (placeholder-aware)
- telegram bot tokens + connection strings with embedded passwords
- .obsidian/** third-party plugin code excluded from value scan (noise)
- regression: all 12 files named in REVIEW-FOLLOWUP now flagged
- GIT_WORKFLOW: drop git add . / Windows path, add verifier step,
  note force-push exception for the one-time history rewrite
2026-09-26 12:09:11 +08:00
..

Scripts Directory

Helper scripts for vault automation and web content capture.

Available Scripts

Attachment Management

These are primarily called via npm/pnpm commands in package.json:

  • update-attachment-links.js - Updates note links after moving attachments
  • fix-renamed-links.js - Fixes links after renaming files

Web Content Capture

Note: These scripts require API keys to function:

firecrawl-scrape.sh

Scrapes a single URL and saves as markdown.

# Requires FIRECRAWL_API_KEY environment variable
.scripts/firecrawl-scrape.sh <url> <output_file>

firecrawl-batch.sh

Scrapes multiple URLs and auto-generates filenames.

# Requires FIRECRAWL_API_KEY environment variable

# Basic usage - saves to 00_Inbox/Clippings/
.scripts/firecrawl-batch.sh <url1> <url2> <url3>

# Custom output directory
.scripts/firecrawl-batch.sh -o 01_Projects/Research/ <url1> <url2>
.scripts/firecrawl-batch.sh --output-dir 03_Resources/Articles/ <url1> <url2>

Transcript Extraction

transcript-extract.sh

Extracts transcripts from YouTube videos.

# Basic usage - saves to 00_Inbox/Clippings/
.scripts/transcript-extract.sh <youtube-url>

# Custom output directory
.scripts/transcript-extract.sh <youtube-url> 01_Projects/Research/

NPM Scripts

Run these from the vault root with pnpm:

Command Description
attachments:list Show first 20 unprocessed attachments
attachments:count Count unprocessed attachments
attachments:organized Count files in Organized folder
attachments:unprocessed Same as count
attachments:refs <file> Find references to a specific file
attachments:sizes Show 20 largest attachment files
attachments:orphans Find unreferenced attachments
attachments:recent Show files added in last 7 days
attachments:create-organized Create the Organized subfolder

Setup Requirements

For Web Scraping

  1. Get a Firecrawl API key from firecrawl.dev
  2. Add to your shell profile:
    export FIRECRAWL_API_KEY="your-key-here"
    

For Transcript Extraction

  • Requires yt-dlp and jq installed:

    # macOS
    brew install yt-dlp jq
    
    # Linux
    apt-get install yt-dlp jq
    

Adding Custom Scripts

  1. Create script in .scripts/
  2. Make it executable: chmod +x .scripts/your-script.sh
  3. Add npm script to package.json if needed
  4. Document here

Notes

  • Scripts assume Unix-like environment (macOS/Linux)
  • Windows users may need WSL or Git Bash
  • All paths are relative to vault root
  • Check script comments for additional requirements