supered 0.1.3

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.
@@ -0,0 +1,15 @@
1
+ # Cursor Install
2
+
3
+ Install Supered into the default Cursor skills directory:
4
+
5
+ ```bash
6
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | SUPERED_TARGET=cursor sh
7
+ ```
8
+
9
+ Equivalent explicit form:
10
+
11
+ ```bash
12
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | sh -s -- --target cursor
13
+ ```
14
+
15
+ Cursor skill locations can vary by setup. Use `SUPERED_DEST` or `--dest` when you need to point the installer at a specific directory.
@@ -0,0 +1,15 @@
1
+ # Gemini Install
2
+
3
+ Install Supered into the default Gemini skills directory:
4
+
5
+ ```bash
6
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | SUPERED_TARGET=gemini sh
7
+ ```
8
+
9
+ Equivalent explicit form:
10
+
11
+ ```bash
12
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | sh -s -- --target gemini
13
+ ```
14
+
15
+ Use `--dest` for custom Gemini extension or skill directories.
@@ -0,0 +1,15 @@
1
+ # OpenCode Install
2
+
3
+ Install Supered into the default OpenCode skills directory:
4
+
5
+ ```bash
6
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | SUPERED_TARGET=opencode sh
7
+ ```
8
+
9
+ Equivalent explicit form:
10
+
11
+ ```bash
12
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | sh -s -- --target opencode
13
+ ```
14
+
15
+ OpenCode setups can differ. Use `SUPERED_DEST` or `--dest` if your local installation expects another skills directory.
@@ -0,0 +1,83 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1">
6
+ <meta name="description" content="Supered is a compact workflow kit for coding agents that shape, build, prove, and ship software changes.">
7
+ <title>Supered - Agent Workflow Kit</title>
8
+ <link rel="stylesheet" href="./styles.css">
9
+ </head>
10
+ <body>
11
+ <header class="topbar" aria-label="Primary">
12
+ <a class="brand" href="#top" aria-label="Supered home">
13
+ <img src="../1.svg" alt="" width="36" height="36">
14
+ <span>Supered</span>
15
+ </a>
16
+ <nav>
17
+ <a href="#skills">Skills</a>
18
+ <a href="#install">Install</a>
19
+ <a href="https://github.com/fhajjej-ship-it/Supered">GitHub</a>
20
+ </nav>
21
+ </header>
22
+
23
+ <main id="top">
24
+ <section class="hero" aria-labelledby="hero-title">
25
+ <div class="hero-copy">
26
+ <p class="eyebrow">Agent workflow kit</p>
27
+ <h1 id="hero-title">Supered</h1>
28
+ <p class="lede">Shape the task, build in slices, prove the change, and ship with a clean public handoff.</p>
29
+ <div class="actions" aria-label="Primary actions">
30
+ <a class="button primary" href="https://github.com/fhajjej-ship-it/Supered">View on GitHub</a>
31
+ <a class="button secondary" href="#install">Install</a>
32
+ </div>
33
+ </div>
34
+ <div class="hero-media" aria-label="Supered logo">
35
+ <img src="../1.svg" alt="Supered logo">
36
+ </div>
37
+ </section>
38
+
39
+ <section id="skills" class="workflow" aria-labelledby="workflow-title">
40
+ <div class="section-head">
41
+ <p class="eyebrow">Workflow</p>
42
+ <h2 id="workflow-title">Four moves, seven skills.</h2>
43
+ </div>
44
+ <div class="steps">
45
+ <article>
46
+ <span>01</span>
47
+ <h3>Shape</h3>
48
+ <p>Turn a rough request into a short, testable brief.</p>
49
+ </article>
50
+ <article>
51
+ <span>02</span>
52
+ <h3>Build</h3>
53
+ <p>Work in small slices with checks that keep scope visible.</p>
54
+ </article>
55
+ <article>
56
+ <span>03</span>
57
+ <h3>Prove</h3>
58
+ <p>Run fresh verification before making completion claims.</p>
59
+ </article>
60
+ <article>
61
+ <span>04</span>
62
+ <h3>Ship</h3>
63
+ <p>Stage, commit, push, and hand off with public evidence.</p>
64
+ </article>
65
+ </div>
66
+ </section>
67
+
68
+ <section id="install" class="install" aria-labelledby="install-title">
69
+ <div>
70
+ <p class="eyebrow">Install</p>
71
+ <h2 id="install-title">Start from the repo.</h2>
72
+ <p>Clone Supered, validate the bundle, then copy the skills into your agent host.</p>
73
+ </div>
74
+ <pre><code>npx supered install --target codex
75
+
76
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | sh
77
+
78
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | SUPERED_TARGET=gemini sh
79
+ npm run verify-package</code></pre>
80
+ </section>
81
+ </main>
82
+ </body>
83
+ </html>
@@ -0,0 +1,49 @@
1
+ # Installing Supered
2
+
3
+ Supered ships plain skill folders plus lightweight plugin manifests.
4
+
5
+ ## Npx install
6
+
7
+ ```bash
8
+ npx supered install --target codex
9
+ ```
10
+
11
+ Choose another host:
12
+
13
+ ```bash
14
+ npx supered install --target opencode
15
+ ```
16
+
17
+ ## One-line install
18
+
19
+ ```bash
20
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | sh
21
+ ```
22
+
23
+ Set a host target:
24
+
25
+ ```bash
26
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | SUPERED_TARGET=gemini sh
27
+ ```
28
+
29
+ ## Codex
30
+
31
+ ```bash
32
+ node ./bin/supered.mjs install --target codex
33
+ ```
34
+
35
+ ## Claude
36
+
37
+ ```bash
38
+ node ./bin/supered.mjs install --target claude
39
+ ```
40
+
41
+ ## Gemini
42
+
43
+ ```bash
44
+ node ./bin/supered.mjs install --target gemini
45
+ ```
46
+
47
+ ## Manual
48
+
49
+ Copy each folder in `skills/` into the skill directory used by your agent host.
@@ -0,0 +1,37 @@
1
+ # Marketplace Checklist
2
+
3
+ Use this before submitting Supered to a host marketplace or plugin index.
4
+
5
+ ## Core Assets
6
+
7
+ - [x] Public GitHub repository.
8
+ - [x] MIT license.
9
+ - [x] Product logo at `1.svg`.
10
+ - [x] Preview image at `docs/preview.svg`.
11
+ - [x] Landing page at `https://fhajjej-ship-it.github.io/Supered/`.
12
+ - [x] CI workflow with tests, validation, smoke install, and browser site verification.
13
+
14
+ ## Host Metadata
15
+
16
+ - [x] Codex metadata in `.codex-plugin/plugin.json`.
17
+ - [x] Claude metadata in `.claude-plugin/plugin.json`.
18
+ - [x] Cursor metadata in `.cursor-plugin/plugin.json`.
19
+ - [x] Gemini metadata in `gemini-extension.json`.
20
+ - [x] OpenCode install notes in `.opencode/INSTALL.md`.
21
+
22
+ ## Install Documentation
23
+
24
+ - [x] One-line installer in `install.sh`.
25
+ - [x] Npm package metadata for `npx supered install --target codex`.
26
+ - [x] Codex host docs in `docs/hosts/codex.md`.
27
+ - [x] Claude host docs in `docs/hosts/claude.md`.
28
+ - [x] Cursor host docs in `docs/hosts/cursor.md`.
29
+ - [x] Gemini host docs in `docs/hosts/gemini.md`.
30
+ - [x] OpenCode host docs in `docs/hosts/opencode.md`.
31
+
32
+ ## Submission Notes
33
+
34
+ - Confirm marketplace-specific directory naming before submission.
35
+ - Confirm each host's current skill or plugin packaging rules.
36
+ - Keep screenshots and descriptions aligned with the shipped skill list.
37
+ - Run `npm test`, `npm run validate`, `npm run smoke-install`, `npm run verify-package`, and `npm run verify-site` before submission.
@@ -0,0 +1,26 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 720" role="img" aria-labelledby="title desc">
2
+ <title id="title">Supered preview</title>
3
+ <desc id="desc">A preview card showing the Supered workflow: shape, build, prove, ship.</desc>
4
+ <rect width="1280" height="720" fill="#f8fafc"/>
5
+ <rect x="72" y="72" width="1136" height="576" rx="8" fill="#ffffff" stroke="#d6dee8" stroke-width="2"/>
6
+ <image href="../1.svg" x="104" y="104" width="168" height="168" preserveAspectRatio="xMidYMid meet"/>
7
+ <text x="312" y="158" fill="#0f172a" font-family="Inter, Arial, sans-serif" font-size="76" font-weight="800">Supered</text>
8
+ <text x="316" y="214" fill="#4b5563" font-family="Inter, Arial, sans-serif" font-size="30" font-weight="500">shape, build, prove, ship</text>
9
+ <g font-family="Inter, Arial, sans-serif">
10
+ <rect x="112" y="354" width="236" height="170" rx="8" fill="#f8fafc" stroke="#d6dee8"/>
11
+ <rect x="380" y="354" width="236" height="170" rx="8" fill="#f8fafc" stroke="#d6dee8"/>
12
+ <rect x="648" y="354" width="236" height="170" rx="8" fill="#f8fafc" stroke="#d6dee8"/>
13
+ <rect x="916" y="354" width="236" height="170" rx="8" fill="#f8fafc" stroke="#d6dee8"/>
14
+ <text x="136" y="412" fill="#dc2626" font-size="22" font-weight="800">01</text>
15
+ <text x="404" y="412" fill="#dc2626" font-size="22" font-weight="800">02</text>
16
+ <text x="672" y="412" fill="#dc2626" font-size="22" font-weight="800">03</text>
17
+ <text x="940" y="412" fill="#dc2626" font-size="22" font-weight="800">04</text>
18
+ <text x="136" y="464" fill="#0f172a" font-size="34" font-weight="800">Shape</text>
19
+ <text x="404" y="464" fill="#0f172a" font-size="34" font-weight="800">Build</text>
20
+ <text x="672" y="464" fill="#0f172a" font-size="34" font-weight="800">Prove</text>
21
+ <text x="940" y="464" fill="#0f172a" font-size="34" font-weight="800">Ship</text>
22
+ <path d="M330 439h50" stroke="#0ea5a3" stroke-width="7" stroke-linecap="round"/>
23
+ <path d="M598 439h50" stroke="#0ea5a3" stroke-width="7" stroke-linecap="round"/>
24
+ <path d="M866 439h50" stroke="#0ea5a3" stroke-width="7" stroke-linecap="round"/>
25
+ </g>
26
+ </svg>
@@ -0,0 +1,24 @@
1
+ # Supered Roadmap
2
+
3
+ ## v0.1
4
+
5
+ - Public repository with MIT license.
6
+ - Codex, Claude, Cursor, and Gemini starter metadata.
7
+ - Seven core skills covering task shaping, planning, building, debugging, proving, and shipping.
8
+ - CLI validation and smoke install checks.
9
+ - GitHub Pages landing page.
10
+ - One-line installer plus host-specific docs.
11
+ - Browser site verification.
12
+
13
+ ## v0.2
14
+
15
+ - Example transcripts showing Supered workflows in practice.
16
+ - A compatibility checklist for marketplace submission.
17
+ - Marketplace packaging experiments for supported hosts.
18
+ - Install troubleshooting guide for custom skill directories.
19
+
20
+ ## v0.3
21
+
22
+ - Skill authoring guide with contribution tests.
23
+ - Release automation for tags, notes, and metadata checks.
24
+ - Optional templates for repo launch checklists.
@@ -0,0 +1,19 @@
1
+ # Skill Format
2
+
3
+ Each Supered skill is a folder containing `SKILL.md`.
4
+
5
+ The file starts with YAML-style frontmatter:
6
+
7
+ ```md
8
+ ---
9
+ name: skill-name
10
+ description: Use when...
11
+ ---
12
+ ```
13
+
14
+ The body should include:
15
+
16
+ - a short overview
17
+ - when to use the skill
18
+ - the operating steps
19
+ - the evidence expected before the agent moves on
@@ -0,0 +1,287 @@
1
+ :root {
2
+ color-scheme: light;
3
+ --ink: #111827;
4
+ --muted: #4b5563;
5
+ --paper: #f8fafc;
6
+ --line: #d6dee8;
7
+ --teal: #0ea5a3;
8
+ --orange: #f97316;
9
+ --red: #dc2626;
10
+ --navy: #0f172a;
11
+ }
12
+
13
+ * {
14
+ box-sizing: border-box;
15
+ }
16
+
17
+ html {
18
+ scroll-behavior: smooth;
19
+ }
20
+
21
+ body {
22
+ margin: 0;
23
+ background: var(--paper);
24
+ color: var(--ink);
25
+ font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
26
+ }
27
+
28
+ a {
29
+ color: inherit;
30
+ text-decoration: none;
31
+ }
32
+
33
+ .topbar {
34
+ align-items: center;
35
+ background: rgba(248, 250, 252, 0.94);
36
+ border-bottom: 1px solid var(--line);
37
+ display: flex;
38
+ justify-content: space-between;
39
+ min-height: 64px;
40
+ padding: 0 32px;
41
+ position: sticky;
42
+ top: 0;
43
+ z-index: 10;
44
+ }
45
+
46
+ .brand {
47
+ align-items: center;
48
+ display: inline-flex;
49
+ font-weight: 800;
50
+ gap: 10px;
51
+ }
52
+
53
+ .brand img {
54
+ border-radius: 8px;
55
+ height: 36px;
56
+ object-fit: contain;
57
+ width: 36px;
58
+ }
59
+
60
+ nav {
61
+ display: flex;
62
+ gap: 22px;
63
+ color: var(--muted);
64
+ font-size: 15px;
65
+ font-weight: 650;
66
+ }
67
+
68
+ nav a:hover {
69
+ color: var(--teal);
70
+ }
71
+
72
+ .hero {
73
+ align-items: center;
74
+ display: grid;
75
+ gap: 48px;
76
+ grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
77
+ min-height: calc(100vh - 96px);
78
+ padding: 62px clamp(24px, 6vw, 84px) 48px;
79
+ }
80
+
81
+ .hero-copy {
82
+ max-width: 760px;
83
+ }
84
+
85
+ .eyebrow {
86
+ color: var(--red);
87
+ font-size: 14px;
88
+ font-weight: 800;
89
+ letter-spacing: 0;
90
+ margin: 0 0 12px;
91
+ text-transform: uppercase;
92
+ }
93
+
94
+ h1,
95
+ h2,
96
+ h3,
97
+ p {
98
+ margin-top: 0;
99
+ }
100
+
101
+ h1 {
102
+ color: var(--navy);
103
+ font-size: 128px;
104
+ letter-spacing: 0;
105
+ line-height: 0.86;
106
+ margin-bottom: 26px;
107
+ }
108
+
109
+ h2 {
110
+ color: var(--navy);
111
+ font-size: 64px;
112
+ letter-spacing: 0;
113
+ line-height: 0.98;
114
+ margin-bottom: 18px;
115
+ }
116
+
117
+ h3 {
118
+ color: var(--navy);
119
+ font-size: 24px;
120
+ letter-spacing: 0;
121
+ margin-bottom: 8px;
122
+ }
123
+
124
+ .lede {
125
+ color: var(--muted);
126
+ font-size: 32px;
127
+ line-height: 1.16;
128
+ margin-bottom: 34px;
129
+ max-width: 820px;
130
+ }
131
+
132
+ .actions {
133
+ display: flex;
134
+ flex-wrap: wrap;
135
+ gap: 12px;
136
+ }
137
+
138
+ .button {
139
+ align-items: center;
140
+ border: 1px solid var(--navy);
141
+ border-radius: 8px;
142
+ display: inline-flex;
143
+ font-size: 16px;
144
+ font-weight: 750;
145
+ min-height: 48px;
146
+ padding: 0 18px;
147
+ }
148
+
149
+ .button.primary {
150
+ background: var(--navy);
151
+ color: white;
152
+ }
153
+
154
+ .button.secondary {
155
+ background: white;
156
+ color: var(--navy);
157
+ }
158
+
159
+ .button:hover {
160
+ border-color: var(--teal);
161
+ }
162
+
163
+ .hero-media {
164
+ display: grid;
165
+ justify-items: center;
166
+ }
167
+
168
+ .hero-media img {
169
+ border: 1px solid var(--line);
170
+ border-radius: 8px;
171
+ box-shadow: 0 22px 70px rgba(15, 23, 42, 0.14);
172
+ max-height: min(56vh, 560px);
173
+ max-width: 100%;
174
+ object-fit: contain;
175
+ width: min(560px, 100%);
176
+ }
177
+
178
+ .workflow,
179
+ .install {
180
+ border-top: 1px solid var(--line);
181
+ padding: 68px clamp(24px, 6vw, 84px);
182
+ }
183
+
184
+ .section-head {
185
+ max-width: 820px;
186
+ }
187
+
188
+ .steps {
189
+ display: grid;
190
+ gap: 16px;
191
+ grid-template-columns: repeat(4, minmax(0, 1fr));
192
+ margin-top: 34px;
193
+ }
194
+
195
+ .steps article {
196
+ background: white;
197
+ border: 1px solid var(--line);
198
+ border-radius: 8px;
199
+ min-height: 190px;
200
+ padding: 22px;
201
+ }
202
+
203
+ .steps span {
204
+ color: var(--orange);
205
+ display: inline-block;
206
+ font-size: 13px;
207
+ font-weight: 850;
208
+ margin-bottom: 34px;
209
+ }
210
+
211
+ .steps p,
212
+ .install p {
213
+ color: var(--muted);
214
+ font-size: 18px;
215
+ line-height: 1.45;
216
+ }
217
+
218
+ .install {
219
+ align-items: start;
220
+ display: grid;
221
+ gap: 32px;
222
+ grid-template-columns: minmax(0, 0.8fr) minmax(320px, 1.2fr);
223
+ }
224
+
225
+ pre {
226
+ background: var(--navy);
227
+ border-radius: 8px;
228
+ color: white;
229
+ margin: 0;
230
+ overflow-wrap: anywhere;
231
+ overflow-x: hidden;
232
+ padding: 24px;
233
+ white-space: pre-wrap;
234
+ }
235
+
236
+ code {
237
+ font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
238
+ font-size: 15px;
239
+ line-height: 1.65;
240
+ white-space: pre-wrap;
241
+ word-break: break-word;
242
+ }
243
+
244
+ @media (max-width: 860px) {
245
+ .topbar {
246
+ align-items: flex-start;
247
+ flex-direction: column;
248
+ gap: 12px;
249
+ padding: 16px 20px;
250
+ position: static;
251
+ }
252
+
253
+ nav {
254
+ flex-wrap: wrap;
255
+ gap: 14px;
256
+ }
257
+
258
+ .hero,
259
+ .install {
260
+ grid-template-columns: 1fr;
261
+ }
262
+
263
+ .hero {
264
+ min-height: auto;
265
+ padding-top: 38px;
266
+ }
267
+
268
+ .steps {
269
+ grid-template-columns: 1fr;
270
+ }
271
+
272
+ .hero-media {
273
+ justify-items: start;
274
+ }
275
+
276
+ h1 {
277
+ font-size: 68px;
278
+ }
279
+
280
+ h2 {
281
+ font-size: 38px;
282
+ }
283
+
284
+ .lede {
285
+ font-size: 23px;
286
+ }
287
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "supered",
3
+ "version": "0.1.3",
4
+ "description": "A compact workflow kit for agentic coding sessions.",
5
+ "mcpServers": {},
6
+ "contextFileName": "GEMINI.md"
7
+ }
package/install.sh ADDED
@@ -0,0 +1,106 @@
1
+ #!/bin/sh
2
+ set -eu
3
+
4
+ SUPERED_REPO="${SUPERED_REPO:-https://github.com/fhajjej-ship-it/Supered}"
5
+ SUPERED_REF="${SUPERED_REF:-main}"
6
+ SUPERED_TARGET="${SUPERED_TARGET:-codex}"
7
+ SUPERED_SOURCE_DIR="${SUPERED_SOURCE_DIR:-}"
8
+ SUPERED_DEST="${SUPERED_DEST:-}"
9
+
10
+ usage() {
11
+ cat <<'EOF'
12
+ Install Supered skills.
13
+
14
+ One-line install:
15
+ curl -fsSL https://raw.githubusercontent.com/fhajjej-ship-it/Supered/main/install.sh | sh
16
+
17
+ Options:
18
+ --target codex|claude|cursor|gemini|opencode
19
+ --dest PATH
20
+ --ref REF
21
+ --help
22
+
23
+ Environment:
24
+ SUPERED_TARGET Install target. Defaults to codex.
25
+ SUPERED_DEST Override destination directory.
26
+ SUPERED_REF Git ref to install. Defaults to main.
27
+ SUPERED_SOURCE_DIR Local checkout to install from, used by tests and local development.
28
+ EOF
29
+ }
30
+
31
+ die() {
32
+ printf '%s\n' "$*" >&2
33
+ exit 1
34
+ }
35
+
36
+ while [ "$#" -gt 0 ]; do
37
+ case "$1" in
38
+ --target)
39
+ [ "$#" -ge 2 ] || die "--target requires a value"
40
+ SUPERED_TARGET="$2"
41
+ shift 2
42
+ ;;
43
+ --dest)
44
+ [ "$#" -ge 2 ] || die "--dest requires a value"
45
+ SUPERED_DEST="$2"
46
+ shift 2
47
+ ;;
48
+ --ref)
49
+ [ "$#" -ge 2 ] || die "--ref requires a value"
50
+ SUPERED_REF="$2"
51
+ shift 2
52
+ ;;
53
+ --help|-h)
54
+ usage
55
+ exit 0
56
+ ;;
57
+ *)
58
+ die "Unknown option: $1"
59
+ ;;
60
+ esac
61
+ done
62
+
63
+ default_dest() {
64
+ case "$SUPERED_TARGET" in
65
+ codex) printf '%s/.codex/skills\n' "$HOME" ;;
66
+ claude) printf '%s/.claude/skills\n' "$HOME" ;;
67
+ cursor) printf '%s/.cursor/skills\n' "$HOME" ;;
68
+ gemini) printf '%s/.gemini/skills\n' "$HOME" ;;
69
+ opencode) printf '%s/.opencode/skills\n' "$HOME" ;;
70
+ *) die "Unsupported target: $SUPERED_TARGET" ;;
71
+ esac
72
+ }
73
+
74
+ download_source() {
75
+ tmp_dir="$(mktemp -d "${TMPDIR:-/tmp}/supered.XXXXXX")"
76
+ archive="$tmp_dir/supered.tar.gz"
77
+ url="https://codeload.github.com/fhajjej-ship-it/Supered/tar.gz/$SUPERED_REF"
78
+
79
+ if command -v curl >/dev/null 2>&1; then
80
+ curl -fsSL "$url" -o "$archive"
81
+ elif command -v wget >/dev/null 2>&1; then
82
+ wget -qO "$archive" "$url"
83
+ else
84
+ die "Install requires curl or wget"
85
+ fi
86
+
87
+ tar -xzf "$archive" -C "$tmp_dir"
88
+ find "$tmp_dir" -mindepth 1 -maxdepth 1 -type d | head -n 1
89
+ }
90
+
91
+ source_dir="$SUPERED_SOURCE_DIR"
92
+ if [ -z "$source_dir" ]; then
93
+ source_dir="$(download_source)"
94
+ fi
95
+
96
+ [ -d "$source_dir/skills" ] || die "Could not find skills in $source_dir"
97
+
98
+ dest="$SUPERED_DEST"
99
+ if [ -z "$dest" ]; then
100
+ dest="$(default_dest)"
101
+ fi
102
+
103
+ mkdir -p "$dest"
104
+ cp -R "$source_dir/skills/." "$dest/"
105
+
106
+ printf 'Installed Supered for %s at %s\n' "$SUPERED_TARGET" "$dest"