Open Function StandardPublishing to the Hub

Publishing to the Hub

Once your OFS function works locally, publish it to the Community Hub so other Aerostack projects can discover and use it.

Prerequisites

  • aerostack.json manifest present
  • Function passes local tests (aerostack test)
  • Logged in: aerostack login

Publish

# Publish the current directory
aerostack publish
 
# Or specify a path
aerostack publish ./my-function

Your function is available immediately at:

https://hub.aerostack.ai/functions/your-username/function-name

What gets published

  • aerostack.json manifest (public)
  • Compiled function bundle (runs on Cloudflare Workers)
  • README.md (if present — shown on the Hub listing)
  • Input/output schema (auto-generated from manifest)
⚠️

Never include secrets, API keys, or credentials in your function bundle. Use sdk.secrets.get() at runtime instead.

Versioning

OFS uses semantic versioning. Publish a new version:

# Bump version in aerostack.json then:
aerostack publish --version 1.1.0
 
# Or use the bump shorthand:
aerostack publish --bump patch   # 1.0.0 → 1.0.1
aerostack publish --bump minor   # 1.0.0 → 1.1.0
aerostack publish --bump major   # 1.0.0 → 2.0.0

Users who have installed your function can update:

aerostack functions update function-name

Consuming published functions

To use a function from the Hub in your project:

aerostack functions add username/function-name

Call it from your Worker:

import { sdk } from '@aerostack/sdk'
 
const result = await sdk.functions.call('username/function-name', {
  userId: 'abc123'
})

Hub listing

Your function’s Hub page shows:

  • Description from aerostack.json
  • Input/output schema
  • Install command
  • README content
  • Version history
  • Usage statistics (invocation count)

To update your listing, re-publish with a new version.