agentic-web-developer 1.0.1 → 1.0.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.
- package/README.md +202 -128
- package/bin/install.js +50 -0
- package/docs/INSTALL.md +151 -147
- package/docs/LICENSING.md +130 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,128 +1,202 @@
|
|
|
1
|
-
# agentic-web-developer
|
|
2
|
-
|
|
3
|
-
An **agentic skill** that turns an AI coding agent into a complete web-development and website-selling system
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
- **
|
|
14
|
-
- **
|
|
15
|
-
- **
|
|
16
|
-
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
1
|
+
# agentic-web-developer
|
|
2
|
+
|
|
3
|
+
An **agentic skill** that turns an AI coding agent into a complete web-development and website-selling system
|
|
4
|
+
|
|
5
|
+
Plus a **novel-idea / product-launch mode** for websites not covered by the videos (SaaS, products, marketplaces).
|
|
6
|
+
|
|
7
|
+
And a **Mode C** for advanced 3D / WebGL sites — cinematic Three.js builds in the style of Kage and Towers.
|
|
8
|
+
|
|
9
|
+
> **Licensed — Pro plan ($7/month).** The skill validates an Animotion **Pro key** (or staff admin credentials) once per session before doing any work. [](https://skills.animotion.click/checkout?plan=pro) [](https://skills.animotion.click/checkout?plan=studio) — payment steps, install-with-key commands and credential setup: **[License & unlocking](#license--unlocking-the-skill)** · full guide **[docs/LICENSING.md](docs/LICENSING.md)**.
|
|
10
|
+
|
|
11
|
+
## What you get
|
|
12
|
+
|
|
13
|
+
- **Stage-gated pipeline** (Intake → Niche → Research → Design → Build → QA → Animation handoff → Deploy → Sell) where the agent **asks for your input at every step** — it never runs ahead on assumptions.
|
|
14
|
+
- **Three modes** — Mode A build-and-sell, Mode B novel idea / product launch, Mode C advanced 3D / WebGL experience.
|
|
15
|
+
- **Design-tool agnostic** — Figma, Paper, Google Stitch, Google AI Studio, Framer or code-first. You supply the credentials/MCP for your tool of choice.
|
|
16
|
+
- **Framework agnostic** — Next.js, React, Vue, Svelte, Astro, plain HTML, WordPress, GoHighLevel — you pick.
|
|
17
|
+
- **All animation is delegated** to the [AnimotionJS agentic skill](https://skills.animotion.click/checkout) — this skill never writes animation code itself.
|
|
18
|
+
- 11 reference playbooks + 5 ready-to-fill templates (builder brief, scaffold HTML, `siteconfig.ts`, outlier anatomy, 3D scene brief).
|
|
19
|
+
|
|
20
|
+
## Install
|
|
21
|
+
|
|
22
|
+
Full guide (per-agent paths, manual install, uninstall): **[docs/INSTALL.md](docs/INSTALL.md)** — worked examples of both modes: **[docs/EXAMPLES.md](docs/EXAMPLES.md)**.
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
# auto-detect your agent (opencode → claude → any detected agent)
|
|
26
|
+
npx agentic-web-developer install
|
|
27
|
+
|
|
28
|
+
# or target one of the 15 supported agents
|
|
29
|
+
npx agentic-web-developer install --agent=opencode
|
|
30
|
+
npx agentic-web-developer install --agent=claude
|
|
31
|
+
|
|
32
|
+
# or install for every detected agent at once
|
|
33
|
+
npx agentic-web-developer install --all
|
|
34
|
+
|
|
35
|
+
# see what's installed where
|
|
36
|
+
npx agentic-web-developer detect
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Other flags: `--license-key=<key>` (save your Pro key during install — see [License & unlocking](#license--unlocking-the-skill)), `--admin-email` / `--admin-secret` (staff), `--force` (overwrite), `--dry-run` (print targets only), `--dir=<path>` (custom destination), `--source=<url|path>` / `--token=<key>` (skill source).
|
|
40
|
+
|
|
41
|
+
Then **restart your AI agent** so it loads the skill.
|
|
42
|
+
|
|
43
|
+
> **On first run the skill asks for its Pro license key** (or admin credentials) and validates it once per session — or pass it up front with `--license-key=…` and skip the prompt. See [License & unlocking](#license--unlocking-the-skill).
|
|
44
|
+
|
|
45
|
+
> **Where does the skill come from?** Not from npm — the package ships only the installer and docs. The installer fetches the skill from a source you configure (`--source`, `AWD_SOURCE`, or the author's `awd.source` in `package.json`). See [docs/INSTALL.md § Skill source](docs/INSTALL.md#skill-source).
|
|
46
|
+
|
|
47
|
+
### Supported agents
|
|
48
|
+
|
|
49
|
+
`opencode` · `claude` · `copilot` · `cursor` · `windsurf` · `codex` · `cline` · `roo` · `cody` · `codium` · `aider` · `continue` · `augment` · `amazonq` · `jetbrains`
|
|
50
|
+
|
|
51
|
+
The installer writes **each agent's own file format** with the right frontmatter — `SKILL.md` for skill agents, `skill.md` for Windsurf/Codium, `rules/*.mdc` for Cursor, `rules/*.md` for Continue/Augment/Amazon Q, `CONVENTIONS.md` for Aider — and puts the `references/` + `templates/` payload where that agent can read it. Same 15 agents as the AnimotionJS skill.
|
|
52
|
+
|
|
53
|
+
### Manual install (no CLI)
|
|
54
|
+
|
|
55
|
+
See **[docs/INSTALL.md](docs/INSTALL.md#manual-install-no-cli)** — per-agent copy instructions for all 15 agents.
|
|
56
|
+
|
|
57
|
+
## License & unlocking the skill
|
|
58
|
+
|
|
59
|
+
The skill ships behind the **Animotion Pro plan — $7/month**. One validation per session (cached 7 days) runs before any pipeline work; without it the skill refuses to start.
|
|
60
|
+
|
|
61
|
+
### How to pay for Pro
|
|
62
|
+
|
|
63
|
+
1. **Click a Get Pro button** (top of this README or above) — opens [`skills.animotion.click/checkout?plan=pro`](https://skills.animotion.click/checkout?plan=pro) with Pro preselected ($7/month). Studio ($15/month) also unlocks this skill *and* the AnimotionJS animation skill you need at Stage 8.
|
|
64
|
+
2. **Enter your email** — the license is tied to it.
|
|
65
|
+
3. **Continue to Payment** → Stripe's hosted checkout (card).
|
|
66
|
+
4. **Confirm** — monthly, cancel anytime.
|
|
67
|
+
5. **Copy your key** (`sec_live_…`) from the confirmation page.
|
|
68
|
+
|
|
69
|
+
### How to give the skill your key (or admin credentials)
|
|
70
|
+
|
|
71
|
+
Pick one — the gate looks for environment variables first, then the installer's config file, then asks you once:
|
|
72
|
+
|
|
73
|
+
**1. Install the skill with your key (recommended — one command, everything wired)**
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
npx agentic-web-developer install --agent=<your-agent> --license-key=YOUR_KEY
|
|
77
|
+
|
|
78
|
+
# or install for every detected agent at once:
|
|
79
|
+
npx agentic-web-developer install --all --license-key=YOUR_KEY
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
With **admin credentials instead of a license key** (Animotion staff / whitelisted emails only):
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
npx agentic-web-developer install --agent=<your-agent> --admin-email=you@example.com --admin-secret=YOUR_ADMIN_SECRET
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
`<your-agent>` is one of the [15 supported agents](#supported-agents) — `opencode`, `claude`, `copilot`, `cursor`, … The installer writes `animotion-config.json` into the installed skill folder with your key (or admin pair), and the gate reads that file automatically — nothing else to configure. The key must be on the **Pro plan** ($7/month) or higher.
|
|
89
|
+
|
|
90
|
+
**2. Environment variable**
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
# bash / zsh — add to ~/.bashrc or ~/.zshrc
|
|
94
|
+
export AGENTIC_LICENSE_KEY="sec_live_xxxxxxxx"
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
```powershell
|
|
98
|
+
# PowerShell — persistent (open a new terminal afterwards)
|
|
99
|
+
setx AGENTIC_LICENSE_KEY "sec_live_xxxxxxxx"
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
`ANIMOTION_LICENSE_KEY` works as an alias — one variable serves this skill and the Animotion installer.
|
|
103
|
+
|
|
104
|
+
**3. `animotion-config.json` by hand** — same file the installer writes (gate search paths: the skill directory, its parent dir, `~/.animotion-skills/`, or the path in `AGENTIC_LICENSE_CONFIG`):
|
|
105
|
+
|
|
106
|
+
```json
|
|
107
|
+
{
|
|
108
|
+
"tier": "pro",
|
|
109
|
+
"requiredPlan": "pro",
|
|
110
|
+
"authMethod": "license",
|
|
111
|
+
"licenseKey": "sec_live_xxxxxxxx"
|
|
112
|
+
}
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
**4. Admin credentials via environment** (Animotion staff / whitelisted emails only) — `AGENTIC_ADMIN_EMAIL` + `AGENTIC_ADMIN_SECRET`. Never commit these; everyone else should use a personal Pro key.
|
|
116
|
+
|
|
117
|
+
**5. Ask in-session** — with nothing found, the skill asks once (via its question tool); paste the key and it validates immediately.
|
|
118
|
+
|
|
119
|
+
### What happens at runtime
|
|
120
|
+
|
|
121
|
+
The skill calls `POST https://skills.animotion.click/api/license/validate` with `{ "skill": "agentic-web-developer", "plan": "pro" }` and your key (or admin pair). On success the verdict is cached at `~/.animotion-skills/cache/agentic-web-developer-verdict.json` for 7 days; offline sessions reuse a fresh cache. Full troubleshooting (invalid key, wrong plan, expired cache, local dev server): **[docs/LICENSING.md](docs/LICENSING.md)**.
|
|
122
|
+
|
|
123
|
+
You can also download the skill files directly with your key or admin pair — copy-paste commands in [docs/LICENSING.md § Install the skill files](docs/LICENSING.md#install-the-skill-files-license-key-or-admin-credentials).
|
|
124
|
+
|
|
125
|
+
## Animations are a separate skill (required to finish a site)
|
|
126
|
+
|
|
127
|
+
Every website built with this skill gets its **animations and interactions from the AnimotionJS agentic skill** — hero reveals, scroll effects, hover states, counters, parallax, text FX. Install it too:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
npx animotion-skills install --tier=agentic --agent=<your-agent> --license-key=YOUR_KEY
|
|
131
|
+
# or for all detected agents:
|
|
132
|
+
npx animotion-skills install --tier=agentic --all --license-key=YOUR_KEY
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
- License key (Studio plan, $15/month): https://skills.animotion.click/checkout
|
|
136
|
+
- Local source on the author's machine: `C:\Users\creat\Projects\Animotionjs\animotion-skills`
|
|
137
|
+
|
|
138
|
+
Without it, the skill will still design and build — but it will stop at Stage 8 and ask you to install Animotion before any motion work.
|
|
139
|
+
|
|
140
|
+
## Using the skill
|
|
141
|
+
|
|
142
|
+
Just talk to your agent:
|
|
143
|
+
|
|
144
|
+
> "Build me a website that converts for my pool cleaning business"
|
|
145
|
+
> "Launch a product website for my new SaaS idea"
|
|
146
|
+
> "Build me an immersive 3D website"
|
|
147
|
+
> "Use the agentic-web-developer skill"
|
|
148
|
+
|
|
149
|
+
The agent classifies the project (Mode A: build-and-sell, Mode B: novel idea, Mode C: advanced 3D/WebGL), then walks you through every gate.
|
|
150
|
+
|
|
151
|
+
## Project layout
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
agentic-web-developer/
|
|
155
|
+
├── package.json # npm manifest (bin: agentic-web-developer, awd.source)
|
|
156
|
+
├── bin/install.js # zero-dependency installer CLI (all 15 agents, per-agent formats)
|
|
157
|
+
├── skill/ # ← the skill itself (source of truth; never published)
|
|
158
|
+
│ ├── SKILL.md
|
|
159
|
+
│ ├── references/ # 11 playbooks (incl. licensing.md)
|
|
160
|
+
│ └── templates/ # 5 fill-in templates (incl. 3D scene brief)
|
|
161
|
+
├── docs/ # ← the only content tracked in Git
|
|
162
|
+
│ ├── INSTALL.md # install guide for all 15 agents
|
|
163
|
+
│ ├── EXAMPLES.md # worked walkthroughs: Mode A + Mode B
|
|
164
|
+
│ └── LICENSING.md # Pro plan, payment steps, key/admin credentials
|
|
165
|
+
└── README.md # ← tracked in Git
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
> **Git vs npm vs skill source — nothing public carries your source:**
|
|
169
|
+
> - **Git:** only `README.md` and `docs/` are visible (`.gitignore` hides the rest).
|
|
170
|
+
> - **npm:** only the installer + docs are published (npm tarballs are public forever, so `skill/` is excluded) — set `awd.source` in `package.json` before publishing.
|
|
171
|
+
> - **Skill source:** `skill/` is fetched by the installer from the URL/path you configure (`--source`, `AWD_SOURCE`, or `awd.source`), with `--token`/`AWD_TOKEN` for private hosts.
|
|
172
|
+
|
|
173
|
+
## Development
|
|
174
|
+
|
|
175
|
+
Edit files under `skill/`, then refresh your local opencode install:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
node bin/install.js install --agent=opencode --force
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
Check the package contents before publishing:
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
npm run pack:check
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
## Publishing to npm
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
# 1. point the installer at your private skill source first (never published to npm)
|
|
191
|
+
# edit package.json -> "awd": { "source": "https://api.github.com/repos/YOU/REPO/tarball/main" }
|
|
192
|
+
# (end users pass the token: AWD_TOKEN=... npx agentic-web-developer install)
|
|
193
|
+
|
|
194
|
+
npm login # once, with your npm account
|
|
195
|
+
npm publish # publishes bin + docs only (publishConfig.access = "public")
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
Bump `version` in `package.json` for every update, then `npm publish` again.
|
|
199
|
+
|
|
200
|
+
## License
|
|
201
|
+
|
|
202
|
+
UNLICENSED — all rights reserved by the author. Replace the `license` field in `package.json` and add a LICENSE file if you intend to distribute it under a specific license.
|
package/bin/install.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* agentic-web-developer installer
|
|
4
4
|
*
|
|
5
5
|
* npx agentic-web-developer install [--agent=<key>|all] [--source=<url|path>] [--token=<key>]
|
|
6
|
+
* [--license-key=<key> | --admin-email=<e> --admin-secret=<s>]
|
|
6
7
|
* [--force] [--dry-run] [--dir=<path>]
|
|
7
8
|
* npx agentic-web-developer detect
|
|
8
9
|
*
|
|
@@ -246,6 +247,39 @@ function installPayload(payloadDir, skillDir) {
|
|
|
246
247
|
copyRecursive(path.join(skillDir, "templates"), path.join(payloadDir, "templates"));
|
|
247
248
|
}
|
|
248
249
|
|
|
250
|
+
/* ------------------------- license config (the gate) ----------------------- */
|
|
251
|
+
|
|
252
|
+
function licenseFlagsPresent() {
|
|
253
|
+
return Boolean(flags["license-key"] || flags["admin-email"] || flags["admin-secret"]);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
function validateLicenseFlags() {
|
|
257
|
+
const key = flags["license-key"];
|
|
258
|
+
const adminEmail = flags["admin-email"];
|
|
259
|
+
const adminSecret = flags["admin-secret"];
|
|
260
|
+
if (key && (adminEmail || adminSecret)) {
|
|
261
|
+
throw new Error("--license-key cannot be combined with --admin-email/--admin-secret");
|
|
262
|
+
}
|
|
263
|
+
if ((adminEmail && !adminSecret) || (!adminEmail && adminSecret)) {
|
|
264
|
+
throw new Error("--admin-email and --admin-secret must be provided together");
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
// Writes animotion-config.json into the installed skill folder — the file the
|
|
269
|
+
// agentic-web-developer license gate reads (skill dir first, then its parent,
|
|
270
|
+
// ~/.animotion-skills/, AGENTIC_LICENSE_CONFIG).
|
|
271
|
+
function writeLicenseConfig(payloadDir) {
|
|
272
|
+
if (!licenseFlagsPresent()) return null;
|
|
273
|
+
const cfg = flags["admin-email"]
|
|
274
|
+
? { tier: "pro", requiredPlan: "pro", authMethod: "admin", adminEmail: flags["admin-email"], adminSecret: flags["admin-secret"] }
|
|
275
|
+
: { tier: "pro", requiredPlan: "pro", authMethod: "license", licenseKey: flags["license-key"] };
|
|
276
|
+
const file = path.join(payloadDir, "animotion-config.json");
|
|
277
|
+
fs.mkdirSync(payloadDir, { recursive: true });
|
|
278
|
+
fs.writeFileSync(file, `${JSON.stringify(cfg, null, 2)}\n`);
|
|
279
|
+
try { fs.chmodSync(file, 0o600); } catch { /* best-effort; Windows ignores */ }
|
|
280
|
+
return file;
|
|
281
|
+
}
|
|
282
|
+
|
|
249
283
|
/* ---------------- skill source resolution (private fetch) ---------------- */
|
|
250
284
|
|
|
251
285
|
function expandHome(p) {
|
|
@@ -409,6 +443,7 @@ function detect() {
|
|
|
409
443
|
}
|
|
410
444
|
|
|
411
445
|
async function install() {
|
|
446
|
+
validateLicenseFlags();
|
|
412
447
|
const skillDir = await resolveSource();
|
|
413
448
|
const { body, description } = readSource(skillDir);
|
|
414
449
|
|
|
@@ -439,6 +474,7 @@ async function install() {
|
|
|
439
474
|
console.log(`[dry-run] ${agent.name} (${key})`);
|
|
440
475
|
console.log(` main: ${mainFile}`);
|
|
441
476
|
console.log(` refs: ${payloadDir}{/references, /templates}`);
|
|
477
|
+
if (licenseFlagsPresent()) console.log(` lic: ${path.join(payloadDir, "animotion-config.json")}`);
|
|
442
478
|
done++;
|
|
443
479
|
continue;
|
|
444
480
|
}
|
|
@@ -452,6 +488,8 @@ async function install() {
|
|
|
452
488
|
}
|
|
453
489
|
}
|
|
454
490
|
console.log(`skip ${agent.name}: already installed at ${mainFile} (use --force to overwrite)`);
|
|
491
|
+
const existingCfg = writeLicenseConfig(payloadDir);
|
|
492
|
+
if (existingCfg) console.log(` license config: ${existingCfg}`);
|
|
455
493
|
continue;
|
|
456
494
|
}
|
|
457
495
|
|
|
@@ -471,15 +509,20 @@ async function install() {
|
|
|
471
509
|
}
|
|
472
510
|
fs.mkdirSync(path.dirname(mainFile), { recursive: true });
|
|
473
511
|
fs.writeFileSync(mainFile, content);
|
|
512
|
+
const cfgFile = writeLicenseConfig(payloadDir);
|
|
474
513
|
console.log(`installed ${agent.name} (${key})`);
|
|
475
514
|
console.log(` main: ${mainFile}`);
|
|
476
515
|
console.log(` refs: ${payloadDir}`);
|
|
516
|
+
if (cfgFile) console.log(` license config: ${cfgFile}`);
|
|
477
517
|
done++;
|
|
478
518
|
}
|
|
479
519
|
|
|
480
520
|
if (!done) {
|
|
481
521
|
console.log("nothing installed — everything already present (use --force to overwrite)");
|
|
482
522
|
} else if (!flags["dry-run"]) {
|
|
523
|
+
if (licenseFlagsPresent()) {
|
|
524
|
+
console.log("\nLicense saved — the skill's gate reads animotion-config.json automatically.");
|
|
525
|
+
}
|
|
483
526
|
console.log(`\nDone. Restart your AI agent so it loads ${SKILL_NAME}.`);
|
|
484
527
|
console.log("Animations for any site built with this skill are handled by the AnimotionJS agentic skill:");
|
|
485
528
|
console.log(" npx animotion-skills install --tier=agentic --agent=<agent> --license-key=YOUR_KEY");
|
|
@@ -520,6 +563,12 @@ Options:
|
|
|
520
563
|
--source=<s> Skill source: a .tar.gz/.zip URL or a local folder/archive
|
|
521
564
|
(falls back to AWD_SOURCE, then skill/, then awd.source)
|
|
522
565
|
--token=<key> Auth token for a private source (or AWD_TOKEN=<key>)
|
|
566
|
+
--license-key=<key>
|
|
567
|
+
Save your Pro license key to the installed skill
|
|
568
|
+
(writes animotion-config.json the license gate reads)
|
|
569
|
+
--admin-email=<e> --admin-secret=<s>
|
|
570
|
+
Admin credentials instead of a key (Animotion staff /
|
|
571
|
+
whitelisted emails only — both flags required together)
|
|
523
572
|
--force Overwrite an existing install
|
|
524
573
|
--dry-run Print target paths without copying
|
|
525
574
|
--dir=<path> Install into <path>/${SKILL_NAME} (flat, SKILL.md layout)
|
|
@@ -540,6 +589,7 @@ Each agent gets its own file format:
|
|
|
540
589
|
|
|
541
590
|
Examples:
|
|
542
591
|
npx ${SKILL_NAME} install # auto-detect agent
|
|
592
|
+
npx ${SKILL_NAME} install --agent=opencode --license-key=sec_live_xxxxxxxx
|
|
543
593
|
npx ${SKILL_NAME} install --agent=all --source=https://you/server/skill.tar.gz --token=KEY
|
|
544
594
|
npx ${SKILL_NAME} detect
|
|
545
595
|
`);
|
package/docs/INSTALL.md
CHANGED
|
@@ -1,147 +1,151 @@
|
|
|
1
|
-
# Installing agentic-web-developer
|
|
2
|
-
|
|
3
|
-
The skill installs into **15 AI coding agents** — the same 15 the AnimotionJS skill supports. The installer writes each agent's own file format (`SKILL.md`, `skill.md`, a rules file, or `CONVENTIONS.md`) with the right frontmatter, plus the reference playbooks and templates alongside it.
|
|
4
|
-
|
|
5
|
-
> **The npm package contains only the installer and these docs** — never the skill source. The installer fetches the skill payload from a *skill source* you configure (see [Skill source](#skill-source)).
|
|
6
|
-
|
|
7
|
-
## Quick start
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
# auto-detect your agent (opencode -> claude -> any detected agent)
|
|
11
|
-
npx agentic-web-developer install
|
|
12
|
-
|
|
13
|
-
# target one agent by key
|
|
14
|
-
npx agentic-web-developer install --agent=claude
|
|
15
|
-
|
|
16
|
-
# install for every supported agent at once
|
|
17
|
-
npx agentic-web-developer install --all
|
|
18
|
-
|
|
19
|
-
# see what's installed, and where
|
|
20
|
-
npx agentic-web-developer detect
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
Then **restart your AI agent** so it loads the skill.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
|
30
|
-
|
|
31
|
-
| `--
|
|
32
|
-
| `--
|
|
33
|
-
| `--
|
|
34
|
-
| `--
|
|
35
|
-
| `--
|
|
36
|
-
| `--
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
|
76
|
-
|
|
77
|
-
| `
|
|
78
|
-
| `
|
|
79
|
-
| `
|
|
80
|
-
| `
|
|
81
|
-
| `
|
|
82
|
-
| `
|
|
83
|
-
| `
|
|
84
|
-
| `
|
|
85
|
-
| `
|
|
86
|
-
| `
|
|
87
|
-
| `
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
- **
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
rm -rf ~/.
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
-
|
|
137
|
-
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
1
|
+
# Installing agentic-web-developer
|
|
2
|
+
|
|
3
|
+
The skill installs into **15 AI coding agents** — the same 15 the AnimotionJS skill supports. The installer writes each agent's own file format (`SKILL.md`, `skill.md`, a rules file, or `CONVENTIONS.md`) with the right frontmatter, plus the reference playbooks and templates alongside it.
|
|
4
|
+
|
|
5
|
+
> **The npm package contains only the installer and these docs** — never the skill source. The installer fetches the skill payload from a *skill source* you configure (see [Skill source](#skill-source)).
|
|
6
|
+
|
|
7
|
+
## Quick start
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# auto-detect your agent (opencode -> claude -> any detected agent)
|
|
11
|
+
npx agentic-web-developer install
|
|
12
|
+
|
|
13
|
+
# target one agent by key, with your Pro license key saved during install
|
|
14
|
+
npx agentic-web-developer install --agent=claude --license-key=YOUR_KEY
|
|
15
|
+
|
|
16
|
+
# install for every supported agent at once
|
|
17
|
+
npx agentic-web-developer install --all
|
|
18
|
+
|
|
19
|
+
# see what's installed, and where
|
|
20
|
+
npx agentic-web-developer detect
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Then **restart your AI agent** so it loads the skill.
|
|
24
|
+
|
|
25
|
+
> **License:** the skill is gated by the Animotion **Pro plan ($7/month)** — on first run it validates your key (or admin credentials) once per session before any work. Pass `--license-key=…` (or `--admin-email` / `--admin-secret`) at install time to wire the credential up front. Paying and full credential setup: **[LICENSING.md](LICENSING.md)**.
|
|
26
|
+
|
|
27
|
+
### All flags
|
|
28
|
+
|
|
29
|
+
| Flag | Effect |
|
|
30
|
+
|---|---|
|
|
31
|
+
| `--agent=<key>` | Install for one agent (keys in the table below) |
|
|
32
|
+
| `--agent=all` / `--all` | Install for all 15 agents |
|
|
33
|
+
| `--source=<url\|path>` | Skill source: a `.tar.gz`/`.zip` URL, or a local skill folder/archive |
|
|
34
|
+
| `--token=<key>` | Auth token for a private source (else `AWD_TOKEN`) |
|
|
35
|
+
| `--license-key=<key>` | Save your Pro license key to the installed skill (`animotion-config.json` the gate reads) |
|
|
36
|
+
| `--admin-email=<e>` `--admin-secret=<s>` | Admin credentials instead of a key (staff/whitelisted — both required) |
|
|
37
|
+
| `--force` | Overwrite an existing install |
|
|
38
|
+
| `--dry-run` | Print the target paths without writing anything |
|
|
39
|
+
| `--dir=<path>` | Install flat into `<path>/agentic-web-developer/` (SKILL.md layout) |
|
|
40
|
+
| `--home=<path>` | Use `<path>` as the home directory (for testing) |
|
|
41
|
+
|
|
42
|
+
## Skill source
|
|
43
|
+
|
|
44
|
+
Because the npm tarball ships no `skill/` folder, the installer resolves the payload from the first available source, in this order:
|
|
45
|
+
|
|
46
|
+
1. `--source=<url|path>` — explicit flag
|
|
47
|
+
2. `AWD_SOURCE=<url|path>` — environment variable
|
|
48
|
+
3. `skill/` next to `bin/` — local development checkout (used automatically)
|
|
49
|
+
4. `awd.source` in `package.json` — set by the package author before publishing
|
|
50
|
+
|
|
51
|
+
**URL sources** are downloaded and extracted (system `tar`; `.tar.gz` preferred, `.zip` works on Windows/macOS). The archive may be the repo root, a `skill/` folder inside it, or anything containing `SKILL.md` within three levels.
|
|
52
|
+
|
|
53
|
+
**Private sources** need a token: `--token=<key>` or `AWD_TOKEN=<key>` (`GITHUB_TOKEN` is used automatically for github.com URLs):
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# private GitHub repo (tarball API)
|
|
57
|
+
npx agentic-web-developer install --source=https://api.github.com/repos/YOU/private-skill/tarball/main --token=ghp_XXXX
|
|
58
|
+
|
|
59
|
+
# same, via environment (handy for CI or shell profiles)
|
|
60
|
+
export AWD_SOURCE=https://api.github.com/repos/YOU/private-skill/tarball/main
|
|
61
|
+
export AWD_TOKEN=ghp_XXXX
|
|
62
|
+
npx agentic-web-developer install
|
|
63
|
+
|
|
64
|
+
# your own server / object storage
|
|
65
|
+
npx agentic-web-developer install --source=https://your-server/skill.tar.gz
|
|
66
|
+
|
|
67
|
+
# local folder or archive (no network)
|
|
68
|
+
npx agentic-web-developer install --source=~/backups/skill
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
The package author normally sets `awd.source` in `package.json` once, so end users just run `npx agentic-web-developer install` with no configuration.
|
|
72
|
+
|
|
73
|
+
## Where each agent gets the skill
|
|
74
|
+
|
|
75
|
+
| Key | Agent | File written | Plus |
|
|
76
|
+
|---|---|---|---|
|
|
77
|
+
| `opencode` | OpenCode | `~/.config/opencode/skills/agentic-web-developer/SKILL.md` | `references/`, `templates/` |
|
|
78
|
+
| `claude` | Claude Code | `~/.claude/skills/agentic-web-developer/SKILL.md` | `references/`, `templates/` |
|
|
79
|
+
| `copilot` | GitHub Copilot | `%APPDATA%\github-copilot\skills\agentic-web-developer\SKILL.md` | `references/`, `templates/` |
|
|
80
|
+
| `cursor` | Cursor | `~/.cursor/rules/agentic-web-developer.mdc` | payload in `~/.cursor/skills/agentic-web-developer/` |
|
|
81
|
+
| `windsurf` | Windsurf (Codeium) | `~/.codeium/windsurf/skills/agentic-web-developer/skill.md` | `references/`, `templates/` |
|
|
82
|
+
| `cody` | Cody (Sourcegraph) | `~/.cody/skills/agentic-web-developer/SKILL.md` | `references/`, `templates/` |
|
|
83
|
+
| `codium` | Codium | `~/.codium/skills/agentic-web-developer/skill.md` | `references/`, `templates/` |
|
|
84
|
+
| `aider` | Aider | `~/.aider/skills/CONVENTIONS.md` | payload in `~/.aider/skills/agentic-web-developer/` |
|
|
85
|
+
| `continue` | Continue | `~/.continue/rules/agentic-web-developer.md` | payload in `~/.continue/skills/agentic-web-developer/` |
|
|
86
|
+
| `codex` | Codex (OpenAI) | `~/.codex/skills/agentic-web-developer/SKILL.md` | `references/`, `templates/` |
|
|
87
|
+
| `roo` | Roo Code | `~/.roo/skills/agentic-web-developer/SKILL.md` | `references/`, `templates/` |
|
|
88
|
+
| `cline` | Cline | `~/.cline/skills/agentic-web-developer/SKILL.md` | `references/`, `templates/` |
|
|
89
|
+
| `augment` | Augment | `~/.augment/rules/agentic-web-developer.md` | payload in `~/.augment/skills/agentic-web-developer/` |
|
|
90
|
+
| `amazonq` | Amazon Q | `~/.amazonq/rules/agentic-web-developer.md` | payload in `~/.amazonq/skills/agentic-web-developer/` |
|
|
91
|
+
| `jetbrains` | JetBrains AI | `~/.junie/skills/agentic-web-developer/SKILL.md` | `references/`, `templates/` |
|
|
92
|
+
|
|
93
|
+
Notes:
|
|
94
|
+
|
|
95
|
+
- **Rules agents** (cursor, continue, augment, amazonq) receive the full skill body as a rules file with agent-specific frontmatter (`globs`, `alwaysApply`, `trigger`, …). The file starts with a pointer to the installed `references/` and `templates/` payload so the agent can read the playbooks on demand.
|
|
96
|
+
- **Aider** has no skill loader — it reads conventions files. The skill lands at `~/.aider/skills/CONVENTIONS.md`. Point Aider at it with `aider --read ~/.aider/skills/CONVENTIONS.md`, or copy that file into a project as `CONVENTIONS.md`. The installer never overwrites a `CONVENTIONS.md` it didn't write (unless you pass `--force`), so an existing Animotion or other conventions file is safe.
|
|
97
|
+
- Windows paths are shown with `~` for your user home; `%APPDATA%` is your Roaming app-data folder.
|
|
98
|
+
|
|
99
|
+
## Manual install (no CLI)
|
|
100
|
+
|
|
101
|
+
Get the skill folder itself (the package doesn't contain it — take it from your configured source, or a copy someone sent you), then place the files as the table above says:
|
|
102
|
+
|
|
103
|
+
- **SKILL.md agents** — copy the `skill/` folder to `<skills-dir>/agentic-web-developer/` (it must contain `SKILL.md`, `references/`, `templates/`).
|
|
104
|
+
- **Windsurf / Codium** — same, but rename `SKILL.md` to `skill.md`.
|
|
105
|
+
- **Cursor** — copy `skill/SKILL.md` to `~/.cursor/rules/agentic-web-developer.mdc`, keep `references/` + `templates/` in `~/.cursor/skills/agentic-web-developer/`.
|
|
106
|
+
- **Continue / Augment / Amazon Q** — copy `skill/SKILL.md` to the agent's `rules/agentic-web-developer.md` (paths in the table), payload alongside in `skills/agentic-web-developer/`.
|
|
107
|
+
- **Aider** — copy `skill/SKILL.md` (without its `---` frontmatter block) to `~/.aider/skills/CONVENTIONS.md`.
|
|
108
|
+
|
|
109
|
+
## Verify
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
npx agentic-web-developer detect
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
`INSTALLED` next to an agent means the skill file and its payload are both in place.
|
|
116
|
+
|
|
117
|
+
## Uninstall
|
|
118
|
+
|
|
119
|
+
Delete what the table lists for your agent — the skill file **and** the `agentic-web-developer/` payload folder. For example:
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
# opencode
|
|
123
|
+
rm -rf ~/.config/opencode/skills/agentic-web-developer
|
|
124
|
+
|
|
125
|
+
# cursor (rule file + payload)
|
|
126
|
+
rm -f ~/.cursor/rules/agentic-web-developer.mdc
|
|
127
|
+
rm -rf ~/.cursor/skills/agentic-web-developer
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Companion: AnimotionJS (required for animation)
|
|
131
|
+
|
|
132
|
+
Every site built with this skill gets its **animations from the AnimotionJS agentic skill** — this skill never writes motion code. Install Animotion for the same agent:
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
npx animotion-skills install --tier=agentic --agent=<agent> --license-key=YOUR_KEY
|
|
136
|
+
npx animotion-skills install --tier=agentic --all --license-key=YOUR_KEY # every detected agent
|
|
137
|
+
npx animotion-skills install --detect
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
- License key (Studio plan, $15/month): https://skills.animotion.click/checkout
|
|
141
|
+
- Without a key the build still works up to Stage 8 (animation handoff), where it stops and asks you to install Animotion.
|
|
142
|
+
|
|
143
|
+
## Repository vs npm package vs skill source
|
|
144
|
+
|
|
145
|
+
- **This Git repository** contains **documentation only** (`README.md`, `docs/`) — the `.gitignore` hides everything else.
|
|
146
|
+
- **The npm package** contains **only the installer** (`bin/install.js`) + docs — never `skill/`. Anything in a published tarball is publicly downloadable forever, so the source stays out of it.
|
|
147
|
+
- **The skill source** lives wherever you say: [Skill source](#skill-source) (`--source`, `AWD_SOURCE`, or the author's `awd.source`).
|
|
148
|
+
|
|
149
|
+
## Examples
|
|
150
|
+
|
|
151
|
+
Two full scenario walkthroughs — one per mode — are in [EXAMPLES.md](./EXAMPLES.md).
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# Licensing — paying for Pro and unlocking the skill
|
|
2
|
+
|
|
3
|
+
The agentic-web-developer skill is licensed: it needs an active **Pro plan ($7/month)** Animotion key, or Animotion **admin credentials**, verified **once per session** (cached 7 days) before any pipeline work. This guide covers paying for Pro, installing the skill files with a key or admin credentials, and wiring the credentials up.
|
|
4
|
+
|
|
5
|
+
## How to pay for Pro
|
|
6
|
+
|
|
7
|
+
[](https://skills.animotion.click/checkout?plan=pro) [](https://skills.animotion.click/checkout?plan=studio)
|
|
8
|
+
|
|
9
|
+
1. **Click a Get Pro button** — opens [`skills.animotion.click/checkout?plan=pro`](https://skills.animotion.click/checkout?plan=pro) with the **Pro** plan preselected ($7/month). Studio ($15/month) also unlocks this skill *and* the AnimotionJS agentic animation skill the pipeline hands off to at Stage 8 — usually the better deal if you'll ship sites.
|
|
10
|
+
2. **Enter your email** — the license key is tied to this address.
|
|
11
|
+
3. **Continue to Payment** — you are redirected to Stripe's hosted checkout (card payment; Stripe handles everything).
|
|
12
|
+
4. **Confirm the subscription** — $7/month, renews monthly, cancel anytime from the Stripe invoice email.
|
|
13
|
+
5. **Copy your license key** — the confirmation page shows it immediately (`sec_live_…`).
|
|
14
|
+
|
|
15
|
+
> **Admin credentials are not self-serve.** `--admin-email`/`--admin-secret` and `AGENTIC_ADMIN_*` are a staff bypass for whitelisted emails — everyone else pays with a Pro key from the flow above.
|
|
16
|
+
|
|
17
|
+
## Install the skill files (license key or admin credentials)
|
|
18
|
+
|
|
19
|
+
The npm package ships only the installer — the skill files can also be downloaded directly from the license server with your key or admin pair (Node 18+; opencode path shown):
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# bash / zsh — with a Pro license key
|
|
23
|
+
KEY="sec_live_xxxxxxxx" \
|
|
24
|
+
DEST="$HOME/.config/opencode/skills/agentic-web-developer" \
|
|
25
|
+
node -e '
|
|
26
|
+
const fs = require("fs"), path = require("path");
|
|
27
|
+
(async () => {
|
|
28
|
+
const url = "https://skills.animotion.click/api/skills?skill=agentic-web-developer&licenseKey=" + process.env.KEY;
|
|
29
|
+
const j = await (await fetch(url)).json();
|
|
30
|
+
if (!j.success) throw new Error("Download failed - check the key");
|
|
31
|
+
for (const f of j.skills) {
|
|
32
|
+
const p = path.join(process.env.DEST, f.name);
|
|
33
|
+
fs.mkdirSync(path.dirname(p), { recursive: true });
|
|
34
|
+
fs.writeFileSync(p, f.content);
|
|
35
|
+
}
|
|
36
|
+
console.log("Installed " + j.count + " files -> " + process.env.DEST);
|
|
37
|
+
})();
|
|
38
|
+
'
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
```powershell
|
|
42
|
+
# PowerShell — with a Pro license key
|
|
43
|
+
$env:KEY = "sec_live_xxxxxxxx"
|
|
44
|
+
$env:DEST = "$env:USERPROFILE\.config\opencode\skills\agentic-web-developer"
|
|
45
|
+
node -e 'const fs=require("fs"),path=require("path");(async()=>{const j=await (await fetch("https://skills.animotion.click/api/skills?skill=agentic-web-developer&licenseKey="+process.env.KEY)).json();if(!j.success)throw new Error("Download failed - check the key");for(const f of j.skills){const p=path.join(process.env.DEST,f.name);fs.mkdirSync(path.dirname(p),{recursive:true});fs.writeFileSync(p,f.content);}console.log("Installed "+j.count+" files -> "+process.env.DEST);})()'
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
**With admin credentials instead of a key** (whitelisted emails only) — same scripts, swap the URL query string for:
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
.../api/skills?skill=agentic-web-developer&adminEmail=you@example.com&adminSecret=YOUR_ADMIN_SECRET
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Other agents: change `DEST` (e.g. `~/.config/claude/skills/…` for Claude Code, `~/.config/github-copilot/skills/…` for Copilot — full per-agent paths in [INSTALL.md](INSTALL.md)). Restart the agent afterwards so the skill loads. The [`npx agentic-web-developer install`](INSTALL.md) CLI works the same way once a key/admin pair is available.
|
|
55
|
+
|
|
56
|
+
## Add your license key or admin credentials
|
|
57
|
+
|
|
58
|
+
Pick one — the skill's gate looks for environment variables first, then the installer's config file, then asks you once.
|
|
59
|
+
|
|
60
|
+
**1. Install the skill with your key (recommended — one command, everything wired)**
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
npx agentic-web-developer install --agent=<your-agent> --license-key=YOUR_KEY
|
|
64
|
+
|
|
65
|
+
# or install for every detected agent at once:
|
|
66
|
+
npx agentic-web-developer install --all --license-key=YOUR_KEY
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
With **admin credentials instead of a license key** (Animotion staff / whitelisted emails only):
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
npx agentic-web-developer install --agent=<your-agent> --admin-email=you@example.com --admin-secret=YOUR_ADMIN_SECRET
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
`<your-agent>` is one of the 15 supported agents (`opencode`, `claude`, `copilot`, `cursor`, … — full list in [INSTALL.md](INSTALL.md)). The installer writes `animotion-config.json` into the installed skill folder with your key (or admin pair), and the gate reads that file automatically — nothing else to configure. The key must be on the **Pro plan** ($7/month) or higher.
|
|
76
|
+
|
|
77
|
+
**2. Environment variable**
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
# bash / zsh — add to ~/.bashrc or ~/.zshrc
|
|
81
|
+
export AGENTIC_LICENSE_KEY="sec_live_xxxxxxxx"
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
```powershell
|
|
85
|
+
# PowerShell — persistent for your user (open a new terminal afterwards)
|
|
86
|
+
setx AGENTIC_LICENSE_KEY "sec_live_xxxxxxxx"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
`ANIMOTION_LICENSE_KEY` works as an alias — one variable can serve this skill and the Animotion installer.
|
|
90
|
+
|
|
91
|
+
**3. `animotion-config.json` by hand** — same file the installer writes. The gate reads it from the agentic-web-developer skill directory, its parent (`~/.config/opencode/skills/` for opencode), `~/.animotion-skills/`, or the path in `AGENTIC_LICENSE_CONFIG`:
|
|
92
|
+
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"tier": "pro",
|
|
96
|
+
"requiredPlan": "pro",
|
|
97
|
+
"authMethod": "license",
|
|
98
|
+
"licenseKey": "sec_live_xxxxxxxx"
|
|
99
|
+
}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**4. Admin credentials via environment** (Animotion staff / whitelisted emails only) — env vars `AGENTIC_ADMIN_EMAIL` + `AGENTIC_ADMIN_SECRET`, or a config file with `"authMethod": "admin"` and `adminEmail` / `adminSecret` fields (installer-written files store the secret encrypted as `adminSecretEncrypted` + `encryptionKey`; the gate decrypts those automatically). Never commit these — prefer a personal Pro key for day-to-day work.
|
|
103
|
+
|
|
104
|
+
**5. Ask in-session**
|
|
105
|
+
|
|
106
|
+
With nothing found, the skill asks once (via its question tool) — paste the key, it validates immediately and remembers it via the cache below.
|
|
107
|
+
|
|
108
|
+
## What happens at runtime
|
|
109
|
+
|
|
110
|
+
- Once per session (at most), the skill calls:
|
|
111
|
+
`POST https://skills.animotion.click/api/license/validate`
|
|
112
|
+
with `{ "licenseKey": "…", "skill": "agentic-web-developer", "plan": "pro" }` (or the admin-credential variant).
|
|
113
|
+
- On success the verdict is cached at `~/.animotion-skills/cache/agentic-web-developer-verdict.json` for **7 days** — later sessions in that window skip the network call.
|
|
114
|
+
- The server answers `valid: true` for Pro and Studio keys and for whitelisted admins; `valid: false` carries a `reason` (invalid key, wrong plan, not whitelisted).
|
|
115
|
+
- If the server is unreachable, a fresh cache (≤7 days) still lets you work; without one, the skill stops until it can verify once.
|
|
116
|
+
|
|
117
|
+
Point the gate at a local dev server with `AGENTIC_LICENSE_SERVER=http://localhost:5000` (defaults to `https://skills.animotion.click`).
|
|
118
|
+
|
|
119
|
+
## Troubleshooting
|
|
120
|
+
|
|
121
|
+
| Symptom | Fix |
|
|
122
|
+
|---|---|
|
|
123
|
+
| `valid: false`, reason "Invalid license format" / "Invalid signature" | Wrong or truncated key — copy it again from the checkout confirmation page. |
|
|
124
|
+
| `valid: false`, reason mentions the plan | Your key's plan is below Pro — [upgrade at checkout](https://skills.animotion.click/checkout?plan=pro). |
|
|
125
|
+
| `valid: false`, reason "Email not whitelisted" | Admin path but the email isn't on the server whitelist — use a Pro key instead. |
|
|
126
|
+
| `valid: false`, reason "Invalid admin secret" | `AGENTIC_ADMIN_SECRET` doesn't match the server's `ADMIN_SECRET`. |
|
|
127
|
+
| Skill keeps asking for the key | Verdict cache expired or unwritable — fix credentials, then run one validation; check `~/.animotion-skills/cache/` is writable. |
|
|
128
|
+
| "server unreachable, no cached verdict" | No network on first use — connect once; after that the 7-day cache covers offline work. |
|
|
129
|
+
| Changed or cancelled the subscription | Delete `~/.animotion-skills/cache/agentic-web-developer-verdict.json` to force a re-check immediately. |
|
|
130
|
+
| Download of the skill files returns 401/403 | The install commands above need a valid key/admin pair on the query string — re-check step 5 of "How to pay for Pro". |
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentic-web-developer",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "Agentic skill for building high-converting websites that sell — design DNA extraction, outlier competitor research, conversion blueprints, the M.O.N.E.Y sales framework, lead generation, cloning, outreach and deployment, with a novel-idea/product-launch mode. All animation work is delegated to the AnimotionJS agentic skill.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"opencode",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
},
|
|
36
36
|
"license": "UNLICENSED",
|
|
37
37
|
"awd": {
|
|
38
|
-
"source": "https://4e2zaktqel.ucarecd.net/
|
|
38
|
+
"source": "https://4e2zaktqel.ucarecd.net/13060e11-0213-4c81-8984-ee09fec74a45/skilltar.gz"
|
|
39
39
|
},
|
|
40
40
|
"publishConfig": {
|
|
41
41
|
"access": "public"
|