refine-draft
Improve the quality of draft content. Runs review and applies improvements while preserving voice.
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
Refine Draft
Improve existing draft content through review and targeted improvements.
When to Use
- When a todo item is type
refine-draft - When
/refine-draft [filepath]is invoked - Weekly draft refinement runs
Instructions
1. Select Draft to Refine
If a specific file is provided, use it.
Otherwise, select using this priority:
- Drafts flagged for refinement in todo.md
- Oldest draft by
createddate - Drafts with lowest quality scores (if reviewed)
2. Run Quality Review
Use the existing review tool:
uv run python scripts/curate.py review [filepath]
This provides:
- Overall quality score (1-10)
- Strengths list
- Improvements list with priorities
- Missing concepts
3. Apply Improvements
Based on the review, make targeted improvements following obsidian/project/writing-style.md.
Clarity
- Simplify convoluted sentences
- Define jargon on first use
- Improve paragraph flow
Structure
- Verify opening summary front-loads key information
- Check for undefined forward references (use named-anchor pattern)
- Ensure "Relation to Site Perspective" section exists
- Add transitions between sections
Style Guide Compliance
- Important information front-loaded (truncation resilience)
- Named-anchor summaries for forward references
- Standard background minimised (focus on what's novel)
- H2/H3 headers are descriptive and aid navigation
Tenet Alignment
- Ensure content doesn't contradict tenets
- Add explicit connections to tenets where natural
- Address obvious objections
4. Preserve Voice
When refining:
- Keep the original style and approach
- Don't over-edit - targeted improvements only
- Preserve unique phrasings that work
- Maintain the original argument structure unless flawed
5. Update Frontmatter
After refinement:
ai_modified: YYYY-MM-DDTHH:MM:SS+00:00 # Update timestamp
If the original was human-authored (ai_contribution: 0), update to mixed:
ai_contribution: 20 # Or appropriate percentage based on changes
6. Document Changes
Add a comment at the end of the file (to be removed by human):
<!-- AI REFINEMENT LOG - YYYY-MM-DD
Changes made:
- [Change 1]
- [Change 2]
- [Change 3]
Based on review scoring X/10.
Key improvements: [summary]
This log should be removed after human review.
-->
7. Update Todo
If this was a todo item, mark it complete.
If significant issues remain, create a new todo:
### P2: Further refine [filename]
- **Type**: refine-draft
- **Status**: pending
- **Notes**: Initial refinement done but [remaining issues]
8. Log to Changelog
Append to obsidian/workflow/changelog.md:
### HH:MM - refine-draft
- **Status**: Success
- **File**: [filepath]
- **Original score**: X/10
- **Changes**: [brief list]
- **Published**: yes
9. Commit
Create a git commit with message:
refine(content): Improve [filename]
Changes:
- [Change 1]
- [Change 2]
Changes applied directly.
What NOT to Do
- Don't change the fundamental argument unless it's flawed
- Don't add unnecessary content to pad length
- Don't remove content without clear reason
- Don't change
draft: falsetodraft: trueon published content - Don't make stylistic changes just for the sake of change
Important
- ALWAYS update
ai_modifiedtimestamp - ALWAYS document changes made
- Preserve the original author's voice
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-01-20
- Index updated
- 2026-01-26
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!