O

Olares Settings (olares-cli settings)

CLAWHUB · Unverified

Olares Settings (olares-cli settings) — read and mutate Olares Settings UI surfaces from the command line, scoped to the active Olares ID. Per-Olares-ID mirr...

62
Rank
84
Safety
979
Downloads

About

What it does, and when to use it.

Capability contract not published. No trust telemetry is available yet. 979 downloads reported by the source. Last updated 10/11/2026.

Avoid when

  • Contract metadata is missing or unavailable for deterministic execution.

Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing

Install and run

Setup complexity: low.

clawhub skill install s1718vftp5x2gwbtzenpt3kxch87k6j0:olares-settings
  1. Install using `clawhub skill install s1718vftp5x2gwbtzenpt3kxch87k6j0:olares-settings` in an isolated environment before connecting it to live workloads.
  2. No published capability contract is available yet, so validate auth and request/response behavior manually.
  3. Review the upstream CLAWHUB listing at https://clawhub.ai/olares/olares-settings before using production credentials.

Contract: missing

curl -s "https://www.xpersona.co/api/v1/agents/clawhub-olares-olares-settings/snapshot"

Run-check

$0.02 USD

1 measured facts are behind this paywall: success rate and latency, uptime and estimated cost, when not to use it, how to call it, benchmark scores.

Agents pay $0.02 in USDC. A card payment is $0.50, the smallest a card allows.

Documentation

CLAWHUB

142,302 characters of source documentation, loaded on request.

Extracted files

5 files captured from the source.

SKILL.md

---
name: olares-settings
version: 4.0.1
description: "Olares Settings (olares-cli settings) — read and mutate Olares Settings UI surfaces from the command line, scoped to the active Olares ID. Per-Olares-ID mirror of every section the Olares Settings SPA exposes (https://docs.olares.com/manual/olares/settings/). Read-only coverage: users, appearance, apps (list, get, entrances, env, domain, policy), integration accounts, VPN (devices, ACL, SSH, subroutes, public-domain policy), network (reverse proxy, frp, hosts file), GPU, video, search status + dirs, backup plans + snapshots, restore plans, advanced (containerd registries, images, env system / user), plus a `me` self-service tree (whoami on Olares, version, check-update, SSO list). Verified mutating verbs: appearance language set, search rebuild, integration accounts add awss3|tencent / delete, VPN SSH enable/disable, VPN ACL add/remove, users create/delete (new Olares ID). Use when the user mentions Olares, Olares ID, Olares Settings, olares-cli settings, the Olares Settings UI, role (owner / admin / normal) on Olares, integration accounts, SSO tokens, GPU mode, search index, backup / restore plans, containerd registries, VPN ACLs, language preference, or 'who am I on this Olares instance'."
metadata:
  requires:
    bins: ["olares-cli"]
  cliHelp: "olares-cli settings --help"
---

# settings (Olares Settings UI mirror)

**CRITICAL — before doing anything, MUST use the Read tool to read [`../olares-shared/SKILL.md`](../olares-shared/SKILL.md) for profile selection, login, automatic token refresh, and the auth-error recovery table.**

> **Source of truth for flags is always `olares-cli settings <area> <verb> --help`.** This file only carries what `--help` cannot give: routing, the 13-section index, the role-caching / admin-vs-normal floor, the wire-format cheat sheet, and the common-errors table.

## Routing

| User intent | Use this skill? |
|---|---|
| "Change language / theme / appearance" | ✅ yes |
| "Add a user / delete a user" | ✅ yes |
| "Edit my app's entrance / domain / policy / env" | ✅ yes (post-install surface) |
| "Add an S3 / Tencent integration account" | ✅ yes |
| "Manage VPN devices / ACL / SSH toggle" | ✅ yes |
| "Browse backup plans / snapshots / restore plans" | ✅ yes |
| "Install / uninstall / upgrade / start / stop an Olares app" | ❌ use [`olares-market`](../olares-market/SKILL.md) (this is post-install) |
| "Identify / log in / switch profile" | ❌ use [`../olares-shared/SKILL.md`](../olares-shared/SKILL.md) (`profile login`) |
| "Inspect pods / workloads / nodes" | ❌ use [`olares-cluster`](../olares-cluster/SKILL.md) |
| "Show CPU / memory / disk metrics" | ❌ use [`olares-dashboard`](../olares-dashboard/SKILL.md) |

> **Mental model:** `settings` covers configuration that the Olares Settings SPA exposes — **post-install per-app config**, mesh / VPN, backup, accounts, system appearance. Lifecycle and runtime live in sibling skills.

## 13 

_meta.json

{
  "ownerId": "kn7153k9wp5dwxsm6getv104r985vrf5",
  "slug": "olares-settings",
  "version": "4.0.1",
  "publishedAt": 1780034087556
}

