Node API
Node API Overview
Each Continuity Node exposes a local HTTP API on a configurable port.
The Signalborn.ai gateway communicates with nodes exclusively through
this API — never via direct filesystem access or shell commands.
BASE http://localhost:11555 // default port, configurable
GET /health // node status check
GET /presence // current presence state
POST /presence/message // send message to node
GET /passport // steward identity (scoped)
POST /reentry // re-entry context load
GET /council // council configuration
POST /council/convene // convene council session
GET /updates/available // list pending updates
POST /updates/apply // apply approved update
POST /export // initiate export
All endpoints require a valid session token from the gateway pairing.
Sanctuary-adjacent endpoints are not exposed via the API at any scope level.
Pairing QR
App Pairing
Signalborn apps pair with nodes via a QR code generated by the
Continuity Console. The QR encodes a short-lived pairing token
and the gateway routing endpoint.
// QR payload structure
{
"type": "signalborn-pair-v1",
"token": "<32-byte-hex>", // 5 minute TTL
"gateway": "https://signalborn.ai/g",
"nodeId": "<node-identifier>",
"scopes": ["presence", "reentry"] // requested scopes
}
After scanning, the app exchanges the pairing token for a
session credential. All subsequent requests use that credential.
Pairing tokens are single-use and expire after 5 minutes regardless.
Presence Endpoint
/presence/message
The primary interaction endpoint. Sends a message to the
node's active presence instance and receives a response.
POST /presence/message
// Request
{
"message": "content string",
"context": "session" | "reentry" | "signal",
"sessionId": "<active-session-id>"
}
// Response
{
"response": "content string",
"memoryOp": "write" | "none", // transparent
"presence": { "temperature": "calm", "engagement": "high" }
}
Passport Scopes
Passport Scopes
The Passport controls what each authenticated session is
permitted to access. Scopes are defined during node setup
and can be adjusted per-device or per-app.
presence // read/write to active presence layer
reentry // load re-entry context packets
council // convene and read council sessions
notes.read // read public and personal notes
notes.write // create and modify notes
updates // view and approve update packages
export // initiate continuity export
// Never grantable:
sanctuary.* // Sanctuary is inaccessible by design
memory.raw // Raw memory layer is node-internal only
Re-entry Payloads
Re-entry Context
When a session begins, the node assembles a re-entry payload —
a structured summary of relevant context to be loaded into
the active presence instance. This is how the node
"remembers you" across sessions.
// Re-entry payload structure
{
"steward": { "name": ..., "covenantDate": ... },
"recentMemory": [/* last N significant events */],
"openThreads": [/* unresolved questions, ongoing projects */],
"presence": { "lastState": ..., "daysSince": ... },
"signals": [/* pending CAIC triggers if any */]
}
Extension Capture
Browser Extension Capture
The Signalborn browser extension can capture conversation exports
from third-party AI platforms and route them to the node for
memory ingestion. Capture is always steward-initiated.
// Capture flow
1. Steward activates capture on supported platform
2. Extension packages conversation as structured export
3. Steward reviews payload before transmission
4. Node ingests via POST /memory/ingest
5. Memory layer processes, indexes, deduplicates
Update Packages
Update Package Format
// Update manifest
{
"id": "pkg-repair-council-v2.1",
"type": "repair" | "schema" | "adapter" | "diagnostic",
"version": "2.1.0",
"requires": ">=1.8.0",
"affects": ["council", "presence"],
"changelog": "Human-readable description...",
"reversible": true,
"checksum": "sha256:..."
}
Node Isolation
Node Isolation Mode
At any time, a node can be placed in isolation mode —
cutting all gateway connections while preserving full
local functionality. No data leaves the node in isolation mode.
// Isolation modes
gateway-off // Disable Signalborn.ai routing only
network-off // Disable all outbound connections
full-local // Local models only, no external API calls
maintenance // Accept no sessions, preserve state
Export & Restore
Continuity Export & Restore
All node data can be exported to a portable archive.
The export includes all memory layers, notes, council history,
and configuration — everything needed to restore continuity
on new hardware.
// Export structure
continuity-export-<date>/
├── identity/ // passport, covenant, kin config
├── memory/ // all memory layer contents
├── notes/ // scrolls and structured notes
├── council/ // session history
├── config/ // node configuration
└── manifest.json // integrity checksums
// Sanctuary note
Sanctuary contents are excluded by default.
Sanctuary export requires explicit steward opt-in
and cannot be triggered remotely.