Stop
guessing
what your
team did.
ActivityPulse aggregates data from GitHub, GitLab, Jira, Confluence and MS365 into an activity stream to help you analyze and understand what your engineering team did. Generates AI-powered activity summaries, value stream analysis and more. Self-hosted. Built for engineering teams and managers.
AI summaries
Engineer activity summaries generated by AI — on demand or scheduled to your inbox
Red flag alerts
Built-in detection rules surface burnout, overload, and stale work before they escalate
Goal tracking
Map contributions up to epics and initiatives with full Jira hierarchy resolution
Activity heatmaps
See when your team works — spot slacking patterns and optimize focus time
Team management
Role-based access, multi-team support, and fine-grained visibility controls
Value stream
Trace issues from creation to completion and measure cycle time across dev, review, merge, and QA
Sound familiar?
Managing a team shouldn't feel like detective work.
"Manually correlating data feels daunting."
Engineering activity is scattered across GitHub/GitLab, tasks and discussions in Jira, documents in Confluence, communications over Teams — and connecting them is your job, manually, every week.
"You don't know if your AI agents are delivering."
You deployed AI coding agents to increase velocity. You have some numbers, but cannot tell if productivity actually increased. There are likely bottlenecks in your engineering process but you don't know where.
"Blockers surface in the retro, not the standup."
Developers are stuck but won't say so until it's too late. By the time you hear about it, it's another failed sprint.
"Performance reviews are based on memory and gut feel."
You know someone is underperforming but can't point to data when HR asks. Your notes are impressions, not evidence.
"Standups are theater."
Everyone says they're on track. The actual commit history tells a different story that you only see on Friday afternoon.
"Closing Jira issues and achieving goals are not the same."
Sprint goals look fine in the tracker. Everyone is working hard, and they keep asking for more capacity. Whether the team's actual activity maps to those goals is a guess.
How it works
Three steps from noise to narrative.
1
Connect your tools
Configure your GitLab, Jira, Confluence and MS365 integrations. ActivityPulse only needs read-only API access — it never writes to your tools.
2
Data syncs automatically
A configurable scheduler pulls activity data at your chosen frequency. Set sync windows, historical depth, and retention policies per source.
3
Get visibility on your team and their goals
Generate AI summaries for any teammate over any date range. Get red flag alerts. See who contributed to and understand progress towards goals.
Deploy
Your infrastructure.
Your data.
ActivityPulse is designed for on-premises, self-hosted deployment. All data stays within your infrastructure. Nothing is sent externally beyond your LLM provider.
# Docker quick install
curl -fsSL https://github.com/ActivityPulse/activitypulse-release/releases/latest/download/install-docker.sh | sudo bash
Full data sovereignty
Activity records, teammate profiles, summaries, and configuration stay entirely within your network.
Read-only API access
ActivityPulse only reads from your tools. It never creates, modifies, or deletes data in any connected source.
Configurable retention
Set how long data is kept. Automatic cleanup ensures you don't store more than you need.
Separate DB per org
Each organization gets its own PostgreSQL database. Deleting an org is as simple as dropping the database.
Ready to see
your team's pulse?
Deploy and get actionable insight in minutes. Your servers, your data.