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
10 changes: 10 additions & 0 deletions .changeset/redteam-properties-sdk-0-10-rewire.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
'@cdot65/prisma-airs-cli': patch
---

Rewire `redteam properties` commands for SDK 0.10.0 response shapes.

- `properties list` now renders the SDK's plain `string[]` (was incorrectly typed/rendered as `{name}[]`); adds `--output json|yaml` support.
- `properties values <name>` now renders the SDK's `{name, values: string[]}` object (was incorrectly typed/rendered as `{name, value}[]`); adds `--output json|yaml`.
- `properties create` and `properties add-value` now print the SDK's mutation message instead of fabricating a fake `name=value` line.
- Adds curated input/output examples for `redteam properties list` (refreshed), `redteam properties values`, and `redteam properties add-value`; updates `.missing-allowlist` accordingly.
10 changes: 4 additions & 6 deletions docs/cli/examples/.missing-allowlist
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,13 @@ redteam devices create
redteam devices update
redteam devices delete
# Blocked by upstream API 500 on /version-info — see https://github.com/cdot65/prisma-airs-cli/issues/117
# (single-prompt 'pretty' output works but trails with the 500; JSON/YAML formats blocked by CLI #198)
# (CLI calls version-info unconditionally after detail fetch, so all three formats fail until either
# upstream is fixed or CLI gains graceful degradation — see sub-issue #164 retry 2026-05-28)
redteam prompt-sets get
# Blocked by SDK empty-body response validation — see https://github.com/cdot65/prisma-airs-sdk/issues/168
redteam prompts delete
# Blocked by SDK empty-body response validation — see https://github.com/cdot65/prisma-airs-sdk/issues/168
# Blocked by SDK wrong-schema-on-write — POST property-names returns 201 with {data: string[]} but SDK
# declares BaseResponseSchema — see sub-issue #172 retry 2026-05-28
redteam properties create
# Blocked by SDK schema mismatch + CLI --output gap — see https://github.com/cdot65/prisma-airs-sdk/issues/169 and https://github.com/cdot65/prisma-airs-cli/issues/198
redteam properties values
# Blocked by CLI request-shape bug (wrong field names) — see https://github.com/cdot65/prisma-airs-cli/issues/197
redteam properties add-value
# Blocked by SDK empty-body response validation — see https://github.com/cdot65/prisma-airs-sdk/issues/168
redteam targets delete
69 changes: 67 additions & 2 deletions docs/cli/examples/redteam.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -266,13 +266,78 @@

"redteam properties list":
examples:
- note: List configured property names (empty state — no properties defined on this tenant)
- note: Pretty output (default)
input: airs redteam properties list
output: |
Prisma AIRS — AI Red Team
Adversarial scan operations

No property names found.

Property Names:

• severity
• persona

- note: JSON output (raw string array from SDK 0.10.0)
input: airs redteam properties list --output json
output: |
[
"severity",
"persona"
]

- note: YAML output
input: airs redteam properties list --output yaml
output: |
- severity
- persona

"redteam properties values":
examples:
- note: List values for a property name (pretty)
input: airs redteam properties values severity
output: |
Prisma AIRS — AI Red Team
Adversarial scan operations


Property Values:

Property: severity
• low
• medium
• high

- note: JSON output (single {name, values[]} object — SDK 0.10.0 shape)
input: airs redteam properties values severity --output json
output: |
{
"name": "severity",
"values": [
"low",
"medium",
"high"
]
}

- note: YAML output
input: airs redteam properties values severity --output yaml
output: |
name: severity
values:
- low
- medium
- high

"redteam properties add-value":
examples:
- note: Create a new value for an existing property name
input: airs redteam properties add-value --name severity --value critical
output: |
Prisma AIRS — AI Red Team
Adversarial scan operations

Property value 'critical' created successfully

"redteam targets get":
examples:
Expand Down
97 changes: 91 additions & 6 deletions docs/cli/redteam/properties.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ airs redteam properties list [options]

#### Examples

*List configured property names (empty state — no properties defined on this tenant)*
*Pretty output (default)*

```bash
airs redteam properties list
Expand All @@ -26,7 +26,35 @@ airs redteam properties list
Prisma AIRS — AI Red Team
Adversarial scan operations

No property names found.

Property Names:

• severity
• persona
```

*JSON output (raw string array from SDK 0.10.0)*

```bash
airs redteam properties list --output json
```

```text
[
"severity",
"persona"
]
```

*YAML output*

```bash
airs redteam properties list --output yaml
```

```text
- severity
- persona
```

---
Expand Down Expand Up @@ -72,8 +100,55 @@ airs redteam properties values [options] <name>

#### Examples

!!! warning "Example needed"
No curated input/output example for this command yet.
*List values for a property name (pretty)*

```bash
airs redteam properties values severity
```

```text
Prisma AIRS — AI Red Team
Adversarial scan operations


Property Values:

Property: severity
• low
• medium
• high
```

*JSON output (single {name, values[]} object — SDK 0.10.0 shape)*

```bash
airs redteam properties values severity --output json
```

```text
{
"name": "severity",
"values": [
"low",
"medium",
"high"
]
}
```

*YAML output*

```bash
airs redteam properties values severity --output yaml
```

```text
name: severity
values:
- low
- medium
- high
```

---

Expand All @@ -94,5 +169,15 @@ airs redteam properties add-value [options]

#### Examples

!!! warning "Example needed"
No curated input/output example for this command yet.
*Create a new value for an existing property name*

```bash
airs redteam properties add-value --name severity --value critical
```

