--- title: "The eight workflows" sidebarTitle: "Workflows" description: "Multi-step jobs that come with every connection. Every one arrives as an ordinary tool, and as a slash command too in the clients that render MCP prompts." icon: "list-ol" --- A workflow is a considered plan for a job that takes several tools in the right order. Calling one returns a step-by-step instruction set that the assistant then follows, calling the tools it names. They are published **twice**: as MCP prompts, which show up as slash commands or prompt shortcuts in clients that render them, and as ordinary tools, which every client supports. The text lives in one place, so the two surfaces cannot drift. That matters because prompt support is optional in MCP and tool support is not — a workflow that only existed as a prompt would simply be unreachable in half the clients people use. Seven are available to everyone. One is admin-only. You do not have to name them. "Tailor my resume to this posting" reaches the same place as invoking `tailor_resume`. Naming one is just the shortest way to be unambiguous. --- ## Tailor a resume to a job `tailor_resume` · takes `application_id`, or `job_description` and `company` Checks a job against the evidence in Me and then, if it is worth it, writes a tailored resume attached to that job. The first half reads and writes nothing, and it is the whole answer when you only asked whether to apply. The reading sorts every requirement the posting rewards into exactly one of three lists: | List | Meaning | | --- | --- | | **BACKED** | Direct evidence exists. Quoted, with the role it came from. | | **THIN** | Something adjacent exists, but claiming the requirement outright would be a stretch. What exists and what the gap is, precisely. | | **MISSING** | There is nothing on file. Said plainly. | For every thin and missing item it asks one concrete question that would surface the evidence if it exists. People forget their own work constantly; anything you answer is appended to Me, and it is backed for every future application rather than just this one. The writing half copies your base resume onto the job, rewrites or drops every line it carried over that nothing in Me stands behind, measures the real page count with `export_resume_pdf`, and runs `trace_resume_evidence` last. It finishes by saying what it emphasised, what it cut, and which requirements nothing backs. The rule stated in the plan itself: *never move an item to BACKED to be encouraging.* [The craft behind it →](/guides/tailor-a-resume) --- ## Mine a background into highlights `mine_role_background` · takes `role_id` (omit to be asked) Turns raw, rambling material into polished reusable bullets. Reads the full background, lists the highlights that already exist so it does not duplicate them, extracts every distinct accomplishment as one bullet — strong verb, specific scope, quantified outcome, keeping the real numbers from the dump — rates each 1–5 for strength, tags them for retrieval, and saves them in a single call. Then it flags anywhere the dump hints at impact without giving a number, so you can fill those in while you still remember them. --- ## Weekly pipeline review `pipeline_review` · no arguments What is stalled, who needs chasing, what to do next — with the follow-up messages drafted. It calls `diagnose_search` **first**, deliberately, and builds the whole review around that answer rather than around the counts. Then the stats, follow-ups due within seven days, what has actually moved, open tasks, and the companies you are talking to. You get two lines on where the search stands, everything stalled (applied over ten days ago with no movement, or a follow-up date that has passed), a prioritised list for the week tied to specific companies, drafted follow-up messages that refer to what was actually said, and tasks created with due dates. The instruction it carries about tone: *be direct about the bad news; I would rather hear it than have it phrased kindly.* And if the diagnosis says the problem is the resume or the targeting, it is told not to hand you a list of follow-ups as though volume were the answer. [What to expect back →](/guides/weekly-review) --- ## Research a company into the CRM `research_company` · takes `company` (required), `focus` Gathers what is known, works out what is missing, and writes it back to the company record without flattening what was already there. The plan is explicit about the part that goes wrong: `update_company` replaces the notes field, so what gets written back is the old notes combined with the new — never only the new part. It also insists on setting `website` to the company's own domain rather than a Greenhouse, Lever or Ashby link, because that is what puts their logo on your pipeline. What it aims to record is what you will want the night before an interview: what they do and how they make money, the interview loop, who you know there, and the honest version of why you do or do not want this. `focus` narrows it — *"the interview loop"*, *"how they actually make money"*. It is told not to invent facts, to say when it is working from what you told it, and to mark anything unsure as unconfirmed rather than stating it flatly. --- ## Log what happened this week `log_my_week` · takes `update` (required) You ramble; it files everything where it belongs. | What you mention | Where it goes | | --- | --- | | Anything about a current or past job | Appended to that role's background, numbers kept, in your words | | Anything about a company you are talking to | A timeline entry, and a stage move if it moved | | Anything you said you would do | A task, with a due date | | Anything that fits none of those | A note | Then it confirms what it filed and where, and asks about anything ambiguous. Turning raw material into resume bullets is left to `mine_role_background`, which it offers rather than does, because that step reads the role's own rules first. This is the one that keeps the whole system current. Ten minutes on a Friday. --- ## Write a letter `write_letter` · takes `kind`, `application_id`, `contact_id`, `notes` Drafts a cover letter, a cold message, a referral ask, a thank-you or a reply. It gathers before it writes: `prep_letter` returns the posting, the company research, the last few things on the timeline, the material in Me that matches, and up to three letters of the same kind you wrote yourself — which is what it matches for tone, because two of your own letters describe how you sound better than any instruction could. Every specific claim has to trace back to something in Me; what the posting asked for and you cannot evidence is left out and reported afterwards. Saves the result as a draft. --- ## Bring the pipeline up to date from your inbox `inbox_review` · takes `days` Reads a week of your own mail and calendar — every open application, every contact with a ping due — and tells you what moved that the pipeline does not know yet: a reply, an interview on the calendar, a rejection, an offer. Then it queues what it found on your dashboard with `propose_changes` — one line each, with the sentence from the email that produced it — and you accept or dismiss them whenever you get to it. Nothing is written until you do. It reads through your assistant's own mail and calendar tools when it has them — a Gmail connector in Claude, say — and through an account connected under Settings → Connections when it does not. With neither, it says so rather than guessing at your mail. --- ## Invite and onboard someone `onboard_teammate` · takes `email` (required), `role` · **admin only** Invites a person to the instance and walks them through their first steps. Checks whether email is configured and says so plainly if it is not — the invite still works either way, you just send the link yourself. Creates the invitation, hands you the accept URL in full when no email went out, then writes a short message you can paste to them explaining what this is and that they connect their own assistant from the Settings page once they are in. --- ## Invoking one ```text Just say it Tailor my resume to this posting: … ``` ```text Name it Use the tailor_resume workflow with this posting: … ``` ```text As a slash command /tailor_resume ``` The third only exists in clients that render MCP prompts. The first two work everywhere.