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