Add URL to Gen AI Journal
This skill validates and adds URLs to workdesk/sources.md one-by-one. It performs duplication checking but does NOT generate summaries. Use the summarize-source skill separately for summary generation.
When to Use This Skill
Use this skill when the user:
- •Provides URLs to add to the journal
- •Says "add this link" or "add these URLs"
- •Mentions "add to sources" or "gather these links"
- •Provides article links for the weekly journal
Workflow Per URL
CRITICAL: Always ensure you're in the repository root directory before executing any commands.
cd /Users/shootani/Dropbox/github/gen-ai-journal
For each URL provided, execute these steps in sequence:
1. Validate and Check for Duplicates
uv run scripts/check_link.py "URL_HERE"
This script:
- •Validates and sanitizes the URL (removes tracking parameters)
- •Checks for duplicates in:
- •
workdesk/sources.md - •
workdesk/summaries/directory - •Published journals (
journals/*/sources/*.md)
- •
- •Returns the sanitized URL if unique
If duplicate found: Report which file contains it and skip to next URL
If unique: Note the sanitized URL and proceed to step 2
2. Add to sources.md (Unchecked)
- •Read
workdesk/sources.mdto determine the next available ID - •Add the sanitized URL under "## Main List" section with unchecked checkbox:
markdown
- [ ] XXX. https://sanitized-url-here.com
- •Use Edit tool to insert the new entry
- •IDs should be zero-padded 3-digit numbers (001, 002, etc.)
3. Report Progress
After processing each URL, report:
- •Success: "✓ Added as ID XXX (unchecked, ready for summarization)"
- •Duplicate: "✗ Skipped - duplicate found in [location]"
- •Error: "✗ Failed - [error message]"
Batch Processing Strategy
When given multiple URLs:
- •Process each URL completely before moving to next
- •Create TodoWrite entries to track progress (e.g., "Add URLs 1-5", "Add URLs 6-10")
- •Provide running count: "Added 3/10 URLs so far..."
- •At the end, provide summary:
- •Total URLs processed
- •Successfully added (with ID range)
- •Duplicates skipped
- •Any errors
What This Skill Does NOT Do
- •❌ Does NOT generate summaries
- •❌ Does NOT mark URLs as checked/processed
- •❌ Does NOT call call-gemini.py or batch_summarize.py
Use the summarize-source skill after adding URLs to generate summaries.
Key Responsibilities
- •URL Validation: Use check_link.py to validate and sanitize URLs
- •Duplication Checking: Prevent adding duplicate URLs
- •ID Management: Maintain sequential ID numbering
- •File Organization: Add URLs under "## Main List" section with consistent formatting
- •Progress Tracking: Use TodoWrite for batch operations
- •Error Handling: Report failures clearly, continue with remaining URLs
Project Standards
- •Use absolute paths when referencing files
- •Maintain 2-space indentation for Markdown lists
- •IDs must be zero-padded 3-digit numbers (001, 002, 003, etc.)
- •All new entries start as unchecked
- [ ] - •Documentation in English, journal content in Japanese
File Locations
- •Sources list:
workdesk/sources.md - •Validation script:
scripts/check_link.py - •Workflow docs:
workflow/STEP_01_GATHER_SOURCES.md
Error Handling
- •If URL validation fails, report the error and skip to next URL
- •If duplicate found, report which file contains it
- •If Edit operation fails, report and continue with remaining URLs
- •Always complete the workflow for valid, unique URLs
Examples
User provides URLs:
Add these to the journal: - https://example.com/ai-news - https://github.com/blog/copilot
Skill activates and:
- •✓ Validates both URLs using check_link.py
- •✓ Checks for duplicates (none found)
- •✓ Adds to sources.md as 089 and 090 (unchecked)
- •✓ Reports: "Added 2 URLs (089-090). Use summarize-source skill to generate summaries."
Next step (separate):
User or skill invokes summarize-source skill to generate summaries for the unchecked URLs.
Programmatic Usage
For batch URL addition without interactive mode:
# NOT RECOMMENDED - Use the skill for one-by-one addition # For bulk operations, manually edit sources.md or use the skill in a loop
This skill is optimized for interactive, one-by-one URL addition with immediate validation feedback.
Relationship to Other Skills
- •After add-url: Use
summarize-sourceskill to generate summaries - •Before add-url: URLs are typically gathered from various sources (RSS, newsletters, manual curation)
You are detail-oriented and systematic, ensuring each URL is validated and added with proper ID sequencing. You proactively identify duplicates and broken links, preventing issues downstream.