@opentabs-dev/plugin-sdk 0.0.76 → 0.0.77
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config.d.ts +7 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +11 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/package.json +12 -1
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plugin configuration accessor.
|
|
3
|
+
* Reads resolved settings injected by the adapter IIFE at runtime.
|
|
4
|
+
* Returns undefined when no config is available (tests, unconfigured plugins).
|
|
5
|
+
*/
|
|
6
|
+
export declare const getConfig: (key: string) => string | number | boolean | undefined;
|
|
7
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,KAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAInE,CAAC"}
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plugin configuration accessor.
|
|
3
|
+
* Reads resolved settings injected by the adapter IIFE at runtime.
|
|
4
|
+
* Returns undefined when no config is available (tests, unconfigured plugins).
|
|
5
|
+
*/
|
|
6
|
+
export const getConfig = (key) => {
|
|
7
|
+
const ot = globalThis.__openTabs;
|
|
8
|
+
const config = ot?.pluginConfig;
|
|
9
|
+
return config?.[key];
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAAW,EAAyC,EAAE;IAC9E,MAAM,EAAE,GAAI,UAAsC,CAAC,UAAiD,CAAC;IACrG,MAAM,MAAM,GAAG,EAAE,EAAE,YAAqE,CAAC;IACzF,OAAO,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import type { ConfigSchema } from '@opentabs-dev/shared';
|
|
1
2
|
import type { z } from 'zod';
|
|
2
3
|
import type { LucideIconName } from './lucide-icon-names.js';
|
|
3
|
-
export type { ManifestTool, PluginManifest as Manifest } from '@opentabs-dev/shared';
|
|
4
|
+
export type { ConfigSchema, ConfigSettingDefinition, ConfigSettingType, ManifestTool, PluginManifest as Manifest, } from '@opentabs-dev/shared';
|
|
4
5
|
export { NAME_REGEX, RESERVED_NAMES, validatePluginName, validateUrlPattern } from '@opentabs-dev/shared';
|
|
5
6
|
export type { LucideIconName } from './lucide-icon-names.js';
|
|
6
7
|
export { LUCIDE_ICON_NAMES } from './lucide-icon-names.js';
|
|
@@ -67,6 +68,8 @@ export declare abstract class OpenTabsPlugin {
|
|
|
67
68
|
* (e.g., 'https://github.com'), not a match pattern.
|
|
68
69
|
*/
|
|
69
70
|
readonly homepage?: string;
|
|
71
|
+
/** Typed configuration schema — declares settings that users provide via config.json or the side panel. */
|
|
72
|
+
readonly configSchema?: ConfigSchema;
|
|
70
73
|
/** All tool definitions for this plugin */
|
|
71
74
|
abstract readonly tools: ToolDefinition[];
|
|
72
75
|
/**
|
|
@@ -144,6 +147,7 @@ export { buildQueryString, deleteJSON, fetchFromPage, fetchJSON, fetchJSONImpl,
|
|
|
144
147
|
export type { RetryOptions, SleepOptions, WaitUntilOptions } from './timing.js';
|
|
145
148
|
export { retry, sleep, waitUntil } from './timing.js';
|
|
146
149
|
export { clearAuthCache, findLocalStorageEntry, getAuthCache, getCookie, getLocalStorage, getSessionStorage, removeLocalStorage, removeSessionStorage, setAuthCache, setLocalStorage, setSessionStorage, } from './storage.js';
|
|
150
|
+
export { getConfig } from './config.js';
|
|
147
151
|
export { getCurrentUrl, getPageGlobal, getPageTitle } from './page-state.js';
|
|
148
152
|
export type { LogEntry, LogLevel, LogTransport } from './log.js';
|
|
149
153
|
export { log } from './log.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAM7D,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -20,6 +20,8 @@ export class OpenTabsPlugin {
|
|
|
20
20
|
* (e.g., 'https://github.com'), not a match pattern.
|
|
21
21
|
*/
|
|
22
22
|
homepage;
|
|
23
|
+
/** Typed configuration schema — declares settings that users provide via config.json or the side panel. */
|
|
24
|
+
configSchema;
|
|
23
25
|
}
|
|
24
26
|
export { ToolError } from './errors.js';
|
|
25
27
|
export { getMetaContent, getTextContent, observeDOM, querySelectorAll, waitForSelector, waitForSelectorRemoval, } from './dom.js';
|
|
@@ -30,6 +32,10 @@ export { retry, sleep, waitUntil } from './timing.js';
|
|
|
30
32
|
// ---------------------------------------------------------------------------
|
|
31
33
|
export { clearAuthCache, findLocalStorageEntry, getAuthCache, getCookie, getLocalStorage, getSessionStorage, removeLocalStorage, removeSessionStorage, setAuthCache, setLocalStorage, setSessionStorage, } from './storage.js';
|
|
32
34
|
// ---------------------------------------------------------------------------
|
|
35
|
+
// SDK utilities — Config
|
|
36
|
+
// ---------------------------------------------------------------------------
|
|
37
|
+
export { getConfig } from './config.js';
|
|
38
|
+
// ---------------------------------------------------------------------------
|
|
33
39
|
// SDK utilities — Page State
|
|
34
40
|
// ---------------------------------------------------------------------------
|
|
35
41
|
export { getCurrentUrl, getPageGlobal, getPageTitle } from './page-state.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAkD3D,4EAA4E;AAC5E,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,MAAuC,EACN,EAAE,CAAC,MAAM,CAAC;AAE7C;;;GAGG;AACH,MAAM,OAAgB,cAAc;IAUlC;;;;;OAKG;IACM,eAAe,CAAY;IACpC;;;;OAIG;IACM,QAAQ,CAAU;IAC3B,2GAA2G;IAClG,YAAY,CAAgB;CAoEtC;AAOD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAOxC,OAAO,EACL,cAAc,EACd,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,sBAAsB,GACvB,MAAM,UAAU,CAAC;AAgBlB,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,SAAS,EACT,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,cAAc,GACf,MAAM,YAAY,CAAC;AAOpB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEtD,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,YAAY,EACZ,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,8EAA8E;AAC9E,6BAA6B;AAC7B,8EAA8E;AAE9E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO7E,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,8EAA8E;AAC9E,4BAA4B;AAC5B,8EAA8E;AAE9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opentabs-dev/plugin-sdk",
|
|
3
|
-
"
|
|
3
|
+
"description": "SDK for building OpenTabs plugins — give AI agents tools to interact with any web application",
|
|
4
|
+
"keywords": [
|
|
5
|
+
"opentabs",
|
|
6
|
+
"mcp",
|
|
7
|
+
"modelcontextprotocol",
|
|
8
|
+
"ai-agent",
|
|
9
|
+
"browser",
|
|
10
|
+
"chrome-extension",
|
|
11
|
+
"plugin-sdk",
|
|
12
|
+
"opentabs-plugin"
|
|
13
|
+
],
|
|
14
|
+
"version": "0.0.77",
|
|
4
15
|
"license": "MIT",
|
|
5
16
|
"type": "module",
|
|
6
17
|
"exports": {
|