Repository navigation
Releases: katulevskiy/reins
Release list
Reins v0.17.0
Features
- core: add scoped account permissions and bounded delegations (
4a63e1d) - core: enforce connector and MCP review with captured attempts (
e681db7) - mobile: configure scoped account and temporary permissions (
5da4544) - core: bind automatic permission setup to owner consent (
2a98f77) - mobile: explicitly authorize primary-phone permission setup (
c663044)
Fixes
- core: preserve permission authority across effects and reconnects (
a8dbf4c) - core: recheck execution after token acquisition and retain managed boundaries (
af41477) - core: guard final disclosures and keep held permission controls readable (
44e7412) - core: roll out connected defaults alongside enforcing adapters (
c253edf) - core: reject positive imports without managed account history (
00b8bc2) - core: recheck connector and MCP delivery after auth refresh (
3146c48) - core: fence policy handover and make agent revocation dominate (
93bcd91) - core: hide revoked agents and preserve failed-server revocation brake (
987a722) - core: hold authorization until handover history is materialized (
3f7ccfd) - core: keep unsupported defaults readonly and validate full permission flows (
e8afccf) - mobile: describe current review rules using canonical core reasons (
35f6099) - policy: distinguish review defaults from mandatory review (
7a7572c) - mobile: make the exact permission draft inspectable before saving (
42f750f) - mobile: explain one-time mail approvals and ongoing permissions (
87c42c1) - core: expose only enforceable permission choices (
42049c8) - core: disable legacy Remember for managed mail accounts (
1c5d102) - android: observe account epoch in permission routes (
85a85c0) - core: require published authorization history before handover (
23933b9) - core: preserve typed handover sync failures (
803838e) - mobile: preserve exact nonempty recovery proof input (
af5095f) - core: attribute verified permission audit actors (
4d99ade) - mobile: distinguish explicit permission audit decisions (
e348c08) - core: summarize observed command actions beyond strict syntax (
6eecc09) - core: retain executable command setup in readable actions (
24cd061) - mobile: put command actions and consequences before setup (
2067327) - core: keep dynamic directory and executable source visible (
e80cc38) - ios: preserve completion actions and wait for rendered test controls (
1bc89e4) - core: conceal command credentials without hiding executable source (
59fe7df) - core: cover curl protocol clusters and joined Git helpers (
37b4354)
Other
- test(core): cover receipt settlement and late Gmail policy changes (
30eed4b) - test(core): supply authenticated headers in file handoff fixture (
a14c827) - Require signed policy support before handing over protected accounts (
c115c04) - test(core): use explicit Arc cloning in revocation race fixture (
b31ae06) - Preserve all authorization brakes and usage history during handover (
7a34cd1) - Finish phone transfer only after policy history is ready (
25b85a4) - test(android): isolate connection calls and check the new finishing surface (
cf00d94) - Assert the actual synced primary frontier after handover (
02fa3f9) - test(e2e): verify managed mail uses scoped permissions (
1cb52ef) - style(core): simplify permission availability conditions (
b442b77) - test(e2e): measure managed Gmail full-review round trip (
3e9ddf7) - test(core): isolate authorization fixtures from local probes (
da6a443) - test(android): cover permission preview in minified Trust smoke (
a548569) - test(ios): walk account permission preview without saving (
40ef9a2) - test(android): traverse long permission forms in release smoke (
d7f6476) - test(android): retain asynchronous control appearance wait (
ab48abe) - test(android): capture reported release command baseline (
8b987ab) - test(ios): finish grant form input and scope ended-row queries (
9e9629e) - test(ios): reacquire rendered controls and position scroll checks safely (
5b0005a) - test(e2e): await Bypass pending settlement after hook answers (
a96e110) - test(ios): query visible buttons and reach the list end (
ac04760)
Full changelog: v0.16.0...v0.17.0
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.17.0/reins-desktop-0.17.0-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.17.0-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.17.0-x86_64-unknown-linux-musl/reins ~/.loca...Reins v0.16.0
Features
- policy: add versioned ABAC contracts and pure authorization evaluator (
57871e6) - make command requests readable across Android and iOS (
be569a5) - core: enforce mandatory account policy before execution (
eb90184) - finish integration connections with verified success (
28fd410) - core: enforce connector and MCP review with captured attempts (
7ecd4fc)
Fixes
- core: preserve policy conflict history and recheck disclosure (
9b9c809) - core: distinguish uncertain attempts and withheld successes (
c62449d) - distinguish uncertain Activity outcomes on mobile (
d9cead5)
Other
- test(policy): harden wire boundaries and document authorization integration (
2fb7e70) - docs: keep command screenshots in the pull request only (
23c7c7d) - test: use the same command question in visual comparisons (
a4120a9) - test(core): inspect settled MCP failures for secret leaks (
db0a30f) - test(core): cover unknown file-upload errors without secret disclosure (
8234053) - chore(core): reuse audit outcome string allocation (
1a2425c)
Full changelog: v0.15.2...v0.16.0
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.16.0/reins-desktop-0.16.0-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.16.0-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.16.0-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.16.0_amd64.deb (arm64) and reins-0.16.0-1.x86_64.rpm (aarch64), plus
reins-app_0.16.0_amd64.deb and reins-app-0.16.0-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.16.0_amd64.deb, sudo dnf install ./reins-0.16.0-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.16.0"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.16.0/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.16.0or the Linux binary with SQLite, reins-server-0.16.0-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.16.0-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.16.0/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMSReins v0.15.2
Fixes
- security follow-ups to Auto's push rule and the proof exemption (
8790d7d) - ios: restore scroll coverage and retain retry build artifacts (
6bf10d4) - android: align Activity history details with iOS (
3ae7fb6) - android: preserve keyboard insets on legacy history (
54542f0)
Other
- ci: build iOS tests once and run the classes a pull request touches (
ef5a6ae) - ci: leave two macOS runners free of iOS test shards (
41e65fd) - ci(ios): queue pull request iOS runs in one shared concurrency group (
e0b9fa9) - ci(ios): skip simulator diagnostics collection after a test failure (
e6d5142) - test(ios): quarantine the two remaining scroll-from-row UI tests on CI (
5baee81) - ci(ios): pass CI=1 to the test process and update the routing test (
1d78b62) - ci(ios): inject CI=1 into the xctestrun instead of -testenv (
2420f9c) - test(ios): quarantine two more consistently-failing UI tests on CI (
24615fc) - test(ios): quarantine testScreenshots on CI (
c7cf62f) - test(ios): keep scroll gestures in content and stabilize settings interactions (
f6dd7a9) - test(ios): damp Activity centering setup without changing gesture assertions (
d95e169) - test(ios): wait for the reopened menu before selecting Manual (
abdb3d4) - test(ios): allow hittable settings controls at viewport edges (
cdbc182) - test(ios): restore settings screenshot and disconnect CI coverage (
6cc70ac)
Full changelog: v0.15.1...v0.15.2
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.15.2/reins-desktop-0.15.2-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.15.2-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.15.2-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.15.2_amd64.deb (arm64) and reins-0.15.2-1.x86_64.rpm (aarch64), plus
reins-app_0.15.2_amd64.deb and reins-app-0.15.2-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.15.2_amd64.deb, sudo dnf install ./reins-0.15.2-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.15.2"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.15.2/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.15.2or the Linux binary with SQLite, reins-server-0.15.2-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.15.2-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.15.2/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMSReins v0.15.1
Fixes
- android: prevent Trust callback cache crashes in release builds (
d1ebdbf)
Other
- test(android): verify minified mode actions without accessibility selection flags (
007b7a4) - test(android): synchronize exact controls during Trust refreshes (
c13da81)
Full changelog: v0.15.0...v0.15.1
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.15.1/reins-desktop-0.15.1-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.15.1-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.15.1-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.15.1_amd64.deb (arm64) and reins-0.15.1-1.x86_64.rpm (aarch64), plus
reins-app_0.15.1_amd64.deb and reins-app-0.15.1-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.15.1_amd64.deb, sudo dnf install ./reins-0.15.1-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.15.1"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.15.1/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.15.1or the Linux binary with SQLite, reins-server-0.15.1-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.15.1-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.15.1/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMSReins v0.15.0
Features
- Autopilot's model updates itself on Wi-Fi (
726f1fb) - core: the user's own name for any connection, shown everywhere (
5913f62) - server: keep a computer's boxed name for its desktop app (
a7eb851) - desktop: show the name the phone gives this computer (
398c5b5) - ios: rename any connection; a second account of an AI asks for a name (
327ee35) - android: rename any connection; a second account of an AI asks for a name (
ec5b23b) - ios: mark the commits, files and emails worth a closer look (
11c57f3) - android: mark the commits, files and emails worth a closer look (
49a304a) - a second account of an AI shows as "Claude 2" without being named (
141a8ae) - core: Auto works from the first request; your answers tune it, never unlock it (
9e966a5) - core: live sync engine over the signed op log (
f8a2a7e) - mcp: list every tool, say how to use Reins, and prepare directory listings (
2c8c4e2)
Fixes
- model updates stop off Wi-Fi, roll back loaded, and verify from disk (
3fe27c1) - core: clippy on the self-check timeout and the pause test (
bcaccfb) - apps: the model row's version is never cut off (
cfa353d) - a pairing's name is the user's only when they edited the field (
4d7fd71) - core: Auto keeps its risk checks warm or trusted, and a known target is known per kind (
77a51ca) - core: agreement that relaxes Auto's risk check cannot be gamed, and main always asks (
63fc064) - core: a push to the default branch always asks in Overnight too, and from a hook's command (
01bfd43) - core,server: live sync security review (
23429b7) - core: a push destination is read as git resolves it, and git's options or an alias cannot hide one (
b096d40) - core: only the primary phone renames a connection (
f6bace1) - core,server: live sync security review, round 2 (
7343d0a) - server: proven-device proof exemption keyed by device key, expiring and cleared on removal (
1f2cc44) - core: model-update tests wait for the download instead of a short sleep (
3e99b6a) - core,server: live sync security review, round 3 (
e20d032) - core: pushes to the default branch are read however they are written, and a feature branch's bare push passes again (
bf8103e) - ios: the demo names a second connection as the core does; a code pairing comes with its suggestion; the rename sheet's fields are reachable (
ead47a1) - mcp: review follow-up on hints, waiting text and instructions (
6c2f5a1) - core: a push is decided by Autopilot only in one allowlisted shape (
172e063) - desktop: report the push branch only from configuration read in full (
84b46d4) - core,server: live sync security review, round 4 (
e01a85e) - core: bind a recovery confirmation to what the user saw; end an untrusted start only cleanly (
0b8f66e)
Other
- ci: run iOS unit and UI tests on pull requests (
7518f63) - ci: tolerate an empty UI skip list on macOS bash (
aee8f41) - ci: do not expand an empty skip list on bash 3.2 (
870236f) - ci: ad-hoc sign iOS simulator tests (
d8921af) - ci: rebuild the iOS simulator core on main pushes (
ff68332) - test(ios): this week's Auto kinds are the demo's three, each named (
6bda0fc) - test(ios): centre each Activity scroll drag in the visible list (
b3169a7) - test(core): a bypass's permission may end a second past the bypass, which takes it back [skip release] (
2da9434)
Full changelog: v0.14.2...v0.15.0
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.15.0/reins-desktop-0.15.0-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.15.0-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.15.0-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.15.0_amd64.deb (arm64) and reins-0.15.0-1.x86_64.rpm (aarch64), plus
reins-app_0.15.0_amd64.deb and reins-app-0.15.0-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.15.0_amd64.deb, sudo dnf install ./reins-0.15.0-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.15.0"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.15.0/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.15.0or the Linux binary with SQLite, reins-server-0.15.0-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.15.0-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.15.0/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMSReins v0.14.2
Fixes
- desktop: detail rows give values the width, long paths wrap sensibly (
0b45c3e)
Other
- docs: a README for customers first, with the Signal screens and downloads [skip release] (
fba9f4b) - docs: the README's hero shows one request on both screens [skip release] (
88a6e1a) - test(server): check the cap key is a hex digest instead of searching it for "ada" [skip release] (
809e803)
Full changelog: v0.14.1...v0.14.2
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.14.2/reins-desktop-0.14.2-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.14.2-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.14.2-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.14.2_amd64.deb (arm64) and reins-0.14.2-1.x86_64.rpm (aarch64), plus
reins-app_0.14.2_amd64.deb and reins-app-0.14.2-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.14.2_amd64.deb, sudo dnf install ./reins-0.14.2-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.14.2"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.14.2/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.14.2or the Linux binary with SQLite, reins-server-0.14.2-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.14.2-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.14.2/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMSReins v0.14.1
Fixes
- ios: background pushes and refreshes can't be killed for a held lock or an overrun (
c859d78) - ios: never give the background task back while the store lock is held (
4513117)
Other
- android: a busy or failing core session is retried, not read as signed out (
4277821)
Full changelog: v0.14.0...v0.14.1
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.14.1/reins-desktop-0.14.1-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.14.1-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.14.1-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.14.1_amd64.deb (arm64) and reins-0.14.1-1.x86_64.rpm (aarch64), plus
reins-app_0.14.1_amd64.deb and reins-app-0.14.1-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.14.1_amd64.deb, sudo dnf install ./reins-0.14.1-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.14.1"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.14.1/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.14.1or the Linux binary with SQLite, reins-server-0.14.1-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.14.1-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.14.1/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMSReins v0.14.0
Features
- Bypass header folds into a compact bar on scroll; nothing hides under the tab bar (
f272229)
Fixes
- Trust's mood line says what a running bypass or Overnight did today (
78f7c21) - ios: the running field reaches compact when its fold range is fractional; the list test counts what the demo decided (
a5d07e5) - ios: the compact bar's button never measures under 44 pt (
299ef6a) - ios: the field's sentence fades out by a third of the fold, before Stop crosses it (
ef07241)
Other
- test(ios): the fold's state is the running field's value; running-mode tests wait for the field (
4d3fb35) - test(ios): a tap proves the compact bar's button; an opened list is checked by its rows (
ccc511e) - test(ios): measure Add MCP server by its button, not its cell (
9f8c03d)
Full changelog: v0.13.1...v0.14.0
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.14.0/reins-desktop-0.14.0-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.14.0-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.14.0-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.14.0_amd64.deb (arm64) and reins-0.14.0-1.x86_64.rpm (aarch64), plus
reins-app_0.14.0_amd64.deb and reins-app-0.14.0-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.14.0_amd64.deb, sudo dnf install ./reins-0.14.0-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.14.0"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.14.0/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.14.0or the Linux binary with SQLite, reins-server-0.14.0-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.14.0-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.14.0/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMSReins v0.13.1
Other
- ci: shorten the slow Rust tests and gate desktop jobs on their own paths (
e759b52) - ci: run the Rust tests from one archive on two runners (
d36decb) - ci: keep the Rust tests in one Nextest job (
fa79c3e) - ci(release): build iOS with the other builds, upload after publication (
5a87bd6) - ci: draw 2,000 grant-soundness cases on the weekly run (
7cef85f) - ci(release): upload the signed archive with xcodebuild -exportArchive (
8ad74c0)
Full changelog: v0.13.0...v0.13.1
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.13.1/reins-desktop-0.13.1-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.13.1-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.13.1-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.13.1_amd64.deb (arm64) and reins-0.13.1-1.x86_64.rpm (aarch64), plus
reins-app_0.13.1_amd64.deb and reins-app-0.13.1-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.13.1_amd64.deb, sudo dnf install ./reins-0.13.1-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.13.1"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.13.1/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.13.1or the Linux binary with SQLite, reins-server-0.13.1-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.13.1-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.13.1/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMSReins v0.13.0
Features
Fixes
- core: bind the recovery wrap to the roster; refuse replayed handover requests (
7aadc71) - core: a phone that does not decide answers nothing (
58eaf18) - core: phone roles security review: enrollment order, commits, resets, gates (
1f00757) - server,core: recovery proofs count per device and per account; viewers deny no handover (
08eee2f) - core: purchases pay only on a confirmed primary; a refused recovery keeps nothing (
d09e755) - core: op-log review: replaced primaries, checkpoints, reordering, forgetting (
ecf949c) - core: only the current primary grants view keys or proves a fork (
a4a3941) - core,server: primary_counter bounded by what was seen; Activity entries keyed by their op (
74d3bb2)
Full changelog: v0.12.0...v0.13.0
Install
New to Reins? Start with the quick start.
Desktop app (reins): pick the archive for your computer: x86_64-unknown-linux-musl or
aarch64-unknown-linux-musl (Linux, static), aarch64-apple-darwin (Apple silicon Mac),
x86_64-apple-darwin (Intel Mac), or the .zip with reins.exe for Windows: x86_64-pc-windows-msvc
(aarch64-pc-windows-msvc for Arm, when it is listed).
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.13.0/reins-desktop-0.13.0-x86_64-unknown-linux-musl.tar.gz
tar xzf reins-desktop-0.13.0-x86_64-unknown-linux-musl.tar.gz
install -m 755 reins-desktop-0.13.0-x86_64-unknown-linux-musl/reins ~/.local/bin/reins
reins --versionOn macOS, a binary downloaded with a browser is quarantined; curl downloads are not (or run
xattr -d com.apple.quarantine reins).
Linux packages: reins_0.13.0_amd64.deb (arm64) and reins-0.13.0-1.x86_64.rpm (aarch64), plus
reins-app_0.13.0_amd64.deb and reins-app-0.13.0-1.x86_64.rpm for the desktop app
(sudo apt install ./reins_0.13.0_amd64.deb, sudo dnf install ./reins-0.13.0-1.x86_64.rpm). The signed APT
and RPM repositories bring updates with the system's:
Linux packages. On Arch Linux:
curl -fsSL https://reins2fa.com/install.sh | sh.
On Windows (PowerShell), the install script downloads this release's zip, checks it against SHA256SUMS and puts
reins.exe on your PATH:
$env:REINS_VERSION = "v0.13.0"; irm https://raw.githubusercontent.com/katulevskiy/reins/v0.13.0/scripts/install.ps1 | iexServer (self-hosting guide): the Docker image (linux/amd64 and
linux/arm64, with the web vault)
docker pull ghcr.io/katulevskiy/reins-server:0.13.0or the Linux binary with SQLite, reins-server-0.13.0-x86_64-unknown-linux-gnu.tar.gz (no web vault; see the guide).
Android: download reins-0.13.0-android.apk on the phone and open it (Android asks you to allow installs from your browser once).
Verify a download against SHA256SUMS:
curl -fsSLO https://github.com/katulevskiy/reins/releases/download/v0.13.0/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMS