Tutorials

Skills erstellen und nutzen

Erstelle einen wiederverwendbaren Skill, der Bob einen wiederholbaren Changelog-Eintrags-Workflow beibringt, und rufe ihn dann explizit auf oder lasse Bob ihn automatisch aktivieren.

Ein Skill ist ein wiederverwendbares Anweisungsset, das Bob einen spezialisierten, wiederholbaren Workflow beibringt. Anstatt dieselben Formatierungsregeln oder Checklisten in jedem Prompt neu einzutippen, definierst du den Workflow einmal in einer SKILL.md-Datei. Bob befolgt diese Anweisungen dann immer, wenn der Skill zutrifft – ob du ihn direkt aufrufst oder Bob ihn selbst aktiviert.

In diesem Tutorial erstellst du einen Skill, der Einträge zu einer CHANGELOG.md-Datei im Format Keep a Changelog hinzufügt und die Datei erstellt, falls sie noch nicht existiert. Du rufst den Skill explizit mit einem Slash-Befehl auf, nimmst dann eine zweite Änderung vor und bittest Bob, sie zu protokollieren, ohne den Skill beim Namen zu nennen – um zu sehen, wie Bob ihn automatisch anhand seiner Beschreibung aktiviert.

Voraussetzungen

Um dieses Tutorial abzuschließen, benötigst du Folgendes:

git clone https://github.com/IBM/galaxium-travels

Einen Changelog-Eintrags-Skill erstellen

Das Chat-Interface öffnen

Öffne das Bob-Chat-Interface, indem du auf das Bob-Symbol neben der Navigationsleiste klickst, oder verwende die Tastenkombination Option + Command + B (macOS) oder Ctrl + Alt + B (Windows).

Wechsle mit dem Moduswähler im Chat-Interface zum Agent-Modus. Der Agent-Modus gibt Bob den Tool-Zugriff, den er benötigt, um Skills zu aktivieren und Dateien zu bearbeiten.

Die Skills-Einstellungen öffnen

Es gibt mehrere Möglichkeiten, einen Skill in Bob zu erstellen. Du kannst die Benutzeroberfläche (UI) verwenden oder den Befehl /create-skill im Bob-Chat für eine geführte Einrichtung nutzen.

In diesem Tutorial verwendest du den Skills-Tab in den Bob-Einstellungen, um einen Skill zu erstellen.

  1. Klicke unterhalb des Chat-Interfaces auf Bob-Einstellungen.
  2. Klicke in der linken Seitenleiste auf Skills.
  3. Klicke auf die Schaltfläche +, um einen neuen Skill zu erstellen.

Einstellungen öffnen

Die Skill-Details ausfüllen

Gib die folgenden Werte in das Skill-Erstellungsformular ein:

FeldWert
Skill Namechangelog-entry
DescriptionAdds an entry to CHANGELOG.md using the Keep a Changelog format, creating the file if it does not exist, so change history stays consistent and release-ready.
Allow Bob to use this skillEin
Scope & Locationgalaxium-travels

Der Skill Name ist das, was du eingibst, um den Skill direkt aufzurufen, z. B. /changelog-entry. Die Description ist das, was Bob liest, um zu entscheiden, ob der Skill auf eine Anfrage zutrifft, wenn du ihn nicht beim Namen aufrufst.

Wenn Allow Bob to use this skill eingeschaltet ist, kann Bob den Skill selbstständig verwenden, wenn ein Prompt es erfordert, oder du rufst ihn explizit auf. Das Setzen von Scope & Location auf galaxium-travels speichert den Skill im .bob/skills/-Verzeichnis des Projekts, sodass Git ihn zusammen mit dem Code verfolgt und dein Team Zugriff darauf hat. Wenn du stattdessen Global (all workspaces) wählst, wird der Skill außerhalb des Repositorys unter ~/.bob/skills/ gespeichert.

Gib Folgendes in das Textfeld Skill Instructions ein:

---
name: changelog-entry
description: Adds an entry to CHANGELOG.md using the Keep a Changelog format, creating the file if it does not exist, so change history stays consistent and release-ready.
user-invocable: true
---

Add an entry to CHANGELOG.md using the Keep a Changelog format (https://keepachangelog.com/).

- If CHANGELOG.md does not exist, create it at the project root with this structure before adding an entry:

  # Changelog

  All notable changes to this project are documented in this file.
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).

  ## [Unreleased]

- Add new entries under the `## [Unreleased]` section, under one of these subheadings: `### Added`, `### Changed`, `### Fixed`, `### Removed`. Create the subheading if it is not already present under `## [Unreleased]`.
- Write each entry as a single bullet point in the imperative mood ("Add", not "Added"), starting with a capital letter, with no trailing period.
- Base the entry on the actual diff, not on the wording of the request. Run `git diff` to review what changed before writing the entry.
- Only edit CHANGELOG.md. Do not stage or commit the change.

