workbuddy-bin

maintainer oskarihelenius · 2 votes · scanned 2026-08-03 00:08:14.047287
MEDIUM
View on AUR ↗
Why flagged Two genuine supply-chain concerns exist here: (1) The primary source is a macOS DMG pulled from download.codebuddy.cn (a Chinese CDN/vendor host, not a well-known official mirror) with SKIP'd checksums, meaning there is no integrity verification of the binary blob that gets unpacked and installed as the application. (2) During build(), npm install fetches @vscode/ripgrep, @vscode/sqlite3, and @vscode/spdlog from the npm registry without any pinned versions or lockfile, so the exact packages installed are determined at build time by whatever npm resolves. These are legitimate @vscode-scoped packages, but the lack of version pinning is a real (if low-probability) supply-chain risk. The SKIP checksums on the DMG are the more serious issue: any MITM or compromise of download.codebuddy.cn would silently deliver a different binary. Additionally, extracting a macOS DMG to install on Linux is non-standard and the resulting binary blob is not reproducible. The package is not clearly malicious, but the combination of an unverified binary from a non-standard host plus unpinned npm dependencies at build time constitutes a real medium-severity supply-chain concern.

Triggered rules

MEDIUM npm/yarn/pnpm install of an undeclared external package npm_install_external

Runs `npm/yarn/pnpm install <package>` for a package not in source=(), pulling unpinned, unreviewed code at build time. Severity downgraded: the package declares/looks like a Node.js consumer, where build-time installs are expected.

  • PKGBUILD:37 npm install @vscode/ripgrep @vscode/sqlite3 @vscode/spdlog --omit=dev
MEDIUM source=() URL on a non-standard host 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:22 source=("https://download.codebuddy.cn/workbuddy/saas/darwin-x64/WorkBuddy-darwin-x64-${pkgver}-${_commit}.dmg"
MEDIUM AI review llm_review

An AI model (anthropic/claude-4.6-sonnet-20260217) reviewed this and agrees it is MEDIUM (confidence 82%): Two genuine supply-chain concerns exist here: (1) The primary source is a macOS DMG pulled from download.codebuddy.cn (a Chinese CDN/vendor host, not a well-known official mirror) with SKIP'd checksums, meaning there is no integrity verification of the binary blob that gets unpacked and installed as the application. (2) During build(), npm install fetches @vscode/ripgrep, @vscode/sqlite3, and @vscode/spdlog from the npm registry without any pinned versions or lockfile, so the exact packages installed are determined at build time by whatever npm resolves. These are legitimate @vscode-scoped packages, but the lack of version pinning is a real (if low-probability) supply-chain risk. The SKIP checksums on the DMG are the more serious issue: any MITM or compromise of download.codebuddy.cn would silently deliver a different binary. Additionally, extracting a macOS DMG to install on Linux is non-standard and the resulting binary blob is not reproducible. The package is not clearly malicious, but the combination of an unverified binary from a non-standard host plus unpinned npm dependencies at build time constitutes a real medium-severity supply-chain concern.

PKGBUILD

2 offending line(s) highlighted
1# Maintainer: Rongbo <wurongbo2012@hotmail.com>
2
3pkgname=workbuddy-bin
4pkgver=4.10.4.26327962
5pkgrel=1
6_commit=85c7979b
7pkgdesc="Work Smart,Not Hard"
8arch=('x86_64' 'aarch64')
9url="https://www.codebuddy.ai/agents"
10license=('custom')
11depends=('electron')
12makedepends=('7zip'
13 'npm'
14 'libicns'
15)
16checkdepends=()
17optdepends=(
18 'gnome-shell-extension-appindicator'
19)
20provides=()
21conflicts=()
22source=("https://download.codebuddy.cn/workbuddy/saas/darwin-x64/WorkBuddy-darwin-x64-${pkgver}-${_commit}.dmg"
23WorkBuddy.desktop
24)
25sha256sums=('SKIP'
26'SKIP'
27)
28
29prepare() {
30 rm -rf WorkBuddy/WorkBuddy.app/Contents/Resources/app
31 7z x WorkBuddy-darwin-x64-${pkgver}-${_commit}.dmg
32 mkdir -p WorkBuddy/WorkBuddy.app/Contents/Resources/node_modules
33}
34
35build() {
36 cd WorkBuddy/WorkBuddy.app/Contents/Resources
37 npm install @vscode/ripgrep @vscode/sqlite3 @vscode/spdlog --omit=dev
38 cp -a node_modules/* app/node_modules/
39 icns2png -x WorkBuddy.icns
40}
41
42package() {
43 install -D WorkBuddy.desktop ${pkgdir}/usr/share/applications/workbuddy.desktop
44 cd WorkBuddy/WorkBuddy.app/Contents/Resources
45 install -D WorkBuddy_512x512x32.png ${pkgdir}/usr/share/icons/hicolor/512x512/apps/WorkBuddy.png
46 install -D WorkBuddy_1024x1024x32.png ${pkgdir}/usr/share/icons/hicolor/1024x1024/apps/WorkBuddy.png
47 install -d ${pkgdir}/usr/lib/workbuddy
48 install -d ${pkgdir}/usr/share/licenses/workbuddy
49 mv app/*txt ${pkgdir}/usr/share/licenses/workbuddy/
50 cp -a app/* ${pkgdir}/usr/lib/workbuddy/
51 install -Dm 755 /dev/stdin "${pkgdir}/usr/bin/workbuddy" <<EOF
52#!/usr/bin/bash
53exec electron /usr/lib/workbuddy/out/main.js "\$@"
54EOF
55}
56

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 MEDIUM 3
2026-08-02 00:16:08 MEDIUM 3
2026-08-01 00:11:18 MEDIUM 3
2026-07-31 00:14:10 MEDIUM 3
2026-07-30 00:17:23 MEDIUM 3
2026-07-29 00:25:53 MEDIUM 3
2026-07-28 00:07:28 MEDIUM 3
2026-07-27 00:24:32 MEDIUM 3
2026-07-26 00:07:32 MEDIUM 3
2026-07-25 00:13:44 MEDIUM 3
2026-07-24 00:02:28 MEDIUM 3
2026-07-23 00:14:47 MEDIUM 3
2026-07-22 00:29:32 MEDIUM 3
2026-07-21 00:24:15 MEDIUM 3
2026-07-20 00:19:49 MEDIUM 3
2026-07-19 00:17:08 MEDIUM 3
2026-07-18 00:14:48 MEDIUM 3
2026-07-17 00:06:16 MEDIUM 3
2026-07-16 00:05:41 MEDIUM 3
2026-07-15 00:09:25 MEDIUM 3

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion