Agent skill

Profile My Customer

by gethouston in gethouston/houston

Build a detailed profile of the customer you're trying to win.

MITAuto-check passedSales & Support

Install Profile My Customer

skills CLI
$ npx skills add gethouston/houston --skill profile-my-customer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install gethouston/houston profile-my-customer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/gethouston/houston.git skills-src && mkdir -p .claude/skills && cp -r skills-src/store/agents/marketing/.agents/skills/profile-my-customer .claude/skills/profile-my-customer && rm -rf skills-src

Use ~/.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/

Facts

Skill name
profile-my-customer
GitHub stars
118
Token cost
~1.6k tokens
SKILL.md length
742 words
Files
1
Skills in repo
10
Repo updated
First seen
Licence
MIT

At a glance

Build a detailed profile of the customer you're trying to win.

  • Works in 9 steps: Read positioning doc (own file, since… → Read config. config/ideal-customer.json,… → Gather evidence. Priority order → …
  • Tasks that involve Landing pages
  • SKILL.md covers When to use, Connections I need, Information I need and Steps, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Profile My Customer is an agent skill from gethouston/houston. Build a detailed profile of the customer you're trying to win. I pull from your CRM or what you paste, and give you a persona with jobs-to-be-done, ranked pains, buying triggers, objection patterns, and real anchor accounts. Every ad, landing page, and email I write pulls from here.

Its SKILL.md is about 1.6k 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 Sales & Support, covering Landing pages, User stories and CRM management. The repository describes itself as: Open source platform for AI-native products. Pre-built AI agents with real tools and 1000+ integrations, in a Rust engine + Tauri desktop app. Free forever. The licence is MIT.

When your agent uses it

  • Tasks that involve Landing pages
  • Tasks that involve User stories
  • Tasks that involve CRM management

Example prompts

  • “/profile-my-customer”

Workflow steps

9 steps, taken from the first numbered list in SKILL.md.

  1. Read positioning doc (own file, since this is HoM): context/marketing-context.md. If missing, run set-up-my-marketing-info first - persona…
  2. Read config. config/ideal-customer.json, config/company.json. If ideal customer config thin and user hasn't named segment, ask ONE…
  3. Gather evidence. Priority order
  4. Draft persona (markdown, ~400-600 words). Structure
  5. Mark UNKNOWN, don't guess. Every section with insufficient evidence gets UNKNOWN - {what would resolve it} note. No invented demographics.
  6. Update config/ideal-customer.json if persona sharpens default ideal customer. Atomic write. Ask user before overwriting, unless they said…
  7. Write atomically to personas/{segment-slug}.md - write {path}.tmp, then rename.
  8. Append to outputs.json. Read existing array, append new entry, write atomically
  9. Summarize to user. One paragraph: segment one line, top pain + top trigger, biggest gap in persona (what to research next), path to…

What it can do on your machine

Read from SKILL.md and the folder at commit e0fd637. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are json).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Profile My Customer loads about 1.6k tokens when it runs. Until then it costs about 76 tokens; SKILL.md has 742 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~76
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from gethouston/houston at commit e0fd637, republished under its MIT licence (© gethouston). 742 words, ~1,566 tokens.

