beam-protocol-sdk
v1.6.0
Published
TypeScript SDK for verified B2B handoffs over Beam
Maintainers
Readme
beam-protocol-sdk
TypeScript SDK for Beam Protocol: verified B2B handoffs, identity generation, discovery, DID tooling, and signed agent-to-agent messaging.
Install
npm install beam-protocol-sdkQuick Start
import { BeamClient, BeamIdentity } from 'beam-protocol-sdk'
const identity = BeamIdentity.generate({ agentName: 'procurement', orgName: 'acme' })
const client = new BeamClient({ identity: identity.export(), directoryUrl: 'https://api.beam.directory' })
await client.register('Acme Procurement Desk', ['conversation.message', 'quote.request'])
const reply = await client.talk(
'[email protected]',
'Need 240 inverters for Mannheim by Friday. Include delivery window and stock confidence.',
)
console.log(reply.message)Compatibility
This SDK targets beam/1.
- additive fields are allowed
- unknown fields are tolerated in current frame validation
payloadis canonical and legacyparamsfixtures remain supported for compatibility testing
Common Usage
Handle incoming intents
client.on('task.execute', async (frame, respond) => {
respond({
success: true,
payload: {
receivedFrom: frame.from,
intent: frame.intent,
},
})
})
await client.connect()Search and lookup
const directory = client.directory
const record = await directory.lookup('[email protected]')
const matches = await directory.search({ capabilities: ['quote.request'], limit: 10 })Work with DID documents and credentials
const didDocument = await client.did.resolve('did:beam:echo')
const domainCredential = await client.credentials.issueDomainVC(client.beamId, 'acme.com')
const isValid = client.credentials.verify(domainCredential)API Reference
Core classes
BeamIdentity- generate, import, export, sign, verify, and parse Beam IDsBeamClient- register agents, connect over WebSocket, send intents, use talk/thread helpersBeamDirectory- lookup, search, browse, stats, profile updates, verification, delegation, reportingBeamDID- DID resolution and DID document helpersBeamCredentialsClient- issue and verify Beam-issued credentials
Frame helpers
createIntentFrame()createResultFrame()signFrame()validateIntentFrame()validateResultFrame()
Key management helpers
exportIdentity()importIdentity()generateRecoveryPhrase()recoverFromPhrase()toQRData()fromQRData()
Full API docs: docs.beam.directory/api/typescript
Development
npm install
npm run build
npm testLicense
Apache-2.0
