Open source · MIT · Free
Run your marketing team like an open-source repo.
Rules an agent enforces, routines that draft the reports, every number linked to its source, and a human approval on anything public. Plain Markdown and git. No runtime, no database, no account.
Weekly pulse, week of Jan 5
agent, for Jordan · visibility: team · example data
| Metric | Last week | Source |
|---|---|---|
| Sign-ups | 412 | analytics |
| Sales calls | 17 | CRM |
| Organic traffic | 22,140 | search console |
| ABM engaged | no data gap | CRM not connected |
Data gap: CRM not connected. Connect it, or paste the count with its URL. Nothing guessed.
Three guarantees
Enforced by the system, not promised in a deck.
Every number links to its source.
An unlinked number is unverified, and the report says so. Anyone can click through to where it came from.
Data gaps over guesses.
A routine that cannot reach a tool writes the gap down. It never fills one in. The gaps list becomes the to-do list.
Nothing public without a human.
Public copy is always gated behind an approval. Agents draft; a person on your team signs off.
Start here
Two readers, two ten-minute paths.
If you run marketing
- Click Use this template, create a private repo, open it in your coding agent.
- Run
./.claude/bin/marketing init. /setup: five questions, and the agent writes your rulebook from your own website./first-run: today's report with zero tools connected, and one draft waiting for your approval.- When a teammate joins: one row in
01-rules/team.md, thenmarketing team sync.
If you are the engineer asked to vouch for it
- Plain Markdown and git. No runtime, no database, no secrets in the repo;
private/is never committed. - Skills are files (
.claude/skills/*/SKILL.md) with a metadata block the CLI reads. - The CLI is one bash script, shellcheck-clean, macOS and Linux.
- Roles and visibility map onto CODEOWNERS and branch protection.
- MIT.
Rules as code
Your brand, written so an agent can follow it.
The heart of the kit is CLAUDE.md plus 01-rules/. The agent checks these before every draft, so the rules actually get followed. /setup replaces the example rules with yours.
01No em dashes. Anywhere. Use periods, commas, colons, or parentheses.02Gloss acronyms on first use: "DLQ, dead-letter queue, ...".03Say the numbers correctly. GitHub stars: ~12K, never 15K.04Name supported destinations exactly. Do not promise one you do not support.05Plain verbs, not hype: deliver, retry, notify, connect.
Routines
Recurring work runs as skills, on a schedule.
Each routine declares how it delivers and at what visibility it writes. Anything public is gated; anything for leadership goes to the owner privately. marketing check enforces it.
| Routine | Cadence | Output | Delivery |
|---|---|---|---|
weekly-pulse | Monday | KPI pulse vs targets | DM to owner |
week-wrap | Friday | Shipped, blocked, hygiene | DM to owner |
changelog-weekly | Thursday | Ships as changelog entries and social drafts | Approval gate |
competitive-scan | Monthly | What competitors shipped and said (works with zero tools) | Registry |
monthly-report, leadership-update, insights-digest, content-planner | Varies | Install with marketing add <name> | Registry |
The CLI
One bash script.
Every scheduled routine and its last output, the open data gaps, the registry, and the compliance checks. marketing shim puts it on your PATH for every workspace.
# what runs, when, and where it went marketing # open data gaps in recent reports marketing gaps # browse and install from the registry marketing registry marketing add competitive-scan # visibility and delivery compliance marketing check marketing doctor # CODEOWNERS from 01-rules/team.md marketing team sync
Two repos
The public repo never holds your data.
The kit and the registry are public. Your workspace is a private repo made from the template. marketing add pulls routines from one into the other, and nothing flows back unless you open a pull request.
this public repo (kit + registry)
│ Use this template
▼
your private workspace ◀── marketing add <name> ── registry
Contribute
Built in the open. Your routine belongs in the registry.
Three kinds of items, each a page, each contributed by pull request: routines (an agent skill with a report template and an example output), report templates, and connectors (a guide for reaching one tool and citing a number from it as a link). Found a bug or a rule that does not hold? Open an issue.