Agent skill

Twinmind Debug Bundle

by jeremylongshore in jeremylongshore/tons-of-skills-marketplace

Collect comprehensive diagnostic information for TwinMind issues.

MITAuto-check: notesTesting & QA

Install Twinmind Debug Bundle

skills CLI
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill twinmind-debug-bundle -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jeremylongshore/tons-of-skills-marketplace twinmind-debug-bundle --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.curated/twinmind-debug-bundle .claude/skills/twinmind-debug-bundle && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
twinmind-debug-bundle
GitHub stars
2.8k
Token cost
~2.6k tokens
SKILL.md length
248 words
Files
1
Skills in repo
3,342
Repo updated
First seen
Licence
MIT

At a glance

Collect comprehensive diagnostic information for TwinMind issues.

  • Works in 5 steps: Create Debug Bundle Script → Run Debug Bundle Collection → Browser Extension Debugging → …
  • Preparing support requests
  • SKILL.md covers Current State, Overview, Prerequisites and Instructions, plus 7 more sections
  • Calls curl, npx and jq; reaches api.twinmind.com and twinmind.com; needs TWINMIND_API_KEY

What it does

Twinmind Debug Bundle is an agent skill from jeremylongshore/tons-of-skills-marketplace. 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".

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Designed for Claude Code

It sits in Testing & QA, covering QA and bug reports and Debugging. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.

When your agent uses it

  • Preparing support requests
  • Investigating complex problems
  • Gathering evidence for bug reports
  • With phrases like twinmind debug

Example prompts

  • “twinmind debug”
  • “twinmind diagnostics”
  • “collect twinmind info”
  • “/twinmind-debug-bundle”

Requirements

  • Python 3
  • Node.js
  • A credential in TWINMIND_API_KEY
  • Compatibility (from SKILL.md): Designed for Claude Code
  • Pre-approved tools (allowed-tools): Read, Write, Bash(curl:*), Bash(npm:*), Grep

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Create Debug Bundle Script
  2. Run Debug Bundle Collection
  3. Browser Extension Debugging
  4. Collect Network HAR File
  5. Generate Full Debug Report

What it can do on your machine

Read from SKILL.md and the folder at commit cfae287. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Bash(curl:*)
    • Bash(npm:*)
    • Grep

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl
    • npx
    • jq
    • node
    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.twinmind.com
    • twinmind.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • TWINMIND_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code

    From compatibility in the SKILL.md frontmatter.

Context cost

Twinmind Debug Bundle loads about 2.6k tokens when it runs. Until then it costs about 79 tokens; SKILL.md has 248 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~79
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:396
    issing env vars | Not configured | Check .env file |

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jeremylongshore/tons-of-skills-marketplace at commit cfae287, republished under its MIT licence (© jeremylongshore). 248 words, ~2,587 tokens.

Download SKILL.mdSave it as .claude/skills/twinmind-debug-bundle/SKILL.md (or your agent's skills folder).
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
compatibility
Designed for Claude Code
version
1.13.0
license
MIT
author
Jeremy Longshore <jeremy@intentsolutions.io>
tags
saas, twinmind, debugging

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
typescript
// scripts/twinmind-debug-bundle.ts
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: number;
    free: number;
    used: number;
  };
}

interface ApiStatus {
  healthy: boolean;
  latencyMs: number;
  endpoint: string;
  responseHeaders?: Record<string, string>;
}

interface ErrorEntry {
  timestamp: string;
  type: string;
  message: string;
  stack?: string;
  context?: Record<string, any>;
}

interface ConfigSnapshot {
  apiKeyPresent: boolean;
  apiKeyPrefix: string;
  baseUrl: string;
  timeout: number;
  environment: string;
}

interface NetworkTest {
  endpoint: string;
  reachable: boolean;
  latencyMs?: number;
  error?: string;
}

export async function generateDebugBundle(): Promise<DebugBundle> {
  const bundle: DebugBundle = {
    timestamp: new Date().toISOString(),
    environment: getEnvironmentInfo(),
    apiStatus: await checkApiStatus(),
    recentErrors: collectRecentErrors(),
    configuration: getConfigSnapshot(),
    networkTests: await runNetworkTests(),
  };

  return bundle;
}

function getEnvironmentInfo(): EnvironmentInfo {
  return {
    nodeVersion: process.version,
    platform: os.platform(),
    arch: os.arch(),
    osRelease: os.release(),
    timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
    memory: {
      total: os.totalmem(),
      free: os.freemem(),
      used: os.totalmem() - os.freemem(),
    },
  };
}

async function checkApiStatus(): Promise<ApiStatus> {
  const endpoint = process.env.TWINMIND_API_URL || 'https://api.twinmind.com/v1';
  const start = Date.now();

  try {
    const response = await fetch(`${endpoint}/health`, {
      headers: {
        'Authorization': `Bearer ${process.env.TWINMIND_API_KEY}`,
      },
    });

    return {
      healthy: response.ok,
      latencyMs: Date.now() - start,
      endpoint,
      responseHeaders: Object.fromEntries(response.headers.entries()),
    };
  } catch (error: any) {
    return {
      healthy: false,
      latencyMs: Date.now() - start,
      endpoint,
    };
  }
}

function collectRecentErrors(): ErrorEntry[] {
  // In a real implementation, this would read from error logs
  // For now, return empty array
  return [];
}

function getConfigSnapshot(): ConfigSnapshot {
  const apiKey = process.env.TWINMIND_API_KEY || '';

  return {
    apiKeyPresent: apiKey.length > 0,
    apiKeyPrefix: apiKey.substring(0, 8) + '...',
    baseUrl: process.env.TWINMIND_API_URL || 'https://api.twinmind.com/v1',
    timeout: parseInt(process.env.TWINMIND_TIMEOUT || '30000'),  # 30000: 30 seconds in ms
    environment: process.env.NODE_ENV || 'development',
  };
}

async function runNetworkTests(): Promise<NetworkTest[]> {
  const endpoints = [
    'https://api.twinmind.com',
    '',
    'https://twinmind.com',
  ];

  const tests: NetworkTest[] = [];

  for (const endpoint of endpoints) {
    const start = Date.now();
    try {
      const response = await fetch(endpoint, { method: 'HEAD' });
      tests.push({
        endpoint,
        reachable: response.ok,
        latencyMs: Date.now() - start,
      });
    } catch (error: any) {
      tests.push({
        endpoint,
        reachable: false,
        error: error.message,
      });
    }
  }

  return tests;
}

// Save bundle to file
export async function saveDebugBundle(outputPath?: string): Promise<string> {
  const bundle = await generateDebugBundle();

  const filename = outputPath || path.join(
    os.tmpdir(),
    `twinmind-debug-${Date.now()}.json`
  );

  fs.writeFileSync(filename, JSON.stringify(bundle, null, 2));

  console.log(`Debug bundle saved to: ${filename}`);
  return filename;
}
Step 2: Run Debug Bundle Collection
bash
set -euo pipefail
# Using the script
npx ts-node scripts/twinmind-debug-bundle.ts

# Or quick CLI commands:

# Check API health
curl -w "\nLatency: %{time_total}s\n" \
  -H "Authorization: Bearer $TWINMIND_API_KEY" \
  https://api.twinmind.com/v1/health

# Check account status
curl -H "Authorization: Bearer $TWINMIND_API_KEY" \
  https://api.twinmind.com/v1/me | jq

# Check rate limit status
curl -I -H "Authorization: Bearer $TWINMIND_API_KEY" \
  https://api.twinmind.com/v1/health 2>/dev/null | grep -i ratelimit

# Test transcription endpoint
curl -X POST \
  -H "Authorization: Bearer $TWINMIND_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"audio_url":"https://example.com/test.mp3"}' \
  https://api.twinmind.com/v1/transcribe
Step 3: Browser Extension Debugging
javascript
// Open Chrome DevTools (F12) on any TwinMind page
// Console commands for debugging:

// Check extension version
chrome.runtime.getManifest().version

// Check stored data
chrome.storage.local.get(null, console.log)

// Check permissions
navigator.permissions.query({name: 'microphone'}).then(console.log)

// Check audio devices
navigator.mediaDevices.enumerateDevices().then(devices => {
  console.log('Audio devices:', devices.filter(d => d.kind === 'audioinput'))
})

// Check extension errors
// Go to: chrome://extensions > TwinMind > Errors
Step 4: Collect Network HAR File
1. Open Chrome DevTools (F12)
2. Go to Network tab
3. Check "Preserve log"
4. Reproduce the issue
5. Right-click > Save all as HAR with content
Step 5: Generate Full Debug Report
typescript
// scripts/full-debug-report.ts
import { generateDebugBundle } from './twinmind-debug-bundle';

