{"id":"7e879e22-f945-4689-b332-93a091a8e988","shortId":"hY8c4R","kind":"skill","title":"feature-marker","tagline":"End-to-end feature development orchestrator that automates the full lifecycle from requirements to pull request. Generates PRD, Tech Spec, and Task breakdown artifacts, then executes a 4-phase workflow: Analysis → Implementation → Tests → Commit & PR. Supports 5 execution modes: ","description":"# feature-marker\n\nAutomates feature development with a 5-phase workflow:\n\n1. **Inputs Gate** - Validates `prd.md`, `techspec.md`, `tasks.md` exist; generates them via `~/.claude/commands/` if missing.\n2. **Analysis & Planning** - Auto-installs product-manager skill if missing; reads docs, creates implementation plan.\n3. **Implementation** - Executes tasks with progress tracking.\n4. **Tests & Validation** - Runs platform-appropriate test suites and build validation.\n   Auto-detects: Swift/Xcode (+ XcodeBuildMCP simulator), Node.js, Rust, Python, Go.\n5. **Commit & PR** - Auto-installs enhanced commit command if missing; commits changes using professional workflow and creates PR (auto-detects git platform).\n\n## Platform Support\n\nfeature-marker works with any tech stack:\n\n- 🍎 **iOS/Swift** — `swift test` + SwiftLint + XcodeBuildMCP simulator validation\n- 🟨 **Node.js/TypeScript** — auto-detects npm/yarn/pnpm/bun + Jest/Vitest\n- 🦀 **Rust** — `cargo test` + `cargo clippy`\n- 🐍 **Python** — `pytest` + ruff/flake8\n- 🐹 **Go** — `go test` + `go vet`\n\niOS/Xcode projects get additional simulator validation via XcodeBuildMCP (optional, non-blocking).\nThe platform is auto-detected once at workflow start and cached — no configuration required.\n\n## Usage\n\n```\n/feature-marker <feature-slug>\n```\n\n**Example**:\n\n```\n/feature-marker prd-user-authentication\n```\n\n### Interactive Mode\n\n```\n/feature-marker --interactive <feature-slug>\n```\n\nOpens a menu to select execution mode:\n\n- **Full Workflow** - Default, generates missing files and executes all phases\n- **Tasks Only** - Uses existing files, skips generation phase\n- **Ralph Loop** - Autonomous continuous execution with ralph-wiggum\n- **Spec-Driven** - Multi-agent review + worktree isolation via spec-workflow\n- **Test Only** - Runs tests phase exclusively using platform-appropriate test guidance (Swift Testing for iOS, Jest/Vitest for Node.js, etc.)\n\nWorks both in terminal (TTY menu) and Claude CLI (AskUserQuestion prompt).\n\n**Direct mode selection** (skip menu):\n\n```\n/feature-marker --mode full <feature-slug>\n/feature-marker --mode tasks-only <feature-slug>\n/feature-marker --mode ralph-loop <feature-slug>\n/feature-marker --mode spec-driven <feature-slug>\n/feature-marker --mode test-only <feature-slug>\n```\n\n## Prerequisites\n\n### Commands\n\nThe following commands must be available in `~/.claude/commands/`:\n\n- `create-prd.md` - Creates a new PRD from requirements discussion\n- `generate-spec.md` - Generates technical specification from PRD\n- `generate-tasks.md` - Breaks down feature spec into implementable tasks\n\n### Templates\n\nThe commands above read templates from `~/.claude/docs/specs/` to generate structured documents.\n\nRequired templates:\n\n- `~/.claude/docs/specs/prd-template.md` - Product Requirements Document template\n- `~/.claude/docs/specs/techspec-template.md` - Technical Specification template\n- `~/.claude/docs/specs/tasks-template.md` - Tasks breakdown template\n\n**Template Format**: Templates should be markdown files with placeholders and structure that commands will use to generate feature-specific documents.\n\n**Setup**: Ensure these templates exist before running feature-marker:\n\n```bash\nls ~/.claude/docs/specs/\n# Should show: prd-template.md, techspec-template.md, tasks-template.md\n```\n\n**Note**: If templates are missing, commands in `~/.claude/commands/` will fail to generate files.\n\n### Project Structure\n\n**Feature Documents** (generated in project):\n\n```\n./tasks/\n└── prd-{feature-name}/\n    ├── prd.md            ← Generated from ~/.claude/docs/specs/prd-template.md\n    ├── techspec.md       ← Generated from ~/.claude/docs/specs/techspec-template.md\n    ├── tasks.md          ← Generated from ~/.claude/docs/specs/tasks-template.md\n    └── {num}_task.md     ← Individual task files (optional)\n```\n\n**State Directory** (checkpoint & progress):\n\n```\n.claude/feature-state/{feature-name}/\n├── checkpoint.json\n├── analysis.md\n├── plan.md\n├── progress.md\n├── test-results.md\n└── pr-url.txt\n```\n\n**User Configuration** (required setup):\n\n```\n~/.claude/\n├── commands/           ← Commands that generate files\n│   ├── create-prd.md\n│   ├── generate-spec.md\n│   └── generate-tasks.md\n└── docs/\n    └── specs/          ← Templates used by commands\n        ├── prd-template.md\n        ├── techspec-template.md\n        └── tasks-template.md\n```\n\n## Behavior\n\nWhen invoked, the skill:\n\n1. **Validates inputs** - Checks if `./tasks/prd-{feature-slug}/` contains required files\n   - If all files exist → Skips to step 3\n   - If any file is missing → Proceeds to step 2\n2. **Generates ONLY missing files** - Existing files are never overwritten:\n   - Missing PRD → `/create-prd`\n   - Missing Tech Spec → `/generate-spec {feature-slug}`\n   - Missing Tasks → `/generate-tasks {feature-slug}`\n3. **Auto-installs missing dependencies**:\n   - **Phase 1**: Checks for `product-manager` skill\n     - If missing: Installs via `npx skills add https://github.com/aj-geddes/claude-code-bmad-skills --skill product-manager`\n     - If user already has it: Uses user's version\n     - If installation fails: Continues without it (non-blocking)\n   - **Phase 4**: Checks for `/commit` command\n     - If missing: Copies from bundled `resources/commit.md` to `~/.claude/commands/commit.md`\n     - If user already has it: Uses user's version\n     - If installation fails: Falls back to standard commit workflow\n4. **Executes 5-phase workflow** via the `feature-marker` agent\n5. **Persists state** - Saves checkpoints after each phase/task for resume capability\n\n**Important**: The workflow is smart about file detection and dependencies:\n\n- ✅ Files/skills/commands exist → Uses them directly, no regeneration or reinstallation\n- ⚠️ Missing → Installs/generates only what's needed\n- 🔒 Never overwrites existing content\n- 👤 **User's versions always have priority** over bundled/auto-installed versions\n\n## Auto-Installed Dependencies\n\nFeature-marker automatically installs missing dependencies to enhance the workflow:\n\n### Product Manager Skill (Phase 1)\n\n**What it does**: Provides advanced PRD analysis, requirements validation, and product management capabilities.\n\n**Installation**:\n\n- **Check**: Phase 1 checks for `~/.claude/skills/product-manager/SKILL.md`\n- **Install**: If missing and `npx` available, runs:\n  ```bash\n  npx skills add https://github.com/aj-geddes/claude-code-bmad-skills --skill product-manager\n  ```\n- **Priority**: Uses user's existing skill if already installed\n- **Fallback**: Continues without it if installation fails (non-blocking)\n\n**Benefits**:\n\n- Enhanced requirement analysis\n- Better PRD validation\n- Improved feature planning\n\n### Enhanced Commit Command (Phase 4)\n\n**What it does**: Professional commit workflow with validation, splitting, and conventional commit format.\n\n**Installation**:\n\n- **Check**: Phase 4 checks for `~/.claude/commands/commit.md`\n- **Install**: If missing, copies from bundled `resources/commit.md` to `~/.claude/commands/commit.md`\n- **Priority**: Uses user's existing command if already installed\n- **Fallback**: Uses standard commit workflow if installation fails\n\n**Features**:\n\n- Pre-commit validation (lint, build, docs)\n- Intelligent commit splitting\n- Conventional commit format with emojis\n- Smart file staging\n- No Co-Authored-By footer (as per command design)\n\n**Example Output**:\n\n```bash\n✨ feat: add user authentication system\n🐛 fix: resolve memory leak in rendering process\n📝 docs: update API documentation\n♻️ refactor: simplify error handling logic\n```\n\n### Manual Installation\n\nIf auto-installation fails, you can install manually:\n\n**Product Manager Skill**:\n\n```bash\nnpx skills add https://github.com/aj-geddes/claude-code-bmad-skills --skill product-manager\n```\n\n**Commit Command**:\n\n```bash\ncp ~/.claude/skills/feature-marker/resources/commit.md ~/.claude/commands/commit.md\n```\n\n## Template Setup Guide\n\n### Template Directory Structure\n\nCommands in `~/.claude/commands/` read templates from a centralized location:\n\n```\n~/.claude/docs/specs/\n├── prd-template.md          # Product Requirements Document template\n├── techspec-template.md     # Technical Specification template\n└── tasks-template.md        # Task breakdown template\n```\n\n### Why Templates in ~/.claude/docs/specs?\n\n- **Centralized**: All projects share the same templates\n- **User-controlled**: Users can customize their own templates\n- **Portable**: Commands reference templates via standard path\n- **Separation**: Templates are not in project repositories\n\n### Template Content\n\nEach template should be a markdown file with:\n\n- Clear section structure\n- Placeholder text or variables\n- Examples and formatting guidelines\n\nCommands read these templates and populate them with feature-specific content.\n\n### Setup Verification\n\nTo verify your setup is complete:\n\n```bash\n# Check templates exist\nls -l ~/.claude/docs/specs/\n\n# Check commands exist\nls -l ~/.claude/commands/\n\n# Test feature-marker\n/feature-marker --interactive prd-test-feature\n```\n\nIf templates are missing, create them in `~/.claude/docs/specs/` before running feature-marker.\n\n## Plan Mode Integration\n\nWhen the user has used Claude's built-in plan mode before invoking feature-marker, the agent automatically:\n\n1. **Detects the most recent plan** from `~/.claude/plans/` (sorted by modification time)\n2. **Reads project conventions** from `./CLAUDE.md` at the project root (if present)\n3. **Uses both as rich context** to enhance PRD generation and reduce redundant clarification questions\n\nThis is automatic and requires no additional flags or options. If no plan or CLAUDE.md exists, the workflow proceeds normally.\n\n**Recommended flow**:\n\n```\n1. Use Claude plan mode to explore the codebase and think through the feature\n2. Exit plan mode\n3. Run /feature-marker --interactive <feature-slug>\n4. Select \"Full Workflow\"\n5. The plan content automatically enriches PRD generation\n```\n\n## Checkpoint & Resume\n\nIf interrupted (Ctrl+C, session crash, etc.), re-invoke with the same feature slug to resume:\n\n```\n/feature-marker prd-user-authentication\n```\n\nThe skill will:\n\n- Detect existing checkpoint\n- Show current progress (phase, task index)\n- Ask if you want to resume or start fresh\n\n## Platform Detection\n\nIn Phase 4, the skill auto-detects your git platform and selects the appropriate PR skill:\n\n| Platform     | Detection                     | PR Skill      |\n| ------------ | ----------------------------- | ------------- |\n| GitHub       | `github.com` in remote URL    | `checking-pr` |\n| Azure DevOps | `dev.azure.com` in remote URL | `azure-pr`    |\n| GitLab       | `gitlab.com` in remote URL    | `checking-pr` |\n| Bitbucket    | `bitbucket.org` in remote URL | `checking-pr` |\n| Other        | (fallback)                    | `checking-pr` |\n\n## Configuration\n\nOverride default behavior with `.feature-marker.json` in your repository root:\n\n```json\n{\n  \"pr_skill\": \"custom-pr-skill\",\n  \"skip_pr\": false,\n  \"test_command\": \"npm run test:ci\",\n  \"docs_path\": \"./tasks\",\n  \"state_path\": \".claude/feature-state\"\n}\n```\n\n## Error Handling\n\n| Scenario             | Behavior                              |\n| -------------------- | ------------------------------------- |\n| Missing files        | Auto-generate via commands            |\n| No git repo          | Fail early with helpful message       |\n| No tests             | Skip Phase 3 with warning             |\n| Test failures        | Report issues, allow fix, offer retry |\n| Unknown platform     | Fallback to `checking-pr`             |\n| PR skill unavailable | Commit only, log manual instructions  |\n\n## Example Sessions\n\n### Example 1: All Files Exist (No Generation Needed)\n\n```\n> /feature-marker prd-user-authentication\n\nChecking for existing checkpoint...\nNo checkpoint found. Starting new workflow.\n\nPhase 0: Inputs Gate\n✓ prd.md exists\n✓ techspec.md exists\n✓ tasks.md exists\n✅ All files present. Skipping generation.\n\nPhase 1: Analysis & Planning\nReading existing documents...\nCreating implementation plan...\nCheckpoint saved.\n\nPhase 2: Implementation\n[1/6] Create User entity... ✓\n[2/6] Add authentication service... ✓\n...\n```\n\n### Example 2: Partial Files (Generates Only Missing)\n\n```\n> /feature-marker prd-payment-integration\n\nChecking for existing checkpoint...\nNo checkpoint found. Starting new workflow.\n\nPhase 0: Inputs Gate\n✓ prd.md exists\n✗ techspec.md missing → Generating via /generate-spec...\n✓ tasks.md exists\n\n✅ Generated missing file. All inputs ready.\n\nPhase 1: Analysis & Planning\nReading documents...\nCreating implementation plan...\nCheckpoint saved.\n...\n```\n\n### Example 3: Complete Workflow with Auto-Install\n\n```\n> /feature-marker prd-new-feature\n\nPhase 0: Inputs Gate\n✗ prd.md missing → Generating via /create-prd...\n✗ techspec.md missing → Generating via /generate-spec...\n✗ tasks.md missing → Generating via /generate-tasks...\n\nPhase 1: Analysis & Planning\n⚙️  Installing product-manager skill...\n✓ product-manager skill installed successfully\nReading PRD, Tech Spec, and Tasks...\nCreating implementation plan...\nCheckpoint saved.\n\nPhase 2: Implementation\n[1/6] Create User entity... ✓\n[2/6] Add authentication service... ✓\n[3/6] Implement login endpoint... ✓\n[4/6] Add JWT token handling... ✓\n[5/6] Create logout endpoint... ✓\n[6/6] Add session management... ✓\nCheckpoint saved.\n\nPhase 3: Tests & Validation\n✅ Platform detected: Node.js / Next.js (pnpm)\nRunning: jest --findRelatedTests src/api/users.ts\n✅ 14 passed, 0 failed\nLint: pnpm run lint ✅\nCheckpoint saved.\n\nPhase 4: Commit & PR\n⚙️  Installing commit command...\n✓ commit command installed successfully\nUsing enhanced commit workflow (/commit)...\n✨ feat: implement user authentication system\nDetected platform: GitHub\nCreating PR via /checking-pr...\n\n✓ Feature complete!\nPR URL: https://github.com/user/repo/pull/42\n```\n\n### Example 4: Using Existing User Tools\n\n```\n> /feature-marker prd-payment-feature\n\nPhase 0: Inputs Gate\n✓ All inputs validated.\n\nPhase 1: Analysis & Planning\n✓ product-manager skill already installed (using user's version)\n...\n\nPhase 4: Commit & PR\n✓ commit command already exists (using user's version)\n...\n```","tags":["feature","marker","viniciuscarvalho","agent-skills","automation","claude","claude-code","claude-code-skill","claude-code-skills","claude-skills","devtools","feature-management"],"capabilities":["skill","source-viniciuscarvalho","skill-feature-marker","topic-agent-skills","topic-automation","topic-claude","topic-claude-code","topic-claude-code-skill","topic-claude-code-skills","topic-claude-skills","topic-devtools","topic-feature-management","topic-prd","topic-skill","topic-workflow"],"categories":["Feature-marker"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/Viniciuscarvalho/Feature-marker","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add Viniciuscarvalho/Feature-marker","source_repo":"https://github.com/Viniciuscarvalho/Feature-marker","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 9 github stars · SKILL.md body (14,089 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-24T07:03:41.737Z","embedding":null,"createdAt":"2026-04-23T13:04:21.867Z","updatedAt":"2026-04-24T07:03:41.737Z","lastSeenAt":"2026-04-24T07:03:41.737Z","tsv":"'/.claude':481 '/.claude/commands':66,331,427,927,1035 '/.claude/commands/commit.md':618,808,817,918 '/.claude/docs/specs':361,414,934,951,1029,1053 '/.claude/docs/specs/prd-template.md':368,448 '/.claude/docs/specs/tasks-template.md':377,456 '/.claude/docs/specs/techspec-template.md':373,452 '/.claude/plans':1089 '/.claude/skills/feature-marker/resources/commit.md':917 '/.claude/skills/product-manager/skill.md':736 '/aj-geddes/claude-code-bmad-skills':582,750,908 '/checking-pr':1617 '/claude.md':1099 '/commit':609,1605 '/create-prd':545,1500 '/feature-marker':205,207,214,299,302,307,312,317,1040,1163,1196,1374,1434,1487,1631 '/generate-spec':549,1459,1505 '/generate-tasks':555,1510 '/tasks':440,1311 '/tasks/prd-':509 '/typescript**':158 '/user/repo/pull/42':1624 '0':1390,1450,1493,1582,1637 '1':55,504,566,716,733,1082,1143,1367,1405,1469,1512,1644 '1/6':1419,1540 '14':1580 '2':69,532,533,1094,1157,1417,1428,1538 '2/6':1423,1544 '3':86,523,559,1106,1161,1338,1480,1568 '3/6':1548 '4':32,93,606,637,788,805,1165,1226,1591,1626,1658 '4/6':1552 '5':41,52,115,639,648,1169 '5/6':1557 '6/6':1561 'add':579,747,868,905,1424,1545,1553,1562 'addit':180,1127 'advanc':721 'agent':255,647,1080 'allow':1345 'alreadi':589,621,762,825,1651,1663 'alway':691 'analysi':35,70,723,777,1406,1470,1513,1645 'analysis.md':472 'api':881 'appropri':99,272,1238 'artifact':28 'ask':1213 'askuserquest':292 'authent':211,870,1200,1378,1425,1546,1609 'author':857 'auto':73,106,119,135,160,193,561,698,892,1230,1322,1485 'auto-detect':105,134,159,192,1229 'auto-gener':1321 'auto-instal':72,118,560,697,891,1484 'autom':12,47 'automat':704,1081,1123,1173 'autonom':243 'avail':329,742 'azur':1253,1260 'azure-pr':1259 'back':632 'bash':412,744,866,902,915,1023 'behavior':499,1286,1318 'benefit':774 'better':778 'bitbucket':1270 'bitbucket.org':1271 'block':188,604,773 'break':347 'breakdown':27,379,946 'build':103,841 'built':1070 'built-in':1069 'bundl':615,814 'bundled/auto-installed':695 'c':1182 'cach':200 'capabl':658,729 'cargo':165,167 'central':932,952 'chang':127 'check':507,567,607,731,734,803,806,1024,1030,1251,1268,1276,1281,1354,1379,1439 'checking-pr':1250,1267,1275,1280,1353 'checkpoint':465,652,1177,1206,1382,1384,1414,1442,1444,1477,1535,1565,1588 'checkpoint.json':471 'ci':1308 'clarif':1119 'claud':290,1067,1145 'claude.md':1135 'claude/feature-state':467,1314 'clear':992 'cli':291 'clippi':168 'co':856 'co-authored-bi':855 'codebas':1151 'command':123,323,326,356,393,425,482,483,495,610,786,823,862,914,925,969,1003,1031,1304,1325,1596,1598,1662 'commit':38,116,122,126,635,785,793,800,830,838,844,847,913,1359,1592,1595,1597,1603,1659,1661 'complet':1022,1481,1619 'configur':202,478,1283 'contain':513 'content':687,983,1014,1172 'context':1111 'continu':244,599,765 'control':961 'convent':799,846,1097 'copi':613,812 'cp':916 'crash':1184 'creat':83,132,333,1050,1411,1420,1474,1532,1541,1558,1614 'create-prd.md':332,487 'ctrl':1181 'current':1208 'custom':964,1297 'custom-pr-skil':1296 'default':225,1285 'depend':564,668,700,707 'design':863 'detect':107,136,161,194,666,1083,1204,1223,1231,1242,1572,1611 'dev.azure.com':1255 'develop':9,49 'devop':1254 'direct':294,673 'directori':464,923 'discuss':339 'doc':82,490,842,879,1309 'document':365,371,401,436,882,938,1410,1473 'driven':252,316 'earli':1330 'emoji':850 'end':5,7 'end-to-end':4 'endpoint':1551,1560 'enhanc':121,709,775,784,1113,1602 'enrich':1174 'ensur':403 'entiti':1422,1543 'error':885,1315 'etc':282,1185 'exampl':206,864,999,1364,1366,1427,1479,1625 'exclus':268 'execut':30,42,88,221,230,245,638 'exist':62,236,406,519,538,670,686,759,822,1026,1032,1136,1205,1370,1381,1394,1396,1398,1409,1441,1454,1461,1628,1664 'exit':1158 'explor':1149 'fail':429,598,630,770,834,894,1329,1583 'failur':1342 'fall':631 'fallback':764,827,1279,1351 'fals':1302 'feat':867,1606 'featur':2,8,45,48,142,349,399,410,435,443,469,511,551,557,645,702,782,835,1012,1038,1045,1057,1077,1156,1192,1491,1618,1635 'feature-mark':1,44,141,409,644,701,1037,1056,1076 'feature-marker.json':1288 'feature-nam':442,468 'feature-slug':510,550,556 'feature-specif':398,1011 'file':228,237,387,432,461,486,515,518,526,537,539,665,852,990,1320,1369,1400,1430,1464 'files/skills/commands':669 'findrelatedtest':1578 'fix':872,1346 'flag':1128 'flow':1142 'follow':325 'footer':859 'format':382,801,848,1001 'found':1385,1445 'fresh':1221 'full':14,223,301,1167 'gate':57,1392,1452,1495,1639 'generat':21,63,226,239,341,363,397,431,437,446,450,454,485,534,1115,1176,1323,1372,1403,1431,1457,1462,1498,1503,1508 'generate-spec.md':340,488 'generate-tasks.md':346,489 'get':179 'git':137,1233,1327 'github':1245,1613 'github.com':581,749,907,1246,1623 'github.com/aj-geddes/claude-code-bmad-skills':580,748,906 'github.com/user/repo/pull/42':1622 'gitlab':1262 'gitlab.com':1263 'go':114,172,173,175 'guid':921 'guidanc':274 'guidelin':1002 'handl':886,1316,1556 'help':1332 'implement':36,84,87,352,1412,1418,1475,1533,1539,1549,1607 'import':659 'improv':781 'index':1212 'individu':459 'input':56,506,1391,1451,1466,1494,1638,1641 'instal':74,120,562,575,597,629,699,705,730,737,763,769,802,809,826,833,889,893,897,1486,1515,1524,1594,1599,1652 'installs/generates':679 'instruct':1363 'integr':1061,1438 'intellig':843 'interact':212,215,1041,1164 'interrupt':1180 'invok':501,1075,1188 'io':278 'ios/swift':149 'ios/xcode':177 'isol':258 'issu':1344 'jest':1577 'jest/vitest':163,279 'json':1293 'jwt':1554 'l':1028,1034 'leak':875 'lifecycl':15 'lint':840,1584,1587 'locat':933 'log':1361 'logic':887 'login':1550 'logout':1559 'loop':242,311 'ls':413,1027,1033 'manag':77,571,586,713,728,754,900,912,1518,1522,1564,1649 'manual':888,898,1362 'markdown':386,989 'marker':3,46,143,411,646,703,1039,1058,1078 'memori':874 'menu':218,288,298 'messag':1333 'miss':68,80,125,227,424,528,536,543,546,553,563,574,612,678,706,739,811,1049,1319,1433,1456,1463,1497,1502,1507 'mode':43,213,222,295,300,303,308,313,318,1060,1073,1147,1160 'modif':1092 'multi':254 'multi-ag':253 'must':327 'name':444,470 'need':683,1373 'never':541,684 'new':335,1387,1447,1490 'next.js':1574 'node.js':111,157,281,1573 'node.js/typescript**':156 'non':187,603,772 'non-block':186,602,771 'normal':1140 'note':420 'npm':1305 'npm/yarn/pnpm/bun':162 'npx':577,741,745,903 'num':457 'offer':1347 'open':216 'option':185,462,1130 'orchestr':10 'output':865 'overrid':1284 'overwrit':685 'overwritten':542 'partial':1429 'pass':1581 'path':974,1310,1313 'payment':1437,1634 'per':861 'persist':649 'phase':33,53,232,240,267,565,605,640,715,732,787,804,1210,1225,1337,1389,1404,1416,1449,1468,1492,1511,1537,1567,1590,1636,1643,1657 'phase/task':655 'placehold':389,995 'plan':71,85,783,1059,1072,1087,1133,1146,1159,1171,1407,1413,1471,1476,1514,1534,1646 'plan.md':473 'platform':98,138,139,190,271,1222,1234,1241,1350,1571,1612 'platform-appropri':97,270 'pnpm':1575,1585 'popul':1008 'portabl':968 'pr':39,117,133,1239,1243,1252,1261,1269,1277,1282,1294,1298,1301,1355,1356,1593,1615,1620,1660 'pr-url.txt':476 'prd':22,209,336,345,441,544,722,779,1043,1114,1175,1198,1376,1436,1489,1527,1633 'prd-new-featur':1488 'prd-payment-featur':1632 'prd-payment-integr':1435 'prd-template.md':417,496,935 'prd-test-featur':1042 'prd-user-authent':208,1197,1375 'prd.md':59,445,1393,1453,1496 'pre':837 'pre-commit':836 'prerequisit':322 'present':1105,1401 'prioriti':693,755,818 'proceed':529,1139 'process':878 'product':76,369,570,585,712,727,753,899,911,936,1517,1521,1648 'product-manag':75,569,584,752,910,1516,1520,1647 'profession':129,792 'progress':91,466,1209 'progress.md':474 'project':178,433,439,954,980,1096,1102 'prompt':293 'provid':720 'pull':19 'pytest':170 'python':113,169 'question':1120 'ralph':241,248,310 'ralph-loop':309 'ralph-wiggum':247 're':1187 're-invok':1186 'read':81,358,928,1004,1095,1408,1472,1526 'readi':1467 'recent':1086 'recommend':1141 'reduc':1117 'redund':1118 'refactor':883 'refer':970 'regener':675 'reinstal':677 'remot':1248,1257,1265,1273 'render':877 'repo':1328 'report':1343 'repositori':981,1291 'request':20 'requir':17,203,338,366,370,479,514,724,776,937,1125 'resolv':873 'resources/commit.md':616,815 'resum':657,1178,1195,1218 'retri':1348 'review':256 'rich':1110 'root':1103,1292 'ruff/flake8':171 'run':96,265,408,743,1055,1162,1306,1576,1586 'rust':112,164 'save':651,1415,1478,1536,1566,1589 'scenario':1317 'section':993 'select':220,296,1166,1236 'separ':975 'servic':1426,1547 'session':1183,1365,1563 'setup':402,480,920,1015,1020 'share':955 'show':416,1207 'simplifi':884 'simul':110,154,181 'skill':78,503,572,578,583,714,746,751,760,901,904,909,1202,1228,1240,1244,1295,1299,1357,1519,1523,1650 'skill-feature-marker' 'skip':238,297,520,1300,1336,1402 'slug':512,552,558,1193 'smart':663,851 'sort':1090 'source-viniciuscarvalho' 'spec':24,251,261,315,350,491,548,1529 'spec-driven':250,314 'spec-workflow':260 'specif':343,375,400,942,1013 'split':797,845 'src/api/users.ts':1579 'stack':148 'stage':853 'standard':634,829,973 'start':198,1220,1386,1446 'state':463,650,1312 'step':522,531 'structur':364,391,434,924,994 'success':1525,1600 'suit':101 'support':40,140 'swift':150,275 'swift/xcode':108 'swiftlint':152 'system':871,1610 'task':26,89,233,305,353,378,460,554,945,1211,1531 'task.md':458 'tasks-on':304 'tasks-template.md':419,498,944 'tasks.md':61,453,1397,1460,1506 'tech':23,147,547,1528 'technic':342,374,941 'techspec-template.md':418,497,940 'techspec.md':60,449,1395,1455,1501 'templat':354,359,367,372,376,380,381,383,405,422,492,919,922,929,939,943,947,949,958,967,971,976,982,985,1006,1025,1047 'termin':286 'test':37,94,100,151,166,174,263,266,273,276,320,1036,1044,1303,1307,1335,1341,1569 'test-on':319 'test-results.md':475 'text':996 'think':1153 'time':1093 'token':1555 'tool':1630 'topic-agent-skills' 'topic-automation' 'topic-claude' 'topic-claude-code' 'topic-claude-code-skill' 'topic-claude-code-skills' 'topic-claude-skills' 'topic-devtools' 'topic-feature-management' 'topic-prd' 'topic-skill' 'topic-workflow' 'track':92 'tti':287 'unavail':1358 'unknown':1349 'updat':880 'url':1249,1258,1266,1274,1621 'usag':204 'use':128,235,269,395,493,592,624,671,756,819,828,1066,1107,1144,1601,1627,1653,1665 'user':210,477,588,593,620,625,688,757,820,869,960,962,1064,1199,1377,1421,1542,1608,1629,1654,1666 'user-control':959 'valid':58,95,104,155,182,505,725,780,796,839,1570,1642 'variabl':998 'verif':1016 'verifi':1018 'version':595,627,690,696,1656,1668 'vet':176 'via':65,183,259,576,642,972,1324,1458,1499,1504,1509,1616 'want':1216 'warn':1340 'wiggum':249 'without':600,766 'work':144,283 'workflow':34,54,130,197,224,262,636,641,661,711,794,831,1138,1168,1388,1448,1482,1604 'worktre':257 'xcodebuildmcp':109,153,184","prices":[{"id":"43db529d-cd5e-43f2-bf2d-edcadf43a74a","listingId":"7e879e22-f945-4689-b332-93a091a8e988","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"Viniciuscarvalho","category":"Feature-marker","install_from":"skills.sh"},"createdAt":"2026-04-23T13:04:21.867Z"}],"sources":[{"listingId":"7e879e22-f945-4689-b332-93a091a8e988","source":"github","sourceId":"Viniciuscarvalho/Feature-marker","sourceUrl":"https://github.com/Viniciuscarvalho/Feature-marker","isPrimary":false,"firstSeenAt":"2026-04-23T13:04:21.867Z","lastSeenAt":"2026-04-24T07:03:41.737Z"}],"details":{"listingId":"7e879e22-f945-4689-b332-93a091a8e988","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"Viniciuscarvalho","slug":"Feature-marker","github":{"repo":"Viniciuscarvalho/Feature-marker","stars":9,"topics":["agent-skills","automation","claude","claude-code","claude-code-skill","claude-code-skills","claude-skills","devtools","feature-management","prd","skill","workflow"],"license":"mit","html_url":"https://github.com/Viniciuscarvalho/Feature-marker","pushed_at":"2026-04-24T00:34:39Z","description":"AI-powered feature development orchestrator — PRD → Tech Spec → Tasks → Implementation → Tests → PR — with checkpoint/resume, 5 execution modes, and auto-detection for GitHub/GitLab/Azure DevOps. Claude Code skill.","skill_md_sha":"18e8d4e6f258a4820df466f4eddbed34c76a8589","skill_md_path":"SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/Viniciuscarvalho/Feature-marker"},"layout":"root","source":"github","category":"Feature-marker","frontmatter":{"name":"feature-marker","description":"End-to-end feature development orchestrator that automates the full lifecycle from requirements to pull request. Generates PRD, Tech Spec, and Task breakdown artifacts, then executes a 4-phase workflow: Analysis → Implementation → Tests → Commit & PR. Supports 5 execution modes: Full Workflow (generate all artifacts + run all phases), Tasks Only (skip generation, use existing files), Ralph Loop (autonomous self-correcting execution), Spec-Driven (multi-agent review with worktree isolation), and Test Only (run tests phase exclusively). Includes checkpoint/resume so work can be paused and resumed at any phase, and auto-detects GitHub, Azure DevOps, or GitLab for PR creation. Platform-agnostic with auto stack detection for iOS/Swift, Node.js/TypeScript, Rust, Python, and Go.  ALWAYS use this skill when the user says \"implement this feature\", \"build feature X\", \"start a new feature\", \"create a PRD\", \"generate tech spec\", \"break down tasks\", \"feature workflow\", \"plan this feature\", \"implement from spec\", \"run the full workflow\", \"resume feature\", \"continue where I left off\", asks to go from requirements to implementation, wants to automate feature development end-to-end, mentions PRD-to-PR pipelines, or says \"/feature-marker\" — even if they just say \"I need to build X\" without explicitly mentioning a workflow. Also trigger when the user mentions \"Ralph Loop\", \"spec-driven mode\", \"checkpoint\", or asks to generate tasks from a PRD or tech spec."},"skills_sh_url":"https://skills.sh/Viniciuscarvalho/Feature-marker"},"updatedAt":"2026-04-24T07:03:41.737Z"}}