Klicke auf Create.

Bob speichert den Skill unter galaxium-travels/.bob/skills/changelog-entry/SKILL.md.

Den Skill direkt aufrufen

Rufe den Skill beim Namen auf, damit du die Anweisungen sehen kannst, die Bob befolgt.

Eine kleine Änderung vornehmen

Bitte Bob, eine kleine, risikoarme Bearbeitung vorzunehmen, damit du etwas zum Protokollieren hast:

Add a one-line note to the end of the README.md that says "Powered by IBM Bob."

Bob bearbeitet README.md. Genehmige die Bearbeitung, wenn du dazu aufgefordert wirst.

Die Änderung mit dem Skill protokollieren

Tippe im Chat-Interface /changelog-entry und drücke Enter oder klicke auf den erscheinenden Vorschlag /changelog-entry. Gib dann den folgenden Prompt ein:

Add a changelog entry for this change.

Bob fragt möglicherweise um Erlaubnis, Skill-Tools zu verwenden und Dateien zu bearbeiten. Genehmige, wenn du dazu aufgefordert wirst. Bob lädt den changelog-entry-Skill, erstellt CHANGELOG.md, da das Projekt noch keine hat, und fügt einen Eintrag hinzu, der dem im Skill definierten Format folgt, ähnlich wie:

## [Unreleased]

### Added

- Add "Powered by IBM Bob." note to the end of README.md

Den Eintrag überprüfen

Bitte Bob, dir das Changelog zu zeigen.

Show me CHANGELOG.md

Der Eintrag stimmt mit dem Changelog-Eintrag überein, den Bob im vorherigen Schritt generiert hat.

Bob den Skill automatisch aktivieren lassen

Starte ein neues Aufgabenfenster, indem du auf die Schaltfläche + über dem Chat-Interface klickst.

Nimm eine zweite Änderung vor und bitte Bob, sie zu protokollieren, ohne den Skill beim Namen zu nennen. Da du Allow Bob to use this skill eingeschaltet gelassen hast, kann Bob anhand der Skill-Beschreibung erkennen, dass er zutrifft, und ihn eigenständig aktivieren.

Eine weitere kleine Änderung vornehmen

Add a one-line comment above the main heading in README.md that says "Galaxium Travels".

Genehmige die Bearbeitung, wenn du dazu aufgefordert wirst.

Bob bitten, die Änderung zu protokollieren, ohne den Skill zu nennen

Update the changelog for this edit.

Bob erkennt, dass die Anfrage zur Beschreibung des changelog-entry-Skills passt, und aktiviert ihn, ohne dass du /changelog-entry tippen musst. Genehmige bei Aufforderung die Skill- und Dateibearbeitungsberechtigungen. Bob fügt einen weiteren Eintrag im gleichen Format hinzu.

Den Eintrag überprüfen

Bitte Bob, dir das Changelog zu zeigen.

Show me CHANGELOG.md

Wenn diese Einstellung aktiviert ist, aktiviert Bob Skills – einschließlich changelog-entry – automatisch, wann immer sie zutreffen, ohne vorher zu fragen.

Deine Skills verwalten

Der Skills-Tab in den Bob-Einstellungen, wo du changelog-entry erstellt hast, zeigt auch alle Skills, die im aktuellen und globalen Workspace verfügbar sind. Nutze ihn, um die geladenen Skills des Workspaces zu überprüfen, festzustellen, ob ein Skill aus dem Projekt (.bob/skills/) oder dem globalen Speicherort (~/.bob/skills/) stammt, und um einen Skill zu bearbeiten oder zu löschen.

Aufräumen

So entfernst du die in diesem Tutorial erstellten Dateien:

  1. Klicke in den Bob-Einstellungen auf Skills und lösche dann den changelog-entry-Skill.
  2. Lösche das in den Voraussetzungen geklonte Verzeichnis galaxium-travels. Dadurch werden auch CHANGELOG.md und die in diesem Tutorial vorgenommenen README.md-Bearbeitungen entfernt.

Nächste Schritte

In diesem Tutorial hast du gelernt, wie Skills es dir ermöglichen, einen Workflow einmal zu definieren und von Bob konsistent anwenden zu lassen – ob du den Skill explizit mit /skill-name aufrufst oder Bob ihn anhand seiner Beschreibung automatisch aktivieren lässt.

Fahre mit Einen benutzerdefinierten Modus hinzufügen fort, um zu lernen, wie benutzerdefinierte Modi eine Rollendefinition, Verhaltensanweisungen und Tool-Zugriff in eine spezialisierte Persona für einen bestimmten Job kombinieren.

Wie ist dieses Thema?