Automated daily commit reports powered by Gemini AI, delivered to Discord and Telegram.
- 🔍 Scans commits from the current day.
- 🤖 Generates a concise summary using Google Gemini AI.
- 🚀 Sends reports to Discord Webhooks, Telegram Bots, and/or Slack Webhooks.
- interactive CLI prompt to choose destination if multiple are configured.
- 📦 Supports multiple projects via a script.
- Node.js (v18 or higher recommended)
- Git installed and available in PATH.
- A Google Gemini API Key (Get it here).
- A Discord Webhook URL (optional).
- A Telegram Bot Token and Chat ID (optional).
- A Slack Webhook URL (optional).
npx @anthuanvasquez/devlogs-
Clone the repository:
git clone https://github.com/anthuanvasquez/devlogs.git cd devlogs -
Install dependencies:
npm install
-
Link the package globally:
npm link
Create a .env file in the root of your project or where you intend to run the script (or set them as system environment variables):
# Required
GEMINI_API_KEY=your_gemini_api_key
# Optional (at least one is required)
DISCORD_WEBHOOK_URL=your_discord_webhook_url
TELEGRAM_BOT_TOKEN=your_telegram_bot_token
TELEGRAM_CHAT_ID=your_telegram_chat_id
SLACK_WEBHOOK_URL=your_slack_webhook_urlNavigate to any git repository and run:
npx @anthuanvasquez/devlogs [today|yesterday] [--discord] [--telegram] [--slack]
# Default (today, ask if multiple targets)
npx @anthuanvasquez/devlogs
# Report for yesterday
npx @anthuanvasquez/devlogs yesterday
# Force send to Discord (skip prompt)
npx @anthuanvasquez/devlogs today --discord
# Force send to Telegram (skip prompt)
npx @anthuanvasquez/devlogs yesterday --telegram
# Force send to Slack (skip prompt)
npx @anthuanvasquez/devlogs --slack
# Send to all configured platforms without prompt
npx @anthuanvasquez/devlogs --discord --telegram --slackIf multiple destinations are configured, you will be prompted to choose:
¿Dónde deseas enviar el reporte? (discord/telegram/slack/todos) [todos]:
You can create a projects.json file with an array of absolute paths to your projects:
[
"/path/to/project-a",
"/path/to/project-b"
]Then run the included script:
./run-all-projects.shTo run it automatically every day at 6:00 PM:
-
Open your crontab:
crontab -e
-
Add the following line (adjust paths accordingly):
0 18 * * 1-5 /path/to/dev-logs/run-all-projects.sh >> /tmp/cron_devlogs.txt 2>&1
MIT
