Skip to content

gauravgola96/DevPulse-LLM-Daily-Dev-Journal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Devpulse

Devpulse logo

Devpulse is a cross-platform Go CLI that tracks your development activity, stores hourly snapshots, and produces an end-of-day summary with your preferred LLM provider. The workflow is designed to lean heavily on modern AI assistants and large language models (LLMs)—Devpulse aggregates telemetry, builds safe prompts, and hands them off to engines like OpenAI GPT or Anthropic Claude for AI-generated “What I did today” recaps.

Note: This project was initially vibe coded; the current repository reflects that foundation plus the refinements captured here.

Features

  • Git statistics across multiple repositories (commits, files changed, line deltas)
  • Terminal history analytics with optional secret redaction
  • GitHub review activity (approvals and comments)
  • SQLite-backed snapshots with hourly captures and configurable end-of-day rollups
  • Provider-agnostic LLM summaries (OpenAI, Anthropic, or other large language models), rendered to local text files
  • Configurable collectors and logging with a single background process lock

Requirements

  • Go 1.22 or newer
  • macOS, Linux, or Windows

Getting Started

git clone [email protected]:gauravgola/devpulse.git
cd devpulse
make build
# or install directly
go install ./cmd/devpulse

The first run creates a config file at ~/.config/devpulse/config.yaml (0600 permissions). Update it with your repository roots, GitHub token, and LLM credentials:

llm:
  provider: openai
  model: gpt-4o-mini
  api_key: sk-...
github:
  token: ghp_...
  username: johndoe
collectors:
  git:
    enabled: true
    repo_roots: ["~/Code"]
  terminal:
    enabled: true
    shells: ["zsh", "bash"]
  github:
    enabled: true
runtime:
  eod_hour_local: 20
  lookback_hours: 24
  redact_secrets: true
logging:
  level: info

Useful configuration helpers:

  • devpulse config --print – view active settings
  • devpulse config --set llm.provider=anthropic – update keys via dot notation
  • devpulse config --edit – open the file in $EDITOR

CLI Commands

  • devpulse start – start the scheduler, acquire the PID lock, and capture hourly snapshots
  • devpulse stop – signal the running scheduler using the PID file
  • devpulse info – inspect the latest snapshot and stored daily summary
  • devpulse config – manage configuration values
  • devpulse history --history 5 – print the last five AI summaries (tune the number as needed)
  • devpulse summarize [--force] – generate an immediate EOD summary; add --force to capture a fresh snapshot first

Summaries are written under ~/.local/share/devpulse/summary-YYYY-MM-DD.txt and stored in the llm_summaries table.

Development

  • make test – run unit and integration tests (uses vendored modules)
  • make lint – execute go vet
  • make build – build all packages with vendored dependencies

The repository vendors external modules so testing works offline. Tests rely on temporary directories and mock transports; they should not touch your home directory or live Git repositories.

Privacy & Security

  • Only metadata (counts, filenames, command frequencies) is collected; source code is never stored or transmitted
  • Terminal commands are redacted for obvious secret markers
  • All credentials live in ~/.config/devpulse/config.yaml with 0600 permissions
  • Summaries and databases are local to your machine, under ~/.local/share/devpulse

License

MIT

About

Your day’s work journal, automatically written

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published