Narzędzia deweloperskie Stallion
Stallion to wtyczka zasobowa dla programistów tworzących rozszerzenia dla Speedwave. Automatyzuje generowanie szablonów projektów, walidację schematów manifestu, podbijanie wersji semantycznej, generowanie changelogów oraz potoki podpisywania wydań kluczami kryptograficznymi w GitLab CI/CD.
Model architektoniczny
Dział zatytułowany „Model architektoniczny”Stallion jest rozszerzeniem czysto zasobowym (capabilities: ["skills", "commands", "hooks"]). Nie uruchamia własnego kontenera ani nie zajmuje portów sieciowych, dostarczając zasoby bezpośrednio do sesji Claude:
- Wspólne instrukcje inżynieryjne: Dostarcza standardy projektowe przez plik
claude-resources/CLAUDE.md. - Polecenia tworzenia szkieletu: Komendy terminalowe do inicjalizacji i wersjonowania wtyczek.
- Wspólny szablon CI/CD: Gotowa konfiguracja GitLab CI (
.build-plugin.yml) odpowiedzialna za kompilację, podpisywanie cyfrowe (Ed25519) i publikację pakietów.
Wykaz poleceń i skilli
Dział zatytułowany „Wykaz poleceń i skilli”| Polecenie / Skill | Zakres | Opis |
|---|---|---|
create-plugin (Skill) | Tworzenie szkieletu | Interaktywne projektowanie wtyczki (wybór między workerem MCP a wtyczką zasobową). |
add-oauth (Skill) | Integracja OAuth2 | Implementacja mechanizmów autoryzacji OAuth2 i odświeżania tokenów na hoście. |
/stallion:new-plugin | Generator | Tworzenie struktury katalogów nowej wtyczki na podstawie szablonu. |
/stallion:bump | Wersjonowanie | Spójne podbicie wersji w plikach manifest.json, package.json oraz plikach lock. |
/stallion:changelog | Automatyzacja wydań | Generowanie changeloga z podziałem na zmiany dla użytkowników i programistów. |
Mechanika generowania wtyczek
Dział zatytułowany „Mechanika generowania wtyczek”Wywołanie /stallion:new-plugin <slug> "<Nazwa>" tworzy strukturę projektu zgodną ze standardami manifestu Speedwave:
- Waliduje identyfikator wyrażeniem
^[a-z][a-z0-9-]{0,63}$. - Blokuje 13 zarezerwowanych nazw usług systemowych (
slack,sharepoint,redmine,gitlab,github,atlassian,office,playwright,context7,os,oauth,ide,host_exec). - Przypisuje domyślne porty sieciowe (4010+) i limity pamięci RAM kontenera (256 MiB).
Potok kompilacji i podpisywania wydań (CI/CD)
Dział zatytułowany „Potok kompilacji i podpisywania wydań (CI/CD)”Wspólny potok na gałęzi głównej składa się z trzech etapów:
- Build: Kompilacja źródeł TypeScript i pakowanie zależności.
- Sign: Wyliczenie deterministycznego skrótu SHA-256 (alfabetycznie posortowane pliki z ramkowaniem długości) i podpisanie kluczem Ed25519 przy użyciu chronionych zmiennych CI w Speednet. Dowiązania symboliczne są kategorycznie odrzucane.
- Publish: Publikacja podpisanego archiwum ZIP w rejestrze pakietów GitLab Package Registry.
Pierwsze kroki
Dział zatytułowany „Pierwsze kroki”- Wyeksportuj swój token GitLab do zmiennej środowiskowej
NPM_TOKEN, aby umożliwić pobieranie pakietów@speedwave/*. - Zainstaluj wtyczkę Stallion w projekcie roboczym.
- Zainicjalizuj nową wtyczkę poleceniem
/stallion:new-plugin <slug> "<Nazwa Wyświetlana>".
Bezpieczeństwo
Dział zatytułowany „Bezpieczeństwo”Działanie wtyczki Stallion odbywa się lokalnie w środowisku dewelopera. Klucze prywatne służące do oficjalnego podpisywania wydań znajdują się wyłącznie w chronionych modułach runnerów CI/CD i nie są dostępne lokalnie. Szczegóły dotyczące weryfikacji kryptograficznej opisano w rozdziale Mechanizm wtyczek.