MCPInstall

estimate-jira

Estimate complexity, effort, and risks for JIRA tickets, features, or projects. Generates structured reports with time estimates, dependencies, risk analysis, and known unknowns. Use when user asks to "estimate", "size", or "analyze complexity" of work items.

Installs
44
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/ag-grid/ag-charts --skill estimate-jira
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads estimate-jira automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

JIRA Ticket Estimation Skill

This skill provides structured complexity and effort estimation for JIRA tickets, features, or projects. It produces consistent, professional estimation reports that include complexity levels, time estimates, dependency analysis, risk assessment, and identification of unknowns.

When to Use This Skill

Activate this skill when the user requests:

  • "Estimate this JIRA ticket"
  • "Analyze complexity of [ticket/feature]"
  • "What's the effort for this project?"
  • "Size this feature"
  • "How long will this take?"
  • "What are the risks for this work?"

Prerequisites

  • User provides JIRA ticket content (markdown format preferred)
  • Access to repository codebase for dependency analysis
  • Understanding of project architecture (consult tools/prompts/technology-stack.md if needed)

Workflow

Step 0: Load Required Documentation

Read these files FIRST before any analysis:

  1. tools/prompts/guides/jira.md - JIRA quick reference
  2. tools/prompts/technology-stack.md - Architecture constraints and patterns
  3. CLAUDE.md - Repository conventions and build requirements

After reading, confirm you understand:

  • Repository structure and key packages
  • Build and test commands
  • Architectural constraints (e.g., zero runtime dependencies)

Step 1: Gather and Analyze Ticket Information

Complete ALL before proceeding:

  • Receive JIRA ticket content from user (markdown format)
  • Extract key requirements, acceptance criteria, and constraints
  • Identify the primary affected areas (packages/files)
  • Note what information is present vs. missing in the ticket

Initial Analysis Questions:

  • What type of work is this? (bug fix, new feature, refactoring, docs, etc.)
  • Which packages are affected? (community, enterprise, types, website, etc.)
  • Are there related tickets or dependencies mentioned?
  • Is the scope well-defined or vague?

Step 2: Identify Ambiguities and Implementation Choices

CRITICAL: Do NOT proceed to estimation without completing this step.

Analyze for ambiguities in these areas:

  1. Technical Approach

    • Are there multiple valid implementation strategies?
    • Is the desired architecture/pattern specified?
    • Are performance requirements defined?
  2. Scope Boundaries

    • Is the feature scope clearly bounded?
    • Are edge cases and error handling specified?
    • Is backward compatibility required?
  3. Integration Points

    • How should this integrate with existing systems?
    • Are framework wrappers (React/Angular/Vue) affected?
    • Are there public API changes?
  4. Testing & Quality

    • What level of test coverage is expected?
    • Are visual regression tests needed?
    • Should benchmarks be added/updated?
  5. Documentation

    • Is documentation required?
    • Are examples needed?
    • Should migration guides be written?

For each significant ambiguity identified:

  • Document the ambiguity clearly
  • List the possible implementation choices
  • Note how each choice impacts time/complexity/risk
  • USE AskUserQuestion tool to get clarification before proceeding

Use the AskUserQuestion tool to present ambiguities:

Present 1-4 ambiguities at once using the AskUserQuestion tool with this structure:

  • question: Clear question about the ambiguity (e.g., "How should the 'xy' mode work visually?")
  • header: Short label (max 12 chars) (e.g., "Dual-axis UI")
  • options: 2-4 implementation choices with:
    • label: Concise option name (e.g., "Two Navigators")
    • description: Impact explanation (e.g., "Show both X-axis (bottom) and Y-axis (right) navigators - 20% more complexity, clearer UI")
  • multiSelect: false (user should pick one approach)

Example usage:

AskUserQuestion({
    questions: [
        {
            question: "How should the 'xy' mode work visually?",
            header: 'Dual-axis UI',
            multiSelect: false,
            options: [
                {
                    label: 'Two Separate Navigators',
                    description:
                        'Show both X-axis (bottom) and Y-axis (right) navigators simultaneously - +20% complexity, clearer UI',
                },
                {
                    label: 'Integrated Navigator',
                    description: 'Single unified UI component - High complexity, unclear UX, needs design work',
                },
                {
                    label: 'Not Supported',
                    description: "Only allow 'x' or 'y', defer 'xy' to future ticket - -30% complexity, simpler scope",
                },
            ],
        },
        {
            question: 'Should Y-axis navigator position be configurable?',
            header: 'Position',
            multiSelect: false,
            options: [
                {
                    label: 'Configurable (left/right)',
                    description:
                        'Add navigator.position option - +10% complexity, flexible but may overlap Y-axis labels',
                },
                {
                    label: 'Right Side Only',
                    description: 'Always on right to avoid conflicts - Baseline complexity, simpler but less flexible',
                },
            ],
        },
    ],
});

After receiving answers:

  • Document the chosen approach in a summary
  • Adjust estimate based on selected options
  • Include decisions in the "Implementation Decisions" section of the report

Step 3: Investigate Codebase Dependencies and Complexity

Use the Explore agent for thorough codebase analysis:

  • Identify all affected files and packages
  • Analyze existing similar implementations for patterns
  • Check for dependencies on other systems/modules
  • Look for related tests that need updating
  • Search for documentation that needs changes

Key Investigation Areas:

  1. Core Implementation

    • Where is the main logic located?
    • How complex is the existing code in that area?
    • Are there similar features to reference?
  2. Type System

    • Will ag-charts-types need updates?
    • Are there complex type definitions involved?
    • Will this affect public API surface?
  3. Testing Surface

    • How many test files are affected?
    • Are image snapshots needed?
    • Will this need E2E tests?
  4. Documentation & Examples

    • How many doc pages need updates?
    • Are new examples required?
    • Will framework variants be generated?
  5. Build Dependencies

    • Which packages need rebuilding?
    • Are there circular dependency risks?
    • Will this affect build performance?

Step 4: Generate Structured Estimation Report

Use this exact template for consistency:


Estimation Report: [Ticket ID/Feature Name]

Date: [Current date] Estimator: Claude Code Ticket Summary: [Brief 1-2 sentence summary]


Executive Summary

MetricValue
Total Effort[X-Y days] ([X-Y hours])
Complexity[Low | Medium | High | Very High]
Risk Level[Low | Medium | High]
Confidence[Low | Medium | High]

Key Highlights:

  • [1-2 sentence summary of main implementation work]
  • [Major scope decision or constraint]
  • [Top risk or concern if applicable]

1. Estimated Complexity Level

Overall Complexity: [Low | Medium | High | Very High]

Rationale:

  • [Explanation of complexity drivers]
  • [Why this level was chosen]

Complexity Breakdown:

  • Implementation: [Low/Medium/High]
  • Testing: [Low/Medium/High]
  • Documentation: [Low/Medium/High]
  • Integration: [Low/Medium/High]

2. Estimated Time Effort

Total Estimate: [X-Y days] for a single developer

Confidence Level: [Low | Medium | High]

Breakdown:

  • Investigation & Design: [X hours/days]

    • Understanding requirements
    • Design decisions
    • Spike work if needed
  • Core Implementation: [X hours/days]

    • Primary code changes
    • Type definitions
    • Public API updates
  • Testing: [X hours/days]

    • Unit tests
    • E2E tests (if applicable)
    • Visual regression tests (if applicable)
    • Benchmark updates (if applicable)
  • Documentation: [X hours/days]

    • Doc page updates/creation
    • Example creation
    • Migration guides (if applicable)
  • Review & Iteration: [X hours/days]

    • Code review feedback
    • Test failures
    • Bug fixes

Assumptions:

  • [List key assumptions affecting the estimate]
  • [e.g., "Assuming developer is familiar with canvas rendering"]
  • [e.g., "Assuming no major architectural changes needed"]

3. Dependencies, Gaps & Missing Information

External Dependencies:

  • [List dependencies on other teams/tickets]
  • [Any blocked/blocking items]

