Metadata-Version: 2.4
Name: pitbridge
Version: 0.1.0
Summary: Local-first, guardrailed MCP bridge for NinjaTrader 8 — hard risk limits your AI agent cannot bypass.
Project-URL: Homepage, https://pitbridge.com
Project-URL: Documentation, https://pitbridge.com/docs/
Project-URL: Repository, https://github.com/ToolstackVault/pitbridge
Project-URL: Changelog, https://pitbridge.com/changelog/
Author: PitBridge
License-Expression: Apache-2.0
License-File: LICENSE
License-File: NOTICE
Keywords: ai-agent,algo-trading,futures,guardrails,local-first,mcp,model-context-protocol,ninjatrader,risk-management,trading
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Office/Business :: Financial :: Investment
Requires-Python: >=3.12
Requires-Dist: fastapi>=0.115
Requires-Dist: httpx>=0.27
Requires-Dist: mcp>=1.0
Requires-Dist: pydantic>=2.7
Requires-Dist: typer>=0.12
Requires-Dist: tzdata>=2024.1
Requires-Dist: uvicorn>=0.30
Requires-Dist: websockets>=12.0
Provides-Extra: dev
Requires-Dist: httpx>=0.27; extra == 'dev'
Requires-Dist: jsonschema>=4.21; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.24; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.6; extra == 'dev'
Description-Content-Type: text/markdown

# pitbridge (daemon)

Python 3.12 daemon that sits between AI agents (MCP / REST / WS) and the
NinjaTrader 8 AddOn (outbound WebSocket, port 8873). Binding spec:
`../docs/architecture.md`.

## Dev setup

```sh
cd daemon
uv venv --python 3.12
uv pip install -e ".[dev]"
uv run pytest
uv run ruff check .
```

Status: M2 daemon-core — protocol models (14 message types, schema-mirrored),
guardrail engine (M1), the AddOn WS link (hello/auth/heartbeat/snapshot/
reconnect-reconcile, reconcile-first hard), executor (idempotent pending-order
table + ack timeouts), the frozen pipeline (schema -> permission -> guardrails
-> confirm gate -> submit -> audit) as the single order path, the /v1 REST + WS
surfaces, and `tools/fake_addon.py` for chaos tests. `pitbridge run --config`
serves it. MCP surface + C# AddOn land in M3/M4.
