Identify and resolve ambiguities in feature specifications. Use when spec has unclear requirements. Triggers on: clarify spec, resolve ambiguities, clarify requirements.
Systematically identify and resolve ambiguities in feature specifications.
Clarify can be invoked at any stage when ambiguities arise:
specify ↔ clarify ↔ plan ↔ clarify ↔ tasks
The skill helps resolve ambiguities that could affect:
When clarifying requirements, ensure answers are:
| Bad (vague) | Good (testable) | |-------------|-----------------| | "How should validation work?" | "Should email validation reject 'user@localhost'?" | | "What about error handling?" | "Should invalid password show 'Invalid credentials' or 'Password too short'?" | | "How secure should it be?" | "Should we require 2FA for admin users?" |
Every clarification should result in a testable requirement.
Read relentless/features/NNN-feature/spec.md
Check for these 10 types:
1. Behavioral Ambiguities
2. Data Ambiguities
3. UI/UX Ambiguities
4. Integration Ambiguities
5. Permission Ambiguities
6. Performance Ambiguities
7. Error Handling Ambiguities
8. State Management Ambiguities
9. Edge Case Ambiguities
10. Testability Ambiguities (NEW)
If routing preference is unclear or missing from spec, ask:
Record the answer and update spec.md metadata.
For each ambiguity found (max 5 most critical):
## Question N: [Topic]
**Context:** [Quote relevant spec section]
**What we need to know:** [Specific question]
**Testability Impact:** [How this affects test design]
**Options:**
A. [Option 1] - [Implications + how to test]
B. [Option 2] - [Implications + how to test]
C. [Option 3] - [Implications + how to test]
D. Custom - [Your answer]
**Your choice:** _
After receiving answers:
[NEEDS CLARIFICATION] markersCreate relentless/features/NNN-feature/clarification-log.md:
# Clarification Log: Feature Name
## Q1: [Topic] - RESOLVED
**Date:** 2026-01-11
**Question:** [Question]
**Answer:** [User's choice]
**Updated Sections:** [List spec sections updated]
**Test Impact:** [What tests can now be written]
## Q2: [Topic] - DEFERRED
**Date:** 2026-01-11
**Question:** [Question]
**Reason:** Can be decided during implementation
## Question 1: Password Requirements
**Context:** Spec says "password must be secure" but doesn't define requirements.
**What we need to know:** What are the specific password requirements?
**Testability Impact:** Need exact rules to write validation tests.
**Options:**
A. Basic (min 8 characters) - Simple, user-friendly. Test: reject 7 chars, accept 8.
B. Moderate (min 8 chars + number + symbol) - Balanced security. Test: reject "password", accept "Pass1!"
C. Strict (min 12 chars + number + symbol + upper/lower) - High security. Test: comprehensive regex.
D. Custom - Define your own rules
**Your choice:** B
---
## Question 2: Failed Login Handling
**Context:** Spec doesn't mention what happens after failed login attempts.
**What we need to know:** How should we handle repeated failed logins?
**Testability Impact:** Need exact limits to write rate limiting tests.
**Options:**
A. No limit - Allow unlimited attempts. Test: N/A (no limit to test)
B. Rate limit - Max 5 attempts per minute per IP. Test: 6th attempt in 60s fails.
C. Account lockout - Lock account after 5 failed attempts for 30 minutes. Test: verify lockout and unlock timing.
D. Custom - Define your own approach
**Your choice:** C
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer