Skip to content

griptape-ai/griptape-nodes-library-standard

Repository files navigation

Contributing to Griptape Nodes Core Library

We welcome contributions to the Griptape Nodes Core Library! This library provides nodes organized by category including agents, audio, image processing, text manipulation, and more.

Development Location

IMPORTANT: For now, all development for this library happens in the main griptape-nodes repository under the libraries/griptape_nodes_library/ directory.

This library is automatically synced to the public griptape-nodes-library-standard repository when changes are pushed to the main branch.

Development Setup

Please refer to the main CONTRIBUTING.md in the griptape-nodes repository for:

  • Installing uv and setting up your development environment
  • Installing dependencies with uv sync --all-groups --all-extras
  • Code style guidelines (Ruff, Pyright)
  • Running checks with make check and make fix
  • General contribution workflow

Contributing Code

  1. Find the library code - All nodes for this library are located in:

    libraries/griptape_nodes_library/griptape_nodes_library/
    

    Nodes are organized by category:

    • agents/ - Agent nodes
    • audio/ - Audio processing nodes
    • image/ - Image manipulation nodes
    • text/ - Text processing nodes
    • video/ - Video processing nodes
    • And 17 more categories...
  2. Make your changes - Follow the existing code structure and style in the library.

  3. Run tests - Test the library to ensure your changes work:

    # From the repository root
    uv run pytest libraries/griptape_nodes_library/tests/
  4. Follow code quality standards - Run checks before submitting:

    make check  # Check linting, formatting, and type errors
    make fix    # Auto-fix issues where possible
  5. Submit a pull request - Open a PR against the main branch of the griptape-nodes repository.

Syncing to Public Repository

When changes are merged to the main branch in the griptape-nodes repository, they automatically sync to the public griptape-nodes-library-standard repository via GitHub Actions.

You don't need to do anything special for this sync to happen - it's automatic.

Making a Release (Maintainers)

Releases involve two steps: updating the version in the main repository, then publishing from the synced library repository.

Step 1: Update Version (in main griptape-nodes repo)

  1. Navigate to the library directory:

    cd libraries/griptape_nodes_library
  2. Edit griptape_nodes_library.json and update the version in the metadata section:

    {
      "metadata": {
        "library_version": "0.52.4"
      }
    }
  3. Commit and push:

    git add griptape_nodes_library.json
    git commit -m "chore: bump griptape_nodes_library to v0.52.4"
    git push origin main

    This automatically syncs the changes to the public library repository.

Step 2: Publish Release (in public library repo)

After the sync completes:

  1. Go to the griptape-nodes-library-standard repository on GitHub
  2. Navigate to Actions → "Publish Version"
  3. Run the workflow manually to:
    • Create version tag (e.g., v0.52.4)
    • Update stable tag
    • Create GitHub release with auto-generated notes

The library also has automated workflows:

  • version-bump-patch.yml / version-bump-minor.yml - Can bump versions (but currently versions are managed in main repo)
  • nightly-release.yml - Creates nightly prerelease builds automatically

Questions or Issues?

For questions about contributing, please open an issue in the griptape-nodes repository.

Thank you for contributing!

About

No description, website, or topics provided.

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages