open-source skill for AI agents

No more AI report slop.

An open-source skill that makes AI agents write reports like a senior media buyer.

agent — ~/acme-marketing

Overall, this week presented a mixed picture, with both positive developments and areas that may warrant further attention.

It’s important to note that spend increased to $48,213, a 12% increase compared to the previous week’s $43,047.

This could potentially indicate that efficiency may have been impacted by a variety of factors.

Moving forward, it may be beneficial to continue monitoring performance closely.

happened
Spend +12% to $48.2k. CPA +39% to $61.
means
PR-03 and PR-07 are saturated at 4.1 frequency.
do
Swap their creative by Wed. If CPA isn’t under $50 by Fri, cut their budget 40%.

agent · ready

01Before & after

Same data. Less slop.

The rule: what happened, what it means, what to do.

Default agent 106 words

Overall, this week’s Meta Ads performance presented a mixed picture with both positive developments and areas that may warrant further attention. says nothing It’s important to note that filler total spend increased to $48,213, which represents a 12% increase compared to the previous week’s spend of $43,047. restates

The cost per acquisition (CPA) was $61.02, compared to $43.88 in the prior period. This could potentially indicate that campaign efficiency may have been impacted hedge ×3 by a variety of factors.

Conversions totaled 790. These metrics provide valuable insight into overall campaign health. empty

Moving forward, it may be beneficial to continue monitoring performance closely. no action Further analysis would be needed to draw definitive conclusions. punts

noro 57 words · −46%
What happened
Spend up 12% to $48.2k. CPA up 39% to $61. Conversions down 19% to 790.
What it means
Two prospecting ad sets, PR-03 and PR-07, drove the CPA rise at 4.1 frequency. The audience is saturated, not underfunded.
What to do
Swap creative on PR-03 and PR-07 by Wednesday. If CPA isn’t under $50 by Friday, move 40% of their budget to retargeting.

02Review panel

Every report faces a panel first.

Personas you define critique each draft. noro revises before you see it.

0102030405 / 05

noro drafts.

The media buyer checks the logic.

The CFO asks what it cost.

The client pushes back.

noro revises. Then you see it.

meta_weekly_report.md Draft v1In review · 1/3In review · 2/3In review · 3/3Revised v2
What happened
Spend rose 12% to $48.2k. CPA rose to $61 from $44.
What it means
Likely creative fatigue on prospecting.
What to do
Refresh creative and monitor.
MB Media buyer waiting reviewing ✓ noted
CFO CFO waiting reviewing ✓ noted
SC Skeptical client waiting reviewing ✓ noted

noro

Draft v1 done. Sending to 3 reviewers.

Senior media buyer

“Likely creative fatigue” is a guess. Frequency is 4.1 on PR-03 and PR-07; say that. “Monitor” isn’t an action.

CFO

CPA is up 39%. What did that cost us? Put a dollar figure on it.

Skeptical client

And if new creative doesn’t fix it? Give me the fallback and a deadline.

noro

3 notes in, 3 addressed.

03What’s inside

Small on purpose.

01

One rule

Three parts, one line each. Everything else is cut.

02

Your panel

.noro/panel.yml - name: Senior media buyer - name: CFO - name: Skeptical client - name: your persona

Reviewers are plain-text personas. Add, swap, or give one a veto.

03

The ban list

  • It’s important to note
  • a mixed picture
  • may potentially
  • moving forward
  • continue to monitor
  • leverage
  • valuable insight

Phrases noro never writes, maintained by the community.

04

Plain text

A few markdown files. No account, no telemetry.

04Install

One command.

npx noro@latest init

Finds Claude Code, Cursor, Codex CLI, Gemini CLI and Windsurf, and installs into each. Then ask for a report as usual.