Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ CHANGELOG.md
/ecosystem-tests/*/**
/node_modules
/deno
/packages/mcp-server/manifest.json

# don't format tsc output, will break source maps
dist
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "2.6.0"
".": "2.6.1"
}
6 changes: 3 additions & 3 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 6
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mozilla%2Ftabstack-5e6e6508dca15391d72cbea74ec33838c511cbc17e046699142f97d1573b069a.yml
openapi_spec_hash: b73b5922a495fd375736896912815d18
config_hash: 57c64e5e8fe99c1bd7af536d82af4ad9
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/mozilla/tabstack-c97fe4d7e39fd2f35a75dc7fdeb6d3f19aab2f9b56d4983c3376a5433dc9e268.yml
openapi_spec_hash: 8a4612fa101f82893c6edca118a86a2d
config_hash: 5827ec0cdbbac0e7c5db2f5456f67dca
18 changes: 18 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# Changelog

## 2.6.1 (2026-05-05)

Full Changelog: [v2.6.0...v2.6.1](https://github.com/Mozilla-Ocho/tabstack-typescript/compare/v2.6.0...v2.6.1)

### Features

* **api:** add endpoint specfic timeouts ([4d6bd2e](https://github.com/Mozilla-Ocho/tabstack-typescript/commit/4d6bd2ec28d2424f239fd7fc763e0ed394f43a51))
* **api:** manual updates ([cc20909](https://github.com/Mozilla-Ocho/tabstack-typescript/commit/cc209097670fa44ec405ed1740681d4a12f50586))
* **automate:** emit task:trace_context SSE event with trace ID ([51cc989](https://github.com/Mozilla-Ocho/tabstack-typescript/commit/51cc9894ca8b828dcfe5413e3cee66384b071149))
* support setting headers via env ([dc80807](https://github.com/Mozilla-Ocho/tabstack-typescript/commit/dc80807af38c51ce4a041a6ba331c62897aace6d))


### Chores

* avoid formatting file that gets changed during releases ([8bcebec](https://github.com/Mozilla-Ocho/tabstack-typescript/commit/8bcebec347f5b03762e7ff725a3c19a4425c0d3b))
* **format:** run eslint and prettier separately ([0d94d58](https://github.com/Mozilla-Ocho/tabstack-typescript/commit/0d94d58968327fc93081582f0e4aa52c73ef3a77))
* **internal:** codegen related update ([8ee7235](https://github.com/Mozilla-Ocho/tabstack-typescript/commit/8ee7235bb02f5696aa8f0682b5c91d18a9755eac))

## 2.6.0 (2026-04-24)

Full Changelog: [v2.5.0...v2.6.0](https://github.com/Mozilla-Ocho/tabstack-typescript/compare/v2.5.0...v2.6.0)
Expand Down
8 changes: 8 additions & 0 deletions api.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,17 @@
# Shared

Types:

- <code><a href="./src/resources/shared.ts">GeotargetGeoTarget</a></code>

# Agent

Types:

- <code><a href="./src/resources/agent.ts">AutomateEvent</a></code>
- <code><a href="./src/resources/agent.ts">ResearchEvent</a></code>
- <code><a href="./src/resources/agent.ts">V1GlobalBuffer</a></code>
- <code><a href="./src/resources/agent.ts">V1ResearchQuestionAssessment</a></code>
- <code><a href="./src/resources/agent.ts">AgentAutomateInputResponse</a></code>

Methods:
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@tabstack/sdk",
"version": "2.6.0",
"version": "2.6.1",
"description": "The official TypeScript library for the Tabstack API",
"author": "Tabstack <>",
"types": "dist/index.d.ts",
Expand Down
10 changes: 7 additions & 3 deletions packages/mcp-server/manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"dxt_version": "0.2",
"name": "@tabstack/sdk-mcp",
"version": "2.6.0",
"version": "2.6.1",
"description": "The official MCP Server for the Tabstack API",
"author": {
"name": "Tabstack"
Expand All @@ -16,7 +16,9 @@
"entry_point": "index.js",
"mcp_config": {
"command": "node",
"args": ["${__dirname}/index.js"],
"args": [
"${__dirname}/index.js"
],
"env": {
"TABSTACK_API_KEY": "${user_config.TABSTACK_API_KEY}"
}
Expand All @@ -37,5 +39,7 @@
"node": ">=18.0.0"
}
},
"keywords": ["api"]
"keywords": [
"api"
]
}
2 changes: 1 addition & 1 deletion packages/mcp-server/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@tabstack/sdk-mcp",
"version": "2.6.0",
"version": "2.6.1",
"description": "The official MCP Server for the Tabstack API",
"author": "Tabstack <>",
"types": "dist/index.d.ts",
Expand Down
16 changes: 8 additions & 8 deletions packages/mcp-server/src/local-docs-search.ts

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion packages/mcp-server/src/server.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export const newMcpServer = async ({
new McpServer(
{
name: 'tabstack_sdk_api',
version: '2.6.0',
version: '2.6.1',
},
{
instructions: await getInstructions({ stainlessApiKey, customInstructionsPath }),
Expand Down
7 changes: 3 additions & 4 deletions scripts/fast-format
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,7 @@ if ! [ -z "$ESLINT_FILES" ]; then
fi

echo "==> Running prettier --write"
PRETTIER_FILES="$(grep '\.\([mc]?tsx?\|[mc]?jsx?\|json\)$' "$FILE_LIST" || true)"
if ! [ -z "$PRETTIER_FILES" ]; then
echo "$PRETTIER_FILES" | xargs ./node_modules/.bin/prettier \
--write --cache --cache-strategy metadata --no-error-on-unmatched-pattern
if ! [ -z "$FILE_LIST" ]; then
cat "$FILE_LIST" | xargs ./node_modules/.bin/prettier \
--write --cache --cache-strategy metadata --no-error-on-unmatched-pattern --ignore-unknown
fi
9 changes: 8 additions & 1 deletion scripts/utils/postprocess-files.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,19 @@ async function postprocess() {

// strip out lib="dom", types="node", and types="react" references; these
// are needed at build time, but would pollute the user's TS environment
const transformed = code.replace(
let transformed = code.replace(
/^ *\/\/\/ *<reference +(lib="dom"|types="(node|react)").*?\n/gm,
// replace with same number of characters to avoid breaking source maps
(match) => ' '.repeat(match.length - 1) + '\n',
);

// TypeScript's declaration emitter collapses /** @ts-ignore */ onto the same
// line as the type declaration, which doesn't work. So we convert to // @ts-ignore
// on its own line to properly suppresses errors.
if (file.endsWith('.d.ts') || file.endsWith('.d.mts') || file.endsWith('.d.cts')) {
transformed = transformed.replace(/\/\*\* @ts-ignore\b[^*]*\*\/ /gm, '// @ts-ignore\n');
}

