plugins/<name>/plugin.yaml. You do not add it to a central registry or manually attach it to the root agent.
After compilation, Harnest exposes the plugin module as harnest.plugins.<name>. Import the singleton from a discovered Agent Tool and call its bounded API:
tools/query_warehouse.py
warehouse.context resolves the typed WarehouseContext created for that request. Retaining it after the invocation ends fails closed.
Resolve the typed context explicitly
Trusted application code can ask Harnest for the same invocation-scoped view:lib/warehouse_service.py
Find published plugins
Search public PyPI for compatibleharnest-plugin-* packages:
harnest.plugins entry point, the bundled plugin.yaml and plugin.py, release identity, and the published wheel digest without importing package code. official means Fused controls and explicitly recognizes that package name; community means only that the wheel satisfies the structural contract. Neither label is a security review.
Create your own plugin
Define the local manifest, singleton, typed context, and dependencies.
Use plugin lifecycle
Add only the hooks and factories declared by the manifest.