Open Source · Python · PM Tooling

Stop running status meetings.
Run an agent instead.

PCA scans Jira, email, and local documents overnight — then delivers a structured morning briefing. No tab-switching. No chasing updates.

# Run daily briefing
$ python pca.py daily

=== Portfolio Control Agent — 2026-09-15 08:02 ===

CHANGES (3 items):
● PROJ-234 moved In Progress → In Review
⚠ CONFLICT: Jira shows "In Test" but handover note says "blocked"
● PROJ-241 NEW comment from @jane

ATTENTION REQUIRED:
→ PROJ-238: blocker unresolved 4 days

Jira scanning

Pulls open issues, status changes, new comments, blockers. Detects what moved since yesterday.

Email scanning

Finds project-relevant emails from the last N days via Outlook COM. No IMAP setup needed on Windows.

Conflict detection

Flags when Jira says one thing and your documents say another. Surfaces what would otherwise stay hidden.

Structured report

HTML output (+ optional PDF). Changes, blockers, conflicts — in one place, every morning.

Quick start

01 Clone the repo and install: pip install -r requirements.txt
02 Copy .env.example to .env — add your Jira URL, project key, and API token
03 Run: python pca.py daily — report lands in reports/
04 Schedule with Task Scheduler or cron for automatic morning delivery