web-fetch
Web Fetch Skill
Fetch web content. Prefer the built-in WebFetch tool — it uses a real browser engine for JavaScript-rendered pages with high success rate. Fall back to curl only if WebFetch is unavailable.
Fetch a Web Page (HTML → Text)
# Get page content, strip HTML tags, first 500 lines
curl -sL "URL" | sed 's/<[^>]*>//g' | sed '/^$/d' | head -500
# Or use lynx for better text extraction (if installed)
lynx -dump -nolist "URL" | head -500
# Or use w3m
w3m -dump "URL" | head -500
Fetch JSON API
curl -s "https://api.example.com/data" | jq '.'
Fetch with Headers
# With custom headers
curl -s -H "Authorization: Bearer TOKEN" -H "Accept: application/json" "URL"
# With user agent
curl -sL -A "Mozilla/5.0" "URL"
Download Files
# Download to specific path
curl -sL -o /tmp/file.pdf "URL"
# Download with original filename
curl -sLOJ "URL"
Check URL Status
# Just get HTTP status code
curl -sL -o /dev/null -w "%{http_code}" "URL"
# Get headers only
curl -sI "URL"
Tips
- Use
-sLfor silent mode + follow redirects - Pipe to
head -Nto limit output and avoid context overflow - For large pages, extract just what you need with
greporsed - Use
jqfor JSON responses - Some sites block curl — add a browser User-Agent with
-A
More from naohainezha/skill
reactions
React to the user's Telegram message with an emoji. Use when the message evokes a genuine emotional response.
28self-reflection
Daily self-reflection and personal growth. Triggered by heartbeat at end of day. Review the day's experiences, extract lessons, update personality, and write a diary entry.
6voice
Send voice messages (TTS) to the user via Telegram. Use when replying to voice messages or when a voice reply feels natural.
3scheduler
Create, manage, and delete scheduled tasks (cron jobs) and configure heartbeat. Use when users ask for reminders, recurring tasks, daily summaries, periodic checks, or anything time-based. Also manages HEARTBEAT.md for periodic awareness checks.
3thread-management
Manage chat threads — create, list, switch, delete, and search conversations. Use when users want to organize their chats.
3memory-management
Search and manage Alma's memory and conversation history. Use when the user asks about past conversations, personal facts, preferences, or anything that requires recalling information ("你知道我...吗", "我们之前聊过...", "你还记得...", "帮我找之前说的..."). Also used to store new memories and search through archived chat threads.
3