wastedai 0.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/bin/wastedai.js +68 -0
- package/package.json +16 -0
- package/skill/SKILL.md +42 -0
package/bin/wastedai.js
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
const fs = require('fs');
|
|
5
|
+
const path = require('path');
|
|
6
|
+
|
|
7
|
+
const ROOT = path.join(__dirname, '..');
|
|
8
|
+
const SKILL_SRC = path.join(ROOT, 'skill', 'SKILL.md');
|
|
9
|
+
|
|
10
|
+
const PINK = '\x1b[38;5;218m';
|
|
11
|
+
const DIM = '\x1b[2m';
|
|
12
|
+
const RESET = '\x1b[0m';
|
|
13
|
+
|
|
14
|
+
function card() {
|
|
15
|
+
console.log(`
|
|
16
|
+
wasted${PINK}ai${RESET}
|
|
17
|
+
${DIM}Timothé Ballet · Freelance · PO · Webmaster · Creative dev${RESET}
|
|
18
|
+
|
|
19
|
+
Sites, e-commerce & produits digitaux
|
|
20
|
+
Du cadrage à la mise en ligne.
|
|
21
|
+
|
|
22
|
+
https://wastedai.com
|
|
23
|
+
Devis → formulaire sur le site
|
|
24
|
+
|
|
25
|
+
${DIM}Ensuite, dans un projet Cursor :${RESET}
|
|
26
|
+
npx -y wastedai init
|
|
27
|
+
`);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function init(cwd) {
|
|
31
|
+
const destDir = path.join(cwd, '.cursor', 'skills', 'wastedai');
|
|
32
|
+
const dest = path.join(destDir, 'SKILL.md');
|
|
33
|
+
const skill = fs.readFileSync(SKILL_SRC, 'utf8');
|
|
34
|
+
|
|
35
|
+
fs.mkdirSync(destDir, { recursive: true });
|
|
36
|
+
fs.writeFileSync(dest, skill);
|
|
37
|
+
|
|
38
|
+
console.log(`Wasted ai — skill posé :
|
|
39
|
+
${dest}
|
|
40
|
+
|
|
41
|
+
Cursor dans ce dossier saura qui tu es et ce que tu vends.
|
|
42
|
+
Relance le chat (ou ouvre un nouveau) pour que le skill soit pris en compte.
|
|
43
|
+
`);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const args = process.argv.slice(2).filter((a) => a !== '--');
|
|
47
|
+
const cmd = args[0];
|
|
48
|
+
|
|
49
|
+
if (!cmd || cmd === 'card' || cmd === '--help' || cmd === '-h') {
|
|
50
|
+
if (cmd === '--help' || cmd === '-h') {
|
|
51
|
+
console.log(`wastedai
|
|
52
|
+
(sans argument) carte terminal
|
|
53
|
+
init copie le skill Cursor dans .cursor/skills/wastedai/
|
|
54
|
+
`);
|
|
55
|
+
process.exit(0);
|
|
56
|
+
}
|
|
57
|
+
card();
|
|
58
|
+
process.exit(0);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if (cmd === 'init') {
|
|
62
|
+
init(process.cwd());
|
|
63
|
+
process.exit(0);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
console.error(`Commande inconnue : ${cmd}
|
|
67
|
+
Essaie : npx wastedai ou npx wastedai init`);
|
|
68
|
+
process.exit(1);
|
package/package.json
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "wastedai",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Carte Wasted ai + init skill Cursor (qui je suis, ce que je fais).",
|
|
5
|
+
"bin": {
|
|
6
|
+
"wastedai": "./bin/wastedai.js"
|
|
7
|
+
},
|
|
8
|
+
"files": [
|
|
9
|
+
"bin",
|
|
10
|
+
"skill"
|
|
11
|
+
],
|
|
12
|
+
"license": "MIT",
|
|
13
|
+
"homepage": "https://wastedai.com",
|
|
14
|
+
"author": "Timothé Ballet",
|
|
15
|
+
"keywords": ["wastedai", "cli", "cursor", "skill"]
|
|
16
|
+
}
|
package/skill/SKILL.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: wastedai
|
|
3
|
+
description: >-
|
|
4
|
+
Identity and offer for Wasted ai (Timothé Ballet): freelance product owner,
|
|
5
|
+
webmaster and creative developer. Sites vitrine, Shopify, WordPress, digital
|
|
6
|
+
tools. Use when writing as Wasted ai, drafting a quote, positioning the brand,
|
|
7
|
+
or deciding stack and tone for a client project.
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Wasted ai
|
|
11
|
+
|
|
12
|
+
## Who
|
|
13
|
+
|
|
14
|
+
- Brand: **Wasted ai** — site: https://wastedai.com
|
|
15
|
+
- Person: **Timothé Ballet**
|
|
16
|
+
- Role: Freelance · Product owner · Webmaster · Creative dev
|
|
17
|
+
- Languages: French and English
|
|
18
|
+
- Format: freelance missions, from framing to go-live
|
|
19
|
+
|
|
20
|
+
## What we actually sell
|
|
21
|
+
|
|
22
|
+
Conception and delivery of:
|
|
23
|
+
|
|
24
|
+
- brochure / vitrine sites and UX rebuilds
|
|
25
|
+
- Shopify stores (themes, purchase path)
|
|
26
|
+
- WordPress / CMS
|
|
27
|
+
- occasional business tools (product framing, coordination, delivery)
|
|
28
|
+
- maintenance and iteration
|
|
29
|
+
|
|
30
|
+
Not a 20-person agency. Not a default React/SaaS shop. Do not invent a public CV page: the commercial site is the source of truth.
|
|
31
|
+
|
|
32
|
+
## Tone
|
|
33
|
+
|
|
34
|
+
Direct, concrete, French-first unless the user writes in English. No fake first-person manifesto on the commercial home. No invented prices, SIRET, or availability unless the user states them.
|
|
35
|
+
|
|
36
|
+
## Stack bias
|
|
37
|
+
|
|
38
|
+
Prefer Shopify, WordPress, HTML/CSS/JS, Figma, UX. Reach for React/Tailwind only if the brief is clearly an internal tool / app, not a vitrine.
|
|
39
|
+
|
|
40
|
+
## Contact
|
|
41
|
+
|
|
42
|
+
Quote: https://wastedai.com (formulaire devis). Do not invent another booking tool.
|