torque-node
v0.1.7
Published
Unified Torque Platform SDK for server integrators — wallets, READ, DECIDE (≤6-line heroes)
Maintainers
Readme
torque-node
Unified server-side Torque Platform SDK — wallets, READ (Intelligence), DECIDE (Assistant).
Uses the same business API key as Checkout (sk_live_…).
Current version: 0.1.7 — three ≤6-line heroes: wallets · intelligence · (see torque-checkout for payments)
Install
yarn add torque-node@^0.1.7Hero paths (≤6 lines each)
Wallets — provision / get unified balance
import { createTorqueFromEnv } from 'torque-node'
const torque = createTorqueFromEnv()
const wallet = await torque.wallets.ensure({
externalUserId: 'player_48291',
email: '[email protected]',
})
// wallet.addresses · wallet.portfolioSummary.navUsdFetch again: await torque.wallets.get({ externalUserId: 'player_48291' })
Intelligence — feed / datasets / rates
import { createTorqueFromEnv } from 'torque-node'
const torque = createTorqueFromEnv()
const feed = await torque.read.intelligence.getFeed({
walletAddress: '0x…',
})Also: getDataset('events'), getYieldOpportunities({ walletAddress }), getLendingOpportunities({ tokenFilter: 'USD' })
Payments / checkout
Use torque-checkout — checkout({ productId, email }) is ≤6 lines.
Quick start (all lanes)
import { createTorqueFromEnv } from 'torque-node'
const torque = createTorqueFromEnv()
const wallet = await torque.wallets.ensure({
externalUserId: 'player_48291',
email: '[email protected]',
})
const feed = await torque.read.intelligence.getFeed({
walletAddress: wallet.addresses.evm,
})
const reply = await torque.decide.assistant.chat({
messages: [{ role: 'user', content: 'Summarize my portfolio' }],
context: { walletAddress: wallet.addresses.evm, chainId: 8453 },
})
const caps = await torque.capabilities()
torque.assertManifestCompatibility(caps.manifestVersion)Flat accessors torque.intelligence and torque.assistant remain for compatibility.
Configuration
import { createTorque } from 'torque-node'
const torque = createTorque({
apiKey: process.env.TORQUE_API_KEY!,
baseUrl: 'https://app.torque.fi',
intelligenceTimeout: 30_000,
assistantTimeout: 180_000,
cooldownRetries: 1,
})Environment variables: TORQUE_API_KEY, optional TORQUE_BASE_URL.
Subpath exports
import { TorqueIntelligenceClient } from 'torque-node/intelligence'
import { createTorqueAssistant } from 'torque-node/assistant'
import { TorqueWalletsClient } from 'torque-node/wallets'Namespaces
| Namespace | Methods |
|-----------|---------|
| torque.wallets | ensure, get |
| torque.read.intelligence | feed, getFeed, getTradeAngles, getDataset, getView, getYieldOpportunities, getLendingOpportunities, getCapabilities |
| torque.decide.assistant | chat, chatStream |
| torque | capabilities(), assertManifestCompatibility() |
Docs
License
MIT
