- Add generate_block_docs.py script that introspects block code to
generate markdown
- Support manual content preservation via <!-- MANUAL: --> markers
- Add migrate_block_docs.py to preserve existing manual content from git
HEAD
- Add CI workflow (docs-block-sync.yml) to fail if docs drift from code
- Add Claude PR review workflow (docs-claude-review.yml) for doc changes
- Add manual LLM enhancement workflow (docs-enhance.yml)
- Add GitBook configuration (.gitbook.yaml, SUMMARY.md)
- Fix non-deterministic category ordering (categories is a set)
- Add comprehensive test suite (32 tests)
- Generate docs for 444 blocks with 66 preserved manual sections
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
<!-- Clearly explain the need for these changes: -->
### Changes 🏗️
<!-- Concisely describe all of the changes made in this pull request:
-->
### Checklist 📋
#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
<!-- Put your test plan here: -->
- [x] Extensively test code generation for the docs pages
<!-- CURSOR_SUMMARY -->
---
> [!NOTE]
> Introduces an automated documentation pipeline for blocks and
integrates it into CI.
>
> - Adds `scripts/generate_block_docs.py` (+ tests) to introspect blocks
and generate `docs/integrations/**`, preserving `<!-- MANUAL: -->`
sections
> - New CI workflows: **docs-block-sync** (fails if docs drift),
**docs-claude-review** (AI review for block/docs PRs), and
**docs-enhance** (optional LLM improvements)
> - Updates existing Claude workflows to use `CLAUDE_CODE_OAUTH_TOKEN`
instead of `ANTHROPIC_API_KEY`
> - Improves numerous block descriptions/typos and links across backend
blocks to standardize docs output
> - Commits initial generated docs including
`docs/integrations/README.md` and many provider/category pages
>
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
631e53e0f6. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2.2 KiB
Google Sheets Read
What it is
A block that reads data from a Google Sheets spreadsheet.
What it does
This block retrieves information from a specified range within a Google Sheets spreadsheet.
How it works
The block connects to Google Sheets using provided credentials, then fetches data from the specified spreadsheet and range.
Inputs
| Input | Description |
|---|---|
| Credentials | Authentication information required to access Google Sheets |
| Spreadsheet ID | The unique identifier of the spreadsheet you want to read from |
| Range | The specific area of the spreadsheet you want to read (e.g., "Sheet1!A1:B2") |
Outputs
| Output | Description |
|---|---|
| Result | The data retrieved from the spreadsheet, organized in rows and columns |
| Error | Any error message that occurred during the process |
Possible use case
A marketing team could use this block to automatically retrieve the latest campaign performance data from a shared Google Sheets document for analysis and reporting.
Google Sheets Write
What it is
A block that writes data to a Google Sheets spreadsheet.
What it does
This block allows you to input data into a specified range within a Google Sheets spreadsheet.
How it works
The block authenticates with Google Sheets using provided credentials, then updates the specified spreadsheet range with the given data.
Inputs
| Input | Description |
|---|---|
| Credentials | Authentication information required to access Google Sheets |
| Spreadsheet ID | The unique identifier of the spreadsheet you want to write to |
| Range | The specific area of the spreadsheet where you want to write data (e.g., "Sheet1!A1:B2") |
| Values | The data you want to write to the spreadsheet, organized in rows and columns |
Outputs
| Output | Description |
|---|---|
| Result | Information about the write operation, such as the number of cells, columns, and rows updated |
| Error | Any error message that occurred during the process |
Possible use case
An automated inventory system could use this block to update stock levels in a Google Sheets spreadsheet whenever products are sold or restocked, ensuring real-time inventory tracking.