Skip to main content
seiso logo

seiso

A Markdown convention and linter for project docs written by AI and read by humans and agents.

CI crates.io PyPI npm License CodeRabbit Reviews Ask DeepWiki

AI writes project docs faster than anyone can review them, and coding agents read those docs back as context for the next change. People and agents alike take the page at its word, so a stale version number or a field list updated in only one of its three copies misleads all of them. And AI makes the same few mistakes over and over.

seiso defines one convention for how Markdown in a repository is organized, the way rustfmt settled formatting for Rust code. Projects share the rules instead of negotiating their own; each project mainly maps its documents to kinds, and seiso init suggests a starting point.

The convention

  • Every document declares one kind, such as howto, reference, or adr, and holds only what that kind is for. A how-to gives the steps. Why the design looks this way belongs in an ADR.
  • Each fact has one home. Other pages link to it instead of retelling it.
  • Long-lived pages don't record values that change faster than the page, such as versions, deployment status, or counts.
  • A pointer names a file or symbol, so the reader doesn't have to search for what the sentence promised.
  • The finished page doesn't address whoever asked for it or narrate how it was made.
  • Judgment calls a tool can't make are written down with a reason. An exception without one is itself a violation.

seiso's rules check documents against this convention; stable rules run by default, and the rest are opt-in previews. Each diagnostic says where the problem is and how to fix it, so an agent can repair most findings from seiso's output alone. When a fix needs a judgment, such as which of two pages owns a fact, the diagnostic names the decision. seiso doesn't guess whether prose sounds machine-written, and it leaves formatting and spelling to other tools. The convention defines each kind's contract and the evidence a diagnostic can claim.

Install

cargo install seiso
uv tool install seiso    # or: pipx install seiso
npm install -g @scarletkc/seiso

The PyPI and npm packages include prebuilt binaries for macOS on Apple silicon and Intel, Linux x64 and arm64 with glibc, and Windows x64. On other platforms, including musl-based Linux such as Alpine, use cargo; the PyPI package also works there but builds from source, which requires a Rust toolchain. From a source checkout, run cargo run -- <command>.

Quick start

From the repository root:

seiso init
seiso check

seiso init writes a seiso.toml at the repository root with suggested exclusions and kind mappings; review them before relying on the results.

seiso check runs only stable rules, which have met the promotion criteria. The other rules are in preview: they are experimental, can report false positives, and run only with --preview. Try them locally before relying on them, and keep them out of CI gates. seiso rule --all lists every rule with its status, seiso rule <CODE> explains a rule with examples, and seiso parse inspects the document model without running rules.

Documentation

License

seiso is licensed under MIT.

Metadata

Release files for seiso 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for seiso 0.2.0
File Size Uploaded
seiso-0.2.0.tar.gz 106.3 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for seiso 0.2.0
File
seiso-0.2.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
seiso-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
seiso-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
seiso-0.2.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
seiso-0.2.0-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details

Total release size: 11.5 MB

Release files / seiso-0.2.0.tar.gz

Download URL seiso-0.2.0.tar.gz
Size 106.3 kB
Tags Source
SHA-256 checksum
How to use checksums
94891476a0034db74dacdbd0f7d2924771dd2a19810f1a6a4a3c16d4c13b5ba5
BLAKE2b-256 checksum
How to use checksums
3a87a1531177ed3047f2e63facb0977b47d4033eada15bac66e7018d71532cd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release files / seiso-0.2.0-py3-none-win_amd64.whl

Download URL seiso-0.2.0-py3-none-win_amd64.whl
Size 2.3 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
972b734ce9ac6f728af71d68ee264718df66fe7b22274521d4f204ab49ad1e31
BLAKE2b-256 checksum
How to use checksums
fa5803f3a67b7385e5c39feaaa01b91902b91d7d84a3702ca071c0e754e1f449
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release files / seiso-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL seiso-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.4 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
08c8c3dd3a3f495c1617e021ac4560df5803897222897c813c73fa452d244b1d
BLAKE2b-256 checksum
How to use checksums
e4b135b23ea87468d4bbdd1e7e6110839e3660eea911396d104543f84938ab02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release files / seiso-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL seiso-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 2.3 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
44aa7757892f4b937429249dcf733ec01398ebab355b3ea690171f15163e3a34
BLAKE2b-256 checksum
How to use checksums
9a68359c830ae02d4b8abf8059d34380592bf6ab6c56c43f06e5e8634c33cfd0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release files / seiso-0.2.0-py3-none-macosx_11_0_arm64.whl

Download URL seiso-0.2.0-py3-none-macosx_11_0_arm64.whl
Size 2.2 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b48cd4bb3cd92d462fa6c6a904f900e9f23bafb6982d543f76c39fdbe060ed00
BLAKE2b-256 checksum
How to use checksums
0a53bc0d9f5d2f762a2a517c4fbc386542e9127826f180931e8b1ddf2087d163
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release files / seiso-0.2.0-py3-none-macosx_10_12_x86_64.whl

Download URL seiso-0.2.0-py3-none-macosx_10_12_x86_64.whl
Size 2.3 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
69a644d2230a0658f42ed034d74c92c3e3ca9168d948c2fed6e1ba6aadb42b90
BLAKE2b-256 checksum
How to use checksums
4ebe90efbd4c08f960f7fc4b9a70d63b6e8d764faaec92867edfdb053cdcf14d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.0

9 release files

0.3.0

9 release files

This release

0.2.0 This release

6 release files

0.1.0

3 release files

0.0.0

3 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page