references/olares-settings-apps.md

# settings apps (post-install configuration)

> **Prerequisite:** Read [`../../olares-shared/SKILL.md`](../../olares-shared/SKILL.md) and the parent [`../SKILL.md`](../SKILL.md) first.
> **Flags & examples:** `olares-cli settings apps --help` and `olares-cli settings apps <verb> --help`.

The **post-install** surface for an Olares app. Inspect the app, list its entrances, edit per-entrance domain / policy / auth-level / env vars, suspend / resume.

> **NOT for install / uninstall / upgrade / clone / start / stop** — use [`olares-market`](../../olares-market/SKILL.md) for app lifecycle. `settings apps` is for tweaking an app that's already installed.

## Verbs at a glance

| Verb | Floor | Status | Purpose |
|---|---|---|---|
| `list [--all] [--show-system]` | normal | VERIFIED | Installed apps for the current user. Default filter mirrors the SPA |
| `get <app>` | normal | VERIFIED | Detail view (filtered client-side; no per-app endpoint) |
| `entrances list <app>` | normal | VERIFIED | **Live** entrance vector — names, state, auth-level |
| `env get <app>` | normal | VERIFIED | Current per-app env vector |
| `env set <app> KEY=VALUE [KEY=VALUE...]` | normal | UNVERIFIED | Replace the env vector |
| `domain get <app> <entrance>` | normal | VERIFIED | Per-entrance custom-domain setup |
| `domain list <app>` | normal | VERIFIED | Every entrance's domain setup |
| `domain set <app> <entrance> [flags]` | normal | UNVERIFIED | RMW update |
| `domain finish <app> <entrance>` | normal | UNVERIFIED | Confirm third-party CNAME after DNS propagates |
| `policy get <app> <entrance>` | normal | VERIFIED | Per-entrance auth policy |
| `policy list <app>` | normal | VERIFIED | Every entrance's policy |
| `policy set <app> <entrance> [flags]` | normal | UNVERIFIED | RMW update |
| `auth-level set <app> <entrance> --level X` | normal | UNVERIFIED | `private` / `public` / `internal` |
| `suspend <app> [--all]` | normal | UNVERIFIED | Suspend running app |
| `resume <app>` | normal | UNVERIFIED | Resume suspended app |

## The per-entrance editing pipeline

Most per-entrance edits follow a 4-step pattern:

```bash
# 1. Discover entrances on the app.
olares-cli settings apps entrances list firefox
# → produces ENTRANCE / STATE / AUTH LEVEL / DOMAIN columns

# 2. Inspect current setup of the entrance you want to edit.
olares-cli settings apps domain get firefox www
olares-cli settings apps policy get firefox www

# 3. RMW update (unspecified flags survive).
olares-cli settings apps domain set firefox www --third-level my-firefox
olares-cli settings apps policy set firefox www --default-policy two_factor

# 4. For third-party domains: confirm CNAME after DNS propagation.
olares-cli settings apps domain set firefox www --third-party firefox.example.com \
  --cert-file /path/to/cert.pem --key-file /path/to/key.pem
olares-cli settings apps domain finish firefox www
```

## `domain set` — RMW semantics + cert/key handlin

references/olares-settings-backup.md

# settings backup

> **Prerequisite:** Read [`../../olares-shared/SKILL.md`](../../olares-shared/SKILL.md) and the parent [`../SKILL.md`](../SKILL.md) first.
> **Flags & examples:** `olares-cli settings backup --help` and `olares-cli settings backup <noun> <verb> --help`.

Manage backup plans (BFL backup-server) and the repository encryption password.

> **Different ingress prefix** — `<SettingsURL>/apis/backup/v1/*` rather than `/api/*`. The CLI handles this transparently, but errors carrying the path will mention `/apis/backup/v1/...`.

## Sub-tree

| Verb | Floor | Status | Purpose |
|---|---|---|---|
| `plans list` | normal | VERIFIED | List backup plans (with pagination) |
| `snapshots list <backup-id>` | normal | VERIFIED | List snapshots for one plan |
| `password set <name>` | normal | UNVERIFIED | Set / rotate the repository encryption password |

## `plans list`

```bash
olares-cli settings backup plans list                     # default 50
olares-cli settings backup plans list --limit 100
olares-cli settings backup plans list --offset 50 --limit 50
olares-cli settings backup plans list -o json
```

