Skip to content

[CLI] Supports for "/" command to launch Agent Skills #343

Description

@xingyaoww

What problem or use case are you trying to solve?

Describe the UX or technical implementation you have in mind

I'd hope it is possible for the user to simply type "/", and then a dropdown menu will pop up similar to many IDEs. Then, this dropdown menu will contain the names/trigger words of existing microagents.

For example, a lot of time I'd ask the agent to "/remember everything" and it will trigger this to prompt the user to save memories in repo.md

Image

Acceptance Criteria

We should display Agent Skills and any available commands/ in a slash command menu in the CLI:

  • When the CLI starts up, it should look look for available Agent Skills. Those Agent Skills should then be user invocable through a Slash command based on the name attribute in the frontmatter of that Agent Skill.

    • For example, an Agent Skill named random-number should be invocable as /random-number
    • If the Agent Skill has frontmatter user-invocable: false set, then the Agent Skill should NOT appear in the slash command menu
  • If the CLI is also started with a Plugin, any slash commands in that commands/ directory should also be made available in the slash command menu.

**Additional context**

We first need to implement a /conversation/{conv_id}/microagents endpoint to retrieve all the available/possible microagents in that conversation. Microagent for a particular conversation can be found in the .repo_microagents and .knowledge_microagents attribute of self.memory in openhands/server/session/agent_session.py.

Then we need to implement a frontend UI to communicate with that backend endpoint to render and select "triggers". When a microagent is selected (eg user hit enter), we just need to put the trigger into the Chat input box with special highlights (e.g., with some special background color showing that this is a micro agent invocation -- and when hover on it, it will show some basic description of that microagent).

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions