feat(skills): expose additional tools after skill activation#94
feat(skills): expose additional tools after skill activation#94wangjl1993 wants to merge 1 commit into
Conversation
|
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
64a95df to
f4dac0a
Compare
|
Thx for contribution! We need a bit of time to verify how it will co-work with just introduced context compaction. In the mean time can you sync it to HEAD revision? Thx! |
Aligns Kotlin SkillToolset with adk-python's "load_skill activates additional tools" mechanism. Skills declare tool names in their frontmatter via `metadata.adk_additional_tools`; those tools stay hidden from the LLM until the model calls `load_skill` for that skill. The activation state is recorded per-agent under `_adk_activated_skill_{agent}` and re-read on every LLM step, so each subsequent request sees the expanded toolset.
f4dac0a to
e0695bd
Compare
Synced the PR to latest main HEAD and verified with full build: GRADLE_OPTS="-Xmx4g -XX:MaxMetaspaceSize=1g -Dorg.gradle.daemon=false" JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 ./gradlew -Pkotlin.daemon.jvmargs="-Xmx4g" BUILD SUCCESSFUL in 2m 18s The skill activation state is stored in session state and re-read when toolsets build tools for each LLM step, so it should survive context compaction. |
Aligns Kotlin
SkillToolsetwith adk-python's "load_skill activates additional tools" behavior.Skills can declare additional tool names in frontmatter via
metadata.adk_additional_tools. These tools remain hidden from the LLM until the model callsload_skillfor that skill.Activation state is recorded per-agent under
_adk_activated_skill_{agent}and re-read on each LLM step, so subsequent requests expose the expanded toolset.This also:
metadata.adk_additional_toolsin loaded/listed frontmatter responses.metadata.adk_additional_toolsas a list of non-blank strings.Validation:
./gradlew -Pkotlin.daemon.jvmargs="-Xmx4g" --no-daemon --stacktrace build