**As a maintainer,** I want an `IAgent` interface, so that agents are consistent and composable. AC `id`, `name`, `description`, `modes[]`, `run(context) -> AgentResult`. No direct UI dependencies inside agent implementations.
As a maintainer, I want an
IAgentinterface, so that agents are consistent and composable.AC
id,name,description,modes[],run(context) -> AgentResult.No direct UI dependencies inside agent implementations.