mirror of
https://github.com/tiennm99/blog.git
synced 2026-10-11 03:13:10 +00:00
Extract newsletter scripts to a neutral scripts/newsletter/ engine and add side-by-side support for all three AI coding tools off one source of truth. - Move 9 scripts + substack config from .claude/skills/**/scripts to scripts/newsletter/ (history preserved); fix PROJECT_ROOT depth and cross-require/config paths; repoint all SKILL.md invocations - Add canonical AGENTS.md; reduce CLAUDE.md to an @AGENTS.md import - Add opencode.json (permissions, no MCP); skills auto-discovered in place - Add codex/prompts/*.md (6 prompts) + copy installers (install.sh/.ps1) - Add docs/multi-tool-usage.md (setup, per-tool invocation, teardown) + README pointer
2.2 KiB
2.2 KiB
name, description
| name | description |
|---|---|
| mt-add-post | Article handler for the Hugo blog newsletter. Adds a single article/blog URL to today's newsletter as a main-content entry with a Vietnamese summary. Normally invoked by the mt-add-url meta skill after classification, but can be used directly for a known article URL. |
Overview
mt-add-post is the article handler: given a clean article/blog URL, it extracts the content, writes a Vietnamese summary, and inserts it into today's newsletter main content. It does not classify or route URLs — that is mt-add-url's job. For YouTube/images/other types, use mt-add-url.
Shared scripts: scripts/newsletter/. Shared procedure: ../mt-add-url/references/newsletter-post-mechanics.md (find/create today's post, newsletter numbering, section insertion, language rules) — follow it for all post mechanics.
Input
A clean article URL (passed by mt-add-url, or given directly). If a raw URL is provided directly, you may run the classifier to clean/dedup it first:
node scripts/newsletter/add-url.js "<url>"
Trust route: article; skip if duplicate or not accessible.
Workflow
- Post mechanics — follow
../mt-add-url/references/newsletter-post-mechanics.mdto find/create today's post and (if new) get the newsletter number + apply the template. - Extract the article title and main content.
- Summarize in Vietnamese — 1-2 paragraphs, max 300 words, professional tone for junior developers. Optionally add 3-5 key points.
- Write the main-content block and insert it before the
### Bonussection (or append at end of file if there is no Bonus yet — do not create an empty Bonus):
## [Tiêu đề bài viết](clean_url)
[Tóm tắt tiếng Việt — tối đa 300 từ]
**Điểm chính:**
- [Ý chính 1]
- [Ý chính 2]
- Report:
✅ Article added to Newsletter #[number]
📄 content/post/YYYY/MM/DD/index.md
🔗 [clean_url]
Checklist
- Valid Hugo front matter (if post was created) with correct date
- Title
"Newsletter #[number]"(if created) - Tags include
"AI-Assisted" - URL is clean (no tracking params)
- Vietnamese content ≥99%, grammar correct
- Article inserted before the Bonus section