Skip to content
anthuanvasquezPublic

About

Generates daily commit reports and sends them to Discord or whatever you want.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

devlogs 📝

devlogs Logo

Automated daily commit reports powered by Gemini AI, delivered to Discord and Telegram.

Features

  • 🔍 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.

Prerequisites

  • 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).

Installation

From NPM (Recommended)

npx @anthuanvasquez/devlogs

From Source

  1. Clone the repository:

    git clone https://github.com/anthuanvasquez/devlogs.git
    cd devlogs
  2. Install dependencies:

    npm install
  3. Link the package globally:

    npm link

Configuration

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_url

Usage

Navigate 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 --slack

If multiple destinations are configured, you will be prompted to choose: ¿Dónde deseas enviar el reporte? (discord/telegram/slack/todos) [todos]:

Running for Multiple Projects

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.sh

Automating with Cron

To run it automatically every day at 6:00 PM:

  1. Open your crontab:

    crontab -e
  2. 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

License

MIT

About

Generates daily commit reports and sends them to Discord or whatever you want.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages