CommunityCodierung & Entwicklunggithub.com

pradeepmouli/to-skills

Generiere AI-Agenten-Skills (SKILL.md) aus TypeScript-API-Dokumentationen – TypeDoc-Plugin + CLI + Docusaurus/VitePress

Was ist to-skills?

pradeepmouli/to-skills ist ein leistungsstarkes Tool, das die Erstellung von AI-Agenten-Skills (SKILL.md-Dateien) aus TypeScript-API-Dokumentationen automatisiert. Es fungiert als TypeDoc-Plugin und bietet gleichzeitig eine CLI-Schnittstelle sowie Integrationen für Docusaurus und VitePress. Damit können Entwickler schnell und zuverlässig strukturierte Skill-Beschreibungen generieren, die von AI-Agenten wie Claude Code, Cursor oder Codex verstanden werden. Das Tool extrahiert automatisch relevante Informationen aus den TypeScript-Typdefinitionen und API-Dokumentationen und wandelt sie in ein einheitliches SKILL.md-Format um. Dies spart Entwicklungszeit, reduziert manuelle Fehler und stellt sicher, dass die Skills stets mit dem tatsächlichen API-Design synchron bleiben. Es ist besonders nützlich in CI/CD-Pipelines und für Teams, die ihre TypeScript-APIs dokumentieren und gleichzeitig AI-freundliche Skill-Definitionen bereitstellen möchten.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add pradeepmouli/to-skills

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht to-skills?

Generiere AI-Agenten-Skills (SKILL.md) aus TypeScript-API-Dokumentationen – TypeDoc-Plugin + CLI + Docusaurus/VitePress

Überblick

to-skills ist ein Tool, das die Erstellung von SKILL.md-Dateien für AI-Agenten aus TypeScript-API-Dokumentationen automatisiert. Es kann als TypeDoc-Plugin verwendet werden oder als eigenständiges CLI-Tool.

Funktionen

  • TypeDoc-Plugin: Integriert sich nahtlos in den TypeDoc-Dokumentationsprozess und generiert SKILL.md-Dateien während der Dokumentationserstellung.
  • CLI-Tool: Kann unabhängig von TypeDoc verwendet werden, um SKILL.md aus vorhandenen API-Dokumentationen zu generieren.
  • Docusaurus/VitePress: Bietet Integrationen für Docusaurus und VitePress, um generierte Skills in Dokumentationsseiten einzubinden.

Installation

npm install -D to-skills
# or
yarn add -D to-skills

Verwendung

Als TypeDoc-Plugin

Fügen Sie to-skills zu Ihrer TypeDoc-Konfigurationsdatei (typedoc.json) hinzu:

{
  "plugin": ["to-skills"],
  "skills": {
    "output": "./skills"
  }
}

Als CLI-Tool

npx to-skills generate --input ./docs --output ./skills

Mit Docusaurus

Fügen Sie die Docusaurus-Integration zu Ihrer docusaurus.config.js hinzu:

module.exports = {
  // ...
  plugins: [
    ['to-skills/docusaurus', {
      input: './docs/api',
      output: './skills'
    }]
  ]
};

Mit VitePress

Fügen Sie die VitePress-Integration zu Ihrer .vitepress/config.js hinzu:

export default {
  // ...
  vite: {
    plugins: [
      require('to-skills/vitepress')({
        input: './docs/api',
        output: './skills'
      })
    ]
  }
};

Konfiguration

OptionTypStandardBeschreibung
inputstring./srcPfad zu den TypeScript-Quelldateien
outputstring./skillsAusgabeverzeichnis für SKILL.md-Dateien
namestring–Skill-Name (überschreibt automatisch generierten Namen)
descriptionstring–Skill-Beschreibung
ignorePathsstring[][]Pfade, die ignoriert werden sollen
includePrivatebooleanfalsePrivate Member einschließen
includeProtectedbooleanfalseProtected Member einschließen

Ausgabe

Jede generierte SKILL.md-Datei enthält:

  • Skill-Name (aus dem exportierten Typ abgeleitet)
  • Kurzbeschreibung
  • Detaillierte Beschreibung
  • Parameter (mit Typen und Beschreibungen)
  • Rückgabewerte (mit Typen und Beschreibungen)
  • Beispiele (falls in JSDoc vorhanden)
  • Metadaten (Version, Autor, etc.)

Beispiele

TypeScript-API-Dokumentation

/**
 * Ein Begrüßungsdienst.
 * @remarks
 * Dieser Dienst bietet Methoden zur Erstellung personalisierter Begrüßungen.
 */
export interface GreetingService {
  /**
   * Erstellt eine personalisierte Begrüßung.
   * @param name - Der Name der zu begrüßenden Person.
   * @returns Eine personalisierte Begrüßungsnachricht.
   * @example
   * ```typescript
   * const service: GreetingService = ...;
   * const greeting = service.createGreeting('Welt');
   * console.log(greeting); // "Hallo, Welt!"
   * ```
   */
  createGreeting(name: string): string;
}

Generierte SKILL.md

# GreetingService

Ein Begrüßungsdienst.

**Beschreibung:** Dieser Dienst bietet Methoden zur Erstellung personalisierter Begrüßungen.

## Methoden

### createGreeting

Erstellt eine personalisierte Begrüßung.

**Parameter:**
- `name` (string): Der Name der zu begrüßenden Person.

**Rückgabe:** string - Eine personalisierte Begrüßungsnachricht.

**Beispiel:**
```typescript
const service: GreetingService = ...;
const greeting = service.createGreeting('Welt');
console.log(greeting); // "Hallo, Welt!"

## Lizenz

MIT

Verwandte Skills