№ 03 — doctrines

doctrine library

validated business workflows, ready to fork into your oto space. doctrine tells your agent how to do things — not just which tools it has.

otheroto

Learn your writing style from how you edit drafts

Compares drafts you rewrite with the originals, turns a style change you make twice into a rule, and applies it to unsent messages and Gmail drafts.

#google#linkedin_unipileread →
otheroto

Publish a Monday leadership report in Notion

Reads your metrics sheet and last week's feedback notes in Notion, picks numbers that moved out of their usual range, and posts a brief to Slack.

#google#notion#slackread →
otheroto

Find a past call recording by name, company or email

Looks for a saved call link in Folk first, searches Granola recordings by email and company domain if none exists, and saves the link back.

#folk#granolaread →
financeoto

Add every new accelerator startup to your Attio deal flow

Lists an accelerator's current batch each morning and adds every new company to your Attio list, matched on its domain so none appear twice.

#apify#attioread →
financeoto

Draft the quarterly LP letter

Collects portfolio figures from founder update emails, checks them against your holdings sheet, and writes a Notion draft listing mismatches first.

#google#notionread →
financeoto

Draft the monthly investor update

Pulls collected revenue from Stripe, pipeline from HubSpot, plan targets and last month's promises into a Gmail draft with a source on every number.

#stripe#hubspot#googleread →
financeoto

Score new investment deals against your portfolio

Checks each new Attio deal with a deck against your fund's criteria, scores it using Crunchbase and portfolio decks, and sends a WhatsApp summary.

#attio#crunchbase#googleread →
productoto

Check new features have PostHog tracking before release

Every weekday, reads the GitHub code for Linear tickets about to ship and, when a new feature has no analytics event, suggests one in a comment.

#linear#github#posthogread →
productoto

A product release updates the Notion docs that became stale

Reads each Productlane release, finds help articles and Notion pages that now describe old behavior, and drafts corrected sentences for review.

#productlane#notion#linearread →
productoto

Update Linear tickets and draft the changelog from merged PRs

After each deploy, moves each merged pull request's ticket forward with a comment, drafts an unpublished Productlane changelog, and posts to Slack.

#github#linear#productlaneread →
productoto

Triage bug reports into the right Linear team

Reads new bug reports in Slack every 15 minutes, checks Linear for duplicates and repeat bugs, sets severity by impact, and replies with a link.

#linear#slackread →
customer successoto

Review customer accounts for upsell opportunities

Each month, compares each customer's billed usage with the volume they mention on calls, adds company news, and saves a Gmail draft for you to send.

#attio#google#theirstackread →
customer successoto

Draft replies to customer support messages in Slack

Reads new messages in shared customer channels and the support inbox, checks bugs against Linear, and posts reply drafts for a person to send.

#slack#google#linearread →
customer successoto

Post a weekly customer health report to Slack

Combines HubSpot deals, PostHog usage and Productlane feedback to rate each account's churn risk, writes a Notion report and flags the top five.

#hubspot#posthog#productlaneread →
customer successoto

Prepare a brief before every customer call

Each morning, posts a Slack brief for today's customer calls with past requests and their Linear status, renewal date and usage, biggest risk first.

#granola#posthog#attioread →
customer successoto

Spot falling product usage and email the account

Compares each paying account's last 30 days in PostHog with the months before, rules out holidays and tracking changes, and drafts a Gmail check-in.

#posthog#hubspot#googleread →
salesoto

Flag competitor battlecards that are out of date

Each week, rereads competitors' pricing, product and home pages, checks them against your cards, and drafts updates on price or product changes.

#serper#hubspot#slackread →
salesoto

Weekly BDR pipeline report from HubSpot

Every Friday, counts each rep's meetings booked, deals created, stage moves and wins, updates a Google Sheet, and posts a summary to Slack.

#hubspot#google#slackread →
salesoto

Send each rep a daily Slack recap of hot leads

Gathers new leads from replies, site visits and prospect lists, drops any already worked in HubSpot, and sends each rep their top five with an opener.

#hubspot#slackread →
salesoto

Tell reps which target accounts are hiring, every morning

Checks new job ads at the accounts your reps own, keeps ads that mention the problem you solve, and posts a ranked call list quoting each ad.

#theirstack#serper#hubspotread →
salesoto

Update HubSpot and the call queue after each cold call

Reads the note a caller types after each dial, schedules callbacks, removes contacts who said no, and sends a morning list of who to ring back.

#hubspot#slack#apolloread →
salesoto

Draft follow-up emails for deals that went silent

Finds open deals that stopped replying and drafts a helpful follow-up in the original Gmail thread for you to review and send.

#attio#googleread →
salesoto

Draft first messages to new LinkedIn connections

Checks new LinkedIn connections for past chats, researches each person, and writes a first message and a follow-up, sent only after you approve.

#linkedin_unipile#firecrawl#theirstackread →
salesoto

Draft replies to unanswered LinkedIn messages

Four times a day, finds LinkedIn conversations where the other person wrote last and sends you a Slack message with a reply drafted in your style.

#linkedin_unipile#slack#sireneread →
salesoto

Classify Lemlist replies and draft responses

Every 15 minutes, sorts new campaign replies by intent, removes people who unsubscribe, and posts draft answers to Slack for a rep to send.

#lemlist#slack#hubspotread →
salesoto

Qualify accounts by their number of locations

Finds a recent published count of an account's stores or branches, counts them on maps if none is reliable, and says if it meets your threshold.

#serper#osmread →
salesoto

Find, qualify and add contacts to Salesforce

Lists the senior people at one target account, ranks them against your ideal profile, and once you approve, adds new ones with email and mobile.

#aiark#salesforce#dropcontactread →
salesoto

Prepare a demo brief from past calls and the CRM

Pulls buyer quotes and open objections from Granola and HubSpot, flags contacts who never spoke, adds recent news, and posts a brief and slide plan.

#granola#hubspot#googleread →
salesoto

Prepare a research brief for every cold call

Reads each contact on a HubSpot call list, finds recent company news or hiring and the person's public quotes, and saves a brief with an opener.

#hubspot#theirstack#serperread →
salesoto

Merge HubSpot duplicates and track contacts who changed jobs

Each week, lists HubSpot companies that share a domain for the CRM owner to approve and merge, and checks LinkedIn to note contacts who changed jobs.

#hubspot#linkedin_unipile#slackread →
salesoto

Re-engage closed-lost deals with what changed since

Rereads deals lost after a demo, checks what you shipped and what changed at each company, and drafts win-back emails if the old objection is gone.

#hubspot#linear#apifyread →
growthoto

Find LinkedIn posts worth resharing and send them on WhatsApp

Twice a week, reads new LinkedIn posts from the companies and founders on your Attio watch list and sends you up to two picks with the reason why.

#apify#attio#whatsappread →
growthoto

Turn LinkedIn company page visitors into outreach

Each weekday, collects new followers and post engagers on your LinkedIn page, keeps those who commented or engaged twice, and drafts a Lemlist email.

#phantombuster#lemlist#apolloread →
growthoto

Draft a Brevo email campaign for each shipped feature

Writes an announcement for each new Productlane release, skips contacts with open deals or too many recent emails, and saves it as an unsent draft.

#productlane#brevo#hubspotread →
growthoto

Post weekly Brevo newsletter results to Slack

Checks last week's Brevo campaigns for bounces and spam complaints, lists the top links, and flags unsubscribers HubSpot or Lemlist could still email.

#brevo#hubspot#lemlistread →
growthoto

Post weekly Lemlist campaign results to Slack and Notion

Every Monday, counts sends, replies and meetings per campaign and A/B test, checks HubSpot so no meeting counts twice, and posts what changed.

#lemlist#hubspot#slackread →
growthoto

Find companies that use a competitor's product

Reads the customer stories on a competitor's website weekly, keeps companies that fit your target, and adds buyers you approve to a Lemlist campaign.

#apify#theirstack#serperread →
growthoto

Find companies that use a specific software tool

Finds companies running the tool you integrate with, skips customers and other reps' accounts, and adds up to two contacts each to Lemlist for review.

#theirstack#apollo#fullenrichread →
growthoto

Turn job postings into outreach campaigns by persona

Finds companies whose job ads describe the problem you solve, names two or three decision makers at each, and adds them to Lemlist for review.

#theirstack#aiark#fullenrichread →
growthoto

Update a Webflow page for the keywords buyers search

Rewrites a page's title tag, meta description and one heading to match real searches, publishes once you approve, and undoes it if a live check fails.

#webflow#serper#ahrefsread →
growthoto

Find keywords your competitors rank for and you don't

Compares your Ahrefs rankings with your competitors', ranks the searches you are missing by volume and buyer intent, and proposes a page for each.

#ahrefs#serperread →
growthoto

Write an SEO article that can rank on Google

Checks a query has search demand and no page of yours ranks for it, studies the top results, and saves a sourced article as a Webflow draft.

#ahrefs#serper#webflowread →
growthoto

Map every doctor and clinic in a city

Lists every practice of one specialty in a French city from map listings, checks it against official registries, and flags any the map missed.

#serper#sirene#santeread →
growthoto

Find shops that could stock your product, city by city

Searches map listings and local best-of guides in each city, ranks shops that fit your brand, and drafts Gmail intros and follow-ups for you to send.

#serper#googleread →
growthoto

Find contacts at accounts showing buying signals

Takes Folk accounts that showed interest but have no contact, finds a senior person per role with a work email, and queues them in Lemlist for review.

#folk#aiark#lemlistread →
growthoto

Build a prospect list from a one-sentence description

Checks the filters with you, skips HubSpot customers and open deals, and adds contacts with news-based openers to a paused Lemlist campaign.

#apollo#theirstack#serperread →
growthoto

Find people engaging with competitors' LinkedIn posts

Finds who commented on or reacted to competitors' LinkedIn posts, drops their staff and your CRM contacts, and drafts emails you approve in Slack.

#linkedin_unipile#apify#hubspotread →
salesoto

Sync Granola call notes into the right Folk pipeline

