Publishing makes an agent version available for installation.
Today, the CLI docs describe publishing as making an agent available to your organization.
Publish with `guild agent save`
You can save, validate, and publish in one command:
Key flags
- `—message`: Sets the version message for this save.
- `—wait`: Blocks until validation passes.
- `—publish`: Publishes after a successful save (and after validation if you also pass `—wait`).
Publish separately
If you already saved a draft version, you can publish later:
To wait for validation before publishing:
To customize the wait timeout budget (in seconds, default is 300):
The --timeout option overrides the wait budget for both the validation wait and the publish wait. It must be a positive integer; providing an invalid value causes the command to exit with code 1.
Visibility and who can install
Agents have three visibility states:
- Draft: no published version. The agent is not available for installation. Organization members can see it in the organization Browse tab with a draft badge.
- Team-installable: published with visibility restricted to your organization (
is_public=false). Organization members can find and install the agent from the organization Browse tab and category pages. Displayed with an internal badge.
- On-Hub: published and listed on the public Agent Hub (
is_public=true). Anyone can find the agent on the Agent Hub. Organization members also see it in the organization Browse tab and category pages. Displayed with a public badge.
Publishing with guild agent save --publish or guild agent publish makes the agent Team-installable by default.
To promote an agent to On-Hub, use the agent settings page:
- Open the agent in app.guild.ai and go to its settings page.
- Select Public visibility. This marks the form as unsaved and enables Save.
- Click Save. A publish confirmation dialog appears before the change commits.
- Confirm the dialog. The visibility change commits atomically with any other unsaved settings (avatar, tags, maintainer, and archive status).
If the save fails, the form retains the Public selection so you can fix the issue and retry without re-selecting.
Making an agent public is permanent. Once an agent is On-Hub (is_public=true), you cannot revert it to a private or organization-only state. Attempting to change is_public from true to false is rejected with a 403 Forbidden error. Only operators can bypass this restriction.
What validation runs during `—wait`
`—wait` blocks until validation passes.
The docs do not currently enumerate the full set of validation checks.
Common failure modes called out in troubleshooting:
- TypeScript errors in `agent.ts`
- Saving without being inside an agent directory (one with a `guild.json` file)
If validation fails, check the latest version and save again:
What appears in the Agent Hub listing
The docs do not currently specify which fields appear in the Hub listing and where each one comes from in the agent source.
Update a published agent
To update an agent, save a new version and publish it:
To inspect status and version history:
Unpublish
To unpublish the latest published version:
View your published agent in the UI
Open app.guild.ai, go to Agents, then click Add agent to browse the Agent Hub.