Integrations & Exports
Markdown (default)
Writes scrum-plan.md with all artifacts structured as headings, tables, and lists.
yeaboi --export-only --quick
HTML
Self-contained single-file HTML report with embedded CSS, collapsible sections, and a table of contents. No external dependencies. Screenshots pasted into the session and generated charts are base64-embedded so the file stays offline-openable.
yeaboi --non-interactive --description "Build a todo app" --output html
Notion & Confluence
Every Export button can publish straight to Notion or Confluence with native, first-class formatting — not a markdown dump:
- Headings, nested bullet lists, numbered lists, tables, quotes, links, bold/italic/code
- Checkboxes become Notion to-dos / Confluence task lists (checkable in the page)
- ⚠ Notices sections render as a Notion callout / Confluence warning panel
- Images are uploaded and embedded: screenshots you pasted into the TUI (standup updates, planning sessions) and generated charts travel with the page (Notion File Upload API / Confluence attachments)
- Documents use the full palette per mode — standup member updates and delivery-report metrics/items render as tables, retro/1:1 action items as checkable tasks, talking points and goals as numbered lists, plus quotes, dividers, and charts — so no page is a wall of bullets
- yeaboi branding: Notion pages get the 🤙 page icon, Confluence pages get a real
yeaboilabel (search/filterable), and every document carries a linked🤙 Generated by yeaboi.aifooter - Grouped by default: with no exports page configured in Setup, docs publish under an auto-created 🤙 yeaboi container page (under your Notion root page / at the root of your Confluence space) so everything yeaboi publishes stays together
Chart images
With the optional charts extra installed, exports include rendered PNG charts — sprint velocity (planned vs done) in team-analysis exports and a delivered-work breakdown in delivery reports. Without the extra, exports simply omit the charts.
uv sync --extra charts # or: uv tool install "yeaboi[charts]"
JSON
Clean, pipeable JSON schema for CI/CD integration. No internal state fields — just the plan artifacts:
{
"version": "1.0.0",
"project": { "name", "description", "type", "goals", "tech_stack", "team_size", "sprint_length_weeks" },
"features": [...],
"stories": [...],
"tasks": [...],
"sprints": [...]
}
yeaboi --non-interactive --description "Build a todo app" --output json | jq '.stories | length'
When using --output json, Rich console output goes to stderr so stdout is clean JSON.
Jira
Batch sync with idempotent creation, available from TUI pipeline review at any stage or from the project list:
| Artifact | Jira Mapping |
|---|---|
| Features | Jira Labels (not separate issues) |
| Epic | 1 project-level Epic |
| Stories | Issues linked to Epic, with story points, priority, acceptance criteria, feature labels |
| Tasks | Sub-tasks linked to parent Stories, with task labels |
| Sprints | Created with name, goal, dates; stories assigned to sprints |
Key behaviors:
- Idempotency — checks
jira_*_keysstate before creating; skips already-synced artifacts - Cascade creation — Task stage auto-creates Stories if not yet synced; Sprint stage auto-creates Stories if not yet synced
- Project type detection — discovers issue types dynamically (handles team-managed vs. classic Jira projects)
- Confirmation screen — shows what will be created/skipped before any write operation
- Progress screen — animated per-item status during creation
- Jira button — disabled/dimmed in TUI when
JIRA_API_TOKENis not configured
Azure DevOps Boards
Batch sync with idempotent creation, available from TUI pipeline review at any stage:
| Artifact | Azure DevOps Mapping |
|---|---|
| Features | Tags (System.Tags, semicolon-separated) |
| Epic | 1 project-level Epic work item |
| Stories | User Story work items linked to Epic via System.LinkTypes.Hierarchy-Reverse, with story points, priority (1–4), HTML descriptions |
| Tasks | Task work items linked to parent Stories |
| Sprints | Iterations (classification nodes created via REST API); stories assigned via System.IterationPath |
Key behaviors:
- Idempotency — checks
azdevops_*_keysstate before creating; skips already-synced artifacts - Cascade creation — Task stage auto-creates Stories if not yet synced; Iteration stage auto-creates Stories if not yet synced
- Team area path — sets
System.AreaPathto{project}\{team}so work items appear on the correct team board - Description updates on re-sync — already-created items get descriptions updated (DoD, rationale, AI prompts added later)
- Sprint naming convention — detects board's existing iteration naming pattern and renames LLM-generated names to match
- Iteration dates — sets start/finish dates on iterations based on sprint start date and sprint length
- Velocity auto-detection — fetches velocity from past iterations during intake (falls back from Jira to AzDO)
- HTML descriptions — acceptance criteria, Definition of Done, and points rationale rendered as
<h3>,<strong>,<ul><li>(not Jira wiki markup) - Priority mapping —
critical → 1,high → 2,medium → 3,low → 4 - Confirmation screen — shows what will be created/skipped before any write operation
- Progress screen — animated per-item status during creation
- Azure DevOps button — disabled/dimmed in TUI when credentials are not configured
PAT permissions required
Create a Personal Access Token with the following scopes:
| Scope | Access | Used for |
|---|---|---|
| Work Items | Read & Write | Reading board/backlog, creating Epics/Stories/Tasks |
| Project and Team | Read | Listing iterations, team settings, velocity data |
| Code | Read | Reading repo file tree and file contents (optional, for repo context tools) |
AZURE_DEVOPS_TOKEN=your-pat-token
AZURE_DEVOPS_ORG_URL=https://dev.azure.com/your-org
AZURE_DEVOPS_PROJECT=MyProject
AZURE_DEVOPS_TEAM=MyProject Team # optional — defaults to "{project} Team"