data-explorer
Guides querying, filtering, and curation across a project's scope.
Skill by adologyai
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-data-explorer
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.
About
Use cases: spreadsheets, data, writing
Reviews
Write a reviewNo 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/data-explorer
What's inside
- Skill name
data-explorer- Description
- Guides querying, filtering, and curation across a project's scope. Use when users want to browse content, filter by specific criteria, pivot label data, search, or run custom analysis beyond standard insights. Triggers on: "filter", "show me items", "browse", "search for", "find content", "top performers", "breakdown by", "collection".
- License
- Apache-2.0
- Instructions
- 67 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- available-fields.md · references/
SKILL.md (first lines)
# Data Exploration
Every read takes a `projectId` and returns what that project's scope covers. Two levers decide whether you get a useful answer or a wall of noise: picking the right reader, and controlling which fields come back.
## Discover before you filter
Label dimensions vary by project — they depend on what has been analyzed. Call `list_labels({ projectId })` to see which dimensions exist and their top values before naming one in a filter; a dimension the data doesn't carry silently matches nothing. `get_table_data({ projectId, listDimensions: true })` answers the same question from the pivot side. `aggregate({ projectId, groupBy: ["brand"], measures: [{ field: "*", fn: "count", as: "n" }] })` tells you the exact entity names the scope tracks, which is what `feedNames` and `brand` filters match against.
## Choosing a reader
**`analyze`** is the primary content tool. Four distributions:
- `"balanced"` (default) — equal representation per feed, a mix of top and recent. The honest "what does this scope look like" read.
- `"top"` — highest engagement per feed; set `sortMetric` to change which metric.
- `"recent"` — newest per feed.
- `"exhaustive"` — no sampling. A deterministic ranked page over the full filtered set with `totalEstimated` and `nextOffset`, so you can page the whole thing. Pair with `sortBy`, including the lift keys (`likesMultiple`, `viewsMultiple`, …). This is the leaderboard and "give me all of X" mode.
The sampled distributions read the creative feeds — brand and influencer — unless you name `feedTypes` yourself, so raw search and discussion items don't crowd a "what hooks are working" sample. Exhaustive reads exactly what you filtered, nothing added.
Two other modes: `mode: "semantic"` finds posts by meaning from a natural-language `query` (it honors platform, feed type, dates, and `includeComments`; narrow further after the results come back), and passing `itemIds` runs a by-id deep dive that returns full creative, labels, and performance for specific posts.
**`aggregate`** answers analytical questions — trends, averages, "top platforms by median likes". It groups over `platform`, `brand`, `feedType`, `format`, and `time`, and always returns grouped rows, never items. Lift multiples are per-item and are rejected here; for lift, use `analyze` exhaustive sorted by a `*Multiple` key.
**`get_table_data`** builds label pivot tables: `rows` (one or two label dimensions) × `columns` (brand, platform, feedType, mediaType, timePeriod, or focalVsRest) × `metrics` (count, useRate, medianLikes, medianViews, medianShares, viralRate). Rows are always label dimensions, and it counts labeled items only — search and discussion items frequently carry no labels, so read those with `analyze` instead.
**`get_creative_dna`** goes past distribution to effect — which structural elements actually drive performance, with controlled lift, per-brand advantages and gaps, and evidence posts. Lock the axes with `focusCategories: ["Hook","Emotion","Production"]`.
**`search_all`** is keyword search within the project's scope, ranked by engagement. **`query_items`** lists rows over the same scope with a fixed shape.
## Field selection
`analyze` returns a base set on every item — id, brand, feedType, platform, headline, likes, views, shares, comments, engagementScore, isOutlier, outlierType, likesMultiple, createdAt, url, thumbnail — and two independent axes on top:
- **`fields`** adds creative analysis: `fields: ["hookMechanism", "creativeConcept", "ctaText"]`. Omit it and the item comes back with everything the analysis carries.
- **`labelFields`** chooses which label dimensions ride along: `labelFields: ["Hook", "Format"]`, or `[]` to suppress labels entirely.
Whenever you cite a lift multiple, request its denominator too (`sourceMedianLikes` beside `likesMultiple`) and state the baseline. A "5x" with no baseline is not a finding.
Filter parameter names differ between readers — `analyze` takes `platformFilter` and `feedNames`, `query_items` takes `platform` and `brand`, `aggregate` nests everything under `filters`. See the [available fields reference](references/available-fields.md) for the full field catalog, the per-tool filter names, sort keys, and page limits.
## Parallel reads
Independent reads run at once. Two brands side by side, two platforms, this quarter against last, a `get_table_data` pivot alongside the `analyze` sample that will illustrate it — issue them together rather than in sequence.
## Audience voice
Comments on Instagram and TikTok posts are fenced out of the default read so they don't drown brand analysis. To read them, ask for the discussion class explicitly: `analyze({ feedTypes: ["discussion"], includeComments: true, platformFilter: ["instagram"] })`, one call per platform. Reddit threads are always readable. Amazon product reviews land the same way — read them with `query_items({ feedType: ["discussion"], platform: "reviews" })`. Bringing new comments or reviews into the pool goes through `fetch_comments` / `fetch_reviews`, which quote first and charge only on a confirmed call; relay the exact figure the quote returns and wait for the user's yes.
## Read the envelope, not just the rows
- `scopeEmpty` means the project has no sources yet. Check `get_project` and offer to pull rather than reporting "nothing found".
- `totalEstimated` and `hasMore` say whether your page is the whole answer. Page with `nextOffset` before generalizing.
- `access` counts flag sources that are stale or never acquired — say so when the numbers depend on them.
- On ranking-shaped aggregates, `rows` cleared the reliability floor and `directionalRows` did not. Draw the ranking from `rows`; cite the rest as directional with their `n`.
## Curating
`save_to_collection({ projectId, collectionName, itemIds })` saves items into a named collection in the project's portfolio, creating it if needed. Item ids must come from reads in that same project. `list_collections` and `get_collection` bring a collection back, and its item ids feed straight into `analyze({ itemIds })` for a deep dive. Save the examples worth revisiting as you find them, not at the end.
## Error recovery
- **Zero items.** Broaden before concluding: drop the platform filter, widen the dates, remove the label filter. Then check `get_project` — the scope may cover sources whose data was never acquired.
- **`list_labels` returns nothing.** The scope has items but no analysis yet. Read on engagement, platform, and recency instead of label dimensions.
- **A label filter matches nothing.** The dimension or value name is off. Re-check it against `list_labels` rather than guessing a variant.
- **A brand name comes back unresolved.** The project doesn't track it. The response lists what IS in scope — offer that, or offer to add the brand and pull its data.From adologyai/content-intelligence-plugin, Apache-2.0.
More from adologyai/content-intelligence-plugin
- 0.563score
audience-deep-dive
adologyai
Build a rich, behaviorally grounded audience profile that goes well beyond demographics — surfacing the fears, desires, jobs-to-be-done, category tensions…
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
weekly-brief
adologyai
Build a 3-page Adology Weekly Competitive Intelligence Brief (PDF) from a project's scope.
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
tone-of-voice
adologyai
Build a distinctive, actionable tone of voice for a brand — grounded in Jungian archetypes, audited from Adology data, pressure-tested against competitors…
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
research-analyst
adologyai
Guides competitive analysis and benchmarking inside a project's scope.
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
content-strategist
adologyai
Turns competitive creative data into briefable creative direction.
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
creative-toolkit
adologyai
Builds a living creative toolkit for a campaign or brand — a curated library of hooks, angles, copy lines, scripts, and content concepts sourced from…
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
getting-started
adologyai
Introduces Adology's competitive and audience intelligence platform.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
brand-marketing-mode
adologyai
Activates Brand Marketing Mode for Adology — a way of thinking about content and brands that blends what we can observe in the data with brand science…
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
brand-builder
adologyai
Builds out a portfolio's tracked universe and the project scopes analysis reads from.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
influencer-coach
adologyai
Personal performance coach for influencers and creators.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
thumbnails
adologyai
Work with Adology thumbnails — the poster frame on every item.
SkillBFreshness: B★ 2Claude Code +9 - 0.548score
influencer-vetting
adologyai
Vet, score, and select influencer/creator partners for brand campaigns using content intelligence.
SkillBFreshness: B★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Jul 31, 2026 (3 months ago)
- Last release
- Jul 31, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Website
- adologyai.com
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from adologyai
- 0.563score
research-analyst
adologyai
Guides competitive analysis and benchmarking inside a project's scope.
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
tone-of-voice
adologyai
Build a distinctive, actionable tone of voice for a brand — grounded in Jungian archetypes, audited from Adology data, pressure-tested against competitors…
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
audience-deep-dive
adologyai
Build a rich, behaviorally grounded audience profile that goes well beyond demographics — surfacing the fears, desires, jobs-to-be-done, category tensions…
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
content-strategist
adologyai
Turns competitive creative data into briefable creative direction.
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
creative-toolkit
adologyai
Builds a living creative toolkit for a campaign or brand — a curated library of hooks, angles, copy lines, scripts, and content concepts sourced from…
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
weekly-brief
adologyai
Build a 3-page Adology Weekly Competitive Intelligence Brief (PDF) from a project's scope.
SkillBFreshness: B★ 2Claude Code +9
Cite this page
data-explorer skill. Agent Mart. https://agentmart.dev/skills/adologyai-data-explorer (last updated 2026-10-24)