Skip to content

RFC: Plugin Architecture minimal kernel #101

Description

@ali90h

RFC: Plugin Architecture minimal kernel

Problem
The current architecture is monolithic, making extensibility hard and discouraging community-driven features. This RFC addresses the need for a minimal, modular plugin kernel that separates core logic from user- or third-party extensions.

Goals / Non-Goals

  • Goals:
    • Enable plugin-based extension
    • Minimize kernel surface
    • Simple API for plugin registration
  • Non-Goals:
    • Replacing all built-in features with plugins

Proposed Design (MVP)

  • New minimal kernel structure
  • Plugin registry API
  • Separate plugin directory
  • Example plugin implementation

Migration & Compatibility

  • Support legacy commands via shims
  • Feature flag for opt-in

Deprecation approach

  • Gradual warnings
  • Shims for legacy paths

Risks & Alternatives

  • Plugin conflicts
  • Security of dynamic loading
  • Alternate: stick with monolith

Rollout Plan

  • Phase 0: spike/POC
  • Phase 1: Introduce feature flag
  • Phase 2: Gradual adoption
  • Phase 3: Documentation & migration

Success Metrics

  • Number of plugins developed
  • User feedback on extensibility

Test Plan

  • Coverage of plugin API
  • Golden tests for core/extension commands

Tasks

  • spike
  • implement MVP
  • shims/compat
  • docs
  • before/after metrics
  • PR sequence

Ownership & Timeline
Owner: @ali90h
ETA: 2025-09-30


Linked from #40.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions