YouTrack issue tracker domain knowledge — data model, custom fields, query language, commands, linking, state machines, and tags. Invoke whenever task involves any interaction with YouTrack — creating issues, searching, updating fields, linking, or querying.
Provides YouTrack domain knowledge for creating, searching, and updating issues with correct field handling and query syntax.
npx claudepluginhub xobotyi/cc-foundryThis skill inherits all available tools. When active, it can use any tool Claude has access to.
references/commands.mdreferences/query-language.mdreferences/workflows.mdYouTrack domain knowledge for agents that interact with YouTrack through MCP tools or API.
This skill teaches the data model, conventions, and query language — the what and why
of YouTrack. The task-creation skill in the same plugin teaches how to write good task
descriptions regardless of tracker.
| Topic | Reference | Contents |
|---|---|---|
| Query language | references/query-language.md | Full search syntax, operators, symbols, relative dates, BNF grammar |
| Commands | references/commands.md | Command syntax, field updates, link/tag commands, work items |
| Workflows & state machines | references/workflows.md | State machine model, rule types, transition properties |
Every YouTrack issue has:
Custom fields are the core of YouTrack's data model. Every project defines its own set of fields with project-specific values. Never assume field names or values — always discover them from the project configuration.
Simple types store raw values:
string — unformatted textinteger — whole numbersfloat — decimal numbersdate — calendar datedate and time — date with time componentperiod — time duration (e.g., 2w 3d)text — formatted text (Markdown), displayed below description, not in sidebarEnumerated types store predefined value sets:
enum — arbitrary named values (e.g., Type: Bug, Feature, Task)state — issue states with resolved/unresolved property (e.g., Open, In Progress, Fixed)user — user accounts (e.g., Assignee)version — product versions with released/archived propertiesbuild — build numbersownedField — enum values with an owner (user assigned to each value)group — user groupsEnumerated fields can store single or multiple values (enum[1] vs enum[*]).
Most YouTrack projects include these fields out of the box, though names and values are customizable:
enum: Bug, Feature, Task, Epic, Story, etc.state: Open, In Progress, Fixed, Verified, etc.enum: Show-stopper, Critical, Major, Normal, Minoruser: single user responsible for the issueownedField: component within the projectversion[*]: versions where the fix shipsversion[*]: versions where the problem existsbuild: specific build containing the fixA field is required when configured with "Cannot be empty" in the project:
Gotchas:
The same field name can have different value sets, defaults, visibility, and required status in different projects. Always query the target project's field configuration before creating or updating issues.
Fields can be:
Links express typed relationships between issues. Adding a link to issue A automatically creates the reciprocal link on issue B.
| Inward | Outward | Direction | Use |
|---|---|---|---|
| depends on | is required for | Directed | Issue must be resolved before dependent |
| subtask of | parent for | Aggregation | Parent-child task hierarchy |
| duplicates | is duplicated by | Aggregation | Same condition, resolving one resolves the other |
| relates to | relates to | Undirected | Related but not dependent |
Always use native links instead of mentioning issue IDs in descriptions. Native links are visible in dedicated UI, enable dependency tracking, and stay current when issues move.
A single pair of issues can have multiple link types — add every relationship that applies.
Projects can enforce state transitions through workflow rules. When a state machine is active, only defined transitions are allowed — all undefined transitions are prohibited at every level (manual, command, automation).
Before setting state values, check whether the project has state machine rules — attempting a prohibited transition will fail silently or error.
Tags are arbitrary labels independent of custom fields. Key properties:
tag: {tag name} or #{tag name} in queriestag <name> to add, untag <name> to removeTags are useful for cross-project categorization and temporary workflow markers (e.g., "needs-review", "blocked-by-external") without creating custom fields.
YouTrack has its own query language — not Lucene, not JQL. Working-resolution rules:
attribute: value (e.g., State: Open, for: me)#value or -value (e.g., #Unresolved, -Minor)State: Open, {In Progress}{In Progress}, {to be tested}- before value: Priority: -Minorand, or, parentheses for groupinghas: attachments, has: -commentsdepends on: PROJ-123, subtask of: (State: Open)created: 2024-01-01 .. 2024-12-31, updated: {minus 7d} .. Todaysort by: priority asc, created desc#Resolved, #UnresolvedFor the full syntax, operators, relative date parameters, and BNF grammar, see
references/query-language.md.
Commands apply changes to one or more issues. Unlike search queries, commands do not use
colons, braces, or # symbols.
<field name> <value> (e.g., Priority Critical)for <username> or for meState <value> or just <value> if unambiguousadd <field> <value>, remove <field> <value><link type> <issue ID> (e.g., subtask of PROJ-123)tag <name>, untag <name>work <type> <date> <duration> <description>Board <name> <sprint>, or Board <name> {current sprint}For the full command reference and BNF grammar, see references/commands.md.
Before creating or updating issues in a YouTrack project, always:
This skill provides YouTrack domain knowledge. The task-creation skill provides
tracker-agnostic writing discipline. Use them together:
This skill should be used when the user asks about libraries, frameworks, API references, or needs code examples. Activates for setup questions, code generation involving libraries, or mentions of specific frameworks like React, Vue, Next.js, Prisma, Supabase, etc.