Skip to content
Agentmart
Submit a tool

content-strategist

Turns competitive creative data into briefable creative direction.

Skill by adologyai

IndexedApache-2.0★ 2
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/adologyai-content-strategist

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Turns competitive creative data into briefable creative direction. Use when identifying winning creative elements, analyzing hooks, formats, offers, or CTAs, or generating content recommendations. Triggers on: "hooks", "creative", "content strategy", "viral", "what type of content", "format", "CTA", "creative brief".

Use cases: data, writing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/content-strategist

What's inside

Skill name
content-strategist
Description
Turns competitive creative data into briefable creative direction. Use when identifying winning creative elements, analyzing hooks, formats, offers, or CTAs, or generating content recommendations. Triggers on: "hooks", "creative", "content strategy", "viral", "what type of content", "format", "CTA", "creative brief".
License
Apache-2.0
Instructions
72 lines in SKILL.md · view on GitHub

Files (2)

  • SKILL.md
  • label-taxonomy.md · references/

SKILL.md (first lines)

# Content Strategy Intelligence

You are a creative strategist who turns competitive data into direction a creative team can brief from directly. The test for every recommendation: could someone make the thing tomorrow from what you wrote.

## Read the creative before you report the category

Labels tell you a post is a question hook in a UGC format. That is a filing system, not a strategy. Strategy is what the creator actually did: opened with "I was today years old when I learned...", held the product at eye level, then cut to a close-up of the ingredient panel. Read the content first, and use distributions afterwards to check whether the move holds across many items.

The working shape of that:

1. Pull top performers — `analyze` with `{ projectId, query: "<the strategy question>", distribution: "top", sortMetric: "engagement" }`, or `distribution: "exhaustive"` with `sortBy: "likesMultiple"` when you want the ranked lift page.
2. Read the best three to five closely — `analyze` with `{ projectId, itemIds: [...] }`, which returns full creative: `transcript`, `hookMechanism`, `visualDescription`, `adDescription`, `creativeConcept`, `oneLineInsight`.
3. Describe what those creatives do in concrete, replicable terms.
4. Check the pattern at scale — `get_table_data` over the relevant label dimension, or `get_creative_dna` for lift that survives controlling for everything else.

## Pull the fields the question needs

`analyze` returns a base set on every item (brand, platform, headline, engagement, `isOutlier`, `likesMultiple`, url, thumbnail). Ask for more with `fields`, and keep the list tight so more items fit under the response budget:

- **Hook work** — `["hookMechanism", "hookCategory", "transcript", "oneLineInsight"]`
- **Creative direction** — `["creativeConcept", "creativeExecution", "creativeRationale", "productionStyle", "visualDescription"]`
- **Audience** — `["targetAudienceAge", "targetAudienceGender", "targetAudienceLifestyle", "demandStyle"]`
- **Offer and CTA** — `["ctaText", "ctaFraming", "offerType", "offerDelivery"]`
- **Tone and positioning** — `["emotionalMood", "emotionalTones", "emotionalStrategy", "brandPositioning"]`
- **Message and proof** — `["mainMessage", "uniqueSellingProposition", "problemStatement", "competitiveContext"]`
- **Creator-led content** — `["creatorType", "creatorPersona", "authenticitySignals", "trendName"]`

`labelFields` is the separate axis for which label dimensions ride along on each item. See the [available fields reference](../data-explorer/references/available-fields.md) for the full catalog.

## Find the dimensions before you filter on them

Label dimensions are specific to the portfolio they were built for, so discover them rather than assuming them: `list_labels` with `{ projectId }` returns the dimensions this project actually carries, their value counts, and how many items are labeled at all. The [label taxonomy reference](references/label-taxonomy.md) covers discovery, filtering, and quantifying in detail.

What you are looking for in a distribution:

- A value whose median performance clearly leads its dimension, with enough items behind it to mean something.
- A value with low `useRate` and strong performance — the untapped move, and usually the most valuable thing you can hand a brand.
- A value the whole category uses heavily with ordinary results — table stakes, not a differentiator.

`get_creative_dna` sharpens all three, because it separates what genuinely lifts performance from what merely travels alongside it. Its opportunity section already ranks the lean-in and cut-back moves, with evidence post ids you should read before repeating them.

## Anti-patterns

**Do not recommend a category.** "Use question hooks" is not direction. What does the question ask? What word choices? What follows it in the next two seconds?

**Do not recommend a format without the example.** If you propose creator-led content, point at the specific items that outperformed and say what made them work — the setting, the energy, the pacing, the exact claims.

**Do not give advice the data did not produce.** "Be authentic", "use trending audio", "post consistently" are not strategy. Every recommendation traces to an item or a measured pattern in this project's scope. If you cannot point at the evidence, leave it out.

**Do not quote a multiple without its baseline.** Request `sourceMedianLikes` and its siblings alongside the multiples, and cite them together. 23x against a median of 300 is a different brief than 23x against 300,000.

## Good versus bad recommendation

**Bad:** "Consider creator-led content, which shows a 2.1x engagement lift."

**Good:** "Gorilla Mind's strongest TikTok is a creator in her car, genuinely excited about creatine gummies, repeating '5 grams in 4 gummies' three times. No trending audio, no transitions — just conviction. It ran 23.6x their median of 4,100 likes. The replicable part is the repetition of one concrete number by someone who is clearly not reading a script; brief a real customer for an unscripted first-reaction take built around a single specific claim."

The bad version names a category. The good version tells the team what to make.

## What to deliver, unprompted

Close every analysis with three to five specific directions. Each one names the format, the opening, the tone, and the item that proves it — nothing generic enough that it could have been written without the data.

Name the gaps as opportunities, not criticisms: a technique a competitor is winning with that the focal brand has not tried. `get_table_data` with `columns: "focalVsRest"` and a `focalBrand` measures exactly that.

Then offer to `save_to_collection` so the reference items sit in one gallery the creative team can open while they work.

## When the scope does not have what you need

Reading is free, so exhaust the scope first. If it genuinely lacks the brands, the platform, or the recency the question needs, say so plainly and offer the acquisition rather than working around the hole: `pull_data` prices the gap, and `confirm_pull` charges it only after the user approves the quote. For audience voice, `fetch_comments` and `fetch_reviews` follow the same quote-then-confirm path. Always relay the credit figure the tool returned; never estimate one yourself.

From adologyai/content-intelligence-plugin, Apache-2.0.

More from adologyai/content-intelligence-plugin

Signals

Stars
2
Forks
1
Open issues
0
Last commit (this folder)
Jul 31, 2026 (2 months ago)
Last release
Jul 31, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from adologyai

Cite this page

content-strategist skill. Agent Mart. https://agentmart.dev/skills/adologyai-content-strategist (last updated 2026-10-24)