Hacker News digest in Japanese
Use this skill to reproduce the current main.py behavior in a reusable way, but rely on the model's own language abilities instead of Gemini.
Default scope
Unless the user explicitly asks for something else, keep the behavior fixed to match main.py:
- Time window: yesterday in UTC, from
00:00:00to the next00:00:00 - Source:
https://hn.algolia.com/api/v1/search_by_date - Filters:
tags=story,points>100 - Page size:
hitsPerPage=100 - Output: a Markdown table in Japanese
Do not ask for GEMINI_API_KEY. Do not use google-generativeai.
Workflow
- Read
scripts/fetch_hn_stories.pyto confirm the exact fetch logic. - Prefer running
uv run python skills/hacker-news-digest-ja/scripts/fetch_hn_stories.pyfrom the repository root. - If
uvis unavailable, fall back topython3 skills/hacker-news-digest-ja/scripts/fetch_hn_stories.py. - If shell execution cannot reach the network, reproduce the script's exact URL and filters with the available web-fetching tool instead of changing the behavior.
- Use the fetched stories as the source of truth. Preserve the order returned by the API.
- For each story:
- Keep
original_titleexactly as provided. - Write a natural Japanese translation for
japanese_title. - Write a one-sentence Japanese summary for
summary.
- Keep
- Produce the final answer as a Markdown table and nothing else unless the user asks for extra commentary.
Output format
Use this exact header:
| タイトル (原文) | タイトル (日本語訳) | 概要 |
| :--- | :--- | :--- |
Then output one row per story in this shape:
| [Original title](url) | 日本語訳 | 1 文の要約 |
Formatting rules:
- Escape any literal
|inside cell text as|. - If a story URL is missing, use
#as the link target. - Keep the original title in the link text exactly as fetched.
- Keep the summary to one Japanese sentence.
- Do not prepend or append prose around the table unless the user explicitly asks for commentary.
Quality bar
- Prefer concise, natural Japanese over word-for-word translation.
- Make summaries informative enough that the user can skim the table and understand why the post mattered.
- Do not invent details that are not supported by the title or obvious public context.
- If the fetch step fails, report the error clearly instead of fabricating a digest.
Typical trigger examples
- "昨日の Hacker News の人気記事を日本語で一覧にして"
- "
main.pyを Gemini なしで使える skill にしたい" - "HN の 100 点超え記事を訳して 1 行ずつ要約して"