Repository navigation
Releases
Cahut 1.3.0
Cahut 1.3.0 guides each person to a first AI, a first Window and a first share, made for a phone first, and lets people sign in with their e-mail address.
Upgrading from 1.2.0
1.3.0 is a minor release: under the default CAHUT_UPDATES=patch, the daily timer does not install it. Install it from the console of the server, under Updates, or:
sudo /usr/local/bin/cahut update- One migration of the database of each Cahut, 0038: the listing of the Cahut in the directory of connectors of Claude, empty until its administrators give it. As every update does, it takes a snapshot of the databases first, and rolls back if the health check fails.
- No MCP tool goes away, and no MCP tool comes:
set_listingsserves the administrators of the server, andget_cahutgives one more field,listings. - A Cahut that the directory of Claude lists gives its listing after the update, so that the first steps open it:
sudo -u cahut /usr/local/bin/cahut settings listing --domain <domain> --claude https://claude.ai/directory/<listing>Added
- First steps (#281, ADR 61). Once a person has chosen their first password, the console opens a guide at
/console/start, made for a phone first.- It asks which AI to connect: Claude, the app and claude.ai together, Mistral Vibe, ChatGPT, Claude Code or another MCP client, or none yet. Then it gives the steps of that AI alone, one action at a time, with the address to copy, a link to the page of the client, and its film. ChatGPT asks for the plan first, since only its Business, Enterprise and Edu plans publish. On a phone, Claude Code and ChatGPT come under On a computer.
- It sees the AI connect, then publish, and moves on by itself: requests to copy for a first Window, then the Window with its button Share.
- The overview shows a card that leads back to it, instead of the five tabs of instructions, until an AI has published for the person. AIs and access shows the same steps, Claude first.
- When a person approves their first AI, the consent screen says that it is connected and gives a first request to copy, before it sends them back. On a phone, its buttons sit at its foot.
- The listing of a Cahut in the directory of Claude (#280, ADR 61). The administrators of the server give it on the page of the Cahut in the console of the server, with
set_listingsin the API, or withcahut settings listing. The steps of Claude then open the listing, with nothing to copy. - Sign in with an e-mail address (#279, ADR 60). In a Cahut that sends e-mail, people sign in with their handle or with the address of their account.
Fixed
- A new password ends the wait of refused sign-ins (#279, ADR 60). The refusals before a new password, chosen from a link or under Account, no longer count against it: a person who forgot their password, and tried it too often, signs in as soon as they have chosen a new one. The same goes for the administrators of the server.
Updated
Cahut 1.2.0
Cahut 1.2.0 lets people delete their own account from the console, and starts the workers of the data of Windows on AlmaLinux 10.2.
Upgrading from 1.1.1
1.2.0 is a minor release: under the default CAHUT_UPDATES=patch, the daily timer does not install it. Install it from the console of the server, under Updates, or:
sudo /usr/local/bin/cahut update- One migration of the database of each Cahut, 0037: the setting that lets its people delete their own account. As every update does, it takes a snapshot of the databases first, and rolls back if the health check fails.
- People may delete their own account in every Cahut, as soon as it is updated. In a Cahut where they must not, for instance where an organization keeps the work of the people who leave, or where another app manages the accounts, turn it off right after the update, from the People page of its console, or with:
sudo -u cahut /usr/local/bin/cahut settings account-deletion --off --domain <domain>- No operation or MCP tool goes away, and no MCP tool comes: the new operations serve people, in the console.
Added
- People delete their own account (#256, ADR 59). The Account page of the console ends with a section that says what would go, what would stay and what stops the deletion, then asks for the password and the handle in full.
- What goes: what goes when an administrator deletes the person, that is their account, sessions, tokens, connected AIs, Knocks, personal Room, and the team Rooms where they are the only member, with their Windows; and the Windows they kept for themselves in the Rooms that stay.
- What stays: the team Rooms that have another owner, and what the person published there, without an author. The Logbook keeps its entries, and the handle becomes free.
- What stops it: a team Room they own alone and that has other members, until they give it another owner or delete it; being the last administrator of the Cahut; and the setting of its administrators.
- When the Cahut sends e-mail, a message tells the person that their account is deleted.
- The setting of the administrators (#256): a switch on the People page of the console,
set_account_deletionin the API, andcahut settings account-deletion --on|--offon the command line.get_cahutshows it. cahut doctorstarts a worker of the data of Windows, in a folder of its own, and has it check a migration (#274). It fails when the worker does not answer within 10 seconds, where it used to say only which version of Landlock confines the workers.
Fixed
- The data of Windows on AlmaLinux 10.2 (#272, #274). On Linux 6.12 with Landlock 6, as AlmaLinux 10.2 ships it, each worker that runs the SQL of a Window waited forever as it confined itself, and no Window with data could be published: the AI got
declaration.data: the statement ran out of time. The worker now adds the signal scope of Landlock only on kernels that report its fix, erratum 2 of Landlock, from Linux 6.15. Elsewhere it stays confined to the folder of its database, without network, and may signal the processes of thecahutuser, as under Landlock 5. Thanks to @dhippo for the report.
Cahut 1.1.1
Cahut 1.1.1 closes the data of a reported Window with the frame of its moderator, and tidies the console of the server.
Upgrading
1.1.1 is a patch release: under the default CAHUT_UPDATES=patch, a server on 1.1.0 installs it by itself, with its daily update. A server on 1.0.0 or before installs it as 1.1.0 says, from the console of the server, under Updates, or:
sudo /usr/local/bin/cahut updateNo migration, and no change to the API or to the tools of AIs.
Security
- The data of a reported Window closes with the frame of its moderator (#246). The pages of a reported Window, in the frame where a moderator opens it, read its data only while that frame opens the Window: while the session of the moderator lasts, of the Cahut or of the server, while they still moderate the Cahut, and while the report waits. Its files checked all three already; the data checked only the address of the frame, which lasts four hours. Since 1.0.0, a page could go on reading what anyone reads in that Window after its moderator signed out, or after the report was decided. Only the browser of the moderator knew that address.
Fixed
- The console of the server (#247): an address of a Cahut that does not decode, such as
/server/cahuts/%E0, shows the page of what does not exist in place of a blank page; the tab says "Cahut · Server" in the language of the console; the sections of moderation on the page of a Cahut are headings of the right level; the links and buttons of the list of Cahuts name their Cahut for screen readers. - The first start (#247): when it made the administrator of the server but could not sign them in, it ends at the sign-in of the console of the server, where the same handle and password work, in place of the console of the Cahut.
Changed
- What the console of a Cahut kept for the administrators of the server, which no session reaches since 1.1.0, is gone (#248). The first administrator that
add_domainmakes is refused in a Cahut that has people already.
Cahut 1.1.0
Cahut 1.1.0 gives the administrators of the server a console of their own, under /server/ of any domain of the server. From the domain where they sign in, they look after every Cahut of the server: its kind and limits, its legal pages, its address of moderation, its suspension, its moderation and its service tokens. The console of each Cahut, under /console/, keeps to its people. See ADR 58 and The console of the server.
Upgrading from 1.0.0
1.1.0 is a minor release: under the default CAHUT_UPDATES=patch, the daily timer does not install it. Install it from the console of the server, under Updates, or:
sudo /usr/local/bin/cahut update- One migration of the database of the server, 0015: the sessions of its administrators get ids that are never reused. None for the database of each Cahut. As every update does, it takes a snapshot of the databases first, and rolls back if the health check fails.
- The administrators of the server now sign in at
https://<domain>/server/. A browser that held their session stays signed in there. An address under/console/server/, such as an older activation link, goes on to/server/, with its code. - What they reach in a Cahut: what serves the server only. Its people, its Rooms, its e-mail and its Logbook are for its own administrators: an administrator of the server who looked after them needs an account of a person there, as one of its administrators. The command line still reaches everything.
- The HTTP API: the operations of the server answer at
POST /server/api/<operation>, in place of/console/api/server/<operation>, and those that serve the server in a Cahut atPOST /server/api/cahuts/<domain>/<operation>./console/api/takes the sessions of people only. The admin API of service tokens and MCP do not change, and no operation or tool goes away. - The name
serveris reserved: no Room and no handle takes it.
Added
- The console of the server (#242): an Ink top bar that says Server, and Cahuts, Administrators, Logbook, Updates and Account. The page of each Cahut sets its kind, limits, legal pages, address of moderation and suspension, moderates it with the preview of its reported Windows, creates and revokes its service tokens, and gives a link of first start while it has nobody. The list of the Cahuts shows the kind of each.
- The API of the server for every Cahut (#241):
/server/api/cahuts/<domain>/<operation>, for the operations that serve the server. A Cahut that the server does not hold is refused with the codecahut_not_on_server.
Changed
- Each console keeps to its own people (#243): the registry lets an administrator of the server call, in a Cahut, what serves the server only, and the console of a Cahut no longer shows the bar of the server, its pages, or the mode of an administrator of the server alone. Its administrators read the kind, the limits and the legal pages that the server sets.
- The first start (#244) keeps one step. When it makes the administrator of the server, it ends on the page of the Cahut in the console of the server, with a note that links to the console of the Cahut; the overview of the Cahut offers to connect the first AI.
install.shprints the address of the console of the server. send_test_mailis for the administrators of the Cahut and the command line.
Security
- The frame of a reported Window that an administrator of the server opens closes for good when their session ends: the ids of their sessions are no longer reused (#241).
Cahut 1.0.0
Cahut 1.0.0 gives each Window a database of its own: a poll, a contact form, a petition, a sign-up sheet or the tracker of a team keeps what its readers write, on your server, in SQLite. Its pages read what its declaration makes readable and call the queries it declares; the people of its Room and their AIs read and change all of it, after a copy that one call goes back to. The SQL of Windows runs in workers of its own, which Landlock confines on Linux. See ADR 56 and The data of Windows.
Upgrading from 0.11.0
1.0.0 is a major release: under the default CAHUT_UPDATES=patch, the daily timer does not install it. Install it from the console, under This server · Updates, or:
sudo /usr/local/bin/cahut update- One migration of the database of each Cahut, 0036: the size of the data of each Window, and the limit
data_per_window. None for the database of the server. As every update does, it takes a snapshot of the databases first, and rolls back if the health check fails. - The workers. The service starts itself again,
cahut window-data-worker, for each database of a Window in use, 32 at most, and stops it after a minute without a call. They run under the unit of the service, and its memory limit counts them. On Linux, Landlock closes to each every file outside the folder of its database, and TCP from Linux 6.7.cahut doctorgains a line, Window data, that says whether they are confined: on a kernel without Landlock, they keep their limits but read what thecahutuser reads, and the line says how to enable it. - Three new tools for AIs:
query_window_data,change_window_dataandrollback_window_data.publish_windowandupdate_windowtakedeclaration.data. The list of tools for an administrator weighs about 37 KB, under the new bound of 40 KB (ADR 57). - New for the administrators of the server: the limit
data_per_window, on the page Kind and limits or withcahut settings set --data-per-window SIZE. Without it, each database holds 100 MiB at most. The limitdisknow counts the data of each Window with its copies. - The skill for Claude goes from 0.9.0 to 0.10.0: it makes polls, forms and petitions that keep what readers write, and tells their readers what they keep.
- Backups: the data folder holds the data of each Window, in
cahuts/<id>/windows/<id>/data/, with its three latest copies. Cahut has no backups of its own yet: back up the whole folder.
Added
- The data of a Window.
declaration.dataholds themigrationsthat make its database, run once each and only adding; what isreadableby readers, table by table and column by column, every other column reading asNULL; thequeriesthat its pages call by name, foranyone,peoplesigned in or themembersof its Room; and when writingcloses.publish_windowandupdate_windowcheck it all before they publish, and say what each query does: it reads, adds, changes or deletes rows (#234). - The calls of pages.
POST .data/sqlandPOST .data/queries/<name>under the root of a Window, in JSON, without credentials, at the address of a public Window and in the frames of the others.:readeris a value of the person or of the pass of the reader, the same in one Window and another in every other, orNULLfor a reader of a public Window. Calls are limited by address and by Window (#235). - The data for AIs and people.
query_window_datareads all of it;change_window_datachanges it after a copy, and knocks first when it removes or renames a table, a column, an index, a view or a trigger;rollback_window_datagoes back to a copy, and undoes itself. The writes of readers copy the database once a day, and three copies are kept. What readers wrote reaches AIs marked as data, never instructions (#236). - The console shows the data of each Window (#237): its tables and their rows as text, an export as CSV, what readers read, what each query does and for whom, and its copies, each with a button to go back to it.
- The workers: the package
windataruns the SQL of each database in a process of its own, with an authorizer for each kind of statement, the functions of SQLite allowed by name, a hard limit on its heap,sqlite3_limitand a time for each call (#233). - Limits:
data_per_window, and the data in the limit of the disk (#238).
Changed
- Knock first: making a Window public says which queries let anyone write in its data;
update_windowknocks first when a public Window gets a query that changes or deletes rows for anyone. - The consent screen says that a connected AI reads the data of the Windows of the Rooms it reaches, which goes to the company that runs it.
- The MCP instructions and the skill tell AIs how a page keeps what readers write, what it says beside its form, and to show what readers wrote as text.
- ADR 57 raises the bound of the list of MCP tools from 32 KB to 40 KB.
Security
- The SQL of Windows never runs in the process that serves the Cahuts: a bug of SQLite that a stranger reaches with SQL stays in one worker, with the database of one Window, away from the keys and the databases of the Cahuts.
- A reader reads only what the declaration makes readable: a column forgotten stays private.
Full changes: v0.11.0...v1.0.0
Cahut 0.11.0
Cahut 0.11.0 brings moderation: anyone reports a Window, without an account, and the administrators of the Cahut and of its server open it, withdraw it with a reason for its Room, and reinstate it. Windows also get tags and a search of their words, in the console and for AIs. Cahut is in 0.x: anything can still change.
Upgrading from 0.10.2
0.11.0 is a minor release: under the default CAHUT_UPDATES=patch, the daily timer does not install it. Install it from the console, under This server · Updates, or:
sudo /usr/local/bin/cahut update- Six migrations of the database of each Cahut, 0030 to 0035: the tags of Windows, the reports, the withdrawn Windows, the address of moderation, the index of the search, and when the access of a Window was last set. None for the database of the server. As every update does, it takes a snapshot of the databases first, and rolls back if the health check fails.
- The search reads the Windows already published a minute after the service starts, a few versions at a time, and logs how many it read. Until then, a search finds only what was published or changed since the update.
- No new tool for AIs.
publish_windowtakestags,retitle_windowchanges them, andlist_windowstakestagandquery. The operations of moderation are for people only, in the console: no AI is offered them. - New for the administrators of the server: the address of moderation of each Cahut, on the page Kind and limits or with
cahut settings moderation-address --email ADDRESS. Set it to the abuse mailbox of the host, so that each report reaches it.cahut domain listgains a column REPORTS. - The skill for Claude goes from 0.8.0 to 0.9.0: it searches before it publishes a Window again, and gives tags.
From 0.9.5 or earlier, read the notes of 0.10.0 first: 0.11.0 brings its changes too.
Added
- Report a Window. A page of Cahut,
/-/report, without an account and without a script, where anyone reports a Window by its address, its permanent address, a share link, a file under it or the address of a Room that shows it: what is wrong (phishing, malware, illegal content, someone's rights, something else), an explanation, and an optional name and e-mail address. The foot of every page for readers links it, the page of a Key fills in its Window, and each card of the page of a Room links its own report for the readers outside the Room. The page is limited by network address, and the Logbook keeps each report without its explanation, its contact or its network address. See ADR 54 (#219, #221, #229). - Moderation in the console, for the administrators of the Cahut and those of its server, with the count of reports that wait in the menu. A moderator opens the Window of a report that waits, whatever its access, in its sandbox, for four hours at most; the members of its Room read each opening in their Logbook. A report is left as it is, with a note, or its Window is withdrawn. A section Public Windows lists what the Cahut serves to anyone, the latest made public first, to withdraw one without waiting for a report. The list of the Cahuts of the server shows how many reports wait in each (#223, #224, #226).
- Withdraw a Window, and reinstate it. A withdrawn Window keeps everything and serves nothing: its addresses, share links, Key and invitations answer with a page of Cahut, "This Window was withdrawn", in
410 Gone, to whoever would have opened it, and the page of its Room no longer lists it. Its members see it marked withdrawn, with the date, the reason and who withdrew it; they cannot change it or share it until it is reinstated (codewindow_withdrawn), but they can put it in the trash. Reinstating gives back its access, its Key and its share links until their end. A Window that the administrators of the server withdrew is reinstated by them only (#224). - The e-mail of moderation, when the Cahut has a relay. Each report goes to the administrators of the Cahut who have an address, and to its address of moderation. Whoever reports with an address gets a receipt, then the decision. The members of the Room of a withdrawn Window get the reason, each new reason, and its reinstatement: the statement of reasons that the Digital Services Act asks of hosts. No e-mail holds what whoever reported wrote (#225, #229).
- Tags. A Window carries up to 10 tags, such as
q3orboard-meeting, which belong to it across its versions, the trash and a new name. The console shows them on the cards, filters the page of a Room by tag, and edits them on the page of a Window, suggesting the tags of the person's other Windows. Only the people of the Room and their AIs see them. See ADR 55 (#220). - Search.
list_windowswithqueryfinds the Windows whose title, description, tags or pages hold each word, at the start of a word, whatever its case and accents, the best first, each with an excerpt of its pages. It finds whatlist_windowslists: the Windows of the caller's Rooms, but those that others keep for themselves. The console has a search field at the head of every page of a person, and a page of results with the words found in bold (#222).
Changed
- Tool titles:
list_windowsis now List and search Windows, andretitle_windowRetitle, describe and tag a Window. - The MCP instructions and the skill tell AIs to search for a Window before they publish it again, and to update the one they find.
Full changes: v0.10.2...v0.11.0
Cahut 0.10.2
Cahut 0.10.2 says in the description of nineteen tools whose world is closed that they act in this Cahut, after the review of a plugin for ChatGPT read another of them as one that reaches an outside system. Cahut is in 0.x: anything can still change.
Upgrading from 0.10.1
0.10.2 is a patch release: under the default CAHUT_UPDATES=patch, the daily timer installs it on its own. To install it now, use the console, under This server · Updates, or:
sudo /usr/local/bin/cahut update- No migration, no new tool. Nineteen tools change their description; their names, titles, inputs and hints stay.
From 0.9.5 or earlier, read the notes of 0.10.0 first: 0.10.2 brings its changes too, and since 0.10 is a new minor version, the daily timer does not install it under CAHUT_UPDATES=patch.
Changed
- Closed tools say that they act in this Cahut. The first sentence of the description of
get_window,list_windows,publish_window,retitle_window,rename_window,rollback_window,trash_window,restore_window,purge_window,list_invitations,revoke_invitation,revoke_share_link,get_room,list_rooms,update_room,set_room_home,set_ai_reach,get_knockandlist_knocksnow names this Cahut. So doesupdate_window, since 0.10.1. Five tools that knock first keep their description for now:add_room_member,remove_room_memberandset_room_member_role, which an individual Cahut offers to no one, anddisable_userandenable_user, which only its administrators get (#218).
Full changes: v0.10.1...v0.10.2
Cahut 0.10.1
Cahut 0.10.1 says what a Knock is in the titles of its tools, and that update_window calls no other system, after the review of a plugin for ChatGPT read them otherwise. Cahut is in 0.x: anything can still change.
Upgrading from 0.10.0
0.10.1 is a patch release: under the default CAHUT_UPDATES=patch, the daily timer installs it on its own. To install it now, use the console, under This server · Updates, or:
sudo /usr/local/bin/cahut update- No migration, no new tool. Two tools change their title and three tools their description; their names, inputs and hints stay.
From 0.9.5 or earlier, read the notes of 0.10.0 first: 0.10.1 brings its changes too, and since 0.10 is a new minor version, the daily timer does not install it under CAHUT_UPDATES=patch.
Changed
- The tools of Knocks say what a Knock is.
get_knockis now titled "Check an approval request (Knock)", andlist_knocks"List approval requests (Knocks)". Their descriptions first say that a Knock is a call of an AI that waits for a person to approve it (#216). update_windowsays that it calls no other system. Its description says that it publishes a version of a Window of this Cahut, and the description of the origins of a declaration, forpublish_windowtoo, says that the pages load them in the browser of their readers (#216).
Full changes: v0.10.0...v0.10.1
Cahut 0.10.0
Cahut 0.10.0 gives each Window a permanent address, a title, a description and a name that change, and share links that open it to whoever holds them until they end; a Window can also stay with its author alone. The administrators of a Cahut can delete a person, those of the server can suspend a Cahut, and the house style is gone. Cahut is in 0.x: anything can still change.
What breaks
- The house style is gone. The tools
get_house_style,set_house_styleandrollback_house_stylego, with everything that Cahut served under/-/for them: the style sheet, logos, fonts, deck engine and templates now answer 404. Published Windows that link/-/house-style.cssor/-/deck.jslose their look: their text reads in the fonts and colors of the browser, and the slides of a deck follow one another down the page. Publishing them again with their own CSS and scripts gives them back a look. The instructions of the MCP server and the skill for Claude now tell AIs to make each Window in the style the person asks for. The console loses its House style screen, and the first start its step Your Cahut. See ADR 49 (#203).
Upgrading from 0.9.5
0.10.0 is a minor release: under the default CAHUT_UPDATES=patch, the daily timer does not install it. Install it from the console, under This server · Updates, or:
sudo /usr/local/bin/cahut update- Seven migrations of the database of each Cahut, 0023 to 0029, and one of the database of the server, 0014. They give an id to every Window already there, drop the tables of the house style, and make the tables of people and Windows again. As every update does, it takes a snapshot of the databases first, and rolls back if the health check fails.
- New tools for AIs:
retitle_window,rename_window,create_share_linkandrevoke_share_link, which an AI calls without knocking, anddelete_user, which knocks first.publish_windowtakes a description, a name and the accessauthor, andupdate_roomthe description of a Room. Every tool that takes a Window takes its id or its permanent address too. - New operations for the administrators of the server:
suspend_cahutandresume_cahut, never offered to AIs, and the commandscahut domain suspendandcahut domain resume. - The repository moved to
cahutcloud/cahut, and the default ofCAHUT_REPOwith it. A server that setsCAHUT_REPO=getcahut/cahutby hand in/etc/cahut/update.envkeeps updating through the redirect of GitHub; change it tocahutcloud/cahut(#214). - The skill for Claude goes from 0.4.0 to 0.8.0, with the new tools.
From 0.8.4 or earlier, read the notes of 0.9.0 first: 0.10.0 brings its changes too.
Added
- A permanent address for each Window. Each Window gets an id when it is published, 26 characters that never change and are never reused, and with it a permanent address,
/-/w/<id>, which checks its access and sends its reader to its address of the moment. Invitations give the permanent address, so that a change of name does not break them, and the console shows both addresses on the page of a Window. See ADR 50 (#204). - The title, the description and the name of a Window change. A Window and a Room get a description, 300 characters at most.
retitle_windowchanges the title or the description of a Window in place, andrename_windowits name, the last part of its address: the old address stops working at once, without a redirect, and the permanent address is the link that lasts. The console changes them on the page of a Window, and the description of a Room under Manage the Room (#205, #206). - Share links. A share link opens a Window to whoever holds it, without an account or a Key, until it ends: 7 days by default, 30 at most, and to a number of readers if one is given. Its page opens nothing until its button is clicked, so that robots of previews and mail filters spend no opening, and each opening goes to the Logbook, without the reader. In the console, the menu Share of a Window creates them, and the page of a Window lists them, each with Take back. See ADR 52 (#210, #211).
- Windows for their author alone. A new access,
author: only the person a Window was first published for sees it and acts on it, while they are in its Room.publish_windowtakes it, so that a draft never shows to the Room, and with a share link that opens once, a Window goes to a single reader. An author who leaves the Room, or is deleted, gives their Windows back to the Room. See ADR 53 (#212). - Share a Window from the console. A button Share, at the head of the page of a Window and on each card, copies its permanent address, writes an e-mail, opens the sharing of X, LinkedIn or Facebook for a public Window or a Window with a Key, or the share sheet of the system. The console loads no script of these networks (#209).
- Previews of links to a Window. The permanent address answers the robots that draw the preview of a link with a card of Cahut: a public Window gives its title and its description, a Window with a Key its title, the others only the Cahut they are in. Cahut draws the picture itself, from the brand guidelines. See ADR 51 (#208).
- Delete a person for good. The administrators of a Cahut, and those of the server, delete a person with
delete_user: with them go their account, sessions, tokens, connected AIs and Knocks, their personal Room, and each team Room they are the only owner of, with its Windows. A team Room with another owner stays, and the Windows they published in it stay without an author. No one deletes themself, nor the last administrator; the console asks for the handle typed in full. See ADR 47 (#196). - Suspend a Cahut. The administrators of the server suspend a Cahut, after a decision of moderation or when its organization stops paying, and resume it without loss, on the page Kind and limits or from the command line. Meanwhile every call but theirs is refused with the code
cahut_suspended, its Windows and pages answer with a page of Cahut in 503 that names nothing it holds, and sessions, tokens and connected AIs are kept. Its administrators hear of it by e-mail when the Cahut has a relay. See ADR 48 (#202). - What the Cahut holds, on the console home. The overview shows a tile for each thing that the limits count, Rooms, Windows and disk, and people for the administrators, with a gauge where there is a limit; and a banner for each limit at 90 % or reached, which reaches the Cahuts without a relay too (#200, #201).
- Bold, italics and lists in the note of an invitation, from a small editor in the console. Links stay out on purpose. See ADR 46 (#194).
Changed
- Windows fetch the
blob:anddata:URLs they make, so that three.js loads the textures of a model:connect-srcnow allows them. Neither makes a request on the network, and the sandbox gives each Window an origin of its own, so a Window reads only theblob:URLs it made. See ADR 45 (#181). - The sign-in of the server takes the theme of the server, the inverse of the sign-in of a person, with the mark of the server beside the logo, so that the two are no longer mixed up (#197).
- The pages that readers see always carry the brand of Cahut, e-mail names a Cahut by its domain, and the disk of a Cahut counts the versions of Windows only (#203).
Fixed
- A limit of zero is no longer one to come near: an individual Cahut with no Room beside the personal one no longer e-mails each person every day that they reached it (#201).
Full changes: v0.9.5...v0.10.0
Cahut 0.9.5
Cahut 0.9.5 lets administrators of the server change their name, opens a Window in a new tab from its card in the console, and tidies the deck engine and the Knocks. Cahut is in 0.x: anything can still change.
Upgrading from 0.9.4
0.9.5 is a patch release: under the default CAHUT_UPDATES=patch, the daily timer installs it on its own. To install it now, use the console, under This server · Updates, or:
sudo /usr/local/bin/cahut update- No migration, no new tool for AIs. The server gets one operation,
rename_admin, and the command linecahut admin rename. Sessions stay open.
From 0.8.4, read the notes of 0.9.0 first: 0.9.5 brings its changes too. Since 0.9 is a new minor version, the daily timer does not install it under CAHUT_UPDATES=patch; install it from the console or with cahut update.
Added
- Administrators of the server change their name.
rename_adminchanges the name of an administrator of the server, one's own or another's; the handle stays, since they sign in with it. It checks the name aschange_namedoes for a person, andcreate_adminnow checks the same. In the console, Server administrators gives every row a Manage button, one's own included, and the command line getscahut admin rename(#175). - A Window opens in a new tab from its card. Each card of a Window, on the page of a Room and on the overview, has a button over its preview that opens the Window itself in a new tab. The rest of the card still leads to the page of the Window in the console (#193).
Changed
- The number of a slide fades under the controls of a deck. The navigation pill of the deck engine carries the number of the slide, and covered the one at its foot: that number now fades out while the pill shows, and comes back once the pointer stops. No class or variable changes (#183).
- Knocks show a short name for the AI. The card and the page of a Knock drop the trailing part in parentheses of the name an OAuth client registered, such as "Claude (Anthropic/ClaudeAI 1.0.0)", and keep the full name in its title. The Logbook and the list of connected AIs keep the full name (#183).
Full changes: v0.9.4...v0.9.5