Install
$ agentstack add skill-jojoprison-shirman-digest-shirman-digest ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
/shirman-digest — Ежедневный дайджест AI & Tech трендов
Скилл автоматически собирает самое важное за день из мира AI и технологий с shir-man.com/homepage/ — SPA-дашборда, агрегирующего GitHub Trending, Hacker News, Lobsters и AI-новости. Результат — готовый HTML-отчёт с 4 вкладками (без дублей), темой и ссылками на оригиналы.
Зачем
shir-man.com — это единственная точка входа для обзора трендов, но сайт SPA без API, данные не парсятся обычным скрапером. Скилл решает эту проблему: навигирует SPA через headless-браузер, параллельно читает статьи, и упаковывает всё в удобный отчёт. Без скилла это занимает 30-40 минут ручной работы.
Алгоритм
Шаг 1: Навигация по SPA (PinchTab)
shir-man.com — SPA, поэтому нужен headless-браузер для навигации. PinchTab snapshot даёт accessibility tree с минимумом токенов.
pinchtab_navigate(url: "https://shir-man.com/homepage/")pinchtab_wait(seconds: 3)— SPA грузит данные асинхронноpinchtab_snapshot(filter: "interactive", format: "compact")— получить элементы (~19 нод vs 269 в полном DOM)- Переключить селекторы колонок:
- Первая колонка: Midjourney → GitHub (самые быстрорастущие репозитории)
- Третья колонка: Hype Replicate → Lobsters (экспертный контент)
- Пройти вкладки внизу (кружочки-переключатели):
- Собрать: Top signals, HN Best Show, GitHub Fastest rising, Popular
- Пропустить: Virality map, Topic cloud (визуализации без парсируемых ссылок)
- На каждой вкладке: snapshot → извлечь ссылки из StaticText нод
> Почему StaticText, а не eval? PinchTab eval возвращает 404 (известный баг #225). Данные извлекаются из snapshot accessibility tree — менее точно, но работает стабильно.
Шаг 1.5: Извлечение URL из ссылок (ОБЯЗАТЕЛЬНО)
PinchTab compact snapshot показывает текст ссылок, но НЕ href. Для каждой карточки в отчёте ОБЯЗАТЕЛЬНА кликабельная ссылка на оригинал. Без ссылки карточка бесполезна.
Способы получения URL:
- GitHub репо — URL строится из текста ссылки:
https://github.com/{link_text}(текст уже содержитowner/repo) - HN статьи — домен виден в StaticText (напр.
GIST.GITHUB.COM,SAMHENRI.GOLD). Для получения точного URL:
- WebSearch:
"{заголовок статьи}" site:{домен}— быстрый поиск точного URL - Или:
WebFetch("https://hn.algolia.com/api/v1/search?query={title}&tags=story")— HN API возвращаетurlполе
- Lobsters статьи — аналогично HN: домен виден, искать через WebSearch по заголовку + домену
- Show HN / Top Signals — ссылки в карусели: кликнуть на link-ноду (
pinchtab_click), snapshot → извлечь URL из адресной строки,pinchtab_backдля возврата
Правило: Если URL не удалось найти ни одним способом — пометить карточку 🔗 ссылка не найдена и указать домен-источник как текст. Но стремиться к 100% покрытию ссылками.
Параллельность: Запускать WebSearch/WebFetch для разрешения URL параллельно (до 8 одновременно), чтобы не тратить время.
Шаг 2: Чтение статей (WebFetch)
WebFetch в 5-10x эффективнее браузера для чтения контента: параллельный fetch без ожидания рендера.
- Собрать уникальные URL из Шага 1.5 + snapshot'ов
- Запустить WebFetch параллельно (до 8 одновременно)
- Извлечь из каждой статьи: заголовок, ключевые тезисы, практическую ценность
- При 404 или ошибке — пропустить без ретрая (URL может быть устаревшим)
Шаг 3: Генерация HTML-отчёта
Создать claudedocs/shir-man-daily-report-YYYY-MM-DD.html.
4 вкладки (без дублей между разделами):
| Вкладка | Контент | |---------|---------| | GitHub Trending | Быстрорастущие репозитории с описанием | | Hacker News | Лучшие обсуждения и статьи | | Lobsters | Экспертный технический контент | | AI Agents | Новые инструменты и фреймворки |
Правило дедупликации: Каждая статья/проект появляется ТОЛЬКО в одной вкладке. Приоритет размещения: AI Agents (если про AI инструмент) → GitHub Trending (если репозиторий) → Hacker News (если HN источник) → Lobsters. Если статья появилась на HN и Lobsters — оставить там где больше очков. Deep Reads, Обзор, Попробовать — УБРАНЫ, их контент распределяется по 4 основным вкладкам.
Убранные вкладки и причины:
- ~~Обзор~~ — пересказ того что уже есть в остальных вкладках
- ~~Deep Reads~~ — 100% дубли из HN/Lobsters/AI Agents
- ~~Попробовать~~ — частично дубли AI Agents + GitHub Trending
Каждая карточка ОБЯЗАТЕЛЬНО содержит:
- Заголовок + кликабельная ссылка на оригинал (ОБЯЗАТЕЛЬНО! Без ссылки карточка бесполезна — см. Шаг 1.5)
- Краткое описание (2-3 предложения)
- Цветной бейдж источника
- Блок «Ключевой вывод» для важных статей (выделенный фон, 1-2 предложения)
⚠️ НЕ допускается: карточка без `` ссылки на оригинальный ресурс. Если URL не разрешён — использовать домен + заголовок в WebSearch.
Стиль отчёта:
CSS variables → тёмная тема по умолчанию, светлая по toggle
Переключатель темы → кнопка в шапке, состояние в localStorage
Бейджи источников → GitHub: зелёный, HN: оранжевый, Lobsters: красный, AI: фиолетовый
Layout → responsive CSS grid, max-width: 1200px, system-ui шрифт
Градиенты → заголовок страницы и заголовки вкладок
Язык: Весь текст на русском. Технические термины (GitHub, Hacker News, API и т.д.) — в оригинале.
HTML skeleton — структура отчёта:
AI & Tech Дайджест — YYYY-MM-DD
:root { --bg: #1a1a2e; --card: #16213e; --text: #e0e0e0; --accent: #7c3aed; }
[data-theme="light"] { --bg: #f5f5f5; --card: #fff; --text: #1a1a2e; --accent: #6d28d9; }
body { font-family: system-ui; background: var(--bg); color: var(--text); max-width: 1200px; margin: 0 auto; }
.badge { padding: 2px 8px; border-radius: 12px; font-size: 0.75rem; }
.badge-github { background: #22c55e20; color: #22c55e; }
.badge-hn { background: #f9731620; color: #f97316; }
.badge-lobsters { background: #ef444420; color: #ef4444; }
.badge-ai { background: #7c3aed20; color: #7c3aed; }
.takeaway { background: var(--accent)15; border-left: 3px solid var(--accent); padding: 8px 12px; margin-top: 8px; }
.tabs button { background: none; border: none; color: var(--text); padding: 8px 16px; cursor: pointer; }
.tabs button.active { border-bottom: 2px solid var(--accent); }
.card { background: var(--card); border-radius: 8px; padding: 16px; margin: 8px 0; }
/* Theme toggle: localStorage.getItem/setItem('theme') */
Шаг 4: Открыть отчёт
open claudedocs/shir-man-daily-report-YYYY-MM-DD.html
Шаг 5: Очистка
pkill -f pinchtab
PinchTab daemon и MCP-процессы остаются жить между сессиями — их нужно убивать после каждого запуска, иначе они накапливаются.
Известные ограничения
| Проблема | Причина | Workaround | |----------|---------|------------| | pinchtab_eval → 404 | Баг PinchTab #225 | Парсить данные из snapshot StaticText | | pinchtab_type не работает | macOS баг #226 | Не нужен для этого скилла (только клики) | | WebFetch 404 на некоторых URL | Устаревшие ссылки или paywall | Пропускать, не ретраить | | Snapshot refs меняются | Ожидаемое поведение после навигации | Пере-snapshot после каждого клика | | shir-man.com без API | SPA рендерит всё на клиенте | Только headless-браузер (PinchTab) |
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jojoprison
- Source: jojoprison/shirman-digest
- License: MIT
- Homepage: https://shir-man.com
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.