.SKILL
Aktiviert, deaktiviert und verwaltet Skills zur Laufzeit (RAGAI.SKILL).
Skills sind hierarchisch: Die Eltern-Kind-Beziehung wird rein aus den in der Skill-ID enthaltenen Zahlen
abgeleitet (siehe getSkillPath), nicht aus einer expliziten Baumstruktur in der Konfiguration. Über
depth in enableSkillAndChildren/disableSkillAndChildren/getSkillIdChildren lässt sich
die Rekursionstiefe begrenzen (Standard: unbegrenzt).
enableSkills/disableSkills ändern den dauerhaften Aktivierungsstatus, während skillsForNextRun Skills
nur für den unmittelbar nächsten KI-Aufruf erzwingt (unabhängig vom Aktivierungsstatus) und danach automatisch
über unforceAllSkills wieder aufgehoben wird.
Methoden
.getSkills()
Gibt den aktuellen Aktivierungsstatus aller Skills zurück.
Rückgabewert: Promise<any>
Liste aller Skills mit Status.
.disableAllSkills()
Deaktiviert alle Skills.
Rückgabewert: Promise<void>
.enableAllSkills()
Aktiviert alle Skills.
Rückgabewert: Promise<void>
.enableSkills(skillIds)
Aktiviert die angegebenen Skills.
| Parameter | Typ | Beschreibung |
|---|---|---|
skillIds | string[] | z.input<typeof skillIdsSchema> | IDs der zu aktivierenden Skills, oder ein Objekt gemäß skillIdsSchema. ["___ALL___"] aktiviert alle. |
Objekt-Form (validiert über skillIdsSchema):
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
skillIds | array | ✔ | IDs der betroffenen Skills. |
Rückgabewert: Promise<{ skills: SkillState[] }>
Der aktualisierte Skill-Status.
.disableSkills(skillIds)
Deaktiviert die angegebenen Skills.
| Parameter | Typ | Beschreibung |
|---|---|---|
skillIds | string[] | z.input<typeof skillIdsSchema> | IDs der zu deaktivierenden Skills, oder ein Objekt gemäß skillIdsSchema. ["___ALL___"] deaktiviert alle. |
Objekt-Form (validiert über skillIdsSchema):
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
skillIds | array | ✔ | IDs der betroffenen Skills. |
Rückgabewert: Promise<{ skills: SkillState[] }>
Der aktualisierte Skill-Status.
.enableSkillAndChildren(skillId, depth?)
Aktiviert einen Skill sowie dessen Kinder-Skills bis zu einer bestimmten Tiefe.
| Parameter | Typ | Beschreibung |
|---|---|---|
skillId | string | z.input<typeof skillIdDepthSchema> | ID des Skills, oder ein Objekt gemäß skillIdDepthSchema. |
depth | number | Maximale Tiefe der Kinder-Skills. Standard: unbegrenzt. |
Objekt-Form (validiert über skillIdDepthSchema):
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
skillId | string | ✔ | ID des Wurzel-Skills. |
depth | number | – | Maximale Tiefe der Kinder-Skills. Standard: unbegrenzt. |
Rückgabewert: Promise<{ skills: SkillState[] }>
Der aktualisierte Skill-Status.
.disableSkillAndChildren(skillId, depth?)
Deaktiviert einen Skill sowie dessen Kinder-Skills bis zu einer bestimmten Tiefe.
| Parameter | Typ | Beschreibung |
|---|---|---|
skillId | string | z.input<typeof skillIdDepthSchema> | ID des Skills, oder ein Objekt gemäß skillIdDepthSchema. |
depth | number | Maximale Tiefe der Kinder-Skills. Standard: unbegrenzt. |
Objekt-Form (validiert über skillIdDepthSchema):
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
skillId | string | ✔ | ID des Wurzel-Skills. |
depth | number | – | Maximale Tiefe der Kinder-Skills. Standard: unbegrenzt. |
Rückgabewert: Promise<{ skills: SkillState[] }>
Der aktualisierte Skill-Status.
.skillsForNextRun(skillIds)
Legt fest, welche Skills beim nächsten Bot-Durchlauf erzwungen aktiv sind.
| Parameter | Typ | Beschreibung |
|---|---|---|
skillIds | string[] | z.input<typeof skillIdsSchema> | IDs der zu erzwingenden Skills, oder ein Objekt gemäß skillIdsSchema. |
Objekt-Form (validiert über skillIdsSchema):
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
skillIds | array | ✔ | IDs der betroffenen Skills. |
Rückgabewert: Promise<{ skills: SkillState[] }>
Der aktualisierte Skill-Status.
.unforceAllSkills()
Hebt die Erzwingung für alle Skills wieder auf.
Rückgabewert: Promise<any>
Der aktualisierte Skill-Status.
.getSkillIdChildren(skillId, depth?)
Gibt die IDs eines Skills und all seiner Kinder-Skills bis zu einer bestimmten Tiefe zurück.
| Parameter | Typ | Beschreibung |
|---|---|---|
skillId | string | ID des Wurzel-Skills. |
depth | number | Maximale Tiefe. Standard: unbegrenzt. |
Rückgabewert: Promise<string[]>
Liste der Skill-IDs.
.getSkillDepth(skillId)
Gibt die Verschachtelungstiefe eines Skills in der Skill-Hierarchie zurück.
| Parameter | Typ | Beschreibung |
|---|---|---|
skillId | string | ID des Skills. |
Rückgabewert: number
Die Tiefe (0 = Wurzelebene).
.getSkillPath(skillId)
Zerlegt eine Skill-ID in ihren hierarchischen Pfad (basierend auf enthaltenen Zahlen).
| Parameter | Typ | Beschreibung |
|---|---|---|
skillId | string | ID des Skills. |
Rückgabewert: string[]
Der Pfad als Array von Segmenten.
.getTreeFromSkillIds(skillIds)
Baut aus einer flachen Liste von Skill-IDs die Wurzel-Elemente des Skill-Baums.
| Parameter | Typ | Beschreibung |
|---|---|---|
skillIds | string[] | Alle Skill-IDs. |
Rückgabewert: SkillTreeItem[]
Die Wurzel-Elemente des Baums.
.skillIdsToTreeItems(skillIds)
Baut aus einer flachen Liste von Skill-IDs den vollständigen Skill-Baum (Eltern/Kinder/Vorfahren/Nachfahren).
| Parameter | Typ | Beschreibung |
|---|---|---|
skillIds | string[] | Alle Skill-IDs. |
Rückgabewert: SkillTreeItem[]
Alle Baum-Elemente.