← Back to Skills Marketplace
fortytwode

Meta Ad Creatives

by fortytwode · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
1898
Downloads
5
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install meta-ad-creatives
Description
Track Meta (Facebook/Instagram) ad creative performance and hit rates across multiple accounts. Use when asked about creative win rates, which ads are hitting benchmarks, CPT/CPI/ROAS analysis, or comparing creative performance across accounts and time periods. Supports multiple benchmark metrics (CPT, CPI, IPM, ROAS) and currency conversion.
Usage Guidance
This skill appears to do what it says (query Meta Graph API, compute hit rates, store history), but there are several mismatches you should check before installing or running it: - The SKILL.md and the Python code expect FACEBOOK_ACCESS_TOKEN, FACEBOOK_APP_ID, and FACEBOOK_APP_SECRET (and will load a .env if present), but the registry metadata does not list any required environment variables. Treat this as a warning: the skill needs sensitive API credentials to operate. - The skill defaults to Firestore for storage unless you set USE_FIRESTORE=false. If left as default, it may attempt to use Google application-default credentials or other GCP service account keys — ensure you understand and control which cloud credentials will be available to the process. - There is no install/dependency specification. The script imports requests and python-dotenv; make sure you run it in a controlled environment with explicit dependency management (virtualenv, pinned requirements) to avoid supply-chain surprises. - The code will make network calls to graph.facebook.com using whatever access token you provide. Only supply tokens that are scoped appropriately and belong to accounts you expect the skill to read. Review the accounts_config.json to ensure it only lists accounts you want queried. - If you are concerned about cloud access, set USE_FIRESTORE=false to force local SQLite storage and run the tool in an isolated environment. Given these inconsistencies, do not provide production credentials or open cloud credentials to this skill until you (or a trusted reviewer) confirm the Firestore usage and add explicit install and credential declarations. If you want, provide the rest of the Python file (it was truncated in the review) and I can re-check for any additional network endpoints or unexpected behavior.
Capability Analysis
Type: OpenClaw Skill Name: meta-ad-creatives Version: 1.0.0 The OpenClaw AgentSkills skill bundle for 'meta-ad-creatives' is classified as benign. The Python script (`scripts/meta_ad_creatives.py`) correctly interacts with the Meta Graph API (`https://graph.facebook.com`) to fetch ad performance data, using environment variables for authentication (`FACEBOOK_ACCESS_TOKEN`, `FACEBOOK_APP_ID`, `FACEBOOK_APP_SECRET`). It stores processed data in a local SQLite database (`data/hit_rates.db`) and reads configuration from `accounts_config.json`, all within expected file paths. There is no evidence of data exfiltration to unauthorized endpoints, malicious execution (e.g., `eval`/`exec` of untrusted input, downloading remote payloads), persistence mechanisms, or prompt injection attempts against the AI agent in `SKILL.md`. All operations are aligned with the stated purpose of tracking Meta ad creative performance.
Capability Assessment
Purpose & Capability
The code and SKILL.md clearly require Facebook API credentials (FACEBOOK_ACCESS_TOKEN, FACEBOOK_APP_ID, FACEBOOK_APP_SECRET) to function, which is appropriate for the stated purpose. However, the registry metadata declares no required environment variables or primary credential — an inconsistency that could mislead users into installing without providing needed secrets or without realizing the skill will use them. The capability requested (access to Meta Ads via access token) matches the skill purpose, but the metadata omission is problematic.
Instruction Scope
The SKILL.md instructs the agent to load Facebook credentials (via env vars/.env), create an accounts_config.json, and optionally use Firestore (default) or SQLite (local fallback). The instructions and included code operate only on the described data sources (Meta Graph API, local config, local DB/Firestore). There is no obvious instruction to read unrelated user files. Two notes of caution: 1) load_dotenv() will load a .env file if present (so any secrets in a local .env could be picked up), and 2) the SKILL.md's default of Firestore for historical storage implies cloud credentials or application-default credentials may be used — that is not documented in the registry metadata or environment requirements.
Install Mechanism
This is an instruction-only skill with an included Python script and no install spec. The code uses third-party packages (requests, python-dotenv) but the skill provides no dependency or install instructions. That omission can cause runtime failures or surprise if the environment automatically installs packages. Lack of an explicit, trusted install mechanism (requirements.txt or package declaration) increases risk because required packages and their versions are not documented.
Credentials
The SKILL.md (and code) legitimately require Facebook API credentials and optionally a Firestore/GCP credential if Firestore is used. The registry, however, declares no required env vars or primary credential. This mismatch is disproportionate: users will be prompted to provide sensitive tokens by the README/code but the registry metadata does not surface that need. Additionally, Firestore as the default persistent store could attempt to use GCP credentials that are not declared or explained.
Persistence & Privilege
The skill does not request global 'always' presence, does not modify other skills' configs, and uses only its own data paths (data/hit_rates.db and accounts_config.json). Storing historical data in Firestore or SQLite is consistent with its purpose. No elevated platform privileges are requested in the metadata.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install meta-ad-creatives
  3. After installation, invoke the skill by name or use /meta-ad-creatives
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial skill release for tracking Meta (Facebook/Instagram) ad creative performance. - Calculates creative hit rates using key performance metrics (CPT, CPI, IPM, ROAS) - Compares performance across multiple accounts and time periods - Identifies winning creatives vs underperformers with benchmark support - Tracks historical data for trend analysis, with both Firestore and SQLite storage - Supports currency conversion for cross-market analysis
Metadata
Slug meta-ad-creatives
Version 1.0.0
License
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Meta Ad Creatives?

Track Meta (Facebook/Instagram) ad creative performance and hit rates across multiple accounts. Use when asked about creative win rates, which ads are hitting benchmarks, CPT/CPI/ROAS analysis, or comparing creative performance across accounts and time periods. Supports multiple benchmark metrics (CPT, CPI, IPM, ROAS) and currency conversion. It is an AI Agent Skill for Claude Code / OpenClaw, with 1898 downloads so far.

How do I install Meta Ad Creatives?

Run "/install meta-ad-creatives" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Meta Ad Creatives free?

Yes, Meta Ad Creatives is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Meta Ad Creatives support?

Meta Ad Creatives is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Meta Ad Creatives?

It is built and maintained by fortytwode (@fortytwode); the current version is v1.0.0.

💬 Comments