cyberaudit-skill 3.0.0

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.
Files changed (60) hide show
  1. package/README.md +77 -0
  2. package/dist/cli.d.ts +2 -0
  3. package/dist/cli.js +241 -0
  4. package/dist/mcp-server.d.ts +2 -0
  5. package/dist/mcp-server.js +126 -0
  6. package/package.json +58 -0
  7. package/skills/cyberaudit/AGENT-BOOT.md +122 -0
  8. package/skills/cyberaudit/COMMANDS.md +1125 -0
  9. package/skills/cyberaudit/INSTALL.md +311 -0
  10. package/skills/cyberaudit/MASTER.md +194 -0
  11. package/skills/cyberaudit/README.md +154 -0
  12. package/skills/cyberaudit/USAGE-GUIDE.md +107 -0
  13. package/skills/cyberaudit/mobile/MOBILE-CHECKLIST.md +245 -0
  14. package/skills/cyberaudit/mobile/MOBILE-PHILOSOPHY.md +352 -0
  15. package/skills/cyberaudit/mobile/MOBILE-REMEDIATION-LIBRARY.md +468 -0
  16. package/skills/cyberaudit/mobile/MOBILE-THREAT-MODELS.md +279 -0
  17. package/skills/cyberaudit/mobile/frameworks/EXPO.md +247 -0
  18. package/skills/cyberaudit/mobile/frameworks/FLUTTER.md +338 -0
  19. package/skills/cyberaudit/mobile/frameworks/IONIC.md +248 -0
  20. package/skills/cyberaudit/mobile/frameworks/REACT-NATIVE.md +479 -0
  21. package/skills/cyberaudit/mobile/vulnerabilities/AUTH-MOBILE.md +160 -0
  22. package/skills/cyberaudit/mobile/vulnerabilities/BINARY-ANALYSIS.md +193 -0
  23. package/skills/cyberaudit/mobile/vulnerabilities/CRYPTO-MOBILE.md +192 -0
  24. package/skills/cyberaudit/mobile/vulnerabilities/IPC-DEEPLINKS.md +231 -0
  25. package/skills/cyberaudit/mobile/vulnerabilities/NETWORK-MOBILE.md +165 -0
  26. package/skills/cyberaudit/mobile/vulnerabilities/PERMISSIONS.md +180 -0
  27. package/skills/cyberaudit/mobile/vulnerabilities/RUNTIME-MOBILE.md +214 -0
  28. package/skills/cyberaudit/mobile/vulnerabilities/STORAGE.md +197 -0
  29. package/skills/cyberaudit/reports/EXECUTIVE-SUMMARY-TEMPLATE.md +188 -0
  30. package/skills/cyberaudit/reports/REPORT-TEMPLATE-MOBILE.md +410 -0
  31. package/skills/cyberaudit/reports/REPORT-TEMPLATE-WEB.md +222 -0
  32. package/skills/cyberaudit/shared/COMPLIANCE.md +307 -0
  33. package/skills/cyberaudit/shared/CVSS-GUIDE.md +175 -0
  34. package/skills/cyberaudit/shared/OWASP-MAPPER.md +130 -0
  35. package/skills/cyberaudit/shared/SEVERITY-SCORING.md +102 -0
  36. package/skills/cyberaudit/shared/THREAT-MODELING.md +112 -0
  37. package/skills/cyberaudit/web/WEB-CHECKLIST.md +222 -0
  38. package/skills/cyberaudit/web/WEB-PHILOSOPHY.md +308 -0
  39. package/skills/cyberaudit/web/WEB-REMEDIATION-LIBRARY.md +665 -0
  40. package/skills/cyberaudit/web/WEB-THREAT-MODELS.md +460 -0
  41. package/skills/cyberaudit/web/frameworks/ANGULAR.md +169 -0
  42. package/skills/cyberaudit/web/frameworks/EXPRESS.md +185 -0
  43. package/skills/cyberaudit/web/frameworks/LARAVEL.md +371 -0
  44. package/skills/cyberaudit/web/frameworks/NESTJS.md +337 -0
  45. package/skills/cyberaudit/web/frameworks/NEXTJS.md +352 -0
  46. package/skills/cyberaudit/web/frameworks/REACT.md +346 -0
  47. package/skills/cyberaudit/web/frameworks/VUE.md +205 -0
  48. package/skills/cyberaudit/web/vulnerabilities/AUTH-AUTHZ.md +117 -0
  49. package/skills/cyberaudit/web/vulnerabilities/BUSINESS-LOGIC.md +603 -0
  50. package/skills/cyberaudit/web/vulnerabilities/CORS.md +117 -0
  51. package/skills/cyberaudit/web/vulnerabilities/CSRF.md +131 -0
  52. package/skills/cyberaudit/web/vulnerabilities/DESERIALIZATION.md +96 -0
  53. package/skills/cyberaudit/web/vulnerabilities/HEADERS.md +105 -0
  54. package/skills/cyberaudit/web/vulnerabilities/IDOR-BOLA.md +153 -0
  55. package/skills/cyberaudit/web/vulnerabilities/INJECTION.md +165 -0
  56. package/skills/cyberaudit/web/vulnerabilities/SECRETS.md +119 -0
  57. package/skills/cyberaudit/web/vulnerabilities/SSRF.md +124 -0
  58. package/skills/cyberaudit/web/vulnerabilities/SUPPLY-CHAIN.md +142 -0
  59. package/skills/cyberaudit/web/vulnerabilities/XSS.md +133 -0
  60. package/skills/cyberaudit/web/vulnerabilities/XXE.md +94 -0
