Daily Commit Logbook
Generate Indonesian internship logbook text from GitHub and GitLab activity, then optionally schedule Telegram approval flows and weekly LaTeX reports.
Quick start
Generate today's report:
GITHUB_USER="your-github-username" bash scripts/generate-report.sh
Or save reusable local config in daily-commit-logbook/.env:
GITHUB_USER=your-github-username
WEEKLY_REPORT_AUTHOR=Internship Student
WEEKLY_REPORT_WEEK_ONE_START=2026-01-05
Setup daily Telegram approval delivery:
bash scripts/setup-cron.sh \
--time "18:00" \
--timezone "WIB" \
--github-user "your-github-username" \
--telegram-chat "<telegram-chat-id>"
Setup the Monday weekly report delivery:
bash scripts/setup-weekly-cron.sh \
--time "18:10" \
--timezone "WIB" \
--telegram-chat "<telegram-chat-id>"
Required environment
Install and authenticate:
ghfor GitHub activityglabfor GitLab activityjqfor JSON processing- OpenClaw CLI for cron setup
If the scripts are not installed at the workspace root, set OPENCLAW_WORKSPACE=/path/to/workspace before running them.
Main scripts
scripts/generate-report.sh- build the daily dual-version report and savereports/commit-report-YYYY-MM-DD.mdscripts/extract-mis-activity.sh- extract the MIS-ready activity paragraph from the daily reportscripts/render-telegram-approval-request.sh- generate the daily report, save a pending draft, and print a Telegram-ready approval requestscripts/submit-pending-logbook.sh- submit the latest pending MIS draft after explicit user confirmationscripts/render-whatsapp-message.sh- direct-submit helper for manual fallback/debuggingscripts/generate-weekly-report.sh- generate the previous week's LaTeX reportscripts/render-weekly-telegram-message.sh- print a Telegram-ready weekly summary messagescripts/setup-cron.sh- install the recurring daily OpenClaw cron jobscripts/setup-weekly-cron.sh- install the recurring Monday weekly report cron job
Behavior
- Fetch same-day push activity from GitHub and GitLab.
- Read changed files and diff hunks, not only commit titles.
- Apply repo-specific context from
references/repo-contexts.json. - Render Indonesian logbook text in two versions, standard and more natural for MIS.
- Save a pending MIS draft and wait for explicit confirmation before submission.
- Reuse the same diff-aware analysis for weekly internship reports.
References
- Read
references/format-guide.mdfor Indonesian phrasing and activity patterns. - Edit
references/repo-contexts.jsonto describe your repos and mark personal repos as excluded from internship reports.
Notes
- The daily setup script writes
daily-commit-logbook/.envwith the chosen GitHub username for later runs. - The weekly report author defaults to
Internship StudentunlessWEEKLY_REPORT_AUTHORis set. - The internship week number defaults to week 1 unless
WEEKLY_REPORT_WEEK_ONE_STARTis configured. - The normal flow is Telegram approval first, MIS submission second.