notfair
NotFair is a local automation platform that uses goal-driven intelligent agents to achieve 24/7 marketing growth and operational optimization.

Suggested prompts
About this skill
NotFair
NotFair is a goal-driven, loop-powered marketing automation tool. It runs entirely on your machine, on top of the Claude Code or Codex login you already pay for. By connecting your marketing data sources (Google Ads, Meta Ads, Search Console, etc.), it turns your business ambitions into measurable metrics and runs a disciplined improvement loop — measure, review past moves against their predicted effects, make one new move, log the prediction, repeat on your cadence. You name the goal; the agent handles the rest.
NotFair offers two ways to use it: as a standalone app that runs autonomous goal loops, or as a Claude Code plugin providing on-demand marketing skills (account audits, campaign management, SEO analysis, etc.).
Use Cases
- Marketers who want to automate daily optimization tasks such as adjusting bids, pausing wasteful keywords, and generating ad copy.
- Website owners who need continuous SEO monitoring and improvement — traffic drop analysis, technical issue fixes, content optimization.
- Ad operators who need regular account audits to identify wasted spend and take action.
- Anyone who wants to state a business goal in plain language (e.g., "Grow organic clicks 30% in 90 days") and have the system execute it autonomously.
Core Capabilities
Goal Loop (App)
- Natural language goal setting: Describe your business ambition in everyday language, e.g., "Grow organic clicks 30%" or "Cut CAC to $30."
- Automatic measurability: The agent explores your connected data sources, authors a metric query that returns one number, tests it, and the platform re-runs the exact query server-side — only a reproducible number with a measured baseline goes on the books.
- Loop optimization: On your cadence (e.g., daily at 9am), the platform measures the metric mechanically, wakes the agent to review past moves against their predicted effects, records what it learned, and allows at most one new move — logged with a falsifiable expected effect and an observation window.
- Real-time progress tracking: One screen per goal — chat on the left (where the goal is defined and steered), live progress chart with target line, check diary, action markers, and the agent's accumulated memory on the right.
- Code changes through pull requests: Attach a GitHub-backed codebase and the agent works in its own branch, pushes, opens a PR, and registers it with NotFair. Merging stays yours.
- Shared context + private memory: A workspace-wide
PROJECT.mdbrief that every agent carries, plus a per-goal learnings ledger that compounds across checks.
Plugin Skills (Claude Code Plugin)
- Google Ads audit & management: Account audit (7 health dimensions), campaign management (pause/enable, bid adjustments, keyword optimization, negative keywords, campaign creation), RSA copy generation with A/B testing, landing page audit.
- Meta Ads audit & management: Account audit (7 dimensions tuned for Meta), campaign management (ROAS analysis, frequency-first triage, creative fatigue diagnosis, audience overlap, structure optimization).
- SEO analysis & optimization: Full SEO audit with GSC data, content creation (E-E-A-T guidelines), keyword research, meta tags optimization, Schema structured data, single-page analysis, broken link checker, GEO (Generative Engine Optimization), local SEO, hreflang, sitemap audit, image SEO, e-commerce SEO, programmatic SEO, competitor page gap analysis, search experience optimization, SEO drift monitoring, backlink audit, CMS setup. Over 20 skills.
- Cross-model review: Second opinion from Google Gemini, especially strong on Google Ads and SEO decisions.
- Skill upgrade: Updates the installed NotFair plugin to the latest marketplace release.
How It Works
Goal Loop (App)
- State the ambition: Type your goal in natural language, optionally tagging a platform focus (SEO, Google Ads, Meta Ads). NotFair provisions an anonymous agent for the goal (agent = goal, 1:1) and drops you into a chat where it is already working.
- The agent makes it measurable: It explores your connected data sources, authors a metric query that returns one number, and tests it. Then the platform re-runs the exact query server-side — only a reproducible number with a measured baseline goes on the books. The agent also backfills ~30 days of history so your chart has context from day one.
- You confirm the plan — the loop starts on the spot: The agent reports the baseline and proposes a target, cadence, and spend envelope. The moment you confirm in chat, the goal goes live and the first check runs immediately. Two modes: achieve (reach the number, then done) and maintain (hold it there forever — a watchdog).
- The loop runs on your cadence: Each check, the platform measures the metric mechanically (the agent never self-reports the number it's judged on) and wakes the agent: it reviews past moves against their predicted effects, records what it learned, and the goal protocol allows at most one new move — logged with a falsifiable expected effect and an observation window that gates the touched resources until review.
Plugin Skills (Claude Code Plugin)
- Invoked in Claude Code via
/notfair:<skill-name>commands. - The skill connects to the relevant data source (e.g., Google Ads account), performs analysis and diagnosis, and provides recommendations or executes actions.
- You can further guide the agent through conversation, e.g., "Do it all."
What You Need to Provide
Goal Loop (App)
- Hardware & OS: An Apple Silicon Mac, Node 20+.
- LLM backend: At least one harness installed and authenticated — Codex CLI (recommended) or Claude Code. NotFair brings no LLM keys of its own; it runs on the harness login you already pay for.
- Data source connections: Authorize NotFair on the Connections page (PKCE OAuth) to access your Google Ads, Meta Ads, Search Console, Google Analytics, PostHog, Mixpanel, Stripe, Supabase, etc. You can also paste a custom MCP URL or use the
localsource to run a shell command and read the number from stdout. - Goal description: State your ambition in plain language.
Plugin Skills (Claude Code Plugin)
- Claude Code installed, with the NotFair plugin added (via
/plugin marketplace add nowork-studio/notfairor direct settings edit). - Data source connections: The first time Claude Code connects to a NotFair MCP server (Google Ads or Meta Ads), it opens a browser tab and asks you to sign in to notfair.co — authorize once per platform and the token is stored in your OS keychain. For Search Console, you need Google Cloud SDK and Search Console API enabled.
- Optional: Attach a GitHub repository to allow the agent to modify code and create PRs.
What You Get
Goal Loop (App)
- One screen per goal: chat on the left (where the goal is defined and steered), the loop's state on the right — a time-true progress chart with the target line, every action as a marker on the moment it happened, a tick-by-tick check diary, open actions with review dates, and the agent's accumulated memory.
- The loop runs autonomously without manual intervention. You can chat with a goal anytime to adjust or pause.
- All agent actions are recorded in the app and visible.
- If a codebase is attached, the agent creates PRs for you to review and merge.
Plugin Skills (Claude Code Plugin)
- For audit skills: a health scorecard with key issues (wasted spend, keyword health, creative fatigue, etc.) and prioritized action recommendations.
- For management skills: the agent can execute actions directly (pause keywords, adjust bids, add negatives, etc.) and report results.
- For analysis skills: data-driven diagnostic reports, e.g., traffic drop reasons, SEO issue list, 30-day action plan.
- For content skills: optimized copy, meta tags, Schema structured data, etc.
Usage Examples
Goal Loop (App)
User types in chat:
"Grow organic clicks 30% in 90 days."
NotFair agent:
- Connects to Google Search Console, verifies the metric, measures baseline: 59 clicks over the latest 28 finalized days.
- Backfills 30 days of history.
- Proposes plan: target 77, deadline 2026-10-11, daily 9am checks, $0 spend envelope.
- User confirms "Confirmed — record it." Loop starts. Chart shows clicks at 76 against target 77, check diary logs every check (including honest no-ops when the agent's own experiments haven't matured).
Plugin Skills
Google Ads audit example:
User: /notfair:google-ads-audit
Claude responds: Connected to your Google Ads account (MyStore). 3 campaigns active. $2,400 spent this month. Scorecard:
| Dimension | Status | Summary |
|---|---|---|
| Conversion tracking | OK | 3 actions firing correctly |
| Keyword health | Critical | 8 keywords burning cash |
| Search term quality | Warning | 12 irrelevant queries |
| Impression share | Warning | Losing 35% to rank |
| Spend efficiency | Critical | $340/mo wasted |
Top 3 actions:
- Pause 3 keywords ($210/mo, zero conversions)
- Add 12 negative keywords ($130/mo wasted on irrelevant terms)
- Increase bids 15% on 2 high-converting keywords losing IS
User says "Do it all." Agent executes all actions and reports completion.
Selection Guide
NotFair offers two modes of use:
- Goal Loop (App): Best for continuous, autonomous goal optimization without manual intervention. Set a goal and the agent runs independently; you only check progress occasionally.
- Plugin Skills (Claude Code Plugin): Best for manual, on-demand marketing tasks like account audits, campaign management, SEO analysis. You drive through conversation and the agent executes specific operations.
Both share the same underlying data source connections (NotFair-hosted MCP servers), but differ in operation. You can use both simultaneously, but note they use different runtimes (app runs standalone, plugin requires Claude Code).
Important Notes
- Hardware requirement: Apple Silicon Mac only, Node 20+.
- LLM backend: You must have your own Codex CLI or Claude Code subscription and login. NotFair does not provide LLM keys.
- Data privacy: All data is stored locally in a SQLite file (
~/.notfair/db.sqlite); agent workspaces live in~/.notfair/agents/<agent-id>/. OAuth tokens are stored in that SQLite database (not yet encrypted at the application layer — protect your local user account accordingly). - Network communication: Metric queries and some operations require communication with NotFair-hosted MCP servers (notfair.co) for metric verification and data routing. However, your data primarily resides locally.
- Limitations: In the goal loop, each check allows at most one action, and actions are subject to observation windows to avoid over-intervention. In plugin skills, Meta Ads mutation surface is intentionally narrow — no programmatic create-campaign, no audience editing, no creative upload; operations outside that surface route the user to Meta Ads Manager.
- Compatibility: Both app and plugin depend on NotFair's MCP servers. Google Ads and Meta Ads connections require OAuth sign-in. Search Console requires Google Cloud SDK and API enabled.
- Upgrade: Plugin skills can be updated via the
/notfair:upgradeskill. The app can be updated vianotfair update.