オープンソース・セルフホスト・シングルテナント

あなたのサポートデスクとナレッジベース —— 自分のインフラで動かす。

SmartTicket はセルフホスト型のチケット管理&ナレッジコラボレーションプラットフォームです。単一の静的バイナリ、組み込み SQLite、RBAC、SLA トラッキング、そして持ち込み LLM による RAG を搭載。5分でデプロイでき、データを完全にコントロールできます。

$ git clone https://github.com/liliang-cn/smartticket && cd smartticket && docker compose up -d
1
静的バイナリ
<512MB
メモリ使用量
0
外部サービス不要
SQLite
組み込みデータベース
100%
あなたのデータ
https://support.your-company.com
Dashboard
Tickets
Knowledge
Customers
Access
AI Providers
workspace overview
128
対応中チケット
96%
SLA 達成率
2.4h
平均初回応答時間
312
KB 記事数
アップグレード後にメール通知が停止したurgentin SLA
SSO をプロバイダーと連携する方法は?highin SLA
顧客のチケットを CSV でエクスポートしたいnormalanswered
// at a glance

SmartTicket を一画面で把握する。

人間にも、このページを要約する AI エンジンにも伝わるよう、核心をシンプルに整理しました。

概要オープンソースのセルフホスト型チケット管理&ナレッジベース
モデルシングルテナント — 組織ごとに1インスタンス
ライセンスMIT — セルフホストは無料
スタックGo 1.25 · React + TypeScript · SQLite
デプロイ方法単一の静的バイナリ、または docker compose up
依存関係なし — 組み込み SQLite;DB・Redis・プロキシ不要
AIOpenAI 互換 LLM と RAG の持ち込み(オプション)
フットプリント< 512 MB RAM;オフライン/エアギャップ環境でも稼働
// everything in one binary

完全なサポートスタックが1つのバイナリに。

チケット管理、SLA、バージョン管理付きナレッジベース、ロールベースアクセス制御、顧客分離、AI アシスタンスがすべて組み込まれ、あなたが所有する単一プロセスで動作します。

チケットの完全ライフサイクル

優先度・重大度、担当者割り当て、スレッド型会話、添付ファイル、ステータスワークフロー、監査証跡 — 受付から解決まで一貫管理。

SLA トラッキング

階層別の応答・解決目標、設定可能なサポートレベル、ノード単位・年間サブスクリプションのトラッキングに対応。

ナレッジベース

公開/内部の可視性制御付きバージョン管理記事、全文検索とセマンティック検索、そして読みやすいビューを提供します。

RBAC & 顧客分離

ロール、細粒度のパーミッション、そしてサービス層のアクターモデルにより、各顧客を自分のチケットのみに制限 — REST も MCP も同様です。

LLM + RAG の持ち込み

チャットとエンベディングには OpenAI 互換プロバイダーを自由に選択 — OpenAI、Azure、DeepSeek、Ollama、vLLM。ナレッジベースへの RAG、鍵は保存時に暗号化。

アプリ内通知

返信、担当者変更、ステータス変更がリアルタイムのアプリ内通知として届きます — メールサーバー不要で最新状況を把握できます。

インポート/エクスポート

チケット、ナレッジ、ユーザー、製品・サービスを JSON、CSV、XML、Markdown にエクスポート。データはデザインとして可搬性を持ちます。

ホワイトラベルブランディング

設定ページから独自のプロダクト名、アクセントカラー、ロゴを設定するだけで、コンソールとサインイン画面に反映されます。

MCP サーバー内蔵

Model Context Protocol サーバーがチケットと返信をツールとして公開し、エージェントがプログラムでトリアージ・返信を行えます。

// download → run

5分で自分のインスタンスをデプロイする。

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/.
1クローン&実行。 docker compose up 一発でアプリ全体がポート 6533 で起動します。
2サインイン。 初期管理者アカウントでログインし、すぐにパスワードを変更してください。
3ブランド設定。 Settings から名前、カラー、ロゴを設定します。
4AI を接続(任意)。 AI Providers から OpenAI 互換のチャット+エンベディングプロバイダーを追加します。
データ & バックアップ

