Skip to main content
Save a company contract and use it to create hotel-agent. The saved manifest is your reusable source; each new agent gets its own copy to validate against. On this page:

Quickstart

Run these complete commands from the directory that will hold your agent:
Terminal
The first command opens the manifest editor. Set the rules, then choose Review and save → Save manifest. The second lists the saved contracts, then opens guided agent setup using the one you pick. Finish and save the agent before running the checks.
A manifest approves choices; it does not create models, tools or prompts. Complete the agent setup before validating or running it.

1. Create the contract

In acme-corp, set the company name and revision under Identity. Then open the sections your company needs to restrict. Omitted rules add no restriction, so you do not need to fill every section. For Models, choose a role, then Add provider. Selecting a service offers Allow all models or Add model ID. The second opens the input directly; repeat it for more models. Each role supports several providers. Keep slng as the provider for models served through SLNG. Its model IDs can name different makers. Direct deepgram or cartesia connections are separate provider entries. Approval still depends on the target supporting that binding.

Move through the editor

Arrow keys edit text in a form; they do not move between its controls. After adding a value, Add stays selected: press Enter to add another. Completed edits stay in the draft when you leave a list or section. New provider and region entries join it once their required fields are complete. Switching sections asks before discarding incomplete input. Only Review and save → Save manifest writes the file. The review names changes, validation errors and the destination. Existing saved names are never overwritten by create.

2. Build an agent from it

One flag attaches a contract to a new package:
Terminal
The picker lists the saved contracts, default first, and takes no name of its own: the name before the flag is the agent’s. Guided setup then offers only what the chosen contract allows. Plain unmute init hotel-agent writes the ordinary starter package and reads no saved manifest. The picker needs a terminal, so a coding assistant cannot create a governed package. Create it yourself, install the Unmute skill, then give the assistant the use case and ask it to complete those files. It reads the copied rules, implements the agent, then validates and compiles it. Creation copies the exact contract into hotel-agent/manifest.yaml and links it from agent.yaml. Commit both files. Validation then works on another computer or in CI without the saved library.

3. Check the agent

After completing hotel-agent, run the validation and compilation commands from the quickstart. Both read hotel-agent/manifest.yaml, not the saved library. Fix the agent when it violates a company rule; do not weaken the contract. A successful compile does not test a conversation. Use the browser loop for LiveKit or Pipecat. SLNG has no unmute dev; follow its deployment workflow. Twilio has no unmute dev either: its first real test is a phone call.

Advanced

Update the saved contract

Reopen the same contract when your company rules change:
Terminal
The saved name stays fixed; the company name and revision are editable. Revisions increase only when you change them. Saving replaces formatting and comments with clean YAML and creates an exact backup beside the original. The command prints both paths. Unchanged edits preserve the original bytes and create no backup. A save error keeps the draft open for correction or retry.
Editing acme-corp does not change hotel-agent/manifest.yaml or any existing package. See updating a package contract before replacing its copy.

Choose the default for future agents

Terminal
The --from-manifest picker lists this default first, and the unmute console uses it for a new agent. The first saved manifest becomes the default automatically; later creations offer to change it. Plain unmute init <name> reads no saved manifest, so the default never changes what it writes. manifest use requires a valid saved manifest and changes no existing package.

Save a written file

--file stores a manifest you already wrote, with no prompts and no terminal:
Terminal
It validates before saving, refuses an unknown key or a bad value with its line and column, and writes nothing when it refuses. This is how a coding assistant saves a contract it drafted with you: install the skill, ask it to write the manifest, read the file, then run this command. The first saved manifest becomes the default; a later one leaves the default alone.

Edit YAML in an external editor

Use this alternative when you prefer YAML or need to repair an invalid saved file:
Terminal
--editor uses VISUAL, falling back to EDITOR. The editor must wait until you close the file. This edits the complete contract, not a fragment to merge. The same flag also works with manifest create acme-corp --editor for a new name. Temporary drafts are validated before saving. A failed editor or invalid draft leaves the saved file untouched and reports the draft path. Successful replacements use the same backup protection as the terminal editor.

Storage and terminal support

Saved files live under the user config directory at unmute/manifests/<name>/manifest.yaml; unmute/default-manifest holds the default name. Names use letters, digits, hyphens and underscores. Omitting a name from manifest create prompts for one. The editor needs at least 60 columns and 18 rows. Smaller terminals retain the draft and ask you to resize. TERM=dumb uses numbered prompts with :sections and :help instead of F2 and F1. The editor does not offer Allow nothing for models. Existing empty model rules must be repaired before saving. YAML and --editor still support them; see the manifest reference for all rule meanings.

Command help

Terminal — unmute manifest --help
Terminal — unmute manifest create --help
Terminal — unmute manifest edit --help
Terminal — unmute manifest use --help

Troubleshooting

Where to go next

Build an agent

Create hotel-agent from the contract you saved.

Use a coding assistant

Let the skill complete the use case within your company rules.