# Gardener Tasks

How to write, change and check Gardener tasks (.gardener/tasks/*/TASK.md), the AI...

- Repository: https://github.com/cloudflare/computer (9770 stars)
- Category: Git and review
- License: MIT
- Last updated: 2026-10-29
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add cloudflare/computer --skill gardener-tasks -g -a claude-code -y`
Codex: `npx skills add cloudflare/computer --skill gardener-tasks -g -a codex -y`
Cursor: `npx skills add cloudflare/computer --skill gardener-tasks -g -a cursor -y`
Gemini CLI: `npx skills add cloudflare/computer --skill gardener-tasks -g -a gemini-cli -y`

## Description

How to write, change and check Gardener tasks (.gardener/tasks/*/TASK.md), the AI maintenance tasks this repository runs from GitHub Actions. Use before creating or editing anything under .gardener/.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

<!-- Written by Gardener 0.1.21. `gardener generate` rewrites this file; do not edit it. -->

# Gardener tasks

Gardener runs AI maintenance tasks on this repository from GitHub Actions. Each task is one
Markdown file: YAML frontmatter says when it runs, what the model may read, and exactly which
changes it may make; the body is the model's instructions. A planning job runs the model with only
the declared **tools** and lets it plan only the declared **effects**. A separate job then applies
that plan. Nothing outside the declaration is possible, whatever the instructions say.

## Files

```
.gardener/
  gardener.json            project settings (release pin, optional "handle"); edit only "handle"
  gardener.lock.json       generated; never edit
  SKILL.md                 this file; generated
  tasks/<dir>/TASK.md      one task per directory; the only files you write
.github/workflows/
  gardener-<id>.yml        generated, one per task; never edit
  gardener-sync.yml        generated (or the "syncWorkflow" name in gardener.json); never edit
```

## Workflow

1. Create `.gardener/tasks/<dir>/TASK.md`. Start from the template below or an existing task.
2. Run `npx @scuffi/gardener@0.1.21 generate` from the repository root (or the repository's own
   `package.json` script, if it has one). Use this exact version: a different one produces files the
   pull request's **Check tasks** check rejects.
3. Fix every error `generate` prints and read its warnings. Repeat until it succeeds.
4. Commit the `TASK.md`, `.gardener/gardener.lock.json` and the `.github/workflows/gardener-*.yml`
   changes together. When they reach the default branch, the sync workflow enables the task.

To change a task, edit its `TASK.md` and run `generate` again. To remove one, delete its
directory and run `generate`. Never hand-edit generated files.

## Template

The rest: https://github.com/cloudflare/computer/blob/HEAD/.gardener/SKILL.md
