复制下面这句话,粘贴给 Claude Code、Codex、Cursor 等 AI 编程工具,它会读取安装说明并在你确认后完成安装。
请阅读 https://ai.atlankj.com/install/asset/gh-speaking-e1a9a6b238b3 ,按照其中的说明把「speaking」安装到你(当前 AI 工具)中。执行前先告诉我将运行的命令和写入的位置,等我确认。
查看 AI 将读取的安装说明正在读取 GitHub 原文…
内容来自 GitHub 原始文件,由原作者维护。在 GitHub 查看
Use this for Peter's speaking-opportunity workflow.
/Users/steipete/Projects/manager/CONFERENCES.md — standing decisions (e.g. no TED, no paid talks), 2027 budget, anchor plan, triage tiers./Users/steipete/Projects/conferencesPeter Steinberger InboundsInvitations/Users/steipete/Projects/conferences/conference-opportunities.md/Users/steipete/Projects/conferences/opportunities/NNN-slug.mdUse gog first for Google data when available:
gog gmail search 'speaker OR keynote OR panel OR fireside OR conference OR summit after:2026-01-01' --json --no-input
gog gmail read <thread-or-message-id> --json --no-input
gog calendar events primary --time-min 2026-01-01T00:00:00Z --time-max 2026-12-31T23:59:59Z --json --no-input
gog sheets get 1dNt5EjgfgvPoAx5fa-igk681gniCkzL-IZ2FmjFl8fs 'Invitations!A1:Q110' --json --no-input
Track:
Do not track in the conference list:
Talks and firesides are welcome. Do not delete them just because they are not classic conferences.
Score with these heuristics:
Priority language:
accept: committed or clearly worth doing.strong consider: high value but needs missing logistics/details.review: plausible, needs more info.pass: declined, stale, low leverage, bad fit, or user explicitly said no.Before changing status:
Useful status meanings:
CALENDARED: calendar plus email evidence, or accepted invite.INBOX: needs response or still open.INBOX / CALENDAR HOLD: calendar hold exists, but details still need confirmation.PASS: do not pursue.Done: declined, stale, or already passed.Per-opportunity files should stay short and structured:
# Event Name
- Number: N
- Index: [Conference Opportunities Brief](../conference-opportunities.md)
## Brief
- Date/location:
- Host/ask:
- Format:
- Audience/scale:
- Impact:
- Fit:
- Risks:
- Status:
- Recommendation:
- Sources:
When adding an opportunity:
opportunities/*.md.opportunities/NNN-slug.md.conference-opportunities.md.Use the sheet headers from Invitations!A1:Q1:
Invitation Name, Primary Category, Recommendation, Date, Location, Subcategory, Geography, Recommended Rep, Response Status, Status, Outlet / Event, Contact Name, Contact Email, Topic / Subject, Notes, Source File, From Raw
Sync rules:
Primary Category can remain Conference as the broad bucket, while Subcategory explains keynote/panel/fireside/talk/retreat.Invitations.Use gog sheets update ... --values-json for bulk updates. Avoid one-cell micro-edits.