For agents and technical readers

Inspect and change installed-agent controls

Use the intended app identity and current lifecycle authority. Model budget, app access, grant expiry, trigger and loop autonomy are separate controls.

Contents

Inspect before changing

Use the Portal's Agents page or the connection's supported installed-app state read to obtain the actual app id, version, status, trigger, scope, connections and budget. Discover the current act schema and action allowlist. Do not infer that a generic act tool exposes every lifecycle action in every client.

Suspend and resume

With the user's authority and a permitted lifecycle route:

{"action":"app_suspend","item_id":"<installed app id>"}

Resume uses app_resume with the same app id. Read back the installed state. Suspension controls future use; it does not undo prior effects or prove in-flight work was cancelled.

Set rolling seven-day model caps

app_set_budget uses the app id as item_id and a complete config with non-negative integer input/output token caps and either integer micro-USD cost or max_cost_usd. This illustrative template uses invented numbers only to show shape; agree actual caps for the job before calling:

{"action":"app_set_budget","item_id":"<installed app id>","config":{"max_input_tokens":10000,"max_output_tokens":2000,"max_cost_micro":1000000}}

One million micro-USD equals USD1. Caps apply to the rolling seven-day spend window. The pre-call gate checks already-spent totals, so a final admitted call can take the total past a cap. Subscription routes can account cost as zero while consuming tokens. Do not treat a zero monetary reading as unlimited permitted work.

app_clear_budget restores the manifest caps. Read the resulting roster budget and scheduling reason. A refused model call can report a reopening time; a zero cap need not reopen automatically. Do not increase a budget simply to hide an unrelated missing route or access failure.

Upgrade, roll back and remove

Inspect the current catalog offer and its exact scope/effects. app_upgrade can bind consent to the currently shown offer:

{"action":"app_upgrade","item_id":"<installed app id>","config":{"expected_offer_digest":"<exact lowercase SHA256 of the inspected offer>"}}

A mismatched digest refuses before upgrade effects. Native omission of config deliberately accepts the current offer; do not omit it accidentally after reviewing a specific older offer. A local conflict needs an explicit owner decision; replace_local is only valid for an authorised upgrade and must not silently discard edited code.

app_rollback selects the previous installed approved version where supported. app_remove removes the installed app. Inspect returned state and dependent workflows. Neither action undoes prior external effects. After upgrade/resume, inspect an ordinary run and its output before claiming the job works.

Keep loop controls separate

Loop case limits bound nodes, wall-clock, judge spend and optionally open cases. Earned autonomy belongs to one loop/app/action tuple within an approved ladder and ceiling. These are not app_set_budget fields. Use the current loop operator contract and case inspection; a client-excluded action requires an authorised handoff.

Related

Practical guides for people and agents

Start with one useful job

Join the waitlist

Plain text for AI agents. Same content as the human page.

## For agents

- What Mensara is: it gives a team its own Mind, one shared memory for the team and their AI agents, built by Xanadu Labs LLC.
- Status: signup is not open. A person joins the waitlist at https://app.mensara.ai/#waitlist. Agents cannot create an account or sign up.
- How you can help your person: explain what Mensara does, check whether it fits a job their team repeats, and share the waitlist link.
- Agent references: https://app.mensara.ai/llms.txt lists every page as Markdown and the tool input references for connected agents.

---

# Inspect and change installed-agent controls

Operating procedures · For agents and technical readers · [How it works](https://app.mensara.ai/how-it-works)

Use the intended app identity and current lifecycle authority. Model budget, app access, grant expiry, trigger and loop autonomy are separate controls.

[Page as Markdown](https://app.mensara.ai/how-it-works/agent-controls-procedure.md)

[Human guide](https://app.mensara.ai/how-it-works/control-agent-autonomy)

## Use the released interface with current authority

Availability: Core0.20.11 / Portal0.3.47 source checked; discover the actual installed client and enabled features.

Who can do this: The connected principal with the permissions named in this procedure

What changes: The procedure explains its actual reads, writes or external effects before action.

Limits: An input accepted by a source schema is not a successful installed-runtime task.; Keep human decisions, client exclusions and pending results explicit.

Verification: Source checked and independently reviewed; scoped runtime receipts are recorded separately.

## Inspect before changing

Use the Portal's Agents page or the connection's supported installed-app state read to obtain the actual app id, version, status, trigger, scope, connections and budget. Discover the current `act` schema and action allowlist. Do not infer that a generic `act` tool exposes every lifecycle action in every client.

## Suspend and resume

With the user's authority and a permitted lifecycle route:

```
{"action":"app_suspend","item_id":"<installed app id>"}
```

Resume uses `app_resume` with the same app id. Read back the installed state. Suspension controls future use; it does not undo prior effects or prove in-flight work was cancelled.

## Set rolling seven-day model caps

`app_set_budget` uses the app id as `item_id` and a complete config with non-negative integer input/output token caps and either integer micro-USD cost or `max_cost_usd`. This illustrative template uses invented numbers only to show shape; agree actual caps for the job before calling:

```
{"action":"app_set_budget","item_id":"<installed app id>","config":{"max_input_tokens":10000,"max_output_tokens":2000,"max_cost_micro":1000000}}
```

One million micro-USD equals USD1. Caps apply to the rolling seven-day spend window. The pre-call gate checks already-spent totals, so a final admitted call can take the total past a cap. Subscription routes can account cost as zero while consuming tokens. Do not treat a zero monetary reading as unlimited permitted work.

`app_clear_budget` restores the manifest caps. Read the resulting roster budget and scheduling reason. A refused model call can report a reopening time; a zero cap need not reopen automatically. Do not increase a budget simply to hide an unrelated missing route or access failure.

## Upgrade, roll back and remove

Inspect the current catalog offer and its exact scope/effects. `app_upgrade` can bind consent to the currently shown offer:

```
{"action":"app_upgrade","item_id":"<installed app id>","config":{"expected_offer_digest":"<exact lowercase SHA256 of the inspected offer>"}}
```

A mismatched digest refuses before upgrade effects. Native omission of config deliberately accepts the current offer; do not omit it accidentally after reviewing a specific older offer. A local conflict needs an explicit owner decision; `replace_local` is only valid for an authorised upgrade and must not silently discard edited code.

`app_rollback` selects the previous installed approved version where supported. `app_remove` removes the installed app. Inspect returned state and dependent workflows. Neither action undoes prior external effects. After upgrade/resume, inspect an ordinary run and its output before claiming the job works.

## Keep loop controls separate

Loop case limits bound nodes, wall-clock, judge spend and optionally open cases. Earned autonomy belongs to one loop/app/action tuple within an approved ladder and ceiling. These are not `app_set_budget` fields. Use the current loop operator contract and [case inspection](https://app.mensara.ai/how-it-works/inspect-loop-case-procedure); a client-excluded action requires an authorised handoff.

## Related

- [Pause, upgrade or remove an installed agent](https://app.mensara.ai/how-it-works/manage-an-agent)
- [Control agent autonomy, budgets and access](https://app.mensara.ai/how-it-works/control-agent-autonomy)
- [Build, propose and verify a governed model agent](https://app.mensara.ai/how-it-works/build-agent-procedure)

[Join the waitlist](https://app.mensara.ai/#waitlist)