Ctrl K
ComunidadGuías…

docs/workflows.mdx

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
---
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.

<Note>
  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.
</Note>

---

## 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

<CodeGroup>
```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
```
</CodeGroup>

The third only exists in clients that render MCP prompts. The first two work everywhere.