Skip to content

Latest commit

 

History

History
72 lines (55 loc) · 3.33 KB

File metadata and controls

72 lines (55 loc) · 3.33 KB

Engineering Pulse — agent context

What this project is

A prompt- and skill-driven engineering productivity tool: Datadog metrics, GitHub PR queue, Todoist tasks, optional Stakeholder Pulse (Glean MCP), HTML scorecard, SMTP email.

Product skill (portable): skills/engineering-pulse/ per Agent Skills.

Harness entrypoints: harness/Claude Code and Cursor (e.g. /daily-dashboard); Pi Agent in progress; plus scheduled / headless runs via scripts/lib/agent_cli.sh.

Product invariants

  • The canonical daily-dashboard workflow is Markdown guidance: skills/engineering-pulse/SKILL.md plus skills/engineering-pulse/references/.
  • make run and scheduled runs must stay agent-driven through AGENT_CLI; do not replace product execution with a direct Python-only pipeline.
  • scripts/ contains callable tools for the agent-guided workflow. Keep workflow decisions and prose in the skill references.
  • scripts/run_daily_dashboard.py is a helper/debug path for running the toolchain directly; it is not the primary product runtime.
  • Installed ~/.engineering-pulse clones normally track main. Feature branch checkout is a maintainer testing workflow, not normal user guidance.
  • Claude Code headless runs need explicit non-interactive permission handling in the runner; keep that behavior aligned with Cursor/Pi trust/force execution.

Layout

Path Role
scripts/ Python orchestration (Datadog, GitHub, render, SMTP, Todoist)
scripts/lib/agent_cli.sh Multi-agent CLI abstraction for scheduled runs (AGENT_CLI)
skills/engineering-pulse/ Canonical daily-dashboard workflow (SKILL.md + references/)
prompts/dashboards/*.md User dashboard defs (gitignored except _example.md)
prompts/extras/*.md Drop-in report cards (gitignored except _example.md)
output/ Generated JSON/HTML; output/stakeholders/*.md for Glean cards
.env Secrets (never commit)
local/ Maintainer-only tools (gitignored)
.cursor/skills/ Cursor adapters; product skill symlinks to skills/engineering-pulse/

Rules

  • Credentials: .env via python-dotenv only — never hardcode tokens or org URLs in tracked files.
  • Output: HTML/JSON under output/ (output/daily_dashboard_report.html).
  • Config: No hardcoded org/team names — use env vars (DATADOG_TEAMS, GITHUB_ORG, etc.).
  • Scripts: Thin orchestration in scripts/; workflow prose lives in the skill references.

Scripts

Script Purpose
datadog_dashboard_extract.py Dashboard metrics → output/<slug>_metric_results.json
github_prs.py PR review queue → output/github_prs.json
render_daily_dashboard_html.py Build output/daily_dashboard_report.html
send_report_smtp.py Email the report
todo.py Todoist tasks / reading queue

Development

python -m pip install -r requirements.txt
ruff check scripts tests
ruff format --check scripts tests
python -m pytest tests/ -q

CI runs the same lint and test jobs on push/PR (see .github/workflows/ci.yml).

Terminal output

Use rich in scripts. Colour convention: red = attention, yellow = watch, green = healthy.