Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Blokjutsu icon

Blokjutsu

A local, permissively licensed, open-source Mac app for generating and editing images from text prompts with the open-weight MOSS-Image model.

  • Local. The model runs locally on your Mac. Prompts and images never leave your machine.
  • Permissive open source (Apache 2.0). The app, MOSS-Image's code, and MOSS-Image's model weights are all under the Apache License 2.0. Use them for anything, commercial or not, and change and share them, with no restrictions on what you make.
  • Download once. The image model (about 30 GB) and the optional captioning model (2 GB) are downloaded once, when you ask. After that, everyday use doesn't go online at all.

Simple on purpose: a small set of controls designed to work together and to be quick to learn.

Download for Mac

Using Blokjutsu? Start with the User's Guide: installing, a tour of the window, writing prompts, and every control explained.

The Blokjutsu window: controls on the left; on the right, an image of three bowls of ice cream on a diner counter with handwritten cards reading CHOCOLATE, CHERRY, and PLAIN

What Blokjutsu does

  • Text to image, image to image, variations, inpainting, outpainting, cropping, and upscaling
  • Describe image and Enhance prompt, written by MOSS-Image's own text encoder
  • Live previews, a scrolling history, and each image's settings saved beside it

Open source all the way down

With Blokjutsu, the model, the code that runs it, and the app around it are all yours to run, keep, and adapt.

Every part of Blokjutsu is released under the Apache License 2.0, a permissive open-source license:

  • Blokjutsu's source code, in this repository
  • MOSS-Image's code, the pipeline that turns a prompt into an image
  • MOSS-Image's model weights, including the Qwen3.5-9B text encoder and FLUX.2 image decoder they contain

Apache 2.0 lets anyone use, study, change, and share all of it, for any purpose, commercial or not, at no cost, and with no sign-up. The conditions are light: keep the license and copyright notices, and say what you changed. It also grants the patent rights needed to use the code. The libraries Blokjutsu builds on are open source too (see What it uses).

Requirements

  • A Mac with Apple silicon (M1 or later) and macOS 12.3 or later
  • 32 GB of memory or more; 48 GB or more is comfortable, and smaller Macs work slowly, if at all
  • About 40 GB of free disk space, mostly for the model

Install

Mac users: download the disk image with the Download for Mac button at the top (1.0.0rc2, 375 MB), open it, and drag Blokjutsu to Applications. Or install from Terminal by pasting

curl -LsSf https://formdo.github.io/blokjutsu/install.sh | sh

This installs Python and Blokjutsu into ~/Library/Application Support/Blokjutsu.noindex/ and puts Blokjutsu in your Applications folder. Nothing else on your Mac is changed. See the User's Guide for details and uninstalling.

Python developers: Blokjutsu needs Python 3.10 or later. We strongly suggest installing it in its own virtual environment. The exact library versions it was tested with are in constraints.txt, which pip can use with -c constraints.txt.

python3 -m venv .venv
source .venv/bin/activate
pip install blokjutsu
blokjutsu

Built on MOSS-Image

Blokjutsu is an independent desktop front end for MOSS-Image, the text-to-image model and pipeline by the OpenMOSS Team and MOSI.AI. Blokjutsu is not affiliated with or endorsed by them. All of the image-making is theirs.

If you use images or results from Blokjutsu in research, please cite MOSS-Image:

