@signetai/connector-forge 0.163.18 → 0.164.0
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/index.d.ts.map +1 -1
- package/dist/index.js +95 -90
- package/package.json +3 -3
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,EACN,aAAa,EACb,KAAK,aAAa,EAClB,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,OAAO,EACN,aAAa,EACb,KAAK,aAAa,EAClB,KAAK,eAAe,EAWpB,MAAM,wBAAwB,CAAC;AAyDhC,qBAAa,cAAe,SAAQ,aAAa;IAChD,QAAQ,CAAC,IAAI,eAAe;IAC5B,QAAQ,CAAC,SAAS,WAAW;IAE7B,SAAS,CAAC,YAAY,IAAI,MAAM;IAUhC,aAAa,IAAI,MAAM;IAIjB,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA4EjD,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAiD3C,WAAW,IAAI,OAAO;IAStB,MAAM,CAAC,kBAAkB,IAAI,OAAO;IAWpC,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,mBAAmB;CAgC3B;AAED,eAAO,MAAM,cAAc,gBAAuB,CAAC;AACnD,eAAe,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -11196,6 +11196,79 @@ function expandHome(p, home = homedir2()) {
|
|
|
11196
11196
|
}
|
|
11197
11197
|
var LOCAL_BINDS = new Set(["127.0.0.1", "localhost", "::1", "::ffff:127.0.0.1"]);
|
|
11198
11198
|
var import_yaml2 = __toESM2(require_dist(), 1);
|
|
11199
|
+
function readEnv(env, name) {
|
|
11200
|
+
const value = env[name];
|
|
11201
|
+
if (typeof value !== "string")
|
|
11202
|
+
return;
|
|
11203
|
+
const trimmed = value.trim();
|
|
11204
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
11205
|
+
}
|
|
11206
|
+
function normalizePort(raw, fallback) {
|
|
11207
|
+
if (!raw)
|
|
11208
|
+
return String(fallback);
|
|
11209
|
+
if (!/^\d+$/.test(raw)) {
|
|
11210
|
+
throw new Error(`SIGNET_PORT must be an integer between 1 and 65535: ${raw}`);
|
|
11211
|
+
}
|
|
11212
|
+
const port = Number.parseInt(raw, 10);
|
|
11213
|
+
if (!Number.isFinite(port) || port < 1 || port > 65535) {
|
|
11214
|
+
throw new Error(`SIGNET_PORT must be an integer between 1 and 65535: ${raw}`);
|
|
11215
|
+
}
|
|
11216
|
+
return String(port);
|
|
11217
|
+
}
|
|
11218
|
+
function bracketIpv6Host(host) {
|
|
11219
|
+
if (host.startsWith("[") || !host.includes(":"))
|
|
11220
|
+
return host;
|
|
11221
|
+
return `[${host}]`;
|
|
11222
|
+
}
|
|
11223
|
+
function assertPlainHost(raw) {
|
|
11224
|
+
if (raw.includes("/") || raw.includes("@") || raw.includes("?") || raw.includes("#")) {
|
|
11225
|
+
throw new Error(`SIGNET_HOST must be a hostname or IP address, not a URL: ${raw}`);
|
|
11226
|
+
}
|
|
11227
|
+
const host = raw.startsWith("[") && raw.endsWith("]") ? raw.slice(1, -1) : raw;
|
|
11228
|
+
if (host.includes(":")) {
|
|
11229
|
+
if (/^[0-9A-Fa-f:.]+$/.test(host))
|
|
11230
|
+
return;
|
|
11231
|
+
throw new Error(`SIGNET_HOST must be a hostname or IP address: ${raw}`);
|
|
11232
|
+
}
|
|
11233
|
+
if (!/^[A-Za-z0-9]([A-Za-z0-9.-]*[A-Za-z0-9])?$/.test(host)) {
|
|
11234
|
+
throw new Error(`SIGNET_HOST must be a hostname or IP address: ${raw}`);
|
|
11235
|
+
}
|
|
11236
|
+
}
|
|
11237
|
+
function normalizeDaemonUrl(raw, source) {
|
|
11238
|
+
let parsed;
|
|
11239
|
+
try {
|
|
11240
|
+
parsed = new URL(raw);
|
|
11241
|
+
} catch {
|
|
11242
|
+
throw new Error(`${source} must be an http(s) URL: ${raw}`);
|
|
11243
|
+
}
|
|
11244
|
+
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
|
|
11245
|
+
throw new Error(`${source} must use http or https: ${raw}`);
|
|
11246
|
+
}
|
|
11247
|
+
if (parsed.username || parsed.password) {
|
|
11248
|
+
throw new Error(`${source} must not include username or password credentials`);
|
|
11249
|
+
}
|
|
11250
|
+
if (parsed.search || parsed.hash) {
|
|
11251
|
+
throw new Error(`${source} must not include query strings or fragments`);
|
|
11252
|
+
}
|
|
11253
|
+
if (parsed.pathname !== "/" && parsed.pathname !== "") {
|
|
11254
|
+
throw new Error(`${source} must point at the daemon origin, not a path: ${raw}`);
|
|
11255
|
+
}
|
|
11256
|
+
return parsed.toString().replace(/\/$/, "");
|
|
11257
|
+
}
|
|
11258
|
+
function resolveSignetDaemonUrl(opts = {}) {
|
|
11259
|
+
const env = opts.env ?? process.env;
|
|
11260
|
+
const fallbackHost = opts.defaultHost ?? "127.0.0.1";
|
|
11261
|
+
const fallbackPort = opts.defaultPort ?? 3850;
|
|
11262
|
+
const explicit = readEnv(env, "SIGNET_DAEMON_URL");
|
|
11263
|
+
if (explicit)
|
|
11264
|
+
return normalizeDaemonUrl(explicit, "SIGNET_DAEMON_URL");
|
|
11265
|
+
if (opts.configUrl)
|
|
11266
|
+
return normalizeDaemonUrl(opts.configUrl, "daemon.url");
|
|
11267
|
+
const host = readEnv(env, "SIGNET_HOST") ?? fallbackHost;
|
|
11268
|
+
assertPlainHost(host);
|
|
11269
|
+
const port = normalizePort(readEnv(env, "SIGNET_PORT"), fallbackPort);
|
|
11270
|
+
return normalizeDaemonUrl(`http://${bracketIpv6Host(host)}:${port}`, "SIGNET_HOST/SIGNET_PORT");
|
|
11271
|
+
}
|
|
11199
11272
|
var WORKSPACE_ENV_KEYS = ["SIGNET_PATH", "SIGNET_WORKSPACE"];
|
|
11200
11273
|
var DEFAULT_AGENTS_DIRNAME = ".agents";
|
|
11201
11274
|
function normalizeWorkspacePath(pathValue, home = homedir3()) {
|
|
@@ -11642,9 +11715,30 @@ function readManagedTrimmedEnv(name) {
|
|
|
11642
11715
|
function resolveSignetWorkspacePath(home2 = homedir()) {
|
|
11643
11716
|
return resolveWorkspacePath({ home: home2, strict: true, requireExistingEnvPath: true }).path;
|
|
11644
11717
|
}
|
|
11718
|
+
function resolveSignetDaemonUrl2() {
|
|
11719
|
+
return resolveSignetDaemonUrl();
|
|
11720
|
+
}
|
|
11645
11721
|
function resolveSignetApiKey() {
|
|
11646
11722
|
return readManagedTrimmedEnv("SIGNET_API_KEY") ?? readManagedTrimmedEnv("SIGNET_TOKEN");
|
|
11647
11723
|
}
|
|
11724
|
+
function buildSignetRuntimeEnv(opts = {}) {
|
|
11725
|
+
const env = {};
|
|
11726
|
+
if (opts.basePath)
|
|
11727
|
+
env.SIGNET_PATH = opts.basePath;
|
|
11728
|
+
const daemonUrl = readManagedTrimmedEnv("SIGNET_DAEMON_URL");
|
|
11729
|
+
const apiKey = resolveSignetApiKey();
|
|
11730
|
+
const agentId = readManagedTrimmedEnv("SIGNET_AGENT_ID");
|
|
11731
|
+
if (daemonUrl)
|
|
11732
|
+
env.SIGNET_DAEMON_URL = resolveSignetDaemonUrl2();
|
|
11733
|
+
if (apiKey)
|
|
11734
|
+
env.SIGNET_API_KEY = apiKey;
|
|
11735
|
+
if (agentId)
|
|
11736
|
+
env.SIGNET_AGENT_ID = agentId;
|
|
11737
|
+
return env;
|
|
11738
|
+
}
|
|
11739
|
+
function resolveRemoteDaemonUrl() {
|
|
11740
|
+
return readManagedTrimmedEnv("SIGNET_DAEMON_URL") ? resolveSignetDaemonUrl2() : null;
|
|
11741
|
+
}
|
|
11648
11742
|
|
|
11649
11743
|
// ../../../platform/core/dist/index.js
|
|
11650
11744
|
import { createRequire as createRequire3 } from "node:module";
|
|
@@ -22830,79 +22924,6 @@ function parseSimpleYaml(text) {
|
|
|
22830
22924
|
return {};
|
|
22831
22925
|
}
|
|
22832
22926
|
}
|
|
22833
|
-
function readEnv(env, name) {
|
|
22834
|
-
const value = env[name];
|
|
22835
|
-
if (typeof value !== "string")
|
|
22836
|
-
return;
|
|
22837
|
-
const trimmed = value.trim();
|
|
22838
|
-
return trimmed.length > 0 ? trimmed : undefined;
|
|
22839
|
-
}
|
|
22840
|
-
function normalizePort(raw, fallback) {
|
|
22841
|
-
if (!raw)
|
|
22842
|
-
return String(fallback);
|
|
22843
|
-
if (!/^\d+$/.test(raw)) {
|
|
22844
|
-
throw new Error(`SIGNET_PORT must be an integer between 1 and 65535: ${raw}`);
|
|
22845
|
-
}
|
|
22846
|
-
const port = Number.parseInt(raw, 10);
|
|
22847
|
-
if (!Number.isFinite(port) || port < 1 || port > 65535) {
|
|
22848
|
-
throw new Error(`SIGNET_PORT must be an integer between 1 and 65535: ${raw}`);
|
|
22849
|
-
}
|
|
22850
|
-
return String(port);
|
|
22851
|
-
}
|
|
22852
|
-
function bracketIpv6Host(host) {
|
|
22853
|
-
if (host.startsWith("[") || !host.includes(":"))
|
|
22854
|
-
return host;
|
|
22855
|
-
return `[${host}]`;
|
|
22856
|
-
}
|
|
22857
|
-
function assertPlainHost(raw) {
|
|
22858
|
-
if (raw.includes("/") || raw.includes("@") || raw.includes("?") || raw.includes("#")) {
|
|
22859
|
-
throw new Error(`SIGNET_HOST must be a hostname or IP address, not a URL: ${raw}`);
|
|
22860
|
-
}
|
|
22861
|
-
const host = raw.startsWith("[") && raw.endsWith("]") ? raw.slice(1, -1) : raw;
|
|
22862
|
-
if (host.includes(":")) {
|
|
22863
|
-
if (/^[0-9A-Fa-f:.]+$/.test(host))
|
|
22864
|
-
return;
|
|
22865
|
-
throw new Error(`SIGNET_HOST must be a hostname or IP address: ${raw}`);
|
|
22866
|
-
}
|
|
22867
|
-
if (!/^[A-Za-z0-9]([A-Za-z0-9.-]*[A-Za-z0-9])?$/.test(host)) {
|
|
22868
|
-
throw new Error(`SIGNET_HOST must be a hostname or IP address: ${raw}`);
|
|
22869
|
-
}
|
|
22870
|
-
}
|
|
22871
|
-
function normalizeDaemonUrl(raw, source) {
|
|
22872
|
-
let parsed;
|
|
22873
|
-
try {
|
|
22874
|
-
parsed = new URL(raw);
|
|
22875
|
-
} catch {
|
|
22876
|
-
throw new Error(`${source} must be an http(s) URL: ${raw}`);
|
|
22877
|
-
}
|
|
22878
|
-
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
|
|
22879
|
-
throw new Error(`${source} must use http or https: ${raw}`);
|
|
22880
|
-
}
|
|
22881
|
-
if (parsed.username || parsed.password) {
|
|
22882
|
-
throw new Error(`${source} must not include username or password credentials`);
|
|
22883
|
-
}
|
|
22884
|
-
if (parsed.search || parsed.hash) {
|
|
22885
|
-
throw new Error(`${source} must not include query strings or fragments`);
|
|
22886
|
-
}
|
|
22887
|
-
if (parsed.pathname !== "/" && parsed.pathname !== "") {
|
|
22888
|
-
throw new Error(`${source} must point at the daemon origin, not a path: ${raw}`);
|
|
22889
|
-
}
|
|
22890
|
-
return parsed.toString().replace(/\/$/, "");
|
|
22891
|
-
}
|
|
22892
|
-
function resolveSignetDaemonUrl(opts = {}) {
|
|
22893
|
-
const env = opts.env ?? process.env;
|
|
22894
|
-
const fallbackHost = opts.defaultHost ?? "127.0.0.1";
|
|
22895
|
-
const fallbackPort = opts.defaultPort ?? 3850;
|
|
22896
|
-
const explicit = readEnv(env, "SIGNET_DAEMON_URL");
|
|
22897
|
-
if (explicit)
|
|
22898
|
-
return normalizeDaemonUrl(explicit, "SIGNET_DAEMON_URL");
|
|
22899
|
-
if (opts.configUrl)
|
|
22900
|
-
return normalizeDaemonUrl(opts.configUrl, "daemon.url");
|
|
22901
|
-
const host = readEnv(env, "SIGNET_HOST") ?? fallbackHost;
|
|
22902
|
-
assertPlainHost(host);
|
|
22903
|
-
const port = normalizePort(readEnv(env, "SIGNET_PORT"), fallbackPort);
|
|
22904
|
-
return normalizeDaemonUrl(`http://${bracketIpv6Host(host)}:${port}`, "SIGNET_HOST/SIGNET_PORT");
|
|
22905
|
-
}
|
|
22906
22927
|
var native2 = null;
|
|
22907
22928
|
try {
|
|
22908
22929
|
const esmRequire = createRequire22(import.meta.url);
|
|
@@ -23108,22 +23129,6 @@ function readMcpServers(config) {
|
|
|
23108
23129
|
return { ...config.mcpServers };
|
|
23109
23130
|
throw new Error("Forge MCP config field 'mcpServers' must be an object");
|
|
23110
23131
|
}
|
|
23111
|
-
function signetRuntimeEnv(basePath) {
|
|
23112
|
-
const env = { SIGNET_PATH: basePath };
|
|
23113
|
-
const daemonUrl = readTrimmedEnv2("SIGNET_DAEMON_URL");
|
|
23114
|
-
const apiKey = readTrimmedEnv2("SIGNET_API_KEY") ?? readTrimmedEnv2("SIGNET_TOKEN");
|
|
23115
|
-
const agentId = readTrimmedEnv2("SIGNET_AGENT_ID");
|
|
23116
|
-
if (daemonUrl)
|
|
23117
|
-
env.SIGNET_DAEMON_URL = daemonUrl;
|
|
23118
|
-
if (apiKey)
|
|
23119
|
-
env.SIGNET_API_KEY = apiKey;
|
|
23120
|
-
if (agentId)
|
|
23121
|
-
env.SIGNET_AGENT_ID = agentId;
|
|
23122
|
-
return env;
|
|
23123
|
-
}
|
|
23124
|
-
function resolveRemoteDaemonUrl() {
|
|
23125
|
-
return readTrimmedEnv2("SIGNET_DAEMON_URL") ? resolveSignetDaemonUrl() : null;
|
|
23126
|
-
}
|
|
23127
23132
|
function buildMcpServer(basePath) {
|
|
23128
23133
|
const remoteDaemonUrl = resolveRemoteDaemonUrl();
|
|
23129
23134
|
if (remoteDaemonUrl) {
|
|
@@ -23137,7 +23142,7 @@ function buildMcpServer(basePath) {
|
|
|
23137
23142
|
return {
|
|
23138
23143
|
command: mcp.command,
|
|
23139
23144
|
...mcp.args && mcp.args.length > 0 ? { args: mcp.args } : {},
|
|
23140
|
-
env:
|
|
23145
|
+
env: buildSignetRuntimeEnv({ basePath })
|
|
23141
23146
|
};
|
|
23142
23147
|
}
|
|
23143
23148
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@signetai/connector-forge",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.164.0",
|
|
4
4
|
"description": "Signet connector for ForgeCode - installs MCP, identity, and skills integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"typecheck": "tsc --noEmit"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@signetai/connector-base": "0.
|
|
28
|
-
"@signetai/core": "0.
|
|
27
|
+
"@signetai/connector-base": "0.164.0",
|
|
28
|
+
"@signetai/core": "0.164.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/node": "^22.0.0",
|