A hollow rhombicuboctahedron, drawn by Leonardo da Vinci for Luca Pacioli in 1509
PACIOLI

Keep the books
on what you know.

A memory palace on your own machine, built from everything you add. Every fact dated and sourced, nothing ever erased.

Open source, MIT License
Feeding it

Drop in whatever lands on your desk.

Contracts, letters, meeting notes, emails, reports, spreadsheets. Put them in the inbox folder and say “take this in”. The agent reads each one, keeps what matters and files it on the right pages with the date and the source.

  • A folderDrag files into inbox/pending in Finder or Explorer. PDFs, Word documents, saved emails, notes and spreadsheets all work.
  • The chatDrag a file into the terminal window or paste the text, and say “take this in”.
  • Your sourcesConnect the agent to your mail, calendar, drives or any API through MCP servers, and ask it to go through the week and take in what matters.
A letter from a landlord is dropped into the inbox, and the library page for the lease updates itself with the new rent, keeping the old one

How it works

Double-entry bookkeeping for what you know.

Italian merchants were keeping their books this way by around 1300. Every entry is written twice, and the two sides must agree. Pacioli keeps knowledge with the same discipline, so you can stop carrying it all in your head.

Pacioli builds on Andrej Karpathy’s LLM Wiki pattern and adds the bookkeeping that keeps it true over years, with a trial balance between journal and pages, corrections that keep the old value, and checks that run without a model.

01

The journal

Every change goes into an append-only log, with the date it arrived and the reason.

02

The accounts

Each fact also lives on the page for its case, project or person, reconciled against what was already known.

03

The balance

A plain check proves that journal and pages agree. Anything missing shows up as out of balance.

04

The correction

Facts are never overwritten. The old value keeps its date, so you can still say what was true on any given date.


The loop

Better with every document.

Every document you add is read and reconciled with what you already know. Start the loop and it keeps the books in order while you work. It makes additive changes and commits them. Anything that would remove information waits for your approval.


Yours

On your own machine, with the agent you choose.

The library is a folder of plain Markdown files on your computer, with its history in git. There is no server and no account. The only part that reaches outside is the agent, which sends the pages a task needs to the model it runs on.

  • FilesPlain Markdown with dates and sources. Any text editor reads them, and the folder works as an Obsidian vault.
  • AgentWritten for Claude Code. Other agents can run it if their model can follow long procedures, including a model you host yourself.
  • ChecksPlain Python with no dependencies. They run locally and never call a model.
  • RolesOne library for work across several roles, each with its own view.

Set up

Up and running in five steps.

Everything happens in a terminal, the window where you type commands to your computer. It takes about fifteen minutes, and you only do it once. Pacioli is tested on Mac and Linux.

  1. 1

    Open a terminal

    Every computer has one built in. On a Mac it is called Terminal. Press Cmd and Space and type Terminal to find it. On Windows, install WSL first and run every step inside it. If you want a nicer terminal, these are free.

  2. 2

    Check git and Python

    Pacioli needs git and Python 3.9 or later. Paste the two lines and press Return. If both print a version number, you are ready. On a Mac, a window may offer to install the developer tools. Say yes and run the lines again.

    terminal
    git --version
    python3 --version
  3. 3

    Install your agent

    The agent is the clerk that reads and posts. Pacioli is written for Claude Code, which needs a paid Claude plan or an Anthropic API account. Other agents that can edit files and run commands can run it too, if their model is strong enough to follow long procedures.

    terminal · Mac and Linux
    curl -fsSL https://claude.ai/install.sh | bash
  4. 4

    Get the library

    This makes a folder called my-books in your home folder, cuts the link back to GitHub so your books stay on your machine, and runs the self-test. The last line should read ALL PASSED.

    terminal
    cd ~
    git clone https://github.com/th84r/pacioli.git my-books
    cd my-books
    # your books stay on this machine
    git remote remove origin
    python3 .claude/scripts/selftest.py
  5. 5

    Start the conversation

    Start the agent inside the folder. The first time, it asks you to log in and to trust the folder. Then ask it to set things up. It asks you nine questions about your work and shapes the library to fit. From then on you drop files into inbox/pending, say “take this in”, and ask for what you want in plain words.

    terminal · inside my-books
    claude
    you
    set this up for me
    agent
    Nine questions about your work. First, in two or three sentences, what do you do and who do you do it for?

The name

Luca Pacioli, 1494.

Portrait of Luca Pacioli with a glass polyhedron hanging beside him

A Franciscan friar who taught mathematics and wrote the first printed description of double-entry bookkeeping, in his Summa of 1494.

In his portrait a glass rhombicuboctahedron hangs, half full of water. It is the mark of this project.Portrait attributed to Jacopo de’ Barbari, 1495. Public domain.

An engraved theatre of memory, a courtyard with doors, windows and marked places on the floor
Robert Fludd, theatre of memory, from Utriusque cosmi historia, 1621. Wellcome Collection, CC BY 4.0.

A memory palace, kept like a ledger.

Renaissance Europe had two ways of keeping what you know. The ledger, where every entry is dated and must balance. The memory palace, a building you walk through in your mind, with something to remember in every place. Pacioli builds the palace from your documents and keeps its books.