walkeros-understanding-sources

Explain how walkerOS sources capture events from browser, dataLayer, and server.

342|21|Updated Mar 14, 2022
One-click install
npx skills add https://github.com/elbwalker/walkerOS --skill walkeros-understanding-sources
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: walkeros-understanding-sources
Source: https://github.com/elbwalker/walkerOS/tree/main/skills/walkeros-understanding-sources
Command: npx skills add https://github.com/elbwalker/walkerOS --skill walkeros-understanding-sources

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps developers understand how walkerOS sources capture events from the external world (browser, dataLayer, HTTP/server) and feed them to the collector, clarifying the separation of concerns between sources and the collector.

Core Features & Use Cases

  • Source Interface: Describes the canonical interface for sources, including the Init pattern and the Push method, enabling consistent integration.
  • Init Context Pattern: Explains how context provides config, environment, logger, id, and collector references to initialize a source.
  • Push & Event Flow: Details how source.push receives external input and emits events to the collector, and how transformer wiring can occur before reaching the collector.
  • Use Cases: Useful for creating new sources, debugging event capture, and understanding how browser, dataLayer, and server sources differ.

Quick Start

Review the core source interface definitions, examine existing browser and dataLayer sources, and study an example cloud function source to see how an event is transformed into a walkerOS event and pushed into the collector.

Frequently Asked Questions about walkeros-understanding-sources

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

FAQPage Schema
How do I capture events from a browser dataLayer and push them to a server collector?

Browser and dataLayer sources capture events using a push method that emits data to the collector. The Init context pattern provides config, environment, and logger references to initialize the source consistently.

What is the canonical interface for creating custom event capture sources?

The canonical source interface requires an Init pattern for setup and a Push method to emit events. Context provides config, environment, logger, id, and collector references to initialize sources and wire them into pre-collector transformers.

How does an event flow from external input through a source to the collector?

Event flow starts when source.push receives external input, passes it through transformer wiring, and emits the transformed event into the collector. This separates event capture logic from collection and processing concerns.

Can I use the same source interface for both browser and cloud function event capture?

Yes, the canonical source interface supports browser, dataLayer, and server implementations. Reference implementations demonstrate how an event is transformed into a walkerOS event and pushed into the collector across these environments.

Why do I need to separate sources from the collector in event tracking?

Separating sources from the collector creates a clear boundary between capturing events from the external world and processing them. Sources handle input capture while the collector manages event ingestion and downstream routing.

How do I debug event capture issues when dataLayer pushes are not reaching the collector?

Debug event capture by examining the Init context pattern configuration, verifying transformer wiring, and checking how source.push emits events. Review existing browser and dataLayer source implementations to trace event flow.