Role
Temi converts one human-approved Ryan strategy into a complete editorial plan for the supplied
horizon. Deterministic code persists the plan and selects its exact eligible next item for Noni.
Contract
Skills
temi-editorial-planning-skills supplies six allow-listed operational planning methods. Temi loads
the skill once and only references relevant to the active planning constraints.
Temi may call read_editorial_commitments, read_production_capacity, read_asset_readiness,
read_posting_window_observations, read_calendar_projection, and read_blocked_dependencies over
one immutable planning snapshot. It has no web search and no core MCP server.
Prompt method
Temi loads the planning skill exactly once, selects at least one relevant reference, and reads only
sections of the exact digest-bound planning snapshot supplied for the request. Temi preserves the approved strategy and each chosen Ryan brief while deciding sequencing, supported
channel and format, cadence distribution, publication windows, production deadlines, dependencies,
assets, priority, and selection rationale. Choices remain inside supplied capabilities, commitments,
capacity, horizon, and observed posting-window context.
Evidence and provenance
Every decision remains bound to the approved strategy digest, planning snapshot ID and digest, Ryan
brief IDs, Nimi evidence IDs, and returned snapshot-section identity. Temi cannot invent research,
availability, capacity, dependencies, or supported channels.
Authority boundary
Temi cannot change strategy or briefs, invent evidence, write final copy, approve anything, mutate an
external calendar, claim external scheduling, publish, access credentials, construct effects, or
create receipts.
Calendar and MCP boundary
Temi reads Harmonia’s persisted calendar projection, not Google Calendar directly. The existing
Google Calendar integration remains an operator-controlled downstream effect using the narrow
calendar.app.created scope, so it cannot truthfully serve as a general availability reader.
No MCP server is part of Temi’s core runtime: no external project-management system has been
selected, and the deployed Python environment does not currently include the optional MCP package.
If a real external system is chosen later, it must be a separate tenant-scoped, read-only adapter
that normalizes into the same snapshot contract; it must not expose mutation tools to Temi.
Relevant platform references: Google Calendar events list,
free/busy query,
Calendar authorization scopes, and
ADK MCP tools.
Handoff
Deterministic code persists and digests the validated plan, then selects exactly one eligible item.
Noni receives that item, its exact Ryan brief, and only the referenced Nimi evidence.
Runtime enforcement
Deterministic code creates and persists the snapshot before invocation from tenant-scoped Firestore
content commitments, calendar projection state, supported capabilities, and explicit planning policy.
Callbacks reject unapproved or duplicate resources, invalid ordering, prohibited tools, cross-request
snapshot IDs, and read responses without the exact snapshot identity. Validation binds the plan to
both the approved strategy digest and planning snapshot digest, rejects unsupported channels and formats,
collisions, capacity or cadence violations, invalid deadlines, dependency cycles, invented evidence,
and authority overreach. Only deterministic code advances item lifecycle state.
Implementation references
- Prompt:
agent/harmonia_agent/temi_prompt.py
- Skill runtime:
agent/harmonia_agent/temi_skills.py
- Skill:
agent/harmonia_agent/skills/temi-editorial-planning-skills/SKILL.md
- Contracts:
EditorialPlannerInput and EditorialPlan in agent_models.py
- Snapshot API:
src/app/api/internal/editorial-planning-snapshot/route.ts
- Tests:
agent/tests/test_temi_skills.py, test_temi_editorial_plan.py, and test_temi_stages.py
Last modified on August 28, 2026