Skip to content

Repository files navigation

SCC Open SDK

License: MIT

Node.js SDK for SCC (Secure Chat Client). Build bots and automation using the official native crypto backend — real E2E encryption, real delivery, no protocol reimplementation.

Tested against SCC v0.7.105.

import { Scc } from 'scc-opensdk';

const scc = await Scc.connect({ userData, username, password });
await scc.messages.dm('friend').send('hello');

Documentation

Guide Description
Getting Started Install, configure, send your first message
Architecture How the bridge works
API Reference Full Scc class documentation
Messaging DMs, groups, server channels
Servers & Roles Community servers, moderation, invites
Building Bots Event-driven bot patterns
Events Native event types and payloads
Session Protocol Low-level JSON-RPC bridge
Troubleshooting Common errors and fixes

Full docs index: docs/README.md


Install

git clone https://github.com/Daziusm/scc-opensdk.git
cd scc-opensdk
npm install

Requirements: Node.js 18+, SCC desktop app installed, registered account.


Quick examples

Send a DM:

SCC_USER=myuser SCC_PASS=mypass node examples/send-message.mjs friend "hello"

Create a server:

SCC_USER=myuser SCC_PASS=mypass node examples/server-demo.mjs

Echo bot:

SCC_USER=myuser SCC_PASS=mypass node examples/bot-echo.mjs

API at a glance

const scc = await Scc.connect({ userData, username, password });

// Messaging
await scc.messages.dm('user').send('hello');
await scc.messages.group('g1abc').send('group msg');

// Friends
await scc.friends.add('user');
const friends = await scc.friends.list();

// Servers
const server = await scc.servers.create('My Community');
await server.channels.openNamed('general').then(ch => ch.send('hi'));
await server.invites.create({ expiresIn: 3600 });
await server.moderation.kick('baduser');

// Events
scc.events.on('message', (msg) => console.log(msg.body));

How it works

Your bot → Scc SDK → session.cjs → scc-node.node → wss://direct.scc.is

The SDK loads scc-node.node from your SCC installation. Same crypto, same protocol, same relay — just without the Electron UI.

See Architecture for details.


Project structure

client/           Scc SDK (namespaced API)
tools/native-bridge/   session.cjs, cli.cjs
docs/             Documentation (you are here)
protocol/         API and protocol specifications
examples/         Runnable examples

Related


License

MIT — see LICENSE.

Not affiliated with SCC / Secure Chat Client. scc-node.node is not redistributed.

About

Node.js SDK for SCC (Secure Chat Client) - bots and automation via the official native crypto module

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages