[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6H9ZPXNTP8WENJS2GJGQC8H":3,"skill-same:01M6H9ZPXNTP8WENJS2GJGQC8H":59},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":29,"linkOnly":30,"markdownContent":31,"markdownBody":32,"frontMatter":33,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":14,"repositoryHtmlUrl":40,"repositoryHomepageUrl":6,"ownerHtmlUrl":41,"ownerBlogUrl":42,"ownerDescription":43,"updatedAt":44,"install":45,"resources":58},"01M6H9ZPXNTP8WENJS2GJGQC8H","javascript-cli",null,"Building CLI applications with Node.js, Inquirer, and Commander","NeuralBlitz\u002FMito","NeuralBlitz","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F79354388?v=4","01M6H8T2TFH477HRS0KTSTKR2E","David Riggs","01M6H8T2YQQDXPYM092P670Z21",0,"MIT","https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fjavascript-cli\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28],"cli","javascript","javascript cli","development","applications","js","node","commander","inquirer","with","2026-11-10 10:12:30",false,"---\nname: javascript-cli\ndescription: Building CLI applications with Node.js, Inquirer, and Commander\nlicense: MIT\nmetadata:\n  audience: javascript-developers\n  category: cli-development\n---\n\n# Skill: JavaScript\u002FNode.js CLI\n\n## What I do\nBuild command-line interface applications using Node.js and JavaScript\u002FTypeScript. Focus on Inquirer for interactive prompts, Commander for argument parsing, and Chalk for terminal styling.\n\n## When to use me\nWhen building Node.js CLI tools, automation scripts, scaffolding tools, or interactive command-line applications.\n\n## Core Packages\n\n| Package | Purpose |\n|---------|---------|\n| `@inquirer\u002Fprompts` | Interactive prompts |\n| `commander` | CLI argument parsing |\n| `chalk` | Terminal string styling |\n| `yargs` | CLI builder |\n| `oclif` | Enterprise CLI framework |\n| `picocolors` | Fast color library |\n\n## Installation\n```bash\nnpm install @inquirer\u002Fprompts commander chalk\n# or\npnpm add @inquirer\u002Fprompts commander chalk\n```\n\n## Inquirer Prompts\n\n### Modern @inquirer\u002Fprompts API\n```javascript\nimport { input, select, confirm, checkbox } from '@inquirer\u002Fprompts';\n\n\u002F\u002F Simple input\nconst name = await input({\n  message: \"What's your name?\",\n  default: \"Anonymous\"\n});\n\n\u002F\u002F Selection\nconst framework = await select({\n  message: \"Choose a framework:\",\n  choices: [\n    { name: \"React\", value: \"react\" },\n    { name: \"Vue\", value: \"vue\" },\n    { name: \"Svelte\", value: \"svelte\" }\n  ]\n});\n\n\u002F\u002F Confirmation\nconst proceed = await confirm({\n  message: \"Do you want to continue?\",\n  default: true\n});\n\n\u002F\u002F Multiple selection\nconst features = await checkbox({\n  message: \"Select features:\",\n  choices: [\"Auth\", \"Database\", \"Testing\", \"Deployment\"],\n  default: [\"Auth\", \"Testing\"]\n});\n```\n\n### Complete Example\n```javascript\nimport { input, select, confirm } from '@inquirer\u002Fprompts';\nimport { cyan, bold } from 'chalk';\n\nasync function createProject() {\n  console.log(bold.cyan('Project Creator'));\n  console.log('-------------------\\n');\n\n  const name = await input({\n    message: 'Project name:',\n    validate: (value) => \u002F^[a-z0-9-]+$\u002F.test(value) \n      ? true \n      : 'Use lowercase letters, numbers, and hyphens only'\n  });\n\n  const template = await select({\n    message: 'Choose a template:',\n    choices: [\n      { name: 'JavaScript', value: 'js' },\n      { name: 'TypeScript', value: 'ts' },\n      { name: 'Node.js API', value: 'api' }\n    ]\n  });\n\n  const useTesting = await confirm({\n    message: 'Include testing framework?',\n    default: true\n  });\n\n  console.log(`\\nCreating ${name} with ${template} template...`);\n  if (useTesting) {\n    console.log('Adding testing support...');\n  }\n  console.log(bold.green('Done!'));\n}\n\ncreateProject().catch(console.error);\n```\n\n### Legacy Inquirer.js API\n```javascript\nimport inquirer from 'inquirer';\n\nconst answers = await inquirer.prompt([\n  {\n    type: 'input',\n    name: 'name',\n    message: 'Project name:',\n    default: 'my-project'\n  },\n  {\n    type: 'list',\n    name: 'framework',\n    message: 'Choose framework:',\n    choices: ['React', 'Vue', 'Angular', 'Svelte']\n  },\n  {\n    type: 'confirm',\n    name: 'typescript',\n    message: 'Use TypeScript?',\n    default: true\n  },\n  {\n    type: 'checkbox',\n    name: 'features',\n    message: 'Select features:',\n    choices: ['Router', 'State Management', 'Testing', 'CSS Framework']\n  }\n]);\n```\n\n## Commander.js\n\n### Basic Usage\n```javascript\nimport { Command } from 'commander';\n\nconst program = new Command();\n\nprogram\n  .name('myapp')\n  .description('My awesome CLI application')\n  .version('1.0.0');\n\nprogram\n  .command('init')\n  .description('Initialize a new project')\n  .argument('\u003Cname>', 'Project name')\n  .option('-t, --template \u003Ctype>', 'Project template', 'default')\n  .action((name, options) => {\n    console.log(`Initializing ${name} with ${options.template} template`);\n  });\n\nprogram\n  .command('build')\n  .description('Build the project')\n  .option('-p, --prod', 'Production build')\n  .option('-w, --watch', 'Watch mode')\n  .action((options) => {\n    console.log('Building...', options);\n  });\n\nprogram.parse();\n```\n\n### Nested Subcommands\n```javascript\nimport { Command } from 'commander';\n\nconst program = new Command();\n\n\u002F\u002F config group\nprogram\n  .command('config')\n  .description('Configuration commands')\n  .addCommand(\n    new Command('set')\n      .argument('\u003Ckey>', 'Config key')\n      .argument('\u003Cvalue>', 'Config value')\n      .action((key, value) => {\n        console.log(`Setting ${key} = ${value}`);\n      })\n  )\n  .addCommand(\n    new Command('get')\n      .argument('\u003Ckey>', 'Config key')\n      .action((key) => {\n        console.log(`Getting ${key}`);\n      })\n  )\n  .addCommand(\n    new Command('list')\n      .action(() => {\n        console.log('Listing all config');\n      })\n  );\n\nprogram.parse();\n```\n\n### Options\n```javascript\nprogram\n  .command('deploy')\n  .option('-e, --env \u003Cenv>', 'Environment', 'production')\n  .option('-r, --replicas \u003Ccount>', 'Number of replicas', '1')\n  .option('--dry-run', 'Dry run mode')\n  .option('-v, --verbose', 'Verbose output')\n  .action((options) => {\n    console.log('Deploying to:', options.env);\n    console.log('Replicas:', options.replicas);\n    if (options.dryRun) console.log('DRY RUN MODE');\n    if (options.verbose) console.log('Verbose output enabled');\n  });\n```\n\n## Chalk Styling\n\n### Basic Usage\n```javascript\nimport chalk from 'chalk';\n\n\u002F\u002F Text styling\nconsole.log(chalk.red('Error message'));\nconsole.log(chalk.green('Success!'));\nconsole.log(chalk.yellow('Warning'));\nconsole.log(chalk.blue('Info'));\n\n\u002F\u002F Combinations\nconsole.log(chalk.bold.cyan('Title'));\nconsole.log(chalk.bgRed.white('Highlighted'));\nconsole.log(chalk.underline('Underlined'));\n\n\u002F\u002F Template literals\nconsole.log(`\n  ${chalk.green('✓')} Success: Operation completed\n  ${chalk.red('✗')} Error: Something went wrong\n  ${chalk.yellow('⚠')} Warning: Check configuration\n`);\n\n\u002F\u002F Custom themes\nconst theme = {\n  title: chalk.bold.blue,\n  subtitle: chalk.cyan,\n  success: chalk.green,\n  error: chalk.red,\n  warning: chalk.yellow\n};\n\nconsole.log(theme.title('My Application'));\nconsole.log(theme.subtitle('Version 1.0.0'));\n```\n\n### Dynamic Colors\n```javascript\n\u002F\u002F RGB\nconsole.log(chalk.rgb(255, 128, 0)('Orange text'));\n\n\u002F\u002F Hex\nconsole.log(chalk.hex('#FF8800')('Orange text'));\n\n\u002F\u002F Custom gradient\nconsole.log(chalk.hex('#FF0000')('Red') + \n            chalk.hex('#FFFF00')('Yellow') + \n            chalk.hex('#00FF00')('Green'));\n```\n\n## Complete CLI Example\n\n```javascript\n#!\u002Fusr\u002Fbin\u002Fenv node\nimport { Command } from 'commander';\nimport { input, select, confirm } from '@inquirer\u002Fprompts';\nimport chalk from 'chalk';\nimport fs from 'fs\u002Fpromises';\nimport path from 'path';\n\nconst program = new Command();\n\nprogram\n  .name('project-cli')\n  .description('Project scaffolding CLI')\n  .version('1.0.0');\n\n\u002F\u002F init command with prompts\nprogram\n  .command('init')\n  .description('Initialize a new project')\n  .action(async () => {\n    console.log(chalk.bold.cyan('\\n Project Creator \\n'));\n    \n    const projectName = await input({\n      message: 'Project name:',\n      validate: (v) => v.length > 0 || 'Name is required'\n    });\n\n    const template = await select({\n      message: 'Choose template:',\n      choices: [\n        { name: 'JavaScript (ESM)', value: 'js' },\n        { name: 'TypeScript', value: 'ts' },\n        { name: 'Node.js API', value: 'api' }\n      ]\n    });\n\n    const addTesting = await confirm({\n      message: 'Add testing?',\n      default: true\n    });\n\n    console.log(chalk.yellow('\\nCreating project...'));\n    \n    \u002F\u002F Create project structure\n    await fs.mkdir(projectName, { recursive: true });\n    \n    const pkg = {\n      name: projectName,\n      version: '0.1.0',\n      type: 'module',\n      scripts: {\n        test: addTesting ? 'node --test' : undefined\n      }\n    };\n\n    await fs.writeFile(\n      path.join(projectName, 'package.json'),\n      JSON.stringify(pkg, null, 2)\n    );\n\n    console.log(chalk.green(`\\n✓ Project ${projectName} created!`));\n  });\n\nprogram.parse();\n```\n\n## Testing\n\n### With Prompts Mocking\n```javascript\nimport { jest } from '@jest\u002Fglobals';\n\n\u002F\u002F Mock inquirer for testing\njest.mock('@inquirer\u002Fprompts', () => ({\n  input: jest.fn().mockResolvedValue('test-project'),\n  select: jest.fn().mockResolvedValue('ts'),\n  confirm: jest.fn().mockResolvedValue(true)\n}));\n\ntest('creates project with prompts', async () => {\n  await createProject();\n  expect(fs.mkdir).toHaveBeenCalledWith('test-project', expect.any(Object));\n});\n```\n\n## Shell Completion\n\n```bash\n# Bash\nmyapp completion bash > \u002Fetc\u002Fbash_completion.d\u002Fmyapp\n\n# Zsh\nmyapp completion zsh > ~\u002F.zsh\u002Fcompletions\u002F_myapp\n\n# Fish\nmyapp completion fish > ~\u002F.config\u002Ffish\u002Fcompletions\u002Fmyapp.fish\n```\n\n## Best Practices\n\n1. **Use ESM modules** (`\"type\": \"module\"`) for modern imports\n2. **Validate inputs** with Inquirer's `validate` option\n3. **Use Commander** for argument parsing, Inquirer for prompts\n4. **Color wisely** - respect `--no-color` flag\n5. **Handle errors gracefully** - clear error messages\n6. **Exit codes** - use `process.exit(1)` for errors\n7. **Shebang** for executable CLIs: `#!\u002Fusr\u002Fbin\u002Fenv node`\n8. **Bin field** in package.json for CLI entry point\n","# Skill: JavaScript\u002FNode.js CLI\n\n## What I do\nBuild command-line interface applications using Node.js and JavaScript\u002FTypeScript. Focus on Inquirer for interactive prompts, Commander for argument parsing, and Chalk for terminal styling.\n\n## When to use me\nWhen building Node.js CLI tools, automation scripts, scaffolding tools, or interactive command-line applications.\n\n## Core Packages\n\n| Package | Purpose |\n|---------|---------|\n| `@inquirer\u002Fprompts` | Interactive prompts |\n| `commander` | CLI argument parsing |\n| `chalk` | Terminal string styling |\n| `yargs` | CLI builder |\n| `oclif` | Enterprise CLI framework |\n| `picocolors` | Fast color library |\n\n## Installation\n```bash\nnpm install @inquirer\u002Fprompts commander chalk\n# or\npnpm add @inquirer\u002Fprompts commander chalk\n```\n\n## Inquirer Prompts\n\n### Modern @inquirer\u002Fprompts API\n```javascript\nimport { input, select, confirm, checkbox } from '@inquirer\u002Fprompts';\n\n\u002F\u002F Simple input\nconst name = await input({\n  message: \"What's your name?\",\n  default: \"Anonymous\"\n});\n\n\u002F\u002F Selection\nconst framework = await select({\n  message: \"Choose a framework:\",\n  choices: [\n    { name: \"React\", value: \"react\" },\n    { name: \"Vue\", value: \"vue\" },\n    { name: \"Svelte\", value: \"svelte\" }\n  ]\n});\n\n\u002F\u002F Confirmation\nconst proceed = await confirm({\n  message: \"Do you want to continue?\",\n  default: true\n});\n\n\u002F\u002F Multiple selection\nconst features = await checkbox({\n  message: \"Select features:\",\n  choices: [\"Auth\", \"Database\", \"Testing\", \"Deployment\"],\n  default: [\"Auth\", \"Testing\"]\n});\n```\n\n### Complete Example\n```javascript\nimport { input, select, confirm } from '@inquirer\u002Fprompts';\nimport { cyan, bold } from 'chalk';\n\nasync function createProject() {\n  console.log(bold.cyan('Project Creator'));\n  console.log('-------------------\\n');\n\n  const name = await input({\n    message: 'Project name:',\n    validate: (value) => \u002F^[a-z0-9-]+$\u002F.test(value) \n      ? true \n      : 'Use lowercase letters, numbers, and hyphens only'\n  });\n\n  const template = await select({\n    message: 'Choose a template:',\n    choices: [\n      { name: 'JavaScript', value: 'js' },\n      { name: 'TypeScript', value: 'ts' },\n      { name: 'Node.js API', value: 'api' }\n    ]\n  });\n\n  const useTesting = await confirm({\n    message: 'Include testing framework?',\n    default: true\n  });\n\n  console.log(`\\nCreating ${name} with ${template} template...`);\n  if (useTesting) {\n    console.log('Adding testing support...');\n  }\n  console.log(bold.green('Done!'));\n}\n\ncreateProject().catch(console.error);\n```\n\n### Legacy Inquirer.js API\n```javascript\nimport inquirer from 'inquirer';\n\nconst answers = await inquirer.prompt([\n  {\n    type: 'input',\n    name: 'name',\n    message: 'Project name:',\n    default: 'my-project'\n  },\n  {\n    type: 'list',\n    name: 'framework',\n    message: 'Choose framework:',\n    choices: ['React', 'Vue', 'Angular', 'Svelte']\n  },\n  {\n    type: 'confirm',\n    name: 'typescript',\n    message: 'Use TypeScript?',\n    default: true\n  },\n  {\n    type: 'checkbox',\n    name: 'features',\n    message: 'Select features:',\n    choices: ['Router', 'State Management', 'Testing', 'CSS Framework']\n  }\n]);\n```\n\n## Commander.js\n\n### Basic Usage\n```javascript\nimport { Command } from 'commander';\n\nconst program = new Command();\n\nprogram\n  .name('myapp')\n  .description('My awesome CLI application')\n  .version('1.0.0');\n\nprogram\n  .command('init')\n  .description('Initialize a new project')\n  .argument('\u003Cname>', 'Project name')\n  .option('-t, --template \u003Ctype>', 'Project template', 'default')\n  .action((name, options) => {\n    console.log(`Initializing ${name} with ${options.template} template`);\n  });\n\nprogram\n  .command('build')\n  .description('Build the project')\n  .option('-p, --prod', 'Production build')\n  .option('-w, --watch', 'Watch mode')\n  .action((options) => {\n    console.log('Building...', options);\n  });\n\nprogram.parse();\n```\n\n### Nested Subcommands\n```javascript\nimport { Command } from 'commander';\n\nconst program = new Command();\n\n\u002F\u002F config group\nprogram\n  .command('config')\n  .description('Configuration commands')\n  .addCommand(\n    new Command('set')\n      .argument('\u003Ckey>', 'Config key')\n      .argument('\u003Cvalue>', 'Config value')\n      .action((key, value) => {\n        console.log(`Setting ${key} = ${value}`);\n      })\n  )\n  .addCommand(\n    new Command('get')\n      .argument('\u003Ckey>', 'Config key')\n      .action((key) => {\n        console.log(`Getting ${key}`);\n      })\n  )\n  .addCommand(\n    new Command('list')\n      .action(() => {\n        console.log('Listing all config');\n      })\n  );\n\nprogram.parse();\n```\n\n### Options\n```javascript\nprogram\n  .command('deploy')\n  .option('-e, --env \u003Cenv>', 'Environment', 'production')\n  .option('-r, --replicas \u003Ccount>', 'Number of replicas', '1')\n  .option('--dry-run', 'Dry run mode')\n  .option('-v, --verbose', 'Verbose output')\n  .action((options) => {\n    console.log('Deploying to:', options.env);\n    console.log('Replicas:', options.replicas);\n    if (options.dryRun) console.log('DRY RUN MODE');\n    if (options.verbose) console.log('Verbose output enabled');\n  });\n```\n\n## Chalk Styling\n\n### Basic Usage\n```javascript\nimport chalk from 'chalk';\n\n\u002F\u002F Text styling\nconsole.log(chalk.red('Error message'));\nconsole.log(chalk.green('Success!'));\nconsole.log(chalk.yellow('Warning'));\nconsole.log(chalk.blue('Info'));\n\n\u002F\u002F Combinations\nconsole.log(chalk.bold.cyan('Title'));\nconsole.log(chalk.bgRed.white('Highlighted'));\nconsole.log(chalk.underline('Underlined'));\n\n\u002F\u002F Template literals\nconsole.log(`\n  ${chalk.green('✓')} Success: Operation completed\n  ${chalk.red('✗')} Error: Something went wrong\n  ${chalk.yellow('⚠')} Warning: Check configuration\n`);\n\n\u002F\u002F Custom themes\nconst theme = {\n  title: chalk.bold.blue,\n  subtitle: chalk.cyan,\n  success: chalk.green,\n  error: chalk.red,\n  warning: chalk.yellow\n};\n\nconsole.log(theme.title('My Application'));\nconsole.log(theme.subtitle('Version 1.0.0'));\n```\n\n### Dynamic Colors\n```javascript\n\u002F\u002F RGB\nconsole.log(chalk.rgb(255, 128, 0)('Orange text'));\n\n\u002F\u002F Hex\nconsole.log(chalk.hex('#FF8800')('Orange text'));\n\n\u002F\u002F Custom gradient\nconsole.log(chalk.hex('#FF0000')('Red') + \n            chalk.hex('#FFFF00')('Yellow') + \n            chalk.hex('#00FF00')('Green'));\n```\n\n## Complete CLI Example\n\n```javascript\n#!\u002Fusr\u002Fbin\u002Fenv node\nimport { Command } from 'commander';\nimport { input, select, confirm } from '@inquirer\u002Fprompts';\nimport chalk from 'chalk';\nimport fs from 'fs\u002Fpromises';\nimport path from 'path';\n\nconst program = new Command();\n\nprogram\n  .name('project-cli')\n  .description('Project scaffolding CLI')\n  .version('1.0.0');\n\n\u002F\u002F init command with prompts\nprogram\n  .command('init')\n  .description('Initialize a new project')\n  .action(async () => {\n    console.log(chalk.bold.cyan('\\n Project Creator \\n'));\n    \n    const projectName = await input({\n      message: 'Project name:',\n      validate: (v) => v.length > 0 || 'Name is required'\n    });\n\n    const template = await select({\n      message: 'Choose template:',\n      choices: [\n        { name: 'JavaScript (ESM)', value: 'js' },\n        { name: 'TypeScript', value: 'ts' },\n        { name: 'Node.js API', value: 'api' }\n      ]\n    });\n\n    const addTesting = await confirm({\n      message: 'Add testing?',\n      default: true\n    });\n\n    console.log(chalk.yellow('\\nCreating project...'));\n    \n    \u002F\u002F Create project structure\n    await fs.mkdir(projectName, { recursive: true });\n    \n    const pkg = {\n      name: projectName,\n      version: '0.1.0',\n      type: 'module',\n      scripts: {\n        test: addTesting ? 'node --test' : undefined\n      }\n    };\n\n    await fs.writeFile(\n      path.join(projectName, 'package.json'),\n      JSON.stringify(pkg, null, 2)\n    );\n\n    console.log(chalk.green(`\\n✓ Project ${projectName} created!`));\n  });\n\nprogram.parse();\n```\n\n## Testing\n\n### With Prompts Mocking\n```javascript\nimport { jest } from '@jest\u002Fglobals';\n\n\u002F\u002F Mock inquirer for testing\njest.mock('@inquirer\u002Fprompts', () => ({\n  input: jest.fn().mockResolvedValue('test-project'),\n  select: jest.fn().mockResolvedValue('ts'),\n  confirm: jest.fn().mockResolvedValue(true)\n}));\n\ntest('creates project with prompts', async () => {\n  await createProject();\n  expect(fs.mkdir).toHaveBeenCalledWith('test-project', expect.any(Object));\n});\n```\n\n## Shell Completion\n\n```bash\n# Bash\nmyapp completion bash > \u002Fetc\u002Fbash_completion.d\u002Fmyapp\n\n# Zsh\nmyapp completion zsh > ~\u002F.zsh\u002Fcompletions\u002F_myapp\n\n# Fish\nmyapp completion fish > ~\u002F.config\u002Ffish\u002Fcompletions\u002Fmyapp.fish\n```\n\n## Best Practices\n\n1. **Use ESM modules** (`\"type\": \"module\"`) for modern imports\n2. **Validate inputs** with Inquirer's `validate` option\n3. **Use Commander** for argument parsing, Inquirer for prompts\n4. **Color wisely** - respect `--no-color` flag\n5. **Handle errors gracefully** - clear error messages\n6. **Exit codes** - use `process.exit(1)` for errors\n7. **Shebang** for executable CLIs: `#!\u002Fusr\u002Fbin\u002Fenv node`\n8. **Bin field** in package.json for CLI entry point\n",{"name":5,"license":15,"metadata":34,"description":7},{"audience":35,"category":36},"javascript-developers","cli-development","main","2ea764e153842704d24a2e9aa4170441a7f03081",".opencode\u002Fskills\u002Fjavascript-cli","https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito","https:\u002F\u002Fgithub.com\u002FNeuralBlitz","nuralnexus.org","Theoretical and Futuristic AI Nerd 🤓 ","2026-11-12 03:13:05",{"source":8,"skillName":5,"commands":46,"prompt":56,"zipAvailable":57},[47,50,53],{"tool":48,"command":49},"npx","npx skills add NeuralBlitz\u002FMito --skill javascript-cli",{"tool":51,"command":52},"bunx","bunx skills add NeuralBlitz\u002FMito --skill javascript-cli",{"tool":54,"command":55},"pnpm","pnpm dlx skills add NeuralBlitz\u002FMito --skill javascript-cli","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fjavascript-cli\u002FSKILL.md",true,[],[60,77,90,103,111,136],{"skillNo":61,"name":62,"nameZh":6,"description":63,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":64,"categories":65,"keywords":66,"publishedAt":29},"01M6HAZSAQK1S27CEZYAYJTQDX","wireless-communications","Wireless systems, mobile networks, and 5G\u002F6G","https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fwireless-communications\u002FSKILL.md",[],[67,68,69,70,71,72,73,74,75,76],"communications","wireless communications","wireless","systems","engineering","networks","5G","students","opencode","mobile",{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":29},"01M6HAZFX6E8NK3WZWDX5YCKYY","websockets","WebSocket implementation and best practices","https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fwebassembly\u002Fwebsockets\u002FSKILL.md",[],[79,84,85,86,75,87,88,89],"websocket implementation","time","implementation","real-time","websocket","best practices",{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":29},"01M6HAZ6DAXBQ7QHXXM1EM7715","vulnerability-auditing","Vulnerability assessment and auditing","https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fvulnerability-auditing\u002FSKILL.md",[],[97,98,99,100,75,101,102],"vulnerability","vulnerability auditing","security","vulnerability assessment","cybersecurity","assessment",{"skillNo":104,"name":105,"nameZh":6,"description":106,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":107,"categories":108,"keywords":109,"publishedAt":29},"01M6HAZ3FKF3CS9Z3J96RVE2ZE","vulnerability-assessment","Finding and assessing security vulnerabilities","https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fvue\u002Fvulnerability-assessment\u002FSKILL.md",[],[100,97,102,99,110,75],"vulnerabilities",{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":127,"publishedAt":29},"01M6HAYSHM6HKRKEHFP0SGZQX7","vlsi-design","Very-Large-Scale Integration circuit design and semiconductor engineering","https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fvlsi-design\u002FSKILL.md",[117,122],{"categoryNo":118,"categoryName":119,"taxonomyType":120,"taxonomyTypeDesc":121},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":123,"categoryName":124,"taxonomyType":125,"taxonomyTypeDesc":126},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[128,129,130,131,132,71,133,75,134,74,135],"vlsi design","VLSI","design","hardware","integration","computer","scale","circuit",{"skillNo":137,"name":138,"nameZh":6,"description":139,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":140,"categories":141,"keywords":142,"publishedAt":29},"01M6HAYPQ30FFE2JXD7WQJ8R6C","unsupervised","Unsupervised learning concepts","https:\u002F\u002Fgithub.com\u002FNeuralBlitz\u002FMito\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fvisualization\u002Funsupervised\u002FSKILL.md",[],[138,143,75,144,145,146,147,148],"learning","intelligence","unsupervised learning","machine","concepts","machine-learning"]