@naturali/cli 0.134.0 → 0.135.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.mjs +9 -9
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -17,7 +17,7 @@ var __exportAll = (all, no_symbols) => {
|
|
|
17
17
|
};
|
|
18
18
|
//#endregion
|
|
19
19
|
//#region package.json
|
|
20
|
-
var version = "0.
|
|
20
|
+
var version = "0.135.0";
|
|
21
21
|
//#endregion
|
|
22
22
|
//#region ../sdk/src/generated/core/bodySerializer.gen.ts
|
|
23
23
|
const serializeFormDataPair = (data, key, value) => {
|
|
@@ -1492,7 +1492,7 @@ var ApiKeys = class {
|
|
|
1492
1492
|
* Create an API key
|
|
1493
1493
|
*
|
|
1494
1494
|
* Creates an API key. When `project_id` is set the key is scoped to that project (the default and recommended stance); omit it for an account-scoped key. `capabilities` narrows what the key may do; when omitted the key inherits the creator's capabilities. The raw `key` (nat_sk_…) is returned only in this response.
|
|
1495
|
-
* A project-scoped key requires
|
|
1495
|
+
* A project-scoped key requires membership of that project. The key carries no role of its own — every request it makes resolves its holder's membership again — so it can never reach past what its minter already had. An account-scoped key requires a credential that is not itself confined to one project.
|
|
1496
1496
|
* A connected app cannot create keys at all: a grant is revocable and a key is not, so a key minted under a grant would still work after the app was disconnected. Reading and revoking keys stay available.
|
|
1497
1497
|
*
|
|
1498
1498
|
*/
|
|
@@ -3746,7 +3746,7 @@ var Projects = class {
|
|
|
3746
3746
|
* Update a project
|
|
3747
3747
|
*
|
|
3748
3748
|
* Rename or archive a project, and/or change its content-retention settings (`trace_content_retention_days`, `trace_content_mode`), its execution ceilings (`max_concurrent_runs`, `max_chain_generations`, `max_orchestration_run_depth`) and its priced-model gate (`require_priced_model`). Archiving is reversible; resources are retained.
|
|
3749
|
-
* Requires the `admin` role in the project (an `owner` has it too).
|
|
3749
|
+
* Requires the `admin` role in the project (an `owner` has it too). These are the terms every member works under, which is why setting them sits above the role that works under them.
|
|
3750
3750
|
* The ceilings and the priced-model gate are uncapped by plan: each one only ever narrows what the project may spend, so setting one takes on a restriction rather than claiming an entitlement. On the three ceilings `null` clears the project's own bound and omission leaves it alone — they are different instructions.
|
|
3751
3751
|
* The two retention controls answer different questions. The window bounds how long content *stays* — a daily sweep purges anything past it, leaving auditable skeletons behind. `trace_content_mode: none` means content is never *written*, which is the stronger guarantee: it cannot be missed by a sweep or survive in a backup.
|
|
3752
3752
|
*
|
|
@@ -3766,7 +3766,7 @@ var Projects = class {
|
|
|
3766
3766
|
/**
|
|
3767
3767
|
* List project members
|
|
3768
3768
|
*
|
|
3769
|
-
* Lists who may act in the project, and with what role. Readable by every member,
|
|
3769
|
+
* Lists who may act in the project, and with what role. Readable by every member, whatever their role: who else is in the project is not a privileged fact, and hiding it makes "why can that person see my agents?" unanswerable.
|
|
3770
3770
|
* Somebody invited who has never signed in is listed too, with status `pending` — the invitation is already a grant, so hiding it until they arrive would hide access that exists.
|
|
3771
3771
|
*
|
|
3772
3772
|
*/
|
|
@@ -3803,7 +3803,7 @@ var Projects = class {
|
|
|
3803
3803
|
*
|
|
3804
3804
|
* Removes a member, or leaves the project yourself.
|
|
3805
3805
|
*
|
|
3806
|
-
* **Anyone may remove themselves**, whatever their role: a colleague who no longer wants access should not have to ask for it, and leaving takes nothing from anybody else. Removing *somebody else* needs authority — an `owner` may remove anyone, an `admin` may remove a
|
|
3806
|
+
* **Anyone may remove themselves**, whatever their role: a colleague who no longer wants access should not have to ask for it, and leaving takes nothing from anybody else. Removing *somebody else* needs authority — an `owner` may remove anyone, an `admin` may remove a `member` and not another `admin`.
|
|
3807
3807
|
*
|
|
3808
3808
|
* The owner's own row is refused: a project with no owner is unreachable, and the row names who pays.
|
|
3809
3809
|
*
|
|
@@ -7870,7 +7870,7 @@ const routes = {
|
|
|
7870
7870
|
"create-api-key": {
|
|
7871
7871
|
serviceClass: "APIKeys",
|
|
7872
7872
|
operationId: "createApiKey",
|
|
7873
|
-
description: "Creates an API key. When `project_id` is set the key is scoped to that project (the default and recommended stance); omit it for an account-scoped key. `capabilities` narrows what the key may do; when omitted the key inherits the creator's capabilities. The raw `key` (nat_sk_…) is returned only in this response. A project-scoped key requires
|
|
7873
|
+
description: "Creates an API key. When `project_id` is set the key is scoped to that project (the default and recommended stance); omit it for an account-scoped key. `capabilities` narrows what the key may do; when omitted the key inherits the creator's capabilities. The raw `key` (nat_sk_…) is returned only in this response. A project-scoped key requires membership of that project. The key carries no role of its own — every request it makes resolves its holder's membership again — so it can never reach past what its minter already had. An account-scoped key requires a credential that is not itself confined to one project. A connected app cannot create keys at all: a grant is revocable and a key is not, so a key minted under a grant would still work after the app was disconnected. Reading and revoking keys stay available.",
|
|
7874
7874
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/api-keys",
|
|
7875
7875
|
httpMethod: "post",
|
|
7876
7876
|
pathParams: [],
|
|
@@ -15055,7 +15055,7 @@ const routes = {
|
|
|
15055
15055
|
"update-project": {
|
|
15056
15056
|
serviceClass: "Projects",
|
|
15057
15057
|
operationId: "updateProject",
|
|
15058
|
-
description: "Rename or archive a project, and/or change its content-retention settings (`trace_content_retention_days`, `trace_content_mode`), its execution ceilings (`max_concurrent_runs`, `max_chain_generations`, `max_orchestration_run_depth`) and its priced-model gate (`require_priced_model`). Archiving is reversible; resources are retained. Requires the `admin` role in the project (an `owner` has it too). The ceilings and the priced-model gate are uncapped by plan: each one only ever narrows what the project may spend, so setting one takes on a restriction rather than claiming an entitlement. On the three ceilings `null` clears the project's own bound and omission leaves it alone — they are different instructions. The two retention controls answer different questions. The window bounds how long content *stays* — a daily sweep purges anything past it, leaving auditable skeletons behind. `trace_content_mode: none` means content is never *written*, which is the stronger guarantee: it cannot be missed by a sweep or survive in a backup. Your plan sets the longest window you may keep content for. A wider one — `null` included, which keeps content indefinitely — responds `403` with `plan_limit_reached`, whose `details` carry the `plan` and the `limit` in days. Anything shorter is always allowed. Moving to a plan with a shorter window takes effect at the end of the billing cycle, and content already stored is then purged by age like everything else.",
|
|
15058
|
+
description: "Rename or archive a project, and/or change its content-retention settings (`trace_content_retention_days`, `trace_content_mode`), its execution ceilings (`max_concurrent_runs`, `max_chain_generations`, `max_orchestration_run_depth`) and its priced-model gate (`require_priced_model`). Archiving is reversible; resources are retained. Requires the `admin` role in the project (an `owner` has it too). These are the terms every member works under, which is why setting them sits above the role that works under them. The ceilings and the priced-model gate are uncapped by plan: each one only ever narrows what the project may spend, so setting one takes on a restriction rather than claiming an entitlement. On the three ceilings `null` clears the project's own bound and omission leaves it alone — they are different instructions. The two retention controls answer different questions. The window bounds how long content *stays* — a daily sweep purges anything past it, leaving auditable skeletons behind. `trace_content_mode: none` means content is never *written*, which is the stronger guarantee: it cannot be missed by a sweep or survive in a backup. Your plan sets the longest window you may keep content for. A wider one — `null` included, which keeps content indefinitely — responds `403` with `plan_limit_reached`, whose `details` carry the `plan` and the `limit` in days. Anything shorter is always allowed. Moving to a plan with a shorter window takes effect at the end of the billing cycle, and content already stored is then purged by age like everything else.",
|
|
15059
15059
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/projects",
|
|
15060
15060
|
httpMethod: "patch",
|
|
15061
15061
|
pathParams: ["project_id"],
|
|
@@ -15155,7 +15155,7 @@ const routes = {
|
|
|
15155
15155
|
"list-project-members": {
|
|
15156
15156
|
serviceClass: "Projects",
|
|
15157
15157
|
operationId: "listProjectMembers",
|
|
15158
|
-
description: "Lists who may act in the project, and with what role. Readable by every member,
|
|
15158
|
+
description: "Lists who may act in the project, and with what role. Readable by every member, whatever their role: who else is in the project is not a privileged fact, and hiding it makes \"why can that person see my agents?\" unanswerable. Somebody invited who has never signed in is listed too, with status `pending` — the invitation is already a grant, so hiding it until they arrive would hide access that exists.",
|
|
15159
15159
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/projects",
|
|
15160
15160
|
httpMethod: "get",
|
|
15161
15161
|
pathParams: ["project_id"],
|
|
@@ -15241,7 +15241,7 @@ const routes = {
|
|
|
15241
15241
|
"remove-project-member": {
|
|
15242
15242
|
serviceClass: "Projects",
|
|
15243
15243
|
operationId: "removeProjectMember",
|
|
15244
|
-
description: "Removes a member, or leaves the project yourself. **Anyone may remove themselves**, whatever their role: a colleague who no longer wants access should not have to ask for it, and leaving takes nothing from anybody else. Removing *somebody else* needs authority — an `owner` may remove anyone, an `admin` may remove a
|
|
15244
|
+
description: "Removes a member, or leaves the project yourself. **Anyone may remove themselves**, whatever their role: a colleague who no longer wants access should not have to ask for it, and leaving takes nothing from anybody else. Removing *somebody else* needs authority — an `owner` may remove anyone, an `admin` may remove a `member` and not another `admin`. The owner's own row is refused: a project with no owner is unreachable, and the row names who pays.",
|
|
15245
15245
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/projects",
|
|
15246
15246
|
httpMethod: "delete",
|
|
15247
15247
|
pathParams: ["project_id", "member_id"],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@naturali/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.135.0",
|
|
4
4
|
"description": "Command-line interface for the naturali.ai API, generated from its OpenAPI specs",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"yaml": "^2.9.1"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@naturali/sdk": "0.
|
|
28
|
+
"@naturali/sdk": "0.135.0",
|
|
29
29
|
"@ttoss/openapi-codegen": "^0.3.1",
|
|
30
30
|
"@types/node": "^26.5.1",
|
|
31
31
|
"tsdown": "^0.23.0",
|