skillship は何をしますか?
SaaSベンダーのAPIシグナル(OpenAPI、GraphQL、llms.txt、ドキュメント、MCPカタログ)からClaudeスキルを生成・維持します。
特徴
- マルチソース対応: OpenAPI 3.0+、GraphQLスキーマ、llms.txt、Markdownドキュメント、MCPサーバーカタログを入力としてサポート
- 自動生成: 手動でスキル定義を記述する必要がなく、API仕様から自動的にスキルを生成
- 継続的メンテナンス: APIの変更を検出し、既存のスキルを自動更新
- CI/CD統合: GitHub ActionsやGitLab CIなどのCI/CDパイプラインに簡単に統合可能
- エージェント最適化: Claude Code、Cline、CursorなどのAIエージェントが最適に理解・利用できる形式で出力
インストール
npm install -g @firmislabs/skillship
または、npxを使用して直接実行:
npx @firmislabs/skillship generate --input ./api-specs/
使用方法
基本的な使用方法
skillship generate --input ./openapi.yaml --output ./skills/
複数のソースから生成
skillship generate \
--openapi ./api/openapi.yaml \
--graphql ./api/schema.graphql \
--llms-txt ./docs/llms.txt \
--output ./generated-skills/
MCPカタログから生成
skillship generate --mcp-catalog https://example.com/mcp/catalog.json
継続的なウォッチモード
skillship watch --input ./api-specs/ --output ./skills/
設定
skillship.config.jsonファイルを使用して設定を管理:
{
"sources": [
{ "type": "openapi", "path": "./api/openapi.yaml" },
{ "type": "graphql", "path": "./api/schema.graphql" },
{ "type": "llms-txt", "path": "./docs/llms.txt" }
],
"output": "./skills/",
"watch": true,
"format": "claude-code"
}
対応フォーマット
| 入力ソース | 説明 | サポート状況 |
|---|---|---|
| OpenAPI | REST API仕様 (v3.0+) | ✅ 完全サポート |
| GraphQL | GraphQLスキーマ定義 | ✅ 完全サポート |
| llms.txt | リンク集とドキュメント概要 | ✅ 完全サポート |
| ドキュメント | Markdown形式のAPI文書 | ✅ 完全サポート |
| MCPカタログ | MCPサーバーカタログJSON | ✅ 実験的サポート |
出力スキルの例
生成されるスキルは、以下のような構造を持ちます:
# My SaaS API Skill
You have access to the My SaaS API. Use the following tools to interact with it.
## Tools
### create_user
Create a new user in the system.
**Parameters:**
- `name` (string): User's full name
- `email` (string): User's email address
- `role` (string, optional): User role (admin, user, viewer)
**Example:**
```json
{
"name": "John Doe",
"email": "[email protected]",
"role": "user"
}
## 開発者向け情報
### API
```javascript
const { generateSkills } = require('@firmislabs/skillship');
const result = await generateSkills({
sources: [
{ type: 'openapi', path: './api/openapi.yaml' },
],
output: './skills/',
});
カスタムテンプレート
カスタムテンプレートを使用して出力形式をカスタマイズ:
skillship generate --template ./my-template.hbs
コントリビューション
バグ報告や機能リクエストはGitHub Issuesまでお願いします。
ライセンス
MIT License