if (transformed !== code) {
console.error(`wrote ${path.relative(process.cwd(), file)}`);
await fs.promises.writeFile(file, transformed, 'utf8');
Expand Down
18 changes: 18 additions & 0 deletions src/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ import {
AgentResearchParams,
AutomateEvent,
ResearchEvent,
V1GlobalBuffer,
V1ResearchQuestionAssessment,
} from './resources/agent';
import {
Extract,
Expand Down Expand Up @@ -184,6 +186,18 @@ export class Tabstack {
this.fetch = options.fetch ?? Shims.getDefaultFetch();
this.#encoder = Opts.FallbackEncoder;

const customHeadersEnv = readEnv('TABSTACK_CUSTOM_HEADERS');
if (customHeadersEnv) {
const parsed: Record<string, string> = {};
for (const line of customHeadersEnv.split('\n')) {
const colon = line.indexOf(':');
if (colon >= 0) {
parsed[line.substring(0, colon).trim()] = line.substring(colon + 1).trim();
}
}
options.defaultHeaders = { ...parsed, ...options.defaultHeaders };
}

this._options = options;

this.apiKey = apiKey;
Expand Down Expand Up @@ -750,6 +764,8 @@ export declare namespace Tabstack {
Agent as Agent,
type AutomateEvent as AutomateEvent,
type ResearchEvent as ResearchEvent,
type V1GlobalBuffer as V1GlobalBuffer,
type V1ResearchQuestionAssessment as V1ResearchQuestionAssessment,
type AgentAutomateInputResponse as AgentAutomateInputResponse,
type AgentAutomateParams as AgentAutomateParams,
type AgentAutomateInputParams as AgentAutomateInputParams,
Expand All @@ -769,4 +785,6 @@ export declare namespace Tabstack {
type GenerateJsonResponse as GenerateJsonResponse,
type GenerateJsonParams as GenerateJsonParams,
};

export type GeotargetGeoTarget = API.GeotargetGeoTarget;
}
Loading
Loading