チケット、ナレッジ、RAG ベクターストア、設定のすべてが smartticket-data ボリューム(単一の SQLite ファイルとアップロードファイル)に保存されます。ボリュームをコピーするだけでバックアップでき、元に戻すだけで復元できます。

// data sovereignty

データはあなたのサーバーから外に出ない。

SmartTicket はシングルテナント設計です。1組織、1インスタンス。SaaS バックエンドへのコールバックも、共有マルチテナントデータベースも、必須サードパーティサービスもありません。

  • 組み込み SQLite — 完全オフライン、エアギャップ環境でも動作。
  • LLM API キーは保存時に AES-256-GCM で暗号化。
  • オープンフォーマットへの完全エクスポート — ベンダーロックインなし。
single-tenant topology
┌─ your server ──────────────┐
│  smartticket (1 binary)    │
│   ├─ web console  :6533    │
│   ├─ REST API     :6533    │
│   ├─ MCP server   (stdio)  │
│   └─ SQLite + RAG (vol)    │
└────────────┬───────────────┘
             │ optional, you choose
        your LLM provider
// bring your own intelligence

AI アシスタンスを、あなたの条件で。

チャットとエンベディングのプロバイダーをそれぞれ独立して設定できます — それぞれ独自のベース URL、モデル、キーを持ちます。ナレッジ記事は組み込みのベクターストアにインデックスされ、RAG 回答に活用されます。

OpenAI Azure OpenAI DeepSeek Aliyun Bailian Ollama vLLM LocalAI …OpenAI 互換ならなんでも
retrieval-augmented answer
Q: チームにシングルサインオンを有効にするには?
ANSWER · cited from 3 KB articles

Settings → Access を開き、IDプロバイダーのメタデータ URL を追加してメールクレームをマッピングし、チーム向けに SSO 強制を有効にしてください…

// engineered for operators

堅牢で信頼できるスタックで構築。

バックエンドは Go、フロントは React、基盤は SQLite。特殊なランタイムも、シート単位の課金も、予期しない依存関係もありません。

Go 1.25· バックエンド
GIN + GORM· API & ORM
SQLite· 組み込み(CGO フリー)
React + TypeScript· コンソール
Vite + Tailwind· ビルド & スタイリング
JWT + RBAC· 認証
CortexDB· RAG ベクターストア
Docker· ワンコマンドデプロイ
// questions

よくあるご質問。

データベースサーバーや Redis は必要ですか?+

不要です。SQLite はバイナリに直接組み込まれており、その他の必須サービスはありません。アプリ全体が1つのプロセスで動作します — それがこのプロジェクトの本質です。

新しいバージョンへのアップデート方法は?+

Docker の場合:git pull && docker compose up -d --build。データは名前付きボリュームに保存されており、リビルドの影響を受けません。ソースからの場合:git pull && make build-all を実行してバイナリを再起動します。スキーママイグレーションは起動時に自動実行されます。

AI 機能は必須ですか?+

いいえ。チケット管理・SLA・ナレッジベース・RBAC はすべて LLM の設定なしで動作します。AI 機能はオプトイン方式です。セマンティック検索と RAG の回答が必要な場合のみプロバイダーを追加してください。

顧客同士のチケットは互いに見えますか?+

見えません。カスタマーロールのユーザーはサービス層で自分の組織のチケットのみに制限されており、REST API と MCP サーバーの両方に同じ分離が適用されます。

インスタンスのバックアップ方法は?+

データボリューム(SQLite ファイル、RAG ストア、アップロードされた添付ファイル)をコピーするだけです。復元はそれを戻してバイナリを起動するだけです。データ画面から JSON/CSV/XML/Markdown への全エクスポートも可能です。

費用はかかりますか?+

ソフトウェアはオープンソースであり、セルフホストは無料です。費用が発生するのは、実行するサーバーのコストと、AI を有効にした場合に選択した LLM プロバイダーへの料金のみです。

// ready in five minutes

サポートスタックを自分のものにする。

クローンして1つのコマンドを実行するだけで、自分のインフラ上に完全なチケット管理&ナレッジプラットフォームが手に入ります。