Dorian 7b56927c3c feat: complete AIUI integration — all 31 overnight tasks
- Protocol: 10 context categories (apps, system, network, bitcoin, media, files, notes, search, ai-local, wallet)
- ContextBroker: real data wiring for all categories with sanitization
- Permissions: user toggles for all categories in Settings
- Nginx: Claude API, OpenRouter, SearXNG proxy pass-through
- Actions: launch-app, search-web, install-app handlers
- Chat.vue: loading state + connection indicator
- Integration test page: test-aiui.html

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 14:34:02 +00:00

1.4 KiB

name, description, allowed-tools, argument-hint
name description allowed-tools argument-hint
lint Run all linters and type checks for the Archipelago project Bash, Read, Grep [backend|frontend|all]

Run linters and type-checks for $ARGUMENTS (default: all).

Frontend Linting

cd neode-ui

# Type check
npm run type-check 2>&1

# Check for any `any` types (should be zero)
grep -rn ': any' src/ --include='*.ts' --include='*.vue' | grep -v node_modules | grep -v '.d.ts'

# Check for inline Tailwind violations (long class strings)
grep -rn 'class="[^"]\{100,\}"' src/ --include='*.vue'

# Check for TODO/FIXME
grep -rn 'TODO\|FIXME' src/ --include='*.ts' --include='*.vue'

# Check for console.log (should be cleaned before production)
grep -rn 'console\.\(log\|warn\|error\)' src/ --include='*.ts' --include='*.vue' | wc -l

Backend Linting (on dev server)

sshpass -p 'EwPDR8q45l0Upx@' ssh -o StrictHostKeyChecking=no archipelago@192.168.1.228 \
  'source ~/.cargo/env && cd ~/archy/core && cargo clippy --all-targets --all-features 2>&1 && cargo fmt --all -- --check 2>&1'

Script Linting

# Check for scripts missing set -e
for f in scripts/*.sh; do
  if ! head -5 "$f" | grep -q 'set -e'; then
    echo "MISSING set -e: $f"
  fi
done

# Check for hardcoded IPs (should use variables)
grep -rn '192\.168\.1\.' scripts/ --include='*.sh' | grep -v deploy-config

Report all issues found with severity (critical/warning/info).