From 2790a35acf156594ed74976e529af9b577665a71 Mon Sep 17 00:00:00 2001 From: Hare Date: Fri, 1 May 2026 23:40:47 +0900 Subject: [PATCH] =?UTF-8?q?docs(tickets):=20workflow=E3=81=AE=E3=83=97?= =?UTF-8?q?=E3=83=AD=E3=83=91=E3=83=86=E3=82=A3=E5=90=8D=E3=81=AE=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .insomnia/knowledge/test.md | 0 tickets/agent-skills.md | 4 ++-- tickets/internal-worker-workflow.md | 4 ++-- tickets/workflow.md | 10 +++++----- 4 files changed, 9 insertions(+), 9 deletions(-) delete mode 100644 .insomnia/knowledge/test.md diff --git a/.insomnia/knowledge/test.md b/.insomnia/knowledge/test.md deleted file mode 100644 index e69de29b..00000000 diff --git a/tickets/agent-skills.md b/tickets/agent-skills.md index 0f5dfdbd..05fa8c6d 100644 --- a/tickets/agent-skills.md +++ b/tickets/agent-skills.md @@ -31,7 +31,7 @@ SKILL.md frontmatter: ## 前提チケット -- `tickets/workflow.md` — Workflow loader / `/` resolve / `auto_invoke` 注入の本実装。本チケットはその ingest 経路を増やすだけで、Workflow 側の意味論には手を入れない +- `tickets/workflow.md` — Workflow loader / `/` resolve / `model_invokation` 注入の本実装。本チケットはその ingest 経路を増やすだけで、Workflow 側の意味論には手を入れない ## 方針 @@ -55,7 +55,7 @@ SKILL.md frontmatter: |---|---|---| | `name` | (ファイル名 = slug として扱う) | `name` がディレクトリ名と一致することは仕様上の不変。slug としてはディレクトリ名を使用 | | `description` | `description` | そのまま | -| — | `auto_invoke` | **`true` 固定**。agentskills の progressive disclosure(メタデータ常時注入)と整合 | +| — | `model_invokation` | **`true` 固定**。agentskills の progressive disclosure(メタデータ常時注入)と整合 | | — | `user_invocable` | **`true` 固定** | | — | `requires` | **空配列**。SKILL 側に概念がない | | `license` / `compatibility` / `metadata` | — | 保持はするが Workflow 実行には影響しない | diff --git a/tickets/internal-worker-workflow.md b/tickets/internal-worker-workflow.md index 38be2ef0..e8feffde 100644 --- a/tickets/internal-worker-workflow.md +++ b/tickets/internal-worker-workflow.md @@ -24,7 +24,7 @@ INSOMNIA が内部で固定 prompt を持って disposable Worker / 専用 Pod - 同じファイル形式(`memory/workflow/.md`)、同じ frontmatter / Linter - `user_invocable: false` で `/` 経路から見えなくする -- `auto_invoke` は通常 Pod 用の system prompt 注入仕様のまま(内部 Workflow は通常 OFF) +- `model_invokation` は通常 Pod 用の system prompt 注入仕様のまま(内部 Workflow は通常 OFF) - 内部 Workflow を識別するキー(例: `internal_role`)と、必要なツール surface を表明する手段を frontmatter に追加する。具体 schema は実装で詰める ### 内部呼び出し経路 @@ -54,7 +54,7 @@ Pod 側の既存トリガー(Phase 1 post-run / Phase 2 staging 閾値 / Compa - Workflow 仕様自体の本体実装(`tickets/workflow.md`) - 内部 Workflow の自動生成(consolidation の offer 等。`docs/plan/memory.md` §Offer 経路 / 将来検討) - 既存 `&str` 定数の物理削除タイミング(移行が完了した role ごとに削除する運用) -- `auto_invoke` 注入予算の最適化(既存 Knowledge 常駐注入予算と合算する規約は `docs/plan/memory.md` 側) +- `model_invokation` 注入予算の最適化(既存 Knowledge 常駐注入予算と合算する規約は `docs/plan/memory.md` 側) ## 完了条件 diff --git a/tickets/workflow.md b/tickets/workflow.md index 14b0bb46..e9f975b0 100644 --- a/tickets/workflow.md +++ b/tickets/workflow.md @@ -14,7 +14,7 @@ agent-skills (agentskills.io 形式) は本チケットの ingest 経路を再 - 呼び出し: `/`、フラットな名前空間、kebab-case - 配置: `/.insomnia/memory/workflow/.md`(ファイル名 = slug、frontmatter に `name` を持たない) -- frontmatter: `description` / `auto_invoke` (default OFF) / `user_invocable` (default ON) / `requires: [knowledge-slug, ...]` +- frontmatter: `description` / `model_invokation` (default OFF) / `user_invocable` (default ON) / `requires: [knowledge-slug, ...]` - 実行: `requires` の Knowledge 本文を context に inject してから Workflow 本文を実行 - 自動書き込み禁止(consolidation の write tool schema に `workflow` カテゴリを含めないことで構造的に担保。Linter で人間にも見える形で再保証) @@ -34,8 +34,8 @@ agent-skills (agentskills.io 形式) は本チケットの ingest 経路を再 - `requires` の Knowledge 本文を Knowledge 検索ツールの slug 完全一致経路で取得し、Workflow 本文の前に context へ inject - Workflow 本文は Markdown のままサブミット内容として扱う(DSL 化はしない) -3. **`auto_invoke` 注入** - - `auto_invoke: true` な Workflow の `description` を通常 Pod の system prompt に常駐注入する。Phase 2 prompt には入れない +3. **`model_invokation` 注入** + - `model_invokation: true` な Workflow の `description` を通常 Pod の system prompt に常駐注入する。Phase 2 prompt には入れない - 予算は Knowledge の常駐注入(`memory.md` §retrieval 経路)と合算管理。description 上限は agentskills 準拠の 1024 chars に揃える 4. **Linter ルール** @@ -55,14 +55,14 @@ agent-skills (agentskills.io 形式) は本チケットの ingest 経路を再 - `/.insomnia/memory/workflow/*.md` をロードし、frontmatter 違反は Pod 起動エラーになる - `/` を含む submit が `Segment::WorkflowInvoke` として送られ、Pod 側で `requires` Knowledge を inject した上で本文が実行される -- `auto_invoke: true` の Workflow description が通常 Pod の system prompt に列挙される +- `model_invokation: true` の Workflow description が通常 Pod の system prompt に列挙される - `user_invocable: false` の Workflow は `/` 補完候補から除外され、明示呼び出しもエラーになる - 単体テストで frontmatter 検証の正常 / 異常系、`requires` 解決、フラグ別の挙動が verify される ## 実装順序 1. `manifest` または既存 memory クレートに `Workflow` 構造体と `WorkflowDirectoryLoader` を置く。frontmatter パースと検証のみでテスト完結 -2. Pod に Workflow registry を持たせ、`auto_invoke` description の system prompt 注入を組む +2. Pod に Workflow registry を持たせ、`model_invokation` description の system prompt 注入を組む 3. `Segment::WorkflowInvoke` の resolver を Pod 側に実装。Knowledge 検索ツールの slug 完全一致経路で `requires` を inject 4. 汎用 Write/Edit に対する `memory/workflow/` deny を Scope に追加、Linter 仕上げ