Deadline: Feb 26, 2026 5 PM PT (13 days from Feb 13) Status: DEV - Core infrastructure verified, API integration next
Last check: 2026-02-13 17:49 UTC
- Factory I/O running (PID 14872, port 502)
- PLC API healthy at :8000 (
{"status": "healthy", "version": "0.1.0"}) - PLC connected to Factory I/O (ESTABLISHED connection)
- I/O data flowing (
motor_running: true, coils/registers updating)
- Full codebase exists (
sim/,cosmos/,video/,services/plc-modbus/) - Integration architecture documented (
docs/integration_architecture.md) - Cosmos client stub ready for real API (
cosmos/client.py) - Cosmos API credentials available (
NVIDIA_COSMOS_API_KEYNOT SET) - Docker stack running locally
- BLOCKER: No Cosmos Reason 2 API key — need to apply at build.nvidia.com
- With stub (no real Cosmos): Ready now — just start Docker and bridge
- With real Cosmos API: +1 day after getting API key
- PLC laptop on Tailscale (100.72.2.99)
- Factory I/O running on PLC laptop
- PLC API running and connected to Factory I/O
- Bridge code exists (
sim/factoryio_bridge.py) - Config exists (
config/factoryio.yaml) - Cosmos agent code exists (
cosmos/agent.py,cosmos/client.py) - Video pipeline code exists (
video/*.py) - Integration architecture documented
- Docker stack running (Postgres)
- Bridge polling PLC API → Matrix
- End-to-end test: Factory I/O jam → Matrix → Cosmos insight (stub)
- Get Cosmos Reason 2 API access (NVIDIA Build or AWS)
- Swap stub for real Cosmos calls in
cosmos/client.py - Accumulate 24-48 hrs of analyzed footage
- Build 3-minute demo video
- Polish README and docs for judges
- Project description written
- Demo video rendered and uploaded
- GitHub repo public and clean
- Submit before 5 PM PT
- PLC laptop verified running (Factory I/O + API)
- Integration architecture documented
- Repo audit completed
- Apply for Cosmos API access — See Discord message below
- Start Docker:
cd infra/local && docker-compose up -d - Run bridge:
python sim/factoryio_bridge.py - Trigger test jam in Factory I/O
- Verify Cosmos stub generates insight
Post this in #questions on the Cosmos Cookoff Discord:
Hi! Working on the Factory LM project for the Cookoff. We have Factory I/O simulation + PLC tags flowing via a FastAPI service, and our Cosmos client stub is ready (
cosmos/client.py).Need to swap in real Cosmos Reason 2 API calls. What's the fastest path to API access?
- NVIDIA Build (build.nvidia.com)?
- AWS Marketplace?
- Local model download?
Any rate limits or usage tiers for competition projects? Thanks!
┌────────────────────────────────────────────────────────────────────────┐
│ COSMOS COOKOFF STACK │
├────────────────────────────────────────────────────────────────────────┤
│ │
│ PLC LAPTOP (100.72.2.99) │
│ ┌────────────────────┐ Modbus ┌───────────────────────────────┐│
│ │ Factory I/O :502 │◄────────────►│ PLC API (FastAPI) :8000 ││
│ │ "Sorting by Height"│ coils/regs │ GET /api/plc/io ││
│ └────────────────────┘ │ GET /api/health ││
│ └───────────────┬───────────────┘│
│ │ │
│ Tailscale │ HTTP │
│ ▼ ▼ │
│ TRAVEL LAPTOP (Coordinator) │
│ ┌─────────────────┐ ┌──────────────┐ ┌───────────────────────┐ │
│ │ factoryio_bridge│───►│ Matrix API │───►│ Postgres (matrix_dev) │ │
│ │ polls :8000 │ │ incidents │ │ :5432 │ │
│ └─────────────────┘ └──────┬───────┘ └───────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────┐ │
│ │ Cosmos Agent │────► Cosmos Reason 2 API │
│ │ cosmos/ │ (NVIDIA Cloud) │
│ └──────────────┘ │
│ │
└────────────────────────────────────────────────────────────────────────┘
| File | Purpose |
|---|---|
sim/factoryio_bridge.py |
Polls PLC API, posts to Matrix |
config/factoryio.yaml |
Modbus addresses, Matrix URL |
cosmos/agent.py |
Watches incidents, calls Cosmos |
cosmos/client.py |
Cosmos API wrapper (stub → real) |
video/*.py |
Video diary pipeline |
infra/local/docker-compose.yml |
Postgres stack |
docs/integration_architecture.md |
Full architecture doc |
# Required for real Cosmos (not stub)
export NVIDIA_COSMOS_API_KEY="your-key-here"
# PLC connection (defaults work for our setup)
export PLC_HOST="100.72.2.99"
export MATRIX_URL="http://localhost:8000"Last updated: 2026-02-13 17:50 UTC by coordinator bot