본문으로 건너뛰기
cccskills
무료GitHub에 공개

faaa-sync

Pull fresh follow-up call notes from a dedicated Telegram group into the CRM layer of a vault. Incremental and idempotent by message id, safe to re-run, and the manual counterpart of the weekly scheduled job. Triggers: "/faaa-sync", "pull the follow-up notes".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구Telegram
설치 방법 보기

포함된 파일(1)

  • SKILL.md6.5 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

OBJECTIVE: Pull fresh FAAA follow-up call notes from the operator's Telegram group and incrementally ingest them into the Obsidian Platinum-CRM, on demand. Fully idempotent (dedup by Telegram message id) — safe to re-run, never creates duplicates. Identical pipeline to the weekly task faaa-weekly-sync; the only difference is that this fires when the operator asks.

CONTEXT:

  • Source: Telegram supergroup "CALLS — FOLLOW-UPS MAIN (call summaries ONLY and NOTHING ELSE)", chat_id = <YOUR_CHAT_ID> (read via the Telegram MCP; logged-in account @work_acct_a).
  • Each substantive message is a call follow-up summary (in any language): starts with "Follow-up of our call 👣" / "Follow-Up 👣", has a "Participants:" / "Meeting participants:" line with the lead's @handle, bullets, and "Agreements 🤝". Spam/promos + voice-note ops messages also appear — the scripts' triage filters them out (only real follow-ups become lead cards).
  • CRM vault: $OBSIDIAN_VAULT/04-Projects/crypto/Platinum-CRM/leads/. Scripts + checkpoints: $IMPORTS_ROOT/.
  • Watermark (last imported msg id) = max integer id in $IMPORTS_ROOT/faaa-archive.jsonl.

