feat: schema_version 3 with DE/EN field descriptions
Some checks failed
CI / Linux x86_64 (Forgejo) (push) Failing after 1s
Some checks failed
CI / Linux x86_64 (Forgejo) (push) Failing after 1s
Signed-off-by: flemming-it <sf@flemming.it>
This commit is contained in:
parent
a9b315a1a0
commit
fcf74f179f
1 changed files with 85 additions and 40 deletions
125
module.yaml
125
module.yaml
|
|
@ -1,9 +1,8 @@
|
||||||
schema_version: 2
|
schema_version: 3
|
||||||
provider: fai
|
provider: fai
|
||||||
name: orchestrator-llm
|
name: orchestrator-llm
|
||||||
version: 0.3.1
|
version: 0.3.1
|
||||||
|
|
||||||
# Capability provided by this module.
|
|
||||||
provides:
|
provides:
|
||||||
- capability: orchestrator.plan
|
- capability: orchestrator.plan
|
||||||
version: 0.3.0
|
version: 0.3.0
|
||||||
|
|
@ -11,56 +10,102 @@ provides:
|
||||||
# Capabilities the plans this module emits typically reference.
|
# Capabilities the plans this module emits typically reference.
|
||||||
# Advisory only — Studio surfaces "you'll also want X" when the
|
# Advisory only — Studio surfaces "you'll also want X" when the
|
||||||
# operator installs orchestrator-llm; `fai admin doctor` flags
|
# operator installs orchestrator-llm; `fai admin doctor` flags
|
||||||
# unmet entries; the hub does NOT block install. See
|
# unmet entries; the hub does NOT block install.
|
||||||
# docs/architecture/store.md → "Module dependencies".
|
|
||||||
consumes:
|
consumes:
|
||||||
- capability: llm.chat
|
- capability: llm.chat
|
||||||
version: "^0"
|
version: "^0"
|
||||||
why: "orchestrator-emitted plans dispatch llm.chat steps for downstream LLM-driven work; a flow that runs the plan unmodified needs an llm.chat provider installed."
|
why: "orchestrator-emitted plans dispatch llm.chat steps for downstream LLM-driven work; a flow that runs the plan unmodified needs an llm.chat provider installed."
|
||||||
|
|
||||||
# Inputs the invoke function accepts.
|
|
||||||
inputs:
|
inputs:
|
||||||
goal: text
|
goal:
|
||||||
# LLM HTTP endpoint, e.g. "http://localhost:11434/api/chat"
|
type: text
|
||||||
# for Ollama, "https://api.openai.com/v1/chat/completions",
|
description:
|
||||||
# or "https://api.anthropic.com/v1/messages".
|
en: Operator-stated goal in natural language — what the resulting flow should accomplish.
|
||||||
llm_endpoint: text
|
de: Ziel in natürlicher Sprache — was der erzeugte Flow erreichen soll.
|
||||||
# Model identifier, e.g. "qwen2.5:14b" for Ollama or "gpt-4o-mini".
|
llm_endpoint:
|
||||||
llm_model: text
|
type: text
|
||||||
# Optional bearer token for cloud providers. Empty string means
|
description:
|
||||||
# no Authorization header is sent.
|
en: |
|
||||||
llm_api_key: text
|
LLM HTTP endpoint, e.g. "http://localhost:11434/api/chat"
|
||||||
# Optional JSON-encoded list of installed capabilities. If
|
for Ollama, "https://api.openai.com/v1/chat/completions",
|
||||||
# omitted or empty, the module plans without capability context.
|
or "https://api.anthropic.com/v1/messages".
|
||||||
available_capabilities: text
|
de: |
|
||||||
# Optional JSON-encoded list of all known store capabilities
|
LLM-HTTP-Endpunkt, z. B. "http://localhost:11434/api/chat"
|
||||||
# (installed + planned + alpha). Used when the orchestrator
|
für Ollama, "https://api.openai.com/v1/chat/completions"
|
||||||
# needs to suggest installations.
|
oder "https://api.anthropic.com/v1/messages".
|
||||||
store_capabilities: text
|
llm_model:
|
||||||
|
type: text
|
||||||
|
description:
|
||||||
|
en: Model identifier, e.g. "qwen2.5:14b" for Ollama or "gpt-4o-mini".
|
||||||
|
de: Modell-Identifier, z. B. "qwen2.5:14b" (Ollama) oder "gpt-4o-mini".
|
||||||
|
llm_api_key:
|
||||||
|
type: text
|
||||||
|
description:
|
||||||
|
en: Optional bearer token for cloud providers. Empty = no Authorization header.
|
||||||
|
de: Optionaler Bearer-Token für Cloud-Provider. Leer = kein Authorization-Header.
|
||||||
|
available_capabilities:
|
||||||
|
type: text
|
||||||
|
description:
|
||||||
|
en: |
|
||||||
|
Optional JSON-encoded list of installed capabilities.
|
||||||
|
Omit or pass an empty string to plan without capability
|
||||||
|
context.
|
||||||
|
de: |
|
||||||
|
Optional JSON-codierte Liste der installierten
|
||||||
|
Capabilities. Leer = ohne Capability-Kontext planen.
|
||||||
|
store_capabilities:
|
||||||
|
type: text
|
||||||
|
description:
|
||||||
|
en: |
|
||||||
|
Optional JSON-encoded list of all known store
|
||||||
|
capabilities (installed + planned + alpha). Used when
|
||||||
|
the orchestrator needs to suggest installations.
|
||||||
|
de: |
|
||||||
|
Optional JSON-codierte Liste aller bekannten Store-
|
||||||
|
Capabilities (installiert + geplant + alpha). Nötig,
|
||||||
|
wenn der Orchestrator Installationen vorschlagen soll.
|
||||||
|
|
||||||
# Outputs produced.
|
|
||||||
outputs:
|
outputs:
|
||||||
# JSON-encoded Plan compatible with `fai_hub::plan::Plan`.
|
plan:
|
||||||
plan: json
|
type: json
|
||||||
# The endpoint the plan was generated against. Empty when the
|
description:
|
||||||
# deterministic stub path (no llm_endpoint) ran.
|
en: JSON-encoded Plan compatible with `fai_hub::plan::Plan`.
|
||||||
model_endpoint: text
|
de: JSON-codierter Plan, kompatibel mit `fai_hub::plan::Plan`.
|
||||||
# The model name as supplied to the LLM API.
|
model_endpoint:
|
||||||
model_name: text
|
type: text
|
||||||
# SHA-256 digest of the served Ollama model, when reachable.
|
description:
|
||||||
# Empty for cloud providers (OpenAI / Anthropic do not expose
|
en: |
|
||||||
# a digest API) and for the deterministic stub path. Together
|
The endpoint the plan was generated against. Empty when
|
||||||
# with model_endpoint and model_name this answers the audit
|
the deterministic stub path (no llm_endpoint) ran.
|
||||||
# question "which exact model produced this plan?"
|
de: |
|
||||||
model_digest: text
|
Endpunkt, gegen den der Plan erzeugt wurde. Leer beim
|
||||||
|
deterministischen Stub-Pfad (ohne llm_endpoint).
|
||||||
|
model_name:
|
||||||
|
type: text
|
||||||
|
description:
|
||||||
|
en: The model name as supplied to the LLM API.
|
||||||
|
de: An die LLM-API übergebener Modellname.
|
||||||
|
model_digest:
|
||||||
|
type: text
|
||||||
|
description:
|
||||||
|
en: |
|
||||||
|
SHA-256 digest of the served Ollama model, when
|
||||||
|
reachable. Empty for cloud providers (OpenAI / Anthropic
|
||||||
|
do not expose a digest API) and for the deterministic
|
||||||
|
stub path. Together with model_endpoint and model_name
|
||||||
|
this answers the audit question "which exact model
|
||||||
|
produced this plan?"
|
||||||
|
de: |
|
||||||
|
SHA-256-Digest des bedienten Ollama-Modells, wenn
|
||||||
|
erreichbar. Leer für Cloud-Provider (OpenAI / Anthropic
|
||||||
|
bieten keine Digest-API) und für den deterministischen
|
||||||
|
Stub-Pfad. Zusammen mit model_endpoint + model_name
|
||||||
|
beantwortet das die Audit-Frage "welches genaue Modell
|
||||||
|
hat diesen Plan erzeugt?"
|
||||||
|
|
||||||
# Permissions required.
|
# Permissions required.
|
||||||
#
|
#
|
||||||
# The module makes outbound HTTP to the configured LLM endpoint.
|
# The module makes outbound HTTP to the configured LLM endpoint.
|
||||||
# Default declarations cover the common providers (cloud OpenAI,
|
|
||||||
# Anthropic, local Ollama on loopback). Operators with different
|
|
||||||
# LLM endpoints add a host-level entry via operator config
|
|
||||||
# (Phase 1+) — for Phase 0.5 they fork module.yaml.
|
|
||||||
permissions:
|
permissions:
|
||||||
- "net: api.openai.com"
|
- "net: api.openai.com"
|
||||||
- "net: api.anthropic.com"
|
- "net: api.anthropic.com"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue