msty-claw-bin
Triggered rules
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:17
source=("$filename::https://next-assets.msty.studio/mstyclaw/latest/linux/MstyClaw_amd64.deb?ver=$pkgver")
llm_review
An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 72%): This PKGBUILD installs a prebuilt proprietary binary (.deb) downloaded from next-assets.msty.studio, which is the vendor's own CDN/asset host for the Msty Claw application. The URL uses a query parameter (?ver=) to pin the version, and a sha256sum IS provided (not SKIP), so integrity is verified at download time. The main concern is that this is a closed-source, prebuilt binary from a non-official distribution channel (not a distro mirror or well-known release host like GitHub releases), meaning users must trust the vendor's CDN entirely. If the CDN is compromised or the vendor pushes a malicious update, the sha256 would catch it only for the pinned version — but the URL itself always fetches 'latest', so the checksum provides real protection only if the file at that URL hasn't changed. This is a standard medium-risk pattern for proprietary binary AUR packages: not clearly malicious, but a real supply-chain trust concern due to the prebuilt binary from a vendor-controlled host with a mutable 'latest' URL (mitigated somewhat by the sha256 check).
PKGBUILD
1 offending line(s) highlighted# Maintainer: jeryd leuck <jerydleuck@gmail.com>
pkgname=msty-claw-bin
pkgver=0.7.0
pkgrel=1
pkgdesc="Msty Claw is an autonomous AI agent application designed for complex task orchestration (Beta)"
arch=('x86_64')
url="https://msty.ai/claw"
license=('custom:proprietary')
depends=('gtk3' 'webkit2gtk-4.1' 'openssl' 'libdbus' 'libglvnd' 'hicolor-icon-theme')
optdepends=('cuda: NVIDIA GPU acceleration'
'rocm-core: AMD GPU acceleration'
'docker: Intel GPU acceleration (via ipex-llm container workaround)'
'libpulse: PulseAudio/Pipewire support')
provides=('msty-claw')
conflicts=('msty-claw')
filename="MstyClaw_amd64_${pkgver}.deb"
source=("$filename::https://next-assets.msty.studio/mstyclaw/latest/linux/MstyClaw_amd64.deb?ver=$pkgver")
sha256sums=('d05967d6ce920b865b1b58cb6612e68b1f0426e4b00e3f07c29b89c50d83156d')
prepare() {
mkdir -p "$srcdir/pkg-contents"
bsdtar -xOf "$srcdir/$filename" data.tar.gz | bsdtar -C "$srcdir/pkg-contents" -xv
}
check() {
find "$srcdir/pkg-contents" -type f -exec sh -c 'file "$1" | grep -q ELF' _ {} \; -print | while read -r elf; do
if ldd "$elf" | grep -q "not found"; then
echo "Broken dependencies in $elf:"
ldd "$elf" | grep "not found"
exit 1
fi
done
}
package() {
# Copy extracted files to pkgdir (do not preserve ownership to support container builds)
cp -a --no-preserve=ownership "$srcdir/pkg-contents/." "$pkgdir/"
# Create symlink for terminal access
install -d "$pkgdir/usr/bin"
ln -sf /usr/bin/MstyClaw "$pkgdir/usr/bin/msty-claw"
# Install Licenses
install -Dm644 "$pkgdir/usr/lib/Msty Claw/_up_/THIRD_PARTY_NOTICES.txt" "$pkgdir/usr/share/licenses/$pkgname/THIRD_PARTY_NOTICES.txt"
}
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-03 00:08:14 | MEDIUM | 2 |
| 2026-08-02 00:16:08 | MEDIUM | 2 |
| 2026-08-01 00:11:18 | MEDIUM | 2 |
| 2026-07-31 00:14:10 | MEDIUM | 2 |
| 2026-07-30 00:17:23 | MEDIUM | 2 |
| 2026-07-29 00:25:53 | MEDIUM | 2 |
| 2026-07-28 00:07:28 | MEDIUM | 2 |
| 2026-07-27 00:24:32 | MEDIUM | 2 |
| 2026-07-26 00:07:32 | MEDIUM | 2 |
| 2026-07-25 00:13:44 | MEDIUM | 2 |
| 2026-07-24 00:02:28 | MEDIUM | 2 |
| 2026-07-23 00:14:47 | MEDIUM | 2 |
| 2026-07-22 00:29:32 | MEDIUM | 2 |
| 2026-07-21 00:24:15 | MEDIUM | 2 |
| 2026-07-20 00:19:49 | MEDIUM | 2 |
| 2026-07-19 00:17:08 | MEDIUM | 2 |
| 2026-07-18 00:14:48 | MEDIUM | 2 |
| 2026-07-17 00:06:16 | MEDIUM | 2 |
| 2026-07-16 00:05:41 | MEDIUM | 2 |
| 2026-07-15 00:09:25 | MEDIUM | 2 |