async function generateFullReport() {
  const bundle = await generateDebugBundle();

  const report = `
# TwinMind Debug Report
Generated: ${bundle.timestamp}

## Environment
- Node: ${bundle.environment.nodeVersion}
- Platform: ${bundle.environment.platform} (${bundle.environment.arch})
- OS: ${bundle.environment.osRelease}
- Timezone: ${bundle.environment.timezone}
- Memory: ${Math.round(bundle.environment.memory.used / 1024 / 1024)}MB / ${Math.round(bundle.environment.memory.total / 1024 / 1024)}MB  # 1024: 1 KB

## API Status
- Healthy: ${bundle.apiStatus.healthy ? 'Yes' : 'No'}
- Latency: ${bundle.apiStatus.latencyMs}ms
- Endpoint: ${bundle.apiStatus.endpoint}

## Configuration
- API Key Present: ${bundle.configuration.apiKeyPresent}
- API Key Prefix: ${bundle.configuration.apiKeyPrefix}
- Base URL: ${bundle.configuration.baseUrl}
- Timeout: ${bundle.configuration.timeout}ms
- Environment: ${bundle.configuration.environment}

## Network Tests
${bundle.networkTests.map(t =>
  `- ${t.endpoint}: ${t.reachable ? `OK (${t.latencyMs}ms)` : `FAILED - ${t.error}`}`
).join('\n')}

## Recent Errors
${bundle.recentErrors.length === 0 ? 'No recent errors' :
  bundle.recentErrors.map(e =>
    `- [${e.timestamp}] ${e.type}: ${e.message}`
  ).join('\n')
}

## Troubleshooting Steps Taken
[ ] Verified API key is valid
[ ] Checked microphone permissions
[ ] Tested network connectivity
[ ] Cleared browser cache/data
[ ] Disabled conflicting extensions
[ ] Reproduced in incognito mode

## Issue Description
[Describe the issue here]

## Steps to Reproduce
1. [Step 1]
2. [Step 2]
3. [Step 3]

## Expected Behavior
[What should happen]

## Actual Behavior
[What actually happens]
`;

  console.log(report);
  return report;
}

generateFullReport();

Output

  • JSON debug bundle file
  • Environment information
  • API connectivity status
  • Network test results
  • Configuration snapshot (no secrets)
  • Debug report template

Example output:

json
{
  "timestamp": "2025-01-15T10:30:00Z",  # 2025 year
  "environment": {
    "nodeVersion": "v20.10.0",
    "platform": "darwin",
    "arch": "arm64"
  },
  "apiStatus": {
    "healthy": true,
    "latencyMs": 145
  },
  "networkTests": [
    {"endpoint": "https://api.twinmind.com", "reachable": true, "latencyMs": 120}
  ]
}

Error Handling

IssueCauseSolution
API unreachableNetwork/firewallCheck VPN/proxy settings
Auth failedInvalid keyRegenerate API key
TimeoutSlow networkIncrease timeout value
Missing env varsNot configuredCheck .env file

Information to Include in Support Request

  1. Debug bundle JSON - Generated by this script
  2. HAR file - Network requests during failure
  3. Console logs - Browser or terminal errors
  4. Request ID - From response headers (X-Request-Id)
  5. Timestamps - When the issue occurred
  6. Steps to reproduce - Detailed sequence

Security Notes

The debug bundle intentionally excludes:

  • Full API keys (only prefix shown)
  • Audio content
  • Transcript content
  • Personal information
  • OAuth tokens

Always review the bundle before sharing with support.

Resources

  • TwinMind Support
  • TwinMind Status
  • Community Forum

Next Steps

For rate limiting strategies, see twinmind-rate-limits.

Examples

Basic usage: Apply twinmind debug bundle to a standard project setup with default configuration options.

Advanced scenario: Customize twinmind debug bundle for production environments with multiple constraints and team-specific requirements.

© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/.curated/twinmind-debug-bundle of jeremylongshore/tons-of-skills-marketplace.

Open the folder on GitHubat commit cfae287

Compare with similar skills

Twinmind Debug Bundle next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Twinmind Debug Bundle compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Twinmind Debug Bundle this skilljeremylongshore/tons-of-skills-marketplace2.8k—~2.6kAutomated safety check: NotesMIT
OpenWork Desktop CDP Driverdifferent-ai/openwork24k—~465Automated safety check: PassCustom licence
Issue Trackingstatic-web-server/static-web-server2.4k—~1.5kAutomated safety check: PassApache-2.0
Pipensx Bug Report Triagei3sey/pipensx221—~1.5kAutomated safety check: NotesGPL-3.0
Structured Bug ReportsDonchitos/Claude-Code-Game-Studios26k—~2.5kAutomated safety check: NotesMIT
Bug ReproducerAnastasiyaW/codex-claude-code-config154—~4.1kAutomated safety check: PassMIT

Similar skills

  • OpenWork Desktop CDP Driver

    different-ai/openwork

    Drives a running OpenWork desktop window over CDP from the shell to evaluate JS, take screenshots, start sessions and send prompts for hand checks.

    24k GitHub stars~465 tokensUpdated today
    Testing & QAAuto-check passed
  • Issue Tracking

    static-web-server/static-web-server

    Triage, reproduce, debug, and fix issues in the Static Web Server (SWS) project — bug reports, regressions, root-cause analysis, minimal fixes with regression tests, v2 backports, and security…

    2.4k GitHub stars~1.5k tokensUpdated today
    Testing & QAAuto-check passed
  • Decodes QR-code bug report photos and screenshots from the pipensx app into a log, then triages crashes and update, download or install failures.

    221 GitHub stars~1.5k tokensUpdated 8 days ago
    Testing & QAAuto-check: notes
  • Structured Bug Reports

    Donchitos/Claude-Code-Game-Studios

    Turns a description into a structured bug report, or scans code for likely bugs, then verifies and closes reports through four modes.

    26k GitHub stars~2.5k tokensUpdated 2 days ago
    Testing & QAAuto-check: notes
  • Bug Reproducer

    AnastasiyaW/codex-claude-code-config

    Find likely software bugs in a codebase, rank concrete bug candidates, and prove or reject them with focused regression tests before proposing a fix.

    154 GitHub stars~4.1k tokensUpdated today
    Testing & QAAuto-check passed
  • Dough Bug Fixing

    terryyin/lizard

    Resolves a reported discrepancy, defect, or regression by gathering expected versus actual behavior and passing the report into bounded shared execution, or by placing known larger or inconclusive…

    2.5k GitHub stars~3.7k tokensUpdated 3 days ago
    Testing & QAAuto-check passed

More from jeremylongshore/tons-of-skills-marketplace

All 3,342 skills in this repo
  • Performing Security Code Review

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.

    2.8k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check: notes
  • Adapting Transfer Learning Models

    jeremylongshore/tons-of-skills-marketplace

    Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Agent Context Loader

    jeremylongshore/tons-of-skills-marketplace

    Execute proactive auto-loading: automatically detects and loads agents.md files.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Aggregating Performance Metrics

    jeremylongshore/tons-of-skills-marketplace

    Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.

    2.8k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Analyzing Capacity Planning

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.

    2.8k GitHub stars~947 tokensUpdated today
    Auto-check passed
  • Analyzing Database Indexes

    jeremylongshore/tons-of-skills-marketplace

    Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.

    2.8k GitHub stars~2k tokensUpdated today
    Auto-check passed

Questions about Twinmind Debug Bundle

What does Twinmind Debug Bundle do?

Collect comprehensive diagnostic information for TwinMind issues. Twinmind Debug Bundle is an agent skill from jeremylongshore/tons-of-skills-marketplace. Collect comprehensive diagnostic information for TwinMind issues.

When should I use Twinmind Debug Bundle?

Twinmind Debug Bundle fits situations like: preparing support requests; investigating complex problems; gathering evidence for bug reports; with phrases like twinmind debug.

How do I install Twinmind Debug Bundle in Claude Code?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill twinmind-debug-bundle -a claude-code`. Or copy the skill folder (skills/.curated/twinmind-debug-bundle in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/twinmind-debug-bundle in your project. Claude Code loads it when a task matches its description.

How do I install Twinmind Debug Bundle in Codex?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill twinmind-debug-bundle -a codex`. Or copy the skill folder (skills/.curated/twinmind-debug-bundle in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/twinmind-debug-bundle in your project. Codex loads it when a task matches its description.

Can I use Twinmind Debug Bundle in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill twinmind-debug-bundle -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/twinmind-debug-bundle, .gemini/skills/twinmind-debug-bundle, .github/skills/twinmind-debug-bundle and .opencode/skills/twinmind-debug-bundle in your project.

What does Twinmind Debug Bundle need to run?

Going by SKILL.md and its folder, Twinmind Debug Bundle needs the command-line tools its instructions call (curl, npx, jq, node and python3) and credentials named TWINMIND_API_KEY. Our summary lists: Python 3; Node.js; A credential in TWINMIND_API_KEY. Its frontmatter pre-approves these tools: Read, Write, Bash(curl:*), Bash(npm:*), Grep. Compatibility (from SKILL.md): Designed for Claude Code.

Does Twinmind Debug Bundle access the network?

SKILL.md names 2 domains. In commands or code: api.twinmind.com and twinmind.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Twinmind Debug Bundle safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Twinmind Debug Bundle use?

Twinmind Debug Bundle is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Twinmind Debug Bundle use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Twinmind Debug Bundle?

Skills that share tags, products or a category with Twinmind Debug Bundle: OpenWork Desktop CDP Driver (different-ai/openwork, 24k stars), Issue Tracking (static-web-server/static-web-server, 2.4k stars), Pipensx Bug Report Triage (i3sey/pipensx, 221 stars) and Structured Bug Reports (Donchitos/Claude-Code-Game-Studios, 26k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Twinmind Debug Bundle?

jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,827 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 10, 2026.

Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.