---
title: "remeris: a Go release tool, drop-in for Knope"
description: "remeris is a release tool written in Go. It reads Knope's knope.toml, changeset files and Git tags, so it can replace Knope in an existing project."
slug: index
sidebar:
  label: Home
---

**remeris** is a release tool written in Go. It reads Knope's `knope.toml`, `.changeset/` files and Git tag formats, writes the same file edits and changelog output, and prints the same messages. If your project releases with [Knope](https://github.com/knope-dev/knope), you can switch the binary and keep everything else.

:::note
Status: the first phase is a drop-in replacement for [Knope](https://github.com/knope-dev/knope) 0.23.1. Every step that Knope's `knope.toml` can use is implemented. The [differences](/docs/differences) are listed on their own page.
:::

**[Usage](/docs/usage)**

The command line, the output, exit codes, environment variables and credentials.

**[Configuration](/docs/configuration)**

The `knope.toml` that remeris reads: packages, workflows, steps and variables.

**[Differences from Knope](/docs/differences)**

Where remeris behaves differently, and why.

**[Releasing](/docs/releasing)**

How remeris releases itself, and how to verify a download. For maintainers.

## Install

**mise**

With [mise](https://mise.jdx.dev) and its [packslip](https://packslip.dev) backend, which checks the signed release bundle (`packslip.sigstore.json`) before it unpacks anything:

```sh
mise use -g packslip:github.com/celest-io/remeris
```

The signer fingerprint of remeris is `ps1_p2ti4zisstvj4fgdichvcpnhhq` (it comes from the repository ID of `celest-io/remeris`, so it survives a rename). Releases from v0.0.2 on carry the bundle. See [Releasing](/docs/releasing#install-with-mise-and-verify-with-packslip) for the other ways to verify a download.

**Go**

```sh
go install github.com/celest-io/remeris/cmd/remeris@latest
```

**From source**

From a checkout, with [mise](https://mise.jdx.dev) (the build task injects the version information):

```sh
mise install
mise run build   # writes build/remeris
```

## Quick start

In a Git repository with a package file such as `Cargo.toml`, `package.json` or `pyproject.toml`, and no `knope.toml`:

1. **Generate a configuration**

    ```sh
    remeris --generate
    ```

    Writes a `knope.toml` with the release, document-change and get-version workflows. A repository without a `knope.toml` already has these three workflows with the same defaults, so `--generate` only saves them to a file you can edit.

2. **Record a change**

    ```sh
    remeris document-change
    ```

    Records a change file for the next release.

3. **Preview the release**

    ```sh
    remeris release --dry-run
    ```

    Shows what a release would do, and changes nothing.

4. **Release**

    ```sh
    remeris release
    ```

    Prepares and creates the release.

## For contributors and implementers

**[Specification](/docs/spec)**

The source of truth for behaviour: every feature, the algorithms, the Knope quirks to keep and the decisions to change.

**[Source code](https://github.com/celest-io/remeris)**

The repository on GitHub, with the commands and the code layout in `CLAUDE.md`.
