[Problem]
As the framework grew, the API became fragmented across Registry, Executor, and EventEmitter. Developers had to manage multiple objects, and there was no standard way for an AI agent to "query" the system about its own health or usage stats.
[Why]
A "Platform" needs a single entry point (Facade) to reduce cognitive load for developers. Additionally, providing "System Modules" allows an AI agent to perform "Self-Introspection"—asking "What modules are available?" or "How much quota have I used?" through the same tool-calling interface it uses for business logic.
[How]
- Unified Facade: Created the
APCore class with 17 public methods (call, register, discover, etc.) as the primary SDK entry point.
- System Modules: Bootstrapped 9 built-in
system.* modules (e.g., system.health.summary, system.usage.module) that expose internal metrics via standard APCore schemas.
- Global Entry Points: Added 16 global functions (e.g.,
apcore.call()) for quick-start development.
[Problem]
As the framework grew, the API became fragmented across
Registry,Executor, andEventEmitter. Developers had to manage multiple objects, and there was no standard way for an AI agent to "query" the system about its own health or usage stats.[Why]
A "Platform" needs a single entry point (Facade) to reduce cognitive load for developers. Additionally, providing "System Modules" allows an AI agent to perform "Self-Introspection"—asking "What modules are available?" or "How much quota have I used?" through the same tool-calling interface it uses for business logic.
[How]
APCoreclass with 17 public methods (call, register, discover, etc.) as the primary SDK entry point.system.*modules (e.g.,system.health.summary,system.usage.module) that expose internal metrics via standard APCore schemas.apcore.call()) for quick-start development.