用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/paralect/hive --skill hive-service命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | hive-service |
| description | How to create external services in Hive framework |
| globs | ["src/services/*.js"] |
| alwaysApply | false |
Services wrap external APIs and utilities.
Location: /src/services/{name}.js
import config from 'config';
import axios from 'axios';
const client = axios.create({
baseURL: 'https://api.example.com',
headers: {
Authorization: `Bearer ${config.example.apiKey}`,
},
});
export default {
getItems: async (params) => {
const response = await client.get('/items', { params });
return response.data;
},
createItem: async (data) => {
const response = await client.post('/items', data);
return response.data;
},
};
import config from 'config';
import { WebClient } from '@slack/web-api';
const client = new WebClient(config.slack.botToken);
export default {
client,
postMessage: async ({ channel, text }) => {
return client.chat.postMessage({ channel, text });
},
};
import _ from 'lodash';
export const when = (condition, result, elseResult = {}) => {
if (_.isUndefined(condition)) return {};
if (!condition) return elseResult;
return _.isFunction(result) ? result() : result;
};
export const base64 = {
encode: (obj) => Buffer.from(JSON.stringify(obj)).toString('base64'),
decode: (str) => JSON.parse(Buffer.from(str, 'base64').toString()),
};
import harvest from 'services/harvest';
import slackService from 'services/slack';
import { when } from 'services/utils';
// API calls
const invoices = await harvest.getInvoices({ projectId });
// SDK usage
await slackService.postMessage({ channel: '#general', text: 'Hello' });
// Utilities
const query = { ...when(status, { status }) };