Make something worth keeping
Zett is a workspace for thinking with an AI, on your own computer. Start with a thought, a file, or the page you are reading; shape it into a card, an article, a slide deck, an image, or a paper; and keep the version you choose in a library that lives in a folder you own.
Quick start
You need Python 3.10 to 3.14, on macOS, Linux, or Windows. There is no Zett account to create.
uv tool install zettelekasten # or: pipx install zettelekasten
zett start # starts Zett in the background
zett status # checks that it is runningThe distribution is zettelekasten; the command it installs is zett. To run the same application from a checkout instead:
git clone https://github.com/Chang-LeHung/zettelekasten
cd zettelekasten
make install # builds the interface and installs the `zett` command
zett start- Open
http://127.0.0.1:6280. - In Settings → Provider, add the model you want Zett to use. Zett brings no model of its own; see AI providers.
- Choose Start a new session and try “Make a concise card about this idea: local-first beats sync for personal notes.”
- Review the card beside the chat, then choose Save to put it in your library.
zett stop stops Zett when you are done. To watch its logs while you try things, run zett start --foreground instead.
User guide
- ConversationsAsk, queue and steer messages, approve commands, and read what each turn did.
- Read from ChromeOpen Zett beside a webpage, ask about it, and save the result without leaving the page.
- Artifacts and the libraryCards, articles, images, slides, and LaTeX papers: drafts first, published when you save.
- AssetsReference files for one conversation, and a file library for all of them.
- Scheduled tasksHave Zett do the same job every morning, week, or month, with no browser open.
- ChannelsMessage Zett from WeChat on your phone, with photos, voice notes, and files.
- Settings and local dataConnect models, set limits, see your usage, and back up your folder.
- The command lineStart and stop Zett, add to the library from scripts, and let Claude Code, Codex, or ChatGPT save for you.
Developer guide
- PluginsHow a plugin is packaged, installed, and loaded.
- Agent pluginsGive Zett new tools, hooks, slash commands, and
@references. - Channel pluginsConnect another chat app through login, receive, and send.
- agim SDKThe small chat-platform SDK the WeChat plugin is built on.
- WeChat channel pluginA complete channel plugin to read alongside the guide.
A good first session
- Paste a paragraph or attach a file in a conversation.
- Ask for one concise card. Read it beside the chat, ask for changes, and save it when the wording is right.
- File it in a collection so you can find it later, and keep files you reuse in Static Assets.
- Do the same while you read: open Zett in Chrome.
Where your data lives
Your library, conversations, files, and settings live in ~/.zettelekasten/. Back up that folder to keep your workspace, or set ZETT_STORAGE_ROOT before zett start to keep it somewhere else. Messages you send to a model still go to the provider you chose, so don't send anything you would not want that provider to process.