License (AGPL-3.0)
How you can use Ghost-hunter.
Ghost-hunter is licensed under AGPL-3.0-or-later as of v1.0.7. Earlier versions (v1.0.0–v1.0.6) were MIT-licensed; that earlier source remains MIT and is preserved in LICENSE.MIT.original.
What AGPL-3.0 means in practice
- You can use Ghost-hunter freely, including for commercial work.
- If you modify it and offer it as a network service, you must publish your modifications under AGPL-3.0.
- If you use the unmodified CLI as a tool, you owe nothing — the AGPL trigger is modification + network service, not use.
What counts as a "network service"?
A network service is when users interact with the software over a network without downloading it themselves. The test: if a user uses your software via HTTP, SSH, an API, a Slack bot, etc — and never gets a copy of the code on their machine — you're operating it as a network service.
The AGPL only fires when both of these happen:
- You modify Ghost-hunter (change code, add features, alter behavior), AND
- You expose the modified version as a network service (web app, hosted dashboard, bot, API).
Either one alone does not trigger AGPL.
| Scenario | Network service? | Triggers AGPL? |
|---|---|---|
You pip install ghosthunter and run it on your laptop | No | No |
| You fork Ghost-hunter, modify it, pip-install your fork on your laptop | No | No |
| You wrap Ghost-hunter in a SaaS dashboard where users upload bills | Yes | Yes |
| You run unmodified Ghost-hunter on a server and trigger it via Slack | Yes | No (no modifications) |
| You modify Ghost-hunter and wrap it in an internal Slack bot for your team | Yes | Yes |
| Your client uses Ghost-hunter as a CLI tool you ran for them | No | No |
In short: anyone can use Ghost-hunter as a CLI without owing anything. The AGPL exists to stop vendors from taking Ghost-hunter, modifying it behind a SaaS wall, and never giving the improvements back. If you're building a closed-source hosted product on top of Ghost-hunter, you need a commercial license.
Commercial license
If AGPL-3.0 is incompatible with your distribution model and you'd like a commercial license, email avinash@matrixgard.com.
Full text
The full license text is in LICENSE at the repo root. Relicensing history is in LICENSE_HISTORY.md.