```text
Prisma AIRS — AI Red Team
Adversarial scan operations

Property value 'critical' created successfully
```
4 changes: 2 additions & 2 deletions docs/developers/api/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,13 @@
- [ModelSecurityScanListOptions](interfaces/ModelSecurityScanListOptions.md)
- [ModelSecurityService](interfaces/ModelSecurityService.md)
- [ModelSecurityViolation](interfaces/ModelSecurityViolation.md)
- [MutationResponse](interfaces/MutationResponse.md)
- [ProfileTopic](interfaces/ProfileTopic.md)
- [PromptDetail](interfaces/PromptDetail.md)
- [PromptSetDetail](interfaces/PromptSetDetail.md)
- [PromptSetService](interfaces/PromptSetService.md)
- [PromptSetVersionInfo](interfaces/PromptSetVersionInfo.md)
- [PropertyName](interfaces/PropertyName.md)
- [PropertyValue](interfaces/PropertyValue.md)
- [PropertyValueList](interfaces/PropertyValueList.md)
- [RedTeamAttack](interfaces/RedTeamAttack.md)
- [RedTeamCategory](interfaces/RedTeamCategory.md)
- [RedTeamCustomAttack](interfaces/RedTeamCustomAttack.md)
Expand Down
16 changes: 8 additions & 8 deletions docs/developers/api/classes/SdkPromptSetService.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ Create a new custom prompt set.

### createPropertyName()

> **createPropertyName**(`name`): `Promise`\<[`PropertyName`](../interfaces/PropertyName.md)\>
> **createPropertyName**(`name`): `Promise`\<[`MutationResponse`](../interfaces/MutationResponse.md)\>

Defined in: [src/airs/promptsets.ts:153](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/promptsets.ts#L153)

Expand All @@ -133,7 +133,7 @@ Create a property name.

#### Returns

`Promise`\<[`PropertyName`](../interfaces/PropertyName.md)\>
`Promise`\<[`MutationResponse`](../interfaces/MutationResponse.md)\>

#### Implementation of

Expand All @@ -143,7 +143,7 @@ Create a property name.

### createPropertyValue()

> **createPropertyValue**(`name`, `value`): `Promise`\<[`PropertyValue`](../interfaces/PropertyValue.md)\>
> **createPropertyValue**(`name`, `value`): `Promise`\<[`MutationResponse`](../interfaces/MutationResponse.md)\>

Defined in: [src/airs/promptsets.ts:164](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/promptsets.ts#L164)

Expand All @@ -161,7 +161,7 @@ Create a property value.

#### Returns

`Promise`\<[`PropertyValue`](../interfaces/PropertyValue.md)\>
`Promise`\<[`MutationResponse`](../interfaces/MutationResponse.md)\>

#### Implementation of

Expand Down Expand Up @@ -299,15 +299,15 @@ Get prompt set version info with stats.

### getPropertyNames()

> **getPropertyNames**(): `Promise`\<[`PropertyName`](../interfaces/PropertyName.md)[]\>
> **getPropertyNames**(): `Promise`\<`string`[]\>

Defined in: [src/airs/promptsets.ts:147](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/promptsets.ts#L147)

List property names.

#### Returns

`Promise`\<[`PropertyName`](../interfaces/PropertyName.md)[]\>
`Promise`\<`string`[]\>

#### Implementation of

Expand All @@ -317,7 +317,7 @@ List property names.

### getPropertyValues()

> **getPropertyValues**(`name`): `Promise`\<[`PropertyValue`](../interfaces/PropertyValue.md)[]\>
> **getPropertyValues**(`name`): `Promise`\<[`PropertyValueList`](../interfaces/PropertyValueList.md)\>

Defined in: [src/airs/promptsets.ts:158](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/promptsets.ts#L158)

Expand All @@ -331,7 +331,7 @@ Get values for a property.

#### Returns

`Promise`\<[`PropertyValue`](../interfaces/PropertyValue.md)[]\>
`Promise`\<[`PropertyValueList`](../interfaces/PropertyValueList.md)\>

#### Implementation of

Expand Down
16 changes: 8 additions & 8 deletions docs/developers/api/interfaces/ModelSecurityEvaluation.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Interface: ModelSecurityEvaluation

Defined in: [src/airs/types.ts:647](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L647)
Defined in: [src/airs/types.ts:648](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L648)

Normalized rule evaluation from a scan.

Expand All @@ -10,52 +10,52 @@ Normalized rule evaluation from a scan.

> **result**: `string`

Defined in: [src/airs/types.ts:649](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L649)
Defined in: [src/airs/types.ts:650](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L650)

***

### ruleDescription

> **ruleDescription**: `string`

Defined in: [src/airs/types.ts:653](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L653)
Defined in: [src/airs/types.ts:654](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L654)

***

### ruleInstanceState

> **ruleInstanceState**: `string`

Defined in: [src/airs/types.ts:654](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L654)
Defined in: [src/airs/types.ts:655](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L655)

***

### ruleInstanceUuid

> **ruleInstanceUuid**: `string`

Defined in: [src/airs/types.ts:651](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L651)
Defined in: [src/airs/types.ts:652](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L652)

***

### ruleName

> **ruleName**: `string`

Defined in: [src/airs/types.ts:652](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L652)
Defined in: [src/airs/types.ts:653](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L653)

***

### uuid

> **uuid**: `string`

Defined in: [src/airs/types.ts:648](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L648)
Defined in: [src/airs/types.ts:649](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L649)

***

### violationCount

> **violationCount**: `number`

Defined in: [src/airs/types.ts:650](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L650)
Defined in: [src/airs/types.ts:651](https://github.com/cdot65/prisma-airs-cli/blob/main/src/airs/types.ts#L651)
Loading
Loading