# Maintainer: callie
pkgname=pi-coding-agent
pkgver=0.0.3
pkgrel=1
pkgdesc='Interactive coding agent CLI'
arch=('any')
url='https://codeberg.org/cowie/tau'
license=('MIT')
depends=('nodejs>=20.6.0')
makedepends=('npm' 'git')
source=("git+https://codeberg.org/cowie/tau.git")
sha256sums=('SKIP')

build() {
  cd tau
  npm install
  npm run build

  # pack all workspace packages into tarballs
  mkdir -p "$srcdir/tarballs"
  for pkg in tui ai agent coding-agent; do
    npm pack --workspace "packages/$pkg" --pack-destination "$srcdir/tarballs"
  done
}

package() {
  local _libdir="$pkgdir/usr/lib/$pkgname"
  install -dm755 "$_libdir"

  cd "$srcdir/tarballs"

  # install from local tarballs only, no registry access
  npm install --prefix "$_libdir" --omit=dev --no-audit --no-fund \
    mariozechner-pi-tui-*.tgz \
    mariozechner-pi-ai-*.tgz \
    mariozechner-pi-agent-core-*.tgz \
    mariozechner-pi-coding-agent-*.tgz

  install -dm755 "$pkgdir/usr/bin"
  ln -s "/usr/lib/$pkgname/node_modules/@mariozechner/pi-coding-agent/dist/cli.js" \
    "$pkgdir/usr/bin/pi"
}
