mcpField
B
Bankr Dev - Project Templates

Bankr Dev - Project Templates

github.com/bankrbot开发88356 次安装31 周前更新
代码仓库

关于 Bankr Dev - Project Templates

面向开发者的 Bankr API 项目模板集合,提供 Bot、Web 服务、仪表盘和命令行工具的起始结构,并包含适合各类用途的模式。

主要功能

  1. 01含轮询与调度的 Bot 模板
  2. 02支持 REST 和 Webhook 的 Web 服务
  3. 03展示投资组合和市场信息的仪表盘
  4. 04含子命令和交互提示的 CLI
  5. 05共享 TypeScript 项目文件

适用场景

  1. 01构建定时价格监控或交易 Bot
  2. 02创建封装 Bankr 操作的 API
  3. 03搭建投资组合或市场仪表盘
  4. 04生成用于交易任务的命令行工具

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bankrbot/claude-plugins --skill bankr-dev---project-templates

安装后在 Claude Code 中输入/bankr-dev---project-templates确认已加载。

详细介绍

Bankr 项目模板

Bankr API 项目的目录结构和模板。

可用模板

模板用途主要功能
bot自动化任务轮询循环、调度器、状态流
web-serviceHTTP APIREST 端点、Webhook、异步处理
dashboardWeb 界面前端 + 后端、实时更新
cli命令行工具子命令、交互式提示

Bot 模板

适用于自动交易 Bot、价格监控、告警系统和定时任务。

目录结构
{project-name}/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── README.md
├── src/
│   ├── index.ts           # Main entry point with scheduler
│   ├── bankr-client.ts    # Bankr API client (from bankr-client-patterns skill)
│   ├── types.ts           # TypeScript interfaces
│   └── config.ts          # Configuration loading
└── scripts/
    └── run.sh             # Convenience script
主要功能
  • 轮询循环:可配置定期检查间隔
  • 状态流:实时更新任务状态
  • 错误处理:自动重试并采用退避策略
  • 环境配置:基于 .env 的配置
  • 平稳关闭:处理 SIGINT/SIGTERM
用途
  • 价格监控和告警
  • 自动化交易策略
  • 投资组合再平衡
  • 定时市场分析
  • DCA 自动化
入口点模式(index.ts)
import { execute } from "./bankr-client";

const INTERVAL = 60000; // 1 minute

async function runBot() {
  console.log("Starting Bankr bot...");

  while (true) {
    try {
      const result = await execute(
        "Check ETH price",
        (msg) => console.log("Status:", msg)
      );

      if (result.status === "completed") {
        console.log("Result:", result.response);
        // Add your logic here
      }
    } catch (error) {
      console.error("Error:", error);
    }

    await new Promise(r => setTimeout(r, INTERVAL));
  }
}

runBot();

Web 服务模板

适用于封装或扩展 Bankr 功能的 HTTP API。

目录结构
{project-name}/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── README.md
├── src/
│   ├── index.ts           # Server entry point
│   ├── server.ts          # Express/Fastify server setup
│   ├── routes/
│   │   ├── health.ts      # Health check endpoint
│   │   └── bankr.ts       # Bankr proxy/extension routes
│   ├── bankr-client.ts    # Bankr API client
│   ├── types.ts           # TypeScript interfaces
│   └── config.ts          # Configuration loading
└── scripts/
    └── run.sh
主要功能
  • REST API 端点:简洁的 API 设计
  • 请求验证:输入清理
  • 异步任务处理:非阻塞操作
  • Webhook 支持:任务完成时触发回调
  • 速率限制:防止滥用
  • CORS:支持跨域
用途
  • Bankr 的 API 网关
  • 自定义交易 API
  • Webhook 集成
  • 移动应用的后端
  • 微服务架构
其他依赖项
{
  "dependencies": {
    "express": "^4.18.0"
  }
}

或者使用 Fastify:

{
  "dependencies": {
    "fastify": "^4.25.0"
  }
}

Dashboard 模板

适用于投资组合跟踪、市场分析或监控类 Web 界面。

目录结构
{project-name}/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── README.md
├── server/
│   ├── index.ts           # Backend server
│   ├── bankr-client.ts    # Bankr API client
│   ├── routes/
│   │   └── api.ts         # API routes for frontend
│   └── types.ts
├── public/
│   ├── index.html         # Main HTML page
│   ├── styles.css         # Basic styles
│   └── app.js             # Frontend JavaScript
└── scripts/
    └── run.sh
主要功能
  • 简易前端:HTML/CSS/JS(无需构建步骤)
  • 后端 API:用于 Bankr 操作的 Express 服务
  • 实时更新:通过轮询获取状态变化
  • 投资组合展示:代币余额和价值
  • 市场数据:价格图表和分析
用途
  • 投资组合跟踪仪表板
  • 交易界面
  • 市场监控
  • 仓位管理
  • 分析仪表板
前端模式(app.js)
async function checkPrice() {
  const response = await fetch('/api/price/ETH');
  const data = await response.json();
  document.getElementById('eth-price').textContent = data.price;
}

setInterval(checkPrice, 30000);
checkPrice();

CLI 模板

适用于带有子命令和交互功能的命令行工具。

目录结构
{project-name}/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── README.md
├── src/
│   ├── index.ts           # CLI entry with commander.js
│   ├── commands/
│   │   ├── trade.ts       # Trading commands
│   │   ├── price.ts       # Price query commands
│   │   └── status.ts      # Job status commands
│   ├── bankr-client.ts    # Bankr API client
│   └── types.ts
└── scripts/
    └── run.sh
主要功能
  • Commander.js:带有子命令的 CLI 框架
  • 交互式提示:需要时获取用户输入
  • 进度指示器:轮询期间显示状态
  • 彩色输出:提升用户体验
  • 帮助系统:根据命令自动生成
用途
  • 个人交易工具
  • 脚本和自动化
  • DevOps 集成
  • 快速查询价格
  • 批量操作
其他依赖项
{
  "dependencies": {
    "commander": "^12.0.0"
  }
}
CLI 模式(index.ts)
import { program } from "commander";
import { price } from "./commands/price";
import { trade } from "./commands/trade";

program
  .name("bankr-cli")
  .description("CLI for Bankr operations")
  .version("1.0.0");

program
  .command("price <token>")
  .description("Get token price")
  .action(price);

program
  .command("trade <action> <amount> <token>")
  .description("Execute a trade")
  .option("-c, --chain <chain>", "Target chain", "base")
  .action(trade);

program.parse();

选择模板

需求推荐模板
自动执行定期任务bot
用于集成的 HTTP APIweb-service
可视化界面dashboard
基于终端的工具cli
价格告警bot
交易 APIweb-service
投资组合查看器dashboard
快速交易cli

常见文件

所有模板都包含一些共用文件。加载 bankr-client-patterns 技能可获取:

  • bankr-client.ts - 完整的 API 客户端
  • package.json - 基础依赖项
  • tsconfig.json - TypeScript 配置
  • .env.example - 环境模板
  • .gitignore - 标准忽略规则

脚手架生成后的后续步骤

  1. 安装依赖项:bun install 或 npm install
  2. 配置 API 密钥:将 .env.example 复制为 .env,并添加 BANKR_API_KEY
  3. 自定义:根据你的用途修改模板
  4. 运行:开发时使用 bun dev 或 npm run dev
  5. 构建:生产环境使用 bun run build 或 npm run build

评论

支持 Markdown