Credal Open Source Actions
Credal Actions SDK is open source
Browse existing actions, open issues, or submit a PR on GitHub: github.com/credal-ai/actions-sdk
Overview
Credal’s Open Source Actions Framework lets you add custom actions to Credal Agents via LLM function calling. The full source lives at credal-ai/actions-sdk — all contributions, bug reports, and feature requests should go there.
For more information about Credal’s Agent platform, visit here.
Contributing a New Action
To add or update an action, clone the actions-sdk repo and follow these steps:
-
Schema Update: Add or update the action in
src/actions/schema.yaml. This is the first step in defining your action. -
Type Generation: Run
npm run generate:typesto generate the new types. This step is crucial for ensuring that your action has the correct type definitions. -
Code Formatting: Run
npm run prettier-formatto format the new files. Consistent formatting helps maintain code readability and quality. -
Provider Function Creation: Create a new provider function in
src/actions/providers/<provider>/<action>.ts(e.g.,src/actions/providers/math/add.ts). This function should export a function using the generated types. -
Action Mapping: If you are adding a new action or provider, update
src/actions/actionMapper.tsandsrc/actions/groups.ts. This ensures that your action is correctly mapped and grouped within the framework.
Once your changes are ready, open a pull request on github.com/credal-ai/actions-sdk.
Coming Soon Improvements
-
Schema Standardization: We are working on defining a standard for action outputs. While we have loosely followed a structure where outputs contain success and error, standardizing this can improve consistency.
-
Automating File Generation: We plan to automate steps 2-5 with a script. This script could run
npm run generate:typesandnpm run prettier-format, create necessary files, and update mappings, allowing users to focus on filling in the generated files. -
Auth Tokens: We aim to clarify expectations for auth token generation, especially for services with short-lived tokens, and document the type of authorization needed for each action.
Usage
To invoke an action, use the following code snippet:
Running a Basic Test for runAction
To run a basic test for runAction, execute the following command:
If you have questions or run into issues, open a GitHub issue at credal-ai/actions-sdk.