Automations
Routines a Kraddie runs as Worker sessions, woken by a schedule, an app event, a code host event or by hand.
An automation is one routine of a Kraddie: a name, an on and off switch, the triggers that wake it, its instructions, where its runs work and which conversation they continue. Each run works as a Worker session without a lead and reports through the attention queue, so a run that needs a permission or finishes shows up there like any other agent.
A Kraddie holds up to 50 automations, each with up to 12 triggers and instructions of up to 20,000 characters.
The Automations view
Open Automations from the top bar. The board lists every automation as a card with its Kraddie, its triggers, its next run and its last outcome. The filter finds them by name, Kraddie or cue, with words such as weekdays or pipeline.
On a card:
- the switch puts it On duty or lets it rest;
- Run it now starts a run at once;
- clicking the card opens it in the editor.
Compose writes a new automation from a blank canvas, and Blueprints shows or hides the ready-made briefs to borrow.
Compose one
The editor walks through five steps, and Launch saves the automation and puts it on duty. An automation needs a Kraddie: without one, the editor asks you to adopt a Kraddie first.
Crew: who takes it on?
Pick the Kraddie in charge, and Call it: a name of up to 60 characters, without a slash. A new automation is called Fresh automation until you rename it.
Cue: what wakes it up?
Add a cue from the picker. Any one of the cues sets it off. Without a cue it would never run, and the editor says so.
Brief: what is the job?
Describe the job in plain words, the way you would brief a teammate. Skills, @file mentions and slash commands such as /review behave just as they do in a chat. Below the brief, the agent, effort and permissions default to The Kraddie's own agent, Usual effort and Usual permissions; pick others to override them for this automation.
Workspace: where does it work?
Choose the checkout, the thread and the group it shows up in. See Session options.
Missed beats: and if the app was closed?
Choose whether a scheduled run missed while the app was closed runs when it starts. See Catch-up.
Save changes keeps edits to an existing automation, Discard drops them, and Retire this automation for good deletes it.
Blueprints
Sixteen ready-made briefs, grouped on a shelf by category. Borrow one and adjust it, or begin on a blank canvas.
| Blueprint | Category | Wakes | What it does |
|---|---|---|---|
| Morning risk sweep | Crowd pleasers, Code health | Weekdays at 08:30 | Rereads yesterday's merges and flags what could break for people using it |
| Attack surface walk | Crowd pleasers, Safety net | Tuesdays at 10:30 | Walks the inputs and boundaries of the project the way an intruder would |
| Docs refresh | Crowd pleasers, Insight | Thursdays at 14:00 | Brings the written guides back in line with what the code changed lately |
| One more test a day | Crowd pleasers, Code health | Weekdays at 13:00 | Finds a path nobody tests yet and pins its behaviour down |
| First look on new pull requests | Code health | When a GitHub pull request opens | Leaves an early review the moment a pull request shows up |
| Unused code sweep | Code health | Fridays at 15:30 | Clears out functions, flags and files nothing reaches anymore |
| Dependency health check | Safety net | Mondays at 09:15 | Compares every package the project pulls in against published advisories |
| Credential guard | Safety net | When files in the repository change | Makes sure no key or password slipped into the changes |
| Red build responder | Crowd pleasers, Firefighting | When GitHub checks or a GitLab pipeline turn red | Works out why a pipeline failed and prepares the repair |
| Wobbly test finder | Firefighting | Weekdays at 06:45 | Runs the suite over and over to catch tests that pass one time and fail the next |
| Loose ends digest | Firefighting | Wednesdays at 11:00 | Gathers the reminders left in the code and says which ones are getting urgent |
| Friday recap | Insight | Fridays at 16:30 | Turns the week's commits into a short recap the team can skim |
| Upgrade scout | Insight | Thursdays at 10:00 | Finds packages with newer releases and sizes up what moving to them would cost |
| Clean build probe | Housekeeping | Every 4 hours | Builds and tests a few times a day so a broken toolchain shows up early |
| Worktree warm-up | Housekeeping | When a worktree appears | Gets every new worktree ready to use before you open it |
| Branch tidy list | Housekeeping | Fridays at 17:15 | Points out merged or forgotten branches and worktrees without removing anything |
Triggers
The picker groups cues in five shelves:
A rhythm or a fixed hour, in local time while the app is open.
- On a rhythm. Every so many minutes, from 1 up to 10080 (one week). The picker offers every 15 and 30 minutes, every hour and every 6 hours.
- At a set hour. A time written as
HH:MM, for example08:30, on the weekdays you pick. The picker offers daily, weekdays and Mondays at 09:00.
Code host events are found by asking GitHub or GitLab every two minutes about the group's open pull and merge requests. The app never opens an address for the code host to call.
Session options
| Option | Choices | Default |
|---|---|---|
| Checkout | Right here, in the Kraddie's repository; or A worktree of its own, a fresh git worktree for each run | A worktree of its own |
| Thread | Begin anew; or Pick up where it stopped, continuing the conversation of its last run | Begin anew |
| Shows up in | A group of its own, or a group of the sidebar | A group of its own |
A sidebar group only works with the checkout right here. A run whose sidebar group is not open fails and says so. The agent, model, effort and permission mode of the brief apply to the run; when left alone, the Kraddie's own are used.
Catch-up
Clock cues that fall while the app is closed are skipped, unless you choose to make up for one missed beat. When the app starts, a single beat skipped within the span you pick runs right away:
| Choice | Window |
|---|---|
| Let it go | No catch-up, the default |
| Within 15 min | 15 minutes |
| Within an hour | 1 hour |
| Within 6 hours | 6 hours |
| Within a day | 24 hours |
A catch-up run shows in the logbook as missed while the app was closed.
Runs
- At most three automation runs work at once. A run that would be a fourth is skipped, as is a run of an automation that is still running; both show in the logbook.
- Each automation keeps its last 50 runs in its logbook, in the editor and on the Kraddie's page. See Run history.
- A run fails with a reason when the Kraddie has no repository to work in, its environment is not open, the automation or its Kraddie is switched off, or its agent cannot run as a Worker chat.
- A run's brief carries the Kraddie's compass and keepsakes.
From the CLI
krad automation list
krad automation run Docs "Only the API folder"
krad automation run owl/Docs
krad automation disable owl/Docs
krad automation enable owl/Docs
krad kraddie run owl| Command | What it does |
|---|---|
krad automation list | Every automation: its Kraddie, id, name, switch, triggers, next run, last outcome and number of runs |
krad automation run <name> [prompt] | Starts a run, with an optional extra prompt |
krad automation enable <name> | Puts it on duty |
krad automation disable <name> | Lets it rest |
krad kraddie run <name> [prompt] | Wakes the Kraddie to run its manual automation, or its first one |
Write <kraddie>/<name> when two Kraddies have an automation of that name; otherwise the CLI refuses the name as ambiguous. See the krad CLI and the requests behind it.