home / skills / kevinslin / llm / find-links

find-links skill

/skills/find-links

This skill identifies placeholder links in markdown and replaces them with authoritative, contextually relevant URLs to improve note accuracy.

npx playbooks add skill kevinslin/llm --skill find-links

Review the files below or copy the command above to add this skill to your agents.

Files (5)
SKILL.md
6.7 KB
---
name: find-links
description: This skill should be used when the user wants to fill in TODO links, placeholder links, or missing links in markdown files. Invoke when the user mentions "fill links", "TODO links", "find links", or asks to add appropriate links to concepts in a document.
---

# Find Links Skill

## Overview

This skill helps identify and fill in TODO or placeholder links in markdown files with appropriate articles from reputable sources. It searches for relevant, authoritative content and replaces placeholder links with actual URLs.

## When to Use This Skill

Trigger this skill when the user:
- Asks to "fill in TODO links" or "fill links"
- Mentions placeholder links like `{TODO}`, `{LINK}`, or similar patterns
- Requests appropriate links for concepts in a document
- Wants to find authoritative sources for topics mentioned in their notes

## Supported Link Patterns

The skill recognizes these common placeholder patterns:
- `{TODO}` - Generic placeholder for missing link
- `{LINK}` - Generic link placeholder
- `{LINK to ...}` - Placeholder with hint about the target
- `[text]({TODO})` - Markdown link with TODO placeholder
- `[text]({LINK})` - Markdown link with LINK placeholder
- `[text]()` - Empty markdown link
- `TODO:` comments near links

## Process

### Phase 1: Scan and Identify

1. Read the target markdown file(s)
2. Identify all placeholder link patterns
3. Extract context around each placeholder:
   - The link text (if present)
   - The surrounding sentence or paragraph
   - Any hints in the placeholder (e.g., `{LINK to movie}`)
4. Create a list of all links that need to be filled

### Phase 2: Research and Find Appropriate Links

For each placeholder link:

1. **Understand the Context**
   - Read the surrounding text to understand what concept is being referenced
   - Note any specific details that help identify the target (movie names, technical terms, etc.)

2. **Search for Authoritative Sources**
   - Use WebSearch to find appropriate articles
   - Prioritize sources in this order:
     1. Wikipedia (for general concepts, people, movies, historical events)
     2. Official documentation (for tools, libraries, frameworks, protocols)
     3. Official project/organization websites (for specific products/services)
     4. Reputable tech blogs/publications (for emerging technologies)
     5. Academic or research sites (for scientific concepts)

3. **Validate the Link**
   - Ensure the link is directly relevant to the context
   - Verify it's from a reputable source
   - Prefer stable URLs (avoid blog posts that might disappear)
   - Check that the link works and goes to the intended content

### Phase 3: Fill in the Links

1. **Replace Placeholders**
   - Use the Edit tool to replace each placeholder with the appropriate URL
   - Maintain the existing markdown link format
   - Preserve the original link text

2. **Document Changes**
   - Keep track of all links filled using the TodoWrite tool
   - Mark each link as completed after filling

3. **Summary**
   - Provide a summary of all links that were filled
   - Include the line numbers where changes were made
   - Note any placeholders that couldn't be filled with explanation

## Source Priority Guide

### For Technical Concepts
- Official documentation (e.g., docs.python.org, developer.mozilla.org)
- Wikipedia for general overview
- Official blog announcements from the creators
- Reputable technical publications (e.g., ACM, IEEE)

### For Tools and Products
- Official product website
- Official GitHub repository (for open source)
- Official documentation site
- Wikipedia (if notable enough)

### For General Knowledge
- Wikipedia (primary source)
- Encyclopedias or educational sites
- Official organization websites

### For Movies, Books, and Media
- Wikipedia
- IMDb (for movies)
- Official publisher/studio sites

### For People
- Wikipedia
- Official personal/professional websites
- LinkedIn (for professionals)
- Official organization bio pages

### For Protocols and Standards
- Official specification sites (e.g., w3.org, ietf.org)
- Official announcement pages
- Wikipedia for overview

## Important Notes

### Quality Standards
- Always prefer Wikipedia for general concepts when available
- For technical topics, official documentation is always preferred
- Avoid linking to:
  - Paywalled content
  - Temporary blog posts or news articles
  - Social media posts
  - Sites with questionable reputation
  - Dead or broken links

### Handling Ambiguity
- If the context is unclear, use AskUserQuestion to clarify
- If multiple valid links exist, choose the most authoritative
- If no appropriate link can be found, note this and ask the user

### Best Practices
- Use the TodoWrite tool to track progress on multiple links
- Complete links one at a time, marking each as done
- Test each link pattern to ensure it matches correctly
- Preserve the original formatting and style of the document
- Include line numbers in your summary for easy reference

## Examples

### Example 1: Movie Reference
**Before:**
```markdown
Prior to skills, every new conversation with a LLM felt like a scene from [50 first dates]({LINK to movie}).
```

**Process:**
1. Identify: Movie title "50 first dates"
2. Search: WebSearch for "50 First Dates movie"
3. Find: Wikipedia article at https://en.wikipedia.org/wiki/50_First_Dates
4. Replace placeholder with Wikipedia link

**After:**
```markdown
Prior to skills, every new conversation with a LLM felt like a scene from [50 first dates](https://en.wikipedia.org/wiki/50_First_Dates).
```

### Example 2: Technical Standard
**Before:**
```markdown
Yes, we had standards like [MCPs]({TODO}) to help customize LLMs.
```

**Process:**
1. Identify: "MCPs" likely means Model Context Protocol
2. Context: Related to customizing LLMs
3. Search: WebSearch for "Model Context Protocol MCP Anthropic"
4. Find: Official Anthropic announcement
5. Replace with official source

**After:**
```markdown
Yes, we had standards like [MCPs](https://www.anthropic.com/news/model-context-protocol) to help customize LLMs.
```

### Example 3: Technical Concept
**Before:**
```markdown
Skills represent [object oriented programming]({TODO}).
```

**Process:**
1. Identify: General programming concept "object oriented programming"
2. Search: This is a well-established concept
3. Find: Wikipedia article (best for general concepts)
4. Replace with Wikipedia link

**After:**
```markdown
Skills represent [object oriented programming](https://en.wikipedia.org/wiki/Object-oriented_programming).
```

## Error Handling

If you encounter issues:
- **Context too vague**: Ask user for clarification
- **Multiple possible links**: Choose most authoritative or ask user
- **No good link found**: Note this and skip, asking user if they have a preference
- **Technical error**: Report the error and continue with remaining links

Overview

This skill finds and fills TODO, placeholder, or missing links in markdown files by locating authoritative sources and replacing placeholders with stable URLs. It focuses on preserving original markdown formatting, tracking changes, and reporting exactly which links were filled and where. Use it to quickly convert vague link placeholders into reliable references.

How this skill works

The skill scans markdown files for common placeholder patterns (e.g., {TODO}, {LINK}, empty []() links, or nearby TODO comments) and extracts surrounding context and link text. For each placeholder it searches for authoritative resources—Wikipedia, official docs, project sites, or reputable publications—validates relevance and link stability, then replaces the placeholder while preserving link text and formatting. All edits are tracked and a concise summary with line numbers and unresolved items is produced.

When to use it

  • When you ask to “fill links”, “TODO links”, or “find links” in a document
  • When markdown contains placeholders like {TODO}, {LINK}, [text]({TODO}) or empty links []()
  • When you need authoritative sources added for concepts, tools, people, or media
  • When preparing documentation, blog posts, or notes for publication or review
  • When you want consistent, high-quality references across many markdown files

Best practices

  • Run the skill on cleaned, updated markdown to ensure surrounding context is accurate
  • Preserve original link text; only replace the URL unless you request anchor text edits
  • Prioritize official docs and Wikipedia for general concepts, then reputable publications
  • If a placeholder is ambiguous, pause and ask a clarifying question before replacing
  • Record edits with file names and line numbers so changes are reviewable

Example use cases

  • Fill in a list of {TODO} links in a README with official documentation URLs
  • Replace movie or book placeholders with Wikipedia or IMDb pages
  • Update technical notes that reference protocols or libraries with official spec or doc links
  • Scan a collection of markdown meeting notes and add authoritative references for mentioned concepts
  • Prepare a blog post by replacing temporary link placeholders with stable, citable sources

FAQ

What if I can't find a suitable authoritative link?

I will flag that placeholder, explain why no good match was found, and ask you whether to use a less authoritative source or leave it unresolved.

Can you change link text as well as the URL?

By default I preserve link text. If you explicitly ask, I can suggest improved anchor text and update both the URL and link text.