lifecycle-map
Skill2 starsChanged 4 months agoMITView on GitHub
Map tracked events to lifecycle stages (acquisition/activation/engagement/revenue/retention/winback) and derive the funnel skeleton. Use after lifecycle-connect, or when the user says "map my events", "event haritala", "funnel çıkar", "hangi stage'ler eksik".
1 other project uses a version of this.
Adopted by
Most recently taken up by
- calven-ai/marketing-as-codetheir own version, first seen Oct 7, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- calven-ai/marketing-as-code★ 10same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository13 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- docs/llms-full.txtllms.txt
- docs/llms.txtllms.txt
- lifecycle-audienceSkill
- lifecycle-auditSkill
- lifecycle-connectSkill
- lifecycle-copySkill
- lifecycle-exportSkill
- lifecycle-intakeSkill
- lifecycle-journeysSkill
- lifecycle-qaSkill
- lifecycle-resultsSkill
- lifecycleSkill
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 1 is distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 59
Never silently guess a stage for an event that fails all rules (CLAUDE.md rule 7).
- Very specific: line 60
Never map an event to winback — winback is defined by absence, not by an event.
- Very specific: line 61
Never claim a revenue stage is covered on revenue-intent events alone.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Lifecycle Map — Event → Stage Mapping
Turn the event inventory from lifecycle-connect into a stage map and funnel skeleton. This is what makes journey eligibility computable.
When NOT to use this
- No DQS or event inventory exists yet — there is nothing to map; run
lifecycle-connectfirst. - The question is whether a specific automation should be kept, changed, or killed — that's
lifecycle-audit(structural review) orlifecycle-results(outcome-based), not this skill. - The need is an audience query for an already-designed journey — that's
lifecycle-audience. This skill produces the stage map and funnel skeleton, never a runnable query.
Procedure
- If
knowledge/brands/<brand>.mdhasverticalsset: tag every event to a vertical viaevent_prefixmatch first — mechanical name-prefix matching, done before any stage classification. This determines which industry playbook's funnel table and "Event expectations" apply to that event in step 1. An event matching no vertical's prefix falls back to the primary industry, flaggedunclassified-vertical— batch it into the same question as unmappable events (step 3). - First, check for a prior pass: if
output/<project>/event-analysis.jsonexists (written whenlifecycle-connectspawnedevent-analystfor a 50+ event inventory earlier in this same run), its Mapped/Assumed/Unmapped classification is a draft, not a discard-and-redo — confirm or override it below rather than reclassifying every event from zero. Two independent classification passes over the same event risk landing on two different stages for it — treating the first pass as the starting point removes that risk instead of hoping both agree. Absent the file (inventories under 50 events, classified inline bylifecycle-connectitself, or no prior connect run), load the mapping sources fresh, in lookup order:${CLAUDE_PLUGIN_ROOT}/knowledge/event-taxonomy/ga4-recommended-events.md(exact + alias lookup)- the active industry playbook's funnel table (the event's own vertical's playbook, for multi-vertical brands)
${CLAUDE_PLUGIN_ROOT}/knowledge/event-taxonomy/stage-mapping-rules.md(heuristics for unknowns — apply its rules 1→5 in order)
- Classify every event from the inventory. Track WHICH rule classified each one.
- Batch unmappable events into a single question to the user (max 10, best-guess pre-filled). Continue with what is mapped; mark dependent outputs provisional.
- Build the funnel skeleton: order the mapped events along the industry playbook's canonical funnel (one skeleton per vertical, for multi-vertical brands); note observed drop-off between steps if T1 volumes exist — and flag, don't silently build past, any step whose volume exceeds the previous step's. An inverted funnel means a mapping error or a data-integrity problem, not real user behavior; report it as a finding rather than presenting the funnel as if the numbers were trustworthy.
Output (exactly the contract from stage-mapping-rules.md)
- Mapped table — event | vertical (multi-vertical brands only) | stage | source rule | 90-day volume (if known).
- Assumed mappings needing user confirmation (aliases + medium-confidence heuristics).
- Unmapped events — asked or pending, including any
unclassified-verticalevents. - Stage coverage summary — six stages, events per stage, and the blind stages (zero events) called out explicitly. Blind stages are a first-class finding: they directly limit the journey portfolio. One summary per vertical for multi-vertical brands — a blind stage in one product line shouldn't be hidden by coverage in another.
- Funnel skeleton — ordered steps with events, plus a Mermaid
flowchart LRof the funnel. One funnel per vertical for multi-vertical brands.
Common Pitfalls
Pitfall 1: A quiet best guess when no rule fires.
Symptom: an ambiguous event like interaction or activity lands in "engagement" with no rule citation next to it.
Consequence: directly violates CLAUDE.md rule 7, and every downstream artifact — funnel skeleton, journey eligibility — inherits an invented data point wearing the confidence of a real classification.
Fix: track which rule classified each event as you go; anything that fails all three sources goes into the unmappable batch for the user, never a silent placement.
Pitfall 2: Winback assigned to an event instead of left as an absence.
Symptom: a re_engagement_click or similar event gets mapped directly to the "winback" stage because its name matches.
Consequence: contradicts this skill's own rule that winback is defined by absence (a dormancy window), not by any event — the mapping looks reasonable and breaks a rule stated two sections up.
Fix: map the click event to whichever active stage it actually represents (typically a reactivation-trigger response), and leave winback defined by the dormancy threshold elsewhere in the pipeline.
Pitfall 3: An inverted funnel presented without comment. Symptom: the funnel skeleton shows a later step with more volume than the step before it, and it goes out in the report as-is. Consequence: reads as real user behavior to whoever consumes the funnel, when it is far more likely a mapping error or a tracking defect — journeys sized off it inherit a broken premise. Fix: this skill's own step 4 already requires flagging this — treat a clean-looking funnel with no inversion note as unverified, not as evidence none occurred, and check before presenting.
Never do
- Never silently guess a stage for an event that fails all rules (CLAUDE.md rule 7).
- Never map an event to
winback— winback is defined by absence, not by an event. - Never claim a revenue stage is covered on
revenue-intentevents alone; say "intent only — no true conversion event".
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

