Author: Scott Glover [email protected]
This directory contains production-ready workflow examples demonstrating the marktoflow v2.0 TypeScript framework with native SDK integrations.
For test/demo workflows and feature examples, see the /examples/tests directory.
All examples have been updated to use native SDK integrations instead of Python tool scripts:
- @slack/web-api - Official Slack SDK
- @octokit/rest - Official GitHub SDK
- jira.js - Official Jira SDK
- googleapis - Official Google APIs
- confluence - Confluence REST API client
- playwright - Browser automation
- openai / claude-agent / opencode / ollama - AI agent integrations
No more subprocess bridging or wrapper scripts! Workflows now call SDK methods directly with full type safety.
Each workflow is self-contained with:
workflow-name/
├── workflow.md # Workflow definition with YAML frontmatter
└── config.yaml # Optional: Bundle configuration
These examples are designed to be used in real-world scenarios and can be deployed as-is or customized for your needs.
Automated code review using GitHub API and Claude AI.
Integrations: GitHub, Claude Agent
Features:
- Fetches PR details and changed files via GitHub SDK
- AI-powered code analysis for security, performance, quality issues
- Posts review comments with severity classification
- Approves or requests changes automatically
marktoflow run examples/code-review \
--input repo=owner/repo \
--input pr_number=123NEW! Advanced code review using GitHub Copilot SDK for comprehensive analysis.
Integrations: GitHub, GitHub Copilot
Features:
- Powered by GitHub Copilot's production-tested agent runtime
- Deep analysis for security vulnerabilities (OWASP Top 10)
- Performance optimization recommendations
- Code quality and best practices review
- Automatic PR labeling and team notifications
- Support for multiple models (GPT-5, Claude, etc.)
marktoflow run examples/copilot-code-review \
--input repository=owner/repo \
--input pull_number=123Requirements: GitHub Copilot subscription + CLI installed
Aggregates team updates from Jira and Slack into an AI-generated standup summary.
Integrations: Jira, Slack, Claude Agent
Features:
- Fetches recent Jira updates and in-progress work
- Analyzes Slack channel activity
- Generates formatted standup summary with AI
- Posts to team channel with rich formatting
marktoflow run examples/daily-standup \
--input jira_project=PROJ \
--input team_channel=#engineeringScheduled: Runs automatically at 9 AM weekdays
Automated dependency updates with AI-powered changelog generation.
Integrations: GitHub, Claude Agent, Slack
Features:
- Analyzes outdated npm packages
- AI-assisted package update selection
- Creates update branch and commits changes
- Generates comprehensive changelog
- Opens PR with detailed description
marktoflow run examples/dependency-update \
--input repo=owner/repo \
--input package_manager=npmScheduled: Runs automatically every Monday at 10 AM
Automated incident detection and response coordination.
Integrations: Slack, GitHub, Jira, HTTP (PagerDuty API)
Features:
- Creates dedicated incident Slack channel
- Fetches on-call responders from PagerDuty
- Searches for related GitHub issues
- Creates Jira incident ticket
- Posts formatted incident summary with action buttons
marktoflow run examples/incident-response \
--input incident_id=INC-001 \
--input severity=high \
--input service=api-gateway \
--input description="API latency spike"Triggered by: PagerDuty webhooks, monitoring alert webhooks
Automates sprint planning with velocity analysis and story selection.
Integrations: Jira, Confluence, Slack, Claude Agent
Features:
- Analyzes team velocity from past sprints
- AI-powered story selection based on capacity
- Creates new sprint in Jira
- Moves selected stories to sprint
- Documents sprint plan in Confluence
- Notifies team in Slack
marktoflow run examples/sprint-planning \
--input project_key=PROJ \
--input team_members='["alice", "bob", "carol"]'Scheduled: Runs automatically every Friday at 2 PM
Intelligently updates component documentation across a codebase, only when documentation is outdated.
Integrations: Ollama (local AI), Script execution
Features:
- Discovers all components in codebase
- Analyzes code and existing documentation
- Determines if documentation is outdated or inaccurate
- Updates only documentation that needs updates
- Preserves documentation that is still valid
marktoflow run examples/doc-maintenance \
--input codebase_path=/path/to/project \
--input component_pattern="packages/*/"NEW! Browser automation using Playwright for web scraping, testing, and automation.
Integrations: Playwright
Features:
- Multi-browser support (Chromium, Firefox, WebKit)
- Page navigation and interaction
- Data extraction from web pages
- Screenshot and PDF generation
- Form filling automation
- Cookie and storage management
- Support for cloud browser services (Browserless, Browserbase)
# Basic web scraping
marktoflow run examples/web-automation/workflow.md
# Advanced scraper with pagination
marktoflow run examples/web-automation/web-scraper.md -i max_pages=5
# Form automation
marktoflow run examples/web-automation/form-automation.mdRequirements: Playwright browsers (npx playwright install)
Quick-start examples demonstrating individual service integrations:
agent-task-executor/- Execute agent tasks from messages with pass/fail reportingcodebase-qa/- Answer questions about codebases via Slack/Telegram webhooks
gmail-notification/- Send emails via Gmail APIgoogle-docs-create/- Create and format Google Docs documentsgoogle-drive-create-file/- Upload files to Google Drivesheets-report/- Generate reports in Google Sheets
postgres-query/- Query PostgreSQL databaseslinear-sync/- Sync issues with Linear
For examples that demonstrate specific features or test functionality, see:
/examples/tests- Control flow demos, SDK showcases, simple tests- Claude Agent SDK demo
- Codex integration demo
- Control flow patterns (loops, conditionals, parallel, try/catch)
- Sub-workflow examples
# Run a workflow
marktoflow run examples/code-review
# With inputs
marktoflow run examples/code-review --input repo=owner/repo --input pr_number=42
# Dry run (show execution plan)
marktoflow run examples/code-review --dry-run
# With custom config
marktoflow run examples/code-review --config custom-config.yaml# Validate workflow
marktoflow workflow validate examples/code-review/workflow.md
# Show workflow info
marktoflow workflow show examples/code-review/workflow.md
# List all workflows
marktoflow workflow list examples/Each workflow requires specific environment variables for SDK authentication:
export GITHUB_TOKEN="ghp_..."export SLACK_BOT_TOKEN="xoxb-..."export JIRA_HOST="your-company.atlassian.net"
export JIRA_EMAIL="[email protected]"
export JIRA_API_TOKEN="..."export CONFLUENCE_HOST="your-company.atlassian.net"
export CONFLUENCE_EMAIL="[email protected]"
export CONFLUENCE_API_TOKEN="..."# Claude Agent
export ANTHROPIC_API_KEY="sk-ant-..."
# OpenAI / VLLM
export OPENAI_API_KEY="sk-..."
# Ollama (local, no key needed)
# Runs on http://localhost:11434 by defaultexport PAGERDUTY_API_KEY="..."
export PAGERDUTY_SCHEDULE_ID="..."- Create a workflow file with YAML frontmatter:
---
workflow:
id: my-workflow
name: 'My Workflow'
version: '2.0.0'
tools:
slack:
sdk: '@slack/web-api'
auth:
token: '${SLACK_BOT_TOKEN}'
inputs:
message:
type: string
required: true
---
# My Workflow
## Step 1: Post Message
```yaml
action: slack.chat.postMessage
inputs:
channel: '#general'
text: '{{ inputs.message }}'
output_variable: result
``````
2. Run it:
```bash
marktoflow run my-workflow.md --input message="Hello World"
- All workflows use official SDKs and native integrations
- No subprocess spawning or bridge layers
- Full TypeScript type safety
- Examples are production-ready patterns
- Modify inputs and logic to fit your needs