SkillToolset, and connect cloud skill spaces
through VeADK’s VeSkillRegistry.
Local skills
Load a local skill directory with ADK’sload_skill_from_dir and pass it as a
standard toolset to the agent:
list_skills, load_skill,
load_skill_resource, and run_skill_script. If a skill runs scripts from
scripts/, configure a suitable code_executor on the SkillToolset or the
agent when constructing SkillToolset directly through the ADK API.
When skills are loaded through Harness, CLI-generated agent code, or the
AgentKit session capability service, VeADK automatically configures a local
code executor for
SkillToolset, so skill scripts run without additional
configuration.Cloud skill spaces
Connect a cloud skill space throughVeSkillRegistry, then hand it to
SkillToolset:
search_skills fetches the remote
skill list in real time, and get_skill downloads and loads a specific skill on
demand; when the remote version changes, the new version is re-downloaded.
When loading skills,
VeSkillRegistry tolerates non-standard frontmatter fields
(community extensions) in SKILL.md, such as allowed-tools, triggers, and
requires. These fields do not cause loading failures; they are preserved in
the skill frontmatter’s metadata.Harness skills center
Harness can load both Skill Hub skills and AgentKit skills-center spaces. A plain name or slug inskills identifies a Skill Hub skill; the space: prefix identifies a skills-center space ID.
For creating, configuring, and deploying the Harness server, see Harness server deployment.
The skills center requires Volcengine credentials that can read the space and its object-storage content. For local runs, set VOLCENGINE_ACCESS_KEY and VOLCENGINE_SECRET_KEY, plus VOLCENGINE_SESSION_TOKEN for temporary credentials. On VeFaaS, the bound IAM role can provide temporary credentials instead.
harness.yaml stores the sources as a list:
space:ss-example loads every skill in that space and combines them with Skill Hub skills in one SkillToolset. You can also add a space for one invocation:
--skills adds skills on top of the base Harness configuration without changing harness.yaml. If any skill cannot be downloaded, lacks a valid SKILL.md, or violates the ADK skill format, Harness stops that load instead of continuing with a partial skill set.
Skill directory layout
A local skill is a directory containing aSKILL.md file, and may include
references/, assets/, and scripts/ subdirectories:
SKILL.md must declare name and description in frontmatter, and the
directory name must match name:
SKILL.md
Legacy local entry (deprecated)
VeADK’s oldAgent(skills=..., skills_mode="local") local entry still works but
is deprecated; migrate to SkillToolset above. The skills_sandbox and
aio_sandbox modes are unaffected and used as before:
Sandbox mode example:
Dynamic skill loading
Whenenable_dynamic_load_skills=True is set, the agent reloads skills from their configured sources (local directories or cloud skill spaces) before each turn. When new, modified, or deleted skills are detected, the skill list, instruction, and tools are updated automatically without restarting.
enable_dynamic_load_skills can now be used independently of skills: even without an initial skill list, enabling it initializes the skills toolset and registers the refresh callback.