@absolutejs/agent-discovery
Advanced tools
+102
-0
@@ -158,2 +158,75 @@ // @bun | ||
| }); | ||
| var productId = Type.String({ pattern: "^[a-z][a-z0-9_-]{0,63}$" }); | ||
| var productCopy = { | ||
| description: Type.String({ minLength: 1 }), | ||
| id: productId, | ||
| title: Type.String({ minLength: 1 }) | ||
| }; | ||
| var productOperation = Type.Union([ | ||
| Type.Literal("aggregate"), | ||
| Type.Literal("create"), | ||
| Type.Literal("delete"), | ||
| Type.Literal("detail"), | ||
| Type.Literal("list"), | ||
| Type.Literal("update") | ||
| ]); | ||
| var productProjection = Type.Object({ | ||
| blocks: Type.Optional(Type.Array(Type.Object({ | ||
| ...productCopy, | ||
| category: Type.String({ minLength: 1 }), | ||
| componentExport: Type.String({ minLength: 1 }), | ||
| frameworks: Type.Optional(Type.Array(Type.Union(clientFrameworks.map((framework) => Type.Literal(framework))))), | ||
| props: jsonSchemaObject | ||
| }))), | ||
| connections: Type.Optional(Type.Array(Type.Object({ | ||
| ...productCopy, | ||
| envKeys: Type.Optional(Type.Array(Type.String({ minLength: 1 }))), | ||
| kind: Type.Union([ | ||
| Type.Literal("none"), | ||
| Type.Literal("oauth"), | ||
| Type.Literal("secret") | ||
| ]), | ||
| setupTool: Type.Optional(Type.String({ pattern: TOOL_NAME_PATTERN.source })), | ||
| testTool: Type.Optional(Type.String({ pattern: TOOL_NAME_PATTERN.source })) | ||
| }))), | ||
| dataSources: Type.Optional(Type.Array(Type.Object({ | ||
| ...productCopy, | ||
| operations: Type.Array(productOperation, { minItems: 1 }), | ||
| schema: jsonSchemaObject, | ||
| tools: Type.Optional(Type.Partial(Type.Object({ | ||
| aggregate: Type.String({ pattern: TOOL_NAME_PATTERN.source }), | ||
| create: Type.String({ pattern: TOOL_NAME_PATTERN.source }), | ||
| delete: Type.String({ pattern: TOOL_NAME_PATTERN.source }), | ||
| detail: Type.String({ pattern: TOOL_NAME_PATTERN.source }), | ||
| list: Type.String({ pattern: TOOL_NAME_PATTERN.source }), | ||
| update: Type.String({ pattern: TOOL_NAME_PATTERN.source }) | ||
| }))) | ||
| }))), | ||
| events: Type.Optional(Type.Array(Type.Object({ | ||
| ...productCopy, | ||
| schema: jsonSchemaObject, | ||
| source: Type.Union([ | ||
| Type.Literal("data"), | ||
| Type.Literal("package"), | ||
| Type.Literal("ui"), | ||
| Type.Literal("webhook") | ||
| ]) | ||
| }))), | ||
| healthChecks: Type.Optional(Type.Array(Type.Object({ | ||
| ...productCopy, | ||
| tool: Type.String({ pattern: TOOL_NAME_PATTERN.source }) | ||
| }))), | ||
| releaseChecks: Type.Optional(Type.Array(Type.Object({ | ||
| ...productCopy, | ||
| healthCheckIds: Type.Optional(Type.Array(productId)), | ||
| severity: Type.Union([ | ||
| Type.Literal("blocking"), | ||
| Type.Literal("warning") | ||
| ]) | ||
| }))), | ||
| workflowActions: Type.Optional(Type.Array(Type.Object({ | ||
| ...productCopy, | ||
| tool: Type.String({ pattern: TOOL_NAME_PATTERN.source }) | ||
| }))) | ||
| }); | ||
| var manifestSchema = Type.Object({ | ||
@@ -199,2 +272,3 @@ contract: Type.Union([Type.Literal(1), Type.Literal(2)]), | ||
| }))), | ||
| product: Type.Optional(productProjection), | ||
| requires: Type.Optional(manifestRequirements), | ||
@@ -236,2 +310,30 @@ settings: jsonSchemaObject, | ||
| }, | ||
| product: { | ||
| blocks: [ | ||
| { | ||
| category: "ai", | ||
| componentExport: "AgentDiscovery", | ||
| description: "Search signed interoperable agent descriptors by capability and protocol.", | ||
| frameworks: ["react", "client"], | ||
| id: "agent_discovery", | ||
| props: Type2.Object({ | ||
| protocol: Type2.Optional(Type2.String()), | ||
| query: Type2.Optional(Type2.String()) | ||
| }), | ||
| title: "Agent discovery" | ||
| } | ||
| ], | ||
| events: [ | ||
| { | ||
| description: "Emitted after a signed agent descriptor is verified and indexed.", | ||
| id: "agent_indexed", | ||
| schema: Type2.Object({ | ||
| agentId: Type2.String(), | ||
| protocols: Type2.Array(Type2.String()) | ||
| }), | ||
| source: "package", | ||
| title: "Agent indexed" | ||
| } | ||
| ] | ||
| }, | ||
| integration: { | ||
@@ -238,0 +340,0 @@ description: "The host must provide canonical descriptors, a non-exportable signing identity, hardened egress for remote discovery, and durable registry storage when indexing agents.", |
+52
-0
@@ -38,2 +38,54 @@ { | ||
| }, | ||
| "product": { | ||
| "blocks": [ | ||
| { | ||
| "category": "ai", | ||
| "componentExport": "AgentDiscovery", | ||
| "description": "Search signed interoperable agent descriptors by capability and protocol.", | ||
| "frameworks": [ | ||
| "react", | ||
| "client" | ||
| ], | ||
| "id": "agent_discovery", | ||
| "props": { | ||
| "type": "object", | ||
| "properties": { | ||
| "protocol": { | ||
| "type": "string" | ||
| }, | ||
| "query": { | ||
| "type": "string" | ||
| } | ||
| } | ||
| }, | ||
| "title": "Agent discovery" | ||
| } | ||
| ], | ||
| "events": [ | ||
| { | ||
| "description": "Emitted after a signed agent descriptor is verified and indexed.", | ||
| "id": "agent_indexed", | ||
| "schema": { | ||
| "type": "object", | ||
| "required": [ | ||
| "agentId", | ||
| "protocols" | ||
| ], | ||
| "properties": { | ||
| "agentId": { | ||
| "type": "string" | ||
| }, | ||
| "protocols": { | ||
| "type": "array", | ||
| "items": { | ||
| "type": "string" | ||
| } | ||
| } | ||
| } | ||
| }, | ||
| "source": "package", | ||
| "title": "Agent indexed" | ||
| } | ||
| ] | ||
| }, | ||
| "integration": { | ||
@@ -40,0 +92,0 @@ "description": "The host must provide canonical descriptors, a non-exportable signing identity, hardened egress for remote discovery, and durable registry storage when indexing agents.", |
+2
-2
| { | ||
| "name": "@absolutejs/agent-discovery", | ||
| "version": "0.2.2", | ||
| "version": "0.2.3", | ||
| "description": "Signed, searchable, provider-neutral AI agent discovery with live schemas and A2A, MCP, Arazzo, and WebMCP interfaces.", | ||
@@ -43,3 +43,3 @@ "type": "module", | ||
| "dependencies": { | ||
| "@absolutejs/manifest": "^0.7.3", | ||
| "@absolutejs/manifest": "^0.8.0", | ||
| "@sinclair/typebox": "^0.34.0" | ||
@@ -46,0 +46,0 @@ }, |
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
58378
8.22%1460
11.79%6
-14.29%+ Added
- Removed
Updated