Skip to content

Create personas for hermes-agent and openclaw #1624

Description

@joequant

Problem

Jupyter AI should integrate with hermes-agent and openclaw. This would be very useful as it would allow jupyter AI to integrate with the agent ecosystem which includes things like citation and research queries, and also contains features such as memory and web search.

Proposed Solution

There has been some test coding to figure out how to integrate the two

  • The first approach was to use jupyternaut to c0nnnect to the agents through the OpenAI interface. In doing so we found incompatibilities in the communications protocols. Some of these were outright bugs, and those that are clearly bugs have been had PR sent. The problem is that special coding in workflows into Jupyternaut creates brittle code.

  • The second approach is to create a persona using ACP. However, the issue is that ACP is optimized for agents that run in the same session and machine as the harness. Typically openclaw and hermes-agent run in separate servers.

  • The approach which I think will work would be to include all of the variants of the OpenAI protocol in Jupyternaut and then subclass jupyternaut to create openclaw and hermes-agent specific personas. Alternatively it may be possible to subclass BasePersona directly, but Jupyternaut contains a lot of code that serves as an adapter between JupyterAI and an OpenAI chat protocol. This will turn Jupyternaut into a general adapter to models, and the have subclassed Personas handle individual tweaks that are model specific.

Additional context

This is in the context of

https://github.com/hkphysics/ai-server

What I have done is to put openwebui and jupyter in one system which accesses the same set of models and share authentication. What I want to do from a user point of view not to copy and paste as much between openwebui and jupyterlab. Right now a lot of my workflow involves running an query on jupyterlab, cutting and pasting into openwebui and then cutting and pasting back. This is workable but reduces "flow".

What I really want to do is to use jupyterlab to write papers and then be able to immediately do translations, citation checks, and grammar checks. and also be able to control jupyterlab from openwebui.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions