Skill library
Design and plugins for a GTM operating system in Notion
Repository health
GitHub’s own figures, read from its REST API. Commit and contributor totals come from the paging header rather than an estimate.
Repository metadata checked 2026-09-12 · skill bodies reviewed 2026-09-14 · published 2026-09-05
- Stars
- 0
- Commits
- 242
- Last 90 days
- 242
- Contributors
- 1
- Last push
- 2026-09-02
- First commit
- 2026-08-17
commits
repo created
27 skills
- new
Add one thing to the GTM calendar, after checking what else is already aimed at the same people at the same time. Use when the user says "add this to the calendar", "we're doing a webinar on the 10th", "put the launch on the calendar", "schedule a post", or describes something going out to people outside the team on a date. Reads the Calendar database around the proposed date, writes one row and its page body. Writes nothing without an explicit yes.
Needs a keyDeclared tools1,988 words - soon
Answer what is in market and when, grouped by who it reaches rather than by what day it lands on. Use when the user asks "what's coming up", "what's in market this month", "what are we putting out this quarter", "what is this audience getting from us", or is about to pick a date for something. Reads the Calendar database and writes nothing at all.
Needs a keyDeclared tools920 words - update
Change a row that is already on the GTM calendar, and capture how it went when it is finished. Use when the user says "move the webinar to the 20th", "that's confirmed now", "the launch is done", "cancel the dinner", "change the owner", or reports that something on the calendar happened. Re-runs the clash check whenever a date moves. Shows a before and after and writes nothing without an explicit yes.
Needs a keyDeclared tools1,692 words - check
Say whether an import would work before anyone is mid-import, and what it would do. Use when the user asks "are we set up to import", "would this list import cleanly", "check this list", before the first import ever, after the org's rules change, or before a big list where finding out mid-run would be expensive. Reads config, the alias map, the Process artifacts and the CRM, and a list only when handed one. Writes nothing, and never runs a paid step.
Needs a keyDeclared tools1,158 words - run
Import one named lead list into the CRM config names, HubSpot or Salesforce, planned end to end and pushed only after an explicit yes. Use when a lead list arrives, the user says "import this list", "get these leads into HubSpot", "get these leads into Salesforce", "load this conference CSV", or hands over a CSV file or a Notion page of contacts. Reads the one named source, the CRM, the Process artifacts, its own config and the alias map; writes exactly what the approved plan names, verifies by reading every write back, and writes back to a Notion source. Writes nothing without an explicit yes.
Needs a keyDeclared tools3,819 words - find
Find what was said about something and when, in the Memos log, following corrections to the end of the chain. Use when the user asks "what did we announce about", "when did we decide", "was there a memo on", "what was said about", "did anyone send an update on", or asks a question the log might already answer. Reads only. Never edits, never creates.
Needs a keyDeclared tools697 words - meeting-notes
Turn a meeting into a record of what it decided, using a Granola or Gong meeting source plus explicitly scoped Slack or Gmail context when requested, as one Meeting Notes memo, and offer to write the confirmed actions into Tasks. Use when the user says "write up the meeting", "notes from the call", "what did we decide", hands over a transcript, or asks after any meeting whose decisions somebody outside the room needs. Proposes decisions for confirmation, never invents one, and writes nothing without an explicit yes.
Needs a keyDeclared tools951 words - new
Write one memo into the Memos log, of any of the seven types, from free-form notes or explicitly scoped Slack and Gmail context. Use when the user says "send a memo", "put this on the record", "write up this recommendation", "announce this", "write the problem statement", "write the release note", "write the incident report", or asks to fix or correct an existing memo, which becomes a new correcting memo. Writes one page and its body. Writes nothing without an explicit yes, and never edits anything.
Needs a keyDeclared tools1,858 words - team-update
Write the recurring team update covering a period, assembled from what actually happened in Projects, Calendar, Memos and optionally Tasks rather than from what somebody remembers. Use when the user says "write the weekly update", "write the team update", "what shipped this week", "monthly recap for the team", or names a period to summarise. Reads Projects, Calendar, Memos and optionally Tasks, writes one Team Update memo with Period covered set, and sends nothing anywhere.
Needs a keyDeclared tools670 words - audit
Tells you which artifacts in the Process library have gone stale, contradict each other, or were never verified. Reads only and writes nothing; it produces a list and hands it to `update`. Triggers on "audit the library", "what needs reviewing", "what has gone stale", "which docs are out of date", "what has nobody checked".
Self-containedActs undeclared517 words - backfill
Fill the Process library from material that already exists, by proposing candidates you approve one at a time. Reads scoped documents, Slack, email, call transcripts, calendars, CRM activity, billing, or spend evidence, offers what it found as a list, and writes only the yeses. Never fills an owner and never marks anything verified. Triggers on "backfill the library", "import our old SOPs", "what should be written down that isn't", "pull our process docs into Notion".
Self-containedActs undeclared2,324 words - find
Find the artifact in the Process library that answers a question, and say whether it is still worth trusting. Use when the user asks "do we have a doc on this", "what's our process for", "where's the SOP for", "how do we handle", "what did we decide about", or asks a question the library might already answer. Reads only. Never edits, never creates.
Needs a keyDeclared tools899 words - new
Write one new artifact into the Process library, in the body template its type calls for, after checking whether it already exists. Use when the user says "write this up", "document this", "add this to the process library", "we should write an SOP for this", "record this decision", or hands over notes worth keeping. Reads the library for near matches, writes one page and its body. Writes nothing without an explicit yes.
Needs a keyDeclared tools2,199 words - update
Change an artifact that already exists in the Process library. Use when a document is wrong, out of date, or has been flagged by `audit`. Asks separately whether the edit counts as having re-read the artifact, and only then moves the verification fields. Triggers on "update this SOP", "fix that artifact", "this document is wrong", "mark this as reviewed".
Self-containedActs undeclared810 words - comms
Write the update that tells the people affected by a project what changed, as one Project Update memo. Use when the user says "write the project update", "announce this change", "tell people about this", "who needs to know", or whenever a project changes something other people depend on. Not on a schedule. Writes one page and its body, sends nothing anywhere, and never edits anything.
Needs a keyDeclared tools462 words - new
Create the tasks for a project that scope has already created, and move that project from Scoped to In progress. Also fills in a project someone created by hand. Use when the user says "start the project", "break this into tasks", "create the tasks", "let's build it", or after scope offers this pre-filled. Does not create the project row and does not scope; writes nothing without an explicit yes.
Needs a keyDeclared tools657 words - problem-scan
Find problems that keep coming up and that nobody has written down, from bounded conversation, meeting, CRM, sales-engagement and support context the user selects, and hand the ones worth writing up to problem-statement pre-filled. Use when the user says "what problems keep coming up", "scan for problems", "what's causing friction", "what should we be fixing", or before a planning cycle. Reads external sources only and writes nothing to Notion, not a row, not a draft.
Self-containedInstructions only785 words - problem-statement
Write the case that something is worth fixing, before anyone proposes a fix, as one Problem Statement memo in the Memos log. Use when the user says "write the problem statement", "write up this problem", "make the case for fixing this", when problem-scan hands one over, or before scoping anything. No project needs to exist. Writes one page and its body, nothing without an explicit yes, and never edits anything.
Needs a keyDeclared tools678 words - scope
Work out what a project actually is, what it deliberately is not, and whether it should be built at all, then create the project row at Scoped or Canceled. Use when the user says "scope this", "should we build this", "turn this problem into a project", "what would this take", or after a problem statement exists. Requires a problem statement and refuses to finish without one. Iterates in chat and writes once on approval; never creates tasks and never auto-runs new.
Needs a keyDeclared tools846 words - ship
Record that a project shipped and close it, as one Release memo and the move from In progress to Done. Use when the user says "we shipped it", "write the release", "close the project", "mark it done", or when work reaches the people who will use it, not when it merges. Lists open tasks and asks before closing. Writes nothing without an explicit yes and posts nothing anywhere.
Needs a keyDeclared tools589 words - check
Tell the user whether gtm-operator can still see what it created in Notion, and repair the things it owns. Use when something that worked has stopped working, when another gtm-operator skill fails a Notion call in a way that looks like drift rather than a bad request, or when the user says "check gtm-operator", "is my setup still working", "something is broken in Notion". Reads config and all six databases. Makes no change in Notion without an explicit yes, and only to repair. It reads and queries freely, which is the whole job. It does write one file locally, the read-back its own commands are given.
Needs a keyDeclared tools1,370 words - install
Build the gtm-operator foundation in Notion. Creates every database the marketplace needs, wires the relations between them, builds the views, and writes the one config file every other foundation plugin reads. Use on a first run, when another foundation plugin's skill says config is missing, or when the user says "set up gtm-operator", "create the Notion databases", "install gtm-operator". Re-running it on a complete config is refused, because there is no settings path yet: change an answer by editing the config file.
Needs a keyDeclared tools5,264 words - backfill
Find the tools you already pay for from signed agreements, spend and accounting records, a named contract folder, your own mailbox, and bounded Slack context, then offer them as candidates approved one at a time. Use after setup, when the user says "backfill the directory", "find what we subscribe to", "import our tools", "what are we paying for", or whenever enough time has passed for new subscriptions to appear. Every external source is read-only; never fills a person or the review stamp; Importance requires exact Slack evidence and the row-level yes.
Needs a keyDeclared tools1,447 words - contracts
What renewals and notice deadlines are coming up in the Software directory, and what happens if you do nothing. Use when the user asks "what's renewing", "any contracts coming up", "what do we need to cancel", "what's due this quarter", or before budget planning. Read-only; changes nothing, cancels nothing, contacts nobody, and never moves Last reviewed.
Needs a keyDeclared tools339 words - new
Add one tool to the Software directory, filled in conversation. Use when the user says "add this tool", "we just bought", "put Gong in the directory", "write down what we use for", or notices a tool everybody uses was never written down. Checks for a duplicate before drafting; never guesses an owner or an importance; writes nothing without an explicit yes.
Needs a keyDeclared tools852 words - review
A full pass over one tool in the Software directory, confirming everything on the row is still true, and the only skill that moves Last reviewed after creation stamped it. Use before a renewal, when somebody who owned a tool leaves, when a row's freshness stamp is old, or when the user says "review this tool", "is this row still right", "sweep the directory". Stamps the date only on a confirmed pass; writes nothing without an explicit yes.
Needs a keyDeclared tools490 words - update
Change the facts on a tool that is already in the Software directory, one row at a time. Use when the user says a vendor was acquired or renamed, a contract was extended, the cost moved, the owner left, a tool was dropped, or "update the row for". Never moves Last reviewed; shows a before and after and writes nothing without an explicit yes.
Needs a keyDeclared tools659 words
Need help setting it up?
This page tells you what sarahcallmesmadds/gtm-operator 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.