AgentSkillsCN

chatbot-dev

全面助力ChatBot项目开发的技能。提供有关项目结构、编码规范和开发工作流程的知识。在ChatBot项目中工作、被问及项目结构、被问及编码规范或添加新功能时使用。

SKILL.md
--- frontmatter
name: chatbot-dev
description: ChatBotプロジェクトの開発全般を支援するスキル。プロジェクト構造、コーディング規約、開発ワークフローに関する知識を提供します。ChatBotプロジェクトで作業する時、プロジェクト構造について質問された時、コーディング規約について質問された時、新しい機能を追加する時に使用してください。

ChatBot 開発スキル

このスキルはChatBotプロジェクトの開発全般を支援します。

プロジェクト概要

  • フロントエンド: HTML5/CSS3/JavaScript (ES6+)
  • バックエンド: Node.js + Express (app/server/index.js)
  • AI API: OpenAI, Claude, Gemini, Azure OpenAI対応
  • コード実行: JavaScript, Python (Pyodide), C++ (g++/JSCPP), HTML
  • RAG: Transformers.js + IndexedDB(ローカル埋め込み)
  • ポート: 50000(デフォルト)

主要ディレクトリ

パス説明
app/public/js/core/コアモジュール(API、config、storage等)
app/public/js/core/rag/RAG機能(ベクトルストア、埋め込み、検索)
app/public/js/components/UIコンポーネント
app/public/js/modals/モーダルダイアログ
app/public/js/utils/ユーティリティ関数
app/public/css/スタイルシート
app/server/バックエンドサーバー

クラス設計パターン

シングルトンパターン(必須)

すべてのクラスはシングルトンパターンで実装:

javascript
class ClassName {
    static #instance = null;

    constructor() {
        if (ClassName.#instance) {
            return ClassName.#instance;
        }
        ClassName.#instance = this;
    }

    static get getInstance() {
        if (!ClassName.#instance) {
            ClassName.#instance = new ClassName();
        }
        return ClassName.#instance;
    }
}

プライベートメソッド

ES2022のプライベートフィールド/メソッドを使用:

javascript
#privateField = null;
#privateMethod() { /* ... */ }

設定管理

すべての設定値は window.CONFIG オブジェクトで管理:

javascript
window.CONFIG.AIAPI.ENDPOINTS.OPENAI  // APIエンドポイント
window.CONFIG.STORAGE.KEYS.API_TYPE   // ストレージキー
window.CONFIG.AIAPI.DEFAULT_PARAMS    // デフォルトパラメータ

開発手順

  1. 関連するコアファイルを確認
  2. 既存パターンに従って実装
  3. 適切なエラーハンドリングを追加
  4. JSDocコメントで型情報を記載
  5. ドキュメント更新(下記参照)

ドキュメント更新ルール

実装変更後は必ず以下を確認・更新すること:

変更内容更新対象
新機能追加README.mdCLAUDE.mdreferences/project-structure.md
ディレクトリ追加CLAUDE.md(構造)、references/project-structure.md
設定値追加CLAUDE.mdconfig.jsコメント
API変更README.mdCLAUDE.md、該当Skillファイル
技術スタック変更README.md(技術スタック節)、CLAUDE.md
既存機能の仕様変更関連するすべてのドキュメント

更新対象ファイル一覧

ファイル内容対象読者
README.mdユーザー向けガイド、機能説明、技術スタックエンドユーザー
CLAUDE.md開発者向け概要、必須ルール、主要ファイルAI/開発者
references/project-structure.md詳細ディレクトリ構成AI/開発者

チェックリスト

実装完了時に確認:

  • README.md の主な特徴・技術スタックは最新か
  • CLAUDE.md の機能説明は最新か
  • references/project-structure.md のファイル構成は正確か
  • 新しいモジュールは主要ファイル表に追加されているか
  • 技術スタック(ライブラリ等)の変更は記載されているか

参照ファイル

詳細は以下のファイルを参照:

  • references/project-structure.md: 詳細なディレクトリ構成
  • references/coding-conventions.md: 命名規則、JSDoc
  • references/development-workflow.md: 開発フロー