pipe-protocol
Version:
A protocol for large scale Interplanetary Intertool Agent Context
26 lines • 1.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.PipeBundleSchema = exports.PipeRecordSchema = void 0;
const zod_1 = require("zod");
const AccessPolicySchema = zod_1.z.object({
hiddenFromLLM: zod_1.z.boolean().optional(),
allowedTools: zod_1.z.array(zod_1.z.string()).optional(),
allowedUsers: zod_1.z.array(zod_1.z.string()).optional()
});
exports.PipeRecordSchema = zod_1.z.object({
cid: zod_1.z.string().nullable().optional(),
content: zod_1.z.any().nullable().optional(),
type: zod_1.z.enum(['data', 'schema']),
scope: zod_1.z.enum(['private', 'public', 'machine', 'user']),
pinned: zod_1.z.boolean().optional(),
accessPolicy: AccessPolicySchema.optional(),
metadata: zod_1.z.record(zod_1.z.any()).optional(),
timestamp: zod_1.z.string().optional()
});
exports.PipeBundleSchema = zod_1.z.object({
schemaRecord: exports.PipeRecordSchema,
dataRecord: exports.PipeRecordSchema,
combinedScope: zod_1.z.enum(['private', 'public', 'machine', 'user']),
timestamp: zod_1.z.string().optional()
});
//# sourceMappingURL=schema.js.map