Loading...
Loading...
Writes precise, autonomous-execution-ready tasks using the SMART+ framework (Specific, Measurable, Actionable, Referenced, Testable, +Context). Transforms vague task descriptions into detailed specifications with file paths, verification commands, and clear success criteria. Use when writing tasks for any agent, creating todos, planning features, decomposing work, or when tasks lack precision. Triggers on "write task", "create todo", "break down feature", "make task precise", "task is vague", or when task descriptions are missing file paths, verification steps, or clear success criteria. Works with todo.md, task lists, project planning documents, and agent instructions.
npx skill4agent add dawiddutoit/custom-claude write-atomic-tasks❌ BEFORE (vague):
- [ ] Add error handling
✅ AFTER (precise):
- [ ] Task 1: Add ConnectionError and TimeoutError handling to ClaudeAgentClient.query()
- Retry 3 times with exponential backoff (1s, 2s, 4s)
- Raise AgentConnectionError after retries exhausted
- Location: src/temet_run/agent/client.py:ClaudeAgentClient.query
- Verify: pytest tests/unit/agent/test_client.py passes| Component | Description | Example |
|---|---|---|
| Specific | What exactly to do | "Add retry logic to |
| Measurable | How to verify completion | "Tests pass, mypy clean" |
| Actionable | Clear first step | "Create file |
| Referenced | File paths, functions, classes | "in |
| Testable | Success criteria | "3 retries with exponential backoff, circuit breaker after 5 failures" |
| +Context | Why this matters (optional) | "Needed for ADR-016 conversation persistence" |
- [ ] Task N: [ACTION VERB] [SPECIFIC TARGET] [SUCCESS CRITERIA]
Location: [file paths or module names]
Verify: [how to confirm completion]- [ ] Task 1: Add ConversationError exception hierarchy to agent/errors.py
- Create: ConversationError(base), MessageError, StateError
- Location: src/temet_run/agent/errors.py
- Verify: mypy passes, errors importable from temet_run.agentpytest pathmypy src/uv run temet-run ...| ❌ Forbidden Pattern | ✅ Precise Alternative |
|---|---|
| "Implement the feature" | "Implement X method in Y class with Z behavior" |
| "Add tests" | "Add unit tests for X covering cases A, B, C" |
| "Fix the bug" | "Fix TypeError in X:line Y caused by Z" |
| "Update the code" | "Update X function to accept Y parameter" |
| "Handle errors" | "Add try/except for ConnectionError in X, retry 3 times" |
| "Refactor" | "Extract X logic from Y into new Z class" |
| "Improve performance" | "Reduce X function runtime from 500ms to <100ms by caching Y" |
| "Add logging" | "Add structlog info-level logging to X function for events A, B, C" |
| "Document the code" | "Add Google-style docstring to X function with Args, Returns, Raises" |
## Feature: Add conversation history command
- [ ] Task 1: Create ConversationRepository protocol
Location: src/temet_run/domain/repositories.py
Verify: mypy passes
- [ ] Task 2: Implement JsonlConversationRepository
Location: src/temet_run/infrastructure/repositories/conversation.py
Verify: Unit tests pass (create tests/unit/infrastructure/test_conversation_repo.py)
- [ ] Task 3: Add `history` subcommand to CLI
Location: src/temet_run/main.py (add to agents group)
Verify: `uv run temet-run agents history --help` shows usage
- [ ] Task 4: Integration test for history command
Location: tests/integration/test_cli_history.py
Verify: pytest tests/integration/test_cli_history.py passesexamples/transformation-examples.md❌ VAGUE:
- [ ] Add error handling to the client
✅ PRECISE:
- [ ] Add ConnectionError and TimeoutError handling to ClaudeAgentClient.query()
- Retry 3 times with exponential backoff (1s, 2s, 4s)
- Raise AgentConnectionError after retries exhausted
- Location: src/temet_run/agent/client.py:ClaudeAgentClient.query
- Verify: pytest tests/unit/agent/test_client.py passespython ~/.claude/skills/write-atomic-tasks/scripts/validate_task.py "task description"Task: "Add error handling to the client"
❌ FAILED Precision Check:
- Missing: Specific file path
- Missing: Function/class name
- Missing: Verification command
- Vague pattern: "Add error handling" (see Section 6)
Suggested rewrite:
- [ ] Add ConnectionError handling to ClaudeAgentClient.query()
Location: src/temet_run/agent/client.py:ClaudeAgentClient.query
Verify: pytest tests/unit/agent/test_client.py passes| Metric | Before (Vague Tasks) | After (Precise Tasks) |
|---|---|---|
| Clarifying questions per task | 2-5 questions | 0 questions |
| Task completion time variance | ±200% | ±20% |
| Rework due to misunderstanding | 30% of tasks | <5% of tasks |
| Autonomous execution success | 40% | 95% |
| Time spent planning vs doing | 20/80 | 40/60 |