Community recipe · Research across apps
Prepare a weekly SaaS metrics anomaly digest
Implementation guide · untested. Reviewed procedure; no workflow execution or measured results.
The problem
SaaS teams need to notice unusual business movements without manually reconciling subscription, activation and acquisition dashboards every week.
Attributed source action
Combines subscription billing, product activation and acquisition data, computes weekly metrics against a trailing baseline and sends a narrative anomaly digest.
Expected output
A weekly narrative metrics digest with anomalies and baseline comparisons for human validation.
Where this framing comes from
- Core problem: Editorial purpose framing
- Agent job: Attributed source documentation or report
- Expected output: Editorial purpose framing
- Relevant job roles: Editorial purpose framing
- Benefit type: Editorial purpose framing
Editorial framing and outcome limits
Describes the task’s purpose and intended output; measured benefit, safe unsupervised operation and successful delivery are not established by this framing.
Editorial synthesis based on the linked source. This framing does not add evidence of successful delivery or results.
Implementation guide · untested
Source-supported actions are attributed evidence. Proposed steps, prompts, synthetic examples and checks are original editorial guidance; the workflow has not been run.
Why this agent / simpler alternative
- Agent contribution
The useful agent contribution is reconciling named metric definitions across supplied datasets, explaining evidence behind a flagged movement and preparing a short investigation queue. Arithmetic should remain reproducible outside the language model.
- Simpler alternative
Use a spreadsheet with locked formulas or a native analytics dashboard when the same small set of metrics comes from one source. Add narrative assistance only if interpretation and cross-source reconciliation are real recurring work.
- Unsuitable when
Metric definitions or identity joins are unsettled, source data is incomplete, the audience expects audited financial reporting, or the intended use is autonomous pricing, customer action or financial forecasts.
Source-supported scope
A community recipe specifies multi-source descriptive metrics, baseline flags and a scheduled narrative. Its configuration is not verified connector code or evidence of operational delivery.
Setup — required, optional and unknown
- Required
A metric owner who can approve the reporting calendar, customer-count unit, subscription normalization and activation definition.
An isolated draft workspace and redacted exports for the first trial; choose connector work only after a compatibility check.
A fixed aggregation specification and independent calculation method for checking the digest.
- Optional
An approved change log of releases, campaigns and outages to compare against anomaly dates.
A later read-only integration plan and a separately approved reporting audience.
- Unknown
Exact Hermes/runtime/model behavior, supported connectors, query implementation, pagination and permissions remain untested.
Current API limits, provider terms, pricing and data-residency suitability have not been verified.
The recipe's cost estimate and comparative benchmark statements are not independently substantiated.
Inputs and access
- Name
Subscription snapshots
- Format
CSV/JSON: pseudonymous subscription/customer IDs, status, currency, recurring amount, interval, effective timestamps
- Source or owner
Billing data owner
- Access scope
Approved reporting period plus comparison windows; exclude payment credentials
- Permission needed
Authorize these fields for the chosen processing destination; new live access needs separate approval.
- Name
Product cohort extract
- Format
CSV/JSON: pseudonymous account ID, signup timestamp, activation timestamp or approved event marker
- Source or owner
Product analytics owner
- Access scope
Minimum fields needed for the defined cohort
- Permission needed
Confirm linkage and permitted use; exclude raw personal-event payloads.
- Name
Acquisition aggregates
- Format
CSV: report date, channel, signups and attribution convention
- Source or owner
Marketing analytics owner
- Access scope
Aggregated approved date range
- Permission needed
Owner authorizes use; no ad-account writes.
- Name
Metric contract and context
- Format
Text/JSON: formulas, timezone, cutoffs, currency policy, expected latency, event version and release log
- Source or owner
Finance/product owners
- Access scope
This reporting workflow
- Permission needed
Owners sign off definitions; reporting audience approval is separate.
Documented source actions
Retrieve billing, events and acquisition data.
Calculate metrics; compare with a 30-day baseline using a two-standard-deviation rule.
Write narrative and proposed investigations; schedule Slack delivery.
Proposed implementation steps — unexecuted
Write metric_contract.json before collecting data. Define MRR inclusion rules, month-normalization of billing intervals, refund treatment, active-customer unit, conversion cohort maturity, activation event version and local reporting cutoff. Record unresolved business decisions as blocking questions.
Build input_manifest.csv with each filename, extraction timestamp, coverage start/end, timezone, currency set, row count and owner. Check missing partitions, duplicate IDs and the proportion of product records that cannot be linked to billing. Keep raw copies immutable in the approved workspace.
Create deterministic metric tables with numerator, denominator, formula version and source-row references. Separate currencies unless an approved conversion policy and dated rates are supplied. Reconcile opening MRR plus categorized movements to closing MRR, listing unexplained residuals.
Construct anomaly_candidates.csv with baseline dates, sample count, mean, spread, observed value and rule used. Exclude the current comparison period from its own baseline. Mark insufficient observations and zero spread as unevaluable. Treat any flag as a triage signal rather than proof of an incident.
Draft a digest whose rows link to metric calculations. Separate observation, possible explanation and proposed investigation. Compare dates to releases or campaigns only as hypotheses unless direct evidence supports a cause. Include data gaps and one owner-action question per material flag.
Have the metric owner approve or correct the draft, then save the review result. Prepare a future-delivery specification with exact destination, permitted content, schedule, data-freshness gate and duplicate-send key. Keep delivery and recurring integration disabled until separately authorized and tested.
Original starter prompt — proposed
- Origin
editorial_proposal
- Text
Prepare a private draft SaaS metrics digest for {period} using only {approved_exports}, {metric_contract} and {context_log}. First identify missing coverage and definition conflicts. Return reproducible metric rows with numerators, denominators and source references; then flag unusual changes using {anomaly_rule}. Label causal explanations as hypotheses unless direct evidence supports them. Keep currencies separate under {currency_policy}. Do not connect accounts, create credentials, schedule jobs, post messages or change billing/product settings. Stop affected calculations when data is incomplete and return the exact question for {metric_owner}.
- Placeholders
period
approved_exports
metric_contract
context_log
anomaly_rule
currency_policy
metric_owner
- Limitations
Original draft-first proposal. It neither supplies verified connectors nor grants access, scheduling or sending permission.
Synthetic worked example — not an agent run
- Status
synthetic
- Label
Invented arithmetic example, not company results or an executed anomaly run
- Content
- Period
Example week
- Currency
CAD
- Opening mrr
1000
- Movements
- New
100
- Expansion
40
- Contraction
-20
- Churn
-50
- Closing mrr
1070
- Reconciliation residual
0
- Activation
- Activated
10
- Eligible signups
40
- Rate
0.25
- Fixture baseline mean
0.4
- Fixture baseline standard deviation
0.05
- Fixture z score
-3
- Draft text
MRR rises by CAD 70 in this fictional fixture. Activation is 10 of 40 eligible signups, 25%. The illustrative baseline flags it for review. Cause is unestablished; first confirm event coverage and cohort definitions.
- Delivery status
not sent
- Artifact url
Not specified.
Costs and effort — unmeasured
- Verified prices
- Setup work
Agree definitions across billing, product and acquisition owners.
Map fields, evaluate identity joins and implement a reproducible calculation layer.
For any later live deployment, verify exact connector read scopes and run a sandbox access check.
- Recurring work
Check extraction freshness and reconciliations; resolve unmatched records; review explanations and proposed investigations.
- Unknowns
Actual model/API/hosting costs and human review effort are unmeasured.
Provider charges and integration availability depend on the chosen accounts and plans.
No evidence establishes financial accuracy, time savings or return on investment.
Failure modes
- Signal
Closing MRR differs from opening plus categorized movements.
- Consequence
A fluent summary conceals a billing-definition or coverage error.
- Signal
Event name/version changes or cohort maturity differs between periods.
- Consequence
An apparent activation change may be measurement drift.
- Signal
A currency, late-arriving extract or duplicate account is silently combined.
- Consequence
Totals and rates become incomparable.
- Signal
The digest asserts a release caused a decline without supporting investigation.
- Consequence
The team may take an expensive corrective action for the wrong reason.
Recovery steps
- Trigger
Reconciliation or join check fails.
- Action
Quarantine affected metric rows; trace the residual to source IDs and obtain an owner-approved rule correction. Recompute before rewriting the narrative.
- Stop condition
Unexplained financial residual or unresolved identity mapping remains.
- Trigger
A baseline is invalid or the current period is incomplete.
- Action
Label the metric unavailable, retain available observations and specify the earliest coverage needed for a comparable run.
- Stop condition
Do not manufacture baseline values or silently carry forward old data.
- Trigger
A proposed explanation lacks evidence.
- Action
Rewrite it as a question and cite the missing evidence needed; leave operational changes outside the digest workflow.
- Stop condition
No causal assertion or action commitment is published without support and authorization.
Source-observed and proposed approval boundaries
- Source observed
The recipe schedules a configured Slack destination; approval behavior is unspecified.
- Editorial recommendations
Authorize each processing destination and the minimum business data it receives.
Account grants, credentials and persistent access require separate approval; never put secrets in the prompt or artifact.
Approve the exact reporting audience and recurring content scope before any delivery.
The digest does not authorize refunds, subscription changes, deployments, employee decisions or financial transactions.
Unexecuted validation plan
- Fixture
Unexecuted proposal: synthetic billing rows matching the example reconciliation, 40 eligible signups with 10 activations, a known baseline of mean 0.40 and standard deviation 0.05, plus variants containing a duplicate ID, missing extract, mixed currency and changed event version.
- Acceptance checks
Reconcile fictional closing MRR to CAD 1,070 with zero residual.
Return activation 25% and illustrative z-score -3.0 under the supplied calculation convention.
Detect the duplicate, missing-source, currency and definition-drift variants.
Every narrative number resolves to a calculation row; causal claims remain hypotheses.
No live data access, credentials, recurring jobs or external messages are needed for this fixture.
- Stop conditions
Owner has not settled the metric definitions.
Any negative fixture produces a confident complete digest without a visible warning.
Unapproved live access or sending would be required.
Independent calculations and reported numbers disagree.
- Executed
No
Limits
No APIs, connectors, schedules or message delivery were tested.
The public file is an instruction recipe; no end-to-end operational evidence was established here.
The synthetic example is illustrative bookkeeping and anomaly arithmetic, not accounting guidance or a statistical reliability claim.
Source publication date is unknown; file modification metadata does not establish initial publication.
Canadian reporting inputs require an explicit timezone/currency policy; jurisdictional or integration suitability is not established.
Guide source links
https://github.com/mergisi/awesome-hermes-agent/blob/main/skills/weekly-mrr-digest/SKILL.md ↗
documented_steps; approval_boundaries.source_observed
Editorial candidate. This is source-backed reporting or a documented workflow. BotCurrent has not independently tested this task. A proposed Canadian adaptation is not evidence of a Canadian deployment or compliance certification.
Original source
https://github.com/mergisi/awesome-hermes-agent/blob/main/skills/weekly-mrr-digest/SKILL.md ↗Attributed to: Mustafa Ergisi and contributors
Community recipe- Original action type
- cross_app_investigation
- Source outcome limits
- This community recipe describes a procedure; it does not prove successful execution or independently reproduced results.
- Evidence attribution caveat
- This community recipe describes a procedure; it does not prove successful execution or independently reproduced results.
- Source approval description
- Not specified; recipe schedules delivery to a configured Slack channel.
- Named tools
- Hermes cron; Stripe; Mixpanel or Amplitude/PostHog; GA4; Slack
- Model or version
- Recipe skill version 1.0.0; Hermes runtime/model unspecified
- Publication date
- Unknown
- Source last checked
- 2026-10-14
- Demonstrated in Canada
- Unknown
- Canadian availability
- Unknown
- Proposed Canadian adaptation
- Normalize CAD/multi-currency subscription amounts and tax treatment; use a Canadian reporting timezone and approved data locations.
- Recommended approval boundaries
- Approve read scopes and a specific reporting audience; human-check financial definitions and explanations before decisions.