Skip to content

Commit 0587043

Browse files
teallarsonclaude
andcommitted
fix: give hand-authored toolkit prose a source home in curation/
documentationChunks, customImports, and subPages have no upstream source — they lived only inside the generated data/toolkits/*.json and survived by carry-forward from the previous artifact. --force-regenerate and --overwrite-output set the previous-output directory to undefined, silently deleting all hand-authored prose (82 chunks and 2 subpages across 75 toolkits). Extract that prose into per-toolkit curation/<toolkitId>.json files and read them back through --custom-sections, which the merger treats as authoritative over carry-forward. The nightly workflow now passes --custom-sections ./curation, so a forced regeneration preserves prose instead of wiping it. - custom-sections-file source now loads a directory of per-toolkit files (single-file layout still supported) - scripts/extract-curation.ts is the one-time, re-runnable extractor - curation/ is excluded from biome like its sibling data/toolkits/ - regression test asserts prose survives --force-regenerate Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent ab9a282 commit 0587043

82 files changed

Lines changed: 1338 additions & 35 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/workflows/generate-toolkit-docs.yml‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ jobs:
6868
--llm-concurrency 15 \
6969
--exclude-file ./remove-toolkits.txt \
7070
--ignore-file ./skip-toolkits.txt \
71+
--custom-sections ./curation \
7172
--output data/toolkits
7273
working-directory: toolkit-docs-generator
7374
env:

‎biome.jsonc‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@
133133
"!node_modules",
134134
"!public",
135135
"!toolkit-docs-generator/data/toolkits",
136+
"!toolkit-docs-generator/curation",
136137
"!scripts",
137138
"!agents",
138139
"!.vscode",
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"customImports": [
3+
"import StarterToolInfo from \"@/app/_components/starter-tool-info\";"
4+
]
5+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"documentationChunks": [
3+
{
4+
"type": "section",
5+
"location": "custom_section",
6+
"position": "after",
7+
"content": "## Secrets\n\nThis MCP Server requires the `ARCADE_API_KEY` secret to be configured. Learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets).\n\n### Getting your Arcade API Key\n\nTo use the Arcade Engine API MCP Server, you need an Arcade API key. This key authenticates your requests to the Arcade Engine.\n\nLearn how to create and manage your Arcade API keys in the [API Keys documentation](/get-started/setup/api-keys).",
8+
"header": "## Secrets"
9+
}
10+
],
11+
"customImports": [
12+
"import StarterToolInfo from \"@/app/_components/starter-tool-info\";"
13+
]
14+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"documentationChunks": [
3+
{
4+
"type": "markdown",
5+
"location": "auth",
6+
"position": "after",
7+
"content": "The Arcade Asana MCP Server uses the [Asana auth provider](/references/auth-providers/asana) to connect to users' Asana accounts."
8+
}
9+
]
10+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"documentationChunks": [
3+
{
4+
"type": "markdown",
5+
"location": "auth",
6+
"position": "after",
7+
"content": "The AsanaApi MCP Server uses the Auth Provider with id `arcade-asana` to connect to users' AsanaApi accounts. In order to use the MCP Server, you will need to configure the `arcade-asana` auth provider.\nFor detailed information on configuring the Asana OAuth provider with Arcade, see the [Asana Auth Provider documentation](/references/auth-providers/asana).",
8+
"header": "## Auth"
9+
}
10+
],
11+
"customImports": [
12+
"import StarterToolInfo from \"@/app/_components/starter-tool-info\";"
13+
]
14+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"customImports": [
3+
"import StarterToolInfo from \"@/app/_components/starter-tool-info\";"
4+
]
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"customImports": [
3+
"import StarterToolInfo from \"@/app/_components/starter-tool-info\";"
4+
]
5+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"documentationChunks": [
3+
{
4+
"type": "section",
5+
"location": "custom_section",
6+
"position": "after",
7+
"content": "## Secrets\n\nThis tool requires the following secrets:\n\n- `BRIGHTDATA_API_KEY`\n- `BRIGHTDATA_ZONE`\n\n### Auth\n\nThe Arcade Bright Data MCP Server uses [Bright Data](https://brightdata.com/) to access proxy networks and web scraping infrastructure.\n\n**Global Environment Variables:**\n\n- `BRIGHTDATA_API_KEY`: Your Bright Data API key. You can generate this from your [Bright Data dashboard](https://brightdata.com/cp/zones) under Account Settings → API Access.\n\n- `BRIGHTDATA_ZONE`: Your Bright Data zone name (e.g., `residential_proxy1`). This is the zone identifier you created in your Bright Data dashboard under Proxies & Scraping Infrastructure → Zones.\n\n**How to get your credentials:**\n\n1. **API Key**: Navigate to your [Bright Data Control Panel](https://brightdata.com/cp) → Settings → API Access → Generate API Token\n2. **Zone**: Go to Zones section in your dashboard, find your zone name in the format shown in the zone username: `brd-customer-{customer_id}-zone-{zone_name}`\n\nFor more details, see the [Bright Data API Documentation](https://docs.brightdata.com/api-reference).",
8+
"header": "## Secrets"
9+
}
10+
]
11+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"customImports": [
3+
"import StarterToolInfo from \"@/app/_components/starter-tool-info\";"
4+
]
5+
}

0 commit comments

Comments
 (0)