| name | twinmind-debug-bundle |
| description | Collect comprehensive diagnostic information for TwinMind issues.
Use when preparing support requests, investigating complex problems,
or gathering evidence for bug reports.
Trigger with phrases like "twinmind debug", "twinmind diagnostics",
"collect twinmind info", "twinmind support bundle".
|
| allowed-tools | Read, Write, Bash(curl:*), Bash(npm:*), Grep |
| version | 1.13.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","twinmind","debugging"] |
| compatibility | Designed for Claude Code, also compatible with Codex and OpenClaw |
TwinMind Debug Bundle
Current State
!node --version 2>/dev/null || echo 'N/A'
!python3 --version 2>/dev/null || echo 'N/A'
!uname -a
Overview
Collect comprehensive diagnostic data to troubleshoot TwinMind issues.
Prerequisites
- TwinMind extension or API configured
- Access to browser developer tools
- Command-line access (for API debugging)
Instructions
Step 1: Create Debug Bundle Script
import * as fs from 'fs';
import * as os from 'os';
import * as path from 'path';
interface DebugBundle {
timestamp: string;
environment: EnvironmentInfo;
apiStatus: ApiStatus;
recentErrors: ErrorEntry[];
configuration: ConfigSnapshot;
networkTests: NetworkTest[];
}
interface EnvironmentInfo {
nodeVersion: string;
platform: string;
arch: string;
osRelease: string;
timezone: string;
memory: {
total: ;
: ;
: ;
};
}
{
: ;
: ;
: ;
?: <, >;
}
{
: ;
: ;
: ;
?: ;
?: <, >;
}
{
: ;
: ;
: ;
: ;
: ;
}
{
: ;
: ;
?: ;
?: ;
}
(): <> {
: = {
: ().(),
: (),
: (),
: (),
: (),
: (),
};
bundle;
}
(): {
{
: process.,
: os.(),
: os.(),
: os.(),
: .().().,
: {
: os.(),
: os.(),
: os.() - os.(),
},
};
}
(): <> {
endpoint = process.. || ;
start = .();
{
response = (, {
: {
: ,
},
});
{
: response.,
: .() - start,
endpoint,
: .(response..()),
};
} (: ) {
{
: ,
: .() - start,
endpoint,
};
}
}
(): [] {
[];
}
(): {
apiKey = process.. || ;
{
: apiKey. > ,
: apiKey.(, ) + ,
: process.. || ,
: (process.. || ), # : seconds ms
: process.. || ,
};
}
(): <[]> {
endpoints = [
,
,
,
];
: [] = [];
( endpoint endpoints) {
start = .();
{
response = (endpoint, { : });
tests.({
endpoint,
: response.,
: .() - start,
});
} (: ) {
tests.({
endpoint,
: ,
: error.,
});
}
}
tests;
}
(): <> {
bundle = ();
filename = outputPath || path.(
os.(),
);
fs.(filename, .(bundle, , ));
.();
filename;
}