recent-state-summarizer
Summarize blog article titles with the OpenAI API
a.k.a. RSS 😃
Setup
$ pip install recent-state-summarizer
⚠️ Set OPENAI_API_KEY environment variable.
ref: https://platform.openai.com/account/api-keys
Usage
$ omae-douyo https://nikkie-ftnext.hatenablog.com/archive/2023/4
この人物は最近、プログラミングに関することを中心にして活動しています。
(略)
最近は、株式会社はてなに入社したようです。
Currently support:
- はてなブログ(Hatena blog)
- はてなブックマークRSS
- Adventar
- Qiita Advent Calendar
To see help, type omae-douyo -h.
Fetch only (save to file)
Fetch titles and URLs of articles, and save them to a file without summarization:
# Save as JSON format (default)
$ omae-douyo fetch https://nikkie-ftnext.hatenablog.com/archive/2023/4 articles.jsonl
# Save as bullet list
$ omae-douyo fetch https://nikkie-ftnext.hatenablog.com/archive/2023/4 titles.txt --as-title-list
GitHub Changelog
The github-blog sub-command fetches the GitHub Changelog without specifying its feed URL:
$ omae-douyo fetch github-blog articles.jsonl
# Change the period to fetch entries from (default: 30 days)
$ omae-douyo fetch github-blog articles.jsonl --days 45
Development
Sub commands
Fetch only (same as omae-douyo fetch):
python -m recent_state_summarizer.fetch -h
Summarize only:
It's convenient to omit fetching in tuning the prompt.
python -m recent_state_summarizer.summarize -h
Environment
$ git clone https://github.com/ftnext/recent-state-summarizer.git
$ cd recent-state-summarizer
$ python -m venv venv
$ source venv/bin/activate
(venv) $ pip install -r requirements.lock
(venv) $ pip install -e '.'
Release files for recent-state-summarizer 0.0.16
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| recent_state_summarizer-0.0.16.tar.gz | 22.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| recent_state_summarizer-0.0.16-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 55.7 kB
Release files / recent_state_summarizer-0.0.16.tar.gz
| Download URL | recent_state_summarizer-0.0.16.tar.gz |
|---|---|
| Size | 22.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3dc93bc29cb524043bd064e41814a0046b17e4f7fcc5c3411e3c202d4ed958c0
|
|
BLAKE2b-256 checksum How to use checksums |
d552571fb9efa5ef3bf5976b425dd0918596aa8c2b37805691ca1ae486f16699
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.
Transparency logRelease files / recent_state_summarizer-0.0.16-py3-none-any.whl
| Download URL | recent_state_summarizer-0.0.16-py3-none-any.whl |
|---|---|
| Size | 33.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4d646b530d142065977e0158f413252e074a6c4d1b569ff9faa7c876485aaa15
|
|
BLAKE2b-256 checksum How to use checksums |
8c54cd54951b12ce7b9b0054f62aeb36c25d13d5d77f0b9e7200dccb98100dfb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.
Transparency log