What's New in GHOSTS 9¶
Version 9.1¶
Automatic NPC pools and default workflows on execution¶
Creating an execution now brings a scenario to life automatically:
- NPC pools — each
UserPool(role + count) defined on the scenario generates that many execution-scoped NPCs when the execution is created. They are grouped byCampaign= scenario name,Enclave= run name, andTeam= pool role. Pool NPCs exist as a population regardless of whether they are assigned to a machine (they may live in "greyspace"). - Default n8n workflows — scenarios are seeded with a default set of animation workflow bindings (Belief, Social Graph, Post to Social Media). When an execution starts, these are scheduled on their cron and fired via n8n. Bindings are editable per scenario, referenced by stable webhook path, and the referenced workflows are activated in n8n automatically if inactive.
Database is recreated on upgrade¶
Breaking: GHOSTS uses
EnsureCreated()and does not run EF migrations. The 9.1 schema adds ascenarioworkflowbindingstable, so an existing 9.0 database must be dropped and recreated — it will not be altered in place. There is no automatic migration path.
To upgrade, delete the ghosts database (or its Postgres volume) and restart the API; it recreates the schema and re-seeds on startup. Back up any data you need first.
Version 9.0¶
Angular 20 Frontend¶
The previous Next.js UI has been replaced by a full Angular 20 management application (src/Ghosts.Frontend). It is served at port 4200 (or port 80 inside the Docker container) and covers:
- Machines — register, search, group, view activity history, push timeline updates
- Machine Groups — create and manage groups; deploy timelines to all members at once
- Timelines — browse, create, and assign timeline templates
- NPCs — view and generate NPC personas; browse belief state and social connections
- Scenarios — define, execute, and track training scenarios
- Animations — start and stop Social Graph, Social Sharing, Social Belief, Chat, and Full Autonomy animation jobs
- Operations Dashboard — real-time overview of NPC activity and system health
- Belief Explorer — visualize NPC cognitive state evolution over time
- RangerAI / n8n Workflows — schedule and monitor n8n webhook-triggered workflows with a live execution log
Configuration is provided via src/Ghosts.Frontend/src/assets/config.json:
{
"apiUrl": "http://localhost:5000/api",
"n8nApiUrl": "http://localhost:5678"
}
.NET 10¶
The API (Ghosts.Api) and content server (Ghosts.Pandora) are now built on .NET 10.
n8n Workflow Integration¶
GHOSTS can schedule n8n workflows on a cron schedule and call their production webhook URLs. Each execution result (success or failure with HTTP status and response preview) is surfaced in real time via the Angular frontend's live execution log.
Environment variables required on the API container:
| Variable | Example | Purpose |
|---|---|---|
N8N_API_URL |
http://n8n:5678/api/v1/workflows |
n8n REST API endpoint |
N8N_API_KEY |
eyJ... |
n8n API key |
Operations Dashboard¶
New dashboard page in the frontend providing a real-time overview of connected machines, active NPC animations, and recent timeline executions.
Belief Explorer¶
New view for inspecting individual NPC belief states, including how beliefs have evolved over simulation steps.
.NET Aspire Host¶
src/apphost provides an optional .NET Aspire application host that orchestrates the full local development stack (API, Frontend, PostgreSQL, QDRANT, Pandora, n8n, Grafana) with integrated service discovery and health dashboards.