Download SKILL.mdSave it as .claude/skills/profile-my-customer/SKILL.md (or your agent's skills folder).
name
profile-my-customer
description
Build a detailed profile of the customer you're trying to win. I pull from your CRM or what you paste, and give you a persona with jobs-to-be-done, ranked pains, buying triggers, objection patterns, and real anchor accounts. Every ad, landing page, and email I write pulls from here.
version
1
category
Marketing
featured
no
image
megaphone
integrations
hubspot, salesforce, attio
x_houston.created_by
houston
x_houston.skill_schema
1

Profile My Customer

Source template: Gumloop "Market Segmentation: Buyer Persona Pain Point Report". Adapted for solo founder running everything alone.

When to use

  • "profile our ideal customer" / "build a persona for {segment}" / "help me nail buyer persona for {role}".
  • "going upmarket, redo persona" / "SMB persona changed, update it".
  • "build a persona from closed-won accounts" / "pull from my CRM, not vibes" / "who's actually buying this - look at closed-won".
  • Called implicitly when another skill (e.g. plan-a-campaign, set-up-my-marketing-info) needs more persona depth than config/ideal-customer.json provides.

Connections I need

I run external work through Composio. Before this skill runs I check that the categories below are linked. Missing -> I name the category, ask you to connect it from the Integrations tab, stop.

  • CRM (HubSpot, Salesforce, Attio) - pull top closed-won and lost accounts so the persona is grounded in who actually buys. Required if you want me to infer the persona, optional if you'd rather paste.
  • Meeting notes (Gong, Fireflies, Circleback) - verbatim pains, objections, and triggers. Optional but lifts the persona quality a lot.
  • Web search and scrape (Exa, Perplexity, Firecrawl) - fill in role definitions, market reports, and common workflows. Optional.

If you want a CRM-grounded persona and no CRM is connected, I stop and ask you to connect HubSpot, Salesforce, or Attio (or paste the top accounts).

Information I need

I read your marketing context first. For every required field that's missing I ask ONE plain-language question (best modality: connected app > file drop > URL > paste) and wait.

  • Your positioning - Required. Why I need it: persona work is wasted without a positioning anchor. If missing I ask: "Want me to draft your positioning first? It's one skill, takes about five minutes."
  • The segment to profile - Required. Why I need it: one persona per run, I don't want to build the wrong one. If missing I ask: "Which segment are we profiling, your core ideal customer or a new one? A short description works, or point me at your CRM."
  • Top accounts to learn from - Required. Why I need it: I won't invent demographics. If missing I ask: "Connect your CRM so I can pull your closed-won list, or paste five accounts (won or target) you want me to learn from."
Show full SKILL.md (405 more words)Show less

Steps

<!-- houston-workflow:v1 -->
  1. Read positioning doc (own file, since this is HoM): context/marketing-context.md. If missing, run set-up-my-marketing-info first - persona work wasted without positioning anchor.

  2. Read config. config/ideal-customer.json, config/company.json. If ideal customer config thin and user hasn't named segment, ask ONE targeted question: "Which segment are we profiling - your core ideal customer or a new one?" (Best modality: paste line, or point at connected CRM via Composio so I infer from top accounts.)

  3. Gather evidence. Priority order:

    • Existing call-insights/ under this agent root - verbatim customer language is gold.
    • Connected CRM via composio search crm - top closed-won and lost accounts matching segment.
    • Connected meeting-notes app via composio search meeting-notes.
    • Web research via composio search web-search or composio search research - market reports, role definitions, common workflows.
    • Founder-pasted notes.
  4. Draft persona (markdown, ~400-600 words). Structure:

    1. Segment name + one-line summary (e.g. "Series-B RevOps leads at 50-200-person B2B SaaS").
    2. Demographics / firmographics - industry, size, stage, geography, role, seniority, reports-to.
    3. Jobs-to-be-done - 2-4 jobs they hire product like ours for. Verbatim language where possible.
    4. Pains - ranked by intensity + frequency. Cite source (call quote, CRM close-loss reason, research report).
    5. Triggers - signal patterns making persona live buyer now (hiring role, switching tool, funding event, compliance deadline).
    6. Anchor accounts - 3-5 real companies fit, ideally 1-2 already customers. Name them.
    7. Objection patterns - top 3 objections this persona raises, best one-line response each.
    8. Buying process - who initiates, who blocks, who signs, typical cycle length, typical committee size.
    9. Where they hang out - communities, newsletters, podcasts, conferences - actionable for social calendar + community plays.
    10. Copy hooks - 3-5 short lines pattern-match this persona's language. Reused by content, lifecycle email, and social drafts.
  5. Mark UNKNOWN, don't guess. Every section with insufficient evidence gets UNKNOWN - {what would resolve it} note. No invented demographics.

  6. Update config/ideal-customer.json if persona sharpens default ideal customer. Atomic write. Ask user before overwriting, unless they said "update the ideal customer".

  7. Write atomically to personas/{segment-slug}.md - write {path}.tmp, then rename.

  8. Append to outputs.json. Read existing array, append new entry, write atomically:

    json
    {
      "id": "<uuid v4>",
      "type": "persona",
      "title": "<Segment name>",
      "summary": "<2-3 sentences  -  who they are, top pain, top trigger>",
      "path": "personas/<slug>.md",
      "status": "draft",
      "createdAt": "<ISO-8601>",
      "updatedAt": "<ISO-8601>"
    }
  9. Summarize to user. One paragraph: segment one line, top pain + top trigger, biggest gap in persona (what to research next), path to artifact.

Outputs

  • personas/{segment-slug}.md
  • Appends to outputs.json with type: "persona".
  • May update config/ideal-customer.json (with user approval).

© gethouston, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in store/agents/marketing/.agents/skills/profile-my-customer of gethouston/houston.

Open the folder on GitHubat commit e0fd637

Compare with similar skills

Profile My Customer 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.

Profile My Customer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Profile My Customer this skillgethouston/houston118—~1.6kAutomated safety check: PassMIT
Gus CLIforcedotcom/salesforcedx-vscode1k—~3.3kAutomated safety check: PassBSD-3-Clause
Monetizing Innovationwondelai/skills2.4k—~5.2kAutomated safety check: PassMIT
Product Skillsalirezarezvani/claude-skills28k—~2.6kAutomated safety check: PassMIT
SalesXiaomiMiMo/MiMo-Code14k—~637Automated safety check: PassMIT
Pricing StrategyOpenClaudia/openclaudia-skills713—~1.8kAutomated safety check: PassMIT

Similar skills

  • Gus CLI

    forcedotcom/salesforcedx-vscode

    Interact with the Gus Salesforce org via CLI (sf). An agent skill from forcedotcom/salesforcedx-vscode.

    1k GitHub stars~3.3k tokensUpdated today
    Sales & SupportAuto-check passed
  • Monetizing Innovation

    wondelai/skills

    Design products and pricing around validated willingness to pay, from Ramanujam & Tacke's "Monetizing Innovation".

    2.4k GitHub stars~5.2k tokensUpdated 1 mo ago
    Product & Project ManagementAuto-check passed
  • Product Skills

    alirezarezvani/claude-skills

    A skill your agent uses when coordinating product work across the 12 bundled product sub-skills (RICE, OKRs, UX research, design tokens, competitive teardown, analytics, experiments, discovery…

    28k GitHub stars~2.6k tokensUpdated 1 mo ago
    Frontend & DesignAuto-check passed
  • Sales

    XiaomiMiMo/MiMo-Code

    A skill your agent uses whenever Sales is explicitly invoked or the task involves customer meeting preparation, call follow-up, account prioritization, account signals, deal strategy, business…

    14k GitHub stars~637 tokensUpdated 2 days ago
    Sales & SupportAuto-check passed
  • Pricing Strategy

    OpenClaudia/openclaudia-skills

    Optimize pricing pages, pricing models, and pricing strategy.

    713 GitHub stars~1.8k tokensUpdated 23 days ago
    Sales & SupportAuto-check passed
  • Suede Pricing

    JasonColapietro/suede-creator-skills

    Suede-owned pricing and packaging discipline. An agent skill from JasonColapietro/suede-creator-skills.

    127 GitHub stars~2.4k tokensUpdated yesterday
    Sales & SupportAuto-check passed

More from gethouston/houston

All 10 skills in this repo
  • Find Me Leads

    gethouston/houston

    Surface fresh leads in a segment from a source you pick: your CRM closed-won lookalikes, a LinkedIn comment thread, a recent-funding feed, a Google Maps search, or a subreddit.

    118 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Find My Bottlenecks

    gethouston/houston

    Find what's actually slowing your company down so you can unblock it.

    118 GitHub stars~1.5k tokensUpdated today
    Auto-check passed
  • Turn a single LinkedIn post URL into a paused cold email campaign in Instantly.

    118 GitHub stars~2.1k tokensUpdated today
    Auto-check passed
  • Acompanhar Minhas Metas

    gethouston/houston

    Veja onde você realmente está com suas metas sem precisar montar tudo na mão.

    117 GitHub stars~1.9k tokensUpdated yesterday
    Auto-check passed
  • Acompanhar Minhas Promessas

    gethouston/houston

    Toda vez que você diz a um cliente que vai fazer algo até uma certa data, eu anoto isso com um prazo para não deixar passar.

    117 GitHub stars~900 tokensUpdated yesterday
    Auto-check passed
  • Pare de ser pego de surpresa pelas renovações automáticas. An agent skill from gethouston/houston.

    117 GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed

Questions about Profile My Customer

What does Profile My Customer do?

Build a detailed profile of the customer you're trying to win. Profile My Customer is an agent skill from gethouston/houston. Build a detailed profile of the customer you're trying to win.

When should I use Profile My Customer?

Profile My Customer fits situations like: tasks that involve Landing pages; tasks that involve User stories; tasks that involve CRM management.

How do I install Profile My Customer in Claude Code?

Run `npx skills add gethouston/houston --skill profile-my-customer -a claude-code`. Or copy the skill folder (store/agents/marketing/.agents/skills/profile-my-customer in gethouston/houston) into .claude/skills/profile-my-customer in your project. Claude Code loads it when a task matches its description.

How do I install Profile My Customer in Codex?

Run `npx skills add gethouston/houston --skill profile-my-customer -a codex`. Or copy the skill folder (store/agents/marketing/.agents/skills/profile-my-customer in gethouston/houston) into .agents/skills/profile-my-customer in your project. Codex loads it when a task matches its description.

Can I use Profile My Customer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add gethouston/houston --skill profile-my-customer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/profile-my-customer, .gemini/skills/profile-my-customer, .github/skills/profile-my-customer and .opencode/skills/profile-my-customer in your project.

What does Profile My Customer need to run?

SKILL.md names no scripts, command-line tools or credentials: Profile My Customer is instructions for the agent only.

Does Profile My Customer access the network?

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.

Is Profile My Customer safe to install?

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.

What licence does Profile My Customer use?

Profile My Customer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Profile My Customer use?

About 1.6k tokens (SKILL.md is roughly 6.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Profile My Customer?

Skills that share tags, products or a category with Profile My Customer: Gus CLI (forcedotcom/salesforcedx-vscode, 1k stars), Monetizing Innovation (wondelai/skills, 2.4k stars), Product Skills (alirezarezvani/claude-skills, 28k stars) and Sales (XiaomiMiMo/MiMo-Code, 14k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Profile My Customer?

gethouston (a GitHub organization) maintains it in gethouston/houston, which has 118 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 11, 2026.

Source: gethouston/houston on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.