Skill Manifest - answerrocket/answerrocket-python-client GitHub Wiki
The skill manifest is a JSON file that contains a variety of definitions for the skill package.
The skill manifest file follows this convention:
<skill name>_manifest.json
For example, the Search Bot
skill (currently defined in Search Bot.ipynb
) has a manifest file named Search Bot_manifest.json
.
The skill manifest currently contains the following fields
- artifacts
- defaultDescription
- defaultLLMDescription
- defaultParameters
These are discussed in more detail below.
The artifacts
field is a list of optional artifacts that can be published by the skill, and later configured at runtime in Skill Studio.
Each list item is an object with the following fields:
- artifactPath
- name
- artifactType
The path of the artifact, relative to where the skill manifest is defined.
For example: myconfig/greeting.html
The artifact path is what gets passed into the SDK's get_artifact()
function.
The name of the artifact. This name gets displayed in Skill Studio in the copilot skill's list of artifacts.
The type of artifact. Currently, must be one of the following (case-sensitivity is important):
- json
- text
- yaml
The default description of the skill displayed to users in chat. The description can be overwridden when configuring the skill as part of a copilot.
The default description of the skill sent to the LLM. The LLM description can be overwridden when configuring the skill as part of a copilot.
A list of parameters defined as defaults for the skill. These can be overridden when configuring the skill as part of a copilot.
Each list item is an object with the following fields:
- parameterKey
- name
- description
- parameterInfo
Defines the type of parameter. Multiple parameters can be added to a copilot of the same parameter type (e.g. a filter parameter type use as a brand filter, and another filter parameter type used as a category filter).
The name of the parameter, used as a default when naming the parameter in a copilot.
The description of parameter. This gets sent to the LLM, and can be overridden when configuring the parameter for a copilot.
A JSON object containing additional information for the parameter. The field defined depend on the type of parameter. For example:
"parameterInfo" : {
"is_multi": true,
"constrained_values": [],
"is_required": true,
"is_hidden": false,
"default_value": null
}