@smoothcodes/agent-client 0.2.2 → 0.2.3

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/CHANGELOG.md CHANGED
@@ -1,38 +1,42 @@
1
- # @smoothcodes/agent-client
2
-
3
- ## 0.2.2
4
-
5
- - Só documentação: o CHANGELOG da 0.2.1 foi publicado com marcas de conflito de merge; o código é o mesmo da 0.2.1.
6
-
7
- ## 0.2.1
8
-
9
- - Sem mudança de API: o mesmo número da `@smoothcodes/agent-server` 0.2.1. Ganha o teste de cobertura: todo grupo do cliente REST gerado tem que estar exposto na casca, com todos os métodos.
10
-
11
- ## 0.2.0
12
-
13
- Desde a 0.1.0 (0.1.1/0.1.2 só republicaram a 0.1.0, presa no stage do npm; a 0.1.3 só trocou a base padrão).
14
-
15
- **Migrar da 0.1:** nenhum método, classe ou tipo exportado foi renomeado ou removido (conferido contra a 0.1.0). Só mudam tipos de retorno/campos:
16
-
17
- | Onde | 0.1 | 0.2 | O que fazer |
18
- |---|---|---|---|
19
- | `chats.delete()` | `Deleted` | `ChatDeleted` (`+ cleanup`) | nada, se só lia `id`/`deleted` |
20
- | `providers.myProvidersList().data[]` | `ProviderStatus` | `MyProviderStatus` | trocar a anotação de tipo, se houver |
21
- | `Agent.provider`, `AgentPublic.provider` | obrigatório | opcional | tratar `undefined` (agente sem motor → `providers[]`) |
22
- | `err.body` dos erros HTTP (`BadRequestError`, `ForbiddenError`…) | `unknown` | `Error_` | os casts passam a ser desnecessários |
23
- | `DEFAULT_BASE_URL` | `api.smoothagent.dev` | `smoothagent-v3-api.uaibuilder.workers.dev` | nada (quem passa `baseUrl` não muda) |
24
-
25
- **Quebra (tipos):**
26
- - `chats.delete()` devolve `ChatDeleted` (`{ id, deleted, cleanup: "pending" | "done" }`) em vez de `Deleted`.
27
- - `providers.myProvidersList()`: `data` agora é `MyProviderStatus[]` (`connected`, `via`, `status`, `models`, `connect`, `needed`, `expiresAt`) em vez de `ProviderStatus[]`.
28
- - `Agent.provider` / `AgentPublic.provider` ficaram opcionais: agente SEM motor; as opções vêm em `providers: AgentProviderOption[]` (`provider`, `models`, `capabilities`, `ready`).
29
-
30
- **Novo:**
31
- - Erros HTTP tipados: `BadRequestError`, `UnauthorizedError`, `ForbiddenError`, `ConflictError`, `TooManyRequestsError`, `InternalServerError` passam a ter `body: Error_` (`{ error: ErrorBody }`) em vez de `unknown` (os outros, `NotFoundError` incluso, já eram `Error_` na 0.1.0). Todos os erros HTTP agora têm `body: Error_`.
32
- - `agents`: `queue.defaultMode` ausente na criação = `queue` (era `steer`).
33
- - `chats.create({ provider })`: escolhe o motor do chat quando o agente não tem motor (no agente com motor, só o dele).
34
- - `chats.switchAgent({ provider?, model?: string | null, effort?: string | null })`: `null` = voltar ao padrão do agente, explícito; ausente = fica o de agora.
35
- - `EventsInboxState` ganha `wake_failed`; `EventsFailure.details.provider` documenta qual credencial falta/venceu.
36
- - A base padrão (`DEFAULT_BASE_URL`, `https://smoothagent-v3-api.uaibuilder.workers.dev`, consertada na 0.1.3; antes era `api.smoothagent.dev`, que não existe) agora sai do `servers` do contrato.
37
-
38
- Camada ao vivo (`watch`, `events`, `prompt`): sem mudança de API desde a 0.1.0.
1
+ # @smoothcodes/agent-client
2
+
3
+ ## 0.2.3
4
+
5
+ - `files.upload` agora envia o arquivo: o tipo virou `file: Uploadable` (obrigatório; `Blob`, `File`, `Buffer`/`Uint8Array`, `ReadableStream`, `{ data, filename, contentType }` ou, no Node, `{ path }`) e a parte `file` vai no multipart. Até a 0.2.2 o campo era `file?: unknown` e só array/Set era anexado, então `files.upload({ file: blob })` saía sem o arquivo.
6
+
7
+ ## 0.2.2
8
+
9
+ - Só documentação: o CHANGELOG da 0.2.1 foi publicado com marcas de conflito de merge; o código é o mesmo da 0.2.1.
10
+
11
+ ## 0.2.1
12
+
13
+ - Sem mudança de API: o mesmo número da `@smoothcodes/agent-server` 0.2.1. Ganha o teste de cobertura: todo grupo do cliente REST gerado tem que estar exposto na casca, com todos os métodos.
14
+
15
+ ## 0.2.0
16
+
17
+ Desde a 0.1.0 (0.1.1/0.1.2 só republicaram a 0.1.0, presa no stage do npm; a 0.1.3 só trocou a base padrão).
18
+
19
+ **Migrar da 0.1:** nenhum método, classe ou tipo exportado foi renomeado ou removido (conferido contra a 0.1.0). Só mudam tipos de retorno/campos:
20
+
21
+ | Onde | 0.1 | 0.2 | O que fazer |
22
+ |---|---|---|---|
23
+ | `chats.delete()` | `Deleted` | `ChatDeleted` (`+ cleanup`) | nada, se só lia `id`/`deleted` |
24
+ | `providers.myProvidersList().data[]` | `ProviderStatus` | `MyProviderStatus` | trocar a anotação de tipo, se houver |
25
+ | `Agent.provider`, `AgentPublic.provider` | obrigatório | opcional | tratar `undefined` (agente sem motor → `providers[]`) |
26
+ | `err.body` dos erros HTTP (`BadRequestError`, `ForbiddenError`…) | `unknown` | `Error_` | os casts passam a ser desnecessários |
27
+ | `DEFAULT_BASE_URL` | `api.smoothagent.dev` | `smoothagent-v3-api.uaibuilder.workers.dev` | nada (quem passa `baseUrl` não muda) |
28
+
29
+ **Quebra (tipos):**
30
+ - `chats.delete()` devolve `ChatDeleted` (`{ id, deleted, cleanup: "pending" | "done" }`) em vez de `Deleted`.
31
+ - `providers.myProvidersList()`: `data` agora é `MyProviderStatus[]` (`connected`, `via`, `status`, `models`, `connect`, `needed`, `expiresAt`) em vez de `ProviderStatus[]`.
32
+ - `Agent.provider` / `AgentPublic.provider` ficaram opcionais: agente SEM motor; as opções vêm em `providers: AgentProviderOption[]` (`provider`, `models`, `capabilities`, `ready`).
33
+
34
+ **Novo:**
35
+ - Erros HTTP tipados: `BadRequestError`, `UnauthorizedError`, `ForbiddenError`, `ConflictError`, `TooManyRequestsError`, `InternalServerError` passam a ter `body: Error_` (`{ error: ErrorBody }`) em vez de `unknown` (os outros, `NotFoundError` incluso, já eram `Error_` na 0.1.0). Todos os erros HTTP agora têm `body: Error_`.
36
+ - `agents`: `queue.defaultMode` ausente na criação = `queue` (era `steer`).
37
+ - `chats.create({ provider })`: escolhe o motor do chat quando o agente não tem motor (no agente com motor, só o dele).
38
+ - `chats.switchAgent({ provider?, model?: string | null, effort?: string | null })`: `null` = voltar ao padrão do agente, explícito; ausente = fica o de agora.
39
+ - `EventsInboxState` ganha `wake_failed`; `EventsFailure.details.provider` documenta qual credencial falta/venceu.
40
+ - A base padrão (`DEFAULT_BASE_URL`, `https://smoothagent-v3-api.uaibuilder.workers.dev`, consertada na 0.1.3; antes era `api.smoothagent.dev`, que não existe) agora sai do `servers` do contrato.
41
+
42
+ Camada ao vivo (`watch`, `events`, `prompt`): sem mudança de API desde a 0.1.0.
@@ -8436,18 +8436,19 @@ var FilesClient = class {
8436
8436
  * @throws {@link SmoothAgentApi.ServiceUnavailableError}
8437
8437
  * @throws {@link errors.SmoothAgentApiError}
8438
8438
  * @throws {@link errors.SmoothAgentApiTimeoutError}
8439
+ *
8440
+ * @example
8441
+ * import { createReadStream } from "fs";
8442
+ * await client.files.upload({
8443
+ * file: fs.createReadStream("/path/to/your/file")
8444
+ * })
8439
8445
  */
8440
8446
  upload(request, requestOptions) {
8441
8447
  return HttpResponsePromise.fromPromise(this.__upload(request, requestOptions));
8442
8448
  }
8443
8449
  async __upload(request, requestOptions) {
8444
8450
  const _body = await newFormData();
8445
- if (request.file != null) {
8446
- if (Array.isArray(request.file) || request.file instanceof Set)
8447
- for (const _item of request.file) {
8448
- _body.append("file", typeof _item === "string" ? _item : toJson(_item));
8449
- }
8450
- }
8451
+ await _body.appendFile("file", request.file);
8451
8452
  const _maybeEncodedRequest = await _body.getRequest();
8452
8453
  const _authRequest = await this._options.authProvider.getAuthRequest();
8453
8454
  const _headers = mergeHeaders(
@@ -9653,7 +9654,8 @@ var MachinesClient = class {
9653
9654
  }
9654
9655
  /**
9655
9656
  * Gera o código de pareamento de um computador. Chave (pra um `userId`) OU o próprio usuário
9656
- * na interface do cliente (o login é do cliente, nunca nosso).
9657
+ * na interface do cliente (o login é do cliente, nunca nosso). Por CHAVE (pura ou agindo como o usuário) o
9658
+ * pareamento emite token pro usuário: exige `tokens:write` e o recorte de agentes da chave (`agents_restricted`).
9657
9659
  *
9658
9660
  * @param {SmoothAgentApi.MachinesPairRequest} request
9659
9661
  * @param {MachinesClient.RequestOptions} requestOptions - Request-specific configuration.
@@ -14848,4 +14850,4 @@ export {
14848
14850
  DEFAULT_BASE_URL,
14849
14851
  SmoothAgent
14850
14852
  };
14851
- //# sourceMappingURL=chunk-E4ZFXITU.js.map
14853
+ //# sourceMappingURL=chunk-ERJ5SQDU.js.map