Make the func-based channel wiring contract explicit instead of relying on an anonymous interface inside New(). This keeps the extension point discoverable and aligned with the repository's AX-style API clarity.
Co-Authored-By: Virgil <virgil@lethean.io>
Align the IDE bridge and brain subsystem public types with the repo's AX-style comment convention by adding concrete usage examples for bridge messages, DTOs, and helper callbacks.
Co-Authored-By: Virgil <virgil@lethean.io>
Return copies from service accessors and ignore nil subsystems during construction to keep the MCP service API stable and AX-friendly.
Co-Authored-By: Virgil <virgil@lethean.io>
Reorder subsystem notification wiring so channel callbacks are available before tool registration, and add usage-example comments to the public notification DTOs and helpers.
Co-Authored-By: Virgil <virgil@lethean.io>
Remove the duplicate brain-local notifier interface and use the shared pkg/mcp Notifier type directly. Also align stale test comments with the current Options constructor API.
Co-Authored-By: Virgil <virgil@lethean.io>
Make notification broadcasting tolerant of a nil context and make TCP transport fall back to DefaultTCPAddr when no address is supplied.
Co-Authored-By: Virgil <virgil@lethean.io>
Guard the notification broadcast helpers against nil Service and nil server values so they degrade to no-ops instead of panicking. Add coverage for zero-value and nil-server use.
Co-Authored-By: Virgil <virgil@lethean.io>
Core MCP already implements the RFC-shape functionality; this pass tightens the AX surface by adding usage-example comments to public constructors and config helpers.
Co-Authored-By: Virgil <virgil@lethean.io>
Update stale MCP service and CLI descriptions so they match the current runtime shape, and log the actual bound TCP address when listening on an ephemeral port.
Co-Authored-By: Virgil <virgil@lethean.io>
Add support for plans://, sessions://, and content:// resources via the MCP API controller instead of returning 501 for every request.\n\nCo-Authored-By: Virgil <virgil@lethean.io>
Allow the IDE bridge to register multiple observers so the IDE and brain subsystems can both react to inbound Laravel messages. Brain recall notifications now fire from the bridge callback with the real result count instead of the request path, and the brain provider follows the same async notification flow.
Co-Authored-By: Virgil <virgil@lethean.io>
Keep channel emitters, provider metadata, and capability advertising in sync by sharing the same constants across the MCP subsystems.
Co-Authored-By: Virgil <virgil@lethean.io>
Advertise and emit build.start when a bridged build enters a running state, alongside the existing complete/fail lifecycle events.
Co-Authored-By: Virgil <virgil@lethean.io>