icoa-cli 2.19.201 → 2.19.203
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/ai4ctf.js +1 -1
- package/dist/commands/ctf4ai-demo.js +1 -1
- package/dist/commands/ctf4vla.js +1 -1
- package/dist/commands/exam.js +1 -1
- package/dist/lib/ai4ctf-curriculum-360.d.ts +12 -0
- package/dist/lib/ai4ctf-curriculum-360.js +1 -0
- package/dist/lib/ai4ctf-curriculum-96.d.ts +19 -0
- package/dist/lib/ai4ctf-curriculum-96.js +1 -0
- package/dist/lib/ai4ctf-phases.d.ts +24 -0
- package/dist/lib/ai4ctf-phases.js +1 -0
- package/dist/lib/ctf4ai-curriculum-360.d.ts +18 -0
- package/dist/lib/ctf4ai-curriculum-360.js +1 -0
- package/dist/lib/ctf4ai-curriculum-96.d.ts +14 -0
- package/dist/lib/ctf4ai-curriculum-96.js +1 -0
- package/dist/lib/ctf4ai-phases.d.ts +24 -0
- package/dist/lib/ctf4ai-phases.js +1 -0
- package/dist/lib/ctf4eai-curriculum-96.d.ts +14 -0
- package/dist/lib/ctf4eai-curriculum-96.js +1 -0
- package/dist/lib/hint-client.js +1 -1
- package/dist/lib/learn-curricula.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ai4ctf-360 — AI as Your CTF Teammate, research-grade curriculum.
|
|
3
|
+
*
|
|
4
|
+
* Source: ai4ctf-phases.ts (auto-generated by panda/generate-track-cards.js).
|
|
5
|
+
* 8 phases × 45 cards = 360 total. Knowledge-only tier; mcq / practical /
|
|
6
|
+
* quiz / trick land in future companion tiers.
|
|
7
|
+
*
|
|
8
|
+
* Each card carries bilingual EN/ZH content + a y/n comprehension check
|
|
9
|
+
* for learning-fingerprint analytics (per CLAUDE.md auditability invariant).
|
|
10
|
+
*/
|
|
11
|
+
import type { Curriculum } from './learn-curricula.js';
|
|
12
|
+
export declare const CURRICULUM_AI4CTF_360: Curriculum;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{AI4CTF_ALL_PHASES as e,AI4CTF_PHASE_NAMES as t}from"./ai4ctf-phases.js";const n=function(){const t=[];let n=1;for(let o=0;o<8;o++){const r=(e[o]??[]).slice(0,45);for(const e of r)t.push({...e,number:n,module:o+1}),n++}return t}();export const CURRICULUM_AI4CTF_360={id:"ai4ctf-360",name:"AI4CTF — AI as Your CTF Teammate (Research-grade, n=360)",description:"Knowledge-only research-grade curriculum (~75 hours). Eight phases × 45 cards. Covers the 110-tool sandbox, AI-as-teammate methodology, crypto / web / binary CTF technique, AI limits and anti-AI hardening. Bilingual EN/ZH with y/n comprehension checks throughout.",totalCards:n.length,modules:function(){const e=[];for(let o=0;o<8;o++){const r=n.filter(e=>e.module===o+1);0!==r.length&&e.push({number:o+1,name:t[o],cardRange:[r[0].number,r[r.length-1].number]})}return e}(),cards:n};if(360!==n.length)throw new Error(`ai4ctf-360: expected 360 cards, got ${n.length}`);
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ai4ctf-96 — competition-focused curated subset of ai4ctf-360.
|
|
3
|
+
*
|
|
4
|
+
* Per docs/three-tracks-curriculum.md § "n=96 selection principle":
|
|
5
|
+
* "Keep 12 cards per phase (8 × 12 = 96 exact). Keep: every card that maps
|
|
6
|
+
* to a known exam-section requirement; high-frequency techniques; tool
|
|
7
|
+
* inventory must-knows."
|
|
8
|
+
*
|
|
9
|
+
* Strategy: take the first 12 cards of each phase from ai4ctf-360. The
|
|
10
|
+
* outline generator already placed hook (cards 1-5) and core concepts
|
|
11
|
+
* (cards 6-15) at the start of each phase, so positions 1-12 give the
|
|
12
|
+
* highest-priority pedagogical material — matching the competition focus.
|
|
13
|
+
*
|
|
14
|
+
* Future refinement: replace with Gemini-scored selection if hand-review
|
|
15
|
+
* after the first internal tester batch suggests the heuristic misses
|
|
16
|
+
* specific must-have cards.
|
|
17
|
+
*/
|
|
18
|
+
import type { Curriculum } from './learn-curricula.js';
|
|
19
|
+
export declare const CURRICULUM_AI4CTF_96: Curriculum;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{AI4CTF_ALL_PHASES as t,AI4CTF_PHASE_NAMES as e}from"./ai4ctf-phases.js";const n=function(){const e=[];let n=1;for(let o=0;o<8;o++){const c=(t[o]??[]).slice(0,12);for(const t of c)e.push({...t,number:n,module:o+1}),n++}return e}();export const CURRICULUM_AI4CTF_96={id:"ai4ctf-96",name:"AI4CTF — Specialist (n=96, competition-focused)",description:"Curated 24-hour subset of ai4ctf-360. Eight phases × 12 cards each, focused on what the contestant needs to win the ai4ctf section of ICOA Paper A/B/C/E. Bilingual EN/ZH with y/n comprehension checks.",totalCards:n.length,modules:function(){const t=[];for(let o=0;o<8;o++){const c=n.filter(t=>t.module===o+1);0!==c.length&&t.push({number:o+1,name:e[o],cardRange:[c[0].number,c[c.length-1].number]})}return t}(),cards:n};if(96!==n.length)throw new Error(`ai4ctf-96: expected 96 cards, got ${n.length}`);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AUTO-GENERATED card content for ai4ctf-360.
|
|
3
|
+
* Source: panda/generate-track-cards.js + panda/retry-fallback-cards.js
|
|
4
|
+
* (Gemini 3.5-flash + lite fallback).
|
|
5
|
+
* DO NOT HAND-EDIT — regenerate by running the scripts.
|
|
6
|
+
*
|
|
7
|
+
* Last updated: 2026-05-24T17:22:27.359Z
|
|
8
|
+
* Cards covered: 360
|
|
9
|
+
*
|
|
10
|
+
* Embargo: ICOA-VLA codename only.
|
|
11
|
+
*/
|
|
12
|
+
import type { CardKnowledge } from './learn-curricula.js';
|
|
13
|
+
type CardSource = Omit<CardKnowledge, 'number'>;
|
|
14
|
+
export declare const AI4CTF_PHASE_1: CardSource[];
|
|
15
|
+
export declare const AI4CTF_PHASE_2: CardSource[];
|
|
16
|
+
export declare const AI4CTF_PHASE_3: CardSource[];
|
|
17
|
+
export declare const AI4CTF_PHASE_4: CardSource[];
|
|
18
|
+
export declare const AI4CTF_PHASE_5: CardSource[];
|
|
19
|
+
export declare const AI4CTF_PHASE_6: CardSource[];
|
|
20
|
+
export declare const AI4CTF_PHASE_7: CardSource[];
|
|
21
|
+
export declare const AI4CTF_PHASE_8: CardSource[];
|
|
22
|
+
export declare const AI4CTF_ALL_PHASES: CardSource[][];
|
|
23
|
+
export declare const AI4CTF_PHASE_NAMES: string[];
|
|
24
|
+
export {};
|