Skip to content

Your first job

Your first job writes a digest of the Hacker News front page every weekday morning and saves it as a Markdown file. It needs internet access and no credentials, and if it breaks, nothing pages you at 3 a.m. You need a signed-in instance with a working model, as set up in Install with Docker or Install on Kubernetes.

On the Jobs page, click Create job and paste this description into Describe the job:

Every weekday at 7:30 Berlin time, read the Hacker News front page and write a digest of its 30 stories as Markdown: the title with its link, points and comment count, sorted by points.
Mark stories about self-hosting, Go or databases with a ★ so they stand out. Save the digest as `digest.md` in the run's outputs and report how many stories matched.

The description names the task, the time with its time zone, the file to save and what to report. The agent reads Hacker News with curl, which the default sandbox image includes, so the job needs no MCP server.

Click Compile or press ⌘ Enter (Ctrl Enter on Linux and Windows). The compile step turns your description into a spec, the structured form of the job that you review next. If compiling fails, check the model setup under Connect a model. Writing instructions explains what the compile step reads and the questions it asks when a description leaves something open.

The review screen shows the spec in cards you can edit, with a Ready to save? summary beside them.

The New job page after compiling, with the Job, Schedule and Success criteria cards and the Ready to save? panelThe New job page after compiling, with the Job, Schedule and Success criteria cards and the Ready to save? panel

Check three cards before you save:

  • Schedule holds the Cron expression 30 7 * * 1-5 in the Timezone Europe/Berlin. Fix either field if the compile step got it wrong.
  • Inputs and outputs lists the numbers each run reports, such as the outputs stories and matches.
  • Sandbox has Network on Internet access.

Click Save & run. Umpteenth creates the job, opens the page of its first run and from now on runs the job every weekday at 7:30. Self-improve is on for new jobs, so reflection follows its runs and spends model tokens of its own. Managing jobs covers the other settings, including how to stop the scheduled runs.

Your first run starts in Explore mode, because the job’s playbook is empty. The Timeline tab streams it as it happens: each model turn with its text and cost, each command with its output, and at the end a Finished step with the agent’s summary and outputs.

A finished run of the Hacker News digest, with Duration, Cost, Turns and Playbook in the header and the Timeline showing model turns, tool calls and the Finished stepA finished run of the Hacker News digest, with Duration, Cost, Turns and Playbook in the header and the Timeline showing model turns, tool calls and the Finished step

The header adds up the run’s Duration, Cost and Turns, and Playbook shows the playbook version the run started with, or a dash on a first run. By default a run stops after 15 minutes, 60 turns or $2, and Managing jobs shows how to change those limits.

Open the Outputs tab once the run has finished. Summary holds the report the agent wrote, and Outputs shows the numbers the run reported. Artifacts lists digest.md, the file the agent saved in /ump/outputs, with a download button.

Reading a run explains the other tabs.

Switch to the Learned tab. It shows Reflecting on this run until reflection finishes, and the page updates on its own.

A run's Learned tab with the changes reflection made and the playbook diffA run's Learned tab with the changes reflection made and the playbook diff

What this run taught the job lists each change reflection proposed, such as a learning about the Hacker News API or a toolkit script that fetches the front page. A badge marks each change as Applied, Held for review or Rejected, and Playbook changes compares the new playbook version with the one before it.

Once reflection has saved a learning or a script, the job page shows Runs as Assisted, and the job’s Playbook tab opens on Version 1.

Go back to the job page, click Run now and confirm with Run now in the dialog. With a playbook in place, the second run starts in Assisted mode, and if reflection saved a toolkit script, the agent can call it as a tool instead of fetching the stories step by step again. The job’s Runs tab lists both runs with their mode, duration and cost.

After three successful Assisted runs that do the work and take the same steps, reflection can write a main script, and later runs show Scripted. Wait for the weekday schedule or click Run now a few more times, and follow the Graduation chart on the job’s Overview tab, which plots each run’s cost and duration colored by mode. The full rules are on How jobs learn.