tilde について
tildeは、AIエージェントに持ち運び可能なユーザープロフィール、スキル、チーム情報を提供するプライバシー重視のMCPサーバーです。データは標準でローカルに保存され、プロフィール変更の提案は人が承認します。
主な機能
- 01構造化プロフィールとカスタム項目
- 02エージェントによる更新提案と承認
- 03スキルの公開範囲と呼び出し機能
- 04履歴書と文書の取り込み
- 05チーム情報の同期
- 06YAML、SQLite、Mem0での保存
活用シーン
- 01複数のAIツールで個人設定を再利用
- 02エージェントが提案したプロフィール変更を確認
- 03履歴書から職務経歴を取り込む
- 04チームでコーディング規約を共有
MCP 対応
tildeはプロフィールとチームのリソースに加え、プロフィールやチーム情報の取得、更新提案のツールを提供します。提案された変更はユーザーが確認して承認できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🏠 tilde
AI エージェントのホームディレクトリ
tilde は、AI エージェント向けのユニバーサルなメモリおよびプロフィールレイヤーとして機能する、プライバシー優先のModel Context Protocol(MCP)サーバーです。
一度設定すれば、どこでも使えます。データはあなたのものであり、あなたが管理できます。
プロフィール管理、スキル、履歴書のインポート、チーム同期に対応しています。
課題
AI ツールを切り替えるたびに、同じ問題に直面します。
- 🔄 繰り返し:「私はシニアソフトウェアエンジニアです」「Python が好みです」「ORM は使わないでください」
- 🧩 分断:Cursor で学習した好みが Claude では利用できません
- 🔒 プライバシーの懸念:個人的なコンテキストに誰がアクセスできるのかわかりません
解決策
tilde は、AI エージェントが読み取れる「デジタルパスポート」として機能します。
┌────────────────────────────────────────────────────────────┐
│ Claude Desktop │ Cursor │ Windsurf │ Your Agent │
└────────┬─────────┴─────┬──────┴─────┬──────┴───────┬───────┘
│ │ │ │
└───────────────┴─────┬──────┴──────────────┘
│
┌──────────▼──────────┐
│ tilde MCP Server │
│ (runs locally) │
└──────────┬──────────┘
│
┌──────────▼──────────┐
│ ~/.tilde/profile │
│ (your data) │
└─────────────────────┘
機能
- 🏠 ローカル優先:デフォルトではデータはお使いのマシンに保存されます
- 📋 構造化プロフィール:本人情報、技術スタック、ナレッジ、スキル
- 🔌 MCP 標準:MCP 準拠のあらゆるエージェントで利用できます
- ✏️ 人間参加型:エージェントが更新を 提案 し、あなたが 承認 できます
- 🔧 拡張可能なスキーマ:コードを変更せずにカスタムフィールドを追加できます
- 🔒 スキルのプライバシー:エージェントに公開するスキルを管理できます(公開/非公開/チーム)
- 🤖 エージェントから呼び出せるスキル:AI エージェントがあなたに代わって実行できるスキルを定義できます
- 📄 履歴書のインポート:既存の履歴書/CV からプロフィールを作成できます
- 📚 ナレッジソース:書籍、ドキュメント、コース、記事を統一された学習モデルで管理します
- 👥 チーム同期:コーディング規約をチームで共有できます
クイックスタート
インストール
# Install from PyPI
pip install tilde-ai
# Initialize your profile
tilde init
開発用インストール
# Clone the repository
git clone https://github.com/topskychen/tilde.git
cd tilde
# Install with uv
uv sync
# Run locally
uv run tilde init
Cursor の設定
プロジェクト内の .cursor/mcp.json に追加します(グローバルにアクセスする場合は ~/.cursor/mcp.json に追加します)。
{
"mcpServers": {
"tilde": {
"command": "npx",
"args": ["-y", "tilde-ai"]
}
}
}
設定すると、利用可能なすべてのツールとリソースとともに、MCP サーバーの一覧に tilde が表示されます。

Antigravity の設定
プロジェクト内の .gemini/antigravity/settings.json に追加します。
{
"mcpServers": {
"tilde": {
"command": "npx",
"args": ["-y", "tilde-ai"]
}
}
}
Claude Desktop の設定
~/Library/Application Support/Claude/claude_desktop_config.json に追加します。
{
"mcpServers": {
"tilde": {
"command": "npx",
"args": ["-y", "tilde-ai"]
}
}
}
使用例
設定すると、AI エージェントがプロフィールにアクセスできるようになります。次のように質問してみてください。
「私の名前は何ですか?」
エージェントは get_profile ツールを使って本人情報を取得し、あなたの名前と役職を回答します。

プロフィールの作成
~/.tilde/profile.yaml を編集します。
schema_version: "1.0.0"
user_profile:
identity:
name: "John Doe"
role: "Full Stack Developer"
years_experience: 10
# Add any custom fields you need:
timezone: "America/Los_Angeles"
pronouns: "they/them"
tech_stack:
languages:
- TypeScript
- Python
- Go
frameworks:
- React
- FastAPI
- Next.js
preferences:
- "Prefer composition over inheritance"
- "Write tests before implementation (TDD)"
- "Use descriptive variable names over comments"
environment: "VS Code, Docker, Linux/MacOS"
# Knowledge sources: books, docs, courses, articles, etc.
knowledge:
domains:
web_development: "Focus on performance and accessibility"
ml_ops: "Experience deploying ML models to production"
sources:
- title: "Clean Code"
source_type: "book"
insights:
- "Functions should do one thing"
- "Prefer meaningful names over documentation"
- title: "React Documentation"
source_type: "document"
url: "https://react.dev"
insights:
- "Prefer Server Components for data fetching"
# Agent-callable skills (Anthropic SKILL.md format)
skills:
- name: "code-formatter"
description: "Format code using project conventions"
visibility: "public"
tags: ["automation", "code-quality"]
- name: "deploy-staging"
description: "Deploy current branch to staging environment"
visibility: "team"
- name: "expense-reporter"
description: "Generate expense reports from receipts"
visibility: "private"
team_context:
organization: "Acme Corp"
coding_standards: "ESLint + Prettier, PR reviews required"
architecture_patterns: "Monorepo with shared packages"
do_not_use:
- "jQuery"
- "Class components in React"
MCP リソース
tilde は次のリソースをエージェントに公開します。
| リソース URI | 説明 |
|---|---|
tilde://user/profile | ユーザープロフィール全体 |
tilde://user/identity | 名前、役職、経験、カスタムフィールド |
tilde://user/tech_stack | 言語、好み、環境 |
tilde://user/knowledge | ナレッジソース、分野、プロジェクト |
tilde://user/skills | スキル(公開範囲でフィルタリング) |
tilde://user/experience | 職歴 |
tilde://user/education | 学歴 |
tilde://user/projects | 個人プロジェクト/オープンソースプロジェクト |
tilde://user/publications | 論文および出版物 |
tilde://team/context | チームのコーディング規約とパターン |
MCP ツール
| ツール | 説明 |
|---|---|
get_profile | プロフィール全体または一部を取得します |
get_team_context | チーム固有のコンテキストを取得します |
propose_update | エージェントがプロフィールの更新を提案します(承認待ちとして登録) |
list_pending_updates | ユーザーの承認待ちの更新を一覧表示します |
CLI コマンド
tilde init # Create default profile
tilde show # Display current profile
tilde show skills # Show skills section only
tilde show --full # Show full content without truncation
tilde edit # Open profile in $EDITOR
tilde config # Show current configuration
tilde pending # List pending agent updates
tilde approve <id> [id2...] # Approve one or more updates
tilde reject <id> [id2...] # Reject one or more updates
tilde approve --all # Approve all pending updates
tilde reject --all # Reject all pending updates
tilde approve --all -e <id> # Approve all except one
tilde log # View update history
tilde ingest <file> # Extract insights from a document
tilde export --format json # Export profile
ドキュメントの取り込み
# Ingest a book and extract insights
tilde ingest "~/Books/DDIA.pdf" --topic data_systems
# Dry run to preview what would be extracted
tilde ingest notes.md --dry-run
# Auto-approve high-confidence updates
tilde ingest paper.pdf --auto-approve 0.8
履歴書のインポート
既存の履歴書からプロフィールを作成します。
# Import resume (PDF, DOCX, or text)
tilde ingest ~/Documents/resume.pdf --type resume
# Preview what would be extracted
tilde ingest resume.pdf --type resume --dry-run
# Auto-approve high-confidence items
tilde ingest resume.pdf --type resume --auto-approve 0.8
履歴書インポーターは次の情報を抽出します。
- 本人情報:名前、役職、経験年数
- 経験:企業、役職、期間を含む職歴
- 学歴:学位、教育機関、卒業年
- 技術スタック:プログラミング言語、フレームワーク、ツール
- プロジェクト:個人プロジェクトおよびオープンソースプロジェクト
- 出版物:論文、特許、記事
スキル管理
Anthropic 形式のスキルを、完全なバンドル対応で管理できます。
# Import skills from Anthropic skills directory
tilde skills import /path/to/skills
# Import specific skills by name
tilde skills import /path/to/skills -n mcp-builder -n pdf
# Dry run to preview import
tilde skills import ./skills --dry-run
# Import as private skills
tilde skills import ./skills --visibility private
# List all imported skills
tilde skills list
# Export skills to Anthropic format
tilde skills export ./my-skills
# Export specific skill
tilde skills export ./output -n mcp-builder
# Delete skills
tilde skills delete skill-name
tilde skills delete --all --force
スキルインポーターは、以下をバンドルします。
- SKILL.md:YAML フロントマターを含むスキルの内容
- scripts/:Python スクリプトとユーティリティ
- references/:ドキュメントファイル
- templates/:テンプレートファイル
- assets/:静的アセット
- ルートファイル:LICENSE.txt など
インポート → 保存 → エクスポートを通して、バンドルされたすべてのリソースが保持されます。
チーム管理
# Create a team
tilde team create myteam --name "My Startup" --org "ACME Corp"
# Activate team context (applies to all profile queries)
tilde team activate myteam
# Sync team config from URL or git repo
tilde team sync https://example.com/team.json --activate
tilde team sync [email protected]:myorg/team-config.git --activate
# List and manage teams
tilde team list
tilde team show
tilde team edit
tilde team deactivate
ストレージバックエンド
tilde は複数のストレージバックエンドに対応しています。
| バックエンド | 用途 | コマンド |
|---|---|---|
| YAML(デフォルト) | 人が読みやすく、Git と親和性が高い | TILDE_STORAGE=yaml |
| SQLite | クエリ可能、メモリーに対応、大規模環境でも高速 | TILDE_STORAGE=sqlite |
| Mem0 | 埋め込みによるセマンティック検索 | TILDE_STORAGE=mem0 |
# Use SQLite backend
export TILDE_STORAGE=sqlite
tilde init
# Query profile fields (SQLite only)
uv run python -c "
from tilde.storage import get_storage
storage = get_storage(backend='sqlite')
print(storage.query('%languages%'))
"
設定
tilde は LLM と埋め込みの設定に、一元化された設定を使用します。設定は ~/.tilde/config.yaml に保存され、デバイス間で同期できます。
設定の優先順位
- 環境変数(最優先)
- 設定ファイル(
~/.tilde/config.yaml) - 組み込みのデフォルト値(優先順位が最も低い)
環境変数
| 変数 | 説明 | デフォルト |
|---|---|---|
GOOGLE_API_KEY | Google/Gemini API キー(優先) | 必須 |
OPENAI_API_KEY | OpenAI API キー(フォールバック) | 任意 |
TILDE_LLM_MODEL | ドキュメント取り込み用 LLM モデル | gemini-3-flash-preview |
TILDE_EMBEDDING_MODEL | セマンティック検索用埋め込みモデル | gemini-embedding-001 |
TILDE_STORAGE | ストレージバックエンド(yaml、sqlite、mem0) | yaml |
TILDE_PROFILE | カスタムプロファイルのパス | ~/.tilde/profile.yaml |
設定の管理
# View current configuration
tilde config
# Save settings to config file (for syncing across devices)
tilde config --save
# Modify a setting and save
tilde config --set llm_model=gemini-1.5-pro
# Show config file path
tilde config --path
注:セキュリティ上、API キーが設定ファイルに保存されることはありません。必ず環境変数で設定してください。
クイックセットアップ
# Minimal setup (just one API key!)
export GOOGLE_API_KEY="your-google-api-key"
# Save your settings for this device
tilde config --save
# Now you can use all features
tilde ingest paper.pdf
デバイス間の同期
~/.tilde/config.yaml の設定ファイルは、同期できるように設計されています。
- dotfiles リポジトリ経由:
~/.tilde/を dotfiles に追加します - クラウド同期経由:Dropbox、iCloud などを利用します
- 手動:新しいデバイスにファイルをコピーします
設定ファイルの例:
llm_model: gemini-3-flash-preview
llm_temperature: 0.7
embedding_model: gemini-embedding-001
embedding_dimensions: 768
storage_backend: yaml
プログラムからの設定
from tilde.config import get_config, call_llm, get_embedding, save_config
# Check current config
config = get_config()
print(f"Provider: {config.provider}")
print(f"LLM Model: {config.llm_model}")
# Use directly
response = call_llm("Summarize this document...")
embedding = get_embedding("Some text to embed")
ロードマップ
- フェーズ 1:プロファイルの読み取りに対応した MVP
- フェーズ 2:承認フローを備えたエージェント提案型の更新
- フェーズ 3:ドキュメントの取り込み(書籍、PDF)
- フェーズ 4:B2B ユースケース向けチーム同期
- フェーズ 5:SQLite および Mem0 ストレージバックエンド
- フェーズ 6:スキル管理(Anthropic SKILL.md 形式)
-
tilde skills importによるディレクトリからの一括インポート -
tilde skills exportによるディレクトリへのエクスポート - スクリプト、参照資料、テンプレート、アセットの完全なバンドル
- スキル名による重複排除
-
「tilde」の由来
Unix では、~(チルダ)はホームディレクトリ、つまり個人設定を保存する場所を表します。tilde は、あなたの AI アイデンティティのホームです。
哲学
- データを自分で管理:デフォルトではローカルに保存し、選択した場合のみ同期します
- 人間が関与する仕組み:エージェントが提案し、人間が決定します
- ポータブルでオープン:いつでもエクスポートでき、ロックインがなく、あらゆる MCP ツールで動作します
- 段階的な情報開示:シンプルに始め、必要に応じて複雑さを加えられます
ライセンス
MIT
一度設定すれば、どこでも使えます。データはあなたが管理します。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。