wellactually

Writing principles

Licences and forks

Who owns what in a principle, and what others may do with it. A principle is two different things: the advice, which is text, and the detector, which is code. They are treated differently, and the only choice you make is whether others may fork the principle.

The advice stays yours#

The advice in principle.md, and every other file that is not code, is yours with all rights reserved. Nobody gets a licence to copy it, change it or publish it elsewhere.

Advice is never run. Well Actually only reads it, shows it and provides it as context, and never changes it. Publishing allows exactly that, as its terms say:

  • Showing the advice on this site, in the tools and to everyone who runs the principle, at work and in commercial projects too.
  • Providing it as context to the model that the user's agent uses.

The detector is MIT#

detector.ts, its tests and the other code files of the principle are under the MIT licence.

A detector is source code, and Well Actually does with it what is done with source code. It is bundled, transpiled and minified, and it is executed:

  • on the machine of everyone who runs the principle, inside the Well Actually sandbox,
  • in the browser, when the editor runs its tests,
  • on the server, which builds and tests every upload to verify it.

A licence that allows all of that for everyone, without asking, is why it has to be MIT. Anyone may also read the code, learn from it and reuse it outside Well Actually.

Code under any other licence comes in as a package, never pasted into the principle's own files. A package keeps its own licence: some need your approval, and their notices travel in every bundle. Tags, packages and licences has the rules.

A LICENSE file in the principle's folder is an ordinary file. It changes nothing about forks or about the licence of the code.

Allow forks#

A fork is someone else's copy of your principle, under their handle and a name they choose. They may change the advice and the detector, and release it as their own principle.

Forks are allowed for every new principle. The allow forks box in the Settings tab of the principle's page turns them off and on again.

  • While forks are allowed, anyone who can see the principle may fork it. Allowing forks is your permission to edit the text and publish it again under another name, through a fork on this site.
  • While they are off, the page offers no fork, and the registry refuses one. Others may still install and run the principle. You can still fork your own principle.
  • Turning forks off later does not touch forks that exist. They were made while you allowed it.

A private principle reaches only the people you shared it with, and a fork of it stays private.

For a principle synced from GitHub, "forkable": false or "forkable": true in its package.json sets it, and the website then leaves it alone. Without the field the box on the page decides.

Credits#

A fork never hides where it came from. Its page says who it is by, starting with the original's expert and naming everyone who forked it on the way, each once:

Original by @passsy, edited by @john and @jimmy

The page links to the revision it was forked from, and the agent's pull reports the same line.