Menu

#114 [Feature] An interface for adding plugins

closed
nobody
duplicate (1)
2025-08-28
2025-08-19
Anonymous
No

Originally created by: HaysonC

Is your feature request related to a problem? Please describe.
Yes. As the project evolves, the core is beginning to include features (e.g., LaTeX rendering) that, while useful, are arguably outside the scope of a minimal Instagram CLI interface. Without a standardized and developer-friendly plugin interface, contributions for extended or experimental functionality are tightly coupled to the main codebase, making maintenance and scalability harder.

Describe the solution you'd like
I propose introducing a modular plugin system that allows developers to extend the functionality of instagram-cli by writing external plugins. These plugins should be:

  • Installed via the CLI using a command like:

bash instagram plugin add https://github.com/username/plugin-repo.git

  • Defined with a clear API/contract to register new features (e.g., commands, hooks, rendering methods).
  • Discoverable and loadable dynamically, with minimal setup required.

Once implemented, existing features that are not core to Instagram's basic functionality (like LaTeX rendering) can be migrated into plugins, keeping the core lightweight and focused.

This will also encourage experimental or advanced plugins (e.g., an AI autocompletor, analytics, scheduling assistants, etc.) without bloating the main project.

Describe alternatives you've considered

  • Keeping all features in the core and simply toggling them via config. This is not scalable and still bloats the main codebase.
  • Forking for advanced use cases. This leads to fragmentation and duplicated effort.

Additional context

  • A good example of CLI plugin architecture is how poetry or kubectl handles subcommands from external binaries or packages.
  • Plugins can also encourage community engagement and foster innovation around the project.
  • This should be developed in phases, and while developing the project as a whole, we should have plugin friendliness in mind.

Related

Tickets: #118
Tickets: #40

Discussion

  • Anonymous

    Anonymous - 2025-08-20

    Originally posted by: supreme-gg-gg

    Agreed, this was planned but put to backlog for now lol [#40], feel free to propose designs and implementations
    cc @endernoke

     

    Related

    Tickets: #40

  • Anonymous

    Anonymous - 2025-08-20

    Originally posted by: endernoke

    Yea I'd say this would definitely be the future direction of the project 👍

     
  • Anonymous

    Anonymous - 2025-08-28

    Originally posted by: supreme-gg-gg

    Closing this as duplicate of [#40] since it contains more info, pls comment on that issue

     

    Related

    Tickets: #40

  • Anonymous

    Anonymous - 2025-08-28

    Ticket changed by: supreme-gg-gg

    • status: open --> closed
     

Log in to post a comment.

Monday.com Logo