Files
mudler-agentandEttore Di Giacinto 6e3222922e feat(addons): show the tool count of each add-on before install (#12898)
The add-on cards, the Find add-ons tab and the install dialog said
"Adds a page" for a library entry but nothing about chat tools, so the
tools only showed once the add-on was installed.

The library index now carries toolCount and tools on each entry, with
the same names as the installed view. They come from capabilities.tools
of the manifest; admin tools are not chat tools and are not counted.
Tools is capped at 32 names and toolCount stays the full number. The
catalog reader validates the hint and refuses it on a backend entry.
addonpkg catalog writes the fields. The new catalog-tools subcommand adds
them to an existing index from addons/<id>/manifest.json, and leaves
every digest and artifact as it was.

The UI reads the fields through the same helper as the installed view and
shows "Adds N tools" when N is above zero.

Assisted-by: Claude:claude-sonnet-5-5 [Claude Code]

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
Co-authored-by: Ettore Di Giacinto <mudler@localai.io>
2026-10-25 19:13:30 +01:00

171 lines
6.1 KiB
YAML

# Official add-on library: the first-party add-ons, one entry for each package.
# LocalAI registers this file as its default library (the raw URL of this file
# on the master branch). The entries are rendered by the add-on package
# workflow with `addonpkg catalog`: regenerate this file from the workflow
# output, never edit a digest by hand. A release entry is pinned by digest. A
# development entry is mutable: it keeps the moving tag <id>-development, has
# no digest, and the install resolves the tag to a digest, verifies the
# signature against it and records it, as for a development backend.
- id: "fine-tuning"
name: Fine-tuning
description: "Train an adapter on your own data, then export it as a model you can chat with."
version: "0.0.0-development"
channel: "development"
artifact: "oci://quay.io/go-skynet/local-ai-addons:fine-tuning-development"
mutable: true
os: "linux"
arch: "amd64"
policy:
requireSignature: true
issuer: "https://token.actions.githubusercontent.com"
identity: "https://github.com/mudler/LocalAI/.github/workflows/addons-package.yml@refs/heads/master"
ui:
title: "Fine-tuning"
description: "Train an adapter on your own data, then export it as a model you can chat with."
mainPage: "jobs"
icon: "ui/icon.png"
toolCount: 8
tools:
- "resource-exists"
- "fine-tune-list"
- "fine-tune-start"
- "fine-tune-dataset"
- "fine-tune-status"
- "fine-tune-checkpoints"
- "fine-tune-stop"
- "fine-tune-export"
- id: "quantization"
name: Quantization
description: "Shrink a model to a smaller quantized file, then import it so you can chat with it."
version: "0.0.0-development"
channel: "development"
artifact: "oci://quay.io/go-skynet/local-ai-addons:quantization-development"
mutable: true
os: "linux"
arch: "amd64"
policy:
requireSignature: true
issuer: "https://token.actions.githubusercontent.com"
identity: "https://github.com/mudler/LocalAI/.github/workflows/addons-package.yml@refs/heads/master"
ui:
title: "Quantization"
description: "Shrink a model to a smaller quantized file, then import it so you can chat with it."
mainPage: "jobs"
icon: "ui/icon.png"
toolCount: 6
tools:
- "resource-exists"
- "quantize-list"
- "quantize-start"
- "quantize-status"
- "quantize-stop"
- "quantize-import"
- id: "voice"
name: Voice
description: "Recognise who is speaking, keep the voices that text-to-speech can use, and speak text with them."
version: "0.0.0-development"
channel: "development"
artifact: "oci://quay.io/go-skynet/local-ai-addons:voice-development"
mutable: true
os: "linux"
arch: "amd64"
policy:
requireSignature: true
issuer: "https://token.actions.githubusercontent.com"
identity: "https://github.com/mudler/LocalAI/.github/workflows/addons-package.yml@refs/heads/master"
ui:
title: "Voice"
description: "Recognise who is speaking, keep the voices that text-to-speech can use, and speak text with them."
mainPage: "voice"
icon: "ui/icon.png"
- id: "face"
name: Face
description: "Find out whose face is in a photo, or whether two photos show the same person."
version: "0.0.0-development"
channel: "development"
artifact: "oci://quay.io/go-skynet/local-ai-addons:face-development"
mutable: true
os: "linux"
arch: "amd64"
policy:
requireSignature: true
issuer: "https://token.actions.githubusercontent.com"
identity: "https://github.com/mudler/LocalAI/.github/workflows/addons-package.yml@refs/heads/master"
ui:
title: "Face"
description: "Find out whose face is in a photo, or whether two photos show the same person."
mainPage: "recognition"
icon: "ui/icon.png"
- id: "studio"
name: Studio
description: "Make images, video, 3D models, speech, sound and transformed audio with the models you have installed, and keep what you make."
version: "0.0.0-development"
channel: "development"
artifact: "oci://quay.io/go-skynet/local-ai-addons:studio-development"
mutable: true
os: "linux"
arch: "amd64"
policy:
requireSignature: true
issuer: "https://token.actions.githubusercontent.com"
identity: "https://github.com/mudler/LocalAI/.github/workflows/addons-package.yml@refs/heads/master"
ui:
title: "Studio"
description: "Make images, video, 3D models, speech, sound and transformed audio with the models you have installed, and keep what you make."
mainPage: "studio"
icon: "ui/icon.png"
- id: "talk"
name: Talk
description: "Have a spoken conversation with a model: your voice goes in, the answer is spoken back."
version: "0.0.0-development"
channel: "development"
artifact: "oci://quay.io/go-skynet/local-ai-addons:talk-development"
mutable: true
os: "linux"
arch: "amd64"
policy:
requireSignature: true
issuer: "https://token.actions.githubusercontent.com"
identity: "https://github.com/mudler/LocalAI/.github/workflows/addons-package.yml@refs/heads/master"
ui:
title: "Talk"
description: "Have a spoken conversation with a model: your voice goes in, the answer is spoken back."
mainPage: "talk"
icon: "ui/icon.png"
- id: "tables"
name: Tables
description: "Databases of tables you own or share: typed rows, filters, schema and sharing."
version: "0.0.0-development"
channel: "development"
artifact: "oci://quay.io/go-skynet/local-ai-addons:tables-development"
mutable: true
os: "linux"
arch: "amd64"
policy:
requireSignature: true
issuer: "https://token.actions.githubusercontent.com"
identity: "https://github.com/mudler/LocalAI/.github/workflows/addons-package.yml@refs/heads/master"
ui:
title: "Tables"
description: "Databases of tables you own or share: typed rows, filters, schema and sharing."
mainPage: "databases"
icon: "ui/icon.png"
toolCount: 16
tools:
- "resource-exists"
- "databases-create"
- "databases-rename"
- "databases-inspect"
- "tables-create"
- "tables-rename"
- "tables-drop"
- "columns-add"
- "columns-rename"
- "columns-drop"
- "rows-query"
- "rows-aggregate"
- "rows-export"
- "rows-insert"
- "rows-update"
- "rows-delete"