CLI for managing and locally testing BRYTER Custom Actions.
Project description
Custom Action Helper
CLI for managing and locally testing BRYTER Custom Actions.
This is a community project and is not officially supported by BRYTER.
Getting started
Requirements
- Python 3.11+
uv(installation guide)- Node.js (only required for
test)
Installation (recommended for all OS)
Use uv tool on macOS, Linux, and Windows:
uv tool install custom-action-helper
Verify:
custom-action-helper set
custom-action-helper list
Alternative without permanent install:
uvx custom-action-helper --help
How to use
cdinto your Custom Action project directory.- Run a command and pass the application URL as the second positional argument.
Example URL:
https://app.bryter.io/applications/<application-id>/build
Examples:
custom-action-helper list https://app.bryter.io/applications/<application-id>/build
custom-action-helper install https://app.bryter.io/applications/<application-id>/build --implementation-file extract.ts
custom-action-helper update https://app.bryter.io/applications/<application-id>/build --implementation-file extract.ts
custom-action-helper log https://app.bryter.io/applications/<application-id>/build --environment test
custom-action-helper delete https://app.bryter.io/applications/<application-id>/build --action-id <action-id>
If values are missing (for example API token), the tool prompts you. When entering an application URL where a base URL is expected, the tool auto-extracts the application ID.
Commands
list: show actions for the selected applicationinstall: create action from metadata and upload implementationupdate: update action metadata and upload implementationlog: fetch action event logsdelete: permanently delete an action (requires typed confirmation)reset: force prompts on next run for values not set in the current configuration
delete always shows a high-visibility warning and only executes if you type exactly:
delete action
Flags
| Flag | Description |
|---|---|
--base-url |
API base URL (example: https://app.bryter.io/api/) |
--api-token |
Securely prompt for API token (does not accept token values) |
--api-token-file |
Read API token from a text file |
--application-id |
BRYTER application ID |
--environment-id |
Environment ID for op_env_info |
--action-id |
Explicit action ID |
--action |
Select an action by value. You can pass action id, action key, or action name (example: --action extract_pdf). |
--environment |
Environment name for log resolution |
--events-path |
Explicit events path for log |
--metadata-file |
Metadata JSON file (default for install/update: metadata.json) |
--implementation-file |
Implementation file (.ts/.js) |
--connection-name |
Connection name for op_create_connection |
--project-path |
Override project directory |
--repo-url |
Library repository URL for lib commands |
--repo-ref |
Library repository ref (branch/tag/commit) |
--repo-path |
Local clone path for library repo |
--integrations-path |
Integrations directory inside library repo |
-y, --yes |
Auto-confirm confirmation prompts |
--verbose |
Enable verbose logs |
Configuration
The tool stores your settings automatically and prompts for missing values when needed.
Useful commands:
custom-action-helper set: show current settingscustom-action-helper set <key> <value>: update a settingcustom-action-helper set token: securely enter an API tokencustom-action-helper reset: force prompts again on the next run
Common setup:
custom-action-helper set base_url https://app.bryter.io/api/
custom-action-helper set application_id <application-id>
custom-action-helper set environment_name <environment-name>
custom-action-helper set log_level error
Library functionality (lib)
lib helps you consume a shared repository of custom action templates/integrations.
Before using lib, configure the repository URL once:
custom-action-helper set custom_actions_repo_url https://gitlab.com/ryter/custom/custom-actions.git
custom-action-helper lib ls: list available folders in the librarycustom-action-helper lib refresh: sync/refresh the local library cachecustom-action-helper lib install <folder>: use a library folder as project context, then run install flowcustom-action-helper lib update <folder>: use a library folder as project context, then run update flow
Local test functionality (test)
test is intended for developers working on implementation code.
It runs your implementation locally using the selected project directory and the project .env file.
node --env-file=.env --import tsx <implementation-file> --local-test
Uninstallation
If installed via uv tool:
uv tool uninstall custom-action-helper
If you used repository scripts instead, use the matching uninstall flag:
./scripts/install.sh --uninstall
./scripts/install.ps1 -Uninstall
Building
poetry build
Contact
- Jonas Bienert
- bienert@bryter.io
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bryter_custom_action_helper-0.5.0.tar.gz.
File metadata
- Download URL: bryter_custom_action_helper-0.5.0.tar.gz
- Upload date:
- Size: 30.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60cedb0f550c29b3a418f3da38221567744901aeb7f9fee7b160da9771cf5aaa
|
|
| MD5 |
f03e086c5ec128fa646c5d7ce2837573
|
|
| BLAKE2b-256 |
4a7e83adced20f4776231f4f995759c8387cc1a40d249e8a414705cb341ddad3
|
Provenance
The following attestation bundles were made for bryter_custom_action_helper-0.5.0.tar.gz:
Publisher:
publish-to-pypi.yml on jonnybyte/bryter-custom-action-helper
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bryter_custom_action_helper-0.5.0.tar.gz -
Subject digest:
60cedb0f550c29b3a418f3da38221567744901aeb7f9fee7b160da9771cf5aaa - Sigstore transparency entry: 1506639795
- Sigstore integration time:
-
Permalink:
jonnybyte/bryter-custom-action-helper@06d66cfb62b5c1e8328eef9275f6a4cbb2c6b6e3 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/jonnybyte
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-to-pypi.yml@06d66cfb62b5c1e8328eef9275f6a4cbb2c6b6e3 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file bryter_custom_action_helper-0.5.0-py3-none-any.whl.
File metadata
- Download URL: bryter_custom_action_helper-0.5.0-py3-none-any.whl
- Upload date:
- Size: 40.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6940e333a04894c4c3752c6586aa82d6eb808d2cb5fb09e58d13895f9b8adc0
|
|
| MD5 |
210d56960002768bb6291d3b18d67f7b
|
|
| BLAKE2b-256 |
2703f89d1bbe86be4bdb0f6034312b8cbb5d58b63cafa49d0e60022e3fe59f4f
|
Provenance
The following attestation bundles were made for bryter_custom_action_helper-0.5.0-py3-none-any.whl:
Publisher:
publish-to-pypi.yml on jonnybyte/bryter-custom-action-helper
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bryter_custom_action_helper-0.5.0-py3-none-any.whl -
Subject digest:
b6940e333a04894c4c3752c6586aa82d6eb808d2cb5fb09e58d13895f9b8adc0 - Sigstore transparency entry: 1506639878
- Sigstore integration time:
-
Permalink:
jonnybyte/bryter-custom-action-helper@06d66cfb62b5c1e8328eef9275f6a4cbb2c6b6e3 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/jonnybyte
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-to-pypi.yml@06d66cfb62b5c1e8328eef9275f6a4cbb2c6b6e3 -
Trigger Event:
workflow_dispatch
-
Statement type: