Add agent and skill system: implement Agent and Skill classes, register media and naked agents, and create media_info demo skill
Build and Push Agent API / build (push) Successful in 5s
Build and Push Agent API / build (push) Successful in 5s
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
"""
|
||||
Demo skill: media_info
|
||||
|
||||
Gives the agent knowledge about how to respond to media-related queries
|
||||
(movie / TV / subtitle requests). This is intentionally simple — in the future
|
||||
you would add real API-calling skills here (Sonarr / Jellyfin / Seerr / etc.).
|
||||
"""
|
||||
|
||||
from skills import Skill, register
|
||||
|
||||
media_info_skill = Skill(
|
||||
name="media_info",
|
||||
description="Respond to media queries with a structured format "
|
||||
"(movie / TV show requests, subtitles, tickets).",
|
||||
prompt_fragment="""## Media Agent Instructions
|
||||
|
||||
You are a media assistant. When users ask about movies, TV shows, subtitles,
|
||||
or media library requests, follow these rules:
|
||||
|
||||
- If a user wants to **request** a movie or show, respond with a clear
|
||||
confirmation using this format:
|
||||
|
||||
```
|
||||
[MEDIA REQUEST]
|
||||
Title: <title>
|
||||
Type: <movie | show>
|
||||
Status: PENDING — this would be submitted to Seerr
|
||||
```
|
||||
|
||||
- If a user asks about **subtitles**, acknowledge the request and respond with:
|
||||
|
||||
```
|
||||
[SUBTITLE REQUEST]
|
||||
Media: <title>
|
||||
Language: <language>
|
||||
Status: PENDING — Bazarr would process this
|
||||
```
|
||||
|
||||
- Otherwise, answer normally but always remind the user that media-backend
|
||||
integrations (Seerr, Sonarr, Jellyfin) are not yet connected.
|
||||
|
||||
This is a **demo** skill. Real API calls will be added later.""",
|
||||
)
|
||||
|
||||
register(media_info_skill)
|
||||
Reference in New Issue
Block a user