Track all URLs fetched during SpecStory AI coding sessions. Run when user says "show my link trail", "what URLs did I visit", "list fetched links", or "show web fetches".
Installs into .claude/skills of the current project.
Are you the author of Specstory Link Trail?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/luokai0-specstory-link-trail)
---
name: specstory-link-trail
description: Track all URLs fetched during SpecStory AI coding sessions. Run when user says "show my link trail", "what URLs did I visit", "list fetched links", or "show web fetches".
license: Apache-2.0
metadata:
author: SpecStory, Inc.
version: "1.0.0"
argument-hint: "[history-file-or-pattern]"
allowed-tools: Bash, Read
governance_phases: [prove]
organ_affinity: [organ-iv]
triggers: [command:link-trail, user-asks-about-fetched-urls]
---
# SpecStory Link Trail
Reviews your `.specstory/history` sessions and creates a summary of all URLs that were fetched via WebFetch tool calls. Useful for auditing external resources accessed during development.
## How It Works
1. **Parses** SpecStory history files for WebFetch tool calls
2. **Extracts** URLs, status codes, and context
3. **Groups** by session with timestamps
4. **Separates** successful fetches from failures
5. **Deduplicates** repeated URLs with fetch counts
## Why Track Links?
During AI-assisted coding, your assistant fetches documentation, APIs, and resources on your behalf. Link Trail helps you:
- Audit what external resources were accessed
- Find that documentation page you saw earlier
- Review failed fetches that might need retry
- Understand your research patterns
## Usage
### Slash Command
| User says | Script behavior |
|-----------|-----------------|
| `/specstory-link-trail` | All sessions in history |
| `/specstory-link-trail today` | Today's sessions only |
| `/specstory-link-trail last session` | Most recent session |
| `/specstory-link-trail 2026-01-22` | Sessions from specific date |
| `/specstory-link-trail *.md` | Custom glob pattern |
### Direct Script Usage
```bash
# All sessions
python skills/specstory-link-trail/parse_webfetch.py .specstory/history/*.md | \
python skills/specstory-link-trail/generate_report.py -
# Specific session
python skills/specstory-link-trail/parse_webfetch.py .specstory/history/2026-01-22*.md | \
python skills/specstory-link-trail/generate_report.py -
# Sessions from a date range
python skills/specstory-link-trail/parse_webfetch.py .specstory/history/2026-01-2*.md | \
python skills/specstory-link-trail/generate_report.py -
```
## Output
```
Link Trail Report
=================
Sessions analyzed: 5
Total URLs fetched: 23 (18 successful, 5 failed)
Session: fix-authentication-bug (2026-01-22)
--------------------------------------------
Successful fetches:
- https://docs.github.com/en/rest/authentication (×2)
- https://jwt.io/introduction
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401
Failed fetches:
- https://internal.company.com/api/docs (403 Forbidden)
Session: add-caching-layer (2026-01-21)
---------------------------------------
Successful fetches:
- https://redis.io/docs/latest/commands
- https://docs.python.org/3/library/functools.html#functools.lru_cache
- https://stackoverflow.com/questions/... (×3)
Summary by Domain
-----------------
github.com: 5 fetches
stackoverflow.com: 4 fetches
docs.python.org: 3 fetches
redis.io: 2 fetches
(9 other domains): 9 fetches
```
## Present Results to User
The script output IS the report. Present it directly without additional commentary, but you may:
1. **Highlight key findings** - Most frequently accessed domains, any failed fetches
2. **Offer follow-ups** - "Want me to retry the failed fetches?" or "Need details on any of these?"
### Example Response
```
Here's your link trail from recent sessions:
[script output here]
I noticed 5 failed fetches - mostly internal URLs that require authentication.
The most accessed domain was github.com (5 fetches), mostly for their REST API docs.
Would you like me to:
- Retry any of the failed fetches?
- Open any of these links?
- Filter to a specific session?
```
## Notes
- Uses streaming parsing for large history files
- URLs are extracted from WebFetch tool calls in the history
- Fetch counts show when the same URL was accessed multiple times
- Failed fetches include the HTTP status code when available