feat: add Tabstack API tools for cloud-based extraction#329
Draft
feat: add Tabstack API tools for cloud-based extraction#329
Conversation
Add three new tools that leverage the Tabstack API when a TABSTACK_API_KEY is configured: - tabstack_extract_markdown: extract clean markdown from web pages and PDFs (especially useful for PDFs which browsers can't read) - tabstack_extract_json: extract structured data per a JSON Schema - tabstack_generate_json: AI-transform page content via instructions Tools are conditionally available (same pattern as search tools) and use the @tabstack/sdk TypeScript client. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add feature bullet, CLI option, and environment variable documentation for the new tabstack_api_key config field. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds a fourth Tabstack tool that uses the /v1/agent/research endpoint to search the web, analyze multiple sources, and synthesize answers with citations. Supports fast and balanced modes. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Make the action loop prompt more opinionated about when to use Tabstack tools over manual browsing. Key changes: - Recommend tabstack_research FIRST for research-heavy tasks - Explicitly state it's faster than manual search/navigate/extract - Update PDF guidance to prefer tabstack_extract_markdown directly - Frame all Tabstack tools as preferred alternatives, not just options Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The research endpoint returns flat objects with `message` as the event type and `report`/`metadata` as fields on the final event, not the `event`/`data` structure the SDK types suggest. Fixed both the tool implementation and tests to match the actual API format. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
When a starting URL is given, the user wants the agent focused on that specific site. Adjust prompt guidance so: - tabstack_research is available but not the default first action - webSearch is described as supplementary, not primary - Both tools are still available if the site doesn't have enough info This applies the same logic to both tabstack_research and webSearch. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add three new tools that leverage the Tabstack API when a TABSTACK_API_KEY is configured:
Tools are conditionally available (same pattern as search tools) and use the @tabstack/sdk TypeScript client.
Description
PR Type
Checklist
pnpm test)AI Usage