intake-anchors

Build semantic anchor maps pairing DOM roles to stable selectors.

Updated Aug 27, 2026
One-click install
npx skills add https://github.com/cfagerlin/theme-forge --skill intake-anchors
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: intake-anchors
Source: https://github.com/cfagerlin/theme-forge/tree/main/intake-anchors
Command: npx skills add https://github.com/cfagerlin/theme-forge --skill intake-anchors

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Live and development themes often diverge in DOM structure, causing false variance during automated migration. intake-anchors builds a semantic anchor map that ties sections' roles to stable selectors rather than relying on brittle positional matching.

Core Features & Use Cases

  • Builds per-section role anchors by probing live and dev DOMs and matching roles to loci.
  • Merges candidates from section libraries, theme-family libraries, and project overrides, with downweighting for speculative libraries.
  • Supports multi-case probing and reverse-probe to maximize coverage across diverse stores.
  • Reports provenance and enables rebaseline of anchors to adapt to theme changes.

Quick Start

Onboard a section and run intake-anchors to generate the semantic anchor map.

Frequently Asked Questions about intake-anchors

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I align live and dev Shopify DOMs to prevent false variance during migration?

To align live and dev Shopify DOMs, build a semantic anchor map that ties section roles to stable selectors rather than relying on brittle positional matching. This prevents false variance when theme structures diverge during automated migration.

What is a semantic anchor map for Shopify theme sections?

A semantic anchor map pairs live and dev DOM elements by their functional role instead of document position. It merges section, theme-family, and project library candidates to classify and confirm stable selectors for each role.

How do I generate stable CSS selectors for Shopify Liquid sections?

Generate stable selectors by probing live and dev DOMs with a Liquid locus resolver and DOM matcher. Candidates are classified as confirmed, inconclusive, or rejected, then a three-tier veto ranking chooses the most stable selector per role.

Can I use multi-case probing to match DOM elements across diverse Shopify stores?

Yes, multi-case probing and reverse-probe maximize coverage across diverse stores. The system merges candidates from section and theme-family libraries, applying downweighting to speculative libraries to handle varied DOM structures effectively.

What happens when a Shopify section role has no matching DOM locus?

When a role has no locus or bindings are inconclusive, the system handles these edge cases by reporting provenance and classifying candidates as inconclusive or rejected. This allows for rebaseline of anchors to adapt to theme changes.

Do I need to rebaseline semantic anchors when my Shopify theme changes?

Yes, you should rebaseline anchors to adapt to theme changes. The system reports provenance for each classification, enabling you to update the semantic anchor map and maintain accurate role-to-selector mappings after structural updates.