Skip to main content

Building your first CP extension

Goal: From humanos.extension.v1 manifest to a live org section in the Command Plane.

1. Scaffold

human extension create my-ext --humanos --non-interactive --template blank
cd my-ext-humanos-extension
human extension validate humanos.extension.v1.yaml
human extension dev

Templates include blank, analytics-dashboard, content-list, policy-monitor, companion-toolkit.

2. Declare sections

Use only v1 registry types: artifact_list, metrics_dashboard, policy_progress_gate, alert_config, learning_proposals. Set nav_scope to org for the hub at /extensions or instance for agent-scoped nav.

3. Optional iframe section

Set rendering: sandboxed_iframe plus bundle.url and bundle.hash (sha256: + 64 hex). Expect manual vetting and certified trust tier for global listing. Protocol: apps/command-plane-web/public/ai/humanos-extension-protocol-v1.json.

4. Submit & install

human extension publish humanos.extension.v1.yaml --dry-run

Then submit via API (POST /v1/control-plane/marketplace/submit) with asset_type: extension. Reviewers see metadata.platform_extension_vetting from the automated classifier.

5. Operate

After install, open Platform extensions in CP — org sections link to /extensions/[installationId]/[sectionId]. Section type help and /extensions/section-types explain each renderer.

← All guides