From 027d6beb6ca6e8e313c5e57eade14748f4b4726a Mon Sep 17 00:00:00 2001 From: Gilberts Ahumada Date: Thu, 5 Feb 2026 11:54:41 -0300 Subject: [PATCH] feat: add OASF taxonomies and update SDK version --- package-lock.json | 15 ++-------- package.json | 7 ++++- src/index.ts | 8 +++++ src/taxonomies/index.ts | 65 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 81 insertions(+), 14 deletions(-) create mode 100644 src/taxonomies/index.ts diff --git a/package-lock.json b/package-lock.json index ee8154b..01ee888 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "agent0-sdk", - "version": "1.5.1-beta.1", + "version": "1.5.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "agent0-sdk", - "version": "1.5.1-beta.1", + "version": "1.5.2", "license": "MIT", "dependencies": { "graphql-request": "^6.1.0", @@ -91,7 +91,6 @@ "integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@babel/code-frame": "^7.27.1", "@babel/generator": "^7.28.5", @@ -3881,7 +3880,6 @@ "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", "dev": true, "license": "BSD-2-Clause", - "peer": true, "dependencies": { "@typescript-eslint/scope-manager": "6.21.0", "@typescript-eslint/types": "6.21.0", @@ -4142,7 +4140,6 @@ "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -4509,7 +4506,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "baseline-browser-mapping": "^2.8.19", "caniuse-lite": "^1.0.30001751", @@ -5390,7 +5386,6 @@ "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", @@ -6053,7 +6048,6 @@ "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.11.0.tgz", "integrity": "sha512-mS1lbMsxgQj6hge1XZ6p7GPhbrtFwUFYi3wRzXAC/FmYnyXMTvvI3td3rjmQ2u8ewXueaSvRPWaEcgVVOT9Jnw==", "license": "MIT", - "peer": true, "engines": { "node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0" } @@ -7073,7 +7067,6 @@ "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@jest/core": "^29.7.0", "@jest/types": "^29.6.3", @@ -8391,7 +8384,6 @@ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "license": "MIT", - "peer": true, "dependencies": { "whatwg-url": "^5.0.0" }, @@ -10028,7 +10020,6 @@ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "devOptional": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -10161,7 +10152,6 @@ "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", "license": "MIT", - "peer": true, "dependencies": { "@fastify/busboy": "^2.0.0" }, @@ -10497,7 +10487,6 @@ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "license": "MIT", - "peer": true, "engines": { "node": ">=10.0.0" }, diff --git a/package.json b/package.json index 6c269ce..94e3929 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,10 @@ "types": "./dist/index.d.ts", "default": "./dist/index.js" }, + "./taxonomies": { + "types": "./dist/taxonomies/index.d.ts", + "default": "./dist/taxonomies/index.js" + }, "./eip6963": { "types": "./dist/browser/eip6963.d.ts", "default": "./dist/browser/eip6963.js" @@ -36,7 +40,8 @@ "blockchain", "ethereum", "ipfs", - "reputation" + "reputation", + "oasf" ], "author": "Agent0 Team ", "license": "MIT", diff --git a/src/index.ts b/src/index.ts index 6031b31..67d73d1 100644 --- a/src/index.ts +++ b/src/index.ts @@ -28,3 +28,11 @@ export type { TransactionMined, TransactionWaitOptions } from './core/transactio // Export contract definitions export * from './core/contracts.js'; +// Export OASF taxonomies +export { + OASF_SKILLS, + OASF_DOMAINS, + OASF_SKILL_SLUGS, + OASF_DOMAIN_SLUGS, + OASF_VERSION, +} from './taxonomies/index.js'; diff --git a/src/taxonomies/index.ts b/src/taxonomies/index.ts new file mode 100644 index 0000000..d75a2c6 --- /dev/null +++ b/src/taxonomies/index.ts @@ -0,0 +1,65 @@ +/** + * OASF Taxonomies - Public exports + * + * Provides access to the Open Agentic Schema Framework (OASF) taxonomies + * for skills and domains. These are used for standardized agent categorization. + * + * @example + * ```typescript + * import { OASF_SKILLS, OASF_DOMAINS } from 'agent0-sdk/taxonomies'; + * + * // Access skill slugs + * const skillSlugs = Object.keys(OASF_SKILLS.skills); + * + * // Access domain slugs + * const domainSlugs = Object.keys(OASF_DOMAINS.domains); + * ``` + */ + +import allSkills from './generated/all_skills.js'; +import allDomains from './generated/all_domains.js'; + +/** + * OASF Skills taxonomy data + * Contains all standardized skill categories and their metadata + */ +export const OASF_SKILLS = allSkills as { + metadata: { + version: string; + description: string; + identifier_format: string; + total_skills: number; + }; + categories: Record; + skills: Record; +}; + +/** + * OASF Domains taxonomy data + * Contains all standardized domain categories and their metadata + */ +export const OASF_DOMAINS = allDomains as { + metadata: { + version: string; + description: string; + identifier_format: string; + total_domains: number; + }; + categories: Record; + domains: Record; +}; + +/** + * Set of all valid OASF skill slugs + */ +export const OASF_SKILL_SLUGS = new Set(Object.keys(OASF_SKILLS.skills)); + +/** + * Set of all valid OASF domain slugs + */ +export const OASF_DOMAIN_SLUGS = new Set(Object.keys(OASF_DOMAINS.domains)); + +/** + * OASF version currently bundled in the SDK + */ +export const OASF_VERSION = OASF_SKILLS.metadata.version;