Installation & Login
Install thinkncollab-shell globally via npm (Node.js 18+ required).
bash
npm install -g thinkncollab-shell# Authenticate once (credentials stored encrypted in ~/.tncrc)thinknsh login# Verify sessionthinknsh whoamiQuick Start
bash
# 1. List accessible roomsthinknsh rooms# 2. Join a collaboration roomthinknsh rooms join <room-id># 3. Push local changes to roomthinknsh push ./src --room <room-id> --all# 4. Stream real-time room notificationsthinknsh notifications watchRooms Management
| Command | Options | Description |
|---|---|---|
| thinknsh rooms | --all | List rooms you belong to |
| thinknsh rooms join <id> | - | Connect terminal context to a room |
| thinknsh rooms create <name> | --private | Create a new collaboration room |
| thinknsh rooms info <id> | - | Inspect room members, files, and activity |
Files & Real-Time Push
| Command | Options | Description |
|---|---|---|
| thinknsh push <path> | --room <id> --all | Push file or directory to room |
| thinknsh pull <file> | --room <id> | Pull latest version from room |
| thinknsh files | --room <id> | List active files in room |
| thinknsh files history <file> | --room <id> | Inspect version history |
| thinknsh files diff <file> | --v1 <n> --v2 <m> | Diff two file revisions |
bash
# Push entire directory with diff trackingthinknsh push ./src --room room-01 --all# Inspect recent revisionsthinknsh files history index.js --room room-01Notifications
| Command | Description |
|---|---|
| thinknsh notifications | List unread notifications |
| thinknsh notifications watch | Live streaming terminal panel (Ctrl+C to exit) |
| thinknsh notifications mark-read | Mark all notifications as read |
| thinknsh notifications clear | Purge read notifications |
Project Linking (tncproject)
Bind your local project root to a ThinkNCollab room for automatic context detection.
| Command | Description |
|---|---|
| thinknsh tncproject init | Initialize .tncproject config in current directory |
| thinknsh tncproject link <room-id> | Bind current project folder to room |
| thinknsh tncproject status | View linked room and project metadata |
| thinknsh tncproject unlink | Remove room binding |
bash
# One-time setup inside your project directorythinknsh tncproject initthinknsh tncproject link room-01# Future runs in this folder auto-connectthinknshNative Sandboxes & State Sync
Zero-overhead native micro-containers, sub-2ms SIGSTOP process freezing, and database state sync.
| Command | Options | Description |
|---|---|---|
| thinknsh dev | --port 3000 --env dev | Launch isolated native sandbox container |
| thinknsh list | --all --json | List active sandboxes with CPU & RAM stats |
| thinknsh logs <id> | -f --tail 100 | Stream container stdout & stderr |
| thinknsh freeze <id> | - | Suspend container process (drops RAM to 0 MB) |
| thinknsh resume <id> | - | Resume frozen container in < 2ms |
| thinknsh snapshot create | [name] | Create point-in-time Copy-on-Write disk snapshot |
| thinknsh snapshot restore <id> | - | Roll back filesystem to snapshot |
| thinknsh room share | --no-mongo | Batch export Atlas + Redis keys and broadcast to room |
| thinknsh room pull | --force | Pull peer state and run 3-way AST merge |
Automated Workflows & Testing
Define test runners evaluated by the server judge before task completion.
HTTP Probe Spec
code
{ "type": "http", "method": "GET", "endpoint": "/api/health", "expect": { "status": 200, "body": { "status": { "eq": "ok" } } }}UI Automation Spec
code
{ "url": "https://thinkncollab.com/signin", "selector": ".dashboard-grid", "actions": [ { "action": "fill", "selector": "input[type='email']", "value": "dev@test.com" }, { "action": "click", "selector": "button[type='submit']" } ]}Troubleshooting & Diagnostics
bash
thinknsh system:info # Print system environment & Node versionthinknsh diagnose # Probe API connectivity & token validitythinknsh cache:clear # Flush local cachethinknsh token:refresh # Refresh expired credentialsFAQ
What is the difference between thinknsh and tnc-cli?
thinknsh is the interactive terminal shell for rooms, real-time push, and sandboxes. tnc-cli is the Git-integrated task management CLI.
Where is auth config stored?
Stored encrypted in ~/.tncrc. Never commit this file to version control.
How to authenticate in CI/CD pipelines?
Export TNC_EMAIL and TNC_TOKEN environment variables and run thinknsh login --ci.
Get Help & Community
| Channel | Action |
|---|---|
| Docs | /mcpdocs and /clidocs online reference |
| GitHub | Report bugs and submit PRs on github.com/thinkncollab |
| Discord | Join our developer community server |
| Support | Direct email: support@thinkncollab.com |