@xopcai/xopcbot 0.1.0 → 0.1.2
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/dist/channels/telegram/plugin.d.ts +1 -0
- package/dist/channels/telegram/plugin.js +72 -1
- package/dist/channels/telegram/plugin.js.map +1 -1
- package/dist/cli/index.js +0 -0
- package/dist/config/paths.d.ts +1 -0
- package/dist/config/paths.js +18 -2
- package/dist/config/paths.js.map +1 -1
- package/package.json +4 -3
- package/skills/find-skills/SKILL.md +449 -0
- package/skills/github/SKILL.md +48 -0
- package/skills/summarize/SKILL.md +47 -0
- package/skills/weather/SKILL.md +46 -0
|
@@ -13,6 +13,7 @@ export declare class TelegramChannelPlugin implements ChannelPlugin {
|
|
|
13
13
|
meta: ChannelMetadata;
|
|
14
14
|
private accountManager;
|
|
15
15
|
private messageProcessor;
|
|
16
|
+
private commandHandlers;
|
|
16
17
|
private bus;
|
|
17
18
|
private config;
|
|
18
19
|
init(options: ChannelInitOptions): Promise<void>;
|
|
@@ -14,6 +14,7 @@ import { readUpdateOffset, writeUpdateOffset } from '../update-offset-store.js';
|
|
|
14
14
|
import { draftStreamManager } from '../draft-stream.js';
|
|
15
15
|
import { formatTelegramMessage } from '../format.js';
|
|
16
16
|
import { createLogger } from '../../utils/logger.js';
|
|
17
|
+
import { createTelegramCommandHandler } from './command-handler.js';
|
|
17
18
|
const log = createLogger('TelegramPlugin');
|
|
18
19
|
// ============================================
|
|
19
20
|
// MIME Type Helper
|
|
@@ -109,7 +110,7 @@ class TelegramAccountManager {
|
|
|
109
110
|
}
|
|
110
111
|
}
|
|
111
112
|
function createMessageProcessor(deps) {
|
|
112
|
-
const { bus, config, accountManager } = deps;
|
|
113
|
+
const { bus, config, accountManager, _commandHandler } = deps;
|
|
113
114
|
const messageQueues = new Map();
|
|
114
115
|
const processingChats = new Set();
|
|
115
116
|
const getChatKey = (accountId, chatId) => `${accountId}:${chatId}`;
|
|
@@ -298,15 +299,24 @@ export class TelegramChannelPlugin {
|
|
|
298
299
|
};
|
|
299
300
|
accountManager = new TelegramAccountManager();
|
|
300
301
|
messageProcessor;
|
|
302
|
+
commandHandlers = new Map();
|
|
301
303
|
bus = null;
|
|
302
304
|
config = null;
|
|
303
305
|
async init(options) {
|
|
304
306
|
this.bus = options.bus;
|
|
305
307
|
this.config = options.config;
|
|
308
|
+
// Create command handler for shared state
|
|
309
|
+
const commandHandler = createTelegramCommandHandler({
|
|
310
|
+
bus: options.bus,
|
|
311
|
+
config: options.config,
|
|
312
|
+
getSessionModel: (sessionKey) => this.getSessionModel(sessionKey),
|
|
313
|
+
setSessionModel: (sessionKey, modelId) => this.setSessionModel(sessionKey, modelId),
|
|
314
|
+
});
|
|
306
315
|
this.messageProcessor = createMessageProcessor({
|
|
307
316
|
bus: options.bus,
|
|
308
317
|
config: options.config,
|
|
309
318
|
accountManager: this.accountManager,
|
|
319
|
+
_commandHandler: commandHandler,
|
|
310
320
|
});
|
|
311
321
|
const telegramConfig = options.config.channels?.telegram;
|
|
312
322
|
if (!telegramConfig?.enabled) {
|
|
@@ -358,6 +368,36 @@ export class TelegramChannelPlugin {
|
|
|
358
368
|
const me = await bot.api.getMe();
|
|
359
369
|
this.accountManager.setBotUsername(accountId, me.username);
|
|
360
370
|
log.info({ accountId, username: me.username }, 'Telegram bot initialized');
|
|
371
|
+
// Get or create command handler for this account
|
|
372
|
+
let commandHandler = this.commandHandlers.get(accountId);
|
|
373
|
+
if (!commandHandler) {
|
|
374
|
+
commandHandler = createTelegramCommandHandler({
|
|
375
|
+
bus: this.bus,
|
|
376
|
+
config: this.config,
|
|
377
|
+
getSessionModel: (sessionKey) => this.getSessionModel(sessionKey),
|
|
378
|
+
setSessionModel: (sessionKey, modelId) => this.setSessionModel(sessionKey, modelId),
|
|
379
|
+
showProviderModels: async (ctx, providerId) => {
|
|
380
|
+
await commandHandler.handleProviderSelect(ctx, providerId);
|
|
381
|
+
},
|
|
382
|
+
showProvidersAgain: async (ctx) => {
|
|
383
|
+
await commandHandler.handleShowProviders(ctx);
|
|
384
|
+
},
|
|
385
|
+
handleCleanupConfirm: async (ctx) => {
|
|
386
|
+
await commandHandler.handleCleanupConfirm(ctx);
|
|
387
|
+
},
|
|
388
|
+
});
|
|
389
|
+
this.commandHandlers.set(accountId, commandHandler);
|
|
390
|
+
}
|
|
391
|
+
// Register slash commands
|
|
392
|
+
bot.command('models', async (ctx) => {
|
|
393
|
+
await commandHandler.handleModels(ctx);
|
|
394
|
+
});
|
|
395
|
+
bot.command('usage', async (ctx) => {
|
|
396
|
+
await commandHandler.handleUsage(ctx);
|
|
397
|
+
});
|
|
398
|
+
bot.command('cleanup', async (ctx) => {
|
|
399
|
+
await commandHandler.handleCleanup(ctx);
|
|
400
|
+
});
|
|
361
401
|
// Register message handler
|
|
362
402
|
const enqueueMessage = this.messageProcessor;
|
|
363
403
|
bot.on('message', async (ctx) => {
|
|
@@ -368,6 +408,37 @@ export class TelegramChannelPlugin {
|
|
|
368
408
|
log.error({ accountId, err }, 'Failed to process message');
|
|
369
409
|
}
|
|
370
410
|
});
|
|
411
|
+
// Register callback query handler for inline keyboards
|
|
412
|
+
bot.on('callback_query:data', async (ctx) => {
|
|
413
|
+
try {
|
|
414
|
+
const data = ctx.callbackQuery.data;
|
|
415
|
+
if (data.startsWith('provider:')) {
|
|
416
|
+
const providerId = data.slice('provider:'.length);
|
|
417
|
+
await commandHandler.handleProviderSelect(ctx, providerId);
|
|
418
|
+
}
|
|
419
|
+
else if (data.startsWith('model:')) {
|
|
420
|
+
const modelId = data.slice('model:'.length);
|
|
421
|
+
await commandHandler.handleModelSelect(ctx, modelId);
|
|
422
|
+
}
|
|
423
|
+
else if (data === 'providers') {
|
|
424
|
+
await commandHandler.handleShowProviders(ctx);
|
|
425
|
+
}
|
|
426
|
+
else if (data === 'cleanup:confirm') {
|
|
427
|
+
await commandHandler.handleCleanupConfirm(ctx);
|
|
428
|
+
}
|
|
429
|
+
else if (data === 'cancel') {
|
|
430
|
+
await commandHandler.handleCancel(ctx);
|
|
431
|
+
}
|
|
432
|
+
else {
|
|
433
|
+
log.warn({ callbackData: data, accountId }, 'Unknown callback query data');
|
|
434
|
+
await ctx.answerCallbackQuery('Unknown action');
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
catch (err) {
|
|
438
|
+
log.error({ accountId, err }, 'Failed to handle callback query');
|
|
439
|
+
await ctx.answerCallbackQuery('Failed to process action');
|
|
440
|
+
}
|
|
441
|
+
});
|
|
371
442
|
// Error handler
|
|
372
443
|
bot.catch((err) => {
|
|
373
444
|
const ctx = err.ctx;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/channels/telegram/plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/channels/telegram/plugin.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
File without changes
|
package/dist/config/paths.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ export declare function getWorkspacePluginsDir(workspaceDir?: string): string;
|
|
|
27
27
|
export declare function getBundledPluginsDir(): string | null;
|
|
28
28
|
/**
|
|
29
29
|
* Get bundled skills directory (shipped with xopcbot)
|
|
30
|
+
* Works in both production (installed from npm) and development (source code)
|
|
30
31
|
*/
|
|
31
32
|
export declare function getBundledSkillsDir(): string | null;
|
|
32
33
|
/**
|
package/dist/config/paths.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { homedir } from 'os';
|
|
2
2
|
import { join, dirname } from 'path';
|
|
3
|
+
import { existsSync } from 'fs';
|
|
3
4
|
import { fileURLToPath } from 'url';
|
|
4
5
|
export const XOPCBOT_DIR = '.xopcbot';
|
|
5
6
|
export const DEFAULT_BASE_DIR = join(homedir(), XOPCBOT_DIR);
|
|
@@ -51,13 +52,28 @@ export function getBundledPluginsDir() {
|
|
|
51
52
|
}
|
|
52
53
|
/**
|
|
53
54
|
* Get bundled skills directory (shipped with xopcbot)
|
|
55
|
+
* Works in both production (installed from npm) and development (source code)
|
|
54
56
|
*/
|
|
55
57
|
export function getBundledSkillsDir() {
|
|
56
58
|
try {
|
|
57
59
|
const currentFile = fileURLToPath(import.meta.url);
|
|
58
60
|
const srcDir = dirname(currentFile);
|
|
59
|
-
|
|
60
|
-
|
|
61
|
+
// Production (npm): dist/config/paths.js -> ../../ -> package root -> skills
|
|
62
|
+
// Works for both:
|
|
63
|
+
// - Direct install: node_modules/@xopcai/xopcbot/dist/config/paths.js
|
|
64
|
+
// - Local dev: /path/to/xopcbot/dist/config/paths.js
|
|
65
|
+
const packageRoot = join(srcDir, '..', '..');
|
|
66
|
+
const skillsDir = join(packageRoot, 'skills');
|
|
67
|
+
if (existsSync(skillsDir)) {
|
|
68
|
+
return skillsDir;
|
|
69
|
+
}
|
|
70
|
+
// Development (source): src/config/paths.js -> ../../../ -> package root -> skills
|
|
71
|
+
const devPackageRoot = join(srcDir, '..', '..', '..');
|
|
72
|
+
const devSkillsDir = join(devPackageRoot, 'skills');
|
|
73
|
+
if (existsSync(devSkillsDir)) {
|
|
74
|
+
return devSkillsDir;
|
|
75
|
+
}
|
|
76
|
+
return null;
|
|
61
77
|
}
|
|
62
78
|
catch {
|
|
63
79
|
return null;
|
package/dist/config/paths.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/config/paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;AAE7D,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,aAAa,CAAC;IAC7C,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC;IAC9C,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC;IAC5C,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,EAAE,UAAU,CAAC;IACxD,aAAa,EAAE,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC;IAChD,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC;IACxC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;CAC1C,CAAC;AAEX,MAAM,UAAU,oBAAoB;IAClC,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,aAAa,CAAC,MAAM,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,aAAa,CAAC,SAAS,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO,aAAa,CAAC,aAAa,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,YAAqB;IAC1D,MAAM,EAAE,GAAG,YAAY,IAAI,uBAAuB,EAAE,CAAC;IACrD,OAAO,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QACpC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QACvD,OAAO,UAAU,CAAC;IACpB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/config/paths.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xopcai/xopcbot",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Ultra-Lightweight Personal AI Assistant - Node.js + TypeScript",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"xopcbot": "./dist/cli/index.js"
|
|
10
10
|
},
|
|
11
11
|
"files": [
|
|
12
|
-
"dist"
|
|
12
|
+
"dist",
|
|
13
|
+
"skills"
|
|
13
14
|
],
|
|
14
15
|
"publishConfig": {
|
|
15
16
|
"access": "public"
|
|
@@ -26,7 +27,7 @@
|
|
|
26
27
|
"skills:validate": "tsx src/cli/index.ts skills test validate",
|
|
27
28
|
"skills:security": "tsx src/cli/index.ts skills test security",
|
|
28
29
|
"lint": "eslint 'src/**/*.ts' --ignore-pattern '**/examples/**'",
|
|
29
|
-
"prepublishOnly": "npm
|
|
30
|
+
"prepublishOnly": "npm test && npm run test:skills:all && npm run build",
|
|
30
31
|
"docs:dev": "vitepress dev docs",
|
|
31
32
|
"docs:build": "vitepress build docs",
|
|
32
33
|
"docs:preview": "vitepress preview docs"
|
|
@@ -0,0 +1,449 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: find-skills
|
|
3
|
+
description: Helps users discover, install, and manage agent skills in xopcbot workspace
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
openclaw:
|
|
7
|
+
requires:
|
|
8
|
+
bins: [git]
|
|
9
|
+
install:
|
|
10
|
+
- id: git-clone
|
|
11
|
+
kind: download
|
|
12
|
+
label: Clone skills repository
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Find Skills
|
|
16
|
+
|
|
17
|
+
This skill helps you discover, install, and manage skills in the xopcbot ecosystem.
|
|
18
|
+
|
|
19
|
+
## When to Use This Skill
|
|
20
|
+
|
|
21
|
+
Use this skill when the user:
|
|
22
|
+
|
|
23
|
+
- Asks "how do I do X" where X might be a common task with an existing skill
|
|
24
|
+
- Says "find a skill for X" or "is there a skill for X"
|
|
25
|
+
- Asks "can you do X" where X is a specialized capability
|
|
26
|
+
- Wants to install a skill from GitHub or skills.sh
|
|
27
|
+
- Needs to manage installed skills (enable, disable, configure)
|
|
28
|
+
- Wants to browse available skills
|
|
29
|
+
|
|
30
|
+
## xopcbot Skills CLI Commands
|
|
31
|
+
|
|
32
|
+
xopcbot provides built-in commands for skill management:
|
|
33
|
+
|
|
34
|
+
### List Available Skills
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# List all skills (builtin + workspace + global)
|
|
38
|
+
xopcbot skills list
|
|
39
|
+
|
|
40
|
+
# Show detailed information
|
|
41
|
+
xopcbot skills list -v
|
|
42
|
+
|
|
43
|
+
# JSON format
|
|
44
|
+
xopcbot skills list --json
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Install Skills
|
|
48
|
+
|
|
49
|
+
**From GitHub:**
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
# Clone a skill repository to workspace
|
|
53
|
+
git clone <repo-url> ~/.xopcbot/workspace/skills/<skill-name>
|
|
54
|
+
|
|
55
|
+
# Example: Install vercel-react-best-practices
|
|
56
|
+
git clone https://github.com/vercel-labs/agent-skills.git ~/.xopcbot/workspace/skills/vercel-react-best-practices-temp
|
|
57
|
+
mv ~/.xopcbot/workspace/skills/vercel-react-best-practices-temp/SKILL.md ~/.xopcbot/workspace/skills/vercel-react-best-practices/SKILL.md
|
|
58
|
+
rm -rf ~/.xopcbot/workspace/skills/vercel-react-best-practices-temp
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**Using xopcbot skills install (for skills with install specs):**
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Install skill dependencies
|
|
65
|
+
xopcbot skills install <skill-name>
|
|
66
|
+
|
|
67
|
+
# Specify install method
|
|
68
|
+
xopcbot skills install <skill-name> -i <install-id>
|
|
69
|
+
|
|
70
|
+
# Dry run (preview)
|
|
71
|
+
xopcbot skills install <skill-name> --dry-run
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### Enable/Disable Skills
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# Enable a skill
|
|
78
|
+
xopcbot skills enable <skill-name>
|
|
79
|
+
|
|
80
|
+
# Disable a skill
|
|
81
|
+
xopcbot skills disable <skill-name>
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Check Skill Status
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# Show all skills status
|
|
88
|
+
xopcbot skills status
|
|
89
|
+
|
|
90
|
+
# Show specific skill details
|
|
91
|
+
xopcbot skills status <skill-name>
|
|
92
|
+
|
|
93
|
+
# JSON format
|
|
94
|
+
xopcbot skills status --json
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Configure Skills
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# Show current configuration
|
|
101
|
+
xopcbot skills config <skill-name> --show
|
|
102
|
+
|
|
103
|
+
# Set API key
|
|
104
|
+
xopcbot skills config <skill-name> --api-key=YOUR_API_KEY
|
|
105
|
+
|
|
106
|
+
# Set environment variables
|
|
107
|
+
xopcbot skills config <skill-name> --env API_KEY=value --env DEBUG=true
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Test Skills
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
# Test all skills
|
|
114
|
+
xopcbot skills test
|
|
115
|
+
|
|
116
|
+
# Test specific skill
|
|
117
|
+
xopcbot skills test <skill-name>
|
|
118
|
+
|
|
119
|
+
# Validate SKILL.md file
|
|
120
|
+
xopcbot skills test validate ./skills/weather/SKILL.md
|
|
121
|
+
|
|
122
|
+
# Security audit
|
|
123
|
+
xopcbot skills test security --deep
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## How to Help Users Find and Install Skills
|
|
127
|
+
|
|
128
|
+
### Step 1: Understand What They Need
|
|
129
|
+
|
|
130
|
+
When a user asks for help with something, identify:
|
|
131
|
+
|
|
132
|
+
1. **The domain** (e.g., React, testing, design, deployment)
|
|
133
|
+
2. **The specific task** (e.g., writing tests, creating animations, reviewing PRs)
|
|
134
|
+
3. **Whether a skill likely exists** for this common task
|
|
135
|
+
|
|
136
|
+
### Step 2: Search for Skills
|
|
137
|
+
|
|
138
|
+
**Option A: Check installed skills first**
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
xopcbot skills list -v
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**Option B: Search online skill repositories**
|
|
145
|
+
|
|
146
|
+
Use your browsing capabilities to search:
|
|
147
|
+
- https://skills.sh/ - Official skills marketplace
|
|
148
|
+
- GitHub: Search for "agent-skills" or "claude-skills"
|
|
149
|
+
- Popular repos:
|
|
150
|
+
- `vercel-labs/agent-skills`
|
|
151
|
+
- `ComposioHQ/awesome-claude-skills`
|
|
152
|
+
- `openclaw/openclaw/skills`
|
|
153
|
+
|
|
154
|
+
### Step 3: Install the Skill
|
|
155
|
+
|
|
156
|
+
**For xopcbot-compatible skills:**
|
|
157
|
+
|
|
158
|
+
1. **Check if skill has install specs** in SKILL.md:
|
|
159
|
+
```bash
|
|
160
|
+
xopcbot skills status <skill-name>
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
2. **Install dependencies** (if any):
|
|
164
|
+
```bash
|
|
165
|
+
xopcbot skills install <skill-name>
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
**For GitHub skills (manual installation):**
|
|
169
|
+
|
|
170
|
+
1. **Create skill directory** in workspace:
|
|
171
|
+
```bash
|
|
172
|
+
mkdir -p ~/.xopcbot/workspace/skills/<skill-name>
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
2. **Download SKILL.md**:
|
|
176
|
+
```bash
|
|
177
|
+
# From GitHub
|
|
178
|
+
curl -L https://raw.githubusercontent.com/<owner>/<repo>/main/skills/<skill-name>/SKILL.md \
|
|
179
|
+
-o ~/.xopcbot/workspace/skills/<skill-name>/SKILL.md
|
|
180
|
+
|
|
181
|
+
# Or clone and copy
|
|
182
|
+
git clone <repo-url> /tmp/skill-temp
|
|
183
|
+
cp /tmp/skill-temp/skills/<skill-name>/SKILL.md ~/.xopcbot/workspace/skills/<skill-name>/
|
|
184
|
+
rm -rf /tmp/skill-temp
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
3. **Verify installation**:
|
|
188
|
+
```bash
|
|
189
|
+
xopcbot skills list | grep <skill-name>
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### Step 4: Present Results to User
|
|
193
|
+
|
|
194
|
+
When you find relevant skills, present them with:
|
|
195
|
+
|
|
196
|
+
1. **Skill name and description**
|
|
197
|
+
2. **Installation status** (already installed / needs installation)
|
|
198
|
+
3. **Install command** (if not installed)
|
|
199
|
+
4. **Link to learn more**
|
|
200
|
+
|
|
201
|
+
**Example response:**
|
|
202
|
+
|
|
203
|
+
```
|
|
204
|
+
I found a skill that might help!
|
|
205
|
+
|
|
206
|
+
📦 vercel-react-best-practices
|
|
207
|
+
React and Next.js performance optimization guidelines from Vercel Engineering.
|
|
208
|
+
|
|
209
|
+
Status: ✅ Already installed
|
|
210
|
+
|
|
211
|
+
You can start using it immediately! Just ask me to help with React optimization tasks.
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
**Or if not installed:**
|
|
215
|
+
|
|
216
|
+
```
|
|
217
|
+
I found a skill that might help!
|
|
218
|
+
|
|
219
|
+
📦 vercel-react-best-practices
|
|
220
|
+
React and Next.js performance optimization guidelines from Vercel Engineering.
|
|
221
|
+
|
|
222
|
+
To install it, run:
|
|
223
|
+
xopcbot skills install vercel-react-best-practices
|
|
224
|
+
|
|
225
|
+
Or manually:
|
|
226
|
+
mkdir -p ~/.xopcbot/workspace/skills/vercel-react-best-practices
|
|
227
|
+
curl -L https://raw.githubusercontent.com/vercel-labs/agent-skills/main/skills/vercel-react-best-practices/SKILL.md \
|
|
228
|
+
-o ~/.xopcbot/workspace/skills/vercel-react-best-practices/SKILL.md
|
|
229
|
+
|
|
230
|
+
Learn more: https://skills.sh/vercel-labs/agent-skills/vercel-react-best-practices
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### Step 5: Offer to Install
|
|
234
|
+
|
|
235
|
+
If the user wants to proceed, you can help them install:
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
# For xopcbot skills with install specs
|
|
239
|
+
xopcbot skills install <skill-name> -y
|
|
240
|
+
|
|
241
|
+
# For GitHub skills (automated)
|
|
242
|
+
mkdir -p ~/.xopcbot/workspace/skills/<skill-name>
|
|
243
|
+
curl -L <skill-url>/SKILL.md -o ~/.xopcbot/workspace/skills/<skill-name>/SKILL.md
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
## Common Skill Categories
|
|
247
|
+
|
|
248
|
+
| Category | Example Queries | Popular Skills |
|
|
249
|
+
| --------------- | ---------------------------------------- | --------------------------------- |
|
|
250
|
+
| Web Development | react, nextjs, typescript, css, tailwind | vercel-react-best-practices |
|
|
251
|
+
| Testing | testing, jest, playwright, e2e | playwright-testing |
|
|
252
|
+
| DevOps | deploy, docker, kubernetes, ci-cd | docker-compose, github-actions |
|
|
253
|
+
| Documentation | docs, readme, changelog, api-docs | api-documentation |
|
|
254
|
+
| Code Quality | review, lint, refactor, best-practices | code-review-checklist |
|
|
255
|
+
| Design | ui, ux, design-system, accessibility | accessibility-checklist |
|
|
256
|
+
| Productivity | workflow, automation, git | git-workflow |
|
|
257
|
+
|
|
258
|
+
## Skill Directory Structure
|
|
259
|
+
|
|
260
|
+
Skills must be installed in the correct directory structure:
|
|
261
|
+
|
|
262
|
+
```
|
|
263
|
+
~/.xopcbot/workspace/skills/
|
|
264
|
+
├── <skill-name>/ ← Each skill needs its own directory
|
|
265
|
+
│ ├── SKILL.md ← Required: Skill metadata and instructions
|
|
266
|
+
│ ├── config.json ← Optional: Default configuration
|
|
267
|
+
│ └── scripts/ ← Optional: Helper scripts
|
|
268
|
+
├── another-skill/
|
|
269
|
+
│ └── SKILL.md
|
|
270
|
+
└── ...
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
**⚠️ Common Mistake:** Don't put SKILL.md directly in `skills/` directory!
|
|
274
|
+
|
|
275
|
+
**Correct:**
|
|
276
|
+
```
|
|
277
|
+
~/.xopcbot/workspace/skills/my-skill/SKILL.md
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
**Incorrect:**
|
|
281
|
+
```
|
|
282
|
+
~/.xopcbot/workspace/skills/SKILL.md ← Won't be loaded!
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
## Skill Installation Methods
|
|
286
|
+
|
|
287
|
+
### Method 1: xopcbot Built-in Install (Recommended)
|
|
288
|
+
|
|
289
|
+
For skills that declare install dependencies:
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
# Check what will be installed
|
|
293
|
+
xopcbot skills install <skill-name> --dry-run
|
|
294
|
+
|
|
295
|
+
# Install
|
|
296
|
+
xopcbot skills install <skill-name>
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
This method:
|
|
300
|
+
- ✅ Automatically installs dependencies (brew, pnpm, go, etc.)
|
|
301
|
+
- ✅ Performs security scanning
|
|
302
|
+
- ✅ Validates the skill
|
|
303
|
+
- ✅ Reports any issues
|
|
304
|
+
|
|
305
|
+
### Method 2: Manual GitHub Installation
|
|
306
|
+
|
|
307
|
+
For skills without install specs:
|
|
308
|
+
|
|
309
|
+
```bash
|
|
310
|
+
# 1. Create directory
|
|
311
|
+
mkdir -p ~/.xopcbot/workspace/skills/<skill-name>
|
|
312
|
+
|
|
313
|
+
# 2. Download SKILL.md
|
|
314
|
+
curl -L https://raw.githubusercontent.com/<owner>/<repo>/main/skills/<skill-name>/SKILL.md \
|
|
315
|
+
-o ~/.xopcbot/workspace/skills/<skill-name>/SKILL.md
|
|
316
|
+
|
|
317
|
+
# 3. Verify
|
|
318
|
+
xopcbot skills list | grep <skill-name>
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
### Method 3: Git Clone
|
|
322
|
+
|
|
323
|
+
For complex skills with multiple files:
|
|
324
|
+
|
|
325
|
+
```bash
|
|
326
|
+
# Clone to temp location
|
|
327
|
+
git clone <repo-url> /tmp/skill-clone
|
|
328
|
+
|
|
329
|
+
# Copy skill directory
|
|
330
|
+
cp -r /tmp/skill-clone/skills/<skill-name> ~/.xopcbot/workspace/skills/
|
|
331
|
+
|
|
332
|
+
# Clean up
|
|
333
|
+
rm -rf /tmp/skill-clone
|
|
334
|
+
|
|
335
|
+
# Verify
|
|
336
|
+
xopcbot skills status <skill-name>
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
## Troubleshooting
|
|
340
|
+
|
|
341
|
+
### Skill Not Loading
|
|
342
|
+
|
|
343
|
+
**Check directory structure:**
|
|
344
|
+
```bash
|
|
345
|
+
# Should show SKILL.md in a subdirectory
|
|
346
|
+
ls -la ~/.xopcbot/workspace/skills/<skill-name>/
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
**Validate SKILL.md format:**
|
|
350
|
+
```bash
|
|
351
|
+
xopcbot skills test validate ~/.xopcbot/workspace/skills/<skill-name>/SKILL.md
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
**Check for errors:**
|
|
355
|
+
```bash
|
|
356
|
+
xopcbot skills list --json | jq '.diagnostics'
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
### Installation Failed
|
|
360
|
+
|
|
361
|
+
**Check dependencies:**
|
|
362
|
+
```bash
|
|
363
|
+
xopcbot skills status <skill-name>
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
**Manual installation:**
|
|
367
|
+
```bash
|
|
368
|
+
# If skill requires 'curl'
|
|
369
|
+
brew install curl # macOS
|
|
370
|
+
sudo apt-get install curl # Linux
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
**Retry:**
|
|
374
|
+
```bash
|
|
375
|
+
xopcbot skills install <skill-name>
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
### Skill Not Working
|
|
379
|
+
|
|
380
|
+
1. **Check if enabled:**
|
|
381
|
+
```bash
|
|
382
|
+
xopcbot skills status <skill-name>
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
2. **Enable if needed:**
|
|
386
|
+
```bash
|
|
387
|
+
xopcbot skills enable <skill-name>
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
3. **Check configuration:**
|
|
391
|
+
```bash
|
|
392
|
+
xopcbot skills config <skill-name> --show
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
4. **Set API key if required:**
|
|
396
|
+
```bash
|
|
397
|
+
xopcbot skills config <skill-name> --api-key=YOUR_KEY
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
## Examples
|
|
401
|
+
|
|
402
|
+
### Example 1: User asks about React performance
|
|
403
|
+
|
|
404
|
+
**User:** "How can I make my React app faster?"
|
|
405
|
+
|
|
406
|
+
**You:**
|
|
407
|
+
1. Check installed skills: `xopcbot skills list | grep -i react`
|
|
408
|
+
2. If found: "You have the vercel-react-best-practices skill installed!"
|
|
409
|
+
3. If not found: Offer to install it
|
|
410
|
+
|
|
411
|
+
### Example 2: User wants to add testing capability
|
|
412
|
+
|
|
413
|
+
**User:** "Can you help me write Playwright tests?"
|
|
414
|
+
|
|
415
|
+
**You:**
|
|
416
|
+
1. Search for testing skills
|
|
417
|
+
2. Found: `playwright-testing`
|
|
418
|
+
3. Install:
|
|
419
|
+
```bash
|
|
420
|
+
mkdir -p ~/.xopcbot/workspace/skills/playwright-testing
|
|
421
|
+
curl -L <url>/SKILL.md -o ~/.xopcbot/workspace/skills/playwright-testing/SKILL.md
|
|
422
|
+
```
|
|
423
|
+
4. Verify: `xopcbot skills status playwright-testing`
|
|
424
|
+
|
|
425
|
+
### Example 3: User wants to browse all skills
|
|
426
|
+
|
|
427
|
+
**User:** "What skills do you have?"
|
|
428
|
+
|
|
429
|
+
**You:**
|
|
430
|
+
```bash
|
|
431
|
+
xopcbot skills list -v
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
Then present the list with descriptions.
|
|
435
|
+
|
|
436
|
+
## Tips for Effective Skill Management
|
|
437
|
+
|
|
438
|
+
1. **Always verify installation**: Run `xopcbot skills list` after installing
|
|
439
|
+
2. **Check skill status**: Use `xopcbot skills status <name>` for details
|
|
440
|
+
3. **Keep skills updated**: Periodically check for skill updates
|
|
441
|
+
4. **Review security**: Run `xopcbot skills test security` for audits
|
|
442
|
+
5. **Organize workspace**: Keep only needed skills to reduce clutter
|
|
443
|
+
|
|
444
|
+
## References
|
|
445
|
+
|
|
446
|
+
- **Skills Marketplace**: https://skills.sh/
|
|
447
|
+
- **xopcbot Skills CLI**: `xopcbot skills --help`
|
|
448
|
+
- **Skill Format**: SKILL.md frontmatter specification
|
|
449
|
+
- **GitHub Skills**: Search "agent-skills" on GitHub
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: github
|
|
3
|
+
description: "Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# GitHub Skill
|
|
8
|
+
|
|
9
|
+
Use the `gh` CLI to interact with GitHub. Always specify `--repo owner/repo` when not in a git directory, or use URLs directly.
|
|
10
|
+
|
|
11
|
+
## Pull Requests
|
|
12
|
+
|
|
13
|
+
Check CI status on a PR:
|
|
14
|
+
```bash
|
|
15
|
+
gh pr checks 55 --repo owner/repo
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
List recent workflow runs:
|
|
19
|
+
```bash
|
|
20
|
+
gh run list --repo owner/repo --limit 10
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
View a run and see which steps failed:
|
|
24
|
+
```bash
|
|
25
|
+
gh run view <run-id> --repo owner/repo
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
View logs for failed steps only:
|
|
29
|
+
```bash
|
|
30
|
+
gh run view <run-id> --repo owner/repo --log-failed
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## API for Advanced Queries
|
|
34
|
+
|
|
35
|
+
The `gh api` command is useful for accessing data not available through other subcommands.
|
|
36
|
+
|
|
37
|
+
Get PR with specific fields:
|
|
38
|
+
```bash
|
|
39
|
+
gh api repos/owner/repo/pulls/55 --jq '.title, .state, .user.login'
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## JSON Output
|
|
43
|
+
|
|
44
|
+
Most commands support `--json` for structured output. You can use `--jq` to filter:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
gh issue list --repo owner/repo --json number,title --jq '.[] | "\(.number): \(.title)"'
|
|
48
|
+
```
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: summarize
|
|
3
|
+
description: Summarize URLs, files, and YouTube videos.
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Summarize Skill
|
|
8
|
+
|
|
9
|
+
Summarize content from URLs, files, and YouTube videos.
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
### Summarize a URL
|
|
14
|
+
Use the `web_fetch` tool to fetch and summarize web pages:
|
|
15
|
+
```bash
|
|
16
|
+
web_fetch url="https://example.com/article"
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### Summarize a File
|
|
20
|
+
```bash
|
|
21
|
+
read_file path="/path/to/file.md"
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### Summarize a YouTube Video
|
|
25
|
+
```bash
|
|
26
|
+
web_fetch url="https://yewtu.be/watch?v=VIDEO_ID"
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Techniques
|
|
30
|
+
|
|
31
|
+
### For Long Content
|
|
32
|
+
1. Split into chunks (~2000 tokens each)
|
|
33
|
+
2. Summarize each chunk
|
|
34
|
+
3. Combine summaries
|
|
35
|
+
|
|
36
|
+
### For Technical Docs
|
|
37
|
+
1. Extract code examples
|
|
38
|
+
2. Note prerequisites
|
|
39
|
+
3. List key concepts/terms
|
|
40
|
+
|
|
41
|
+
## Example Prompts
|
|
42
|
+
|
|
43
|
+
**For a URL:**
|
|
44
|
+
"Read the URL and summarize: Main topic, Key points (3-5 bullet points), Any actionable items"
|
|
45
|
+
|
|
46
|
+
**For a file:**
|
|
47
|
+
"Analyze this file and provide: File type and purpose, Key functions/classes, Dependencies"
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: weather
|
|
3
|
+
description: Get current weather and forecasts (no API key required).
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Weather
|
|
8
|
+
|
|
9
|
+
Two free services, no API keys needed.
|
|
10
|
+
|
|
11
|
+
## wttr.in (primary)
|
|
12
|
+
|
|
13
|
+
Quick one-liner:
|
|
14
|
+
```bash
|
|
15
|
+
curl -s "wttr.in/London?format=3"
|
|
16
|
+
# Output: London: ⛅️ +8°C
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Compact format:
|
|
20
|
+
```bash
|
|
21
|
+
curl -s "wttr.in/London?format=%l:+%c+%t+%h+%w"
|
|
22
|
+
# Output: London: ⛅️ +8°C 71% ↙5km/h
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Full forecast:
|
|
26
|
+
```bash
|
|
27
|
+
curl -s "wttr.in/London?T"
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Format codes: `%c` condition · `%t` temp · `%h` humidity · `%w` wind · `%l` location · `%m` moon
|
|
31
|
+
|
|
32
|
+
Tips:
|
|
33
|
+
- URL-encode spaces: `wttr.in/New+York`
|
|
34
|
+
- Airport codes: `wttr.in/JFK`
|
|
35
|
+
- Units: `?m` (metric) `?u` (USCS)
|
|
36
|
+
- Today only: `?1` · Current only: `?0`
|
|
37
|
+
- PNG: `curl -s "wttr.in/Berlin.png" -o /tmp/weather.png`
|
|
38
|
+
|
|
39
|
+
## Open-Meteo (fallback, JSON)
|
|
40
|
+
|
|
41
|
+
Free, no key, good for programmatic use:
|
|
42
|
+
```bash
|
|
43
|
+
curl -s "https://api.open-meteo.com/v1/forecast?latitude=51.5&longitude=-0.12¤t_weather=true"
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Find coordinates for a city, then query. Returns JSON with temp, windspeed, weathercode.
|