Skip to content
Merged
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
33 changes: 31 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# writ
<div align="center">

[![CI](https://github.com/Laaaaksh/writ/actions/workflows/ci.yml/badge.svg)](https://github.com/Laaaaksh/writ/actions/workflows/ci.yml)
<img src="docs/assets/writ-banner.svg" alt="writ" width="640">

**writ** — why read the whole diff when only the drift matters?

Today an agent writes code, opens a PR, and a human reads a large diff to decide whether to
merge. That does not scale: the diff is too big to read and arrives stripped of the context
Expand All @@ -16,6 +18,23 @@ green verification, merges with no human at all.
A writ that declares its scope as the whole repository makes drift meaningless, so writ
refuses to accept one - at intake and again before any status or merge decision.

[![Star this repo](https://img.shields.io/github/stars/Laaaaksh/writ?style=for-the-badge&logo=github&label=star%20this%20repo&color=yellow)](https://github.com/Laaaaksh/writ/stargazers)
[![Built for agent workflows](https://img.shields.io/badge/built_for-agent_workflows-8957e5?style=for-the-badge&logo=githubactions&logoColor=white)](#the-loop-propose---approve---implement---attest---merge)

[![CI](https://github.com/Laaaaksh/writ/actions/workflows/ci.yml/badge.svg)](https://github.com/Laaaaksh/writ/actions/workflows/ci.yml)
[![CodeQL](https://github.com/Laaaaksh/writ/actions/workflows/codeql.yml/badge.svg)](https://github.com/Laaaaksh/writ/actions/workflows/codeql.yml)
[![Release](https://img.shields.io/github/v/release/Laaaaksh/writ?color=green&display_name=tag)](https://github.com/Laaaaksh/writ/releases)
[![License: MIT](https://img.shields.io/badge/license-MIT-purple.svg)](LICENSE)
[![Go](https://img.shields.io/badge/go-1.26+-00ADD8?logo=go&logoColor=white)](go.mod)
[![Platform](https://img.shields.io/badge/platform-macOS%20%E2%80%A2%20Linux-lightgrey)](#install)
[![Homebrew](https://img.shields.io/badge/brew-laaaaksh%2Fwrit-orange?logo=homebrew)](#install)

**[Install](#install) • [The loop](#the-loop-propose---approve---implement---attest---merge) • [Completions](#shell-completions) • [Exit codes](#exit-codes) • [Contributing](CONTRIBUTING.md) • [License](LICENSE)**

**[Code of conduct](CODE_OF_CONDUCT.md) • [Contributing](CONTRIBUTING.md) • [License](LICENSE) • [Security](SECURITY.md)**

</div>

## Install

```
Expand Down Expand Up @@ -141,3 +160,13 @@ For scripting and agents, `writ` signals its decision on the process exit code:
Output stays script-friendly: ANSI color appears only when stdout is a terminal,
and setting `NO_COLOR` (to any non-empty value) turns it off even then, so piped
or captured output is always plain text.

## Star this repo

If `writ` makes reviewing agent PRs tractable, [leave a star](https://github.com/Laaaaksh/writ/stargazers) - it helps other people find it.

[![Star History Chart](https://api.star-history.com/svg?repos=Laaaaksh/writ&type=Date)](https://star-history.com/#Laaaaksh/writ&Date)

## License

MIT - see [LICENSE](LICENSE).
105 changes: 105 additions & 0 deletions docs/assets/writ-banner.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.