Update kiln - the kiln tool of the machine and its plugins, then the open repo (kiln update, on a branch merged right away into develop). Use when the user asks to update kiln, or accepts the update offered at session start.
Installs into .claude/skills of the current project.
Are you the author of Update?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/antoine-tena-update)
---
name: update
description: Update kiln - the kiln tool of the machine and its plugins, then the open repo (kiln update, on a branch merged right away into develop). Use when the user asks to update kiln, or accepts the update offered at session start.
argument-hint: "[tool|repo]"
---
Scope: `$ARGUMENTS`; `tool` alone, `repo` alone, otherwise both, the tool first.
`<hook>` stands for `python3 "${CLAUDE_PLUGIN_ROOT}/hooks/session_start.py"`, `<reminders>` for
`python3 "${CLAUDE_PLUGIN_ROOT}/hooks/reminders.py"` (answers to kiln's questions).
Talk to the user in their language.
## Tool
1. `<hook> tool` prints `up to date`, or the command that updates the installed tool (from PyPI
or GitHub: `uv tool install --force kiln-cli==…` or `…git+…@<tag>`, preceded by
`uv tool uninstall kiln` when the tool still has its old name, then kiln's marketplace and the
`kiln` plugin installed for every repo of the machine; a tool installed from a kiln checkout
is replaced by the release, since only a release updates a repo). Run it as is; if it fails
(no network), stop and say why.
2. `<reminders> yes tool`, then tell the user to type `/reload-plugins`: the plugin's
skills and hooks only change on reload.
## Repo
1. The open repo is generated by kiln (`.copier-answers.yml` at its root, `_src_path` towards
`antoine-tena/kiln`); otherwise say so and stop.
2. Branch `chore/kiln-update` in a worktree (skill `/kiln:worktree`), then `kiln update` in that
worktree: template, compatible dependencies, checks.
3. Conflict markers (`<<<<<<< before updating`): stop, show the files, propose a resolution.
Failing checks: say so, do not merge.
4. Review the diff, commit in batches of 10 files at most (`chore: kiln update`, a title of 50
characters at most), then merge into `develop` (skill `/kiln:merge`), without a pull request
nor an approval to wait for.
5. `<reminders> yes "<root of the repo>"`.
6. Right after the merge, what kiln cannot guess: when the releases crossed ask for it,
`kiln update` opened a 🔴 ticket `Finish the kiln update to vX.Y.Z` in
`docs/backlog/backlog.md` (it says its ID), one box per action. Do it now with the user: ask
for what only they know (their own GitHub login, a choice; never another member's: each one
does theirs in their own session), make the changes on a branch,
then close the ticket (`/kiln:backlog done T-NN`); a box they put off stays open
in the ticket.
## Sum up
Version of the tool before and after, template release before and after (`_commit` of
`.copier-answers.yml`), files changed, checks, and what is left of the `Finish the kiln update` ticket.