@optima-chat/optima-agent 0.9.13 → 0.9.15
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/.claude/skills/.kb-skills-managed.json +9 -9
- package/.claude/skills/ads/SKILL.md +244 -244
- package/.claude/skills/ads/template/campaign/CREATIVES.md +18 -18
- package/.claude/skills/ads/template/campaign/NOTES.md +10 -10
- package/.claude/skills/ads/template/campaign/STRATEGY.md +29 -29
- package/.claude/skills/ads/template/user/ADS.md +29 -29
- package/.claude/skills/ads/template/user/LEARNINGS.md +15 -15
- package/.claude/skills/ads/template/user/PROGRESS.md +20 -20
- package/.claude/skills/ads/template/user/README.md +25 -25
- package/.claude/skills/ads/template/user/assets/.gitignore +2 -2
- package/.claude/skills/bi/SKILL.md +131 -131
- package/.claude/skills/browser/SKILL.md +201 -201
- package/.claude/skills/channels/SKILL.md +188 -188
- package/.claude/skills/collection/SKILL.md +88 -88
- package/.claude/skills/douyin/SKILL.md +408 -408
- package/.claude/skills/ffmpeg/SKILL.md +164 -164
- package/.claude/skills/gen/SKILL.md +327 -279
- package/.claude/skills/growth/SKILL.md +90 -90
- package/.claude/skills/growth/template/ACCOUNTS.md +14 -14
- package/.claude/skills/growth/template/CALENDAR.md +7 -7
- package/.claude/skills/growth/template/COMMENTS.md +7 -7
- package/.claude/skills/growth/template/GROWTH.md +37 -37
- package/.claude/skills/growth/template/PROGRESS.md +4 -4
- package/.claude/skills/growth/template/README.md +20 -20
- package/.claude/skills/growth/template/TOPICS.md +7 -7
- package/.claude/skills/homepage/SKILL.md +177 -177
- package/.claude/skills/i18n/SKILL.md +517 -517
- package/.claude/skills/ingesting-sources/SKILL.md +94 -94
- package/.claude/skills/initializing-kb/SKILL.md +117 -117
- package/.claude/skills/instagram/SKILL.md +321 -321
- package/.claude/skills/inventory/SKILL.md +328 -328
- package/.claude/skills/kol-outreach/SKILL.md +232 -232
- package/.claude/skills/kol-outreach/template/campaign/CONFIG.md +60 -60
- package/.claude/skills/kol-outreach/template/campaign/KOLS.md +6 -6
- package/.claude/skills/kol-outreach/template/campaign/PROGRESS.md +3 -3
- package/.claude/skills/kol-outreach/template/campaign/TEMPLATES.md +88 -88
- package/.claude/skills/kol-outreach/template/merchant/BRAND.md +36 -36
- package/.claude/skills/kol-outreach/template/merchant/CAMPAIGNS.md +6 -6
- package/.claude/skills/kol-outreach/template/merchant/MERCHANT_LIMITS.md +16 -16
- package/.claude/skills/kol-outreach/template/merchant/PROGRESS.md +4 -4
- package/.claude/skills/kol-outreach/template/merchant/README.md +20 -20
- package/.claude/skills/linting-the-wiki/SKILL.md +68 -68
- package/.claude/skills/logistics/SKILL.md +180 -180
- package/.claude/skills/markdown-pdf/SKILL.md +72 -72
- package/.claude/skills/merchant/SKILL.md +110 -110
- package/.claude/skills/multigrid-poster/SKILL.md +192 -192
- package/.claude/skills/multigrid-poster/layouts/2x2.json +34 -34
- package/.claude/skills/multigrid-poster/layouts/3x3.json +43 -43
- package/.claude/skills/multigrid-poster/scripts/compose.py +116 -116
- package/.claude/skills/order/SKILL.md +452 -452
- package/.claude/skills/product/SKILL.md +379 -379
- package/.claude/skills/product-page/SKILL.md +106 -106
- package/.claude/skills/querying-the-wiki/SKILL.md +59 -59
- package/.claude/skills/reddit/SKILL.md +277 -277
- package/.claude/skills/review/SKILL.md +321 -321
- package/.claude/skills/scout/SKILL.md +575 -575
- package/.claude/skills/sentinel/SKILL.md +281 -281
- package/.claude/skills/shein/SKILL.md +246 -246
- package/.claude/skills/shipping/SKILL.md +200 -200
- package/.claude/skills/shop-content/SKILL.md +101 -101
- package/.claude/skills/shopify/SKILL.md +282 -282
- package/.claude/skills/skillify/SKILL.md +114 -114
- package/.claude/skills/taobao/SKILL.md +238 -238
- package/.claude/skills/tiktok/SKILL.md +381 -381
- package/.claude/skills/twitter/SKILL.md +302 -302
- package/.claude/skills/updating-related-pages/SKILL.md +65 -65
- package/.claude/skills/video-edit/SKILL.md +123 -138
- package/.claude/skills/video-gen/SKILL.md +720 -720
- package/.claude/skills/video-gen/templates/INDEX.md +78 -78
- package/.claude/skills/video-gen/templates/before-after-beauty.md +183 -183
- package/.claude/skills/video-gen/templates/drama-fmcg.md +183 -183
- package/.claude/skills/video-gen/templates/kol-reaction-food.md +193 -193
- package/.claude/skills/video-gen/templates/multi-point-apparel.md +185 -185
- package/.claude/skills/video-gen/templates/pain-solution-home.md +184 -184
- package/.claude/skills/video-gen/templates/pdp-360-showcase.md +189 -189
- package/.claude/skills/video-gen/templates/pdp-feature-highlight.md +182 -182
- package/.claude/skills/video-gen/templates/scene-digital.md +183 -183
- package/.claude/skills/wechat/SKILL.md +174 -174
- package/.claude/skills/xhs/SKILL.md +170 -170
- package/README.md +276 -276
- package/dist/bin/optima.js +26 -26
- package/dist/bin/serve.js +23 -23
- package/dist/src/agent.d.ts +1 -1
- package/dist/src/agent.js +4 -4
- package/dist/src/system-prompt.js +175 -175
- package/dist/src/tools/memory.js +10 -10
- package/dist/src/ui/headless.js +7 -7
- package/package.json +79 -79
- package/dist/bin/video-edit.d.ts +0 -3
- package/dist/bin/video-edit.d.ts.map +0 -1
- package/dist/bin/video-edit.js +0 -153
- package/dist/bin/video-edit.js.map +0 -1
|
@@ -1,114 +1,114 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: skillify
|
|
3
|
-
description: "Create custom reusable skills from conversation patterns or described workflows"
|
|
4
|
-
when_to_use: "Use when user wants to create a skill, automate a workflow, save a repeatable process, or says 'make this a skill'"
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Skillify — Create Custom Skills
|
|
8
|
-
|
|
9
|
-
## Goal
|
|
10
|
-
Help the user create a reusable skill (SKILL.md file) and register it for immediate use.
|
|
11
|
-
|
|
12
|
-
## Step 1: Understand Intent
|
|
13
|
-
|
|
14
|
-
Ask the user:
|
|
15
|
-
- "What do you want to automate?"
|
|
16
|
-
- "Is this based on something we just did, or a new workflow?"
|
|
17
|
-
|
|
18
|
-
If based on conversation history, review the recent tool calls to extract the pattern.
|
|
19
|
-
|
|
20
|
-
## Step 2: Interview (3-5 questions)
|
|
21
|
-
|
|
22
|
-
Use AskUserQuestion (if available) or direct questions:
|
|
23
|
-
|
|
24
|
-
1. **Name**: "What should this skill be called?"
|
|
25
|
-
- Generate slug: lowercase, hyphens only, letters/numbers, start with letter, max 50 chars
|
|
26
|
-
- Examples: "Competitor Analysis" → `competitor-analysis`, "竞品分析" → `competitor-analysis`
|
|
27
|
-
- **Always use English for slug, even if name is in Chinese**
|
|
28
|
-
|
|
29
|
-
2. **Trigger**: "When should this skill activate? Give me example phrases."
|
|
30
|
-
|
|
31
|
-
3. **Arguments**: "What inputs does it need each time?" (e.g., keyword, region, URL)
|
|
32
|
-
|
|
33
|
-
4. **Config**: "Does it need any API keys or credentials?" (most skills don't)
|
|
34
|
-
|
|
35
|
-
5. **Output**: "Should it produce a file, display results, or both?"
|
|
36
|
-
|
|
37
|
-
## Step 3: Generate SKILL.md
|
|
38
|
-
|
|
39
|
-
Create the file following this template exactly:
|
|
40
|
-
|
|
41
|
-
```
|
|
42
|
-
---
|
|
43
|
-
name: {slug}
|
|
44
|
-
description: "{one-line description in the user's language}"
|
|
45
|
-
when_to_use: "{trigger phrases as a sentence}"
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
# {Display Name}
|
|
49
|
-
|
|
50
|
-
## Goal
|
|
51
|
-
{Clear statement of what this skill accomplishes}
|
|
52
|
-
|
|
53
|
-
## Inputs
|
|
54
|
-
- `$arg1`: {description}
|
|
55
|
-
- `$arg2`: {description}
|
|
56
|
-
|
|
57
|
-
## Steps
|
|
58
|
-
|
|
59
|
-
### 1. {First Step}
|
|
60
|
-
{Specific instructions — use exact CLI commands where possible}
|
|
61
|
-
|
|
62
|
-
**Success criteria**: {How to verify this step succeeded}
|
|
63
|
-
|
|
64
|
-
### 2. {Second Step}
|
|
65
|
-
...
|
|
66
|
-
|
|
67
|
-
### N. {Final Step — Output}
|
|
68
|
-
{Generate report / display results / write file}
|
|
69
|
-
|
|
70
|
-
**Success criteria**: {Final deliverable verification}
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
**Rules:**
|
|
74
|
-
- Every step MUST have **Success criteria**
|
|
75
|
-
- Use `$arg_name` for referencing inputs (this is a prompt convention, not a template system)
|
|
76
|
-
- Be specific: include exact CLI commands (e.g., `scout search "$keyword"`)
|
|
77
|
-
- If a step uses a known skill's CLI, include the full command syntax
|
|
78
|
-
- Keep total content under 100KB
|
|
79
|
-
- Frontmatter: only use `name`, `description`, `when_to_use` (other fields are for future use)
|
|
80
|
-
|
|
81
|
-
## Step 4: Preview & Confirm
|
|
82
|
-
|
|
83
|
-
Show the complete SKILL.md to the user:
|
|
84
|
-
|
|
85
|
-
"Here's your new skill. Review it and let me know if you want changes:"
|
|
86
|
-
|
|
87
|
-
Display the full content. Wait for confirmation. If changes requested, modify and show again.
|
|
88
|
-
|
|
89
|
-
## Step 5: Save
|
|
90
|
-
|
|
91
|
-
On confirmation:
|
|
92
|
-
|
|
93
|
-
1. Create directory and write file:
|
|
94
|
-
```bash
|
|
95
|
-
mkdir -p /home/aiuser/.claude/skills/{slug}
|
|
96
|
-
```
|
|
97
|
-
Then use Write tool: `/home/aiuser/.claude/skills/{slug}/SKILL.md`
|
|
98
|
-
|
|
99
|
-
2. Register with registry:
|
|
100
|
-
```bash
|
|
101
|
-
optima-skills-cli skill create --slug "{slug}" --name "{name}" --description "{description}" --file "/home/aiuser/.claude/skills/{slug}/SKILL.md"
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
3. Parse the JSON output. If it contains an `id` field, creation succeeded.
|
|
105
|
-
|
|
106
|
-
4. Tell the user: "Skill '{name}' created! Try it by saying: '{trigger phrase}'"
|
|
107
|
-
|
|
108
|
-
## Step 6: Error Handling
|
|
109
|
-
|
|
110
|
-
- **CLI outputs `TOKEN_EXPIRED`**: "注册失败(token 过期),但 skill 在当前会话可用。刷新页面后重试。"
|
|
111
|
-
- **CLI outputs error with `slug already exists`**: Suggest alternative slug, retry with new slug.
|
|
112
|
-
- **CLI outputs other error**: "Skill 保存到本地成功,但注册到云端失败。当前会话可正常使用。"
|
|
113
|
-
- **Write tool fails**: Inform user and abort.
|
|
114
|
-
- **CLI hangs (10s timeout)**: CLI will auto-abort. Tell user: "注册超时,但 skill 在当前会话可用。"
|
|
1
|
+
---
|
|
2
|
+
name: skillify
|
|
3
|
+
description: "Create custom reusable skills from conversation patterns or described workflows"
|
|
4
|
+
when_to_use: "Use when user wants to create a skill, automate a workflow, save a repeatable process, or says 'make this a skill'"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Skillify — Create Custom Skills
|
|
8
|
+
|
|
9
|
+
## Goal
|
|
10
|
+
Help the user create a reusable skill (SKILL.md file) and register it for immediate use.
|
|
11
|
+
|
|
12
|
+
## Step 1: Understand Intent
|
|
13
|
+
|
|
14
|
+
Ask the user:
|
|
15
|
+
- "What do you want to automate?"
|
|
16
|
+
- "Is this based on something we just did, or a new workflow?"
|
|
17
|
+
|
|
18
|
+
If based on conversation history, review the recent tool calls to extract the pattern.
|
|
19
|
+
|
|
20
|
+
## Step 2: Interview (3-5 questions)
|
|
21
|
+
|
|
22
|
+
Use AskUserQuestion (if available) or direct questions:
|
|
23
|
+
|
|
24
|
+
1. **Name**: "What should this skill be called?"
|
|
25
|
+
- Generate slug: lowercase, hyphens only, letters/numbers, start with letter, max 50 chars
|
|
26
|
+
- Examples: "Competitor Analysis" → `competitor-analysis`, "竞品分析" → `competitor-analysis`
|
|
27
|
+
- **Always use English for slug, even if name is in Chinese**
|
|
28
|
+
|
|
29
|
+
2. **Trigger**: "When should this skill activate? Give me example phrases."
|
|
30
|
+
|
|
31
|
+
3. **Arguments**: "What inputs does it need each time?" (e.g., keyword, region, URL)
|
|
32
|
+
|
|
33
|
+
4. **Config**: "Does it need any API keys or credentials?" (most skills don't)
|
|
34
|
+
|
|
35
|
+
5. **Output**: "Should it produce a file, display results, or both?"
|
|
36
|
+
|
|
37
|
+
## Step 3: Generate SKILL.md
|
|
38
|
+
|
|
39
|
+
Create the file following this template exactly:
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
---
|
|
43
|
+
name: {slug}
|
|
44
|
+
description: "{one-line description in the user's language}"
|
|
45
|
+
when_to_use: "{trigger phrases as a sentence}"
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
# {Display Name}
|
|
49
|
+
|
|
50
|
+
## Goal
|
|
51
|
+
{Clear statement of what this skill accomplishes}
|
|
52
|
+
|
|
53
|
+
## Inputs
|
|
54
|
+
- `$arg1`: {description}
|
|
55
|
+
- `$arg2`: {description}
|
|
56
|
+
|
|
57
|
+
## Steps
|
|
58
|
+
|
|
59
|
+
### 1. {First Step}
|
|
60
|
+
{Specific instructions — use exact CLI commands where possible}
|
|
61
|
+
|
|
62
|
+
**Success criteria**: {How to verify this step succeeded}
|
|
63
|
+
|
|
64
|
+
### 2. {Second Step}
|
|
65
|
+
...
|
|
66
|
+
|
|
67
|
+
### N. {Final Step — Output}
|
|
68
|
+
{Generate report / display results / write file}
|
|
69
|
+
|
|
70
|
+
**Success criteria**: {Final deliverable verification}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
**Rules:**
|
|
74
|
+
- Every step MUST have **Success criteria**
|
|
75
|
+
- Use `$arg_name` for referencing inputs (this is a prompt convention, not a template system)
|
|
76
|
+
- Be specific: include exact CLI commands (e.g., `scout search "$keyword"`)
|
|
77
|
+
- If a step uses a known skill's CLI, include the full command syntax
|
|
78
|
+
- Keep total content under 100KB
|
|
79
|
+
- Frontmatter: only use `name`, `description`, `when_to_use` (other fields are for future use)
|
|
80
|
+
|
|
81
|
+
## Step 4: Preview & Confirm
|
|
82
|
+
|
|
83
|
+
Show the complete SKILL.md to the user:
|
|
84
|
+
|
|
85
|
+
"Here's your new skill. Review it and let me know if you want changes:"
|
|
86
|
+
|
|
87
|
+
Display the full content. Wait for confirmation. If changes requested, modify and show again.
|
|
88
|
+
|
|
89
|
+
## Step 5: Save
|
|
90
|
+
|
|
91
|
+
On confirmation:
|
|
92
|
+
|
|
93
|
+
1. Create directory and write file:
|
|
94
|
+
```bash
|
|
95
|
+
mkdir -p /home/aiuser/.claude/skills/{slug}
|
|
96
|
+
```
|
|
97
|
+
Then use Write tool: `/home/aiuser/.claude/skills/{slug}/SKILL.md`
|
|
98
|
+
|
|
99
|
+
2. Register with registry:
|
|
100
|
+
```bash
|
|
101
|
+
optima-skills-cli skill create --slug "{slug}" --name "{name}" --description "{description}" --file "/home/aiuser/.claude/skills/{slug}/SKILL.md"
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
3. Parse the JSON output. If it contains an `id` field, creation succeeded.
|
|
105
|
+
|
|
106
|
+
4. Tell the user: "Skill '{name}' created! Try it by saying: '{trigger phrase}'"
|
|
107
|
+
|
|
108
|
+
## Step 6: Error Handling
|
|
109
|
+
|
|
110
|
+
- **CLI outputs `TOKEN_EXPIRED`**: "注册失败(token 过期),但 skill 在当前会话可用。刷新页面后重试。"
|
|
111
|
+
- **CLI outputs error with `slug already exists`**: Suggest alternative slug, retry with new slug.
|
|
112
|
+
- **CLI outputs other error**: "Skill 保存到本地成功,但注册到云端失败。当前会话可正常使用。"
|
|
113
|
+
- **Write tool fails**: Inform user and abort.
|
|
114
|
+
- **CLI hangs (10s timeout)**: CLI will auto-abort. Tell user: "注册超时,但 skill 在当前会话可用。"
|