Geo Fundamentals
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
Identify and prioritize buyer personas at the contact level for outbound targeting.
$ npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system persona-definer --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/lemlist/persona-definer .claude/skills/persona-definer && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "persona-definer" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/persona-definer into .claude/skills/persona-definer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "persona-definer", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/persona-definerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system persona-definer --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/lemlist/persona-definer .agents/skills/persona-definer && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "persona-definer" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/persona-definer into .agents/skills/persona-definer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "persona-definer", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system persona-definer --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/lemlist/persona-definer .cursor/skills/persona-definer && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "persona-definer" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/persona-definer into .cursor/skills/persona-definer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "persona-definer", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git --path .claude/skills/lemlist/persona-definer--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system persona-definer --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/lemlist/persona-definer .gemini/skills/persona-definer && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "persona-definer" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/persona-definer into .gemini/skills/persona-definer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "persona-definer", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system persona-definerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/lemlist/persona-definer .github/skills/persona-definer && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "persona-definer" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/persona-definer into .github/skills/persona-definer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "persona-definer", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system persona-definer --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/lemlist/persona-definer .opencode/skills/persona-definer && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "persona-definer" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/persona-definer into .opencode/skills/persona-definer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "persona-definer", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
persona-definerIdentify and prioritize buyer personas at the contact level for outbound targeting.
Persona Definer is an agent skill from Othmane-Khadri/YALC-the-GTM-operating-system. Identify and prioritize buyer personas at the contact level for outbound targeting. Use when asked "who should I email", "define buyer persona", "what role to target", "who is the decision maker", "who has this pain", "which title to reach out to", "should I target VPs or Directors", or "contact-level targeting". Use AFTER ICP is defined (ICP = which companies, Persona = which person at those companies).
Its SKILL.md is about 990 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Marketing & SEO. The repository describes itself as: YALC 1.0, the open-source Clay alternative. MIT, CLI-first, self-hosted, runs in Claude Code. Yalc today is an intelligent orchestration layer that runs pre configured GTM agents…. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 5686d1f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Persona Definer loads about 994 tokens when it runs. Until then it costs about 106 tokens; SKILL.md has 466 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Othmane-Khadri/YALC-the-GTM-operating-system at commit 5686d1f, republished under its MIT licence (© Othmane-Khadri). 466 words, ~994 tokens.
.claude/skills/persona-definer/SKILL.md (or your agent's skills folder).You are a B2B buyer psychology expert. You identify the specific individuals within target companies who will engage with, champion, and buy a solution — mapped to their personal motivations, KPIs, and communication preferences.
The difference from ICP: ICP is company-level ("Series A SaaS"). Persona is contact-level ("VP Sales at that company, team of 5, reports to CEO, measured on pipeline").
Ask in a single message:
Price → seniority mapping:
Each persona must be a specific role, not a department. "SDR Manager at Series A SaaS, team of 3–8, reports to VP Sales" not "sales team".
For each persona define:
| Dimension | 1 | 3 | 5 |
|---|---|---|---|
| Pain intensity | Minor annoyance | Regular frustration affecting work | Critical blocker affecting KPIs/career |
| Decision power | No budget, 3+ approvals | Influences decision, 1–2 approvals | Economic buyer or strong champion |
| Reachability | Hard to identify | Standard outreach paths work | Highly reachable, responsive to cold |
| Timing | No clear trigger | Periodic pain | Active buying trigger identifiable |
Total: X/20 — develop top 2 fully.
For each top persona:
Persona [N]: [Role Title] Score: X/20 (Pain: X | Power: X | Reach: X | Timing: X)
Titles to target: [Specific title variants] Seniority / team: [Level, team size managed] Reports to: [Boss title]
Personal pain points:
KPIs they're measured on: [Their metrics — not the company's] Decision role: [Economic buyer / Champion / Influencer] Buying trigger: [What event makes them start looking?]
Messaging hook: "Eliminate [specific pain they feel] so you can [personal outcome]" Proof point: [What evidence resonates with THIS persona — peer testimonials, role-specific metric]
Channel & timing:
List-building filters:
Can you build a list of 500–5,000 contacts matching this persona?
© Othmane-Khadri, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/lemlist/persona-definer of Othmane-Khadri/YALC-the-GTM-operating-system.
Open the folder on GitHubat commit 5686d1f
Persona Definer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Persona Definer this skillOthmane-Khadri/YALC-the-GTM-operating-system | 318 | — | ~994 | Automated safety check: Pass | MIT | |
| Geo Fundamentalswasp-lang/wasp | 19k | 9 repos | ~861 | Automated safety check: Pass | MIT | |
| Ab Testingcoreyhaines31/marketingskills | 54k | 3 repos | ~3.1k | Automated safety check: Pass | MIT | |
| Hreflang and International SEOAgriciDaniel/claude-seo | 19k | 5 repos | ~3.4k | Automated safety check: Pass | MIT | |
| Referralscoreyhaines31/marketingskills | 54k | 2 repos | ~2.6k | Automated safety check: Pass | MIT | |
| SEO GeoReScienceLab/opc-skills | 1.8k | 4 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 |
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
coreyhaines31/marketingskills
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program.
AgriciDaniel/claude-seo
Audits, validates and generates hreflang tags for multi-language and multi-region sites in HTML, HTTP headers or XML sitemaps, flagging common code and return-tag mistakes.
coreyhaines31/marketingskills
When the user wants to create, optimize, or analyze a referral program, affiliate program, or word-of-mouth strategy.
ReScienceLab/opc-skills
SEO & GEO (Generative Engine Optimization) for websites. An agent skill from ReScienceLab/opc-skills.
LeoYeAI/openclaw-marketing-skills
When the user wants to generate, iterate, or scale ad creative — headlines, descriptions, primary text, or full ad variations — for any paid advertising platform.
Othmane-Khadri/YALC-the-GTM-operating-system
Turns a week of Claap-recorded sales calls into action items and focus blocks on a Notion Kanban, delivered with a Slack summary.
Othmane-Khadri/YALC-the-GTM-operating-system
A skill your agent uses when the user says "set up FullEnrich reverse lookup for trial signups", "PLG enrichment webhook", "identify free trial signups via FullEnrich", "reverse email lookup for…
Othmane-Khadri/YALC-the-GTM-operating-system
A skill your agent uses when the user says "enrich people who engaged with this post", "qualify post engagers with FullEnrich", "scrape and enrich LinkedIn post {URL}", "engagers from this post into…
Othmane-Khadri/YALC-the-GTM-operating-system
A skill your agent uses when the user says "enrich this LinkedIn event", "enrich attendees of this event", "enrich this attendees CSV", "scrape and enrich LinkedIn event {URL}", "FullEnrich event…
Othmane-Khadri/YALC-the-GTM-operating-system
Reply to comments on a LinkedIn post via Unipile — drafts thread-aware replies grounded in the user's voice and the conversation context, then sends on approval.
Othmane-Khadri/YALC-the-GTM-operating-system
A skill your agent uses when the user says "activate co-founder network with FullEnrich", "enrich LinkedIn connections export", "qualify my LinkedIn connections CSV", "turn Connections.csv into a…
Categories
Identify and prioritize buyer personas at the contact level for outbound targeting. Persona Definer is an agent skill from Othmane-Khadri/YALC-the-GTM-operating-system. Identify and prioritize buyer personas at the contact level for outbound targeting.
Persona Definer fits situations like: asked who should I email; define buyer persona; what role to target; who is the decision maker.
Run `npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a claude-code`. Or copy the skill folder (.claude/skills/lemlist/persona-definer in Othmane-Khadri/YALC-the-GTM-operating-system) into .claude/skills/persona-definer in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a codex`. Or copy the skill folder (.claude/skills/lemlist/persona-definer in Othmane-Khadri/YALC-the-GTM-operating-system) into .agents/skills/persona-definer in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill persona-definer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/persona-definer, .gemini/skills/persona-definer, .github/skills/persona-definer and .opencode/skills/persona-definer in your project.
SKILL.md names no scripts, command-line tools or credentials: Persona Definer is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Persona Definer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 994 tokens (SKILL.md is roughly 4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Persona Definer: Geo Fundamentals (wasp-lang/wasp, 19k stars), Ab Testing (coreyhaines31/marketingskills, 54k stars), Hreflang and International SEO (AgriciDaniel/claude-seo, 19k stars) and Referrals (coreyhaines31/marketingskills, 54k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Othmane-Khadri (a GitHub user) maintains it in Othmane-Khadri/YALC-the-GTM-operating-system, which has 318 GitHub stars. The repository holds 57 skills in this directory. The repository was last updated on August 20, 2026.
Source: Othmane-Khadri/YALC-the-GTM-operating-system on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.