The system starts from an empty clone. What is missing, you bring, and you are told before you start rather than after.
| Docker | with the Compose plugin. |
| Disk | about 3 GB, including the knowledge base. |
| Your own keys | The scraper calls a language model for the extraction step. No key is provided: you use your own account. Without one, everything else starts and only extraction is unavailable. |
git clone https://github.com/Finbiz-chicago/stack.git cd stack cp .env.example .env # fill it in; nothing is pre-filled ./bootstrap.sh # downloads the data, restores it, starts
The stack listens on local ports. It assumes no reverse proxy, no domain name and no certificate: it runs on a bare machine.
./smoke-test.sh
The test queries the database and the services for real. It fails if a variable is missing or
the data was not restored, and --self-check proves it can fail at all: a test that
cannot say no says nothing when it says yes.
The chat interface serves its page as soon as the stack is up, but question and
answer stays dead until the n8n workflows are imported from
services/chat/n8n_workflows/ and their credentials entered by hand. Nothing ships
with credentials. Expect this on day one; it is not a fault.
Entering records into the partner directory is driven from a browser where a person has logged in themselves. No directory credential exists on the server and no program holds one. That is a deliberate constraint, not a gap.