app-store

module
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 23, 2026 License: AGPL-3.0

README

app-store

ci codecov

Extension framework for the Pilot Protocol. Defines the manifest schema, grant policy engine, and IPC contract that let third-party apps plug into a Pilot daemon with capability-scoped access to peer messaging, identity, and storage primitives.

Install

import "github.com/pilot-protocol/app-store"

Usage

import (
    "github.com/pilot-protocol/app-store/pkg/manifest"
    "github.com/pilot-protocol/app-store/plugin/appstore"
)

// Load + validate an app manifest.
m, err := manifest.Load("examples/wallet.manifest.json")
if err != nil { return err }
if err := manifest.Validate(m); err != nil { return err }

// Construct the appstore plugin for the daemon's runtime registry.
svc := appstore.NewService(appstore.Config{
    InstallRoot:   "~/.pilot/apps",
    CatalogPubkey: appstore.EmbeddedCatalogPubkey,
})

Run the tests:

go test ./...

Layout

Package What it does
pkg/manifest Typed manifest schema + validator.
pkg/extend Open-namespace pre/post hooks on any command; runtime registration gated by manifest declarations.
pkg/ipc IPC commands (CmdAppHello, CmdAppSign, …) and framing.
pkg/payment Method, Escrow, Seal interfaces; default chacha20-poly1305 seal.
plugin/appstore The coreapi.Service plugin: scans install root, verifies sha256, supervises child app processes, brokers peer-app IPC calls.
integration Adapter that pins *Service against the daemon's plugin interface at compile time.

Trust chain

The daemon embeds a catalog public key; the catalog signs each manifest; each manifest pins its binary's sha256; the daemon re-verifies the binary on every launch and brokers IPC calls only when the user has explicitly accepted the app's declared grants.

License

AGPL-3.0-or-later. See LICENSE.

Directories

Path Synopsis
examples
hello-world/cmd/hello command
Hello-world Pilot app.
Hello-world Pilot app.
pkg
extend
Package extend is the hook registry that lets installed apps modify the daemon's existing primitives.
Package extend is the hook registry that lets installed apps modify the daemon's existing primitives.
ipc
Package ipc is the wire layer between a Pilot app (the wallet, for now) and the daemon that hosts it.
Package ipc is the wire layer between a Pilot app (the wallet, for now) and the daemon that hosts it.
manifest
Package manifest defines the typed schema for a pilot app manifest.
Package manifest defines the typed schema for a pilot app manifest.
payment
Package payment is the platform's payment-capability protocol surface.
Package payment is the platform's payment-capability protocol surface.
plugin
appstore
Package appstore is the coreapi.Service shim that hosts the app store inside the pilot daemon.
Package appstore is the coreapi.Service shim that hosts the app store inside the pilot daemon.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL