From yux-linear-workflow
Start working on a Linear issue with automatic worktree isolation. Use when user says "start task", "linear start", "work on issue", "new task", "begin task", "LIN-xxx", or "/yux-linear-start". Creates isolated worktree via EnterWorktree, sets up branch, and syncs with Linear.
How this skill is triggered — by the user, by Claude, or both
Slash command
/yux-linear-workflow:yux-linear-startThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Start a new task with Linear issue tracking. Every task runs in its own worktree for isolation.
Start a new task with Linear issue tracking. Every task runs in its own worktree for isolation.
Usage: /yux-linear-start [LIN-xxx | task description]
LIN-xxx: Directly start working on a specific issuegh auth status must passmcp__linear__list_teams()
If fails: show error and stop. Do NOT proceed without Linear.
.claude/yux-config.json for language preference.claude/linear-config.json for cached team/project:
mcp__linear__list_teams(), save to .claude/linear-config.jsonLIN-\d+: directly call mcp__linear__get_issue(), skip dialogmcp__linear__list_issues(query: "<text>"), suggest best matchSearch path: Display results, let user pick or create new
Create path: Collect title/description/priority, call mcp__linear__create_issue(), verify with mcp__linear__get_issue()
Auto-detect branch type from issue labels/title:
fix/docs/refactor/feat/Detect if already in a worktree:
git rev-parse --is-inside-work-tree && git rev-parse --git-common-dir
Compare --git-common-dir with --git-dir. If they differ, we're inside a worktree.
If NOT in a worktree (normal case — starting from main repo):
EnterWorktree(name: "LIN-<id>")
Session automatically switches to .claude/worktrees/LIN-<id>/
If already in a worktree (e.g., user resumed a kept worktree session, or opened Claude Code inside one): Skip EnterWorktree. Work directly in current directory.
Create and switch to proper branch:
git checkout -b <type>/LIN-<id>-<short-description> origin/main
Push branch to remote:
git push -u origin <branch-name>
mcp__linear__update_issue(id: "<uuid>", state: "In Progress")
mcp__linear__create_comment(issueId: "<uuid>", body: "Started working.\nBranch: `<branch>`")
Write to .claude/linear-tasks.json (resolved relative to main repo root via git rev-parse --git-common-dir):
{
"version": 1,
"active_task": "LIN-456",
"tasks": {
"LIN-456": {
"issue_id": "LIN-456",
"issue_uuid": "<uuid>",
"title": "<title>",
"branch": "<branch>",
"status": "in_progress",
"linear_status": "In Progress",
"pr_number": null,
"started_at": "<ISO timestamp>",
"last_active_at": "<ISO timestamp>"
}
}
}
Note: tasks.json is shared across all worktrees (lives in main repo's .claude/ directory).
=== Task Started ===
Issue: LIN-456 - <title>
Branch: feat/LIN-456-<desc>
Worktree: .claude/worktrees/LIN-456/
Status: In Progress
URL: <linear-url>
You are now working in an isolated worktree.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub wuyuxiangx/yux-claude-hub