This skill should be used when the user asks to "collect Linear activity", "generate Linear report", "show my Linear issues", "what did I work on in Linear", or requests activity summaries from Linear for specific date ranges. Provides workflow for collecting issues, projects, and cycles via Linear MCP.
Collects Linear activity via MCP and generates time-organized markdown reports for issues, projects, and cycles. Triggered when users request Linear reports, activity summaries, or "what did I work on" for specific date ranges.
/plugin marketplace add jongwony/cc-plugin/plugin install linear@cc-pluginThis skill inherits all available tools. When active, it can use any tool Claude has access to.
references/api-reference.mdreferences/output-template.mdCollect Linear activity data via MCP and generate time-organized markdown reports.
user = mcp__plugin_linear_linear__get_user(query="me")
teams = mcp__plugin_linear_linear__list_teams(limit=250)
Extract: userId, displayName, email, teamIds, teamNames
On error: Check MCP configuration in ~/.claude.json, verify Linear workspace access.
Multiple teams: Present team selection via AskUserQuestion with multiSelect.
| Request | Action |
|---|---|
| Explicit date ("2025-11-05") | Use directly |
| Relative ("yesterday", "last week") | Calculate with date command |
| Not specified | Prompt with AskUserQuestion |
Convert to ISO 8601: YYYY-MM-DDTHH:MM:SSZ
Execute parallel MCP calls per team:
| Data Type | MCP Function | Key Filters |
|---|---|---|
| Issues Created | list_issues | assignee="me", createdAt |
| Issues Updated | list_issues | assignee="me", updatedAt |
| Comments | list_comments | issueId (filter date client-side) |
| Projects | list_projects | member="me", createdAt/updatedAt |
| Cycles | list_cycles | teamId (filter date client-side) |
MCP uses >= comparison only. Filter end date client-side.
For API details: references/api-reference.md
datetime.now().astimezone())Output directory: ~/.claude/tmp/linear-activity/reports/
mkdir -p ~/.claude/tmp/linear-activity/reports/
Files:
YYYY-MM-DD.md - Human-readable markdownYYYY-MM-DD.json - Machine-readable (for calendar-sync)For format specification: references/output-template.md
| Icon | Type |
|---|---|
| 🆕 | Issue Created |
| 📝 | Issue Updated |
| 💬 | Issue Comment |
| 📊 | Project Created |
| 🔧 | Project Updated |
| 🔄 | Cycle Created/Updated |
| Request | Result |
|---|---|
| "Linear activity yesterday" | Yesterday's activities, all teams |
| "Linear report 2025-11-01 to today" | Date range report |
| "Last week's Linear activity" | Last 7 days report |
| "Engineering team activity" | Specific team filter |
JSON output compatible with calendar-sync skill:
linear-activity → YYYY-MM-DD.json → calendar-sync → Google Calendar
Symptom: mcp__plugin_linear_linear__get_user fails
Solutions:
~/.claude.json MCP configurationmcp__plugin_linear_linear__list_teams()Expand date range, verify assignee="me" filter, check team access.
API limit: 250 items. Narrow date range or split into multiple queries.
Set explicitly: export TZ=Asia/Seoul
This skill should be used when the user asks to "create a hookify rule", "write a hook rule", "configure hookify", "add a hookify rule", or needs guidance on hookify rule syntax and patterns.