OC Chat — interactive CLI client with a ReAct agentic loop.
Purpose
-------
Top-level package marker. Features streaming chat with reasoning
(chain-of-thought), tool use, session management, context
compression, and agentic multi-step planning. Provider-agnostic
since Phase C — the active backend is selected via the
``OC_CHAT_PROVIDER`` env var (default ``deepseek``).
Responsibilities
----------------
- Mark ``oc_chat/`` as a Python package.
- Hold the engine subpackages: ``core`` (provider-agnostic engine),
``tools`` (filesystem / shell / web / memory / planner / oct),
``tests`` (unit + integration suites).
- Provide ``main.py`` as the REPL entry point.
Diagnostics
-----------
Domain: OC_CHAT.MAIN
Levels:
L2 — lifecycle events
L3 — semantic details
L4 — deep tracing
Contracts
---------
- Module-level L4 ``_dbg`` is a diagnostics-coverage marker; it
emits nothing at default verbosity (domain default is L2).
Dependencies
------------
- oc_diagnostics (structured debug logging via _dbg)
- oc_chat._env_guard (load_dotenv_guarded - loads .env at package import, refusing the security-authority vars)