Loading...
Loading...
Compare original and translation side by side
~/.gbrain/cold-start-state.json~/.gbrain/cold-start-state.jsongbrain doctor --jsongbraingbrain doctor --jsongbrain| Priority | Source | Why | Time | Pages Created |
|---|---|---|---|---|
| 1 | Existing markdown/Obsidian | Highest density — it's already structured | 5 min | 100s-1000s |
| 2 | Google Contacts | Seeds the people/ directory — names, emails, companies | 10 min | 50-500 |
| 3 | Google Calendar (90 days) | Meeting history with attendee context | 15 min | 30-90 |
| 4 | Gmail (recent threads) | Relationship context, active threads, org chart signals | 20 min | 50-200 |
| 5 | Conversations (ChatGPT/Claude exports) | Your thinking, questions, mental models | 15 min | 10-100 |
| 6 | X/Twitter archive | Your public positions, takes, engagement patterns | 20 min | 30-365 |
| 7 | File archives (Dropbox/Drive/local) | Historical documents, old writing, photos | 30+ min | varies |
| 8 | Meeting transcripts (Circleback/etc.) | Deep relationship context from recorded calls | 20 min | 10-50 |
| 优先级 | 数据源 | 原因 | 耗时 | 创建页面数 |
|---|---|---|---|---|
| 1 | 现有Markdown/Obsidian笔记 | 信息密度最高——已结构化 | 5分钟 | 数百至数千页 |
| 2 | Google联系人 | 填充people/目录——包含姓名、邮箱、公司信息 | 10分钟 | 50-500页 |
| 3 | Google日历(近90天) | 包含会议历史及参会者上下文 | 15分钟 | 30-90页 |
| 4 | Gmail(近期会话) | 包含关系上下文、活跃会话、组织架构信号 | 20分钟 | 50-200页 |
| 5 | 对话导出(ChatGPT/Claude等) | 记录你的思考、问题、思维模型 | 15分钟 | 10-100页 |
| 6 | X/Twitter归档 | 记录你的公开立场、观点、互动模式 | 20分钟 | 30-365页 |
| 7 | 文件归档(Dropbox/Drive/本地) | 包含历史文档、旧文稿、照片 | 30+分钟 | 数量不定 |
| 8 | 会议转录稿(Circleback等) | 包含录制通话中的深度关系上下文 | 20分钟 | 10-50页 |
Safety boundary: An AI agent with raw OAuth tokens to your Gmail, Calendar, and Contacts is an uncontrolled attack surface. One prompt injection, one malicious tool call, and your entire Google account is exposed. ClawVisor eliminates this risk class entirely.
gbrain config set clawvisor_url "https://app.clawvisor.com"
gbrain config set clawvisor_agent_token "<token>""Full brain bootstrapping: read emails, calendar events, and contacts to populate knowledge base. List, read, and search across all connected accounts."
gbrain config set clawvisor_task_id "<task_id>"安全边界说明: 拥有Gmail、日历和联系人原始OAuth令牌的AI Agent是不受控的攻击面。一次提示注入或恶意工具调用,就可能导致你的整个谷歌账户泄露。ClawVisor可彻底消除这类风险。
gbrain config set clawvisor_url "https://app.clawvisor.com"
gbrain config set clawvisor_agent_token "<token>""完整Brain引导:读取邮件、日历事件和联系人以填充知识库。列出、读取并搜索所有关联账户的内容。"
gbrain config set clawvisor_task_id "<task_id>""No problem. We'll skip the Google imports for now and work with file-based sources. You can set up ClawVisor anytime to unlock Contacts, Calendar, and Gmail imports safely."
"没问题。我们暂时跳过谷歌导入,仅处理基于文件的数据源。你可随时设置ClawVisor,安全解锁联系人、日历和Gmail导入功能。"
echo "=== Markdown Repository Discovery ==="
for dir in /data/* ~/git/* ~/Documents/* ~/notes/* ~/obsidian/* 2>/dev/null; do
if [ -d "$dir" ]; then
md_count=$(find "$dir" -name "*.md" -not -path "*/node_modules/*" \
-not -path "*/.git/*" -not -path "*/.obsidian/*" 2>/dev/null | wc -l | tr -d ' ')
if [ "$md_count" -gt 5 ]; then
total_size=$(du -sh "$dir" 2>/dev/null | cut -f1)
echo " $dir ($total_size, $md_count .md files)"
fi
fi
doneecho "=== Markdown仓库发现 ==="
for dir in /data/* ~/git/* ~/Documents/* ~/notes/* ~/obsidian/* 2>/dev/null; do
if [ -d "$dir" ]; then
md_count=$(find "$dir" -name "*.md" -not -path "*/node_modules/*" \
-not -path "*/.git/*" -not -path "*/.obsidian/*" 2>/dev/null | wc -l | tr -d ' ')
if [ "$md_count" -gt 5 ]; then
total_size=$(du -sh "$dir" 2>/dev/null | cut -f1)
echo " $dir ($total_size, $md_count .md files)"
fi
fi
doneundefinedundefinedundefinedundefinedgbrain extract links --source dbgbrain extract timeline --source dbgbrain embed --staleTrack progress:bashecho '{"phase_1_complete": true, "pages_imported": N}' > ~/.gbrain/cold-start-state.json
gbrain extract links --source dbgbrain extract timeline --source dbgbrain embed --stale记录进度:bashecho '{"phase_1_complete": true, "pages_imported": N}' > ~/.gbrain/cold-start-state.json
// Fetch all contacts
const contacts = await clawvisor('google.contacts', 'list_contacts', {
limit: 1000,
fields: 'names,emailAddresses,phoneNumbers,organizations,biographies'
});// 获取所有联系人
const contacts = await clawvisor('google.contacts', 'list_contacts', {
limit: 1000,
fields: 'names,emailAddresses,phoneNumbers,organizations,biographies'
});curl -s -H "Authorization: Bearer $GOOGLE_TOKEN" \
"https://people.googleapis.com/v1/people/me/connections?personFields=names,emailAddresses,phoneNumbers,organizations,biographies&pageSize=1000"curl -s -H "Authorization: Bearer $GOOGLE_TOKEN" \
"https://people.googleapis.com/v1/people/me/connections?personFields=names,emailAddresses,phoneNumbers,organizations,biographies&pageSize=1000"gbrain search "name"[Source: Google Contacts, YYYY-MM-DD]gbrain search "name"[来源:Google Contacts,YYYY-MM-DD]"Here's what a contact page looks like. Want me to continue with the rest, or adjust the format first?"
"这是联系人页面的样式。是否继续导入剩余联系人,还是先调整格式?"
// Via ClawVisor — query ALL calendar accounts
const accounts = ['primary@gmail.com', 'work@company.com'];
for (const account of accounts) {
const events = await clawvisor(`google.calendar:${account}`, 'list_events', {
timeMin: new Date(Date.now() - 90 * 86400000).toISOString(),
timeMax: new Date().toISOString(),
singleEvents: true,
orderBy: 'startTime'
});
}// 通过ClawVisor——查询所有日历账户
const accounts = ['primary@gmail.com', 'work@company.com'];
for (const account of accounts) {
const events = await clawvisor(`google.calendar:${account}`, 'list_events', {
timeMin: new Date(Date.now() - 90 * 86400000).toISOString(),
timeMax: new Date().toISOString(),
singleEvents: true,
orderBy: 'startTime'
});
}brain/daily/calendar/
├── calendar-log.md ← compiled truth (patterns, key people)
├── YYYY/
│ ├── YYYY-MM.md ← monthly summary
│ └── YYYY-MM-DD.md ← daily event logbrain/daily/calendar/
├── calendar-log.md ← 汇总记录(模式、关键人物)
├── YYYY/
│ ├── YYYY-MM.md ← 月度总结
│ └── YYYY-MM-DD.md ← 每日事件日志conversations.jsonconversations.jsonbrain/media/x/{handle}/
├── x-log.md ← compiled truth (themes, voice, key threads)
├── daily/YYYY-MM-DD.md ← daily tweet log
├── monthly/YYYY-MM.md ← monthly rollup
└── bookmarks/ ← saved/bookmarked contentbrain/media/x/{handle}/
├── x-log.md ← 汇总记录(主题、风格、关键会话)
├── daily/YYYY-MM-DD.md ← 每日推文日志
├── monthly/YYYY-MM.md ← 月度汇总
└── bookmarks/ ← 保存/书签内容archive-crawlerSafety gate: Archive crawling can be slow and create many pages. Always start with a scan-only pass:bashgbrain archive-crawler --scan-only --path /path/to/archiveShow the user the manifest before proceeding with full ingestion.
archive-crawler安全提示: 归档爬取可能较慢且会创建大量页面。始终先执行仅扫描模式:bashgbrain archive-crawler --scan-only --path /path/to/archive在开始完整导入前,向用户展示扫描清单。
meeting-ingestionmeeting-ingestiongbrain doctor --json
gbrain statsgbrain query "who do I meet with most often?"
gbrain query "what am I working on?"
gbrain search "<person from contacts>"gbrain sync --repo <path>// ~/.gbrain/cold-start-state.json
{
"started": "2026-01-15T10:00:00Z",
"credential_gateway": "clawvisor",
"phases_completed": [1, 2, 3, 4],
"phases_skipped": [6, 7],
"total_pages_created": 847,
"total_entities_linked": 1203,
"next_phase": 5
}"Your brain has N pages across people, calendar, email, and conversations. Live sync is configured for [sources]. From here:
- The signal-detector captures entities from every conversation
- The briefing skill can compile daily context
- The executive-assistant pattern handles email triage
- Say 'enrich [person]' to deep-dive any contact"
gbrain doctor --json
gbrain statsgbrain query "我最常和谁会面?"
gbrain query "我正在做什么项目?"
gbrain search "<联系人中的某个人>"gbrain sync --repo <path>// ~/.gbrain/cold-start-state.json
{
"started": "2026-01-15T10:00:00Z",
"credential_gateway": "clawvisor",
"phases_completed": [1, 2, 3, 4],
"phases_skipped": [6, 7],
"total_pages_created": 847,
"total_entities_linked": 1203,
"next_phase": 5
}"你的Brain已拥有N个页面,涵盖人物、日历、邮件和对话内容。已为[数据源]配置实时同步。接下来你可以:
- 使用signal-detector捕获所有对话中的实体
- 使用briefing Skill生成每日上下文汇总
- 使用executive-assistant模式处理邮件分类
- 说'enrich [人物名]'深入挖掘任意联系人的信息"
~/.gbrain/cold-start-state.jsonnext_phase~/.gbrain/cold-start-state.jsonnext_phasePHASE N COMPLETE: [source name]
================================
Pages created: N
Pages updated: N
Entities linked: N
Time elapsed: N min
Sample pages:
- people/jane-smith.md (created — 3 emails, 5 meetings)
- companies/acme-corp.md (updated — 2 new employees linked)
Next: Phase N+1 — [description]. Ready to proceed?阶段N完成:[数据源名称]
================================
创建页面数:N
更新页面数:N
关联实体数:N
耗时:N分钟
示例页面:
- people/jane-smith.md(已创建——关联3封邮件、5次会议)
- companies/acme-corp.md(已更新——关联2名新员工)
下一步:阶段N+1——[描述]。是否继续?searchqueryget_pageput_pageadd_linkadd_timeline_entrysync_brainsearchqueryget_pageput_pageadd_linkadd_timeline_entrysync_brain