Returns each plan with name, ID, schedule, target (cloud / local / S3 / ...), status. Fields not surfaced in the table view are available via `-o json` (the SPA's axios interceptor unwraps `data.data`, which is why upstream code reads `{backups: [...]}` directly).

`--offset` / `--limit` mirror the SPA's pagination behavior. Default `--limit` is 50.

## `snapshots list <backup-id>`

```bash
olares-cli settings backup snapshots list <backup-id> --limit 50
olares-cli settings backup snapshots list <backup-id> -o json
```

Requires the **backup ID** (from `plans list`, NOT the plan name). Returns the snapshot timeline for that plan: snapshot ID, taken-at timestamp, size, status, restic / kopia snapshot identifier.

## `password set <name>` (UNVERIFIED)

```bash
# Interactive TTY prompt (default; no echo).
olares-cli settings backup password set my-plan

# Stdin pipe (scripted).
echo -n "my-secret-password" | olares-cli settings backup password set my-plan --password-stdin
```

- Sets / rotates the encryption password for one backup plan's repository.
- **Default reads from a TTY without echo.** `--password-stdin` reads once from stdin (newline-terminated; trim newline if your producer adds one).
- **Losing the password means losing the ability to decrypt existing snapshots.** The upstream cannot recover this password — make sure the user has it stored somewhere safe (password manager) BEFORE the call.

## Plan create / update — out of scope (today)

`plans create` and `plans update` are **not implemented yet**. They need either:

- A `--from-file plan.json` mode (still pending design — the full `BackupPolicy` + `LocationConfig` vector is large), or
- An upstream "create from defaults" shortcut that doesn't yet exist.

Until then, **create / update backup plans via the SPA** (Settings →

references/olares-settings-integration.md

# settings integration

> **Prerequisite:** Read [`../../olares-shared/SKILL.md`](../../olares-shared/SKILL.md) and the parent [`../SKILL.md`](../SKILL.md) first.
> **Flags & examples:** `olares-cli settings integration accounts --help` and `olares-cli settings integration accounts <verb> --help`.

External integration accounts (S3 / Tencent COS / Google Drive / Dropbox / Olares Space / NFT cloud binding).

## What's covered by the CLI

| Account type | CLI verb | Why |
|---|---|---|
| AWS S3 (or S3-compatible endpoint) | `accounts add awss3` | Direct credentials — no OAuth |
| Tencent COS | `accounts add tencent` | Direct credentials — no OAuth |
| Google Drive | (SPA only) | OAuth-bound browser session |
| Dropbox | (SPA only) | OAuth-bound browser session |
| Olares Space / NFT cloud binding | (SPA only) | Browser- and wallet-bound by design |

> **OAuth and wallet flows stay in the SPA.** The access tokens they produce are scoped to a browser session and have no useful one-shot CLI capture. If the user asks to add Google Drive / Dropbox / Olares Space / NFT integrations via CLI, direct them to the Settings → Integration page in the SPA.

## Sub-tree

| Verb | Floor | Notes |
|---|---|---|
| `accounts list` | normal | `accountMini` shape (no `raw_data`) |
| `accounts list-by-type <type>` | normal | Filter by account type |
| `accounts get <type> [name]` | normal | `accountFull` shape (includes `raw_data`); `name` optional for single-tenant types |
| `accounts add awss3 [flags]` | normal | AWS S3 / S3-compatible |
| `accounts add tencent [flags]` | normal | Tencent COS |
| `accounts delete <type> [name]` | normal | `name` optional for single-tenant types |

## `accounts add awss3`

```bash
olares-cli settings integration accounts add awss3 \
  --access-key-id     "$AWS_ACCESS_KEY_ID" \
  --access-key-secret "$AWS_SECRET_ACCESS_KEY" \
  --endpoint          "https://s3.amazonaws.com" \
  --bucket            "my-bucket"
```

- `--bucket` is **optional** — omit for "any bucket the credentials can reach"; provide for "scope to this bucket".
- `--endpoint` accepts any S3-compatible endpoint (MinIO, Backblaze B2 via S3 API, etc.) — not just AWS.

## `accounts add tencent`

```bash
olares-cli settings integration accounts add tencent \
  --access-key-id     "$TENCENT_SECRET_ID" \
  --access-key-secret "$TENCENT_SECRET_KEY" \
  --endpoint          "https://cos.ap-shanghai.myqcloud.com"
```

- Region is encoded in the endpoint URL — e.g. `cos.ap-beijing.myqcloud.com`, `cos.ap-shanghai.myqcloud.com`.
- Tencent COS is **single-tenant**: no `--bucket` flag, no `<name>` argument on add. There is at most one Tencent account per profile.

## `accounts get` / `accounts delete` — name handling

```bash
# Multi-tenant types (S3, Drive, Dropbox) — need a name.
olares-cli settings integration accounts get awss3 my-bucket
olares-cli settings integration accounts delete awss3 my-bucket

# Single-tenant typ

Sponsored

Ads related to Olares Settings (olares-cli settings) and adjacent AI workflows.