The old LICENSE.txt was a stock business EULA. It allowed use only "for your internal business purposes", banned copying and reverse engineering of code we publish, named "Zavage Software inc." as licensor, and claimed users agreed by installing. The new text lets anyone use the extension free of charge, for any purpose, and withholds republishing, forks and reuse of the code. It also covers versions 1.0 to 1.3, which AMO shows under one shared license record. The README, CHANGELOG and package.json follow suit. The text went through three multi-agent review passes. The decisions behind it and the AMO publishing steps are in docs/superpowers/specs/2026-10-19-license-design.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5.5 KiB
Replace the license
Status: implemented on docs/replace-license. Researched and reviewed, but not
legal advice; no lawyer has read it.
Problem
The old LICENSE.txt was a stock business EULA, unchanged since June 2024. It:
- allowed use only "for your internal business purposes", which leaves out people using the extension at home;
- banned copying and reverse engineering, although the source is public and the listing links to it;
- named "Zavage Software inc." as licensor, though the code is Mathew's;
- said users agreed by installing, which binds no one who installs from AMO.
Goals
- Anyone may use the extension for free, for any purpose, forever.
- Nobody may fork it, republish it, or build or sell anything from it.
- Everything else is reserved.
The text must not scare ordinary users away.
How it was reviewed
Three multi-agent passes on 2026-10-19. Each finding was checked against primary sources by a separate skeptic.
- Seven lenses: US law, international law, platforms, comparable licenses, a would-be cloner, ordinary users and drafting. A completeness critic followed. This pass produced 92 findings.
- A four-lens adversarial review of the revision, which produced 29 findings.
- A final consistency check and cold read.
Decisions
- Custom text. No standard license fits all three goals:
- PolyForm Strict allows noncommercial use only.
- PolyForm Internal Use covers business use only.
- PolyForm Perimeter, Shield and Noncommercial, Elastic, BSL and FSL all allow redistribution.
- CC BY-NC-ND allows sharing unchanged copies.
- A permission, not an agreement. Copyright already forbids forks without anyone agreeing to anything. "By installing you agree" doesn't bind people who install from a store (Specht v. Netscape, 2d Cir. 2002).
- Licensor: Mathew Guest, publishing as Zavage Software. Colorado lists a Zavage Software Inc. LLC, but the code was never assigned to it. Section 10 keeps the license in force if the code later passes to a company.
- Earlier versions are covered. On AMO, versions 1.0, 1.2 and 1.3 share one license record (9155), and their signed packages bundle the old EULA. Section 9 replaces those terms.
- Each version stays free forever. A later version may carry different terms, but it can't take back what this license gives. The owner chose this over promising that every future version stays free.
- Changed copies stay within your household or organization. There is no route for having Mozilla sign a changed copy. Submitting to AMO makes the submitter warrant worldwide distribution rights (Firefox Add-on Distribution Agreement §5(c)), which this license withholds. Changed copies still run as temporary add-ons, or in Developer Edition, Nightly and ESR.
- Reviews are welcome. Reviews, tutorials, classes and security reports may name the extension, quote short parts, and show its icon and screenshots of it in use.
- Liability is capped at US$50, for claims about the Software only. The cap has explicit exceptions (injury, fraud, deliberate or reckless harm, gross negligence, product liability). A bare "to the extent the law allows" doesn't save a cap in Germany, the UK or the EU.
- Clauses left out:
- A courts clause, which binds no forker and is unfair to EU and UK consumers.
- A noncompete or a ban on similar extensions. Ideas aren't protected, and such a clause risks copyright misuse.
- Clauses on AI training and on outside contributions.
- The name is "Freeware", not "Free Use". "Free Use" has a slang meaning, and "free" alone suggests free software.
- The layout is plain text. AMO shows license text as plain text: every line break shows, and there's no Markdown. So each paragraph sits on one line, and headings read "Section N:".
Publishing on AMO (untested, 2026-10-19)
-
In the Developer Hub, open the add-on's Manage Authors & License page.
-
Set "What is your license's name?" to
Zavage Software Freeware License 1.0. The listing's License link and each version's "Source code released under …" line show this name, not the text's first line. -
Paste
LICENSE.txtunchanged, and leave the End-User License Agreement box unticked. -
Save. Saving edits the shared record, so 1.0, 1.2 and 1.3 all show the new text, and the next upload inherits it.
-
Check every version:
curl -s https://addons.mozilla.org/api/v5/addons/addon/search-with-chatgpt/versions/ \ | jq '.results[] | {version, license: .license.name}'
AMO turns the email address into a link to its own home page. It looks odd but does no harm.
Outside the license
- Register the copyright with the US Copyright Office (Standard Application, US$65), and exclude AI-generated material that is more than trivial. Registration is needed to sue and to keep a takedown in place after a counter-notice. Statutory damages and fees also depend on registering within three months of publication. 1.2 and 1.3 were published on 18 and 19 October 2026, so that window closes around 18 January 2027.
- Replace the Chrome repository's
LICENSE.txt. It still carries the old EULA and the public@zavage.net contact. - Report clones through Mozilla's infringement form or dmcanotice@mozilla.com. On AMO, Mozilla's own fork rule is a second route. Use the Chrome Web Store's and Microsoft's DMCA forms for those stores.
- Don't mirror the repository publicly on GitHub. GitHub's terms let any GitHub user fork a public repository there.