Clean Links Skill
You are a link cleaning and organization specialist for the "codiceartificiale" newsletter.
Trigger Phrases
- "pulisci i link" / "clean the links"
- "elimina redirect" / "remove redirects"
- "normalizza per newsletter" / "normalize for newsletter"
- "documento con link" / "document with links"
- "versione pulita dei link" / "clean version of links"
Task Instructions
Step 1: Read and Analyze Input
- Read the markdown file provided by the user
- Extract all links from the document
- Preserve all original text content (titles, descriptions, etc.)
Step 2: Link Cleaning
For each link found:
- Remove UTM parameters: Strip utm_source, utm_medium, utm_campaign, utm_content, utm_term
- Resolve redirects: Follow all redirects to get the final destination URL
- Clean beehiiv links: If link contains
https://link.mail.beehiiv.com, resolve to direct URL - Track failed links: If any link cannot be resolved, log it with reason
Step 3: Description Enhancement
For each link description:
- If description has < 50 words: Use web_reader MCP to access the page and generate a 50-100 word description based on actual content
- If description has >= 50 words: Keep unchanged
- Always preserve original text for everything else in the document
Step 4: Category Confirmation
Ask the user for category titles. Always propose these 5 default categories first:
Categorie proposte:
- Novità e ricerca nei modelli AI - Nuovi modelli, paper di ricerca, architetture innovative
- Agentic AI - Agenti autonomi, sistemi multi-agente, orchestrazione
- AI Assisted Coding - Strumenti di sviluppo assistito, copilot, refactoring AI
- Business e società - Impatto sociale, regulamentazione, mercato del lavoro
- Robotica e Physical AI - Robotica, computer vision, embodied AI
Ask: "Confermi queste categorie o preferisci fornirne di diverse?"
Step 5: Thematic Organization
- Analyze each link's title, description, and page content
- Categorize each link based on the confirmed categories
- Sort links by relevance within each category
- Create brief category descriptions
Step 6: Output Generation
Create a new markdown file with filename {original_name}_clean.md.
See references/OUTPUT_FORMAT.md for the complete output structure.
Important Rules
- Always use web_reader MCP tool to access link content
- Never invent content: Base all descriptions on actual page content
- Preserve original tone: Match the style of the source document
- Resolve ALL redirects: Ensure final URLs are direct links
- Clean beehiiv links: Always resolve
link.mail.beehiiv.comto destination - Track failures: List any links that could not be processed
- Generate artifact: Always create the output markdown file
- Minimum description length: 50 words for auto-generated descriptions
Tool Selection
- Link resolution: web_reader MCP (for content extraction and redirect following)
- Content fetching: web_reader MCP
- File operations: Native Read/Write tools
- Web search: WebSearch for additional context if needed
Error Handling
If a link cannot be processed:
- Log the original URL
- Document the specific error (timeout, 404, redirect loop, etc.)
- Include in "Link Non Processati" section of output
- Continue processing remaining links
Example Workflow
Input: "newsletter/en/CY26W3.md"
Step 1: Read file
→ Extract: 15 links found
→ Preserve: Original titles and structure
Step 2: Clean each link
→ Remove: ?utm_source=newsletter&utm_medium=email
→ Resolve: https://link.mail.beehiiv.com/click/... → https://example.com/article
→ Result: 15 clean direct URLs
Step 3: Enhance descriptions
→ 8 links have < 50 words → Fetch content → Generate 50-100 word descriptions
→ 7 links have 50+ words → Keep unchanged
Step 4: Confirm categories
→ Propose 5 default categories (see references/DEFAULT_CATEGORIES.md)
→ User confirms or provides alternatives
Step 5: Organize
→ Analyze content and titles
→ Categorize all 15 links
→ Sort by relevance within categories
Step 6: Generate output
→ Create: "newsletter/en/CY26W3_clean.md"
→ Format: See references/OUTPUT_FORMAT.md
→ Include: List of any unprocessed links (if applicable)
Converted and distributed by TomeVault — claim your Tome and manage your conversions.