Files
paseo/plugin-examples/linear
Mohamed Boudra a5d2b7d863 Declare and enforce plugin Paseo version requirements (#4430)
* feat(plugins): enforce declared Paseo version requirements

Treat manifests without a Paseo requirement as pre-0.8 plugins so the first breaking plugin release offers an explicit migration path. Check the daemon and app independently before plugin execution, and preserve installed Git revisions when updates are incompatible.

* fix(nix): refresh dependency hash for plugin requirements

* refactor(plugins): validate test manifest inputs and name compatibility input
2026-09-07 17:20:19 +02:00
..

Linear plugin example

This example adds Attach Linear issue to the composer. Search by issue identifier or title, then send a stable issue snapshot to the agent.

Set a personal API key in the daemon environment:

export LINEAR_API_KEY="lin_api_..."

Register the extension in $PASEO_HOME/config.json:

{
  "pluginsEnabled": true,
  "plugins": {
    "linear": {
      "source": "directory",
      "path": "/absolute/path/to/paseo/plugin-examples/linear"
    }
  }
}

Restart the development daemon after changing its environment or plugin configuration.

The split entry point demonstrates the complete attachment-source pattern:

  • define the validated search RPC and attachment metadata in shared/issues.ts;
  • handle it in the daemon subprocess from server/issues.ts and index.server.ts;
  • register the attachment source from index.client.ts;
  • keep credentials and vendor API calls out of the client bundle.