Файли
l0ng-ai fd1f465aeb feat(plugins): extension points, capability consent, async runtime and plugin API 1.0
Rework the plugin system per docs/plugin_plan.md (P0–P8):

- Extension-point registry (ide-extension) so new contribution types register
  without touching the kernel; languages, run detectors, providers, views and
  UI contributions go through it.
- Per-plugin capability consent with a risk-graded ledger; process
  capabilities are pinned to resolved binary paths and hashes.
- Async, actor-per-plugin Wasm runtime with lazy activation, cancellation,
  events, long-running tasks and idle reclamation.
- Plugin host moved into ide-host, shared by local and remote projects.
- Distribution: install/package tooling (openidea-plugin bin) and a static
  market index.
- WIT frozen as openidea:[email protected]; Rust SDK with mock host.
- Ten official validation plugins under plugins/official.
2026-11-04 02:41:46 +08:00

32 рядки
1.0 KiB
TOML

id = "openidea.key-promoter"
name = "Key Promoter"
version = "0.1.0"
description = "Shows the keyboard shortcut of an action you ran with the mouse, and counts how often you could have used it."
authors = ["OpenIDEA contributors"]
license = "Apache-2.0"
change-notes = "0.1.0 — first release: shortcut tips, statistics, per-action \"don't show again\"."
engines.openidea = "^1.0"
wasm = "dist/plugin.wasm"
# Actions arrive in batches (a few seconds apart while the plugin is idle),
# so it is not woken for every click.
activation = ["on-event:action-performed", "on-command:*"]
[capabilities]
# `events.input`: which actions you run and how (keyboard, menu, toolbar…).
required = ["events.input", "storage"]
[[contributes.commands]]
id = "statistics"
title = "Key Promoter: Show Statistics"
category = "Key Promoter"
[[contributes.commands]]
id = "reset"
title = "Key Promoter: Reset Statistics"
category = "Key Promoter"
[[contributes.commands]]
id = "suppress-last"
title = "Key Promoter: Don't Show Tips for the Last Action"
category = "Key Promoter"