Creating a task from a template
When you create a task, you start from a template: a ready-made starting point for one kind of automation. HarmFlow comes with three built-in templates. This page says what each one sets up, what you still fill in, and what happens between choosing a template and saving the task.
Where you choose a template
HarmFlow offers the same templates, in the same order, wherever it offers to create a task:
- the New task button at the top of the window, or its shortcut, ⌘N;
- the Tasks screen;
- the Overview, while you have no task yet;
- the first-run setup.
Each template shows its name and a line on what it is for, in the interface's language. Change the language and they change with it, with no restart.
The three built-in templates
- General task. Any automation whose behavior lives in its prompt, agents, and skills: an AI tool works on a prompt you write. Its harness is set to Claude Code.
- Implement GitHub issues. Selects issues, implements them in a worktree, runs the tests,
and opens a draft pull request. The task starts as a copy of HarmFlow's built-in issue implementer: its
prompt is that agent's, with the skills that pick the issues, prepare the worktree, and open the draft pull
request. Its harness is set to Claude Code, and the repository it works starts on the
mainbranch. - Script task. Runs a program or a script of yours on a schedule, in place of a launchd agent, the Task Scheduler, or cron. It runs no AI tool.
Choosing a template opens a draft
Choosing a template opens the task editor with a new task already filled in from it. The task is named after
the template, such as General task, and gets an identifier no other task has: a second task from the same
template becomes general-task-2. You can rename it before you save. The name is set when the
editor opens: a later change of language does not rename the task.
The draft is not a task yet. Nothing is saved, enabled, or run until you choose Save. Close the editor before you save, and nothing is written.
What you still fill in
A template leaves open the values only you can give. The editor leaves those fields empty for you; saving without one is refused, and the editor lists each value still missing.
- General task: the Prompt, what the task does.
- Implement GitHub issues: the repository it works, in its Repository (owner/repo) and Local path fields. Its prompt and skills are already there.
- Script task: what it runs: A program with its arguments, or An inline script with its interpreter. Its working directory, variables, and timeout are optional.
None of the three sets a schedule. A task saved without one is Manual only: it runs when you start it. Give it a cron expression or an interval in the editor to have it run on its own.
Built-in templates do not change
The built-in templates ship with HarmFlow. You cannot change or delete them: what you change in the editor belongs to the new task, and the template stays as it was for the next task you create from it.