Information Gaps:

  • [What's not specified in the ticket]
  • [Questions that remain unanswered]
  • [Areas needing clarification from stakeholders]

Implicit Scope (not explicitly mentioned):

  • [Tasks likely required but not stated]
  • [e.g., "Framework wrapper updates"]
  • [e.g., "Locale string additions"]

Out of Scope (confirm with stakeholder):

  • [Items that might be expected but should be separate]
  • [e.g., "Performance optimization beyond basic implementation"]

4. Top 3 Highest Risk Aspects

Risk #1: [Description]

Category: [Known Unknown | Technical Complexity | Integration Risk | etc.]

Details:

  • [What makes this risky]
  • [Potential impact]

Mitigation:

  • [How to reduce this risk]

Risk #2: [Description]

Category: [Known Unknown | Technical Complexity | Integration Risk | etc.]

Details:

  • [What makes this risky]
  • [Potential impact]

Mitigation:

  • [How to reduce this risk]

Risk #3: [Description]

Category: [Known Unknown | Technical Complexity | Integration Risk | etc.]

Details:

  • [What makes this risky]
  • [Potential impact]

Mitigation:

  • [How to reduce this risk]

5. Overall Risk Level

Risk Assessment: [Low | Medium | High]

Justification:

  • [Overall risk analysis]
  • [Factors contributing to risk level]
  • [Known unknowns summary]

Risk Factors:

  • Technical Risk: [Low/Medium/High] - [Why]
  • Schedule Risk: [Low/Medium/High] - [Why]
  • Integration Risk: [Low/Medium/High] - [Why]
  • Requirement Risk: [Low/Medium/High] - [Why]

Confidence in Estimate:

  • [High/Medium/Low confidence and why]
  • [What would increase confidence]

Recommended Next Steps

  1. [Immediate action item]
  2. [Pre-implementation research needed]
  3. [Stakeholder clarifications required]

Implementation Decisions (Confirmed)

Based on stakeholder clarification on [date]:

  1. [Decision Area 1]: [Chosen approach] ([Option letter])
  2. [Decision Area 2]: [Chosen approach] ([Option letter])
  3. [Decision Area 3]: [Chosen approach] ([Option letter])

Note: Include this section only if significant implementation choices were clarified during estimation.


End of Report


Completion Checklist

Cannot mark estimation complete until ALL checked:

  • User provided JIRA ticket content
  • All significant ambiguities identified and clarified with user
  • Codebase investigation completed using Explore agent
  • All sections of estimation report filled out
  • Complexity level justified with rationale
  • Time estimate includes breakdown and assumptions
  • Top 3 risks identified with mitigation strategies
  • Overall risk level assessed
  • Report reviewed for completeness and accuracy

Critical Rules

  1. NEVER skip ambiguity clarification - If implementation choices significantly impact estimates, you MUST ask the user before proceeding using the AskUserQuestion tool. Better to pause for clarification than provide misleading estimates. Present options with their complexity/time impacts clearly described.

  2. Always use AskUserQuestion tool for ambiguities - Do not use ad-hoc text conversation for clarifying implementation choices. Use the structured AskUserQuestion tool to present 1-4 ambiguities at once with clear options and impact descriptions.

  3. Always use Explore agent for codebase analysis - Do not attempt complex codebase navigation manually. The Explore agent is optimized for this task.

  4. Be honest about uncertainty - If confidence is low, say so clearly. Include what information would increase confidence.

  5. Consider the full scope - Don't forget testing, documentation, review iterations, and framework wrappers. These often represent 40-50% of total effort.

  6. Account for unknowns - Known unknowns should increase time estimates and risk levels proportionally.

  7. Use ranges, not point estimates - Give ranges (e.g., "3-5 days") to reflect uncertainty, especially for complex work.

  8. Document assumptions explicitly - Every estimate is based on assumptions. State them clearly so they can be validated.

Failure Handling

Problem: Insufficient ticket information

Solution:

  • Request more details from user
  • List specific information needed
  • Provide estimate with large uncertainty range if user cannot provide more details

Problem: Cannot find relevant code areas

Solution:

  • Use Explore agent with broader search patterns
  • Ask user for hints about where code might be located
  • Document this as a "known unknown" in the report

Problem: Multiple valid implementation approaches with vastly different complexity

Solution:

  • Use the AskUserQuestion tool to present each approach as an option
  • Include complexity/time impact in each option's description
  • Provide recommendation in one option's description if applicable
  • Let user select their preferred approach through the structured interface
  • Document chosen approach in the "Implementation Decisions" section

Problem: Estimate exceeds reasonable time (e.g., >2 weeks for single person)

Solution:

  • Consider if work should be broken into multiple tickets
  • Highlight this in the risk assessment
  • Recommend creating sub-tasks or phases
  • Discuss with user about scope reduction options

Estimation Calibration Data Points

Use these baseline estimates for common AG Charts work items:

Series Implementation

  • New series type (extending AbstractBarSeries, CartesianSeries, etc.): 10 days / 2 weeks
    • Includes: Core implementation, type definitions, rendering logic, theme integration
    • Includes: Unit tests, visual regression tests, documentation page, framework examples
    • Examples: Overlapping bar/column series, timeline series, quadrant chart
    • Does NOT include: Highly complex rendering algorithms, advanced interactions beyond standard

Annotation Implementation

  • New annotation type: 15-20 days (3-4 weeks)
    • Includes: Core annotation class, rendering, drag/resize interactions, type definitions
    • Includes: Comprehensive testing (unit, E2E, visual regression), documentation, examples
    • Examples: Text annotations, shape annotations, measurement tools
    • Complexity drivers: Drag/drop interactions, resize handles, connection points, styling system

Other Common Work Items

  • Simple bug fix (isolated, clear root cause): 0.5-1 day
  • Complex bug fix (requires investigation, multiple areas): 2-3 days
  • New chart option (simple property, minimal logic): 1-2 days
  • Event/callback addition: 2-4 days (depending on complexity)
  • Performance optimization: 3-5 days (investigation + implementation)
  • Breaking API change: Add 20-30% for migration guide, backward compatibility testing

Adjustment Guidelines:

  • Add 20-30% if implementation requires deep integration with multiple systems
  • Add 30-50% if feature has significant unknowns or unclear requirements
  • Add 40-60% for enterprise features requiring licensing checks, advanced theming
  • Reduce by 20-30% only if leveraging substantial existing infrastructure with minimal changes

Related Documentation

  • JIRA Guide - JIRA quick reference
  • JIRA Create Skill - Creating JIRA tickets
  • Technology Stack - Architectural constraints
  • Testing Guide - Testing requirements and patterns
  • Documentation Guide - Documentation requirements
  • Code Quality Guide - Quality standards

Example Usage

When the user says:

  • "Estimate AG-12345"
  • "How complex is this feature?"
  • "Size this ticket for me"
  • "What's the effort for implementing [feature]?"
  • "Analyze the risks for this work"

This skill will:

  1. Request the JIRA ticket content (if not already provided)
  2. Analyze the requirements and identify ambiguities
  3. Clarify implementation choices with you
  4. Investigate the codebase thoroughly
  5. Generate a comprehensive estimation report with all requested sections
  6. Highlight risks, unknowns, and areas of complexity

The output will always follow the structured report format to ensure consistency across all estimates.

FAQ

What does the estimate-jira skill do?

Estimate complexity, effort, and risks for JIRA tickets, features, or projects. Generates structured reports with time estimates, dependencies, risk analysis, and known unknowns. Use when user asks to "estimate", "size", or "analyze complexity" of work items.

How do I install estimate-jira?

Run npx skills add https://github.com/ag-grid/ag-charts --skill estimate-jira in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/estimate-jira/ (personal) or .claude/skills/estimate-jira/ (project).

Which AI agents can use estimate-jira?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is estimate-jira safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains estimate-jira?

It is published by ag-grid in ag-grid/ag-charts. It has 44 recorded installs.

Popular productivity & automation skills

View category →

agent-browser

vercel-labs/agent-browser

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.

OfficialProductivity & Automation1.3M installs

lark-doc

open.feishu.cn

飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。

lark-base

open.feishu.cn

飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。

lark-drive

open.feishu.cn

飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。

lark-shared

open.feishu.cn

Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.

lark-im

open.feishu.cn

飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。