@0xmaxma/claude-gateway 1.8.7 → 1.8.9
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/README.md +96 -0
- package/dist/agent/runner.d.ts +47 -1
- package/dist/agent/runner.d.ts.map +1 -1
- package/dist/agent/runner.js +116 -17
- package/dist/agent/runner.js.map +1 -1
- package/dist/api/connectors-router.d.ts +50 -0
- package/dist/api/connectors-router.d.ts.map +1 -0
- package/dist/api/connectors-router.js +650 -0
- package/dist/api/connectors-router.js.map +1 -0
- package/dist/api/gateway-router.d.ts +4 -0
- package/dist/api/gateway-router.d.ts.map +1 -1
- package/dist/api/gateway-router.js +26 -0
- package/dist/api/gateway-router.js.map +1 -1
- package/dist/api/oauth-connectors-router.d.ts +43 -0
- package/dist/api/oauth-connectors-router.d.ts.map +1 -0
- package/dist/api/oauth-connectors-router.js +384 -0
- package/dist/api/oauth-connectors-router.js.map +1 -0
- package/dist/api/router.d.ts.map +1 -1
- package/dist/api/router.js +101 -13
- package/dist/api/router.js.map +1 -1
- package/dist/apps/agent-manager.d.ts +6 -2
- package/dist/apps/agent-manager.d.ts.map +1 -1
- package/dist/apps/agent-manager.js +10 -18
- package/dist/apps/agent-manager.js.map +1 -1
- package/dist/config/config-write-lock.d.ts +45 -0
- package/dist/config/config-write-lock.d.ts.map +1 -0
- package/dist/config/config-write-lock.js +164 -0
- package/dist/config/config-write-lock.js.map +1 -0
- package/dist/config/watcher.d.ts.map +1 -1
- package/dist/config/watcher.js +29 -0
- package/dist/config/watcher.js.map +1 -1
- package/dist/connectors/custom-connectors-store.d.ts +54 -0
- package/dist/connectors/custom-connectors-store.d.ts.map +1 -0
- package/dist/connectors/custom-connectors-store.js +204 -0
- package/dist/connectors/custom-connectors-store.js.map +1 -0
- package/dist/connectors/custom.d.ts +69 -0
- package/dist/connectors/custom.d.ts.map +1 -0
- package/dist/connectors/custom.js +158 -0
- package/dist/connectors/custom.js.map +1 -0
- package/dist/connectors/mcp-oauth.d.ts +152 -0
- package/dist/connectors/mcp-oauth.d.ts.map +1 -0
- package/dist/connectors/mcp-oauth.js +522 -0
- package/dist/connectors/mcp-oauth.js.map +1 -0
- package/dist/connectors/oauth-refresh-sweep.d.ts +71 -0
- package/dist/connectors/oauth-refresh-sweep.d.ts.map +1 -0
- package/dist/connectors/oauth-refresh-sweep.js +337 -0
- package/dist/connectors/oauth-refresh-sweep.js.map +1 -0
- package/dist/connectors/pending-oauth-store.d.ts +39 -0
- package/dist/connectors/pending-oauth-store.d.ts.map +1 -0
- package/dist/connectors/pending-oauth-store.js +50 -0
- package/dist/connectors/pending-oauth-store.js.map +1 -0
- package/dist/connectors/resolve.d.ts +52 -0
- package/dist/connectors/resolve.d.ts.map +1 -0
- package/dist/connectors/resolve.js +176 -0
- package/dist/connectors/resolve.js.map +1 -0
- package/dist/connectors/token-env.d.ts +93 -0
- package/dist/connectors/token-env.d.ts.map +1 -0
- package/dist/connectors/token-env.js +323 -0
- package/dist/connectors/token-env.js.map +1 -0
- package/dist/connectors/types.d.ts +126 -0
- package/dist/connectors/types.d.ts.map +1 -0
- package/dist/connectors/types.js +13 -0
- package/dist/connectors/types.js.map +1 -0
- package/dist/index.js +32 -1
- package/dist/index.js.map +1 -1
- package/dist/session/process.d.ts +23 -0
- package/dist/session/process.d.ts.map +1 -1
- package/dist/session/process.js +78 -2
- package/dist/session/process.js.map +1 -1
- package/dist/types.d.ts +46 -1
- package/dist/types.d.ts.map +1 -1
- package/mcp/instructions.ts +14 -1
- package/mcp/server.ts +11 -5
- package/mcp/tools/image/module.ts +2 -70
- package/mcp/tools/shared/media.ts +76 -0
- package/mcp/tools/video/module.ts +676 -0
- package/package.json +1 -1
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Router } from 'express';
|
|
2
|
+
import { ApiKey } from '../types';
|
|
3
|
+
import { type CustomConnectorsStore } from '../connectors/custom-connectors-store';
|
|
4
|
+
import type { AgentRunner } from '../agent/runner';
|
|
5
|
+
/**
|
|
6
|
+
* Connector management API. The gateway acts as connector registry + secret manager
|
|
7
|
+
* + config injector: connecting a connector stores its secret in mcp-token.env —
|
|
8
|
+
* that store alone is authoritative for "connected" (see resolve.ts's
|
|
9
|
+
* listConnectorStatus). The actual MCP server is injected into each session by
|
|
10
|
+
* SessionProcess (see resolveEnabledConnectors).
|
|
11
|
+
*
|
|
12
|
+
* Routes (mounted under /api):
|
|
13
|
+
* GET /v1/connectors — every connector, with connected state
|
|
14
|
+
* GET /v1/connectors/:id/status — connected boolean (for polling)
|
|
15
|
+
* POST /v1/connectors/:id/connect — store a secret (admin) into a
|
|
16
|
+
* single-secret customConnectors entry
|
|
17
|
+
* (e.g. reconnecting a paste-token
|
|
18
|
+
* connector after DELETE
|
|
19
|
+
* soft-disconnected it) — see the handler
|
|
20
|
+
* POST /v1/connectors/:id/oauth/receive — store a pushed access_token (admin);
|
|
21
|
+
* always writes credentialOwner 'external'
|
|
22
|
+
* DELETE /v1/connectors/:id — clear a secret (admin); a 'static' or
|
|
23
|
+
* 'gateway' connector keeps its
|
|
24
|
+
* entry (config/label intact, just
|
|
25
|
+
* disconnected), a 'none' or 'external'
|
|
26
|
+
* one is removed outright — see the handler below
|
|
27
|
+
* POST /v1/connectors/custom — add a user-pasted connector (admin)
|
|
28
|
+
*
|
|
29
|
+
* (Removal of a custom connector is NOT a separate route — it's the same
|
|
30
|
+
* DELETE /v1/connectors/:id above. See the note at the bottom of this file for
|
|
31
|
+
* why the old dedicated /custom/:id route was retired.)
|
|
32
|
+
*
|
|
33
|
+
* Externally-owned connectors (Gmail/Drive/Calendar) never do the actual OAuth
|
|
34
|
+
* dance here — an external control plane the deployer runs owns the
|
|
35
|
+
* client_secret, the token exchange, and the refresh loop (this gateway runs
|
|
36
|
+
* inside the user's own VM, reachable by that user's own shell/SSH, so a
|
|
37
|
+
* shared client_secret can't live here safely — see ConnectorCredentialOwner's
|
|
38
|
+
* doc comment). That control plane pushes the resulting short-lived
|
|
39
|
+
* access_token here via /oauth/receive, over the internal network,
|
|
40
|
+
* authenticated the same way any other admin API caller is. A connector this
|
|
41
|
+
* gateway signs in for itself is 'gateway' instead, and lives in
|
|
42
|
+
* oauth-connectors-router.ts.
|
|
43
|
+
*
|
|
44
|
+
* `agents` (all live AgentRunners) is what lets a route that changes a connector's
|
|
45
|
+
* secrets restart the sessions already using it — every route works without it
|
|
46
|
+
* (e.g. in tests), it just leaves running sessions on their stale MCP config
|
|
47
|
+
* until they next respawn on their own.
|
|
48
|
+
*/
|
|
49
|
+
export declare function createConnectorsRouter(apiKeys?: ApiKey[], configPath?: string, agents?: Map<string, AgentRunner>, customConnectorsStore?: CustomConnectorsStore): Router;
|
|
50
|
+
//# sourceMappingURL=connectors-router.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connectors-router.d.ts","sourceRoot":"","sources":["../../src/api/connectors-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAmC,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,MAAM,EAAwB,MAAM,UAAU,CAAC;AAmBxD,OAAO,EAA+B,KAAK,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAEhH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAInD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EACjC,qBAAqB,CAAC,EAAE,qBAAqB,GAC5C,MAAM,CAgoBR"}
|