@misc{mossimage2026,
  title        = {MOSS-Image},
  author       = {{OpenMOSS Team}},
  year         = {2026},
  howpublished = {\url{https://github.com/OpenMOSS/MOSS-Image}}
}
@misc{mossimage2026report,
  title         = {MOSS-Image Technical Report},
  author        = {{MOSI.AI}},
  year          = {2026},
  eprint        = {2610.23374},
  archivePrefix = {arXiv},
  url           = {https://arxiv.org/abs/2610.23374}
}

What it uses

The models are downloaded from Hugging Face, a site that hosts open AI models, and only when you ask. MOSS-Image's model is published there as MOSS-Image-SFT; its text encoder and image decoder come from Qwen and FLUX.2 and are included in that download.

model by license role
MOSS-Image-SFT OpenMOSS Team Apache-2.0 MOSS-Image's model, used by default
MOSS-Image-Base OpenMOSS Team Apache-2.0 the untuned model, for people training their own versions (optional)
Qwen3.5-9B Qwen Team, Alibaba Cloud Apache-2.0 reads prompts (part of MOSS-Image); with its output layer, downloaded separately, writes descriptions
FLUX.2 VAE Black Forest Labs Apache-2.0 turns the model's output into pixels (part of MOSS-Image)

Python libraries, installed alongside:

library license role
PyTorch, torchvision BSD-3-Clause numerical engine on the Apple GPU
Diffusers Apache-2.0 runs the MOSS-Image pipeline
Transformers, Accelerate Apache-2.0 text encoder, describing
huggingface_hub, safetensors Apache-2.0 model files and downloads
httpx BSD-3-Clause the confirmed downloads
PySide6 / Qt LGPL-3.0 the window and controls
Pillow MIT-CMU image files
NumPy BSD-3-Clause arrays
PyObjC MIT macOS system icons and app name

Local by design

Blokjutsu runs the model on your Mac's own processor and memory. It uses the internet only once to initially download the models, and then, only after a confirmation dialog. After the models are downloaded once, Blokjutsu works completely offline. It does not go online to generate, edit, or store images. It does not go online to check for updates to itself.

Images are saved as plain PNG files that hold only the image. If you want, a setting in Advanced options also writes each image's prompt and settings into the PNG.

What Blokjutsu keeps on your Mac

what where Delete all history
your images, each with its settings and any image you started from the Output folder you choose (by default ~/Library/Application Support/Blokjutsu.noindex/images/) deleted, in every Output folder used
the log, for troubleshooting ~/Library/Application Support/Blokjutsu.noindex/logs/ emptied
working copies from Select area to change …/Blokjutsu.noindex/work/ deleted
a small file the live preview needs, built from your images …/Blokjutsu.noindex/preview/ deleted
your settings, including the last prompt …/Blokjutsu.noindex/settings.json prompt reset, preferences kept
the captioning model …/Blokjutsu.noindex/caption/ kept
the image model …/Blokjutsu.noindex/models/ kept
the app and the Python it runs on ~/Applications/Blokjutsu.app, …/Blokjutsu.noindex/tools/, and …/Blokjutsu.noindex/runtime/ kept

The whole …/Blokjutsu.noindex folder is kept out of Time Machine backups and Spotlight. To back up your images, choose an Output folder elsewhere, such as ~/Pictures/Blokjutsu.

Delete all history (in the File menu) removes everything made from your prompts and images and keeps your preferences and the models. The User's Guide has the details, including what macOS itself remembers.

Contributing

CONTRIBUTING.md explains how to set up a development environment, run the tests, and build the Mac app. Architecture and technical notes are in the developer pages.

Roadmap

What comes next is in ROADMAP.md.

Bug reports and feature requests

Please report bugs and request features as GitHub issues. For help using Blokjutsu, see the User's Guide and its Troubleshooting page.

Etymology

Blokjutsu (BLOK-joot-soo, /ˈblɒk.dʒuː.tsuː/), noun. The art of the block.

From Danish blok, "block," and Japanese jutsu (術, じゅつ), "art" or "technique." The name comes from how MOSS-Image works: it treats an image as blocks of pixels, each 16 × 16 square one unit for the model, and transforms them step by step from noise into the finished image.

Design inspiration

The block designs in the icon and the app draw on

  • the Kohs block design test, introduced by Samuel C. Kohs in 1920: colored cubes, some faces split diagonally, arranged to match a pattern
  • Froebel's gifts, the wooden building blocks of Friedrich Fröbel's first kindergartens
  • the primary colors and simple geometry of the Bauhaus

Authors

Blokjutsu was written by Bob Carpenter together with Claude, Anthropic's AI model.

License

Copyright 2026 Bob Carpenter. Apache License 2.0; see LICENSE and NOTICE. blokjutsu/moss_image.py is MOSS-Image's pipeline code, copied unchanged, and blokjutsu/moss_forward.py is adapted from it (both Apache-2.0). "MOSS-Image" is the OpenMOSS Team's name and is used here only to say what this app runs.

Metadata

Release files for blokjutsu 1.0.0rc2

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

Source distribution (sdist)

Source distribution for blokjutsu 1.0.0rc2
File Size Uploaded Provenance Actions
blokjutsu-1.0.0rc2.tar.gz 147.0 kB With provenance Details for blokjutsu-1.0.0rc2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for blokjutsu 1.0.0rc2
File Interpreter ABI Platform Actions
blokjutsu-1.0.0rc2-py3-none-any.whl Python 3 none any Details for blokjutsu-1.0.0rc2-py3-none-any.whl

Total release size: 296.2 kB

Release files / blokjutsu-1.0.0rc2.tar.gz

Download URL blokjutsu-1.0.0rc2.tar.gz
Size 147.0 kB
Tags Source
SHA-256 checksum
How to use checksums
81911c67fd35e215df0b5e738db029e89eb2bbd303ef5f85bfea296798b3e968
BLAKE2b-256 checksum
How to use checksums
757cf8435bdbc462ea862293129c19a3c1afa68b293b2eefbd66bccb848b0ef6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 6, 2026.

Transparency log

Release files / blokjutsu-1.0.0rc2-py3-none-any.whl

Download URL blokjutsu-1.0.0rc2-py3-none-any.whl
Size 149.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
333432e94fc81586b7e5342ea04f8cee88af5cb4d268d41bb8537d44026ecabb
BLAKE2b-256 checksum
How to use checksums
ab6c6d2ec21ab67d8504cb9d36d607651e536e65de9fc9975757d74439c21cc1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 6, 2026.

Transparency log

Security for blokjutsu 1.0.0rc2

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.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for blokjutsu-1.0.0rc2.tar.gz

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 Nov 6, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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