import { setupManifest } from '@start9labs/start-sdk' /** * Boardroom Map manifest. * * Like the LLaMA-Factory and Nightshift services, this is a CONTROL PLANE — it * does not run any GPU workload itself. It is a small web UI + job runner that * SSHes into one or two NVIDIA DGX Sparks to: * 1. serve a panel of local LLMs with vLLM (loaded in waves to fit GPU memory), * 2. extract text from documents you drop in (PDF/DOCX/TXT/MD — done on the * StartOS box), ship it to the Sparks, and launch a panel of sandboxed * "reviewer" containers (each a model + a persona) that read the documents * and write a report, * 3. optionally run a local "lead reviewer" that synthesizes the panel's * reports into one consolidated report. * * There is NO frontier model and NO cloud API key. In the default `airgapped` * network mode the reviewer containers can reach ONLY the on-Spark model proxy — * the documents and their reviews never touch the internet. * * NOTE: s9pk.mk extracts the package identifier from the single-quoted value on * the line below, so keep that field on one line and avoid stray quotes above it. */ export const manifest = setupManifest({ id: 'boardroom-map', title: 'Boardroom Map', license: 'Apache-2.0', packageRepo: 'https://github.com/ten31/boardroom-map', upstreamRepo: 'https://github.com/ten31/boardroom-map', marketingUrl: 'https://github.com/ten31/boardroom-map', donationUrl: null, description: { short: 'A private panel of local LLMs that reviews your confidential documents on your DGX Sparks', long: 'Boardroom Map lets you drop confidential documents in and convene a panel of ' + 'local LLMs running on your NVIDIA DGX Sparks to review them. You choose ' + 'which models and which personas (lenses) sit on the panel and how many ' + 'reviews to run. Each reviewer reads the documents and writes a report; an ' + 'optional local lead reviewer synthesizes them into one consolidated ' + 'report. There is no frontier model and no cloud key: in the default ' + 'air-gapped mode the reviewers reach only the on-Spark model endpoint, so ' + 'your documents and their reviews never leave your hardware. No GPU is ' + 'needed on the StartOS host.', }, // Arch-agnostic orchestrator. Docker build paths are relative to the PROJECT // ROOT (where the Makefile runs), matching the Start9 convention. images: { main: { source: { dockerBuild: { dockerfile: './orchestrator.Dockerfile', workdir: '.', }, }, arch: ['x86_64', 'aarch64'], // The orchestrator only SSHes out + extracts document text on CPU; it never // touches a local GPU. nvidiaContainer: false, }, }, volumes: ['main'], dependencies: {}, hardwareRequirements: { ram: 2048, }, alerts: { install: 'Boardroom Map drives work on REMOTE machines (your DGX Sparks) over SSH; ' + 'nothing serves or runs on your StartOS server. After install: ' + '(1) "Configure Sparks" for SSH access, (2) "Configure Models" for the ' + 'local models to serve, (3) "Configure Reviewers" for the panel + personas, ' + '(4) "Configure Review" for the rubric and air-gap mode. Then drop ' + 'documents in the inbox and run "Run Review".', }, })