Repository navigation
Releases
1.3.1
1.3.0
1.2.0
Theourgia 1.0.0
Theourgia 1.0.0 is the first release: a block-graph knowledge base shared by agents and people, with a command-line client, a daemon, an MCP server, and a VS Code extension.
Platforms
- macOS on Apple silicon (arm64)
- Linux on x86_64 and aarch64, with glibc
On any other platform the programs refuse at start with (error platform-unmeasured ...) and exit 75 rather than run on another platform's numbers. See "Platforms" in the README.
Requirements
Chez Scheme 10.1.0, 10.3.0, 10.4.0 or 10.4.1, libuv, and igropyr. On Homebrew the Chez binary is chez, not scheme.
Installing
Homebrew (macOS and Linux):
brew install guenchi/theourgia/theourgia
This installs theourgia, theourgia-mcp and theourgiad. To build from source instead, follow "Installing" in the README.
VS Code extension
The extension is on the Visual Studio Marketplace under the name Theourgos (theourgia.theourgos). The packages attached below install it directly:
code --install-extension theourgos-darwin-arm64-1.0.0.vsix
Install Theourgia itself first; the extension runs its programs, which the settings theourgia.corePath, theourgia.libDirs and theourgia.scheme point to.
Known limits
- FreeBSD is not supported yet. FreeBSD 15 on amd64 has a measured platform row, but the daemon cannot read its own environment reliably there. Expected in a later release.
- Intel Macs are not supported. macOS on x86_64, including Rosetta, is refused at start.
- Long requests past 30 seconds. The client waits 30 seconds for an answer. A larger request, such as
import-mdof a big directory, answerstransport-unknownwhile the daemon goes on and finishes it. Import large trees file by file, or check the store afterwards. - Write latency grows with the store. Measured on a fresh store with one writer: about 0.13 s per insert at 100 events and 0.27 s at 3000, growing roughly 0.05 s per thousand events.
- Drafts on datum blocks and
eval --working. A draft on a datum-mode block makeseval --workingfail for the whole library with a generic exception. supplyworks on text-mode code blocks only. On a datum-mode library it answerssupply-stale, which is misleading; datum-mode Scheme libraries resolve their names through the store itself (eval --under).- Some refusals are terse.
evalargument refusals do not name the option at fault; anevaloutput-limit answer can carry slightly more text than the limit; thesupplycatalogue describes its header inaccurately. - No npm package yet. The
theourgianame on npm is a placeholder.