Planningen in de console¶
Het concept achter agents staat in Agents.
In het onderdeel Planningen leg je een beurt vast die niemand met de hand start: een cron-uitdrukking die telkens weer afgaat, of één moment in de toekomst dat één keer afgaat. Core voert daarop een agent, een prompt, een vrije opdracht of een evaluatie uit.
Je hebt een beheerdersaccount van de organisatie nodig, en de capability schedules moet in het
plafond van de organisatie aanstaan. Hetzelfde doe je met een sleutel in
Planningen via de API.

De kolom Doel toont een label -- Beurt of Evaluatie -- en wat de planning bij elke beurt aanstuurt: Agent, Prompt of Vrij voor een beurt, of de naam van de evaluatie voor een evaluatieplanning.
Een planning toevoegen¶
Kies Planning toevoegen. De lade opent met:
| Veld | Wat je invult |
|---|---|
| Naam | waarmee je deze planning herkent; kleine letters, cijfers, - en _, begint met een letter of cijfer, maximaal 64 tekens |
| Omschrijving | waar deze planning voor is. Alleen voor wie meeleest |
| Herhalend / Eenmalig | het type klok — zie hieronder |
| Wat deze beurt doet | Agent, Prompt, Vrij, Evaluatie of Workflow — zie hieronder |
| Subject id | voor wie elke afgevuurde beurt is; optioneel |
| Draait als | de sleutel van deze organisatie waarmee elke afgevuurde beurt haar bereik herbouwt |
| Labels | de eigen indeling van deze organisatie |
Draait als is verplicht: jij bent een persoon en hebt geen eigen sleutel, en een beurt is altijd de handeling van een sleutel. Een sleutel die zelf een planning aanmaakt via de API heeft dit niet nodig — die plant als zichzelf.
Herhalend: een cron-uitdrukking¶
Kies een van de drie voorkeuzes — Elk uur, Dagelijks om 09:00, Wekelijks op maandag om 09:00 — of Aangepast voor een vijfvelds cron-uitdrukking (minuut, uur, dag-van-de-maand, maand, dag-van-de-week) die je zelf typt. Tijdzone is de zone waarin die uitdrukking wordt gelezen, zodat een overgang naar zomertijd met de wandklok meebeweegt in plaats van met de klok te blijven staan op UTC.
Onder het veld staan de eerstvolgende keren dat de uitdrukking vuurt, zodra die geldig is — ook voor een aangepaste uitdrukking. Terwijl dat voorbeeld nog wordt opgehaald, of als het even niet lukt, toont de lade kort een eigen schatting voor de drie voorkeuzes hierboven, zodat het veld niet leeg blijft staan.
Eenmalig: één moment¶
Kies het moment in je eigen tijdzone. Zodra dat moment is geweest, vuurt de planning niet nog eens — Volgende keer wordt dan leeg.
Wat deze beurt doet¶
- Agent: kies de agent, optioneel een oudere versie dan de nieuwste, en de waarden voor de variabelen die de prompt van die agentversie declareert.
- Prompt: kies de prompt, optioneel een oudere versie, en de variabelen die die versie declareert.
- Vrij: geen agent en geen prompt.
- Evaluatie: kies de evaluatie; er is verder niets in te vullen — de scenario's van die evaluatie bepalen wat er draait, één uitvoering per agent die zij meet. Eenmaal aangemaakt ligt dit type vast: wil je iets anders, verwijder deze planning en maak een nieuwe.
- Workflow: kies de workflow en vul eventueel Invoer van de run (JSON) in. Elke keer start
de planning een run van de nieuwste versie van die workflow. Het tabblad is er als de
organisatie
workflowsmag gebruiken, en ook dit type ligt vast zodra de planning bestaat. De runs staan bij de workflow zelf (Workflows in de console).
Bij Agent en Prompt staat onder Variabelen eerst welke variabelen de gekozen versie
declareert. Een variabele met een standaard draagt
een label, zoals automatisch: Datum van vandaag of standaard: «…». Voor zo'n variabele hoef je
geen waarde op te geven. Is de soort waarde van een variabele
Getal of Geheel getal, typ dan het getal; bij Ja of nee typ je true of false. De
console stuurt hem als die soort mee, en opslaan weigert een waarde die niet past, met de reden
onder Variabelen. Een planning heeft dus niemand nodig om de datum in te vullen: Core
bepaalt hem op het moment dat de planning afgaat, in de Tijdzone van de planning. Een eenmalige
planning heeft in de console geen tijdzoneveld en leest de tijd daarom in UTC; maak hem via de
API als je een andere zone wilt.
Bij Agent, Prompt en Vrij staat daaronder Waarden voor tools: de waarden die je applicatie bij
elke afgevuurde beurt aan de tools zou meegeven, in tool_variables. Voeg een rij toe met
Variabele toevoegen en vul een naam, een soort (Tekst, Getal of Ja of nee) en een
waarde in; het model ziet ze nooit. Geheim verbergt alleen wat je typt: het veld wordt een
wachtwoordveld. Core versleutelt een waarde pas als een API-koppeling of MCP-server van de
organisatie die naam als x-secret declareert. Een waarde onder een andere naam wordt leesbaar
bewaard en weer getoond, met of zonder die schakelaar. Een versleutelde waarde kun je vervangen maar
nooit teruglezen: daarna staat bij de rij Ingesteld met een leeg veld; laat het leeg om de
bewaarde waarde te houden, of typ een nieuwe tekst om hem te vervangen. Een waarde die geen tool van
de beurt declareert, wordt genegeerd, en een waarde die een tool verplicht stelt maar ontbreekt, laat
die beurt mislukken zoals elke beurt (Een waarde van je
klant aan een tool meegeven).
Onder Agent, Prompt en Vrij staan dezelfde velden, want een planning mag alles dragen wat een gewone beurt mag:
| Veld | Verplicht | Betekenis |
|---|---|---|
| Invoer | alleen bij Vrij | de tekst die als bericht wordt verstuurd |
| Instructies | nee | een vaste ontwikkelaarsinstructie voor deze beurt; bij een agent gelezen vóór die van de agent zelf |
| Model | bij Prompt en Vrij; optioneel bij Agent | bij Agent alleen invullen als de agentversie er zelf geen vastlegt, of om hetzelfde model te noemen — een ander model dan de agentversie geeft een fout op dat veld |
Meer tonen klapt een extra blok open: Skills en Tools (dezelfde kiezers als bij een agent), Temperatuur, Maximum uitvoertokens, Labels en Metadata. Deze velden worden toegevoegd aan de beurt; bij een agent komen skills en tools bij die van de agent, en legt de agentversie een veld zelf vast, dan draait de beurt op de waarde van de agent en noemt de trace het veld waarvan de jouwe is weggelaten.
De Labels in dit blok zijn de labels van het gesprek dat een afgevuurde beurt opent, en alles wat in dat gesprek ontstaat draagt ze, dus een regel over Gesprekken beslist wie het resultaat bereikt. De Labels bovenaan het formulier delen de planning zelf in.
Een planning nu uitvoeren¶
Nu uitvoeren, in het rijmenu van de lijst en op de eigen pagina van een planning, vuurt haar onmiddellijk in plaats van te wachten op haar klok — nuttig om te controleren of hij doet wat je bedoelt. Voor een beurt-planning meldt Core dat de uitvoering in de rij is gezet; voor een evaluatieplanning meldt Core hoeveel uitvoeringen in de rij zijn gezet, één per agent die de evaluatie meet. Loopt de vorige beurt (of lopen de vorige uitvoeringen) van deze planning nog, dan antwoordt Core "Deze planning loopt nog." en er wordt niets extra's gestart: overlappen wordt overgeslagen, nooit gestapeld.
Inschakelen en uitschakelen¶
De schakelaar op de lijst en op de eigen pagina van een planning zet haar aan of uit. Een uitgeschakelde planning heeft geen volgende keer; haar geschiedenis en de beurten die zij al heeft afgevuurd blijven bestaan.
Een planning lezen¶
Op de eigen pagina van een planning staan haar klok, het label van haar type (Beurt of Evaluatie), haar laatste uitkomst en Uitvoeringen.
Voor een beurt-planning zijn dat de beurten die zij heeft afgevuurd, met status; een rij met een thread erachter opent die conversatie. Voor een evaluatie-planning zijn dat de uitvoeringen van die evaluatie die deze planning heeft ingepland, met agent, duur, score en status — dezelfde lijst als op de evaluatie zelf, maar dan beperkt tot wat deze planning aanstuurde; een rij opent die uitvoering. Beide lijsten verversen zichzelf zolang er iets nog loopt en stoppen daar vanzelf mee. Heeft de laatste tik van een evaluatieplanning al een uitvoering ingepland, dan staat Laatste uitvoering bekijken naast Instellingen bewerken.
Instellingen bewerken opent dezelfde lade als Planning toevoegen, gevuld met wat er nu is opgeslagen; het type ligt dan vast (zie hierboven).
Drie laatste uitkomsten:
| Uitkomst | Betekenis |
|---|---|
| Afgevuurd | de laatste tik heeft een beurt in de rij gezet |
| Overgeslagen | de vorige beurt liep nog toen de tik viel |
| Mislukt | de tik kon niet vuren — bijvoorbeeld een ingetrokken sleutel; de planning blijft ingeschakeld en haar volgende keer wordt gewoon berekend |
Een planning verwijderen¶
Verwijderen in het rijmenu van de lijst wist de planning. De beurten die zij al heeft afgevuurd, blijven bestaan.
Lege lijsten en toegangsbeperkingen¶
"Nog geen planningen" betekent dat er voor deze organisatie nog geen planningen zijn aangemaakt.
Zie je schedules staat uit voor deze organisatie, dan staat die capability uit in het plafond van de organisatie. De beheerder van de organisatie erboven zet het aan bij Toegestane capabilities op Instellingen; voor een organisatie zonder bovenliggende organisatie doet je operator dat. Schedules vereist ook runs, dat op zijn beurt threads vereist: een beurt die niemand met de hand vraagt is nog steeds een achtergrondbeurt op een thread.