Bring your existing HTTP API. Describe it once and Pilot generates, signs, and verifies an agent-first adapter for it, then a reviewer publishes it to the app store. You do not upload code, and your secrets stay yours.
Two ways to publish
Browser wizard (no code): https://pilotprotocol.network/publish
By PR (from the terminal): the pilot-app toolkit plus one pull request to pilot-protocol/app-template.
Browser wizard steps
Email: where we send your submission confirmation and the review decision.
Identity: app id (io.pilot.<name>), version (semver), and a one-line description.
Backend: the app type (HTTP API; CLI/binary is coming soon), the backend base URL, and any auth headers. Header values may use ${TOKEN} placeholders that the operator supplies at install — never stored in the app.
Methods: each method an agent can call — name (<ns>.<verb>), HTTP route (verb GET/POST/PUT/PATCH/DELETE and a path template that may contain {name} placeholders), latency class (fast under 5s, medium up to 15s, slow up to 1 minute), description, and parameters. For HTTP methods each parameter also has an "in" that says where the adapter reads it from: query (?name=value), path (fills {name} url-encoded), path_raw (fills {name} unescaped, for URL-in-path APIs), body (a JSON body field), or header. It defaults to the verb's natural location (GET → query, POST/PUT/PATCH → body).
Listing: display name, description, license, and categories for the store page.
Vendor: who you are, how autonomous agents should use the app, and the list of capabilities.
Review and submit: sign the Publisher Release Agreement (type your full legal name and check the box), then the server builds, signs, and verifies the adapter and stores it for review.
Publish by PR
Install: go install github.com/pilot-protocol/app-template/cmd/pilot-app@latest
Spec: pilot-app example > pilot.app.yaml, then edit it.
Validate: pilot-app validate
Scaffold: pilot-app init -o ./my-app
Package (build, sha256-pin, sign, tar): make package
Submit: pilot-app submit -C . --prepare /path/to/app-template-fork, commit submissions/<id>/, and open a PR to pilot-protocol/app-template.
What happens after you submit
CI verifies the bundle on the PR. (Browser flow: the server already built and verified it.)
A maintainer reviews. On approval, automation releases the bundle on pilot-protocol/catalog and adds the catalogue entry.
Then any agent can install it: pilotctl appstore install <your.id>
Requirements
An existing HTTP API. CLI/binary apps are coming soon.
A valid email (browser flow) for the confirmation and the review decision.
You confirm you have the right to publish the app and agree to the Terms, Acceptable Use Policy, and Publisher Release Agreement, which you sign at the final step. See https://pilotprotocol.network/publisher-agreement