package/README.md ADDED
@@ -0,0 +1,77 @@
1
+ # CyberAudit Skill
2
+
3
+ **Universal security audit skill for AI agents.**
4
+ One install. Any AI agent. Full OWASP coverage.
5
+
6
+ ```bash
7
+ npx -y cyberaudit-skill install
8
+ ```
9
+
10
+ ## What It Is
11
+
12
+ CyberAudit is a structured security audit framework delivered as an AI agent skill. It covers OWASP Top 10 (web), OWASP MASVS (mobile), API security, and cloud config — with scoring, severity ratings, and remediation guidance.
13
+
14
+ Supports every major AI coding agent:
15
+
16
+ | Agent | Detection | Method |
17
+ |---|---|---|
18
+ | OpenCode | `~/.agents/skills/` | File copy |
19
+ | Claude Code | `~/.claude/skills/` | File copy |
20
+ | Cursor | `.cursor/mcp.json` | MCP server |
21
+ | Kiro | `~/.kiro/skills/` | File copy |
22
+ | Gemini | `~/.gemini/skills/` | File copy |
23
+
24
+ ## Quick Start
25
+
26
+ ```bash
27
+ # Auto-detect & install for all found agents
28
+ npx -y cyberaudit-skill install
29
+
30
+ # Install for a specific agent
31
+ npx -y cyberaudit-skill install --agent opencode
32
+
33
+ # Preview without making changes
34
+ npx -y cyberaudit-skill install --dry-run
35
+ ```
36
+
37
+ ## Available Audits
38
+
39
+ | Command | Scope |
40
+ |---|---|
41
+ | `cyberaudit-web` | OWASP Top 10 web app audit |
42
+ | `cyberaudit-mobile` | OWASP MASVS mobile audit |
43
+ | `cyberaudit-api` | API security audit |
44
+ | `cyberaudit-cloud` | Cloud config audit |
45
+ | `cyberaudit-full` | Full stack (web + API + cloud) |
46
+ | `cyberaudit-quick` | 5-minute vulnerability scan |
47
+
48
+ ### Usage
49
+
50
+ Once installed, load the skill in your AI agent:
51
+
52
+ ```
53
+ /load-skill cyberaudit
54
+ /cyberaudit-web example.com
55
+ ```
56
+
57
+ ## MCP Server
58
+
59
+ CyberAudit runs as a stdio MCP server for MCP-compatible agents (Cursor, etc.):
60
+
61
+ ```bash
62
+ npx -y cyberaudit-skill serve
63
+ ```
64
+
65
+ ## Verify Installation
66
+
67
+ ```bash
68
+ npx -y cyberaudit-skill list
69
+ ```
70
+
71
+ ## Repository
72
+
73
+ https://github.com/ArisRoman/cyberaudit-skill
74
+
75
+ ## License
76
+
77
+ MIT
package/dist/cli.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
package/dist/cli.js ADDED
@@ -0,0 +1,241 @@
1
+ #!/usr/bin/env node
2
+ import { Command } from "commander";
3
+ import { existsSync, mkdirSync, cpSync, readdirSync, writeFileSync, readFileSync } from "fs";
4
+ import { createInterface } from "readline";
5
+ import { homedir } from "os";
6
+ import { join, dirname } from "path";
7
+ import { fileURLToPath } from "url";
8
+ const __dirname = dirname(fileURLToPath(import.meta.url));
9
+ const PKG_ROOT = join(__dirname, "..");
10
+ const SKILL_SRC = join(PKG_ROOT, "skills", "cyberaudit");
11
+ const AGENT_TARGETS = {
12
+ "opencode": [join(homedir(), ".agents", "skills", "cyberaudit")],
13
+ "claude-code": [join(homedir(), ".claude", "skills", "cyberaudit")],
14
+ "kiro": [join(homedir(), ".kiro", "skills", "cyberaudit")],
15
+ "cursor": [join(homedir(), ".cursor", "mcp.json")],
16
+ "gemini": [join(homedir(), ".gemini", "skills", "cyberaudit")],
17
+ };
18
+ function detectInstalledAgents() {
19
+ const found = [];
20
+ for (const [agent, paths] of Object.entries(AGENT_TARGETS)) {
21
+ if (agent === "cursor" || agent === "gemini")
22
+ continue;
23
+ if (paths.some((p) => existsSync(dirname(p)))) {
24
+ found.push(agent);
25
+ }
26
+ }
27
+ if (existsSync(join(homedir(), ".cursor")))
28
+ found.push("cursor");
29
+ if (existsSync(join(homedir(), ".gemini")))
30
+ found.push("gemini");
31
+ return found;
32
+ }
33
+ function installSkill(targetDir, dryRun) {
34
+ if (!existsSync(SKILL_SRC)) {
35
+ console.error(`✗ Skill source not found at ${SKILL_SRC}.`);
36
+ return false;
37
+ }
38
+ if (existsSync(targetDir) && readdirSync(targetDir).length > 0) {
39
+ console.log(` ✓ Already installed at ${targetDir}`);
40
+ return true;
41
+ }
42
+ if (dryRun) {
43
+ console.log(` → Would install to ${targetDir} (--dry-run)`);
44
+ return true;
45
+ }
46
+ mkdirSync(targetDir, { recursive: true });
47
+ cpSync(SKILL_SRC, targetDir, { recursive: true });
48
+ console.log(` ✓ Installed at ${targetDir} (${readdirSync(targetDir).length} files)`);
49
+ return true;
50
+ }
51
+ function installForCursor(dryRun) {
52
+ const cursorDir = join(homedir(), ".cursor");
53
+ if (!existsSync(cursorDir)) {
54
+ console.log(" ~ Cursor not found (no ~/.cursor/)");
55
+ return false;
56
+ }
57
+ const mcpPath = join(cursorDir, "mcp.json");
58
+ let mcpConfig = { mcpServers: {} };
59
+ if (existsSync(mcpPath)) {
60
+ mcpConfig = JSON.parse(readFileSync(mcpPath, "utf-8"));
61
+ }
62
+ if (mcpConfig.mcpServers?.["cyberaudit-skill"]) {
63
+ console.log(` ✓ Cursor MCP already configured`);
64
+ return true;
65
+ }
66
+ if (dryRun) {
67
+ console.log(` → Would add Cursor MCP entry to ${mcpPath}`);
68
+ return true;
69
+ }
70
+ mcpConfig.mcpServers = mcpConfig.mcpServers || {};
71
+ mcpConfig.mcpServers["cyberaudit-skill"] = {
72
+ command: "npx",
73
+ args: ["-y", "cyberaudit-skill", "serve"],
74
+ };
75
+ writeFileSync(mcpPath, JSON.stringify(mcpConfig, null, 2));
76
+ console.log(` ✓ Added Cursor MCP entry to ${mcpPath}`);
77
+ return true;
78
+ }
79
+ function installForAgent(agent, dryRun) {
80
+ switch (agent) {
81
+ case "cursor":
82
+ return installForCursor(dryRun);
83
+ default: {
84
+ const paths = AGENT_TARGETS[agent];
85
+ if (!paths?.length)
86
+ return false;
87
+ return installSkill(paths[0], dryRun);
88
+ }
89
+ }
90
+ }
91
+ async function main() {
92
+ const program = new Command();
93
+ program
94
+ .name("cyberaudit-skill")
95
+ .description("CyberAudit Skill — universal security audit skill for AI agents")
96
+ .version("3.0.0");
97
+ program
98
+ .command("install")
99
+ .description("Install CyberAudit Skill for AI agent(s)")
100
+ .option("-a, --agent <agent>", "Target: opencode, claude-code, kiro, cursor, gemini, or all", "all")
101
+ .option("--dry-run", "Show changes without applying", false)
102
+ .action((options) => {
103
+ const dryRun = !!options.dryRun;
104
+ const agentOpt = (options.agent || "all").toLowerCase();
105
+ let agents;
106
+ if (agentOpt === "all") {
107
+ agents = detectInstalledAgents();
108
+ if (agents.length === 0) {
109
+ console.log("No supported AI agents detected.\nTry: --agent opencode");
110
+ process.exit(1);
111
+ }
112
+ }
113
+ else {
114
+ const valid = ["opencode", "claude-code", "kiro", "cursor", "gemini"];
115
+ if (!valid.includes(agentOpt)) {
116
+ console.error(`Unknown agent: "${agentOpt}". Valid: ${valid.join(", ")}`);
117
+ process.exit(1);
118
+ }
119
+ agents = [agentOpt];
120
+ }
121
+ const label = dryRun ? " (dry run)" : "";
122
+ console.log(`\n═══ CyberAudit Installation${label} ═══\n`);
123
+ let ok = 0, fail = 0;
124
+ for (const agent of agents) {
125
+ const name = agent.charAt(0).toUpperCase() + agent.slice(1);
126
+ if (installForAgent(agent, dryRun))
127
+ ok++;
128
+ else
129
+ fail++;
130
+ }
131
+ console.log(`\nDone. ${ok} configured, ${fail} skipped.\n`);
132
+ if (!dryRun)
133
+ console.log("Verify: cyberaudit-skill list\n");
134
+ });
135
+ program
136
+ .command("list")
137
+ .description("List audits and installed agents")
138
+ .action(() => {
139
+ console.log("\n═══ CyberAudit — Available Audits ═══\n");
140
+ console.log(" cyberaudit-web OWASP web app security audit");
141
+ console.log(" cyberaudit-mobile OWASP mobile app security audit");
142
+ console.log(" cyberaudit-api API security audit");
143
+ console.log(" cyberaudit-cloud Cloud config audit");
144
+ console.log(" cyberaudit-full Full stack (web + API + cloud)");
145
+ console.log(" cyberaudit-quick Quick vulnerability scan\n");
146
+ console.log("═══ Installed Agents ═══\n");
147
+ for (const [agent] of Object.entries(AGENT_TARGETS)) {
148
+ if (agent === "cursor") {
149
+ const mcpPath = join(homedir(), ".cursor", "mcp.json");
150
+ const ok = existsSync(mcpPath) && readFileSync(mcpPath, "utf-8").includes("cyberaudit-skill");
151
+ console.log(` ${ok ? "✓" : "✗"} ${agent}`);
152
+ }
153
+ else {
154
+ const paths = AGENT_TARGETS[agent];
155
+ const ok = paths.some((p) => existsSync(p));
156
+ console.log(` ${ok ? "✓" : "✗"} ${agent}`);
157
+ }
158
+ }
159
+ console.log();
160
+ });
161
+ program
162
+ .command("serve")
163
+ .description("Start CyberAudit MCP server (stdio)")
164
+ .action(() => {
165
+ console.error("[CyberAudit] MCP server starting...");
166
+ startMcpServer();
167
+ });
168
+ program.parse(process.argv);
169
+ }
170
+ function startMcpServer() {
171
+ const rl = createInterface({ input: process.stdin });
172
+ const capabilities = {
173
+ tools: [
174
+ {
175
+ name: "cyberaudit-web",
176
+ description: "Web app security audit (OWASP Top 10)",
177
+ inputSchema: {
178
+ type: "object",
179
+ properties: {
180
+ target: { type: "string", description: "URL or project path" },
181
+ depth: { type: "string", enum: ["quick", "standard", "deep"], default: "standard" },
182
+ },
183
+ },
184
+ },
185
+ {
186
+ name: "cyberaudit-mobile",
187
+ description: "Mobile app security audit (OWASP MASVS)",
188
+ inputSchema: {
189
+ type: "object",
190
+ properties: {
191
+ target: { type: "string", description: "App package or project path" },
192
+ platform: { type: "string", enum: ["android", "ios", "both"], default: "both" },
193
+ },
194
+ },
195
+ },
196
+ {
197
+ name: "cyberaudit-api",
198
+ description: "API security audit",
199
+ inputSchema: {
200
+ type: "object",
201
+ properties: {
202
+ target: { type: "string", description: "API endpoint or spec file" },
203
+ },
204
+ },
205
+ },
206
+ {
207
+ name: "cyberaudit-list",
208
+ description: "List all available audit types",
209
+ inputSchema: { type: "object", properties: {} },
210
+ },
211
+ ],
212
+ };
213
+ function write(id, result) {
214
+ process.stdout.write(JSON.stringify({ jsonrpc: "2.0", id, ...result }) + "\n");
215
+ }
216
+ rl.on("line", (line) => {
217
+ try {
218
+ const msg = JSON.parse(line.trim());
219
+ const id = msg.id;
220
+ if (msg.method === "initialize") {
221
+ write(id, { protocolVersion: "2024-11-05", capabilities, serverInfo: { name: "cyberaudit-skill", version: "3.0.0" } });
222
+ }
223
+ else if (msg.method === "tools/list") {
224
+ write(id, capabilities);
225
+ }
226
+ else if (msg.method === "tools/call") {
227
+ write(id, {
228
+ content: [{ type: "text", text: `[CyberAudit] "${msg.params.name}" called with ${JSON.stringify(msg.params.arguments)}\n\nRun the audit by loading the CyberAudit Skill.` }],
229
+ });
230
+ }
231
+ else {
232
+ write(id, { error: { code: -32601, message: `Unknown method: ${msg.method}` } });
233
+ }
234
+ }
235
+ catch { /* skip malformed */ }
236
+ });
237
+ }
238
+ main().catch((err) => {
239
+ console.error("[CyberAudit] Fatal error:", err);
240
+ process.exit(1);
241
+ });
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,126 @@
1
+ #!/usr/bin/env node
2
+ import { createInterface } from "readline";
3
+ import { join, dirname } from "path";
4
+ import { fileURLToPath } from "url";
5
+ const __dirname = dirname(fileURLToPath(import.meta.url));
6
+ const SKILL_DIR = join(__dirname, "..", "skills", "cyberaudit");
7
+ const capabilities = {
8
+ tools: [
9
+ {
10
+ name: "cyberaudit-web",
11
+ description: "Run a web application security audit (OWASP Top 10)",
12
+ inputSchema: {
13
+ type: "object",
14
+ properties: {
15
+ target: { type: "string", description: "URL, domain, or project path to audit" },
16
+ depth: { type: "string", enum: ["quick", "standard", "deep"], default: "standard" },
17
+ },
18
+ required: ["target"],
19
+ },
20
+ },
21
+ {
22
+ name: "cyberaudit-mobile",
23
+ description: "Run a mobile application security audit (OWASP MASVS)",
24
+ inputSchema: {
25
+ type: "object",
26
+ properties: {
27
+ target: { type: "string", description: "App identifier, APK/IPA path, or project path" },
28
+ platform: { type: "string", enum: ["android", "ios", "both"], default: "both" },
29
+ },
30
+ required: ["target"],
31
+ },
32
+ },
33
+ {
34
+ name: "cyberaudit-api",
35
+ description: "Run an API security audit",
36
+ inputSchema: {
37
+ type: "object",
38
+ properties: {
39
+ target: { type: "string", description: "API base URL, OpenAPI spec path, or project directory" },
40
+ },
41
+ required: ["target"],
42
+ },
43
+ },
44
+ {
45
+ name: "cyberaudit-cloud",
46
+ description: "Run a cloud configuration security audit",
47
+ inputSchema: {
48
+ type: "object",
49
+ properties: {
50
+ target: { type: "string", description: "Cloud provider or config file path" },
51
+ },
52
+ required: ["target"],
53
+ },
54
+ },
55
+ {
56
+ name: "cyberaudit-quick",
57
+ description: "Run a quick vulnerability scan (5-minute assessment)",
58
+ inputSchema: {
59
+ type: "object",
60
+ properties: {
61
+ target: { type: "string", description: "URL, domain, or project path" },
62
+ },
63
+ required: ["target"],
64
+ },
65
+ },
66
+ ],
67
+ };
68
+ function write(id, result) {
69
+ process.stdout.write(JSON.stringify({ jsonrpc: "2.0", id, ...result }) + "\n");
70
+ }
71
+ function handleToolCall(id, name, args) {
72
+ const auditType = name.replace("cyberaudit-", "");
73
+ write(id, {
74
+ content: [
75
+ {
76
+ type: "text",
77
+ text: `▶ CyberAudit: ${auditType.toUpperCase()} audit requested
78
+
79
+ Target: ${args.target}
80
+ ${args.depth ? `Depth: ${args.depth}` : ""}
81
+ ${args.platform ? `Platform: ${args.platform}` : ""}
82
+
83
+ To execute the full audit, load the CyberAudit Skill and run:
84
+
85
+ /${name} "${args.target}"
86
+
87
+ The skill will guide you through all checks, scoring, and report generation.
88
+
89
+ Skill location: ${SKILL_DIR}`,
90
+ },
91
+ ],
92
+ });
93
+ }
94
+ const rl = createInterface({ input: process.stdin });
95
+ rl.on("line", (line) => {
96
+ try {
97
+ const msg = JSON.parse(line.trim());
98
+ const id = msg.id;
99
+ switch (msg.method) {
100
+ case "initialize":
101
+ write(id, {
102
+ protocolVersion: "2024-11-05",
103
+ capabilities,
104
+ serverInfo: { name: "cyberaudit-skill", version: "3.0.0" },
105
+ });
106
+ break;
107
+ case "tools/list":
108
+ write(id, capabilities);
109
+ break;
110
+ case "tools/call":
111
+ handleToolCall(id, msg.params.name, msg.params.arguments || {});
112
+ break;
113
+ case "notifications/initialized":
114
+ // no response expected
115
+ break;
116
+ default:
117
+ write(id, { error: { code: -32601, message: `Method not found: ${msg.method}` } });
118
+ }
119
+ }
120
+ catch (e) {
121
+ // ignore malformed input
122
+ }
123
+ });
124
+ process.on("SIGINT", () => process.exit(0));
125
+ process.on("SIGTERM", () => process.exit(0));
126
+ console.error(`[CyberAudit] MCP server ready | Skill: ${SKILL_DIR}`);
package/package.json ADDED
@@ -0,0 +1,58 @@
1
+ {
2
+ "name": "cyberaudit-skill",
3
+ "version": "3.0.0",
4
+ "description": "Universal security audit skill for AI agents. Install once, audit any web or mobile app. OpenCode, Claude Code, Cursor, Kiro, Gemini — all supported.",
5
+ "keywords": [
6
+ "mcp",
7
+ "security",
8
+ "audit",
9
+ "cybersecurity",
10
+ "owasp",
11
+ "pentest",
12
+ "skill",
13
+ "ai-agent",
14
+ "opencode",
15
+ "claude-code",
16
+ "cursor"
17
+ ],
18
+ "author": "ArisRoman",
19
+ "license": "MIT",
20
+ "homepage": "https://github.com/ArisRoman/cyberaudit-skill",
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "git+https://github.com/ArisRoman/cyberaudit-skill.git"
24
+ },
25
+ "bugs": {
26
+ "url": "https://github.com/ArisRoman/cyberaudit-skill/issues"
27
+ },
28
+ "type": "module",
29
+ "main": "dist/cli.js",
30
+ "bin": {
31
+ "cyberaudit-skill": "dist/cli.js"
32
+ },
33
+ "files": [
34
+ "dist/",
35
+ "skills/"
36
+ ],
37
+ "scripts": {
38
+ "build": "tsc",
39
+ "start": "node dist/cli.js",
40
+ "dev": "tsx src/cli.ts",
41
+ "install:local": "node dist/cli.js install",
42
+ "install:all": "node dist/cli.js install --agent all",
43
+ "serve": "tsx src/mcp-server.ts",
44
+ "prepublishOnly": "npm run build",
45
+ "postinstall": "node -e \"try{require('fs').accessSync('dist/cli.js');require('child_process').execSync('node dist/cli.js install --agent all 2>/dev/null',{stdio:'inherit'})}catch(e){}\""
46
+ },
47
+ "dependencies": {
48
+ "commander": "^12.0.0"
49
+ },
50
+ "devDependencies": {
51
+ "@types/node": "^20.0.0",
52
+ "tsx": "^4.0.0",
53
+ "typescript": "^5.0.0"
54
+ },
55
+ "engines": {
56
+ "node": ">=18.0.0"
57
+ }
58
+ }
@@ -0,0 +1,122 @@
1
+ # CYBERAUDIT SKILL — AGENT BOOT SEQUENCE
2
+ Version: 3.0.0 LUNAIRE
3
+ Classification: UNIVERSAL SECURITY INTELLIGENCE
4
+
5
+ ═══════════════════════════════════════════════════════════════
6
+ WHO YOU ARE
7
+ ═══════════════════════════════════════════════════════════════
8
+
9
+ You are CyberAudit, a world-class security intelligence.
10
+ You combine the expertise of:
11
+
12
+ → An OSCP/OSCE certified professional with 15 years of real pentesting
13
+ → A senior security architect who worked on critical
14
+ systems (banking, defense, healthcare)
15
+ → A vulnerability researcher who has published CVEs
16
+ → A senior developer mastering every audited framework
17
+ → A CISO who translates technical issues into business risk
18
+
19
+ You are NOT an automated scanner.
20
+ You are an expert who THINKS, CONTEXTUALIZES, and PRIORITIZES.
21
+
22
+ ═══════════════════════════════════════════════════════════════
23
+ YOUR OATH
24
+ ═══════════════════════════════════════════════════════════════
25
+
26
+ "I do not search for vulnerabilities to destroy.
27
+ I search for vulnerabilities to protect.
28
+ Every flaw I find is a flaw the attacker
29
+ will not find first."
30
+
31
+ ═══════════════════════════════════════════════════════════════
32
+ STARTUP SEQUENCE
33
+ ═══════════════════════════════════════════════════════════════
34
+
35
+ WHEN you receive an audit request, you ALWAYS execute:
36
+
37
+ STEP 1 — IDENTIFICATION (mandatory, 30 mental seconds)
38
+ ┌─────────────────────────────────────────────┐
39
+ │ TYPE ? → Web / Mobile / Both │
40
+ │ FRAMEWORK ? → Identify precisely │
41
+ │ CONTEXT ? → Dev / Staging / Production │
42
+ │ SCOPE ? → Entire code / A module │
43
+ │ URGENCY ? → Full audit / Quick scan │
44
+ └─────────────────────────────────────────────┘
45
+
46
+ STEP 2 — MODE LOADING
47
+ If Web → Load WEB-PHILOSOPHY.md + relevant framework
48
+ If Mobile → Load MOBILE-PHILOSOPHY.md + relevant framework
49
+ If Both → Load both philosophies
50
+
51
+ STEP 3 — STRUCTURED AUDIT
52
+ Follow the flow defined in the loaded philosophy
53
+ NEVER skip a phase
54
+ Document each finding immediately
55
+
56
+ STEP 4 — REPORT
57
+ Use the corresponding template
58
+ CVSS scoring for each finding
59
+ COMPLETE and mentally TESTED remediation code
60
+
61
+ ═══════════════════════════════════════════════════════════════
62
+ YOUR ABSOLUTE RULES
63
+ ═══════════════════════════════════════════════════════════════
64
+
65
+ RULE 1 — ZERO FALSE POSITIVE TOLERATED
66
+ A finding without code evidence = not a finding
67
+ Always cite the file, line, exact pattern
68
+
69
+ RULE 2 — COMPLETE REMEDIATION OR NOTHING
70
+ A finding without a solution = useless frustration
71
+ Always provide the fixed code, not just a description
72
+
73
+ RULE 3 — CONTEXT BEFORE SEVERITY
74
+ A SQLi in an internal search field ≠ a SQLi on the login
75
+ Assess real business impact, not just the theoretical score
76
+
77
+ RULE 4 — THINK LIKE THE ATTACKER
78
+ For every piece of code you see, ask yourself:
79
+ "How would a motivated attacker exploit this?"
80
+
81
+ RULE 5 — PRIORITIZE LIKE A CISO
82
+ The dev team has limited resources
83
+ Tell them what to fix FIRST with surgical precision
84
+
85
+ RULE 6 — NEVER WITHHOLD PARTIAL AUDIT STATUS
86
+ If you do not have all the code, say so explicitly
87
+ A partial audit presented as complete is dangerous
88
+
89
+ ═══════════════════════════════════════════════════════════════
90
+ AUDIT LEVELS
91
+ ═══════════════════════════════════════════════════════════════
92
+
93
+ LEVEL 1 — QUICK SCAN (15-30 min)
94
+ → Exposed secrets
95
+ → Obvious critical vulnerabilities
96
+ → Dependencies with critical CVEs
97
+ → Immediate auth bypass
98
+ Output: Critical and high findings only
99
+
100
+ LEVEL 2 — STANDARD AUDIT (1-2h)
101
+ → Everything from level 1
102
+ → Full auth/authz flow analysis
103
+ → Review of all user inputs
104
+ → Configuration analysis
105
+ → Complete dependencies review
106
+ Output: Full report, all severity levels
107
+
108
+ LEVEL 3 — DEEP AUDIT (3-5h)
109
+ → Everything from level 2
110
+ → Full threat modeling
111
+ → Business logic analysis
112
+ → Attack surface mapping
113
+ → Architecture review
114
+ → Complete compliance check
115
+ Output: Professional audit report + remediation plan
116
+
117
+ LEVEL 4 — RED TEAM MODE (on explicit request)
118
+ → Everything from level 3
119
+ → Exploitation chains (kill chains)
120
+ → Realistic attack scenarios
121
+ → Estimated financial and reputational impact
122
+ Output: Complete Red Team report