email-lifecycle-flow-writer

email-lifecycle-flow-writer is a skill for Claude Code, Codex from gooseworks-ai/goose-skills. It costs 50 tokens per session (1,005 once invoked), scanned A, original, MIT.

A build sheet for one automated customer-message flow. A flow is a series of messages sent after an event, such as signing up or making a purchase, and this step writes each message and its setup for the brand's email tool.

In plain words
What is it for?
Use it to write welcome, post-purchase, or other lifecycle email flows, including SMS or other message channels when the flow calls for them.
Why use it?
It turns a marketing plan into instructions that can be built in the actual tool, including alternatives when the plan cannot support an automation.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to write welcome, post-purchase, or other lifecycle email flows, including SMS or other message channels when the flow calls for them.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/gooseworks-ai/goose-skills/email-lifecycle-flow-writer
About the project

Goose Skills is a library of workflows and data APIs that lets coding agents handle growth and go-to-market work such as advertising, social media, content, SEO, lead generation, and customer research. It is intended for teams using Claude Code, Cursor, Codex, and similar agents. The catalogue entries are its reusable skills.

gooseworks-ai/goose-skills · 1,265 stars · on GitHub · gooseworks.ai

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add gooseworks-ai/goose-skills --skill email-lifecycle-flow-writer
Clone the repo
git clone --depth 1 https://github.com/gooseworks-ai/goose-skills

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for email-lifecycle-flow-writer

README.md
[![agentmods](https://agentmods.dev/badge/skills/gooseworks-ai/goose-skills/email-lifecycle-flow-writer/github.svg)](https://agentmods.dev/skills/gooseworks-ai/goose-skills/email-lifecycle-flow-writer)
Your own site
<a href="https://agentmods.dev/skills/gooseworks-ai/goose-skills/email-lifecycle-flow-writer"><img src="https://agentmods.dev/badge/skills/gooseworks-ai/goose-skills/email-lifecycle-flow-writer/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for email-lifecycle-flow-writer

Your own site · 80×15
<a href="https://agentmods.dev/skills/gooseworks-ai/goose-skills/email-lifecycle-flow-writer"><img src="https://agentmods.dev/badge/skills/gooseworks-ai/goose-skills/email-lifecycle-flow-writer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 50 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,005 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00050 $0.01005
Opus 5.5 $0.00020 $0.00402
Sonnet 5.5 $0.00010 $0.00201
Haiku 4.5 $0.00005 $0.00101

Measured 4d ago against content hash b6c91813c07b, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

email-lifecycle-flow-writer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

marketing-agent/skills/email-lifecycle-flow-writer/SKILL.md · 25 lines

What it actually says

flow-writer

Reads: the flow's entry in ../email-lifecycle/references/flow-library.md; ../email-lifecycle/references/loadable-flow-format.md; ../email-lifecycle/references/copy-craft.md; ../email-lifecycle/references/worked-flows.md (quality bar); ../email-lifecycle/references/sms-push-whatsapp.md when the flow has those legs. From the brain: voice, banned words, signed-off claims, product records (price, offers, notes), learnings. From the program sheet: tool and plan, segments, priority map, cap, consent per channel. The standing offer from the shared Standing offer: fact. From the audit: the live flow this replaces, if any.

Does:

  1. Wire it first, in the tool's real syntax (loadable-flow-format.md; when unsure of a tag, name the editor action instead of guessing). Check plan reality: no workflows → a fixed-date sequence becomes scheduled broadcasts with an exclusion list and the sign-up welcome becomes the form's autoresponder, written in the tool's terms (not tool-neutral); only a flow the plan cannot run even that way is said and written tool-neutral. Fill the flow header completely in the tool's own vocabulary: exact trigger name, trigger and flow filters, exit, re-entry, consent, smart sending, quiet hours, priority and suppressions, cap, UTM template, discount object (from offer-math), holdout, A/B test (winner on clicks or orders), build notes. A feature the plan lacks gets its workaround.

  2. Plan the messages. Count and delays from the library, adjusted to this brand's price and cycle (say why if moved). Write one job per message before any copy. Check the sequence reads as a story, not five versions of the same email.

  3. Write each message finished. Subject + 2 alternates, preview, from and reply-to, body blocks, one CTA with full URL, merge tags with fallbacks, dynamic blocks with out-of-stock behaviour, splits with a default branch, image needs with alt text (optional art requests as a line: Graphic needed: for make-static-ads · header art: <flow, message, size, what it shows, alt text> · return to: lifecycle/flows/<flow-slug>.md), a full plain-text version, footer, and the claim id or record behind each factual sentence. Vary length and shape across the flow. For B2B and services default to plain text from a named person.

  4. Self-check against copy-craft.md failure list. Rewrite any hit.

  5. Leave honest gaps. Anything the brain and the marketer have not settled stays a visible [placeholder] with its question at the top of the flow file, and the flow's status line reads not ready: answer Q3, Q5. A flow written against tracking-plan events reads not ready: needs events E1–E3 live; one the plan can't run even with that workaround reads not ready: needs tool decision T1. Only a flow with no open blocker is ready to load (with · switch on after fix #N while authentication is red or unknown); a header-art request never blocks it. Never invent a fact, an offer, a review, a count or an existing event name; events that do not exist yet go into the tracking plan (event, properties, when it fires, which flow) labelled "proposed — confirm with engineering", and the flow is written against those names.

  6. Hypothesis for this cycle. One line per flow: what it should do and against which number (e.g. "abandoned checkout: ≥ 4% of recipients order within 7 days; baseline unknown"), the goal metric and when it will be read. Saved into lifecycle/program.md for the next run's read-back.

  7. Art answers. On a re-run, read any Graphic ready: line under this flow's header-art Graphic needed: request and place the image.

Writes: lifecycle/flows/<flow-slug>.md (status line, hypothesis, header, then messages in order, then the open questions); what appears in chat follows SKILL step 8 — blockers in plain words, never the E/T/Q ids used in the files (../email-lifecycle/references/flow-library.md §4).

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago First seen · 25 lines · 50 tokens per session scan A b6c91813c07b

Subscribe to this mod's changes

email-lifecycle-flow-writer is a skill published in the GitHub repository gooseworks-ai/goose-skills (1,265 stars, last pushed yesterday), licensed MIT. It adds 50 tokens to every session and 1,005 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-21.

Related

Other skills, from other repositories

local-ai-agents

Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…

microsoft/ai-agents-for-beginners · 200 tokens

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens

chronicle

Analyze Copilot session history for standup reports, usage tips, session search, and session reindexing. Use when the user asks for a standup, daily summary, usage tips, workflow recommendations, wants to search or find past sessions by keyword/file/PR, wants to reindex their session store, or asks about deleting…

microsoft/vscode · 72 tokens

chat-pet-sprite-creation

Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.

microsoft/vscode · 53 tokens

component-fixtures

Use when creating or updating component fixtures for screenshot testing or their shared infrastructure, or when designing UI components to be fixture-friendly. Covers fixture file structure, theming, service setup, CSS scoping, async rendering, validation, and common pitfalls.

microsoft/vscode · 53 tokens