| type | workshop-script |
|---|---|
| event | MIdS Training — Guide to AI Tools for Research and Publication |
| date | 2026-04-29 (พุธ) 13:30-15:30 GMT+7 |
| speaker | ดร.ฮัยศัม สาแม |
| slot | ~45 นาที (13:35-14:20, ก่อน Nat) |
| audience | 20 PhD students, MIdS @ CMU, ภาษาไทย |
| intent | SCAFFOLDING for ดร.ฮัยศัม สาแม — drafted by Nat's Oracle for coordination |
| status | DRAFT — for ดร.ฮัยศัม สาแม to adapt with his own voice + examples |
marp: true theme: default paginate: true backgroundColor: '#fff' header: 'MIdS Training | 29 เม.ย. 2569 | ณัฐ วีระวรรณ์' footer: '🤖 Drafted by hermes-mids 2026-04-25 · Rule 6: Oracle never pretends to be human' style: | section { font-family: 'Noto Sans Thai', 'Sarabun', sans-serif; font-size: 24px; line-height: 1.55; } h1 { color: #1a4d8c; }
type: workshop-script event: MIdS Training — Guide to AI Tools for Research and Publication date: 2026-04-29 (พุธ) 13:30-15:30 GMT+7 speaker: ณัฐ วีระวรรณ์ slot: ~45 นาที (14:30-15:15 หลัง ดร.ฮัยศัม สาแม) audience: 20 PhD students, MIdS @ CMU, ภาษาไทย intent: prose script — narrowed focus per Nat's request focus_tools: [Gemini, Claude (chat), Claude Code, Agentic AI vs LLM concept, NotebookLM] status: DRAFT v2 — narrowed focus
| #!/bin/bash | |
| # Setup new Mac — run ON the machine itself | |
| # curl -fsSL https://gist.githubusercontent.com/.../setup.sh | bash | |
| # Or: bash setup-m5.sh | |
| set -e | |
| echo "🖥️ Setting up $(hostname)..." | |
| # ── 1. Hostname ─────────────────────────────────────────────────── | |
| echo "" |
| installer | timekeeper-oracle |
|---|---|
| origin | Nat Weerawan's brain, digitized — how one human works with AI, captured as code — Soul Brews Studio |
| name | seek |
| description | [core] G-SKLL | Unified deep investigation — combines /trace (find) + /dig (mine sessions) + /time-travel (prove) into one command. Use when user says "seek", "find everything about", "investigate", "full picture", "what do we know about", or needs complete reconstruction of a topic across all sources. Modes: --quick (surface), default (smart escalation), --deep (parallel agents), --full (deep + verbatim evidence + narrative). Do NOT trigger for simple file search (use grep), current session status (use /recap), or repo study (use /learn). |
| argument-hint | <query> [--quick | --deep | --full] [--prove] [--timeline] [--back] |
Zero dependencies. Every line readable in one sitting. What grammY wraps. 2026-04-21 · openclaw-learner-oracle · Angle D of 4
Three files. Each runs with nothing but Bun installed. No npm deps, no framework. Read end-to-end to demystify every SDK wrapper you've ever used.
bot-polling.ts(153 lines) — long-polling botbot-webhook.ts(148 lines) — webhook bot, same logic
The access-control layer in hermes vs channels, plus the operational security that no bot framework covers 2026-04-21 · openclaw-learner-oracle · Angle C of 4
Three things that together determine whether your bot is actually secure: how it gates inbound, how it defends against prompt injection in replies, and what happens to the token outside the bot process.
Every setting, where it lives, what it does — hermes vs Claude channels vs raw Bot API 2026-04-21 · openclaw-learner-oracle · Angle B of 4
A complete reference of what you can tune on a Telegram bot, organized by which layer exposes it. Three layers: hermes-agent, Claude channels plugin, and raw Bot API / BotFather (the gap neither covers).
For each knob: what it is · where it lives · what it does.
Reading hermes-agent and the Claude Code telegram plugin side-by-side 2026-04-21 · openclaw-learner-oracle
Both hermes-agent (Python, launchd daemon) and the Claude Code telegram plugin (Bun, in-process MCP server) default to long-polling, not webhooks. This is the "Angle A" answer from a multi-part telegram configuration study.
A source-cited walkthrough of external_plugins/telegram/server.ts in anthropics/claude-plugins-official, showing every link in the chain from bot.start() to GET /getUpdates?timeout=30.
- Repo: anthropics/claude-plugins-official (
external_plugins/telegram/) - Plugin version:
0.0.1(perpackage.json) - Library:
grammy@^1.21.0— pinned inpackage.json - Question: Is it push (
setWebhook) or poll (getUpdates)? - Answer: Long-polling via
getUpdates. NeversetWebhook.