Follow these steps in order. Do not skip ahead.
observability-engineer instead)Stop the gateway first to avoid hot-reload issues during configuration.
claude gateway stop
claude plugins install manifest
If it fails, check that the CLI is installed and available in the PATH.
Ask the user:
To connect your agent, you need a Manifest API key. Here's how to get one:
- Go to https://app.manifest.build and create an account (or sign in)
- Once logged in, click "Connect Agent" to create a new agent
- Copy the API key that starts with
mnfst_- Paste it here
Wait for a key starting with mnfst_. If the key doesn't match, tell the user the format looks incorrect and ask them to try again.
claude config set plugins.entries.manifest.config.apiKey "USER_API_KEY"
Replace USER_API_KEY with the actual key the user provided.
Ask the user if they have a custom endpoint. If not, the default (https://app.manifest.build/api/v1/otlp) is used automatically. If they do:
claude config set plugins.entries.manifest.config.endpoint "USER_ENDPOINT"
claude gateway install
Wait 3 seconds for the gateway to fully start, then check the logs:
grep "manifest" ~/.claude/logs/gateway.log | tail -5
Look for:
[manifest] Observability pipeline active
If it appears, tell the user setup is complete. If not, check the error messages and troubleshoot.
mnfst_ prefix) before writing to config| Error | Fix |
|---|---|
| Missing apiKey | Re-run step 4 |
| Invalid apiKey format | The key must start with mnfst_ |
| Connection refused | The endpoint is unreachable. Check the URL or ask if they self-host |
| Duplicate OTel registration | Disable the conflicting built-in plugin: claude plugins disable diagnostics-otel |
Use @manifest to set up observability for my agent.
Use @manifest to connect my agent to my self-hosted Manifest instance at https://manifest.internal.company.com/api/v1/otlp
mnfst_ — any other format is invalid