Go to file
usulpro 80c918d282 telegram: move session secrets to .env, launch MCP via wrapper
- .mcp.json: both telegram servers now start via scripts/telegram-mcp.sh
  <usulsu|helper> instead of hardcoding session strings — config is now
  secret-free and safe to commit.
- scripts/telegram-mcp.sh: sources .env, selects the per-account session
  string (TELEGRAM_SESSION_STRING / TELEGRAM_SESSION_STRING_HELPER), execs
  the telegram-mcp binary (path overridable via TELEGRAM_MCP_BIN).
- scripts/regen_telegram_session.sh: rewritten — captures the generated
  string, saves it to .secrets/session_<account>.txt, and upserts it into
  .env. Fixes the broken /projects/... generator path.
- package.json: tg:session:usulsu / tg:session:helper npm scripts.
- .gitignore: ignore .secrets/.

Root cause of the dead session: hardcoded strings lived in git, so laptop
and VPS shared one auth_key across two IPs and Telegram revoked it. Strings
now live only in local, gitignored files — one per device/account.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-08 00:44:06 +07:00
.claude update 2026-06-07 18:24:57 +07:00
base add channels 2026-06-06 23:49:52 +07:00
docs update 2026-06-07 03:19:53 +07:00
output/pdf add tailored version 2026-05-26 23:06:16 +07:00
portfolio/temp update skills 2026-06-06 22:55:24 +07:00
scripts telegram: move session secrets to .env, launch MCP via wrapper 2026-06-08 00:44:06 +07:00
tailored update 2026-06-06 20:49:14 +07:00
templates init CV repo 2026-05-24 14:13:14 +07:00
tracking update 2026-06-07 18:24:57 +07:00
.env.example setup mcp 2026-06-02 00:57:56 +07:00
.gitignore telegram: move session secrets to .env, launch MCP via wrapper 2026-06-08 00:44:06 +07:00
.mcp.json telegram: move session secrets to .env, launch MCP via wrapper 2026-06-08 00:44:06 +07:00
CLAUDE.md update 2026-06-07 03:19:53 +07:00
README.md add trello mcp 2026-05-30 15:43:40 +07:00
package.json telegram: move session secrets to .env, launch MCP via wrapper 2026-06-08 00:44:06 +07:00
pnpm-lock.yaml init CV repo 2026-05-24 14:13:14 +07:00

README.md

CV-2026

Personal CV generation pipeline for Oleg Proskurin.

Pipeline

base/*.md  ->  output/html/*.html  ->  output/pdf/*.pdf
                (Claude generates)     (puppeteer renders)

Folder layout

Path Purpose
base/ Master CV in Markdown (source of truth for content)
base/reference/ Reference PDF that defines the visual style/format
templates/ Shared HTML/CSS — used by every generated CV
tailored/<company>/ Company-specific tailored versions (MD + HTML + PDF)
tracking/ Applications, outreaches, communications log
scripts/ Build tooling (PDF generator)
output/html/ Generated HTML (transient, gitignored)
output/pdf/ Generated PDFs (committed)

Usage

Install once:

pnpm install

Generate PDF from an HTML file:

pnpm pdf output/html/oleg_proskurin_ai_engineer_fullstack_cv.html
# -> output/pdf/oleg_proskurin_ai_engineer_fullstack_cv.pdf

The HTML file should be generated by Claude from the Markdown source — see CLAUDE.md for the full flow and styling rules.

Workflows

  1. New base CV: drop a new oleg_proskurin_<role>_cv.md into base/, ask Claude to generate the HTML, then run pnpm pdf.
  2. Tailor for a company: ask Claude to create tailored/<company>/cv.md from the latest base, generate HTML, then PDF.
  3. Track applications: append to tracking/applications.md and tracking/outreach.md.