Agent skill
gtm-context
Builds and maintains the shared GTM context file (the "GTM brain") at .agents/product-marketing.md that every other skill in this pack reads, so the user never has to explain their product, customer, and positioning twice.
Filed under Prospecting and list building.
From Theo7777/gtm-skills · 13 skill entries · 1 · pushed 2026-10-01
What it does when it runs
Builds and maintains the shared GTM context file (the "GTM brain") at .agents/product-marketing.md that every other skill in this pack reads, so the user never has to explain their product, customer, and positioning twice. Use at the start of any new project, or when the user asks to "set up context", "set up the GTM brain", "create a product marketing context", "describe my product", "who is my ICP", "update our positioning file", "add this to our context", or shares a website, docs, or repo and wants the foundations captured. Also use to update one section, reconcile conflicting information, or migrate an older context file. Reads and extends an existing product-marketing file rather than overwriting it.
Automated analysis of the skill and the 2 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- None found.
- Hosts it reaches
- example-invoicing.com
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It only issues instructions, so there is nothing to bound. - Actions present in the files
- None. Instructions only.
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/Theo7777/gtm-skills.git /tmp/gtm-skills git -C /tmp/gtm-skills sparse-checkout set "skills/gtm-context" mkdir -p ~/.claude/skills/gtm-context cp -R "/tmp/gtm-skills/skills/gtm-context/." ~/.claude/skills/gtm-context/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
The skill
Source on GitHub ↗Reproduced in full from Theo7777/gtm-skills/blob/21df471416b83c64d3eafbbb56a3234a70f17e6b/skills/gtm-context/SKILL.md, which is licensed MIT (repository). 1,524 words, 13 headings.
GTM context
This skill builds and maintains one file: .agents/product-marketing.md. It holds the product, customer, positioning, messaging, proof, and voice decisions that every other skill in the pack reads before asking questions.
One good file saves the same five questions being asked in every skill. It also keeps copy, ads, and outreach consistent, because they all draw on the same source.
Before you start
Look for an existing file, in this order:
.agents/product-marketing.md(canonical location).claude/product-marketing.md.agents/product-marketing-context.mdor.claude/product-marketing-context.md(older filename)
Then:
- Canonical file exists: read it, summarise what it covers in five lines or fewer, list the gaps, and ask which to fill. Never overwrite it.
- Only an older location exists: read it, then offer to move it to
.agents/product-marketing.md. Move only on a yes. If the user says no, update it where it is. - Nothing exists: go to the fresh start workflow below.
The file may have been created by another skill pack, such as Corey Haines's product-marketing skill. Keep its headings exactly as they are and add any missing sections from this template after them. The heading map below shows how the two line up.
Compatibility with existing files
Other skills search the file by heading, so headings must stay stable. When extending a file:
- Keep every existing heading and its wording, including title case and ampersands.
- Put new content under the matching existing heading where one exists.
- Add sections the file lacks at the end, before the changelog, using the headings in
references/template.md. - Never delete content. Move superseded content to the changelog with a date.
| This template | Equivalent heading in older or third-party files |
|---|---|
| Product overview | Product Overview |
| Target audience | Target Audience |
| Personas | Personas |
| Jobs to be done and triggers | Target Audience (jobs), Switching Dynamics |
| Problems and pain points | Problems & Pain Points |
| Competitive alternatives | Competitive Landscape |
| Differentiation | Differentiation |
| Positioning statement | none, add it |
| Messaging building blocks | none, add it |
| Proof points | Proof Points |
| Objections | Objections |
| Customer language | Customer Language |
| Brand voice | Brand Voice |
| Channels | none, add it |
| Goals | Goals |
| Open questions and assumptions | none, add it |
| Changelog | Changelog |
What the file covers
The full template, with prompts under each heading, is in references/template.md. In short:
- Product overview: one-liner, primary anchor (category, use case, or competitive alternative), product type, and business model and pricing.
- Target audience: ideal customer profile with the use case, buyer and user roles, and anti-persona.
- Personas: for B2B, what each buying role cares about.
- Jobs to be done and triggers: job statements, the events that start a search, and the four switching forces.
- Problems and pain points: the core problem, its cost, and the emotional tension.
- Competitive alternatives: what customers use today, including doing nothing, and the problem with each.
- Differentiation: what you do differently and why that is better.
- Positioning statement: one short paragraph built from the sections above.
- Messaging building blocks: problem, product, audience, why better, benefits with proof, and how it works.
- Proof points: customers, stats, and quotes, each with a source.
- Objections: the top objections and the answer to each.
- Customer language: verbatim phrases, words to use, words to avoid, and a glossary.
- Brand voice: tone, style rules, and personality.
- Channels: where the audience is reached today and what is working.
- Goals: the business goal and the main conversion action.
- Open questions and assumptions: everything unconfirmed.
- Changelog: dated notes of what changed.
The top of the file carries a last_updated: YYYY-MM-DD line.
Which skills read which sections
| Skill | Sections it relies on |
|---|---|
positioning-messaging | Product overview, Target audience, Competitive alternatives, Differentiation, Positioning statement, Messaging building blocks, Proof points, Objections, Customer language, Brand voice |
jtbd-research | Target audience, Jobs to be done and triggers, Competitive alternatives, Customer language (and offers to add findings back) |
icp-scoring | Target audience (including anti-persona), Jobs to be done and triggers, Goals |
cold-outreach | Product overview, Target audience, Jobs to be done and triggers, Proof points, Objections, Brand voice, Customer language |
ad-headline-maker | Differentiation, Messaging building blocks, Proof points, Objections, Customer language, Brand voice, Channels |
ad-description-maker | Problems and pain points, Messaging building blocks, Proof points, Customer language, Brand voice, Channels |
linkedin-connection-analysis | Target audience, Personas, Goals |
If a section is empty, those skills ask for it. Prioritise filling the sections the user's next task depends on.
Workflow
Fresh start
- Offer an auto-draft first. Ask for whatever the user has: a website URL, pitch deck, sales docs, call notes, or the product repo. Drafting from sources is faster and more accurate than an interview from nothing.
- Draft from sources. Read the homepage, pricing, about, and customer pages; the README and any docs in a repo; and any files the user shares. Fill every section you can. Mark anything inferred from marketing copy rather than stated as fact with
(assumption). - Show the gaps. List the empty or weak sections, most important first. The critical three matter most: what it does, who it is for, and how it differs.
- Interview in batches. Ask three to five related questions at a time, grouped by theme (for example, customer and use case, then alternatives and differentiation, then proof and voice). Never ask 30 questions in a row. Push for verbatim customer words, examples, and numbers.
- Stop when it is useful. A file with the critical three, proof, and voice rules is enough to start. Put everything else under open questions and assumptions.
- Confirm and save. Show the draft, ask what needs correcting, then write
.agents/product-marketing.mdwith today's date on thelast_updatedline and a first changelog entry. - Summarise. Show the summary described under output format.
If the user has no sources, skip steps 1 and 2 and start the batched interview.
Updating one section
- Read the whole file first, since a change in one section often affects others.
- Update only the section the user named. Keep its heading unchanged.
- Check related sections for knock-on effects. For example, a new audience may change personas, objections, and messaging building blocks. List those as suggestions and change them only on a yes.
- Update
last_updatedand add a changelog line saying what changed and why.
Conflicting information
When new input contradicts the file, or two sources disagree (for example, the website says "for enterprises" and the user says "for startups"):
- Do not silently pick one.
- Show both versions side by side, with where each came from.
- Ask which is current. If the user is unsure, record both under open questions and assumptions and mark the section
(conflict: unresolved). - Once resolved, update the section and log the old version in the changelog.
Writing rules for the file
- Be specific enough to act on. "Heads of RevOps at 50 to 200 person B2B SaaS companies" beats "B2B companies".
- Quote customers verbatim where possible and note the source.
- Give every stat and quote a source. Unsourced proof goes under open questions and assumptions.
- Mark every inference with
(assumption). - Keep it short. Aim for a file a person can read in five minutes.
- Use British English, the Oxford comma, sentence case headings (except where preserving existing headings), and no em dashes or emojis.
Output format
After saving or updating, show:
Saved to .agents/product-marketing.md (last_updated: YYYY-MM-DD)
Filled: [sections]
Updated this session: [sections]
Assumptions to confirm: [count], top three: [list]
Still empty: [sections]
Conflicts unresolved: [list or none]
Suggested next step: [the skill that fits the user's goal, for example positioning-messaging]
Quality checklist
- Checked all three locations before creating anything.
- Did not overwrite or delete existing content or rename existing headings.
- The critical three (product anchor, audience with use case, and differentiation) are filled or flagged.
- Every inference carries
(assumption)and appears under open questions and assumptions. - Every stat and quote has a source.
- Conflicts are shown to the user, not resolved silently.
- Questions were asked in batches of three to five.
-
last_updatedand the changelog are current. - The file contains no secrets, credentials, or personal data about individual customers beyond what they have published.
Credits
The idea of one shared product marketing context file that other skills read, and the .agents/product-marketing.md location, follow Corey Haines's marketingskills pack, which this skill is designed to stay compatible with. The section design, including positioning statement, messaging building blocks, channels, and open questions, is Theo Ohene's own and matches the positioning-messaging skill.
Files bundled with it
These load only when the skill asks for them, so they cost nothing until it runs.
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- startup-context by shawnpang · 337
- multi-turn-context-retention by louisblythe · 170
- context-building by extruct-ai · 109
- cargo-context by getcargohq · 19
- context-hygiene by getcargohq · 10
- product-context by taizen-ai · 8
- context-anchor by varunk130 · 7
- context-building by getbeton · 6
Need help setting it up?
This page tells you what gtm-context does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.