The AngusTester repository documents the product and no longer contains it
AI-native software testing platform — one YAML test language covering API, Web, mobile, messaging, data, and LLM scenarios. Self-hostable.
At a glance
- What is it?
- A testing platform sold in three editions, where the Community Edition ships as a 290 MB zip installed by a wizard with five required answers, and the GitHub repository says in plain text that it hosts documentation only because distribution moved to private packages. The licence file in that repository claims to match source the repository does not hold.
- Who is it for?
- AngusTester suits an evaluation team that wants to try a self-hosted functional and API testing platform without a sales call, because the free edition is a complete zip with a scripted first run and a health check. Three things to weigh before committing.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 8 days ago.
- What is it written in?
- GitHub does not report a main language for this repository.
Answers come from the project's GitHub data, last synced on October 3, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The repository says it hosts documentation only, and used to hold source
The first thing the page states is a change of distribution.
> This repository hosts documentation only. AngusTester source code is distributed through private deployment packages, not through this GitHub repository.
It goes further and explains why the tree looks the way it does: earlier revisions of the repository contained application source, and distribution has since moved to the vendor's own packaging pipeline. That history is the reason a reader who finds an older commit with code in it should not treat the current emptiness as a takedown. The tree today is six entries, a contributing guide, two readmes in English and Chinese, a licence, a gitignore and an assets directory, and the repository records no primary language at all, which is the statistical signature of a repository with no code in it. The contributing guide exists to say that source pull requests are not accepted here and that issues are for documentation feedback and install troubleshooting, so the project has kept the collaboration surface and closed the code surface.
The Community package is two products in one zip
The free edition is distributed as a single archive rather than as a package index entry, and it bundles more than the tester.
curl --fail --location --progress-bar -o AngusTester-Community-2.0.0.zip \
https://repo.anguskit.com/raw/raw-public/AngusKit/tester/AngusTester-Community-2.0.0.zip
unzip AngusTester-Community-2.0.0.zip
cd AngusTester-2.0.0
./install.shThe archive is about 290 MB and contains the management console together with the testing product. The stated floor is two cores, 4 GB of RAM and 40 GB of disk, with the note that execution logs and plugins take that disk figure further. Docker Engine with Compose v2 is required, so there is no bare metal path in the quickstart at all. One detail worth noting is the version numbering across two archives: the tester package is 2.0.0 while the full suite package mentioned further down is 1.0.0, so the fuller product carries the lower number and there is no single version to reason about.
The wizard asks five questions and one of them must not be a bare Enter
The install script is interactive, and the answers are prescribed rather than suggested. Install mode is 1 for Compose. Access is 2, the bundled reverse proxy, and the page is emphatic that pressing Enter here is wrong. The proxy is 1, which selects Caddy. TLS is 4, which is HTTP on port 80 with no certificate. The database is 1, MySQL 8 inside Compose. After that comes the public DNS name and an administrator password, with the default user name given as admin. The wizard ends by printing a completion line you are told to wait for. Two of these choices are not really choices. Access mode 2 has to be entered by hand or the installer does not behave, and TLS 4 means the first run serves plain HTTP by design, which is the single most consequential line in the sequence and the one a reader scanning the instructions is most likely to skip past.
Two host names, one suffix, and port 80 belongs to the installer
Before the wizard runs, names have to resolve. The console and the tester are two separate host names, and the page gives the line to add.
127.0.0.1 gm.example.com tester.example.comThe subtlety is in what the wizard then asks for. The public DNS name field wants the suffix, so the value is example.com rather than gm.example.com, and typing the full host name there is the kind of mistake that produces a broken setup rather than an error. Three port rules follow from the same paragraph. Open port 80 on the host for the consoles, open port 7100 only when you actually execute scripts, and do not use port 8801 on localhost, which reads like a leftover default from an earlier layout. The page also warns that if Nginx, Caddy or IIS already bind port 80 you must stop them first, since the bundled proxy takes that port. And on macOS with Docker Desktop the install script must not be run with elevated privileges, which is a platform specific trap rather than a general instruction.
One command tells you whether the install worked
Verification is a single script and a single string.
./bin/angusctl.sh doctorThe page asks you to look for `doctor: OK`, and then to open the management console, sign in, and open the tester console. That is the whole of the health check, which is worth knowing in advance: there is no second probe and no service level output, so on a machine that already had a web server on port 80 the doctor line is the difference between a working install and a confusing one. The two consoles are separate origins, which is why the host names had to be set up first, and the administrator account created in the wizard is the one used to sign in. For a first trial this is a reasonable amount of ceremony, and the vendor points at a separate install guide for the full deployment paths, including host archives, a Helm preview, real TLS and offline installation.
The trial path is plain HTTP with a default administrator name
Combining two of the prescribed answers produces the security posture of the quickstart. TLS option 4 means HTTP on port 80 with no certificate, so the console password and everything typed into it travel in clear text, and the default user name is simply admin. That is defensible for what the page says this path is, a local trial where both host names are pointed at loopback through the hosts file. It stops being defensible the moment the names resolve somewhere else. The page's own wording is the guide here: resolve the names to this machine for a trial, and use the full install documentation when you want a certificate. The practical habit worth forming is to change the administrator password through the console after the first sign in rather than assuming the wizard value is temporary, and to keep the first run on loopback until TLS is configured properly.
Two licences are named and only one of the files is in the tree
The licence section covers three different things. This repository's documentation content is under the GPL-3.0 file at the root, described as matching the Community Edition source it describes. The Community Edition product source is also GPL-3.0, distributed inside each Community installation package. The Team and Enterprise editions are proprietary under a business licence named in the page and version 1.0, distributed only under a paid subscription. Two things are off about that arrangement. The repository's licence claims to match product source that the same repository says it does not contain, so a reader auditing the GPL grant for the code has to download the package to find it. And the licence section links to a file for the business licence by relative path, while the tree lists six entries and that file is not among them, so that link does not resolve from inside the repository.
The free edition excludes the plugin types that make up most of the range
The edition table is where the product's real shape shows. The pitch is one declarative YAML test language covering API, web, mobile, messaging, data and language model scenarios on a single execution model, with assets organised as plan, case, script and report, plugin extensions on the same engine, and performance testing with multi-thread concurrency, ramp-up load, service level threshold checks and live metrics. The Community column then says the web, mobile, messaging and language model plugins are not included, along with report gating, the testing copilot and MCP support, leaving API and basic performance only, capped at ten users, twenty test projects and a thousand concurrent test threads. So the trial exercises one engine and two scenario types out of six, and the category most visitors arrive for, web and mobile, is exactly what is gated. That is not hidden, but it is a single table row deep.
Editorial conclusion
AngusTester suits an evaluation team that wants to try a self-hosted functional and API testing platform without a sales call, because the free edition is a complete zip with a scripted first run and a health check. Three things to weigh before committing. The repository you would normally audit contains no source at all, so the Community licence grant on the product code is something you can only verify after downloading the package. The quickstart path deliberately ends on plain HTTP on port 80 with a default administrator username, which is fine for a laptop trial with names pointed at loopback and wrong for anything a team shares. And the free edition's feature table leaves out the plugin types for web, mobile, messaging and language model testing, which is most of the product's stated breadth, so the trial will not exercise the parts you probably came for.
Frequently asked questions
Does the AngusTester GitHub repository contain the product source code?
No. The repository states that it hosts documentation only and that the source is distributed through private deployment packages, noting that earlier revisions contained application source before distribution moved to the vendor's packaging pipeline. Issues are accepted for documentation feedback and install troubleshooting, not for source pull requests.
What does the AngusTester Community Edition package contain and require?
A zip of about 290 MB containing the management console together with the tester. The stated floor is two cores, 4 GB of RAM and 40 GB of disk, with execution logs and plugins needing more, and Docker Engine with Compose v2 is required.
How do I check whether the AngusTester installation succeeded?
Run ./bin/angusctl.sh doctor from the package root and look for doctor: OK, then open the management console, sign in with the administrator account created during the wizard, and open the tester console on the second host name.
What is the difference between the Community, Team or Enterprise, and SaaS editions of AngusTester?
Community is free and capped at ten users, twenty test projects and a thousand concurrent test threads, and it includes only API and basic performance testing. Team and Enterprise are paid with private deployment and higher or unlimited seats and projects, and include the web, mobile, messaging and LLM plugins, report gating, the testing copilot and MCP. SaaS is paid and hosted.
Which licence applies to AngusTester?
The Community Edition product source is GPL-3.0 and ships inside each Community installation package, and this repository's documentation is under a GPL-3.0 file at its root. The Team and Enterprise editions are proprietary under the XCan Business License version 1.0 and are distributed only under a paid subscription.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/anguskit-angustester)