Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions docs/content/cli/client/admin/config/get.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# get

Get the current runtime value of a dynamic configuration key.

This is the value Piri is using right now, which may differ from the config file if a runtime override has been applied via `set`.

## Usage

```
piri client admin config get <key>
```

## Arguments

| Argument | Description |
|----------|-------------|
| `<key>` | The configuration key to retrieve |

## Example

```bash
piri client admin config get pdp.aggregation.manager.poll_interval
```

```
30s
```

See [Dynamic Configuration](../../../../configuration/index.md#dynamic-configuration) for the list of available keys.
81 changes: 81 additions & 0 deletions docs/content/cli/client/admin/config/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# config

Manage dynamic configuration values at runtime.

## How It Works

The config file is the source of truth. Runtime changes are ephemeral by default—they override behavior without touching the file. A reload restores the file's authority. The `--persist` flag exists for operators who mean it: change the behavior and update the file so the two agree.

This prevents the most common configuration surprise: a system whose running state has silently diverged from its config file, discovered during a restart nobody planned for.

**Example workflow:**

A Piri node starts with this config file:

```toml
[pdp.aggregation.manager]
poll_interval = "30s"
```

The node uses a poll interval of 30 seconds.

**Runtime override (ephemeral):**

```
piri client admin config set pdp.aggregation.manager.poll_interval 5m
```

The node now uses 5 minutes. The config file is unchanged.

**Reload from file:**

```
piri client admin config reload
```

The node returns to 30 seconds. The file wins; runtime overrides do not survive a reload.

**Edit the file, then reload:**

```toml
[pdp.aggregation.manager]
poll_interval = "5m"
```

```
piri client admin config reload
```

The node uses 5 minutes. The file still wins—it just agrees with you now.

**Runtime override with `--persist`:**

```
piri client admin config set pdp.aggregation.manager.poll_interval 10m --persist
```

The node uses 10 minutes and the config file is updated to match. Future reloads will preserve the change.

## Usage

```
piri client admin config [command]
```

## Subcommands

### [list](list.md)

List all dynamic configuration values.

### [get](get.md)

Get a specific configuration value.

### [set](set.md)

Set a configuration value.

### [reload](reload.md)

Reload configuration from file.
26 changes: 26 additions & 0 deletions docs/content/cli/client/admin/config/list.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# list

List the current runtime values of all dynamic configuration keys.

These are the values Piri is using right now. They may differ from the config file if runtime overrides have been applied via `set`.

## Usage

```
piri client admin config list
```

## Example

```bash
piri client admin config list
```

```json
{
"pdp.aggregation.manager.batch_size": 10,
"pdp.aggregation.manager.poll_interval": "30s"
}
```

See [Dynamic Configuration](../../../../configuration/index.md#dynamic-configuration) for the list of available keys.
25 changes: 25 additions & 0 deletions docs/content/cli/client/admin/config/reload.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# reload

Reload configuration from the config file.

## Usage

```
piri client admin config reload
```

## Example

```bash
piri client admin config reload
```

```
Configuration reloaded from file
{
"pdp.aggregation.manager.batch_size": 10,
"pdp.aggregation.manager.poll_interval": "1m0s"
}
```

See [Dynamic Configuration](../../../../configuration/index.md#dynamic-configuration) for the list of available keys.
34 changes: 34 additions & 0 deletions docs/content/cli/client/admin/config/set.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# set

Set a dynamic configuration value.

## Usage

```
piri client admin config set <key> <value> [flags]
```

## Arguments

| Argument | Description |
|----------|-------------|
| `<key>` | The configuration key to set |
| `<value>` | The new value |

## Flags

| Flag | Description |
|------|-------------|
| `--persist` | Persist the change to the config file |

## Example

```bash
piri client admin config set pdp.aggregation.manager.poll_interval 1m
```

```
pdp.aggregation.manager.poll_interval updated
```

See [Dynamic Configuration](../../../../configuration/index.md#dynamic-configuration) for the list of available keys.
19 changes: 19 additions & 0 deletions docs/content/cli/client/admin/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# admin

Administrative operations for managing a running Piri node.

## Usage

```
piri client admin [command]
```

## Subcommands

### [config](config/index.md)

Manage dynamic configuration.

### [log](log/index.md)

Manage logging levels.
23 changes: 23 additions & 0 deletions docs/content/cli/client/admin/log/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# log

Manage logging levels for a running Piri node.

## Usage

```
piri client admin log [command]
```

## Subcommands

### [list](list.md)

List all log systems and their current levels.

### [set](set.md)

Set a log level for one system or all systems.

### [set-regex](set-regex.md)

Set log level for subsystems matching a regex pattern.
25 changes: 25 additions & 0 deletions docs/content/cli/client/admin/log/list.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# list

List all log systems and their current levels.

## Usage

```
piri client admin log list
```

## Example

```bash
piri client admin log list
```

```json
{
"piri/pdp": "info",
"piri/storage": "info",
"piri/retrieval": "debug",
"piri/claims": "info",
"piri/replicator": "warn"
}
```
30 changes: 30 additions & 0 deletions docs/content/cli/client/admin/log/set-regex.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# set-regex

Set log level for subsystems matching a regex pattern.

## Usage

```
piri client admin log set-regex <level> <expression>
```

## Arguments

| Argument | Description |
|----------|-------------|
| `<level>` | Log level to set (debug, info, warn, error) |
| `<expression>` | Regular expression pattern to match system names |

## Example

```bash
piri client admin log set-regex debug "piri/pdp.*"
```

```json
{
"piri/pdp": "debug",
"piri/pdp/scheduler": "debug",
"piri/pdp/aggregation": "debug"
}
```
28 changes: 28 additions & 0 deletions docs/content/cli/client/admin/log/set.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# set

Set a log level for one system or all systems.

## Usage

```
piri client admin log set <level> [system]
```

## Arguments

| Argument | Description |
|----------|-------------|
| `<level>` | Log level to set (debug, info, warn, error) |
| `[system]` | Specific system name. If omitted, sets level for all systems |

## Example

```bash
piri client admin log set debug piri/pdp
```

```json
{
"piri/pdp": "debug"
}
```
31 changes: 31 additions & 0 deletions docs/content/cli/client/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# client

Interact with a running Piri node.

All client commands require a running Piri server and authenticate using JWT tokens signed with your node's identity key. Pass the same `--config` file you used with `piri serve` - this provides both the server address and your identity key for authentication:

```bash
piri --config=config.toml client admin config list
```

## Usage

```
piri client [command] [flags]
```

## Flags

| Flag | Description | Default |
|------|-------------|---------|
| `--node-url <url>` | URL of a Piri node | `http://localhost:3000` |

## Subcommands

### [admin](admin/index.md)

Administrative operations (logs, config).

### [pdp](pdp/index.md)

PDP (Provable Data Possession) operations.
15 changes: 15 additions & 0 deletions docs/content/cli/client/pdp/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# pdp

PDP (Provable Data Possession) operations.

## Usage

```
piri client pdp [command]
```

## Subcommands

### [proofset](proofset/index.md)

Manage proof sets.
15 changes: 15 additions & 0 deletions docs/content/cli/client/pdp/proofset/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# proofset

Manage proof sets.

## Usage

```
piri client pdp proofset [command]
```

## Subcommands

### [state](state.md)

Get the current state of a proof set.
Loading