---
# @generated by sylphx-gen 0.1.0 from contracts@3118f36f16f799965338811e17ed3a9f565a9f136b14c95e9c94a1e21d42ea3e. Do not edit.
title: "sylphx agents agents"
description: "The sylphx agents agents commands of Sylphx Agents: every verb, with its argument, its flags and a run line."
type: reference
product: agents
summary: "Every sylphx agents agents command: its argument, its flags and a run line."
updated: 2026-09-28
nav: false
---

The `agents` commands of Sylphx Agents, as the CLI spells them: the same
calls as [the `agents` API page](/docs/api/agents), typed for the
shell. [Install, sign in and the grammar](/docs/cli) are on the CLI index.

**Not available yet.** Sylphx Agents is declared in the registry but no backend serves it: every command answers `501` with the problem code `UNIMPLEMENTED`.

## get

Gets an agent.

**`NAME`** — the resource's name; a bare id is enough below the linked
project.

**CLI**

```bash
sylphx agents agents get orgs/acme/projects/shop/envs/production/agents/agent
```

`GET https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agents/agent` · scope `agents:read` · effect `read` · [Request, response and examples](/docs/api/agents/get)

## list

Lists agents.

**`PARENT`** — optional: the CLI fills it from the linked project or the
key's scope when it is left out.

**CLI**

```bash
sylphx agents agents list orgs/acme/projects/shop/envs/production
```

`GET https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agents` · scope `agents:read` · effect `read` · [Request, response and examples](/docs/api/agents/list)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--page-size` | `int` | At most this many; default 50, clamped to 1000. |
| `--page-token` | `string` | `next_page_token` of the previous page. |
| `--filter` | `string` | AIP-160 filter over labels and filterable fields. |
| `--order-by` | `string` | AIP-132 ordering over filterable fields. |

## create

Creates an agent and its version 1.

**`ID`** — The id segment of the new Resource's name; the server assigns one when omitted.

**CLI**

```bash
sylphx agents agents create --parent orgs/acme/projects/shop/envs/production --spec.model …
```

`POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agents` · scope `agents:write` · effect `write` · [Request, response and examples](/docs/api/agents/create)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--parent` | `string` | The parent to create in; defaults to the linked project or the key's scope. |
| `--meta.labels` | `key=value` | Caller-writable, indexed labels (AIP-122 label rules). Repeat the flag for each value. |
| `--meta.annotations` | `key=value` | Caller-writable, unindexed annotations. Repeat the flag for each value. |
| `--meta.display-name` | `string` | Caller-writable human-readable name. |
| `--spec.model` | `string` | The exact Sylphx AI catalog id (`ai_models`), set per Agent through the API as runtime state, never code or a deployed file. Agents in the same environment may use different models; the harness never remaps this id. Required. |
| `--spec.instructions` | `string` | The system instructions, at most 256 KiB. |
| `--spec.tools` | `json` | The tools the agent may call, at most 128, each `name` once. Repeat the flag for each value. |
| `--spec.mcp-servers` | `json` | The MCP servers whose tools the agent may call, at most 32. Repeat the flag for each value. |
| `--spec.skills` | `json` | Skills: instruction packs the agent loads when relevant, at most 64. Repeat the flag for each value. |
| `--spec.memory-stores` | `string` | The memory stores the agent recalls from and writes to, as MemoryStore names; at most 8. Repeat the flag for each value. |
| `--spec.tool-policy.default-decision` | `enum` | The decision for a call no rule matches; default allow. One of `allow`, `deny`, `ask`. |
| `--spec.tool-policy.rules` | `json` | Rules in order; the first match decides. At most 256. Repeat the flag for each value. |
| `--spec.tool-policy.approval-timeout` | `duration` | How long a call waits for a person's answer before it is denied, 1m to 7d; default 24h. |
| `--spec.tool-policy.egress-allow-hosts` | `string` | Hosts every network call of the agent's tools may reach, beyond the tools' own endpoints; `*.example.com` matches subdomains. Private and internal addresses are refused whatever this says. Repeat the flag for each value. |
| `--spec.budget.max-steps-per-turn` | `int` | Model and tool steps per turn, 1 to 1000; default 100. |
| `--spec.budget.turn-timeout` | `duration` | One turn's wall-clock deadline, 10s to 24h; default 30m. |
| `--spec.budget.max-session-spend-micros` | `int` | Spend per session in micro-USD, models and tools together; 0 is the project's spend limit only. |
| `--spec.end-user-access` | `bool` | Whether end-user session access is intended for this agent. Reserved until the backend enforces end-user ownership; all contract methods currently require a secret key. |
| `--spec.environment.shape` | `string` | A Sylphx Sandboxes shape; empty gives sessions no environment. |
| `--spec.environment.idle-standby` | `duration` | Put the environment in standby after this long idle, 1m to 24h; default 10m. |
| `--spec.environment.template` | `string` | The Sandboxes image: `template:<name>` or an artifact image by digest, passed unchanged to the lease's `image` field. |
| `--spec.environment.repo.uri` | `string` | The repository URI. Access uses the session's bound credential handles. |
| `--spec.environment.repo.revision` | `string` | The commit or ref to check out; empty uses the repository's default branch. |
| `--spec.environment.egress.egress` | `enum` | Default ALLOW. One of `allow`, `deny`, `allowlist`. |
| `--spec.environment.egress.allowed-domains` | `string` | Hosts reachable when `egress` is ALLOWLIST: exact names or one leading `*.` wildcard label, for example `api.openai.com`, `*.github.com`. Repeat the flag for each value. |
| `--spec.environment.egress.allowed-cidrs` | `string` | Public CIDRs reachable when `egress` is ALLOWLIST. Repeat the flag for each value. |
| `--spec.environment.budget.max-cpu-seconds` | `int` | End CPU_BUDGET after this many vCPU-seconds of guest CPU time. |
| `--spec.environment.budget.max-cost-micros` | `int` | End COST_BUDGET once the shape's list price times wall seconds reaches this many millionths of a US dollar. |
| `--spec.environment.ttl` | `duration` | The lease's maximum wall time, passed to Sandboxes as `ttl`. The lease is released when the session ends even if this bound has not been reached. |
| `--spec.harness` | `string` | The execution harness, independent of `model`: `runtime` (default), `claude_code` or `codex`. It is part of the immutable version, not an environment-wide setting. An omitted or empty value means `runtime`. |
| `--dry-run` | `bool` | Validate and print the result without writing (validate_only). |

