Problem it solves: stops every automation from reinventing config, identity, and Notion-write logic. One config standard, one onboarding flow, and shared low-level workers so the whole toolkit stays consistent.
One-time interactive onboarding that builds or updates em-manifest.json - the single config every em-* skill reads. Captures the EM's identity and resolves each account's friendly database names into Notion data-source ids.
The single gatekeeper for writing, updating, completing and querying tasks in JP_TASKS. Owns the schema, prioritization formula, dedup and due-date defaults. Three modes: API (machine), Audit (interactive review), Manual (conversational "add a task").
Resolves a name / email / handle to a single Notion Stakeholder or Teammate page, scoped to one account, via a deterministic 5-step ladder. The first step before any profile write - refuses to guess, returning needs_human on ambiguity.
Writes one human-readable row to the Account Changelog for any meaningful change. Mode A takes a JSON payload (silent, called by risk and OKR skills); Mode B is a 5-question interactive Q&A for humans.
Standardizes how any agent writes to Notion. Mode 1 is machine-readable (max density, parseable, for AI-to-AI handoffs like the daily digest); Mode 2 is human-readable (Swiss design - grid, typographic hierarchy, semantic color) for pages a person reads.
The day-one bootstrap: builds or updates the EM's local em-manifest OVERLAY (output_directory root, renderer locations, Tability workspace) and rebuilds the merged em-manifest.json so every other em-* skill can resolve identity and accounts.