nebula-ai-bin
The package downloads prebuilt binaries from the project's own official domain (nebula.gg), which is plausibly controlled by the developer; despite the non-whitelisted host, the checksums are provided and the binary is installed directly without obfuscation or remote code execution.
Triggered rules
llm_review
The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The package downloads prebuilt binaries from the project's own official domain (nebula.gg), which is plausibly controlled by the developer; despite the non-whitelisted host, the checksums are provided and the binary is installed directly without obfuscation or remote code execution.
1 higher static finding superseded - not the current verdict (shown for transparency)
source_untrusted_domain
One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).
-
PKGBUILD:19
source_x86_64=("nebula-ai-v0.1.9-linux-x64.tar.gz::https://app-assets.nebula.gg/cli/stable/v0.1.9/linux-x64/nebula-ai-v0.1.9-linux-x64.tar.gz")
PKGBUILD
1 offending line(s) highlighted# Maintainer: Agent Labs <support at nebula dot gg>
# This file is generated by agent-labs-dev/nebula-desktop's CLI publish
# workflow (apps/cli/scripts/publish/render-aur.mjs). Direct edits are
# overwritten on the next prod release.
pkgname=nebula-ai-bin
pkgver=0.1.9
pkgrel=1
pkgdesc="CLI/TUI for the nebula.gg AI task orchestration platform"
arch=('x86_64' 'aarch64')
url="https://github.com/agent-labs-dev/nebula-desktop/tree/main/apps/cli"
license=('MIT')
# Versioned provides so a from-source `nebula-ai` could satisfy versioned
# deps; conflicts (not replaces, per the AUR guidelines) so the two never
# install side by side.
provides=("nebula-ai=$pkgver")
conflicts=('nebula-ai')
options=('!strip')
source_x86_64=("nebula-ai-v0.1.9-linux-x64.tar.gz::https://app-assets.nebula.gg/cli/stable/v0.1.9/linux-x64/nebula-ai-v0.1.9-linux-x64.tar.gz")
sha256sums_x86_64=('57e2f96686795a7d52fab44dd001ba260fc590a4062e3ac1c26371a9d6557df4')
source_aarch64=("nebula-ai-v0.1.9-linux-arm64.tar.gz::https://app-assets.nebula.gg/cli/stable/v0.1.9/linux-arm64/nebula-ai-v0.1.9-linux-arm64.tar.gz")
sha256sums_aarch64=('7d8f33e2d471c775ed259e5981fc7cf8ed855e96ff4fb52b95f86a806db3316d')
package() {
install -Dm755 "${srcdir}/nebula-ai" "${pkgdir}/usr/bin/nebula-ai"
}
Changes since previous scan
--- PKGBUILD @ 2026-08-31 00:19+++ PKGBUILD @ 2026-09-17 00:27@@ -3,7 +3,7 @@ # workflow (apps/cli/scripts/publish/render-aur.mjs). Direct edits are # overwritten on the next prod release. pkgname=nebula-ai-bin-pkgver=0.1.8+pkgver=0.1.9 pkgrel=1 pkgdesc="CLI/TUI for the nebula.gg AI task orchestration platform" arch=('x86_64' 'aarch64')@@ -16,10 +16,10 @@ conflicts=('nebula-ai') options=('!strip') -source_x86_64=("nebula-ai-v0.1.8-linux-x64.tar.gz::https://app-assets.nebula.gg/cli/stable/v0.1.8/linux-x64/nebula-ai-v0.1.8-linux-x64.tar.gz")-sha256sums_x86_64=('230e633663c34ade610bf0d12efa65e678eb3b2599ac2924412ab20b4d00ff61')-source_aarch64=("nebula-ai-v0.1.8-linux-arm64.tar.gz::https://app-assets.nebula.gg/cli/stable/v0.1.8/linux-arm64/nebula-ai-v0.1.8-linux-arm64.tar.gz")-sha256sums_aarch64=('a838d62aa597ac312bda509119a2a4460e47cbf43000634e11685177c4133aa8')+source_x86_64=("nebula-ai-v0.1.9-linux-x64.tar.gz::https://app-assets.nebula.gg/cli/stable/v0.1.9/linux-x64/nebula-ai-v0.1.9-linux-x64.tar.gz")+sha256sums_x86_64=('57e2f96686795a7d52fab44dd001ba260fc590a4062e3ac1c26371a9d6557df4')+source_aarch64=("nebula-ai-v0.1.9-linux-arm64.tar.gz::https://app-assets.nebula.gg/cli/stable/v0.1.9/linux-arm64/nebula-ai-v0.1.9-linux-arm64.tar.gz")+sha256sums_aarch64=('7d8f33e2d471c775ed259e5981fc7cf8ed855e96ff4fb52b95f86a806db3316d') package() { install -Dm755 "${srcdir}/nebula-ai" "${pkgdir}/usr/bin/nebula-ai"Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-17 00:27:14 | Low | 2 |
| 2026-09-16 00:03:17 | Low | 2 |
| 2026-09-15 00:25:31 | Low | 2 |
| 2026-09-14 00:27:57 | Low | 2 |
| 2026-09-13 00:19:54 | Low | 2 |
| 2026-09-12 00:25:17 | Low | 2 |
| 2026-09-11 00:19:22 | Low | 2 |
| 2026-09-10 00:22:44 | Low | 2 |
| 2026-09-09 00:04:09 | Low | 2 |
| 2026-09-08 00:18:08 | Low | 2 |
| 2026-09-07 00:30:15 | Low | 2 |
| 2026-09-06 00:17:06 | Low | 2 |
| 2026-09-05 00:16:27 | Low | 2 |
| 2026-09-04 00:03:13 | Low | 2 |
| 2026-09-03 00:15:47 | Low | 2 |
| 2026-09-02 00:02:31 | Low | 2 |
| 2026-09-01 00:11:19 | Low | 2 |
| 2026-08-31 11:45:21 | Medium | 1 |
| 2026-08-31 00:19:57 | Low | 2 |
| 2026-08-30 00:04:14 | Low | 2 |