## update

Updates an agent. A change to `spec` mints the next AgentVersion; sessions already started keep the version they pinned.

**`NAME`** — the resource's name; a bare id is enough below the linked
project.

**CLI**

```bash
sylphx agents agents update orgs/acme/projects/shop/envs/production/agents/agent --spec.model …
```

`PATCH https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agents/agent` · scope `agents:write` · effect `write` · [Request, response and examples](/docs/api/agents/update)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--meta.labels` | `key=value` | Caller-writable, indexed labels (AIP-122 label rules). Repeat the flag for each value. |
| `--meta.annotations` | `key=value` | Caller-writable, unindexed annotations. Repeat the flag for each value. |
| `--meta.display-name` | `string` | Caller-writable human-readable name. |
| `--spec.model` | `string` | The exact Sylphx AI catalog id (`ai_models`), set per Agent through the API as runtime state, never code or a deployed file. Agents in the same environment may use different models; the harness never remaps this id. Required. |
| `--spec.instructions` | `string` | The system instructions, at most 256 KiB. |
| `--spec.tools` | `json` | The tools the agent may call, at most 128, each `name` once. Repeat the flag for each value. |
| `--spec.mcp-servers` | `json` | The MCP servers whose tools the agent may call, at most 32. Repeat the flag for each value. |
| `--spec.skills` | `json` | Skills: instruction packs the agent loads when relevant, at most 64. Repeat the flag for each value. |
| `--spec.memory-stores` | `string` | The memory stores the agent recalls from and writes to, as MemoryStore names; at most 8. Repeat the flag for each value. |
| `--spec.tool-policy.default-decision` | `enum` | The decision for a call no rule matches; default allow. One of `allow`, `deny`, `ask`. |
| `--spec.tool-policy.rules` | `json` | Rules in order; the first match decides. At most 256. Repeat the flag for each value. |
| `--spec.tool-policy.approval-timeout` | `duration` | How long a call waits for a person's answer before it is denied, 1m to 7d; default 24h. |
| `--spec.tool-policy.egress-allow-hosts` | `string` | Hosts every network call of the agent's tools may reach, beyond the tools' own endpoints; `*.example.com` matches subdomains. Private and internal addresses are refused whatever this says. Repeat the flag for each value. |
| `--spec.budget.max-steps-per-turn` | `int` | Model and tool steps per turn, 1 to 1000; default 100. |
| `--spec.budget.turn-timeout` | `duration` | One turn's wall-clock deadline, 10s to 24h; default 30m. |
| `--spec.budget.max-session-spend-micros` | `int` | Spend per session in micro-USD, models and tools together; 0 is the project's spend limit only. |
| `--spec.end-user-access` | `bool` | Whether end-user session access is intended for this agent. Reserved until the backend enforces end-user ownership; all contract methods currently require a secret key. |
| `--spec.environment.shape` | `string` | A Sylphx Sandboxes shape; empty gives sessions no environment. |
| `--spec.environment.idle-standby` | `duration` | Put the environment in standby after this long idle, 1m to 24h; default 10m. |
| `--spec.environment.template` | `string` | The Sandboxes image: `template:<name>` or an artifact image by digest, passed unchanged to the lease's `image` field. |
| `--spec.environment.repo.uri` | `string` | The repository URI. Access uses the session's bound credential handles. |
| `--spec.environment.repo.revision` | `string` | The commit or ref to check out; empty uses the repository's default branch. |
| `--spec.environment.egress.egress` | `enum` | Default ALLOW. One of `allow`, `deny`, `allowlist`. |
| `--spec.environment.egress.allowed-domains` | `string` | Hosts reachable when `egress` is ALLOWLIST: exact names or one leading `*.` wildcard label, for example `api.openai.com`, `*.github.com`. Repeat the flag for each value. |
| `--spec.environment.egress.allowed-cidrs` | `string` | Public CIDRs reachable when `egress` is ALLOWLIST. Repeat the flag for each value. |
| `--spec.environment.budget.max-cpu-seconds` | `int` | End CPU_BUDGET after this many vCPU-seconds of guest CPU time. |
| `--spec.environment.budget.max-cost-micros` | `int` | End COST_BUDGET once the shape's list price times wall seconds reaches this many millionths of a US dollar. |
| `--spec.environment.ttl` | `duration` | The lease's maximum wall time, passed to Sandboxes as `ttl`. The lease is released when the session ends even if this bound has not been reached. |
| `--spec.harness` | `string` | The execution harness, independent of `model`: `runtime` (default), `claude_code` or `codex`. It is part of the immutable version, not an environment-wide setting. An omitted or empty value means `runtime`. |
| `--allow-missing` | `bool` | Create the agent when it does not exist (declarative upsert). |
| `--dry-run` | `bool` | Validate and print the result without writing (validate_only). |

## delete

Deletes an agent and its versions. An agent with sessions is refused with `INVALID_STATE` unless `force` is set, which deletes them too.

**`NAME`** — the resource's name; a bare id is enough below the linked
project.

**CLI**

```bash
sylphx agents agents delete orgs/acme/projects/shop/envs/production/agents/agent --yes
```

`DELETE https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/agents/agent` · scope `agents:write` · effect `destructive` · [Request, response and examples](/docs/api/agents/delete)

**Flags**

| Flag | Type | What it does |
| --- | --- | --- |
| `--etag` | `string` | Delete only if the current etag matches. |
| `--allow-missing` | `bool` | Succeed when the agent does not exist. |
| `--dry-run` | `bool` | Validate and print the result without writing (validate_only). |
| `--force` | `bool` | Also delete the agent's sessions; without it, an agent with sessions is refused with `INVALID_STATE`. |
| `--yes` | `bool` | Do not ask before this destructive call. |
