Get started
Install crofty, then hand it to your AI agent. That’s the whole setup — crofty is built to be run by your assistant, not memorised by you.
Before you begin
- Homebrew (macOS), Scoop (Windows), or a .deb/.rpm (Linux) — to install crofty
- a host — Cloudflare (a free account, the default) or your own server over SFTP/FTPS; set it up when you publish, not now
- a domain — optional; preview and publish work without one
1. Install
macOS (Homebrew):
brew install ShiroDoromoto/crofty/crofty
Windows (Scoop):
scoop bucket add crofty https://github.com/ShiroDoromoto/scoop-crofty
scoop install crofty
Linux (.deb / .rpm) — grab the package for your CPU from the latest release, then install it:
sudo dpkg -i crofty_*_linux_amd64.deb # Debian/Ubuntu (or _arm64)
sudo rpm -i crofty_*_linux_amd64.rpm # Fedora/RHEL/openSUSE
2. Hand it to your agent
Start your AI assistant in your terminal and just ask:
run crofty agent
That prints crofty’s whole command surface for your agent to read. It opens by asking what you’re making — a blog, or a wider site (a blog plus pages like about, gallery, shop, contact) — then drives the rest with you: creating the project, previewing it, publishing to your own host, and handing you a summary and link to share.
One moment is yours alone: when it’s time to publish, crofty asks for your host credentials right in the terminal — a Cloudflare API token, or your server’s password or key. You paste it there — it goes to your system keychain, never through your assistant and never to us.
That’s the whole flow. Everything below your agent already knows from crofty agent — it’s here only if you’d like to see what it’s doing, or drive crofty by hand.
The full command flow, step by step
You never need to run these yourself — your agent does. They’re the steps crofty agent walks through.
Create your site — from scratch, or in an existing folder you keep in Git. crofty deploys to Cloudflare by default; pass --provider sftp or ftps to publish to your own server instead:
crofty init # new project under ~/Documents/Crofty/
crofty init . # or set up in place, leaving your layout as-is
crofty init --provider sftp --host example.com --user me --path /var/www/site
See it, then publish to your own host:
crofty preview # open it locally — no account yet
crofty connect # save your deploy credentials to your keychain
crofty deploy # publish to your host — Cloudflare Pages, or your SFTP/FTPS server
crofty share # print a summary + link to paste anywhere
Drafts & scheduling — standard Hugo, nothing crofty-specific: draft: true keeps a page out of the build; a future date holds it until then. crofty build lists what it left out.
Make it yours:
crofty theme set quiet-paper # or: terminal, serif (default)
crofty theme eject # take the design tokens to tweak by hand
crofty features # everything crofty can do, and how to turn each on
crofty add mermaid # turn one on; also: abc, highlight, raw-html, analytics
Want reader support? Add a Stripe / GitHub Sponsors / Ko-fi link under support in data/profile.yml — it shows in your footer, and the money never routes through crofty.
Updating
crofty updates the way you installed it:
brew upgrade crofty # macOS
scoop update crofty # Windows
sudo dpkg -i crofty_*_linux_amd64.deb # Linux: install the newer .deb (or rpm -i the .rpm)
Your content is plain Markdown and the theme is a frozen output contract, so an
update never rewrites what you’ve written — and crofty doctor still checks the
built site. New abilities show up in crofty agent, so your assistant picks them
up on its next read; nothing to relearn.
Changed your mind?
No lock-in, ever. Your content is plain Markdown and the build is an ordinary Hugo site you can keep and run without crofty. More on leaving →