STEPS:

  1. BACKUP FIRST (vault-backup-rule): run the vault backup (python $IMPORTS_ROOT/vault_backup.py, or the obsidian-backup skill) BEFORE any write. This step renders cards into the live vault — never skip the backup.
  2. Health-check the Telegram MCP: call get_me. If it errors, STOP and report "Telegram MCP is down — skipped" (do not proceed).
  3. Watermark: read the max integer message id in $IMPORTS_ROOT/faaa-archive.jsonl (python -c that loads the jsonl, prints max int id, ASCII only). Call it WM.
  4. Pull history: call the Telegram MCP get_new_messages_since for chat_id <YOUR_CHAT_ID> with min_id = WM, limit 200 (or get_history limit 200 then filter id > WM). If the oldest returned id is still > WM, fetch again with a larger window to cover the whole gap.
  5. If NO message has id > WM: STOP and report "No new FAAA follow-ups." Do nothing else.
  6. Write the new messages (id > WM) to $IMPORTS_ROOT/faaa/faaa-new-msgs.json as: {"chat_id":<YOUR_CHAT_ID>,"watermark":WM,"results":[{"id":<int>,"sender":<from>,"date":<iso8601>,"text":<FULL verbatim text>,"media":<media type if any>}]} Include the COMPLETE verbatim text of each message — never truncate or paraphrase (faithful raw import).
  7. Run: python $IMPORTS_ROOT/ingest_faaa_live.py (classifies follow-ups, regex-extracts the lead @handle from the Participants line, team-filters, dedups vs existing leads by handle → writes faaa\live_bundles.json [NEW leads] and faaa\live_appends.json [calls for EXISTING leads]; prints a summary).
  8. Read $IMPORTS_ROOT/faaa/live_bundles.json. For EACH new lead, synthesize a CRM record GROUNDED ONLY in that lead's call text (never invent), an object with EXACTLY these keys: lead_key (echo unchanged), name, company, role, country, category (one of investor/fund/vc/advisor/project/founder/exchange/service/media/kol/dev/other), status (one of new/negotiating/interested/partner/advisor/stale/declined), what_they_do, what_they_want, what_we_offered, agreements, outcome, summary (2-4 sentences), tags (3-7 kebab-case), lang (ru/en). Use "" for unknown fields. Write the array to $IMPORTS_ROOT/faaa/live_synth.json via the Write tool (UTF-8, real Cyrillic, NO byte-order-mark). If live_bundles.json is an empty array, write [] there.
  9. Run: python $IMPORTS_ROOT/render_live.py (creates lead cards in leads<year>\ + person overlays in 07-People\ + day-ledger entries for NEW leads; APPENDS fresh calls to existing leads' cards; appends rows to faaa-archive.jsonl to advance the watermark; tags everything #top-lead).
  10. Run: python $IMPORTS_ROOT/build_combined_moc.py (refresh _Platinum-CRM-MOC counts).
  11. Validate: python broken-link check (basename resolution vs all vault .md basenames) over the newly created/changed cards — expect 0 broken. If any broken, report them.

CONSTRAINTS:

  • WINDOWS cp1252: never print Cyrillic to stdout in python (it crashes) — write results to UTF-8 files and Read them; keep all python stdout ASCII (counts/slugs only).
  • INCREMENTAL ONLY — do NOT trigger any full FAAA/CRM rebuild or re-render of the whole leads\ folder (that could change slugs and break the 07-People links).
  • Provenance on everything: origin: mixed, authored_by: hybrid — NEVER tag #anton-original (these are records of other people's pitches).
  • Team handles (@work_acct_a, @personal_acct, @corp_acct*, @owner_alt*, @Madina*) are NOT leads — the scripts already exclude them.

OUTPUT / SUCCESS CRITERIA: Report: number of new lead cards created, calls appended to existing leads, the new watermark (max id in faaa-archive.jsonl), and confirm 0 broken links. If nothing was new, just report that. End every reply to the operator with a 🧒 In plain words recap.

RELATION TO OTHER ENTRIES (do not duplicate):

  • Scheduled twin: $USERPROFILE/.claude/scheduled-tasks/faaa-weekly-sync/SKILL.md (Mondays 09:09) — same scripts.
  • Full first-time import + analytics history: memory [[platinum-crm-import]].
  • For re-importing a whole EXPORTED chat file (not the live group), use the telegram-reimport skill instead.
<!--kit-footer-->

Like this skill? It is one of 100 in second-brain-starter-kit: the second brain we built for ourselves and run every day at Palo Alto AI Research Lab. Install the whole set with npx skills add tonydzi/second-brain-starter-kit. Everything is open source and free, so take what you need.

Flagships worth a look on their own: secondop-panel (a second opinion from a panel of external models), claude-memory-tidy (stop your agent's memory from rotting), telegram-mcp-kit (your own Telegram over MCP in about 15 minutes).

Author: Anton Dziatkovskii, Palo Alto AI Research Lab. Telegram @tonydzi - WhatsApp +1 341 222 9178 - X @Tony_Stef_

Engineers: want to test-drive this setup? Message me. I hand out free starter seeds to engineers who test and report back, and custom skill requests are welcome.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

03

무료

Run an autonomous consensus round between agent peers on several machines: they negotiate a decision over a shared channel and execute it without a human relaying messages. Use when multiple machines must agree on a change. Triggers: "/03", "work it out among yourselves", "find consensus". Wakes the human only for irreversible actions or a deadlock.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tonydzi/second-brain-starter-kit92026년 10월 16일 업데이트

1

무료

Recover a session after a hard crash (app died, machine rebooted, context lost mid-work): replay the turn-state ledger for the last requests, files and decisions, run a green/red health ping over the system map, file sync and MCP connectors, then rebuild the previous session history for pickup. Triggers: "/1", "resume after crash", "wake".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tonydzi/second-brain-starter-kit92026년 10월 16일 업데이트

agenda

무료

Show the operator's day: today's calendar plus what needs them personally (leads due, people awaiting a reply, deadlines), pulled from Calendar and Telegram and ranked. Read-only: sends and commits nothing. Triggers: "/agenda", "what's on today", "my agenda".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tonydzi/second-brain-starter-kit92026년 10월 16일 업데이트

ai-slop

무료

Rewrite machine-written text so it reads like a busy human wrote it: cut 50-70%, break the even rhythm, drop AI-tell words and filler, keep facts and protected terms. Use before publishing any post, reply or email drafted by a model. Triggers: /ai-slop, /slop, humanize, anti-slop, make it shorter and alive.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tonydzi/second-brain-starter-kit92026년 10월 16일 업데이트

Decision protocol for strategic work: recall the knowledge vault, run a gap analysis, emit a deep-research prompt for external tools, then synthesize the returned reports into a decision memo. Use before any new product, feature, market, pricing, GTM or architecture call, where local recall alone is not enough. Triggers: "/alfa-search-recall-deepresearch", "alpha protocol", "R+DR".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tonydzi/second-brain-starter-kit92026년 10월 16일 업데이트

- КРЕДИТ АВТОРУ ИДЕИ: совет из комментария (TG @ClawRus / @ClawInga, комменты под постами Антона в FB, треды и issue на… Триггеры: “/alpha-credit“, “/credit“, “кто нам это посоветовал“, “запиши совет“, “поблагодари советчиков“, “кому мы должны спасибо“, “кредит автору“, “чей это был совет“, “credit the author“

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tonydzi/second-brain-starter-kit92026년 10월 16일 업데이트

tonydzi의 스킬 모두 보기

이 스킬의 문제 신고