Skip to content

feat(skills): add global skill availability controls - #1810

Merged
wsp1911 merged 1 commit into
GCWing:mainfrom
wsp1911:fix/popup-window
Jul 27, 2026
Merged

feat(skills): add global skill availability controls#1810
wsp1911 merged 1 commit into
GCWing:mainfrom
wsp1911:fix/popup-window

Conversation

@wsp1911

@wsp1911 wsp1911 commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

Add a global enable/disable control to each user-level Skill card. Disabling a Skill prevents it from being selected or invoked by every agent type, while preserving existing per-agent and project-level preferences for restoration after it is re-enabled.

Fixes #1806

Type and Areas

Type: Feature / UI/UX

Areas: Rust core, agent runtime, desktop/Tauri, web UI, locales

Motivation / Impact

Users can now disable an unwanted built-in or installed user-level Skill once from the Skills page instead of repeating the change for each agent. The global setting is stored by stable Skill key and applies to implicit discovery, explicit invocation, and hidden built-in fallback. Project-level Skills remain outside this global control.

Verification

  • cargo check --workspace
  • cargo test -p bitfun-agent-runtime --test skill_contracts
  • Desktop remote workspace policy exact test
  • Focused useInstalledSkills test
  • pnpm run type-check:web
  • pnpm run i18n:audit
  • pnpm run fmt:rs
  • git diff --check

All passed. cargo check --workspace reported only pre-existing unused-code/import warnings.

Reviewer Notes

Global disable is a runtime veto rather than a replacement for mode-specific preferences. Re-enabling a Skill restores its prior mode and project behavior. Remote workspace policies declare both new desktop commands as workspace-agnostic.

Checklist

  • This PR is focused and does not include secrets, temporary prompts, generated scratch files, or unrelated artifacts.
  • Relevant verification is recorded above, or skipped checks are explained.
  • User-facing strings, docs, and locales are updated where applicable.

- persist globally disabled user skill keys in shared configuration
- exclude disabled skills from runtime selection across all agent types
- add desktop APIs and Skills page controls for global availability
- show globally disabled skills as locked in agent skill suites
- cover runtime behavior and frontend state with focused tests
@wsp1911
wsp1911 merged commit 4417847 into GCWing:main Jul 27, 2026
7 checks passed
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.

[Bug]: 内置的skills无法禁用

1 participant