Skip to content

[OMEGA-205] Communication channel extension API proposal#169

Closed
vsbogd wants to merge 4 commits into
asi-alliance:mainfrom
vsbogd:extension-api
Closed

[OMEGA-205] Communication channel extension API proposal#169
vsbogd wants to merge 4 commits into
asi-alliance:mainfrom
vsbogd:extension-api

Conversation

@vsbogd

@vsbogd vsbogd commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

Description

I rasied this to discuss possible extension API implementation.

What is implemented:

  • websearch is moved out from the channels.metta module into the skills.metta
  • all communication channels are implemented as independent modules thus new module can be added without modifying the code of the OmegaClaw-Core

Communication channel should provide <name>.metta file which contains implementations of the following functions:

  • (commChannelInit) - initializes communication channel, it is called once before other functions are called
  • (commChannelReceiveMessage) - returns the next received message from user, if there are few messages received it returns the oldest one
  • (commChannelSendMessage $msg) - sends message to the user

User should use commchannel=<name> parameter to load corresponding communication channel and pass all necessary arguments via additional command line parameters. The list of parameters is channel specific and specified by the channel itself.

Additional extension folder under OmegaClaw-Repo root can be used to keep extensions which are not part of the OmegaClaw-Core code.

Python module can be used to implement communication channel if it contains two functions:

def commChannelReceiveMessage():
    # return "<recieved message>"
    pass

def commChannelSendMessage(text):
    # send text as a message
    pass    

Then the name of the module can be used as a name of the communication channel. The module is loaded and used as a communication point.

How Has This Been Tested?

Build docker image, run using IRC and Minimax, ask "What is the distance to the Sun?" question.

Checklist

  • The code generated by LLM is reviewed by the PR creator
  • Self-review completed
  • Test scenarios above are passed with the version of the code from PR

@vsbogd
vsbogd marked this pull request as draft June 10, 2026 17:23
@vsbogd
vsbogd force-pushed the extension-api branch 4 times, most recently from 6ddee30 to 3379e91 Compare June 11, 2026 07:40
@vsbogd vsbogd changed the title [WIP] [OMEGA-89] Extension API proposal [WIP] [OMEGA-89] Communication channel extension API proposal Jun 26, 2026
vsbogd added 2 commits June 26, 2026 17:45
Each integration can be added and loaded independently without modifying
the main source code.
Websearch is not communication plugin thus it should be moved into other
skills directory.
vsbogd added 2 commits June 26, 2026 21:02
Passing name of the module as the name of the channel allow loading
module from the Python path and using it as a communication channel.
@vsbogd vsbogd changed the title [WIP] [OMEGA-89] Communication channel extension API proposal [OMEGA-89] Communication channel extension API proposal Jun 26, 2026
@vsbogd
vsbogd marked this pull request as ready for review June 26, 2026 18:24
@vsbogd vsbogd changed the title [OMEGA-89] Communication channel extension API proposal [OMEGA-205] Communication channel extension API proposal Jun 26, 2026
@blackhammer116

Copy link
Copy Markdown
Collaborator

Hey @vsbogd, won't extending or adding new channels still require modifications to the core by adding not only new .metta files but also their extention of comm channels?

@vsbogd

vsbogd commented Jun 30, 2026

Copy link
Copy Markdown
Collaborator Author

Hey @vsbogd, won't extending or adding new channels still require modifications to the core by adding not only new .metta files but also their extention of comm channels?

No. If one need adding new communication channel integration written in Python it is enough to install the Python module (let's say mycommchannel) and then use provider=mycommchannel command line argument.

@vsbogd

vsbogd commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator Author

Replaced by #222

@vsbogd vsbogd closed this Jul 1, 2026
@vsbogd
vsbogd deleted the extension-api branch July 15, 2026 15:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants