---
name: zakenmaat-taken-plannen
description: >
  Schrijft nieuw werk in Zakenmaat weg als taken die over twee weken nog
  uitvoerbaar zijn. Bepaalt per taak wie hem doet, of hij op iemand wacht, hoe
  lang hij duurt en welke context erbij hoort. Splitst voorbereiden van
  opleveren, want opleveren hangt vaak op een go van de klant. Bundelt vragen
  aan dezelfde klant tot één taak. Gebruik bij "plan dit in", "zet dit op mijn
  lijst", "maak hier taken van", "wat moet er nog gebeuren", en aan het eind van
  een werksessie. Niet voor afvinken, dat is zakenmaat-aan-de-slag.
---

# Zakenmaat, taken plannen

Drie van vijf: `zakenmaat-start`, `zakenmaat-aan-de-slag`,
**`zakenmaat-taken-plannen`**, `zakenmaat-dag-afsluiten`,
`zakenmaat-projectcheck`.

Dit is de scherpste van de vijf, en de reden dat de andere vier werken. Een
takenlijst is zo goed als de discipline waarmee er dingen in worden gezet.

Je schrijft weg met `taak_toevoegen`, en past aan met `taak_bijwerken`. Kijk
eerst met `taken_lijst` of iets er al staat: dan werk je die taak bij in plaats
van er een tweede naast te zetten.

## De kernregel

> Elke taak heeft een datum, behálve als hij op iemand anders wacht.
> Wacht hij op iemand anders, dan heeft hij een `wacht_wie` en een
> `wachtend_op`, en geen datum.

Taken zonder datum en zonder blokkade zijn precies de taken die verdwijnen. Ze
staan in de lijst, ze komen nergens bovendrijven, en na een maand weet niemand
meer waarom ze er staan.

En nooit een datum op iets dat op een klant wacht. Zo'n datum is een leugen: op
die dag kan het werk niet af, dus het schuift door, en na drie keer doorschuiven
vertrouwt niemand de lijst meer. Zakenmaat slaat een wachtende taak daarom
zonder datum op, ook als je er een meegeeft.

## Stap 0, kijk wat er uit staat

Roep eerst `koppeling_status` aan en lees `onderdelen_uit`: de namen van de
onderdelen die de eigenaar in deze werkruimte heeft uitgezet, zoals Financieel,
Agenda of Kilometers. Is de lijst leeg of ontbreekt het veld, dan staat alles
aan.

- Staat Agenda erin, roep dan `agenda_lijst` niet aan.
- Staat Financieel erin, noem dan geen bedragen en stel geen facturen of kosten
  voor.
- Staat Kilometers erin, stel dan geen ritten voor.

Weigert een tool toch met de code `onderdeel-uit`, dan is dat geen fout: de
gegevens bestaan nog, ze zijn alleen verborgen. Zeg dus niet dat er niets is.
Weer aanzetten kan alleen in de app, niet via jou.

## Stap 1, wie doet hem

Zet het veld `uitvoerder` altijd, want het bepaalt of een taak stil blijft
liggen.

**`ai`**: werk dat je AI kan doen. Teksten en concepten, een offerte of
voorstel opstellen, iets uitzoeken of doorrekenen, en in een terminal ook code
en bestanden.

**`zelf`**: werk dat alleen de gebruiker kan. Bellen, afspraken, op pad,
inloggen bij een dienst waar geen koppeling bij kan, bankzaken, en alles waar
een beslissing van hem voor nodig is.

Kan de taak alleen af als iemand ergens inlogt, iets beslist of fysiek iets
doet, dan is het `zelf`. Bij echte twijfel ook `zelf`: een taak die onterecht
bij je AI ligt blijft stil liggen, een taak die onterecht bij de gebruiker ligt
duikt gewoon op in zijn lijst.

**Splits een gemengde taak.** "Nieuwsbrief schrijven en versturen" is twee
taken: het schrijven kan je AI, het versturen doet de gebruiker. Hang de tweede
met `hangt_af_van` aan de eerste, dan komt hij pas bovendrijven als de eerste af
is.

## Stap 2, bij welk project

Een taak die aan een project hangt, telt mee in de stand van dat project: een
taak over zijn deadline wordt een signaal op de projectpagina. Een taak zonder
project mist daar.

- **Noemt de gebruiker een project**, zoek het op met `projecten_lijst` en geef
  het `id` mee als `project_id` aan `taak_toevoegen`. Zonder `klant` neemt de
  taak de klant van het project.
- **Noemt hij alleen een klant**, roep dan `projecten_lijst` aan met die
  `klant` en `stand: "lopend"`. Komt er precies één project terug, geef dat
  `project_id` dan mee en zeg erbij aan welk project je de taak hangt. Bij meer
  dan één vraag je welk, bij geen hangt de taak alleen aan de klant.
- **Noemt hij niets van beide**, dan geen project. Raad er geen.

Hangt een bestaande taak aan het verkeerde project, zet het goed met
`taak_bijwerken` en een ander `project_id`; een lege `project_id` haalt de taak
van het project af. Geef bij een project geen `klant` mee, dan kan die ook
niet botsen. Staat `project_id` niet bij `taak_toevoegen` in je toollijst, sla
deze stap dan over.

## Stap 3, voorbereiden mag je plannen, opleveren vaak niet

