@easynet/agent-tool 1.0.24 → 1.0.26
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/api/extension/createExtension.d.ts +38 -0
- package/dist/api/extension/createExtension.d.ts.map +1 -0
- package/dist/api/extension/dynamicImportAdapter.d.ts +3 -2
- package/dist/api/extension/dynamicImportAdapter.d.ts.map +1 -1
- package/dist/api/extension/generateExtensionManifest.d.ts +29 -0
- package/dist/api/extension/generateExtensionManifest.d.ts.map +1 -0
- package/dist/api/extension/index.d.ts +4 -0
- package/dist/api/extension/index.d.ts.map +1 -1
- package/dist/api/extension/registerExtension.d.ts +6 -5
- package/dist/api/extension/registerExtension.d.ts.map +1 -1
- package/dist/api/extension/registerFromManifest.d.ts +2 -2
- package/dist/api/extension/registerFromManifest.d.ts.map +1 -1
- package/dist/api/main.cjs +14 -14
- package/dist/api/main.js +3 -3
- package/dist/api/runtimeFromConfig.d.ts +12 -10
- package/dist/api/runtimeFromConfig.d.ts.map +1 -1
- package/dist/{chunk-ZRDI2RKU.js → chunk-7J2DRVCV.js} +3 -3
- package/dist/{chunk-ZRDI2RKU.js.map → chunk-7J2DRVCV.js.map} +1 -1
- package/dist/{chunk-FWIMPZC2.cjs → chunk-EJSCDVKD.cjs} +14 -14
- package/dist/{chunk-FWIMPZC2.cjs.map → chunk-EJSCDVKD.cjs.map} +1 -1
- package/dist/{chunk-P2LVZGZ4.cjs → chunk-ETZKGTTF.cjs} +7 -7
- package/dist/{chunk-P2LVZGZ4.cjs.map → chunk-ETZKGTTF.cjs.map} +1 -1
- package/dist/{chunk-QP5FIRC2.js → chunk-GYUELFVR.js} +3 -3
- package/dist/{chunk-QP5FIRC2.js.map → chunk-GYUELFVR.js.map} +1 -1
- package/dist/{chunk-AH4NI4GN.cjs → chunk-PKUSCCS6.cjs} +84 -54
- package/dist/chunk-PKUSCCS6.cjs.map +1 -0
- package/dist/{chunk-BPHY6UVK.js → chunk-UUQGKFSG.js} +83 -53
- package/dist/chunk-UUQGKFSG.js.map +1 -0
- package/dist/{chunk-BOMOGAFZ.js → chunk-XRCHMWOC.js} +5 -4
- package/dist/chunk-XRCHMWOC.js.map +1 -0
- package/dist/{chunk-AT3N7SQK.cjs → chunk-ZOQWKN2O.cjs} +11 -10
- package/dist/chunk-ZOQWKN2O.cjs.map +1 -0
- package/dist/index.cjs +175 -73
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +120 -21
- package/dist/index.js.map +1 -1
- package/dist/tools/function/scanner.d.ts.map +1 -1
- package/dist/utils/cli/index.cjs +20 -18
- package/dist/utils/cli/index.cjs.map +1 -1
- package/dist/utils/cli/index.d.ts.map +1 -1
- package/dist/utils/cli/index.js +6 -4
- package/dist/utils/cli/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-AH4NI4GN.cjs.map +0 -1
- package/dist/chunk-AT3N7SQK.cjs.map +0 -1
- package/dist/chunk-BOMOGAFZ.js.map +0 -1
- package/dist/chunk-BPHY6UVK.js.map +0 -1
|
@@ -1728,11 +1728,7 @@ function getProjectRequire() {
|
|
|
1728
1728
|
if (existsSync(join(cwd, "tool.yaml"))) return createRequire(join(cwd, "tool.yaml"));
|
|
1729
1729
|
return null;
|
|
1730
1730
|
}
|
|
1731
|
-
var DEFAULT_EXTENSION_PACKAGES = [
|
|
1732
|
-
"@easynet/agent-tool-builtin-tools",
|
|
1733
|
-
"@easynet/agent-tool-builtin",
|
|
1734
|
-
"@easynet/agent-tool-buildin"
|
|
1735
|
-
];
|
|
1731
|
+
var DEFAULT_EXTENSION_PACKAGES = [];
|
|
1736
1732
|
function getInstalledPackageVersion(packageName) {
|
|
1737
1733
|
const projectRequire = getProjectRequire();
|
|
1738
1734
|
const requirers = [requireFromPackage];
|
|
@@ -1749,6 +1745,9 @@ function getInstalledPackageVersion(packageName) {
|
|
|
1749
1745
|
}
|
|
1750
1746
|
return null;
|
|
1751
1747
|
}
|
|
1748
|
+
function getRegisterFn(mod) {
|
|
1749
|
+
return mod?.register ?? mod?.registerCoreTools;
|
|
1750
|
+
}
|
|
1752
1751
|
function loadExtensionFromNodeModules() {
|
|
1753
1752
|
const projectRequire = getProjectRequire();
|
|
1754
1753
|
const requirers = [requireFromPackage];
|
|
@@ -1757,7 +1756,8 @@ function loadExtensionFromNodeModules() {
|
|
|
1757
1756
|
for (const pkg of DEFAULT_EXTENSION_PACKAGES) {
|
|
1758
1757
|
try {
|
|
1759
1758
|
const mod = req(pkg);
|
|
1760
|
-
|
|
1759
|
+
const fn = getRegisterFn(mod);
|
|
1760
|
+
if (typeof fn === "function") return { register: fn, packageName: pkg };
|
|
1761
1761
|
} catch {
|
|
1762
1762
|
continue;
|
|
1763
1763
|
}
|
|
@@ -1808,6 +1808,44 @@ function parseNpmDescriptor(entry) {
|
|
|
1808
1808
|
const version = rest.slice(at + 1).split("#")[0]?.trim() || "latest";
|
|
1809
1809
|
return { packageName, version };
|
|
1810
1810
|
}
|
|
1811
|
+
function loadExtensionFromToolYamlNodeModules(configFilePath, stepLog) {
|
|
1812
|
+
const localPath = isAbsolute(configFilePath) ? configFilePath : resolve(process.cwd(), configFilePath);
|
|
1813
|
+
if (!existsSync(localPath)) return null;
|
|
1814
|
+
const config = loadToolConfig(localPath);
|
|
1815
|
+
const tools = config.tools;
|
|
1816
|
+
if (!Array.isArray(tools) || tools.length === 0) return null;
|
|
1817
|
+
const configDir = dirname(localPath);
|
|
1818
|
+
const packageJsonPath = join(configDir, "package.json");
|
|
1819
|
+
if (!existsSync(packageJsonPath)) return null;
|
|
1820
|
+
const configRequire = createRequire(packageJsonPath);
|
|
1821
|
+
if (stepLog) stepLog("Trying tool.yaml npm entries from node_modules");
|
|
1822
|
+
for (const entry of tools) {
|
|
1823
|
+
const entryStr = String(entry).trim();
|
|
1824
|
+
const parsed = parseNpmDescriptor(entryStr);
|
|
1825
|
+
if (!parsed) continue;
|
|
1826
|
+
try {
|
|
1827
|
+
const mod = configRequire(parsed.packageName);
|
|
1828
|
+
const fn = getRegisterFn(mod);
|
|
1829
|
+
if (typeof fn === "function") {
|
|
1830
|
+
const resolvedVersion = getInstalledPackageVersionFromRequire(parsed.packageName, configRequire) ?? "latest";
|
|
1831
|
+
return { register: fn, descriptor: entryStr, resolvedVersion };
|
|
1832
|
+
}
|
|
1833
|
+
} catch {
|
|
1834
|
+
continue;
|
|
1835
|
+
}
|
|
1836
|
+
}
|
|
1837
|
+
return null;
|
|
1838
|
+
}
|
|
1839
|
+
function getInstalledPackageVersionFromRequire(packageName, req) {
|
|
1840
|
+
try {
|
|
1841
|
+
const pkgJsonPath = req.resolve(`${packageName}/package.json`);
|
|
1842
|
+
const json = readFileSync(pkgJsonPath, "utf-8");
|
|
1843
|
+
const pkg = JSON.parse(json);
|
|
1844
|
+
return pkg.version ?? null;
|
|
1845
|
+
} catch {
|
|
1846
|
+
return null;
|
|
1847
|
+
}
|
|
1848
|
+
}
|
|
1811
1849
|
function loadExtensionFromToolYamlCache(configFilePath, stepLog) {
|
|
1812
1850
|
const localPath = isAbsolute(configFilePath) ? configFilePath : resolve(process.cwd(), configFilePath);
|
|
1813
1851
|
if (!existsSync(localPath)) return null;
|
|
@@ -1829,9 +1867,10 @@ function loadExtensionFromToolYamlCache(configFilePath, stepLog) {
|
|
|
1829
1867
|
const entryPath = getPackageEntryPath(cacheDir);
|
|
1830
1868
|
const req = createRequire(join(cacheDir, "package.json"));
|
|
1831
1869
|
const mod = req(entryPath);
|
|
1832
|
-
|
|
1870
|
+
const fn = getRegisterFn(mod);
|
|
1871
|
+
if (typeof fn === "function") {
|
|
1833
1872
|
const resolvedVersion = basename(cacheDir);
|
|
1834
|
-
return {
|
|
1873
|
+
return { register: fn, descriptor: entryStr, resolvedVersion };
|
|
1835
1874
|
}
|
|
1836
1875
|
break;
|
|
1837
1876
|
} catch {
|
|
@@ -1861,9 +1900,10 @@ async function loadExtensionFromToolYamlCacheAsync(configFilePath, stepLog) {
|
|
|
1861
1900
|
const cacheDir = ensurePackageInCache(parsed.packageName, parsed.version, opts);
|
|
1862
1901
|
if (stepLog) stepLog(`Using cache: ${cacheDir}`);
|
|
1863
1902
|
const mod = await importFromCache(cacheDir);
|
|
1864
|
-
|
|
1903
|
+
const fn = getRegisterFn(mod);
|
|
1904
|
+
if (typeof fn === "function") {
|
|
1865
1905
|
const resolvedVersion = basename(cacheDir);
|
|
1866
|
-
return {
|
|
1906
|
+
return { register: fn, descriptor: entryStr, resolvedVersion };
|
|
1867
1907
|
}
|
|
1868
1908
|
break;
|
|
1869
1909
|
} catch {
|
|
@@ -1874,13 +1914,6 @@ async function loadExtensionFromToolYamlCacheAsync(configFilePath, stepLog) {
|
|
|
1874
1914
|
}
|
|
1875
1915
|
return null;
|
|
1876
1916
|
}
|
|
1877
|
-
function loadExampleTools() {
|
|
1878
|
-
try {
|
|
1879
|
-
return requireFromPackage("@easynet/agent-tool-example-tools");
|
|
1880
|
-
} catch {
|
|
1881
|
-
return null;
|
|
1882
|
-
}
|
|
1883
|
-
}
|
|
1884
1917
|
function createRuntimeFromConfigSync(options = {}) {
|
|
1885
1918
|
const registry = new ToolRegistry();
|
|
1886
1919
|
const stepLog = options.stepLog;
|
|
@@ -1893,70 +1926,67 @@ function createRuntimeFromConfigSync(options = {}) {
|
|
|
1893
1926
|
const resolvedVersion = getInstalledPackageVersion(extensionNode.packageName);
|
|
1894
1927
|
const prefix = npmDescriptorToRegistryPrefix(descriptor, resolvedVersion ?? void 0);
|
|
1895
1928
|
const reg = prefix ? createPrefixingRegistry(registry, prefix) : registry;
|
|
1896
|
-
const coreAdapter = extensionNode.
|
|
1929
|
+
const coreAdapter = extensionNode.register(reg, options.coreTools);
|
|
1897
1930
|
const runtime3 = new PTCRuntime({ registry });
|
|
1898
1931
|
runtime3.registerAdapter(coreAdapter);
|
|
1899
|
-
if (options.exampleTools !== void 0) {
|
|
1900
|
-
const example = loadExampleTools();
|
|
1901
|
-
if (example) {
|
|
1902
|
-
const exampleAdapter = example.registerExampleTools(registry, options.exampleTools);
|
|
1903
|
-
runtime3.registerAdapter(exampleAdapter);
|
|
1904
|
-
}
|
|
1905
|
-
}
|
|
1906
1932
|
return { runtime: runtime3, registry };
|
|
1907
1933
|
}
|
|
1908
1934
|
if (options.configFilePath) {
|
|
1935
|
+
const extensionFromNodeModules = loadExtensionFromToolYamlNodeModules(options.configFilePath, stepLog);
|
|
1936
|
+
if (extensionFromNodeModules) {
|
|
1937
|
+
if (stepLog) stepLog("Registered extension from tool.yaml list (node_modules)");
|
|
1938
|
+
const prefix = npmDescriptorToRegistryPrefix(extensionFromNodeModules.descriptor, extensionFromNodeModules.resolvedVersion);
|
|
1939
|
+
const reg = prefix ? createPrefixingRegistry(registry, prefix) : registry;
|
|
1940
|
+
const coreAdapter = extensionFromNodeModules.register(reg, options.coreTools);
|
|
1941
|
+
const runtime3 = new PTCRuntime({ registry });
|
|
1942
|
+
runtime3.registerAdapter(coreAdapter);
|
|
1943
|
+
return { runtime: runtime3, registry };
|
|
1944
|
+
}
|
|
1909
1945
|
if (stepLog) stepLog("No extension in node_modules, loading from tool.yaml cache");
|
|
1910
1946
|
const extensionCache = loadExtensionFromToolYamlCache(options.configFilePath, stepLog);
|
|
1911
1947
|
if (extensionCache) {
|
|
1912
1948
|
if (stepLog) stepLog("Registered extension from cache");
|
|
1913
1949
|
const prefix = npmDescriptorToRegistryPrefix(extensionCache.descriptor, extensionCache.resolvedVersion);
|
|
1914
1950
|
const reg = prefix ? createPrefixingRegistry(registry, prefix) : registry;
|
|
1915
|
-
const coreAdapter = extensionCache.
|
|
1951
|
+
const coreAdapter = extensionCache.register(reg, options.coreTools);
|
|
1916
1952
|
const runtime3 = new PTCRuntime({ registry });
|
|
1917
1953
|
runtime3.registerAdapter(coreAdapter);
|
|
1918
|
-
if (options.exampleTools !== void 0) {
|
|
1919
|
-
const example = loadExampleTools();
|
|
1920
|
-
if (example) {
|
|
1921
|
-
const exampleAdapter = example.registerExampleTools(registry, options.exampleTools);
|
|
1922
|
-
runtime3.registerAdapter(exampleAdapter);
|
|
1923
|
-
}
|
|
1924
|
-
}
|
|
1925
1954
|
return { runtime: runtime3, registry };
|
|
1926
1955
|
}
|
|
1927
1956
|
}
|
|
1928
1957
|
const runtime2 = new PTCRuntime({ registry });
|
|
1929
1958
|
return { runtime: runtime2, registry };
|
|
1930
1959
|
}
|
|
1931
|
-
if (options.exampleTools !== void 0) {
|
|
1932
|
-
const example = loadExampleTools();
|
|
1933
|
-
if (example) {
|
|
1934
|
-
const exampleAdapter = example.registerExampleTools(registry, options.exampleTools);
|
|
1935
|
-
const runtime2 = new PTCRuntime({ registry });
|
|
1936
|
-
runtime2.registerAdapter(exampleAdapter);
|
|
1937
|
-
return { runtime: runtime2, registry };
|
|
1938
|
-
}
|
|
1939
|
-
}
|
|
1940
1960
|
const runtime = new PTCRuntime({ registry });
|
|
1941
1961
|
return { runtime, registry };
|
|
1942
1962
|
}
|
|
1943
1963
|
async function createRuntimeFromConfig(options = {}) {
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
if (
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1964
|
+
if (options.coreTools !== void 0 && options.configFilePath) {
|
|
1965
|
+
const fromNodeModules = loadExtensionFromToolYamlNodeModules(options.configFilePath, options.stepLog);
|
|
1966
|
+
if (fromNodeModules) {
|
|
1967
|
+
if (options.stepLog) options.stepLog("Registered extension from tool.yaml list (node_modules)");
|
|
1968
|
+
const registry = new ToolRegistry();
|
|
1969
|
+
const prefix = npmDescriptorToRegistryPrefix(fromNodeModules.descriptor, fromNodeModules.resolvedVersion);
|
|
1970
|
+
const reg = prefix ? createPrefixingRegistry(registry, prefix) : registry;
|
|
1971
|
+
const coreAdapter = fromNodeModules.register(reg, options.coreTools);
|
|
1972
|
+
const runtime = new PTCRuntime({ registry });
|
|
1973
|
+
runtime.registerAdapter(coreAdapter);
|
|
1974
|
+
return { runtime, registry };
|
|
1975
|
+
}
|
|
1976
|
+
if (options.stepLog) options.stepLog("Loading extension from tool.yaml cache (dynamic: npm pack + import)");
|
|
1977
|
+
const fromCache = await loadExtensionFromToolYamlCacheAsync(options.configFilePath, options.stepLog);
|
|
1978
|
+
if (fromCache) {
|
|
1979
|
+
if (options.stepLog) options.stepLog("Registered extension from cache");
|
|
1950
1980
|
const registry = new ToolRegistry();
|
|
1951
|
-
const prefix = npmDescriptorToRegistryPrefix(
|
|
1981
|
+
const prefix = npmDescriptorToRegistryPrefix(fromCache.descriptor, fromCache.resolvedVersion);
|
|
1952
1982
|
const reg = prefix ? createPrefixingRegistry(registry, prefix) : registry;
|
|
1953
|
-
const coreAdapter =
|
|
1983
|
+
const coreAdapter = fromCache.register(reg, options.coreTools);
|
|
1954
1984
|
const runtime = new PTCRuntime({ registry });
|
|
1955
1985
|
runtime.registerAdapter(coreAdapter);
|
|
1956
1986
|
return { runtime, registry };
|
|
1957
1987
|
}
|
|
1958
1988
|
}
|
|
1959
|
-
return
|
|
1989
|
+
return createRuntimeFromConfigSync(options);
|
|
1960
1990
|
}
|
|
1961
1991
|
|
|
1962
1992
|
// src/tools/mcp/types.ts
|
|
@@ -1967,5 +1997,5 @@ var LANGCHAIN_KIND = "langchain";
|
|
|
1967
1997
|
var LANGCHAIN_DIR_NAME = "langchain";
|
|
1968
1998
|
|
|
1969
1999
|
export { BudgetManager, EventLog, LANGCHAIN_DIR_NAME, LANGCHAIN_KIND, MCP_KIND, Metrics, PTCRuntime, PolicyDeniedError, PolicyEngine, SchemaValidationError, SchemaValidator, Tracing, buildEvidence, createLogger, createRuntimeFromConfig, createRuntimeFromConfigSync, ensurePackageInCache, expandToolDescriptorsToRegistryNames, findAndLoadToolConfig, getDisplayScope, getPackageEntryPath, importFromCache, isBarePackageDescriptor, isNpmToolDescriptor, loadToolConfig, normalizeToolList, npmDescriptorToRegistryPrefix, parseNpmToolDescriptor, resolveNpmToolDescriptor, resolveSandboxedPath, resolveToolDescriptor, sanitizeForLog, summarizeForLog };
|
|
1970
|
-
//# sourceMappingURL=chunk-
|
|
1971
|
-
//# sourceMappingURL=chunk-
|
|
2000
|
+
//# sourceMappingURL=chunk-UUQGKFSG.js.map
|
|
2001
|
+
//# sourceMappingURL=chunk-UUQGKFSG.js.map
|