run-memory
run-memory
A playbook that runs again (often as a weekly or monthly automation) must know what its last run found, what it recommended and whether that worked. This atom is that memory. The report is separate (the write-report skill, ../write-report/SKILL.md); a run record is the short, structured note the next run reads.
Who loads it: every playbook that can run more than once for the same brand: research, analysis, ads, social, email, search, creators. Not one-off makers (a single post, one photo set). It runs twice per run: Start before the playbook's own work, End after its report.
What it does not replace. Where a playbook already keeps a working log, that log stays the source of truth: run-paid-campaigns' ads/campaigns/<slug>/state.md + decisions.md (the server's campaign-harness grammar, R<n> ids, ## Checks due), the outcomes-ledger skill's ledgers, analyze-performance's definitions.md. The run record copies their ids and adds only what they lack (the baseline recipe and the result numbers). It never keeps a second, different copy of their state, and when the playbook has its own scoring rule (run-paid-campaigns' "Score last week"), step 3 below is that step. Use its rule and add only what is missing.
Inputs (the calling playbook supplies them)
| Input | Rule |
|---|---|
playbook |
The playbook slug (analyze-performance). Goes in the tags. |
job |
The job in plain words (weekly ads check, monthly read, competitor watch). Never a slug, tool or id. One playbook with several cadences has one job per cadence. Keep it the same on every run, because the next run searches by it. job-slug is job lower-cased and hyphenated. |
subject |
Optional. Only when a job keeps separate runs per campaign, rival or list (spring-launch). Lower-case slug. |
cadence |
daily, weekly, monthly, quarterly, or ad hoc. Used to judge whether the last record is old. |
outcome_sources |
Where this playbook can see whether a recommendation happened and what it did. Examples: meta_read change or push status, its own log file, social_post_list, campaign_read, a ledger. |
Brand inputs (brand_id, brand_slug, coworker_agent_id, scope) come from the marketing-guide skill (../marketing-guide/SKILL.md) §1–2.