Skip to content

love19870821/morning-intelligence-butler

Repository files navigation

Morning Intelligence Butler

License: MIT Python

Morning Intelligence Butler is a small open-source morning briefing assistant. It combines Traditional Chinese news summaries, Gmail triage, live market prices, and follow-up items into one concise report.

Start here

Shortest path from clone to a real report:

  1. Install locally.
  2. Verify the install.
  3. Generate a demo bundle.
  4. Run the tool on your own input.
pip install -e .
morning-butler-smoke
morning-butler --generate-demo demo-kit
morning-butler --input demo-kit/sample_report.json --output morning-report.txt

If you prefer the module form:

python -m morning_butler --input demo-kit/sample_report.json

Why it exists

Most morning tools are either too noisy or too weak. This project is designed to be:

  • practical
  • conservative by default
  • easy to automate
  • pleasant to read
  • safe with mail cleanup

What it does

Each morning it can help you:

  • see today’s important mail first
  • summarize what needs attention
  • list safe cleanup actions
  • identify follow-up items before the day starts
  • produce a short report you can scan quickly
  • export text, JSON, Markdown, or HTML
  • save the result directly to a file

Deterministic market fixture

For demos, tests, or offline runs, set MORNING_BUTLER_MARKET_FIXTURE to a JSON object with gold, oil, and usd_twd values.

export MORNING_BUTLER_MARKET_FIXTURE='{"gold":"USD 4,796.65/oz","oil":"USD 97.79/bbl","usd_twd":"31.623"}'
morning-butler --input demo-kit/sample_report.json

This keeps the market section stable without touching the live fetch flow.

Example output

Text mode:

晨報
產生時間:2026-04-14T08:00:00+08:00
摘要:2 封重要信件、2 則新聞、3 筆市場行情、2 項清理動作、2 項靈感與待解鎖事項
=

重要信件
- 回覆供應商發票事宜
- 確認 10:30 會議的行事曆邀請

新聞重點
- 台灣市場開盤走高
- AI 工具持續加速

市場行情
- 國際黃金:即時價格
- 布蘭特原油:即時價格
- 美元/台幣:即時匯率

清理動作
- 已將 24 封促銷信移到垃圾桶
- 略過 3 封已加星號郵件與 2 封含附件郵件

靈感與待解鎖事項
- 在 11:00 前回覆供應商
- 確認 10:30 的行事曆邀請

Markdown mode:

# 晨報
產生時間:2026-04-14T08:00:00+08:00
**摘要:**2 封重要信件、2 則新聞、3 筆市場行情、2 項清理動作、2 項靈感與待解鎖事項

## 重要信件
- 回覆供應商發票事宜
- 確認 10:30 會議的行事曆邀請

## 新聞重點
- 台灣市場開盤走高
- AI 工具持續加速

## 市場行情
- 國際黃金:USD 2,350/oz
- 布蘭特原油:USD 84.20/bbl
- 美元/台幣:32.12

## 清理動作
- 已將 24 封促銷信移到垃圾桶
- 略過 3 封已加星號郵件與 2 封含附件郵件

## 靈感與待解鎖事項
- 在 11:00 前回覆供應商
- 確認 10:30 的行事曆邀請

HTML mode:

<!doctype html>
<html lang="zh-Hant">
  <head>...</head>
  <body>
    <h1>晨報</h1>
    <p class="summary">2 封重要信件 · 2 則新聞 · 3 筆市場行情 · 2 項清理動作 · 2 項靈感與待解鎖事項</p>
    <section><h2>市場行情</h2><ul>...</ul></section>
  </body>
</html>

Verify the install

Run the smoke test after installing:

pip install -e .
morning-butler-smoke
python scripts/smoke_test.py

Release check

Before cutting a release, run the local release verification flow:

morning-butler-release-check

This runs pytest, the smoke test, builds a wheel, installs that wheel into a fresh virtual environment, and runs the installed smoke test again.

See RELEASE.md for the full pre-publish checklist.

Demo bundle

Create a full sample bundle:

morning-butler --generate-demo
morning-butler --generate-demo demo-kit

The bundle includes sample input plus rendered text, Markdown, HTML, and JSON outputs.

實際使用

把你自己的晨報 JSON 丟進去即可。 工具會自動抓取即時的國際黃金、布蘭特原油與美元/台幣。

morning-butler --input your_report.json
morning-butler --format json --input your_report.json --output report.json
morning-butler --format markdown --input your_report.json --output report.md
morning-butler --format html --input your_report.json --output report.html

For pipelines, stdin also works:

cat your_report.json | morning-butler --input - --format text

Sample bootstrap

Create a starter sample file when you need one:

morning-butler --write-sample
morning-butler --write-sample my_sample.json

See INPUT_SCHEMA.md for the expected input shape and field meanings.

For common errors and fixes, see TROUBLESHOOTING.md.

Design principles

  • Never hard-delete mail
  • Skip starred mail by default
  • Skip mail with attachments by default
  • Favor explicit summaries over long dumps
  • Make the morning report readable in under a minute
  • Surface follow-ups, not just summaries
  • Support output formats that are easy to reuse elsewhere
  • Keep file output simple and predictable

Planned roadmap

  • News source connectors
  • Gmail summary integration
  • Telegram delivery
  • Scheduled execution
  • Configurable cleanup rules
  • Richer Markdown / HTML output variants

Project status

This is an early public foundation release. It is intended to grow into a reusable morning briefing workflow.

Release notes

See CHANGELOG.md for versioned release notes and verification-focused changes.

About

Traditional Chinese morning briefing assistant for news, AI updates, Gmail triage, live market prices, and GitHub progress

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages