-
Notifications
You must be signed in to change notification settings - Fork 22
[Feature Request] Enhance content creation and delivery via AI and automation #464
Description
Is your feature request related to a problem? Please describe.
We have an opportunity to elevate:
- how we create content
- the quality of content
- our social promotion and communication strategy
Describe the solution you'd like
Some initial ideas are:
Priority 1: CLAUDE.md (~1 day) — High Impact
Create CLAUDE.md at repo root encoding:
- Temporal terminology rules from vale/styles/Temporal/terms.yml — Activity, Workflow, Worker, Namespace, Local
Activity, Task Queue, Event History, etc. must be capitalized as proper nouns - Common technical pitfalls learned from PR reviews:
- "local Activity" = specific Temporal concept (Local Activity), don't use casually
- HTTP calls must be wrapped in Activities, never called from Workflows
- "shared deployment" is not a real limitation — teams can split into separate Workers on the same Namespace
- Note feature availability (e.g., async updates not yet supported across Nexus)
- Style rules from STYLE.md: infinitive verb headings, sentence casing, "you/your" not "we/our", no headings deeper
than H3 - Frontmatter template with required fields (id, title, description, keywords, tags, last_update, image)
- Tutorial structure (gold standard from Nexus tutorial): What you'll learn, Prerequisites, Scenario, progressive
Checkpoints, Quiz, What You Built, What's Next + CTA - Build commands: yarn start, yarn build, yarn format, yarn vale, yarn clearsnips
File: CLAUDE.md
Priority 2: Agents.md (~0.5 day) — High Impact
Create Agents.md (or .github/AGENTS.md) documenting the team's AI-assisted workflow:
- Which AI tools to use when: Claude Code for drafting/editing, CodeRabbit for PR review, Kapa.ai for doc search
- Review protocol: AI review first (CodeRabbit) → author self-review → lead engineer review
- Prompt patterns: How to ask Claude Code for tutorial drafts, technical reviews, comparison tables
- Quality loop: How AI feedback feeds back into CLAUDE.md and Vale rules (continuous improvement)
- Roles: What AI handles (terminology, structure, formatting) vs what humans handle (technical accuracy, narrative
quality, feature correctness)
File: Agents.md
Priority 3: CI Pipeline (~1 day) — High Impact
Create .github/workflows/quality.yml triggered on PRs:
- Vale prose linting — catches terminology violations, gerund headings, missing sections
- dprint format check — catches formatting drift
- Docusaurus build — catches broken links (config has onBrokenLinks: "throw")
- Lychee link check on built output
- Snipsync guard — grep to ensure no injected snippet content is committed
Run Vale + dprint in parallel; build then Lychee sequentially.
File: .github/workflows/quality.yml
Priority 4: CodeRabbit for AI PR Reviews (~0.5 day) — High Impact
Set up CodeRabbit on the repo:
- Configure .coderabbit.yaml with custom review instructions:
- Temporal terminology rules (from CLAUDE.md)
- Tutorial structure expectations
- Feature accuracy checks (known limitations like async Nexus updates)
- Stronger than Copilot for prose/docs review — understands markdown structure, can reference style guides
- Runs automatically on every PR, posts inline comments
- Reduces lead engineer review load to technical accuracy and narrative quality
File: .coderabbit.yaml
Priority 5: Pre-commit Hooks + PR Template (~0.5 day) — High Impact
Activate Husky (already in devDeps):
- Add "prepare": "husky install" to package.json
- Create .husky/pre-commit running yarn clearsnips + npx lint-staged
- Configure lint-staged in package.json for markdown (dprint)
PR template (.github/pull_request_template.md):
- Checklist: Temporal terms capitalized, headings use infinitive verbs, Vale passes, build succeeds, feature
accuracy reviewed
Files: package.json, .husky/pre-commit, .github/pull_request_template.md
Priority 6: Enhanced Vale Rules (~1 day) — Medium-High Impact
New rules in vale/styles/Temporal/:
- nexus-accuracy.yml — warn about async updates across Nexus, sync handler timeout limits
- terminology-context.yml — flag "local activity" (lowercase), "shared deployment", "in-process" near Temporal
concepts - feature-status.yml — flag references to known-limited features
These feed into both CI (Priority 3) and CodeRabbit (Priority 4).
Directory: vale/styles/Temporal/
Priority 7: Tutorial Scaffolding Script (~1 day) — Medium Impact
Create scripts/new-tutorial.js — interactive Node.js script (no extra deps):
- Prompts for: language, slug, title, author, editor
- Creates directory structure: docs/tutorials/{language}/{slug}/, images/, ui/
- Generates index.md from template matching the Nexus tutorial gold standard
- Add "new-tutorial": "node scripts/new-tutorial.js" to package.json
Files: scripts/new-tutorial.js, package.json
Priority 8: Copilot for AI PR Reviews (~0.5 day) — Medium Impact
Add GitHub Copilot PR review as a complement to CodeRabbit:
- Better for code-heavy tutorials (Java, Go, Python code blocks)
- CodeRabbit handles prose/structure, Copilot handles code correctness
- May be redundant if CodeRabbit covers enough — evaluate after Priority 4
Priority 9: CI Auto-Generate Comms (~2 hrs) — High Impact
GitHub Actions workflow triggered on merge to main:
- Detect new/updated tutorials (diff docs/tutorials/)
- Auto-generate draft communications:
- Slack announcement for internal channels
- Email digest snippet for newsletter
- Social media posts (Twitter thread, LinkedIn post)
- Output as PR comment, Slack message via webhook, or artifact
- Needs careful prompt engineering to match Temporal's voice/tone
File: .github/workflows/content-promotion.yml
Priority 10: Social Posts Skill (~1 day) — Medium Impact
Manual-trigger version of Priority 9. Claude Code /social-posts slash command:
- Reads a tutorial file and generates Twitter thread, LinkedIn post, dev.to intro
- Stepping stone toward the automated CI version
File: .claude/skills/social-posts.md
Priority 11: Interactive Widget Framework (~2-3 days) — Medium Impact
Extract shared CSS/patterns from existing Nexus widgets into reusable templates. Create a /interactive-widget skill
for data-driven HTML widgets (matching games, drag-drop, before/after comparisons).
Files: static/html/shared/widget-base.css, .claude/skills/interactive-widget.md