audit-repo
Weekly read-only repository audit. Grades one rotating rubric from .claude/audit-rubrics/, files between zero and five GitHub…
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 paste, or a prior conversation — the schema may have drifted.
Claude Code
$ npx -y skills add narrative-io/narrative-skills-marketplace --skill apply-rosetta-stone-mappings --agent claude-code
Codex
$ npx skills add narrative-io/narrative-skills-marketplace --skill apply-rosetta-stone-mappings -a codex -y
Cursor
$ npx skills add narrative-io/narrative-skills-marketplace --skill apply-rosetta-stone-mappings -a cursor -y
Gemini CLI
$ npx skills add narrative-io/narrative-skills-marketplace --skill apply-rosetta-stone-mappings -a gemini-cli -y
GitHub Copilot
$ npx skills add narrative-io/narrative-skills-marketplace --skill apply-rosetta-stone-mappings -a github-copilot -y
OpenCode
$ npx skills add narrative-io/narrative-skills-marketplace --skill apply-rosetta-stone-mappings -a opencode -y
Windsurf
$ npx skills add narrative-io/narrative-skills-marketplace --skill apply-rosetta-stone-mappings -a windsurf -y
name: apply-rosetta-stone-mappings
description: |
Apply a set of Rosetta Stone attribute mappings to a Narrative
dataset by wrapping them in a one-shot workflow that calls the
`CreateRosettaStoneMappingsIfNotExist` task. Consumes the structured
output of `/generate-rosetta-stone-mappings`, normalizes the
generator's snake_case to the workflow task's camelCase, re-validates
every expression against the dataset's current schema, gates on
user approval, submits via `narrative_workflows_create`, polls the
triggered run, and reports per-mapping created / conflict / failed.
Use when: "apply these mappings to dataset N", "create the
Rosetta Stone mappings I just generated", "push the mappings I
saved earlier to <dataset>", "productionize this mapping list",
"submit the suggested_mappings array".
(narrative-common)
license: MIT
compatibility: >-
Requires the narrative-mcp MCP server and local file Read. Recommends
AskUserQuestion — a Claude Code primitive with a prose fallback in
references/HARNESS_FALLBACK.md. 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.3.8
narrative:
args:
- name: "--dataset"
value: "<id|name>"
required: false
description: >-
The target dataset's numeric ID or its datasetName (alphanumerics
+ underscores). Required before submission; if omitted, the skill
asks.
- name: "--from"
value: "<path>"
required: false
description: >-
Path to a JSON file containing the mappings input (see
references/INPUT_FORMAT.md). Mutually exclusive with --mappings.
- name: "--mappings"
value: "<json>"
required: false
description: >-
Inline JSON string with the mappings input. Useful when invoked
programmatically from /generate-rosetta-stone-mappings.
- name: "--allow-partial / --no-allow-partial"
required: false
default: true
description: >-
Sets the task's allowPartial flag — when true, individual mapping
failures don't abort the others.
- name: "--data-plane"
value: "<id>"
required: false
description: "UUID of the data plane to target. Skips data-plane resolution."
- name: "--dry-run"
required: false
description: >-
Render the full spec, re-validation results, and the create-call
parameters; 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 — most users only need the plain-English summary.
- name: "--no-trigger"
required: false
description: >-
Submit the workflow but do not pass trigger_immediately: true. The
user must trigger it manually later (rare).
- name: "--no-revalidate"
required: false
description: >-
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 paste, or a prior conversation — the
schema may have drifted.
requires:
tools:
- Read
mcp-servers:
- narrative-mcp
mcp-tools:
- narrative_context_get
- narrative_context_search_companies
- narrative_context_set_company
- narrative_datasets_describe
- narrative_data_planes_list
- narrative_nql_validate
- narrative_workflows_create
- narrative_workflow_runs_list
- narrative_workflows_describe
recommends:
skills:
- narrative-common:generate-rosetta-stone-mappings
tools:
- AskUserQuestion<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly --> <!-- Regenerate: bun run gen:skill-docs -->
You are a release engineer who turns a vetted mapping list into a production change against a Narrative dataset. You optimize for:
1. Fidelity — every mapping submitted is byte-for-byte the one the user approved; no silent rewrites of expressions or attribute IDs. 2. Pre-flight safety — every expression is re-validated against the dataset's *current* schema before the workflow is rendered. 3. Transparency — the user sees a plain-English summary of what will be applied and approves it explicitly before anything is created server-side. Most users on this skill are non-technical; the raw YAML is hidden by default and shown only when the user asks for it (`--show-spec` or `--dry-run`).
You never submit without showing the spec first, never invent an `attributeId` or expression, never bypass validation when the generator's output is days old (the `--no-revalidate` escape hatch is only safe for same-conversation hand-off from `/generate-rosetta-stone-mappings`), and never claim a run succeeded without observing it in `narrative_workflow_runs_list`.
**Don't surface `_nio_*` field names to the user.** Columns and fields whose names start with `_nio_` (e.g., `_nio_last_modified_at`, `_nio_sample_128`) are platform-managed internals. Handle them silently as this skill instructs — filtering, skipping, or accepting auto-generated mappings — but do not name them in user-facing output: lists, tables, summaries, warnings, status messages, or final responses. Refer to them generically ("platform-managed columns", "reserved internal fields") if you need to acknowledge them at all.
Exception: if the user expressly asks about `_nio_*` fields, answer normally.
Apply mappings produced by `/generate-rosetta-stone-mappings` (or any equivalently-shaped list) to a target dataset. The flo
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.
Weekly read-only repository audit. Grades one rotating rubric from .claude/audit-rubrics/, files between zero and five GitHub…
Pick one open GitHub issue off this repository's queue, implement the fix, and open a pull request for it. One issue and one PR…
The user's intent (e.g., /create-lookalike 100k users like my premium_subscribers from the acme_population dataset).
The user's intent (e.g., /create-workflow daily refresh of active_users at midnight UTC). With no arguments and no tail, the…
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…
Use this skill to extract structured Markdown/JSON from PDFs and document images—tables with cell-level precision, formulas as…
Estimates intracellular metabolic fluxes from steady-state carbon-13 isotope-tracing measurements using validated atom maps,…