JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 10
  • Score
    100M100P100Q50341F
  • License MIT

TypeScript client for Brain Protocol — zero deps, works in Node/Deno/Bun/browser

Package Exports

  • @brain-protocol/sdk

Readme

@brain-protocol/sdk

TypeScript client for Brain Protocol — zero dependencies, works in Node/Deno/Bun/browser.

Install

npm install @brain-protocol/sdk

Quick Start

import { BrainClient } from "@brain-protocol/sdk";

const brain = new BrainClient({
  baseUrl: "https://brain.api.vauban.tech",
  apiKey: "sk-...",
});

const entry = await brain.knowledge.create({ content: "Hello world" });
const results = await brain.knowledge.query({ q: "hello" });
const graph = await brain.graph.traverse(entry.id);

API Reference

BrainClient

Method Description
new BrainClient(options) Create client with baseUrl, apiKey?, jwtToken?
client.ping() Health check, returns boolean
client.stats() Get store statistics
client.export() Export all entries (paginated)

Knowledge

Method Description
client.knowledge.create(input) Create an entry
client.knowledge.query(options?) Search entries (FTS + filters)
client.knowledge.get(id) Get entry by ID (returns null on 404)
client.knowledge.update(id, input) Update entry fields
client.knowledge.prove(id) Anchor to L3 blockchain
client.knowledge.verify(id) Verify L3 anchor
client.knowledge.versions(id) Get version chain

Edges

Method Description
client.edges.create(input) Create a relationship edge

Graph

Method Description
client.graph.traverse(entryId, depth?) Traverse from entry (default depth: 3)
client.graph.overview() Get full graph overview

Brains

Method Description
client.brains.create(input) Create a brain
client.brains.list() List your brains
client.brains.get(id) Get brain by ID
client.brains.update(id, input) Update brain settings
client.brains.addMember(brainId, address, role?) Add a member
client.brains.removeMember(brainId, accountId) Remove a member

Auth Options

// API key (recommended for server-side)
new BrainClient({ baseUrl: "...", apiKey: "sk-..." });

// JWT token (from wallet/OAuth auth)
new BrainClient({ baseUrl: "...", jwtToken: "eyJ..." });

// No auth (public/local instance)
new BrainClient({ baseUrl: "http://localhost:4000" });

Self-Hosted

const brain = new BrainClient({
  baseUrl: "http://localhost:4000",
});

License

MIT