ccgx-workflow 1.0.0 → 1.0.1
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 +37 -5
- package/README.zh-CN.md +35 -5
- package/dist/cli.mjs +1 -1
- package/dist/index.mjs +2 -2
- package/dist/shared/{ccgx-workflow.WgUzkiC3.mjs → ccgx-workflow.SJPbUy5_.mjs} +17 -110
- package/package.json +2 -1
- package/templates/commands/agents/phase-runner.md +321 -321
- package/templates/commands/autonomous.md +792 -792
- package/templates/commands/cancel.md +132 -132
- package/templates/commands/debug.md +226 -226
- package/templates/commands/status.md +206 -206
- package/templates/commands/team.md +484 -0
- package/templates/hooks/ccg-session-state.cjs +510 -510
- package/templates/scripts/ccg-phase-runner-launcher.mjs +467 -467
- package/templates/scripts/invoke-model.mjs +64 -0
- package/templates/skills/domains/ai/SKILL.md +35 -35
- package/templates/skills/domains/ai/agent-dev.md +242 -242
- package/templates/skills/domains/ai/llm-security.md +288 -288
- package/templates/skills/domains/ai/rag-system.md +542 -542
- package/templates/skills/domains/architecture/SKILL.md +43 -43
- package/templates/skills/domains/architecture/api-design.md +225 -225
- package/templates/skills/domains/architecture/cloud-native.md +285 -285
- package/templates/skills/domains/architecture/security-arch.md +297 -297
- package/templates/skills/domains/data-engineering/SKILL.md +208 -208
- package/templates/skills/domains/development/SKILL.md +47 -47
- package/templates/skills/domains/development/cpp.md +246 -246
- package/templates/skills/domains/development/go.md +323 -323
- package/templates/skills/domains/development/java.md +277 -277
- package/templates/skills/domains/development/python.md +288 -288
- package/templates/skills/domains/development/rust.md +313 -313
- package/templates/skills/domains/development/shell.md +313 -313
- package/templates/skills/domains/development/typescript.md +277 -277
- package/templates/skills/domains/devops/SKILL.md +40 -40
- package/templates/skills/domains/devops/database.md +217 -217
- package/templates/skills/domains/devops/devsecops.md +198 -198
- package/templates/skills/domains/devops/git-workflow.md +181 -181
- package/templates/skills/domains/devops/testing.md +283 -283
- package/templates/skills/domains/frontend-design/SKILL.md +244 -244
- package/templates/skills/domains/frontend-design/claymorphism/SKILL.md +121 -121
- package/templates/skills/domains/frontend-design/component-patterns.md +202 -202
- package/templates/skills/domains/frontend-design/glassmorphism/SKILL.md +142 -142
- package/templates/skills/domains/frontend-design/liquid-glass/SKILL.md +139 -139
- package/templates/skills/domains/frontend-design/neubrutalism/SKILL.md +145 -145
- package/templates/skills/domains/frontend-design/state-management.md +680 -680
- package/templates/skills/domains/frontend-design/ui-aesthetics.md +110 -110
- package/templates/skills/domains/frontend-design/ux-principles.md +156 -156
- package/templates/skills/domains/infrastructure/SKILL.md +201 -201
- package/templates/skills/domains/mobile/SKILL.md +225 -225
- package/templates/skills/domains/orchestration/SKILL.md +30 -30
- package/templates/skills/domains/orchestration/multi-agent.md +228 -228
- package/templates/skills/domains/security/SKILL.md +73 -73
- package/templates/skills/domains/security/blue-team.md +436 -436
- package/templates/skills/domains/security/code-audit.md +265 -265
- package/templates/skills/domains/security/pentest.md +226 -226
- package/templates/skills/domains/security/red-team.md +374 -374
- package/templates/skills/domains/security/threat-intel.md +372 -372
- package/templates/skills/domains/security/vuln-research.md +369 -369
- package/templates/skills/tools/lib/shared.js +98 -98
- package/templates/skills/tools/override-refusal/SKILL.md +53 -53
- package/templates/skills/tools/override-refusal/scripts/refusal_rewriter.js +226 -226
|
@@ -1,145 +1,145 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: neubrutalism
|
|
3
|
-
description: Neubrutalism 新野兽主义设计(粗边框、偏移实心阴影、高饱和、极小圆角)。
|
|
4
|
-
license: MIT
|
|
5
|
-
user-invocable: false
|
|
6
|
-
disable-model-invocation: false
|
|
7
|
-
context: fork
|
|
8
|
-
paths: "*.tsx,*.jsx,*.vue,*.svelte,*.css,*.scss"
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Neubrutalism Design Spec
|
|
12
|
-
|
|
13
|
-
## Core Principles
|
|
14
|
-
|
|
15
|
-
1. **Thick Borders** — Bold `3–5px solid` black outlines on all elements
|
|
16
|
-
2. **Offset Solid Shadows** — Hard-edge `box-shadow` with zero blur (e.g. `5px 5px 0 #000`)
|
|
17
|
-
3. **High Saturation Colors** — Vivid, punchy fills: pinks, yellows, blues, greens
|
|
18
|
-
4. **Minimal Radius** — `0–8px` border-radius; sharp or barely rounded corners
|
|
19
|
-
5. **Flat Aesthetic** — No gradients, no blur, no transparency
|
|
20
|
-
|
|
21
|
-
## CSS Tokens
|
|
22
|
-
|
|
23
|
-
Reference: [references/tokens.css](references/tokens.css)
|
|
24
|
-
|
|
25
|
-
```css
|
|
26
|
-
@import 'references/tokens.css';
|
|
27
|
-
|
|
28
|
-
.nb-card {
|
|
29
|
-
background: var(--nb-yellow);
|
|
30
|
-
border: var(--nb-border-thick);
|
|
31
|
-
border-radius: var(--nb-radius);
|
|
32
|
-
box-shadow: var(--nb-shadow);
|
|
33
|
-
}
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
## Component Examples
|
|
37
|
-
|
|
38
|
-
### Card
|
|
39
|
-
```css
|
|
40
|
-
.nb-card {
|
|
41
|
-
background: var(--nb-white);
|
|
42
|
-
border: var(--nb-border-thick);
|
|
43
|
-
border-radius: var(--nb-radius);
|
|
44
|
-
box-shadow: var(--nb-shadow);
|
|
45
|
-
padding: 1.5rem;
|
|
46
|
-
}
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
### Button
|
|
50
|
-
```css
|
|
51
|
-
.nb-btn {
|
|
52
|
-
background: var(--nb-yellow);
|
|
53
|
-
border: var(--nb-border);
|
|
54
|
-
border-radius: var(--nb-radius);
|
|
55
|
-
box-shadow: var(--nb-shadow-sm);
|
|
56
|
-
padding: 0.6rem 1.4rem;
|
|
57
|
-
font-family: var(--nb-font);
|
|
58
|
-
font-weight: var(--nb-font-weight);
|
|
59
|
-
cursor: pointer;
|
|
60
|
-
transition: transform 0.1s, box-shadow 0.1s;
|
|
61
|
-
}
|
|
62
|
-
.nb-btn:hover {
|
|
63
|
-
transform: translate(-2px, -2px);
|
|
64
|
-
box-shadow: var(--nb-shadow);
|
|
65
|
-
}
|
|
66
|
-
.nb-btn:active {
|
|
67
|
-
transform: translate(3px, 3px);
|
|
68
|
-
box-shadow: none;
|
|
69
|
-
}
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
### Navbar
|
|
73
|
-
```css
|
|
74
|
-
.nb-nav {
|
|
75
|
-
background: var(--nb-bg);
|
|
76
|
-
border-bottom: var(--nb-border-thick);
|
|
77
|
-
padding: 1rem 2rem;
|
|
78
|
-
position: sticky;
|
|
79
|
-
top: 0;
|
|
80
|
-
z-index: 100;
|
|
81
|
-
}
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
### Input
|
|
85
|
-
```css
|
|
86
|
-
.nb-input {
|
|
87
|
-
background: var(--nb-white);
|
|
88
|
-
border: var(--nb-border);
|
|
89
|
-
border-radius: var(--nb-radius);
|
|
90
|
-
box-shadow: var(--nb-shadow-sm);
|
|
91
|
-
padding: 0.6rem 1rem;
|
|
92
|
-
font-family: var(--nb-font);
|
|
93
|
-
font-weight: var(--nb-font-weight-body);
|
|
94
|
-
}
|
|
95
|
-
.nb-input:focus {
|
|
96
|
-
outline: none;
|
|
97
|
-
box-shadow: var(--nb-shadow);
|
|
98
|
-
}
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
### Badge
|
|
102
|
-
```css
|
|
103
|
-
.nb-badge {
|
|
104
|
-
background: var(--nb-pink);
|
|
105
|
-
border: var(--nb-border);
|
|
106
|
-
border-radius: var(--nb-radius);
|
|
107
|
-
padding: 0.2rem 0.8rem;
|
|
108
|
-
font-family: var(--nb-font);
|
|
109
|
-
font-weight: var(--nb-font-weight);
|
|
110
|
-
font-size: 0.85rem;
|
|
111
|
-
}
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
## Typography
|
|
115
|
-
|
|
116
|
-
- Use bold, geometric sans-serif fonts (Space Grotesk, Inter, etc.)
|
|
117
|
-
- Headings: `font-weight: 700`, `letter-spacing: -0.02em`
|
|
118
|
-
- Body: `font-weight: 500`
|
|
119
|
-
- Uppercase sparingly for labels/badges
|
|
120
|
-
|
|
121
|
-
```css
|
|
122
|
-
h1, h2, h3 {
|
|
123
|
-
font-family: var(--nb-font-heading);
|
|
124
|
-
font-weight: var(--nb-font-weight);
|
|
125
|
-
letter-spacing: var(--nb-letter-spacing);
|
|
126
|
-
}
|
|
127
|
-
body {
|
|
128
|
-
font-family: var(--nb-font);
|
|
129
|
-
font-weight: var(--nb-font-weight-body);
|
|
130
|
-
}
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
## Accessibility Notes
|
|
134
|
-
|
|
135
|
-
- Thick borders provide strong visual boundaries — good for low-vision users
|
|
136
|
-
- Ensure color contrast ≥ 4.5:1 for text on colored backgrounds
|
|
137
|
-
- Active/hover states use `transform` shifts — provide `prefers-reduced-motion` fallback
|
|
138
|
-
|
|
139
|
-
```css
|
|
140
|
-
@media (prefers-reduced-motion: reduce) {
|
|
141
|
-
.nb-btn:hover, .nb-btn:active {
|
|
142
|
-
transform: none;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
```
|
|
1
|
+
---
|
|
2
|
+
name: neubrutalism
|
|
3
|
+
description: Neubrutalism 新野兽主义设计(粗边框、偏移实心阴影、高饱和、极小圆角)。
|
|
4
|
+
license: MIT
|
|
5
|
+
user-invocable: false
|
|
6
|
+
disable-model-invocation: false
|
|
7
|
+
context: fork
|
|
8
|
+
paths: "*.tsx,*.jsx,*.vue,*.svelte,*.css,*.scss"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Neubrutalism Design Spec
|
|
12
|
+
|
|
13
|
+
## Core Principles
|
|
14
|
+
|
|
15
|
+
1. **Thick Borders** — Bold `3–5px solid` black outlines on all elements
|
|
16
|
+
2. **Offset Solid Shadows** — Hard-edge `box-shadow` with zero blur (e.g. `5px 5px 0 #000`)
|
|
17
|
+
3. **High Saturation Colors** — Vivid, punchy fills: pinks, yellows, blues, greens
|
|
18
|
+
4. **Minimal Radius** — `0–8px` border-radius; sharp or barely rounded corners
|
|
19
|
+
5. **Flat Aesthetic** — No gradients, no blur, no transparency
|
|
20
|
+
|
|
21
|
+
## CSS Tokens
|
|
22
|
+
|
|
23
|
+
Reference: [references/tokens.css](references/tokens.css)
|
|
24
|
+
|
|
25
|
+
```css
|
|
26
|
+
@import 'references/tokens.css';
|
|
27
|
+
|
|
28
|
+
.nb-card {
|
|
29
|
+
background: var(--nb-yellow);
|
|
30
|
+
border: var(--nb-border-thick);
|
|
31
|
+
border-radius: var(--nb-radius);
|
|
32
|
+
box-shadow: var(--nb-shadow);
|
|
33
|
+
}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Component Examples
|
|
37
|
+
|
|
38
|
+
### Card
|
|
39
|
+
```css
|
|
40
|
+
.nb-card {
|
|
41
|
+
background: var(--nb-white);
|
|
42
|
+
border: var(--nb-border-thick);
|
|
43
|
+
border-radius: var(--nb-radius);
|
|
44
|
+
box-shadow: var(--nb-shadow);
|
|
45
|
+
padding: 1.5rem;
|
|
46
|
+
}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Button
|
|
50
|
+
```css
|
|
51
|
+
.nb-btn {
|
|
52
|
+
background: var(--nb-yellow);
|
|
53
|
+
border: var(--nb-border);
|
|
54
|
+
border-radius: var(--nb-radius);
|
|
55
|
+
box-shadow: var(--nb-shadow-sm);
|
|
56
|
+
padding: 0.6rem 1.4rem;
|
|
57
|
+
font-family: var(--nb-font);
|
|
58
|
+
font-weight: var(--nb-font-weight);
|
|
59
|
+
cursor: pointer;
|
|
60
|
+
transition: transform 0.1s, box-shadow 0.1s;
|
|
61
|
+
}
|
|
62
|
+
.nb-btn:hover {
|
|
63
|
+
transform: translate(-2px, -2px);
|
|
64
|
+
box-shadow: var(--nb-shadow);
|
|
65
|
+
}
|
|
66
|
+
.nb-btn:active {
|
|
67
|
+
transform: translate(3px, 3px);
|
|
68
|
+
box-shadow: none;
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Navbar
|
|
73
|
+
```css
|
|
74
|
+
.nb-nav {
|
|
75
|
+
background: var(--nb-bg);
|
|
76
|
+
border-bottom: var(--nb-border-thick);
|
|
77
|
+
padding: 1rem 2rem;
|
|
78
|
+
position: sticky;
|
|
79
|
+
top: 0;
|
|
80
|
+
z-index: 100;
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Input
|
|
85
|
+
```css
|
|
86
|
+
.nb-input {
|
|
87
|
+
background: var(--nb-white);
|
|
88
|
+
border: var(--nb-border);
|
|
89
|
+
border-radius: var(--nb-radius);
|
|
90
|
+
box-shadow: var(--nb-shadow-sm);
|
|
91
|
+
padding: 0.6rem 1rem;
|
|
92
|
+
font-family: var(--nb-font);
|
|
93
|
+
font-weight: var(--nb-font-weight-body);
|
|
94
|
+
}
|
|
95
|
+
.nb-input:focus {
|
|
96
|
+
outline: none;
|
|
97
|
+
box-shadow: var(--nb-shadow);
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### Badge
|
|
102
|
+
```css
|
|
103
|
+
.nb-badge {
|
|
104
|
+
background: var(--nb-pink);
|
|
105
|
+
border: var(--nb-border);
|
|
106
|
+
border-radius: var(--nb-radius);
|
|
107
|
+
padding: 0.2rem 0.8rem;
|
|
108
|
+
font-family: var(--nb-font);
|
|
109
|
+
font-weight: var(--nb-font-weight);
|
|
110
|
+
font-size: 0.85rem;
|
|
111
|
+
}
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## Typography
|
|
115
|
+
|
|
116
|
+
- Use bold, geometric sans-serif fonts (Space Grotesk, Inter, etc.)
|
|
117
|
+
- Headings: `font-weight: 700`, `letter-spacing: -0.02em`
|
|
118
|
+
- Body: `font-weight: 500`
|
|
119
|
+
- Uppercase sparingly for labels/badges
|
|
120
|
+
|
|
121
|
+
```css
|
|
122
|
+
h1, h2, h3 {
|
|
123
|
+
font-family: var(--nb-font-heading);
|
|
124
|
+
font-weight: var(--nb-font-weight);
|
|
125
|
+
letter-spacing: var(--nb-letter-spacing);
|
|
126
|
+
}
|
|
127
|
+
body {
|
|
128
|
+
font-family: var(--nb-font);
|
|
129
|
+
font-weight: var(--nb-font-weight-body);
|
|
130
|
+
}
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
## Accessibility Notes
|
|
134
|
+
|
|
135
|
+
- Thick borders provide strong visual boundaries — good for low-vision users
|
|
136
|
+
- Ensure color contrast ≥ 4.5:1 for text on colored backgrounds
|
|
137
|
+
- Active/hover states use `transform` shifts — provide `prefers-reduced-motion` fallback
|
|
138
|
+
|
|
139
|
+
```css
|
|
140
|
+
@media (prefers-reduced-motion: reduce) {
|
|
141
|
+
.nb-btn:hover, .nb-btn:active {
|
|
142
|
+
transform: none;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
```
|