スキル
pi はスキルを作成できます。ユースケース用のスキルを構築するよう依頼してください。
スキルはエージェントがオンデマンドで読み込む自己完結型の能力パッケージです。特定タスク向けの専門ワークフロー、セットアップ手順、ヘルパースクリプト、リファレンスドキュメントを提供します。
Pi は Agent Skills 標準 を実装し、ほとんどの違反について警告しますが寛容です。Pi はスキル名が親ディレクトリと異なることを許可します(標準は禁止)。その要件は複数エージェントハーネスで共有するスキルディレクトリには最適ではありません。
セキュリティ: スキルはモデルに任意のアクションを指示でき、モデルが呼び出す実行可能コードを含む場合があります。使用前にスキル内容を確認してください。
Pi は次の場所からスキルを読み込みます:
- グローバル:
~/.pi/agent/skills/~/.agents/skills/
- プロジェクト(プロジェクトが信頼された後):
.pi/skills/cwdおよび祖先ディレクトリの.agents/skills/(git リポジトリルートまで、リポジトリ外ではファイルシステムルートまで)
- パッケージ:
skills/ディレクトリまたはpackage.jsonのpi.skillsエントリ - 設定:ファイルまたはディレクトリを含む
skills配列 - CLI:
--skill <path>(繰り返し可能、--no-skillsでも追加可能)
発見ルール:
~/.pi/agent/skills/と.pi/skills/では、ルートの直接.mdファイルが個別スキルとして発見- すべてのスキル場所で
SKILL.mdを含むディレクトリを再帰的に発見 ~/.agents/skills/とプロジェクト.agents/skills/ではルート.mdを無視
--no-skills で発見を無効化(明示的 --skill パスは読み込み)。
他ハーネスのスキルを使用
Section titled “他ハーネスのスキルを使用”Claude Code または OpenAI Codex のスキルを使うには、ディレクトリを設定に追加:
{ "skills": [ "~/.claude/skills", "~/.codex/skills" ]}プロジェクトレベルの Claude Code スキルは .pi/settings.json に追加:
{ "skills": ["../.claude/skills"]}スキルの動作
Section titled “スキルの動作”- 起動時、pi がスキル場所をスキャンし名前と説明を抽出
- システムプロンプトに 仕様 に従い XML 形式で利用可能スキルを含める
- タスクが一致すると、エージェントは
readで完全な SKILL.md を読み込む(モデルが必ずしもそうしない;プロンプトまたは/skill:nameで強制) - エージェントは指示に従い、相対パスでスクリプトとアセットを参照
これは段階的開示:説明のみが常にコンテキストにあり、完全な指示はオンデマンドで読み込み。
スキルコマンド
Section titled “スキルコマンド”スキルは /skill:name コマンドとして登録:
/skill:brave-search # Load and execute the skill/skill:pdf-tools extract # Load skill with argumentsコマンド後の引数は User: <args> としてスキル内容に追加。
対話モードの /settings または settings.json でスキルコマンドを切り替え:
{ "enableSkillCommands": true}スキルは SKILL.md を含むディレクトリ。それ以外は自由形式。
my-skill/├── SKILL.md # Required: frontmatter + instructions├── scripts/ # Helper scripts│ └── process.sh├── references/ # Detailed docs loaded on-demand│ └── api-reference.md└── assets/ └── template.jsonSKILL.md 形式
Section titled “SKILL.md 形式”---name: my-skilldescription: What this skill does and when to use it. Be specific.---
# My Skill
## Setup
Run once before first use:```bashcd /path/to/skill && npm install```
## Usage
```bash./scripts/process.sh <input>```スキルディレクトリからの相対パスを使用:
See [the reference guide](references/REFERENCE.md) for details.フロントマター
Section titled “フロントマター”Agent Skills 仕様 に従う:
| フィールド | 必須 | 説明 |
|---|---|---|
name | はい | 最大 64 文字。小文字 a-z、0-9、ハイフン。標準と異なり Pi は親ディレクトリとの一致を要求しない(共有スキルディレクトリには最適でないため)。 |
description | はい | 最大 1024 文字。スキルの内容と使用タイミング。 |
license | いいえ | ライセンス名または同梱ファイルへの参照。 |
compatibility | いいえ | 最大 500 文字。環境要件。 |
metadata | いいえ | 任意のキー値マップ。 |
allowed-tools | いいえ | 事前承認ツールのスペース区切りリスト(実験的)。 |
disable-model-invocation | いいえ | true の場合、システムプロンプトから非表示。ユーザーは /skill:name を使用。 |
- 1-64 文字
- 小文字、数字、ハイフンのみ
- 先頭/末尾ハイフン不可
- 連続ハイフン不可
Pi は名前が親ディレクトリと一致することを要求しません。Agent Skills 標準は要求しますが、複数ツールで共有するスキルディレクトリには最適ではありません。
有効:pdf-processing、data-analysis、code-review
無効:PDF-Processing、-pdf、pdf--processing
説明のベストプラクティス
Section titled “説明のベストプラクティス”説明がエージェントの読み込みタイミングを決定。具体的に。
良い例:
description: Extracts text and tables from PDF files, fills PDF forms, and merges multiple PDFs. Use when working with PDF documents.悪い例:
description: Helps with PDFs.Pi は Agent Skills 標準に対してスキルを検証。ほとんどの問題は警告ですがスキルは読み込まれます:
- 名前が 64 文字超または無効文字
- 名前がハイフンで始まる/終わる、または連続ハイフン
- 説明が 1024 文字超
未知のフロントマターフィールドは無視。
例外: 説明がないスキルは読み込まれません。
名前衝突(異なる場所の同じ名前)は警告し、最初に見つかったスキルを保持。
brave-search/├── SKILL.md├── search.js└── content.jsSKILL.md:
---name: brave-searchdescription: Web search and content extraction via Brave Search API. Use for searching documentation, facts, or any web content.---
# Brave Search
## Setup
```bashcd /path/to/brave-search && npm install```
## Search
```bash./search.js "query" # Basic search./search.js "query" --content # Include page content```
## Extract Page Content
```bash./content.js https://example.com```スキルリポジトリ
Section titled “スキルリポジトリ”- Anthropic Skills - ドキュメント処理(docx、pdf、pptx、xlsx)、Web 開発
- Pi Skills - Web 検索、ブラウザ自動化、Google API、文字起こし