pasta マニュアル
Claudia et Anthony — à votre service


pasta のマニュアルへ、ようこそいらっしゃいまし。わたくし Claudia が、このマニュアルの案内役を務めますわ。
お嬢様にお仕えしております、執事のアンソニーでございます。失礼ながらお嬢様、ゴーストづくりが初めての方でも、読み通せるものでございましょうか。
ふふん、心配なさらなくてよろしくてよ。手順から文法、Lua の書き方まで、わたくしが最後まできっちりお付き合いいたしますもの。さあ、肩の力を抜いて、最初の一歩を踏み出しましょう。
pasta は、「伺か」のようなデスクトップマスコットを動かすための対話スクリプトエンジンである。 作者が書いた Pasta DSL の辞書を Lua にトランスパイルし、「ゴースト」の頭脳として動作させる。 本マニュアルは、ゴースト作者が pasta で辞書を書けるようになることを目的とした利用者向けガイドである。
関連リンク
| リンク | 内容 |
|---|---|
| GitHub リポジトリ(ekicyou/pasta) | ソースコード・ビルド方法などの開発者向け情報。README も参照 |
| リリースページ | 各版の配布物(pasta.dll.zip・サンプルゴースト hello-pasta.nar・検査の CLI pasta_check.zip・AI 向けのスキル pasta-skills.zip・VSCode 拡張)と変更点。ファイル名のリンクは、最新版を直接ダウンロードする |
AI にゴーストを書かせるとき
Claude Code などの AI のエージェントにゴーストを書かせるときは、pasta のスキルを読ませる。
スキルは pasta-skills.zip にまとめて配布しており、中身は次の 3 つである。
| スキル | 役目 |
|---|---|
pasta-ghost-authoring | Pasta DSL の文法と辞書の書き方 |
pasta-lua-coding | ランタイムの Lua API と書き方の決まり |
pasta-check | pasta_check による辞書の検査とリリースビルド |
pasta-skills.zip は、最新版への固定のリンクか、
リリースページの各版の添付から入手する。
入手した zip は、ゴーストの開発フォルダの .claude/skills/ に展開する。展開すると、次の木ができる。
.claude/skills/
├── pasta-ghost-authoring/SKILL.md
├── pasta-lua-coding/SKILL.md
├── pasta-check/SKILL.md
└── LICENSE
スキルは、使っている pasta と同じ版の pasta-skills.zip を使うこと。pasta の版を上げるときは、
3 つのフォルダを消してから新しい版の zip を展開する。上書きで展開すると、新しい版で消えたファイルが古いまま残るためである。
このマニュアルが対象とするバージョン
| 項目 | 内容 |
|---|---|
| 対象 pasta バージョン | v0.4.3 |
| Lua 方言(ランタイム) | LuaJIT 2.1(Lua 5.1 系+有効化された拡張) |
| 対象プラットフォーム | Windows |
本マニュアルは、上表の版の pasta を対象として記述する。対象バージョンはリリースのたびに更新される。 これより古い版の pasta を使っている場合は、リリースページから 新しい版を入手すること。
ランタイムの Lua 方言は LuaJIT 2.1 である。これは Lua 5.1 系の言語仕様を基礎とし、
LuaJIT 独自の拡張(goto/ラベルや一部の 5.2 互換機能など)が有効化されたものである。
そのため、Lua のコードを書く際は Lua 5.1 系+ LuaJIT 拡張の文法・標準ライブラリを前提とすること。
バージョンの離れた Lua 5.5 等の他バージョンの仕様と混同しないよう注意する。外部 Lua リファレンスを
参照するときも、LuaJIT 2.1 / Lua 5.1 系に対応した資料を用いること(詳細は外部リンク集)。
安定機能と「将来変更あり」の区別について
本マニュアルは、現行の版で実装されている文法・API だけを記述する。まだ実装されていない機能や 実装予定の機能は記述しない。一方で pasta は開発が継続しており、現行の挙動のなかには将来の版で 変わり得る箇所もある。そうした箇所は本文中で次のように明示し、安定機能と視覚的・記述的に区別する。
⚠ 将来変更あり このように引用ブロックと「将来変更あり」の見出しを付した箇所は、現行の版で記述どおりに動作するが、 将来の版で挙動が変わる可能性がある。安定版として依存する前に、最新の情報を確認すること。
注記のない通常の本文は、現行の版で安定して利用できる機能として記述している。
このマニュアルの歩き方
目的に応じて、以下の各章へ進むとよい。
- 入門ガイド — pasta を初めて触る人向けの、物語で導くガイド。13 の「こんな表現をしたい」を 1 章ずつ叶えながら、自分のゴーストを育てていく。
- 文法リファレンス概要 — Pasta DSL の文法のリファレンス。シーン定義、アクション行、変数、単語定義などを章ごとに解説する。入門ガイドで出会った書き方を詳しく調べるときに引く。
- Lua マニュアル概要 — ランタイムが公開する Lua API とコーディングパターンのリファレンス。DSL では足りない複雑なロジックを書くときに参照する。
- 外部リンク集 — Lua 言語リファレンスなど、本マニュアル外の参照先をまとめている。
目次末尾の「内部設計(コントリビュータ向け)」パートは、pasta 本体のコードを読み・直す開発者向けの解説である。ゴーストを作るだけなら読む必要はない。
Pasta DSL の文法・公開 Lua API・pasta.toml の設定について、利用者向けの権威的な記述は本マニュアルである。
ほかの文書と記述が食い違う場合は、本マニュアルを正とする。
準備はよろしくて? どこから読み始めても構いませんけれど、ゴーストづくりが初めてなら、まずは入門ガイドから順にお読みなさいな。
お嬢様は、皆さまが迷わぬようにと、昨晩から目次を何度も見直しておいででした。
な、なにを言っていますの! フンッ、別に、あなたのためを思って言っているわけではありませんわよ! ……さ、さあ、熱く参りましょう!
顔アイコン・意匠: ponapalt/claudia(Unlicense)/ 参考: ponadocs.shillest.net/claudia