SmartTicket はセルフホスト型のチケット管理&ナレッジコラボレーションプラットフォームです。単一の静的バイナリ、組み込み SQLite、RBAC、SLA トラッキング、そして持ち込み LLM による RAG を搭載。5分でデプロイでき、データを完全にコントロールできます。
$ git clone https://github.com/liliang-cn/smartticket && cd smartticket && docker compose up -d
人間にも、このページを要約する AI エンジンにも伝わるよう、核心をシンプルに整理しました。
docker compose upチケット管理、SLA、バージョン管理付きナレッジベース、ロールベースアクセス制御、顧客分離、AI アシスタンスがすべて組み込まれ、あなたが所有する単一プロセスで動作します。
優先度・重大度、担当者割り当て、スレッド型会話、添付ファイル、ステータスワークフロー、監査証跡 — 受付から解決まで一貫管理。
階層別の応答・解決目標、設定可能なサポートレベル、ノード単位・年間サブスクリプションのトラッキングに対応。
公開/内部の可視性制御付きバージョン管理記事、全文検索とセマンティック検索、そして読みやすいビューを提供します。
ロール、細粒度のパーミッション、そしてサービス層のアクターモデルにより、各顧客を自分のチケットのみに制限 — REST も MCP も同様です。
チャットとエンベディングには OpenAI 互換プロバイダーを自由に選択 — OpenAI、Azure、DeepSeek、Ollama、vLLM。ナレッジベースへの RAG、鍵は保存時に暗号化。
返信、担当者変更、ステータス変更がリアルタイムのアプリ内通知として届きます — メールサーバー不要で最新状況を把握できます。
チケット、ナレッジ、ユーザー、製品・サービスを JSON、CSV、XML、Markdown にエクスポート。データはデザインとして可搬性を持ちます。
設定ページから独自のプロダクト名、アクセントカラー、ロゴを設定するだけで、コンソールとサインイン画面に反映されます。
Model Context Protocol サーバーがチケットと返信をツールとして公開し、エージェントがプログラムでトリアージ・返信を行えます。
SmartTicket はウェブコンソールと API を1つにまとめた自己完結型バイナリとして提供されます。開始時にデータベースサーバー、メッセージキュー、リバースプロキシは不要です。
# Recommended — one command, nothing else to install git clone https://github.com/liliang-cn/smartticket.git cd smartticket # (recommended) generate strong secrets echo "SMARTTICKET_JWT_SECRET=$(openssl rand -hex 32)" > .env echo "SMARTTICKET_SECRET_KEY=$(openssl rand -hex 32)" >> .env docker compose up -d # → http://localhost:6533 # login: admin@smartticket.local / admin123 (change it!)
# Prerequisites: Go 1.25+, Node 20+, pnpm git clone https://github.com/liliang-cn/smartticket.git cd smartticket # builds the console and embeds it into one static binary make build-all ./build/smartticket serve --config configs/config.dev.yaml # → http://localhost:6533
# Build once, install the single binary make build-all sudo cp build/smartticket /usr/local/bin/ # Set persistent secrets + point at the prod config # (edit storage.data_path in configs/config.prod.yaml first) export SMARTTICKET_JWT_SECRET=$(openssl rand -hex 32) export SMARTTICKET_SECRET_KEY=$(openssl rand -hex 32) smartticket serve --config configs/config.prod.yaml # Put TLS in front with Caddy/Nginx, or use the # systemd unit in deployments/systemd/.
docker compose up 一発でアプリ全体がポート 6533 で起動します。Settings から名前、カラー、ロゴを設定します。AI Providers から OpenAI 互換のチャット+エンベディングプロバイダーを追加します。チケット、ナレッジ、RAG ベクターストア、設定のすべてが smartticket-data ボリューム(単一の SQLite ファイルとアップロードファイル)に保存されます。ボリュームをコピーするだけでバックアップでき、元に戻すだけで復元できます。
SmartTicket はシングルテナント設計です。1組織、1インスタンス。SaaS バックエンドへのコールバックも、共有マルチテナントデータベースも、必須サードパーティサービスもありません。
┌─ your server ──────────────┐ │ smartticket (1 binary) │ │ ├─ web console :6533 │ │ ├─ REST API :6533 │ │ ├─ MCP server (stdio) │ │ └─ SQLite + RAG (vol) │ └────────────┬───────────────┘ │ optional, you choose your LLM provider
チャットとエンベディングのプロバイダーをそれぞれ独立して設定できます — それぞれ独自のベース URL、モデル、キーを持ちます。ナレッジ記事は組み込みのベクターストアにインデックスされ、RAG 回答に活用されます。
Settings → Access を開き、IDプロバイダーのメタデータ URL を追加してメールクレームをマッピングし、チーム向けに SSO 強制を有効にしてください…
バックエンドは Go、フロントは React、基盤は SQLite。特殊なランタイムも、シート単位の課金も、予期しない依存関係もありません。
不要です。SQLite はバイナリに直接組み込まれており、その他の必須サービスはありません。アプリ全体が1つのプロセスで動作します — それがこのプロジェクトの本質です。
Docker の場合:git pull && docker compose up -d --build。データは名前付きボリュームに保存されており、リビルドの影響を受けません。ソースからの場合:git pull && make build-all を実行してバイナリを再起動します。スキーママイグレーションは起動時に自動実行されます。
いいえ。チケット管理・SLA・ナレッジベース・RBAC はすべて LLM の設定なしで動作します。AI 機能はオプトイン方式です。セマンティック検索と RAG の回答が必要な場合のみプロバイダーを追加してください。
見えません。カスタマーロールのユーザーはサービス層で自分の組織のチケットのみに制限されており、REST API と MCP サーバーの両方に同じ分離が適用されます。
データボリューム(SQLite ファイル、RAG ストア、アップロードされた添付ファイル)をコピーするだけです。復元はそれを戻してバイナリを起動するだけです。データ画面から JSON/CSV/XML/Markdown への全エクスポートも可能です。
ソフトウェアはオープンソースであり、セルフホストは無料です。費用が発生するのは、実行するサーバーのコストと、AI を有効にした場合に選択した LLM プロバイダーへの料金のみです。
クローンして1つのコマンドを実行するだけで、自分のインフラ上に完全なチケット管理&ナレッジプラットフォームが手に入ります。