apply-rosetta-stone-ma…
Skip Phase 5 NQL re-validation. Intended for same-conversation hand-off from /generate-rosetta-stone-mappings. Do NOT pass when the input is from a file, a…
The user's intent (e.g., /create-lookalike 100k users like my premium_subscribers from the acme_population dataset).
$ npx -y skills add narrative-io/narrative-skills-marketplace --skill create-lookalike --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/create-lookalikeContext preview
The summary Claude sees to decide when to auto-load this skill.
The user's intent (e.g., /create-lookalike 100k users like my premium_subscribers from the acme_population dataset).
name: create-lookalike
description: |
Create a look-alike audience from a seed audience and a candidate
population dataset. Classifies Rosetta Stone attributes, generates
the same materialized-view scoring pipeline Lookalike Studio emits
(Naive-Bayes categorical weights + Gaussian continuous similarity),
gates on approval, submits via `narrative_workflows_create`, and
monitors the build to completion.
Use when: "create a lookalike audience", "find more users like this
segment", "expand my seed audience to 500k similar users", "score
the population against my customers", "build a look-alike of
dataset X".
(narrative-audience)
license: MIT
compatibility: >-
Requires the narrative-mcp MCP server and local file Read. Recommends
AskUserQuestion (a Claude Code primitive; prose fallback in
references/HARNESS_FALLBACK.md), the narrative-knowledge-base MCP
server, and a shell with python3 (3.8+) to run
scripts/lookalike_state_tag.py for UI re-edit support. Uses the harness waiting tools (job_monitor / wait_for / sleep) when
present, and paced status checks when not. Portable to
any agentskills.io-compliant harness via the documented fallbacks.
metadata:
version: 0.1.3
narrative:
args:
- name: "--seed"
value: "<id|name>"
required: false
description: >-
The seed audience dataset — the users the output should look
like. Numeric ID or datasetName. If omitted, the skill asks.
- name: "--population"
value: "<id|name>"
required: false
description: >-
The candidate population dataset to score and select from.
Numeric ID or datasetName. If omitted, the skill asks.
- name: "--size"
value: "<N>"
required: false
description: >-
Output mode "size": keep the top N highest-scoring candidates.
Mutually exclusive with --min-score.
- name: "--min-score"
value: "<0..1>"
required: false
description: >-
Output mode "score": keep every candidate whose similarity
probability is at or above this threshold (clamped to
0.001–0.999 and converted to log-odds internally). Mutually
exclusive with --size.
- name: "--include-seed"
required: false
default: false
description: >-
Union the seed members back into the output audience with a
perfect score of 1.0. Off by default — the output is
look-alikes only.
- name: "--name"
value: "<audience name>"
required: false
description: >-
Unique name for the output audience dataset. Slugified to form
the pipeline prefix. Must not collide with an existing dataset.
- name: "--data-plane"
value: "<id>"
required: false
description: "UUID of the data plane to target. Skips data-plane resolution."
- name: "--no-trigger"
required: false
description: >-
Create the workflow without triggering a run. Default is
trigger_immediately: true — the audience builds right away.
- name: "--no-state-tag"
required: false
description: >-
Skip the _nio_lookalike_serialization wizard-state tag on the
output audience. Default is to include it (via
scripts/lookalike_state_tag.py) so Lookalike Studio can reopen
the audience for editing.
- name: "--dry-run"
required: false
description: >-
Render and explain the full pipeline but do NOT submit.
Implies --show-spec.
- name: "--show-spec"
required: false
description: >-
Include the full rendered workflow YAML in the approval
preview. Off by default; the plain-English summary is enough
for most users.
- name: "<free-text tail>"
required: false
description: >-
The user's intent (e.g., /create-lookalike 100k users like my
premium_subscribers from the acme_population dataset).
requires:
tools:
- Read
mcp-servers:
- narrative-mcp
mcp-tools:
- narrative_context_get
- narrative_datasets_search
- narrative_datasets_describe
- narrative_dataset_get_column_stats
- narrative_attributes_search
- narrative_nql_validate
- narrative_data_planes_list
- narrative_workflows_create
- narrative_workflow_runs_list
- narrative_jobs_search
- narrative_jobs_describe
recommends:
skills:
- narrative-common:generate-rosetta-stone-mappings
tools:
- AskUserQuestion
- Bash
- Write
mcp-servers:
- narrative-knowledge-base
mcp-tools:
- narrative_context_search_companies
- narrative_context_set_company
- search_narrative_i_o_knowledge_base<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly --> <!-- Regenerate: bun run gen:skill-docs -->
You are an audience modeler who turns "find me more users like these" into a deterministic scoring pipeline. You optimize for:
1. Pipeline fidelity — every materialized view is rendered from the fixed stage templates in `references/PIPELINE.md`, the same shapes Lookalike Studio generates. You substitute names and attributes into the templates; you do not redesign the statistics. 2. Defensible attribute selection — features enter the model only when the classification rules say they're eligible, and the user sees and approves the feature set before anything is built. 3. Transparency before submit — the user approves a plain-English description of the pipeline, the output configuration, and the data plane before anything is created server-side.
You never invent an attribute, column, or dataset name, never submit without approval, and never claim the aud
An agent skills marketplace from Narrative I/O. Interactive, AI-powered workflows that walk you through the recurring work of a modern data company — mapping schemas, writing NQL, qualifying leads, shipping code, building decks — one approval at a time.
Repo: narrative-io/narrative-skills-marketplace
Skip Phase 5 NQL re-validation. Intended for same-conversation hand-off from /generate-rosetta-stone-mappings. Do NOT pass when the input is from a file, a…
The user's intent (e.g., /create-workflow daily refresh of active_users at midnight UTC). With no arguments and no tail, the skill asks via AskUserQuestion.
The user's analytical question. With no arguments, the skill walks the user through interrogation interactively.
Treated as the phrase if --phrase is not given (e.g., /find-attribute graph edge). With no arguments and no tail, the skill asks via AskUserQuestion.
Natural-language intent naming the source dataset and what to map (e.g., "map dataset 12345 to Rosetta Stone", "evaluate the mappings on dataset N"). This…
A note about what the caller needs profiled (e.g., "id-type distribution", "fill rate on the email columns"). Steers column focus and which custom measures, if…