You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jul 24, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Jul 24, 2026. It is now read-only.
Allow for extensions on the context (global, host, workspace, parsers) through config file #1954
Add the ability to extend GenAIScript's core contexts (global, host, workspace, parsers) through a plugin system, enabling users to add custom functionality without modifying core code.
Motivation
Currently, extending GenAIScript requires modifying core files or creating wrapper implementations. Users should be able to:
This is a well-structured proposal with clear motivation and benefits. The need for plugin-based extensibility for GenAIScript is compelling, as it enables modularity, reusability, and adaptability to domain-specific requirements.
A few points to clarify:
Can you describe how the framework will handle conflicts if multiple plugins attempt to extend or overwrite the same context property (e.g., parsers.readProto)? Will there be a priority system or warnings?
Does the plugin API allow for async setup/init, and how would this impact the overall startup sequence? Are there scenarios where plugin initialization order should be controlled?
Would plugins have access only to exposed extension APIs, or is exposing more of the internal framework for advanced plugin authors under consideration?
Lifecycle hooks (e.g., beforeRun/afterRun): Should plugins be able to register for specific framework lifecycle phases, and are there plans for a standardized hook API?
Are there security/sandboxing considerations for loading third-party plugins, especially if plugins can operate at the host or global level?
Overall, the issue provides a strong foundation for a plugin system discussion; addressing the above points could clarify integration, safety, and extensibility.
AI-generated content by issue-reviewer may be incorrect. Use reactions to eval.
Add the ability to extend GenAIScript's core contexts (global, host, workspace, parsers) through a plugin system, enabling users to add custom functionality without modifying core code.
Motivation
Currently, extending GenAIScript requires modifying core files or creating wrapper implementations. Users should be able to:
.proto,.graphql, custom formats)Proposed Solution
Allow plugins to be registered via configuration file:
{ "plugins": ["./plugins/my-plugin.js", "genaiscript-plugin-database"] }Plugin API:
Benefits
Thoughts