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
7 changes: 7 additions & 0 deletions public/changelog.json
Original file line number Diff line number Diff line change
Expand Up @@ -919,6 +919,13 @@
"title": "CCIP deprecated on Blast Mainnet",
"topic": "CCIP"
},
{
"category": "release",
"date": "2026-05-22",
"description": "CRE CLI version 1.16.0 is now available. This release adds ADI mainnet (`adi-mainnet`) support for local simulation and production deployment. The release also includes bug fixes for workflow deploy checks, non-interactive cron trigger simulation, and platform API reliability.\n\nUpdate your CLI by running `cre update` when prompted, or follow the [CLI Installation guide](https://docs.chain.link/cre/getting-started/cli-installation) for fresh installations.\n\n[See all changes on GitHub](https://github.com/smartcontractkit/cre-cli/compare/v1.15.0...v1.16.0)",
"title": "CRE CLI v1.16.0 — ADI Mainnet Support",
"topic": "CRE"
},
{
"category": "release",
"date": "2026-05-14",
Expand Down
6 changes: 4 additions & 2 deletions src/config/versions/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,11 @@ export const VERSIONS = {
},
// CRE CLI Versions — update LATEST here for each new release
"cre-cli": {
LATEST: "v1.14.0",
ALL: ["v1.14.0", "v1.13.0", "v1.12.0", "v1.11.0", "v1.10.0", "v1.9.0", "v1.8.0"] as const,
LATEST: "v1.16.0",
ALL: ["v1.16.0", "v1.15.0", "v1.14.0", "v1.13.0", "v1.12.0", "v1.11.0", "v1.10.0", "v1.9.0", "v1.8.0"] as const,
RELEASE_DATES: {
"v1.16.0": "2026-05-22T00:00:00Z",
"v1.15.0": "2026-05-14T00:00:00Z",
"v1.14.0": "2026-05-08T00:00:00Z",
"v1.13.0": "2026-04-30T00:00:00Z",
"v1.12.0": "2026-04-23T00:00:00Z",
Expand Down
9 changes: 7 additions & 2 deletions src/content/cre/account/cli-login.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ title: "Logging in with the CLI"
metadata:
description: "Learn how to log in to the CRE CLI: authenticate through your browser, complete 2FA verification, and start using CLI commands."
datePublished: "2025-11-04"
lastModified: "2026-03-26"
lastModified: "2026-05-22"
---

import { Aside, ClickToZoom } from "@components"
Expand Down Expand Up @@ -81,4 +81,9 @@ Login completed successfully

Your CLI session is authenticated and ready to use.

In the terminal, the CLI may show **“Fetching user context…”** while it downloads your organization’s tenant configuration from the platform. It then writes **`~/.cre/context.yaml`** (registry manifest: vault gateway URL, registries, secrets auth flows, and related fields). That file is separate from your credentials file (`cre.yaml`). For details and a sanitized example, see [Tenant context cache](/cre/reference/cli/authentication#tenant-context-cache).
In the terminal, the CLI may show **“Fetching user context…”** while it downloads your organization’s tenant configuration from the platform. It then writes **`~/.cre/context.yaml`** (registry manifest: vault gateway URL, registries, secrets auth flows, and related fields). That file is separate from your credentials file (`~/.cre/cre.yaml`). For details and a sanitized example, see [Tenant context cache](/cre/reference/cli/authentication#tenant-context-cache).

{/* prettier-ignore */}
<Aside type="caution" title="Do not commit cre.yaml">
**`~/.cre/cre.yaml`** contains your session credentials. Keep it in `~/.cre/` on your local machine only—never commit it to version control or copy it into a project repository.
</Aside>
4 changes: 2 additions & 2 deletions src/content/cre/account/managing-auth.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ title: "Managing Authentication"
metadata:
description: "Manage your CRE CLI sessions: check if you're logged in, handle expired sessions, and securely log out when needed."
datePublished: "2025-11-04"
lastModified: "2026-03-26"
lastModified: "2026-05-22"
---

import { Aside } from "@components"
Expand All @@ -18,7 +18,7 @@ To authenticate your CLI with your CRE account, use the `cre login` command. Thi

For detailed login instructions, see the [Logging in with the CLI](/cre/account/cli-login) guide.

Browser login stores **`~/.cre/cre.yaml`** (credentials) and **`~/.cre/context.yaml`** (cached **tenant context**: registry manifest from the platform, including vault gateway URL and related settings). **`cre logout`** removes both. For a full description and a sample `context.yaml` shape, see [Tenant context cache](/cre/reference/cli/authentication#tenant-context-cache).
Browser login stores **`~/.cre/cre.yaml`** (credentials) and **`~/.cre/context.yaml`** (cached **tenant context**: registry manifest from the platform, including vault gateway URL and related settings). **`cre logout`** removes both. Do not commit **`~/.cre/cre.yaml`** to version control. For a full description and a sample `context.yaml` shape, see [Tenant context cache](/cre/reference/cli/authentication#tenant-context-cache).

## API key authentication

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ pageId: "guides-workflow-confidential-http-making-requests"
metadata:
description: "Make confidential HTTP requests in Go: learn to use enclave execution, secret injection, and optional response encryption in your workflows."
datePublished: "2026-02-10"
lastModified: "2026-02-10"
lastModified: "2026-05-22"
---

import { Aside } from "@components"
Expand Down Expand Up @@ -170,6 +170,42 @@ Run the simulation:
cre workflow simulate
```

## Request timeout

The `Timeout` field on the inner `Request` object controls how long the enclave waits for the external API to respond before cancelling the call. It uses the [`google.protobuf.Duration`](https://protobuf.dev/reference/protobuf/google.protobuf/#duration) type.

**Default and limits:**

- **Default**: If you omit `Timeout`, a default of **5 seconds** is applied.
- **Maximum**: **10 seconds**. Values above this limit will error.

If your API routinely takes longer than 5 seconds, set an explicit timeout so the request does not fail unexpectedly.

Use `durationpb.New()` with a `time.Duration` value on the `Request` field:

```go
import (
"time"

confhttp "github.com/smartcontractkit/cre-sdk-go/capabilities/networking/confidentialhttp"
"google.golang.org/protobuf/types/known/durationpb"
)

result, err := confHTTPClient.SendRequest(runtime, &confhttp.ConfidentialHTTPRequest{
Request: &confhttp.HTTPRequest{
Url: config.URL,
Method: "GET",
MultiHeaders: map[string]*confhttp.HeaderValues{
"Authorization": {Values: []string{"Basic {{.myApiKey}}"}},
},
Timeout: durationpb.New(10 * time.Second),
},
VaultDonSecrets: []*confhttp.SecretIdentifier{
{Key: "myApiKey", Owner: config.Owner},
},
}).Await()
```

## Template syntax for secrets

Secrets are injected into request bodies and headers using Go template syntax: `{{.secretName}}`. The placeholder name must match the `Key` in your `VaultDonSecrets` list.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ pageId: "guides-workflow-confidential-http-making-requests"
metadata:
description: "Make confidential HTTP requests in TypeScript: learn to use enclave execution, secret injection, and optional response encryption in your workflows."
datePublished: "2026-02-10"
lastModified: "2026-02-10"
lastModified: "2026-05-22"
---

import { Aside } from "@components"
Expand Down Expand Up @@ -136,6 +136,39 @@ Run the simulation:
cre workflow simulate
```

## Request timeout

The `timeout` field on the inner `request` object controls how long the enclave waits for the external API to respond before cancelling the call. It uses the [Protocol Buffers `Duration`](https://protobuf.dev/reference/protobuf/google.protobuf/#duration) type.

**Default and limits:**

- **Default**: If you omit `timeout`, a default of **5 seconds** is applied.
- **Maximum**: **10 seconds**. Values above this limit will error.

If your API routinely takes longer than 5 seconds, set an explicit timeout so the request does not fail unexpectedly.

Import `Duration` from `@bufbuild/protobuf/wkt` and set `timeout` on the request:

```typescript
import { Duration } from "@bufbuild/protobuf/wkt"

const response = confHTTPClient
.sendRequest(runtime, {
request: {
url: runtime.config.url,
method: "GET",
multiHeaders: {
Authorization: { values: ["Basic {{.myApiKey}}"] },
},
timeout: { seconds: BigInt(10), nanos: 0 } satisfies Duration,
},
vaultDonSecrets: [{ key: "myApiKey", owner: runtime.config.owner }],
})
.result()
```

The JSON form is also accepted: `timeout: { seconds: "10", nanos: 0 }` (using `DurationJson`).

## Template syntax for secrets

Secrets are injected into request bodies and headers using Go template syntax: `{{.secretName}}`. The placeholder name must match the `key` in your `vaultDonSecrets` list.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ pageId: "evm-forwarder-directory"
metadata:
description: "Find forwarder contract addresses for CRE workflows on supported EVM networks."
datePublished: "2025-11-04"
lastModified: "2026-05-14"
lastModified: "2026-05-22"
---

import { Aside, CopyText } from "@components"
Expand Down Expand Up @@ -53,6 +53,7 @@ These `MockKeystoneForwarder` addresses are used when running `cre workflow simu

| Network | Chain Name | Mock Forwarder Address |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- | ------------------------------------------------------------------ |
| <a href="https://explorer.adifoundation.ai/address/0x6Aa382fb8762E1232936478DD9DbC04F637028f1" target="_blank" rel="noopener noreferrer">ADI Mainnet</a> | <CopyText text="adi-mainnet" code/> | <CopyText text="0x6Aa382fb8762E1232936478DD9DbC04F637028f1" code/> |
| <a href="https://arbiscan.io/address/0xd770499057619c9a76205fd4168161cf94abc532" target="_blank" rel="noopener noreferrer">Arbitrum One</a> | <CopyText text="ethereum-mainnet-arbitrum-1" code/> | <CopyText text="0xd770499057619c9a76205fd4168161cf94abc532" code/> |
| <a href="https://snowscan.xyz/address/0xdc21e279934ff6721cadfdd112dafb3261f09a2c" target="_blank" rel="noopener noreferrer">Avalanche</a> | <CopyText text="avalanche-mainnet" code/> | <CopyText text="0xdc21e279934ff6721cadfdd112dafb3261f09a2c" code/> |
| <a href="https://basescan.org/address/0x5e342a8438b4f5d39e72875fcee6f76b39cce548" target="_blank" rel="noopener noreferrer">Base</a> | <CopyText text="ethereum-mainnet-base-1" code/> | <CopyText text="0x5e342a8438b4f5d39e72875fcee6f76b39cce548" code/> |
Expand Down Expand Up @@ -117,6 +118,7 @@ These `KeystoneForwarder` addresses are used by deployed workflows. Use these ad

| Network | Chain Name | Forwarder Address |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- | ------------------------------------------------------------------ |
| <a href="https://explorer.adifoundation.ai/address/0x76c9cf548b4179F8901cda1f8623568b58215E62" target="_blank" rel="noopener noreferrer">ADI Mainnet</a> | <CopyText text="adi-mainnet" code/> | <CopyText text="0x76c9cf548b4179F8901cda1f8623568b58215E62" code/> |
| <a href="https://arbiscan.io/address/0xF8344CFd5c43616a4366C34E3EEE75af79a74482" target="_blank" rel="noopener noreferrer">Arbitrum One</a> | <CopyText text="ethereum-mainnet-arbitrum-1" code/> | <CopyText text="0xF8344CFd5c43616a4366C34E3EEE75af79a74482" code/> |
| <a href="https://snowscan.xyz/address/0x76c9cf548b4179F8901cda1f8623568b58215E62" target="_blank" rel="noopener noreferrer">Avalanche</a> | <CopyText text="avalanche-mainnet" code/> | <CopyText text="0x76c9cf548b4179F8901cda1f8623568b58215E62" code/> |
| <a href="https://basescan.org/address/0xF8344CFd5c43616a4366C34E3EEE75af79a74482" target="_blank" rel="noopener noreferrer">Base</a> | <CopyText text="ethereum-mainnet-base-1" code/> | <CopyText text="0xF8344CFd5c43616a4366C34E3EEE75af79a74482" code/> |
Expand Down Expand Up @@ -146,6 +148,7 @@ These `KeystoneForwarder` addresses are used by deployed workflows. Use these ad
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------- | ------------------------------------------------------------------ |
| <a href="https://explorer.testnet.adifoundation.ai/address/0x76c9cf548b4179F8901cda1f8623568b58215E62" target="_blank" rel="noopener noreferrer">ADI Testnet</a> | <CopyText text="adi-testnet" code/> | <CopyText text="0x76c9cf548b4179F8901cda1f8623568b58215E62" code/> |
| <a href="https://explorer.curtis.apechain.com/address/0x76c9cf548b4179F8901cda1f8623568b58215E62" target="_blank" rel="noopener noreferrer">Apechain Curtis</a> | <CopyText text="apechain-testnet-curtis" code/> | <CopyText text="0x76c9cf548b4179F8901cda1f8623568b58215E62" code/> |
| <a href="https://testnet.arcscan.app/address/0x76c9cf548b4179F8901cda1f8623568b58215E62" target="_blank" rel="noopener noreferrer">Arc Testnet</a> | <CopyText text="arc-testnet" code/> | <CopyText text="0x76c9cf548b4179F8901cda1f8623568b58215E62" code/> |
| <a href="https://sepolia.arbiscan.io/address/0x76c9cf548b4179F8901cda1f8623568b58215E62" target="_blank" rel="noopener noreferrer">Arbitrum Sepolia</a> | <CopyText text="ethereum-testnet-sepolia-arbitrum-1" code/> | <CopyText text="0x76c9cf548b4179F8901cda1f8623568b58215E62" code/> |
| <a href="https://testnet.snowscan.xyz/address/0x76c9cf548b4179F8901cda1f8623568b58215E62" target="_blank" rel="noopener noreferrer">Avalanche Fuji</a> | <CopyText text="avalanche-testnet-fuji" code/> | <CopyText text="0x76c9cf548b4179F8901cda1f8623568b58215E62" code/> |
| <a href="https://sepolia.basescan.org/address/0xF8344CFd5c43616a4366C34E3EEE75af79a74482" target="_blank" rel="noopener noreferrer">Base Sepolia</a> | <CopyText text="ethereum-testnet-sepolia-base-1" code/> | <CopyText text="0xF8344CFd5c43616a4366C34E3EEE75af79a74482" code/> |
Expand Down
Loading
Loading