You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Push records to your [Agent Directory](https://agent-directory.outshift.com) using the [dirctl CLI](https://github.com/agntcy/dir).
7
+
Push [OASF](https://github.com/agntcy/oasf)records to the [Hosted Outshift Agent Directory](https://agent-directory.outshift.com) using the [dirctl CLI](https://github.com/agntcy/dir).
8
8
9
9
## How It Works
10
10
11
-
The action prepares the `dirctl` CLI for your runner's environment and **processes your record file**, applying any specified overrides for organization, name, or version. It then smartly **handles the record's signature** before **pushing the final version** to your specified Agent Directory.
11
+
This GitHub Action streamlines the process of publishing your AI agents to the Agent Directory. Features:
12
12
13
-
14
-
## Features
15
-
16
-
-**Downloads** the correct `dirctl` binary for your runner's OS and architecture.
17
-
-**Pushes** records that are already signed.
18
-
-**Signs** unsigned records on-the-fly using a provided Cosign key.
19
-
- Re-signs an already signed record with a new key
20
-
- Dynamically **overrides**`organization_name`, `record_name`, and `record_version` at runtime.
21
-
- Uses GitHub **secrets** for API keys and signing credentials
22
-
- Automatically provides GitHub action **artifacts** for easy troubleshooting.
13
+
***Environment Setup**: Automatically downloads and configures the correct `dirctl` CLI binary for your runner's operating system and architecture
14
+
***Record Processing**: Reads your agent record file and applies any runtime overrides you've specified (organization name, record name, or version)
15
+
***Smart Signing**: Intelligently handles record signatures - whether your record is already signed, needs signing with your provided Cosign key, or requires re-signing with a new key
16
+
***Secure Publishing**: Pushes the final, processed record to Agent Directory using authenticated API credentials
17
+
***Secret Handling** Uses GitHub secrets for API keys and signing credentials.
18
+
***Troubleshooting** Automatically provides GitHub action artifacts for easy troubleshooting.
23
19
24
20
## Supported Platforms
25
21
@@ -37,7 +33,7 @@ You'll need **API Key credentials** for your Agent Directory instance. Follow th
@@ -49,24 +45,13 @@ You'll need **API Key credentials** for your Agent Directory instance. Follow th
49
45
-`ROLE_VIEWER` - Read-only access
50
46
51
47
52
-
> **Important**: The `name` field in your directory record file must always be in the format `"my-org/my-record"`. The organization part (`my-org`) must match the `--org-name` used to create the API key. If they differ, use the `organization_name` input to override it.
53
-
54
-
3.**Extract the credentials:**
55
-
56
-
The command will output your `client_id`:
48
+
The command will output both client id and secret:
Your directory record JSON file **must be present in your repository**. You can place it anywhere in your repository structure (e.g., `./records/my-record.json`).
98
83
84
+
> **Important**: The `name` field in your directory record file must always be in the format `"my-org/my-record"`. The organization part (`my-org`) must match the `--org-name` used to create the API key. If they differ, use the `organization_name` input to override it.
85
+
86
+
99
87
## Override Behavior
100
88
101
89
The action supports overriding specific fields in your **record file** by providing the following inputs to the GitHub action:
@@ -116,7 +104,7 @@ Override Example:
116
104
117
105
## Usage Examples
118
106
119
-
**Runner Compatibility:** This action works on any GitHub Actions runner. The examples below use `ubuntu-latest`, but you can use `macos-latest`, `apline-latest`, or any other runner. The action automatically downloads the appropriate dirctl binary.
107
+
**Runner Compatibility:** This action works on any GitHub Actions runner. The examples below use `ubuntu-latest`, but you can use `macos-latest`, `alpine-latest`, or any other runner. The action automatically downloads the appropriate dirctl binary.
@@ -347,7 +281,7 @@ If you receive a `unique constraint` error, it means you are trying to push a re
347
281
1. **Update** the record **version** either by modifying the `version` field in your **record file** before pushing, or by **overriding it dynamically** in your **workflow**:
0 commit comments