Skip to content

fix(skills): remove unregistered script tool from default instructions - #1590

Open
quifox wants to merge 1 commit into
google:mainfrom
quifox:fix/skill-tool-instruction
Open

quifox wants to merge 1 commit into
google:mainfrom
quifox:fix/skill-tool-instruction

Conversation

@quifox

@quifox quifox commented Oct 1, 2026

Copy link
Copy Markdown

Description of Change

Problem: SkillToolset's default system instruction tells the model to call run_skill_script, but the toolset registers only list_skills, load_skill, and load_skill_resource.

Solution: Remove the instruction to call the unregistered tool. Add a regression test that extracts the tool names mentioned by the default instruction, verifies the extracted list is nonempty, and checks each name against the actual tool list. Custom system instructions retain their existing behavior.

Testing Plan

Unit Tests:

  • I have updated unit tests for my change.
  • New and existing core unit tests pass with my changes.

Java 17, with Google Java formatting enabled:

mvn -B -ntp -pl core -Dfmt.skip=false test

Full core completed with 2,016 tests, 0 failures, 0 errors, and 24 skipped in each of the default-test and basic executions. SkillToolsetTest ran all 6 tests successfully, including the new default-instruction regression and the existing custom-instruction coverage. The additional configured Surefire executions also completed successfully. The two main executions run the same suite; their counts are not added together as distinct tests.

Manual End-to-End (E2E) Tests: Not run against a live model provider. The regression exercises the toolset's injected system instruction and compares it with the tools returned by getTools(); the existing custom-instruction test remains part of the suite.

Checklist

  • I have read CONTRIBUTING.md.
  • My pull request contains a single commit.
  • I have performed a self-review of my code.
  • I have added a test that proves the fix is effective.
  • New and existing core unit tests pass with my changes.
  • I have manually tested my changes end-to-end.

No script-execution tool, dependency, or public API is added.

@google-cla

google-cla Bot commented Oct 1, 2026

Copy link
Copy Markdown

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant