ICOA CLI

raw JSON →
2.19.110 verified Sat Apr 25 auth: no javascript

The world's first CLI-native CTF competition terminal, now at v2.19.110. Deployed via npm with strict Node.js >=22 requirement. Serves as the primary interface for competing in ICOA CTF events directly from the terminal. Uniquely positioned as a specialized tool for cybersecurity capture-the-flag competitions, differentiating from general CTF frameworks by being CLI-first and tied to the ICOA competition ecosystem.

error Error [ERR_REQUIRE_ESM]: require() of ES Module /path/node_modules/icoa-cli/index.js from /path/app.js not supported.
cause Using CommonJS require() on an ESM-only package.
fix
Switch to ESM (import) or use dynamic import().
error node: --experimental-loader /path/node_modules/icoa-cli/loader.mjs requires Node.js v22.0.0 or higher
cause Node.js version too low for package requirements.
fix
Install Node.js >=22.0.0 and retry.
breaking Requires Node.js >=22.0.0; older versions cause installation failure.
fix Upgrade Node.js to version 22 or later.
gotcha ESM-only package; using require() causes runtime error.
fix Use import syntax instead of require().
npm install icoa-cli
yarn add icoa-cli
pnpm add icoa-cli

Initialize ICOA CLI, authenticate using environment variable, and start a CTF competition session.

import icoa from 'icoa-cli';

// Set authentication token via environment
process.env.ICOA_TOKEN = 'your-token-here' ?? '';

// Example: start a competition session
icoa.startCompetition({
  event: 'ctf-2025',
  team: 'hackers'
}).then(console.log);