Catalog npm
PACKAGE EXPLORERView in registry

@0xagentio/axl-local

npm

Local process harness for Gensyn AXL nodes in tests and examples.

axlgensynlocal-networkp2ptypescript
Versions collected1
Direct dependencies1From release 0.1.0
Last observed20 Oct, 22:39 UTC

README

Current package documentation

@0xagentio/axl-local

Local process harness for Gensyn AXL nodes.

This package is for development, tests, and examples. It generates AXL node config files, creates local ed25519 private keys, starts AXL node processes, waits for readiness, and returns TypeScript clients from @0xagentio/axl-client.

Install

npm install @0xagentio/axl-local @0xagentio/axl-client

You also need a compiled AXL node binary from the Gensyn AXL repository.

AXL node binary requirement

This package does not reimplement AXL in TypeScript. It manages the real Go AXL node process for you. Build the AXL node binary first:

git clone https://github.com/gensyn-ai/axl
cd axl
make build

Then point this package at the compiled binary, either through an environment variable used by examples/tests:

AGENTIO_AXL_NODE_BINARY=/path/to/axl/node

or directly in TypeScript:

const node = await startLocalAxlNode({
  name: 'alice',
  binaryPath: '/path/to/axl/node',
  workingDirectory: '.agentio/axl/alice',
  apiPort: 9101,
});

Single node

import { startLocalAxlNode } from '@0xagentio/axl-local';

const node = await startLocalAxlNode({
  name: 'alice',
  binaryPath: './vendor/axl/node',
  workingDirectory: '.agentio/axl/alice',
  apiPort: 9101,
  listen: ['tls://127.0.0.1:9201'],
});

console.log(node.peerId);
console.log(node.baseUrl);

await node.stop();

Multi-node network

import { startLocalAxlNetwork } from '@0xagentio/axl-local';

const network = await startLocalAxlNetwork({
  binaryPath: './vendor/axl/node',
  workingDirectory: '.agentio/axl',
  nodes: [
    {
      name: 'alice',
      apiPort: 9101,
      listen: ['tls://127.0.0.1:9201'],
    },
    {
      name: 'bob',
      apiPort: 9102,
      peers: ['tls://127.0.0.1:9201'],
    },
  ],
});

const alice = network.node('alice');
const bob = network.node('bob');

await alice.client.send({
  peerId: bob.peerId,
  body: new TextEncoder().encode('hello bob'),
});

await network.stop();

Config-only preparation

Use prepareLocalAxlNode when you want to inspect generated files before starting a process.

const prepared = await prepareLocalAxlNode({
  name: 'alice',
  binaryPath: './vendor/axl/node',
  workingDirectory: '.agentio/axl/alice',
  apiPort: 9101,
});

console.log(prepared.configPath);
console.log(prepared.privateKeyPath);

Test strategy

Normal package tests do not require the AXL binary. Real process tests should be gated with an explicit binary path so CI and contributors do not accidentally start network processes.

AXL receive identity note

For raw /recv messages, AXL returns X-From-Peer-Id as transport metadata derived from the remote network address. Treat it as the source id reported by the transport, not as a guaranteed application-level identity. If your protocol needs stable agent identity, include and verify that identity inside the message payload.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.1.0Registry latest28 Apr 20261

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
0xagentio/agentio

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 22:39 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:7714e3e738e44f3058dda953fa64ce5741d0ebd821f7edc02cddb2e59b38ea0c