Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions self-development/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,20 @@ Creates GitHub issues for actionable improvements found.
kubectl apply -f self-development/kelos-self-update.yaml
```

## One-Off Task Templates

The `tasks/` directory contains standalone Task definitions used by GitHub Actions workflows for manual or utility operations. Unlike TaskSpawner-created tasks, these are applied directly via `kubectl apply` from workflow YAML.

### tasks/fake-strategist-task.yaml

Used by the `run-fake-strategist.yaml` workflow (`workflow_dispatch`). Creates a one-off strategist task identical to what the `kelos-fake-strategist` TaskSpawner would create, allowing manual triggering outside the cron schedule.

### tasks/squash-commits-task.yaml

Used by the `squash-kelos-worker-commits.yaml` workflow. Triggered by the `/squash-commits` command on a PR. Rebases and squashes all commits on the PR branch into a single commit.

**Important:** This task deliberately uses the name `kelos-workers-<ISSUE_NUMBER>` to occupy the same slot as the worker task, preventing the TaskSpawner from re-spawning a conflicting worker during the squash operation.

## Customizing for Your Repository

To adapt these examples for your own repository:
Expand Down
2 changes: 2 additions & 0 deletions self-development/tasks/fake-strategist-task.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,9 @@ spec:

Actions:
- Create a GitHub issue with your findings and proposals:
```
gh issue create --title "<title>" --body "<description>" --label generated-by-kelos
```
- Do NOT create PRs. Only create issues
- Prefer well-researched issues with clear proposals over broad, vague suggestions

Expand Down
12 changes: 7 additions & 5 deletions self-development/tasks/squash-commits-task.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
apiVersion: kelos.dev/v1alpha1
kind: Task
metadata:
# Uses the same name as the worker task to prevent the TaskSpawner
# from re-spawning a conflicting worker while squash is in progress.
name: kelos-workers-${ISSUE_NUMBER}
labels:
kelos.dev/type: squash-commits
Expand All @@ -19,13 +21,13 @@ spec:
podOverrides:
resources:
requests:
cpu: 250m
memory: 512Mi
ephemeral-storage: 4Gi
cpu: "250m"
memory: "512Mi"
ephemeral-storage: "4Gi"
limits:
cpu: "1"
memory: 2Gi
ephemeral-storage: 4Gi
memory: "2Gi"
ephemeral-storage: "4Gi"
prompt: |
You are a coding agent.

Expand Down