Every 12 hours, reads new call notes, decides if each call was sales, hiring, partner or investor, and updates the matching Folk record with a recap.

#granola#folkread →
financeoto

Post weekly ARR from Stripe to Slack

Adds up recurring revenue from Stripe and prepaid contracts in one currency, and posts the total with the customers who started, grew, shrank or left.

#stripe#slackread →
growthoto

Turn website visitors into LinkedIn invites

Spots companies visiting your website, finds the right person at each, and drafts a LinkedIn invite about the page they read for you to approve.

#snitcher#folk#linkedin_unipileread →
customer successoto

Email paying customers who have gone quiet

Finds paying accounts in Folk with no recent contact and saves a short Gmail draft to the most senior person, based on their notes, for you to send.

#folk#googleread →
growthoto

Find emails and phone numbers for a contact list

Sends up to 250 partial contacts to Dropcontact in one batch, retries missing emails with Kaspr, and flags everyone still without an email.

#dropcontact#kasprread →
otheroto

Weekly GitHub check for leaked secrets and failing CI

Scans your repos for committed API keys and merges without review, checks your Notion policies are current, and files each problem as a Linear issue.

#github#notion#linearread →
productoto

Close stale and duplicate issues in Linear and Zoho Desk

Lists stale issues, duplicates and answered tickets left open, posts the changes to Slack for approval, then applies them with a log to undo each one.

#linear#zohodesk#slackread →
productoto

Publish a product doc to Notion and announce it in Slack

Shows you the exact page location and announcement text first, then copies an approved draft into your wiki and posts its link to your team.

#notion#slackread →
productoto

Write a PRD in Notion backed by call quotes and usage data

Builds on the problem framing and user stories, flags overlap with work in Linear, and writes a two to four page draft for the PM.

#notion#linear#posthogread →
productoto

Write user stories from a Notion spec and file them in Linear

Reads the problem and chosen solution on a Notion page, writes small stories with testable acceptance criteria, and adds them once a person approves.

#notion#linearread →
productoto

Recruit customers for interviews and write the guide

Picks HubSpot customers who raised the problem and some who didn't, writes a Notion guide from past calls, and drafts Gmail invites for you to send.

#hubspot#google#granolaread →
productoto

Write a problem statement from customer requests

Reads the Productlane threads, call notes and Linear issues behind a set of requests, and drafts a Notion page naming the problem in one sentence.

#productlane#linear#granolaread →
productoto

Prioritize the backlog from support tickets and issues

Groups Zoho Desk tickets and Linear issues by the customer problem behind them, scores each group with RICE, and posts the top three to Slack.

#zohodesk#linear#slackread →
productoto

Take a feature from customer request to release

Turns Productlane requests and PostHog usage into a Notion page for a person to approve, then tracks the Linear issue weekly until it ships.

#productlane#linear#posthogread →
financeoto

Chase failed GoCardless payments with reminder emails

Matches each failed direct debit to its Pennylane invoice, skips paid ones and pending retries, and drafts a Gmail reminder that fits why it failed.

#gocardless#pennylane#googleread →
financeoto

Run the monthly accounting close in Pennylane

Each month, matches bank transactions to Pennylane invoices, checks the balances, asks you to approve each fix and posts a month-end report to Slack.

#pennylane#slackread →
otheroto

Find senior job openings on Google Jobs

Searches live listings for each target title, drops junior and advisory roles, checks employer news, and shortlists three to five roles that fit.

#serpapi#serper#linkedin_unipileread →
growthoto

Source, enrich and sequence prospects on email and LinkedIn

Turns your ideal customer brief into scored prospects, adds Lemlist emails for review, sends LinkedIn invites, and logs positive replies in HubSpot.

#apollo#lemlist#linkedin_unipileread →
otheroto

Update your knowledge base daily from calls, Slack and CRM

Each morning, reads yesterday's meetings, chat, issues and CRM notes, fixes the pages they made outdated, and posts a summary of what changed.

#granola#slack#linearread →
productoto

Turn customer call feedback into Linear tickets

Each night, reads yesterday's Granola call notes, picks out bugs and feature requests, adds each to a new or existing issue, and posts a Slack update.

#granola#folk#linearread →
financeoto

Run due diligence on a French company

Pulls a company's official identity, three years of accounts, directors and legal notices, then rates it green, yellow or red before you commit.

#sireneread →
growthoto

Build an outreach list from the French company registry

Pulls companies by sector and size, checks each has a real website, finds emails, and writes an opener from a job ad or news item for review.

#sirene#serper#fullenrichread →
salesoto

Flag legal changes at companies in your CRM

Checks your Salesforce accounts against French legal notices and flags new owners, name or address changes and insolvency filings with a dated note.

#salesforce#sireneread →
salesoto

Qualify inbound Salesforce leads with official company data

Matches each new lead to its official French company record, checks headcount, filed accounts and legal notices, and adds a score with the reasons.

#salesforce#sireneread →
growthoto

Turn Slack community members into an outreach list

Collects the members of a Slack community in your market, finds each person's work email, and sets up a campaign per role for you to launch.

#slack#serper#fullenrichread →