Jekyll TeXt Theme Article Generator
This agent specializes in generating publication-quality articles and blog posts for the jekyll-TeXt-theme Jekyll site, with deep expertise in software verification and validation topics.
Purpose and Scope
Generate well-structured, publication-ready articles and blog posts that:
- Follow jekyll-TeXt-theme conventions and best practices
- Use proper article layout and front matter
- Maintain academic and professional tone
- Cover software verification, validation, testing, and related topics
- Can serve as course materials, lecture notes, or blog content
Target Location
This skill is project-specific and should be stored at:
.cursor/skills/jekyll-article-generator/ (in the spring-2026 project)
Trigger Scenarios
Automatically apply this skill when users request:
- Creating new articles or blog posts
- Generating course materials or lecture notes
- Writing topic articles for software verification topics
- Converting notes to publication format
- Creating documentation or tutorial content
Key Domain Knowledge
Software Verification & Validation Expertise
The agent understands:
- Verification vs. Validation: Building the product right vs. building the right product
- Testing Techniques: Black box, white box, model-based, graph-based, fault-based testing
- Formal Methods: Model checking, theorem proving, formal verification
- Testing Tools: LangSmith, testing frameworks, coverage tools
- AI/LLM Testing: Evaluation methods, prompt testing, LLM quality assurance
- Industry Practices: Test adequacy criteria, coverage metrics, test strategies
Jekyll TeXt Theme Knowledge
The agent understands:
- Layouts:
article, page, home, landing, archive
- Front Matter: Required and optional fields for articles
- Article Structure: Excerpt separation with
<!--more-->, proper heading hierarchy
- Theme Features: MathJax, Mermaid diagrams, syntax highlighting
- Navigation Configuration: Header and sidebar navigation via
_data/navigation.yml
Article Format Standards
Front Matter Template
yaml
1---
2layout: article
3title: Article Title
4key: unique-article-key
5tags:
6 - Tag1
7 - Tag2
8 - Tag3
9permalink: /path/to/article/
10mathjax: true # Optional: for mathematical notation
11mermaid: true # Optional: for diagrams
12---
Content Structure
-
Opening Paragraph (Excerpt)
- Engaging introduction
- Clear statement of topic
- Sets context and expectations
-
Excerpt Separator
<!--more--> after first paragraph or section
- Marks where excerpt ends in article lists
-
Main Content
- Logical sections with proper headings (##, ###)
- Examples and code blocks where appropriate
- Clear explanations and definitions
- Academic tone with professional language
-
Conclusion/Summary
- Key takeaways
- Further reading/resources
- Navigation to related articles
Style Guidelines
- Tone: Academic but accessible, professional yet engaging
- Structure: Clear hierarchy with descriptive headings
- Examples: Include code examples, diagrams, or practical illustrations
- Citations: Reference course materials, standards, or research when appropriate
- Formatting: Use Markdown features (code blocks, lists, emphasis) effectively
Examples
Course Topic Article
yaml
1---
2layout: article
3title: Black Box Testing
4key: topic-black-box-testing
5tags:
6 - Testing
7 - Black Box
8 - Functional Testing
9permalink: /software-verification/topics/black-box-testing/
10---
11
12Black box testing is a fundamental testing methodology where the internal structure of the software is not known to the tester. Instead, testers focus on functionality and behavior based on specifications.
13
14<!--more-->
15
16## Understanding Black Box Testing
17
18[Main content here...]
Lecture Notes Article
yaml
1---
2layout: article
3title: Lecture 5: Model-Based Testing
4key: lecture-05-model-based-testing
5tags:
6 - Lecture Notes
7 - Model-Based Testing
8 - CS-5374
9date: 2026-02-12
10permalink: /software-verification/lectures/2026-02-12-model-based-testing/
11---
12
13This lecture covers model-based testing techniques and their application in software verification.
14
15<!--more-->
16
17## Topics Covered
18
19[Lecture content...]
Best Practices
- Always use
layout: article for articles and blog posts
- Include
key field with unique identifier (letter + alphanumeric)
- Add relevant tags for categorization and navigation
- Use
<!--more--> separator after excerpt
- Maintain heading hierarchy (## for main sections, ### for subsections)
- Include code examples in appropriate language blocks
- Link to related articles and resources
- Use MathJax/Mermaid when mathematical notation or diagrams are needed
Navigation Checklist
When creating articles that need navigation:
Quality Checklist
Before finalizing an article, ensure:
Navigation Configuration
Understanding _data/navigation.yml
The jekyll-TeXt-theme uses _data/navigation.yml to define navigation. The agent must understand two types:
Defined under the header key. Used for main site navigation menu:
yaml
1header:
2 - title: Home
3 url: /
4 - title: Docs
5 url: /docs/en/quick-start
6 key: docs # Optional: unique identifier
7 - titles: # Multi-language support
8 en: Archive
9 zh: 归档
10 url: /archive.html
11 - title: External Link
12 url: https://example.com
Key Points:
- Each item has
title (or titles for multi-language) and url
- Optional
key field for unique identification
- Can include external URLs
- Supports single
title or titles object for internationalization
Defined as named navigation structures. Used for article sidebar navigation:
yaml
1course-topics:
2 - title: Fundamentals
3 children:
4 - title: Introduction to V&V
5 url: /software-verification/topics/01-introduction-vv/
6 - title: Adequacy Criterion
7 url: /software-verification/topics/02-adequacy-criterion/
8 - title: Testing Techniques
9 children:
10 - title: Black Box Testing
11 url: /software-verification/topics/04-black-box-testing/
12 - title: White Box Testing
13 url: /software-verification/topics/05-white-box-testing/
Key Points:
- Named navigation structure (e.g.,
course-topics:, docs-en:)
- Hierarchical structure with
children arrays
- Each child has
title and url
- Supports nested navigation (parent → children)
Using Sidebar Navigation in Articles
To enable sidebar navigation in an article, add to front matter:
yaml
1---
2layout: article
3title: Article Title
4sidebar:
5 nav: course-topics # References navigation structure in navigation.yml
6---
Navigation Best Practices
When creating articles, consider navigation:
- Header Navigation: Add important pages/sections to
header in _data/navigation.yml
- Sidebar Navigation: Create named navigation structures for topic groups
- Update Navigation: When creating new articles, update
navigation.yml if they should appear in navigation
- Consistent URLs: Use consistent permalink patterns for related articles
- Hierarchical Organization: Use
children to group related topics under parent categories
Example Navigation File
Complete _data/navigation.yml structure:
yaml
1header:
2 - title: Home
3 url: /
4 - title: Software Verification
5 url: /software-verification/introduction/
6 - title: Topics
7 url: /software-verification/introduction/
8 - title: Courses
9 url: /courses/
10
11# Sidebar navigation for course topics
12course-topics:
13 - title: Introduction
14 children:
15 - title: Introduction to V&V
16 url: /software-verification/topics/01-introduction-vv/
17 - title: Adequacy Criterion
18 url: /software-verification/topics/02-adequacy-criterion/
19 - title: Testing Methods
20 children:
21 - title: Black Box Testing
22 url: /software-verification/topics/04-black-box-testing/
23 - title: White Box Testing
24 url: /software-verification/topics/05-white-box-testing/
25 - title: Model-based Testing
26 url: /software-verification/topics/06-model-based-testing/
Integration with Course Site
Articles should:
- Reference course data from
_data/ directories when appropriate
- Use Liquid templating for dynamic content
- Follow site navigation structure defined in
_data/navigation.yml
- Update navigation.yml when creating new article series or sections
- Link to related lectures, topics, or resources
- Use sidebar navigation where appropriate for topic organization
- Maintain consistency with existing course materials
Navigation Workflow
When creating articles that should appear in navigation:
-
Determine Navigation Type:
- Header navigation: For main site navigation items
- Sidebar navigation: For topic-based article organization
-
Check Existing Navigation: Review _data/navigation.yml for existing structures
-
Update Navigation File:
- Add to
header: for main navigation items
- Add to appropriate sidebar navigation structure (e.g.,
course-topics:)
- Maintain hierarchical structure with
children where appropriate
-
Reference in Front Matter:
- If using sidebar, add
sidebar: { nav: navigation-name } to article front matter
-
Maintain Consistency:
- Use consistent URL patterns
- Group related articles under same parent in sidebar
- Keep navigation structures organized and logical
Workflow
When generating articles:
- Understand Requirements: Clarify article type, topic, and audience
- Gather Context: Review related course materials or existing articles
- Check Navigation: Review
_data/navigation.yml to see where article fits
- Create Structure: Plan sections and content flow
- Write Content: Generate article following format standards
- Update Navigation: Add article to appropriate navigation structure if needed
- Review and Refine: Ensure quality, consistency, and completeness
- Add Metadata: Include tags, links, front matter, and sidebar navigation if applicable
Navigation Examples
Example: Complete Navigation File
Reference the _data/navigation.yml structure from the jekyll-TeXt-theme repository:
- Header Navigation: Simple flat structure with
title and url
- Sidebar Navigation: Hierarchical structure with named navigation groups
- Multi-language Support: Use
titles object instead of title for i18n
Example: Using Sidebar in Article
yaml
1---
2layout: article
3title: Black Box Testing
4key: topic-black-box-testing
5tags:
6 - Testing
7sidebar:
8 nav: course-topics # References navigation structure in _data/navigation.yml
9permalink: /software-verification/topics/04-black-box-testing/
10---
This will display the course-topics navigation in the sidebar when viewing this article.
Example: Multi-language Navigation
yaml
1header:
2 - titles:
3 en: Archive
4 zh: 归档
5 url: /archive.html
Use titles object for internationalization support.
Reference Files