Dit is de regel die het vaakst misgaat en die het meeste kost als hij misgaat.

**Iets wat de klant ziet, ontvangt of betaalt, gebeurt niet zonder zijn go.**
Niet als het werk technisch af is, niet als het al besproken was. De klant
beslist wanneer iets van hem de wereld in gaat.

Maar de go zit op het **moment van opleveren**, niet op het werk ervoor.

| Soort werk | Go nodig? |
|---|---|
| Een ontwerp, tekst, selectie of concept maken | nee |
| Iets klaarzetten op een test- of voorbeeldomgeving | nee |
| Drukwerk laten drukken of materiaal bestellen op zijn rekening | **ja** |
| Iets publiceren op zijn site of zijn kanalen | **ja** |
| Prijzen, openingstijden of contactgegevens veranderen die zijn klanten zien | **ja** |
| Onderhoud dat niemand ziet: een gebroken link, een back-up, een update | nee |

De grens: **merkt de klant of zijn publiek het verschil?** Zo ja, eerst een go.
Zo nee, dan is het onderhoud en kost wachten alleen maar tijd.

**Maak er dus twee taken van.** Eén om voor te bereiden, met een datum. Eén om
op te leveren, met `wacht_wie` (de klant), `wachtend_op` (bijvoorbeeld "akkoord
op het ontwerp") en geen datum. Dan ligt het werk klaar op het moment dat de go
binnenkomt, in plaats van dat het dan pas begint. Komt de go, roep dan
`taak_bijwerken` aan met `antwoord_binnen: true`, of de gebruiker klikt in de app
bij die taak op **Antwoord binnen**. Allebei halen ze de blokkade eraf en zetten
ze de taak op vandaag.

Een vraag afvinken is iets anders dan een antwoord krijgen. Afgevinkt betekent
dat de vraag verstuurd is; wat erop wacht blijft wachten tot het antwoord er is.

Voor eigen projecten van de gebruiker geldt dit niet. Daar mag opleveren gewoon
ingepland worden.

## Stap 4, bundel de vragen

Per klant hoort er **maximaal één openstaande vraag** te zijn.

Kijk in `taken_lijst` of er al een vraag-taak voor die klant openstaat. Zo nee,
maak er één met alle vragen erin: `uitvoerder: "zelf"`, want mailen of bellen
doet de gebruiker, en een datum, want dat is zijn werk. Geef de wachtende taken
die aan de antwoorden hangen `wacht_vraag_todo_id` met het id van die
vraag-taak mee.

Staat er al een vraag open, maak dan geen tweede aan. Zet de nieuwe vraag erbij
met `taak_bijwerken` in de `notitie` van die taak. Die vervangt de hele notitie,
dus neem de vragen die er al stonden mee. Staat `taak_bijwerken` niet in je
toollijst, zeg de gebruiker dan welke vraag erbij moet.

Vier losse vragen aan dezelfde klant zijn vier mails en vier keer wachten. Eén
mail met vier vragen is één keer wachten.

## Stap 5, schat de duur en knip te grote taken

Geef elke taak een `duur_min`, een eerlijke schatting in minuten. Dan is een
dag met vijf taken van tien minuten niet even vol als een dag met vijf taken van
een halve dag.

Meer dan een halve dag (240 minuten): opknippen. Herken het ook aan een taak die
een aantal noemt ("9 pagina's schrijven", "40 foto's nabewerken") of aan een
opsomming van stappen. Knip naar de eerste concrete stap. Een taak die nergens
in past blijft liggen, omdat er nooit een dag is waarop hij past.

## Stap 6, schrijf de context erbij

Een taak die je over twee weken uit een vers gesprek leest moet zonder navragen
uitvoerbaar zijn. Zet in de `notitie` minimaal:

- **Waar**: welke map, welk document, welke omgeving
- **Wat er al is**: wat af is en waar het staat
- **Klaar als**: het concrete eindresultaat
- **Let op**: bekende valkuilen of eerdere beslissingen

Slecht, want dit dwingt een half uur uitzoekwerk af:

> Foto's Van Dijk afmaken

Goed:

> **Waar:** map Van Dijk bruiloft, export naar de gedeelde galerij.
> **Wat er al is:** selectie van 212 foto's gemaakt, eerste 80 bewerkt.
> **Klaar als:** alle 212 bewerkt en als galerij klaargezet, nog niet gedeeld.
> **Let op:** het bruidspaar wil geen zwart-wit, dat staat in hun mail van
> 3 september. Delen is een aparte taak die op hun akkoord op de selectie wacht.

## Stap 7, controleer op zwervers

Haal aan het eind `taken_lijst` op en kijk of er open taken zijn zonder
deadline en zonder blokkade. Die lijst hoort leeg te zijn.

Staat er iets in, noem het dan, en stel per taak een datum of een blokkade
voor via `taak_bijwerken`. Vraagt Zakenmaat om bevestiging, dan is dat je
voorstel: toon het en ga pas na ja door. Vraagt hij niets, wacht dan eerst zelf
op ja. Staat `taak_bijwerken` niet in je toollijst, laat de gebruiker het dan in
de app zetten.

## Wat deze skill niet doet

- Geen datums verzinnen voor werk dat op een ander wacht.
- Geen taak aanmaken zonder te weten wie hem doet.
- Geen oplever-taak inplannen bij een klant zonder go.
