Repository navigation
Releases: lictor-ai/stele
Release list
v1.0.0
Changelog
- b06b76f: ADR-0008: remove backstop; --remind and --check replace it (#71) (#76) (@nacer-noubir)
- 3d0d057: Agent adapter interface: everything Claude Code-specific in one package (ADR-0009) (#86) (@nacer-noubir)
- 6368d1d: CI: pin the actions and goreleaser, keep tokens from pull requests (#94) (@nacer-noubir)
- 843acc4: Compile: a pulled stele.lock makes the index stale (#95) (@nacer-noubir)
- 621a79a: Enforce: read stele.json with a BOM, bounded, regular files only (#92) (@nacer-noubir)
- f9f89f8: Functional tests and the agent eval, with their results in the README (#77) (@nacer-noubir)
- 9fb9ede: Publish, check: refuse git inside the project and drop such PATH entries (#91) (@nacer-noubir)
- 90dc05f: Publish: ignore fork merge requests on GitLab (#90) (@nacer-noubir)
- c413a82: README: group the limits, with a summary table (#85) (@nacer-noubir)
- 5084cc0: README: header, quick start, how it works, results up front (#81) (@nacer-noubir)
- 6fe5947: README: real stele publish output from a run against GitHub (#82) (@nacer-noubir)
- 620590c: README: stele publish is untested on gitlab.com; CLAUDE.md lists ADR-0009 (#88) (@nacer-noubir)
- b37303d: Release binaries: GitHub Releases, Homebrew tap, Scoop bucket (#87) (@nacer-noubir)
- b4e15ba: Safefile: Create works on disks with no hard links (#93) (@nacer-noubir)
- 8962d82: Session text: Bash is fine for reading, only writes go through Write and Edit (#74) (@nacer-noubir)
- 55d420a: Shell parser: arrays, subshell function bodies, cp globs, Git Bash paths, time -p (#89) (@nacer-noubir)
- ee4af71: Spec and ADR-0006: switch the write hooks on and off with stele init (#71) (#72) (@nacer-noubir)
- 2a08972: Spec: name the hook switches --remind and --check (#71) (#75) (@nacer-noubir)
- a767b3d: Spec: stele publish sends stele.md to a git repository as a merge request (#73) (@nacer-noubir)
- 389ddb1: Tests: copyDir skips files git maintenance removes mid-walk (#83) (@nacer-noubir)
- a67ec16: stele init --remind and --check; remove backstop (#71) (#78) (@nacer-noubir)
- 428166c: stele publish: send stele.md to a git repository as a merge request (#79) (#80) (@nacer-noubir)
v1.0.0-dev.2
Third development release of stele v1: the rules reach the agent at session start, so most writes are no longer denied.
- Rules loaded at launch (#69):
stele compilewrites.claude/rules/stele-rules.mdfromstele.md. Claude Code loads it at session start, like CLAUDE.md, with no size cap. Commit it withstele.mdandstele.lock. stele asks before an agent edits it, andstele checkfails when it is out of date. - Fewer denies (#70): at session start, stele records which rules the session loaded, and a write skips the deny for those rules while their text is unchanged. A changed or new rule is still shown before the write. General-purpose subagents get the same; Explore and Plan subagents, which don't load the file, keep the deny.
- ADR-0005, spec D62.
Upgrading: after installing this version, run stele compile and commit .claude/rules/stele-rules.md; until then stele check fails with "out of date". Re-run stele init too.
Install: go install github.com/lictor-ai/stele/cmd/stele@v1.0.0-dev.2.
v1.0.0-dev.1
Second development release of stele v1. Fixes from testing v1.0.0-dev.0 with real agents.
- Bash writes: every session and subagent is told to write files only with Write and Edit. A Bash command that writes into a file with scoped rules is stopped once per turn and pointed to Write and Edit (#50, #57).
- stele can't be switched off quietly: a write to
stele.md,stele.json,stele.lock,.stele/or the Claude Code settings that run stele's hooks asks the user first.stele check --baselists changed rule files (#52, #56). - Retries: a retry of the file just denied goes through; parallel writes are still denied once. A clock moved back no longer causes a deny loop or a stuck lock (#51, #53).
- Invalid rules:
stele compileexits 1 on them; the hook warns once a session (#54). - Columns count characters; a leading BOM is ignored, so
^matches on line 1 (#55). - Long messages stay within Claude Code's limit; rules that don't fit are shown on the next write.
stele checkin a checkout with no rule files says there is nothing to check (#49).
Re-run stele init after upgrading: it adds the new hooks.
Install: go install github.com/lictor-ai/stele/cmd/stele@v1.0.0-dev.1.
v1.0.0-dev.0
First development release of stele v1: Claude Code follows the rules in your repository's stele.md.
- Before a write, the agent is shown the rules for that file (
scope), once per turn. - After a write, the lines it wrote are checked against
check: regexrules; a blocking violation is sent back to fix. - In CI,
stele check --base origin/<branch>checks changed files. stele init/stele uninstallset up and remove the Claude Code hooks.
Install: go install github.com/lictor-ai/stele/cmd/stele@v1.0.0-dev.0. Setup, CI and limits: README.
This is a pre-release: formats may still change before v1.0.0.