ace-docs 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.ace-defaults/docs/config.yml +169 -0
- data/.ace-defaults/docs/multi-subject-example.md +130 -0
- data/.ace-defaults/docs/single-subject-example.md +150 -0
- data/.ace-defaults/nav/protocols/guide-sources/ace-docs.yml +10 -0
- data/.ace-defaults/nav/protocols/prompt-sources/ace-docs.yml +34 -0
- data/.ace-defaults/nav/protocols/tmpl-sources/ace-docs.yml +10 -0
- data/.ace-defaults/nav/protocols/wfi-sources/ace-docs.yml +19 -0
- data/CHANGELOG.md +1082 -0
- data/LICENSE +21 -0
- data/README.md +40 -0
- data/Rakefile +14 -0
- data/exe/ace-docs +14 -0
- data/handbook/guides/documentation/ruby.md +16 -0
- data/handbook/guides/documentation/rust.md +35 -0
- data/handbook/guides/documentation/typescript.md +18 -0
- data/handbook/guides/documentation.g.md +437 -0
- data/handbook/guides/documents-embedded-sync.g.md +473 -0
- data/handbook/guides/documents-embedding.g.md +276 -0
- data/handbook/guides/markdown-style.g.md +290 -0
- data/handbook/prompts/ace-change-analyzer.system.md +113 -0
- data/handbook/prompts/ace-change-analyzer.user.md +95 -0
- data/handbook/prompts/document-analysis.md +74 -0
- data/handbook/prompts/document-analysis.system.md +129 -0
- data/handbook/prompts/markdown-style.system.md +113 -0
- data/handbook/skills/as-docs-create-adr/SKILL.md +35 -0
- data/handbook/skills/as-docs-create-api/SKILL.md +35 -0
- data/handbook/skills/as-docs-create-user/SKILL.md +35 -0
- data/handbook/skills/as-docs-maintain-adrs/SKILL.md +35 -0
- data/handbook/skills/as-docs-squash-changelog/SKILL.md +42 -0
- data/handbook/skills/as-docs-update/SKILL.md +36 -0
- data/handbook/skills/as-docs-update-blueprint/SKILL.md +28 -0
- data/handbook/skills/as-docs-update-roadmap/SKILL.md +24 -0
- data/handbook/skills/as-docs-update-tools/SKILL.md +36 -0
- data/handbook/skills/as-docs-update-usage/SKILL.md +26 -0
- data/handbook/templates/code-docs/javascript-jsdoc.template.md +102 -0
- data/handbook/templates/code-docs/ruby-yard.template.md +85 -0
- data/handbook/templates/project-docs/README.template.md +73 -0
- data/handbook/templates/project-docs/architecture.template.md +300 -0
- data/handbook/templates/project-docs/blueprint.template.md +165 -0
- data/handbook/templates/project-docs/context/ownership.yml +160 -0
- data/handbook/templates/project-docs/decisions/adr.template.md +60 -0
- data/handbook/templates/project-docs/prd.template.md +144 -0
- data/handbook/templates/project-docs/roadmap/roadmap.template.md +47 -0
- data/handbook/templates/project-docs/vision.template.md +233 -0
- data/handbook/templates/user-docs/user-guide.template.md +107 -0
- data/handbook/workflow-instructions/docs/create-adr.wf.md +334 -0
- data/handbook/workflow-instructions/docs/create-api.wf.md +448 -0
- data/handbook/workflow-instructions/docs/create-cookbook.wf.md +434 -0
- data/handbook/workflow-instructions/docs/create-user.wf.md +399 -0
- data/handbook/workflow-instructions/docs/maintain-adrs.wf.md +589 -0
- data/handbook/workflow-instructions/docs/squash-changelog.wf.md +246 -0
- data/handbook/workflow-instructions/docs/update-blueprint.wf.md +361 -0
- data/handbook/workflow-instructions/docs/update-context.wf.md +336 -0
- data/handbook/workflow-instructions/docs/update-roadmap.wf.md +421 -0
- data/handbook/workflow-instructions/docs/update-tools.wf.md +307 -0
- data/handbook/workflow-instructions/docs/update-usage.wf.md +710 -0
- data/handbook/workflow-instructions/docs/update.wf.md +418 -0
- data/lib/ace/docs/atoms/diff_filterer.rb +131 -0
- data/lib/ace/docs/atoms/frontmatter_free_matcher.rb +20 -0
- data/lib/ace/docs/atoms/git_date_resolver.rb +16 -0
- data/lib/ace/docs/atoms/readme_metadata_inferrer.rb +60 -0
- data/lib/ace/docs/atoms/terminology_extractor.rb +308 -0
- data/lib/ace/docs/atoms/time_range_calculator.rb +96 -0
- data/lib/ace/docs/atoms/timestamp_parser.rb +106 -0
- data/lib/ace/docs/atoms/type_inferrer.rb +70 -0
- data/lib/ace/docs/cli/commands/analyze.rb +351 -0
- data/lib/ace/docs/cli/commands/analyze_consistency.rb +185 -0
- data/lib/ace/docs/cli/commands/discover.rb +75 -0
- data/lib/ace/docs/cli/commands/scope_options.rb +71 -0
- data/lib/ace/docs/cli/commands/status.rb +241 -0
- data/lib/ace/docs/cli/commands/update.rb +198 -0
- data/lib/ace/docs/cli/commands/validate.rb +225 -0
- data/lib/ace/docs/cli.rb +60 -0
- data/lib/ace/docs/models/analysis_report.rb +120 -0
- data/lib/ace/docs/models/consistency_report.rb +259 -0
- data/lib/ace/docs/models/document.rb +354 -0
- data/lib/ace/docs/molecules/change_detector.rb +389 -0
- data/lib/ace/docs/molecules/document_loader.rb +133 -0
- data/lib/ace/docs/molecules/frontmatter_manager.rb +85 -0
- data/lib/ace/docs/molecules/git_date_resolver.rb +30 -0
- data/lib/ace/docs/organisms/cross_document_analyzer.rb +274 -0
- data/lib/ace/docs/organisms/document_registry.rb +318 -0
- data/lib/ace/docs/organisms/validator.rb +164 -0
- data/lib/ace/docs/prompts/compact_diff_prompt.rb +119 -0
- data/lib/ace/docs/prompts/consistency_prompt.rb +286 -0
- data/lib/ace/docs/prompts/document_analysis_prompt.rb +389 -0
- data/lib/ace/docs/version.rb +7 -0
- data/lib/ace/docs.rb +82 -0
- data/lib/test.rb +4 -0
- metadata +347 -0
|
@@ -0,0 +1,399 @@
|
|
|
1
|
+
---
|
|
2
|
+
doc-type: workflow
|
|
3
|
+
title: Create User Documentation Workflow Instruction
|
|
4
|
+
purpose: Documentation for ace-docs/handbook/workflow-instructions/docs/create-user.wf.md
|
|
5
|
+
ace-docs:
|
|
6
|
+
last-updated: 2026-02-23
|
|
7
|
+
last-checked: 2026-03-21
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Create User Documentation Workflow Instruction
|
|
11
|
+
|
|
12
|
+
## Goal
|
|
13
|
+
|
|
14
|
+
Create or update user-facing documentation (e.g., README additions, tutorials, usage examples) for a new feature or
|
|
15
|
+
significant change, ensuring users can effectively understand and utilize the functionality.
|
|
16
|
+
|
|
17
|
+
## Prerequisites
|
|
18
|
+
|
|
19
|
+
* Feature/change is implemented or well-defined
|
|
20
|
+
* Understanding of the target audience and their needs
|
|
21
|
+
* Access to relevant code, examples, and task descriptions
|
|
22
|
+
* Knowledge of the feature's use cases and limitations
|
|
23
|
+
|
|
24
|
+
## Project Context Loading
|
|
25
|
+
|
|
26
|
+
* Read and follow: `ace-bundle wfi://bundle`
|
|
27
|
+
|
|
28
|
+
## High-Level Execution Plan
|
|
29
|
+
|
|
30
|
+
### Planning Steps
|
|
31
|
+
|
|
32
|
+
* Identify documentation scope and target
|
|
33
|
+
audience
|
|
34
|
+
* Analyze feature functionality and use
|
|
35
|
+
cases
|
|
36
|
+
* Create appropriate documentation
|
|
37
|
+
structure for the content type
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### Execution Steps
|
|
41
|
+
|
|
42
|
+
* Write clear, comprehensive user
|
|
43
|
+
documentation
|
|
44
|
+
* Include practical examples and code
|
|
45
|
+
snippets
|
|
46
|
+
* Add troubleshooting guidance and FAQs
|
|
47
|
+
* Review and test all documentation content
|
|
48
|
+
* Organize documentation in appropriate
|
|
49
|
+
location
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
## Process Steps
|
|
53
|
+
|
|
54
|
+
1. **Identify Scope & Audience:**
|
|
55
|
+
* Determine documentation needs:
|
|
56
|
+
* What feature/change needs documenting?
|
|
57
|
+
* Who will use this documentation?
|
|
58
|
+
* What is their technical level?
|
|
59
|
+
* What are their goals?
|
|
60
|
+
* Common audience types:
|
|
61
|
+
* **End Users**: Need task-focused guides
|
|
62
|
+
* **Developers**: Need API references and integration guides
|
|
63
|
+
* **Administrators**: Need configuration and deployment guides
|
|
64
|
+
* **Contributors**: Need development setup and architecture docs
|
|
65
|
+
2. **Analyze Feature:**
|
|
66
|
+
* Review the feature to understand:
|
|
67
|
+
* Core functionality and purpose
|
|
68
|
+
* Configuration options and defaults
|
|
69
|
+
* Common use cases and workflows
|
|
70
|
+
* Integration points with other features
|
|
71
|
+
* Prerequisites and dependencies
|
|
72
|
+
* Known limitations or constraints
|
|
73
|
+
* Error scenarios and troubleshooting
|
|
74
|
+
3. **Create Documentation Structure:**
|
|
75
|
+
|
|
76
|
+
Use the user documentation template:
|
|
77
|
+
|
|
78
|
+
4. **Write Clear Content:**
|
|
79
|
+
|
|
80
|
+
**Writing Guidelines:**
|
|
81
|
+
|
|
82
|
+
* **Start with why**: Explain the value before the how
|
|
83
|
+
* **Use active voice**: "Click the button" not "The button should be clicked"
|
|
84
|
+
* **Be concise**: Get to the point quickly
|
|
85
|
+
* **Show, don't just tell**: Include examples and visuals
|
|
86
|
+
* **Progressive disclosure**: Start simple, add complexity gradually **Code Example Best Practices:**
|
|
87
|
+
|
|
88
|
+
// BAD: No context or explanation config.set('key', value);
|
|
89
|
+
|
|
90
|
+
// GOOD: Clear context and explanation // Configure the API endpoint for production config.set('apiEndpoint',
|
|
91
|
+
'https://api.example.com/v2');
|
|
92
|
+
|
|
93
|
+
// You can also use environment variables config.set('apiEndpoint', process.env.API\_ENDPOINT \|\|
|
|
94
|
+
'https://api.example.com/v2');
|
|
95
|
+
{: .language-javascript}
|
|
96
|
+
|
|
97
|
+
5. **Include Practical Examples:**
|
|
98
|
+
|
|
99
|
+
**Example Types to Include:**
|
|
100
|
+
|
|
101
|
+
* **Minimal Example**: Simplest possible usage
|
|
102
|
+
* **Real-World Example**: Common production scenario
|
|
103
|
+
* **Integration Example**: Using with other features
|
|
104
|
+
* **Error Handling Example**: Proper error management
|
|
105
|
+
^
|
|
106
|
+
|
|
107
|
+
# Minimal Example
|
|
108
|
+
from feature import Client
|
|
109
|
+
client = Client()
|
|
110
|
+
result = client.process("data")
|
|
111
|
+
|
|
112
|
+
# Real-World Example with Error Handling
|
|
113
|
+
from feature import Client, FeatureError
|
|
114
|
+
import logging
|
|
115
|
+
|
|
116
|
+
logger = logging.getLogger(__name__)
|
|
117
|
+
client = Client(timeout=60, retries=3)
|
|
118
|
+
|
|
119
|
+
try:
|
|
120
|
+
result = client.process(
|
|
121
|
+
data="production data",
|
|
122
|
+
validate=True,
|
|
123
|
+
callback=lambda x: logger.info(f"Processed: {x}")
|
|
124
|
+
)
|
|
125
|
+
print(f"Success: {result.status}")
|
|
126
|
+
except FeatureError as e:
|
|
127
|
+
logger.error(f"Processing failed: {e}")
|
|
128
|
+
# Fallback logic here
|
|
129
|
+
{: .language-python}
|
|
130
|
+
|
|
131
|
+
6. **Add Visual Aids (if applicable):**
|
|
132
|
+
|
|
133
|
+
## Architecture Overview
|
|
134
|
+
```mermaid
|
|
135
|
+
graph LR
|
|
136
|
+
A[User] --> B[Feature API]
|
|
137
|
+
B --> C[Processing Engine]
|
|
138
|
+
C --> D[Database]
|
|
139
|
+
C --> E[External Service]
|
|
140
|
+
{: .language-markdown}
|
|
141
|
+
|
|
142
|
+
## Workflow Diagram
|
|
143
|
+
|
|
144
|
+

|
|
145
|
+
|
|
146
|
+
\`\`\`
|
|
147
|
+
|
|
148
|
+
7. **Review and Test:**
|
|
149
|
+
|
|
150
|
+
**Documentation Review Checklist:**
|
|
151
|
+
|
|
152
|
+
* Accuracy: All information is correct
|
|
153
|
+
* Completeness: All features are
|
|
154
|
+
documented
|
|
155
|
+
* Clarity: Easy to understand for
|
|
156
|
+
target audience
|
|
157
|
+
* Examples: Code examples work as
|
|
158
|
+
written
|
|
159
|
+
* Structure: Logical flow and
|
|
160
|
+
organization
|
|
161
|
+
* Grammar: No spelling or grammar
|
|
162
|
+
errors
|
|
163
|
+
* Links: All links work correctly
|
|
164
|
+
* Formatting: Consistent markdown
|
|
165
|
+
formatting
|
|
166
|
+
{: .task-list}
|
|
167
|
+
|
|
168
|
+
**Test the Documentation:**
|
|
169
|
+
|
|
170
|
+
1. Follow your own quickstart guide
|
|
171
|
+
2. Try all code examples
|
|
172
|
+
3. Verify configuration options
|
|
173
|
+
4. Test troubleshooting steps
|
|
174
|
+
8. **Save and Organize:**
|
|
175
|
+
|
|
176
|
+
**Documentation Locations:**
|
|
177
|
+
|
|
178
|
+
* **Project README**: High-level overview and quickstart
|
|
179
|
+
* **docs/ directory**: Detailed guides and tutorials
|
|
180
|
+
* **examples/ directory**: Complete working examples
|
|
181
|
+
* **API docs**: Generated from code comments
|
|
182
|
+
* **Wiki**: Collaborative documentation
|
|
183
|
+
* **Release notes**: Version-specific changes **File Naming Conventions:**
|
|
184
|
+
|
|
185
|
+
* `getting-started.md` - Initial setup guide
|
|
186
|
+
* `user-guide.md` - Comprehensive user manual
|
|
187
|
+
* `api-reference.md` - API documentation
|
|
188
|
+
* `troubleshooting.md` - Problem-solving guide
|
|
189
|
+
* `examples/` - Working code examples
|
|
190
|
+
9. **Commit Documentation:**
|
|
191
|
+
|
|
192
|
+
git add docs/
|
|
193
|
+
git commit -m "docs(user): add comprehensive guide for new feature
|
|
194
|
+
|
|
195
|
+
- Add quickstart guide
|
|
196
|
+
- Include configuration reference
|
|
197
|
+
- Provide troubleshooting section
|
|
198
|
+
- Add real-world examples"
|
|
199
|
+
{: .language-bash}
|
|
200
|
+
|
|
201
|
+
## User Documentation Types
|
|
202
|
+
|
|
203
|
+
### README
|
|
204
|
+
|
|
205
|
+
* Project overview
|
|
206
|
+
* Quick installation
|
|
207
|
+
* Basic usage example
|
|
208
|
+
* Links to detailed docs
|
|
209
|
+
|
|
210
|
+
### Tutorials
|
|
211
|
+
|
|
212
|
+
* Step-by-step guides
|
|
213
|
+
* Learning-oriented
|
|
214
|
+
* Complete projects
|
|
215
|
+
* Explanatory narrative
|
|
216
|
+
|
|
217
|
+
### How-To Guides
|
|
218
|
+
|
|
219
|
+
* Task-oriented
|
|
220
|
+
* Specific problems
|
|
221
|
+
* Assume some knowledge
|
|
222
|
+
* Multiple approaches
|
|
223
|
+
|
|
224
|
+
### Reference
|
|
225
|
+
|
|
226
|
+
* Complete information
|
|
227
|
+
* Structured format
|
|
228
|
+
* Technical accuracy
|
|
229
|
+
* Quick lookup
|
|
230
|
+
|
|
231
|
+
### Explanation
|
|
232
|
+
|
|
233
|
+
* Understanding-oriented
|
|
234
|
+
* Background context
|
|
235
|
+
* Design decisions
|
|
236
|
+
* Conceptual clarity
|
|
237
|
+
|
|
238
|
+
## Success Criteria
|
|
239
|
+
|
|
240
|
+
* Documentation is created for the specified feature
|
|
241
|
+
* Content is accurate, clear, and complete
|
|
242
|
+
* Examples are tested and working
|
|
243
|
+
* Appropriate for target audience's technical level
|
|
244
|
+
* Follows consistent formatting and style
|
|
245
|
+
* Organized in logical location
|
|
246
|
+
* Reviewed for quality
|
|
247
|
+
|
|
248
|
+
## Common Pitfalls to Avoid
|
|
249
|
+
|
|
250
|
+
**DON'T:**
|
|
251
|
+
|
|
252
|
+
* Assume prior knowledge without stating prerequisites
|
|
253
|
+
* Use jargon without explanation
|
|
254
|
+
* Provide examples that don't actually work
|
|
255
|
+
* Mix reference and tutorial content
|
|
256
|
+
* Forget to update docs when code changes
|
|
257
|
+
* Write walls of text without structure
|
|
258
|
+
|
|
259
|
+
**DO:**
|
|
260
|
+
|
|
261
|
+
* Start with the user's goal
|
|
262
|
+
* Provide copy-paste examples
|
|
263
|
+
* Explain the why, not just the how
|
|
264
|
+
* Use consistent terminology
|
|
265
|
+
* Include troubleshooting guidance
|
|
266
|
+
* Keep it scannable with headers and lists
|
|
267
|
+
|
|
268
|
+
## Common Patterns
|
|
269
|
+
|
|
270
|
+
### Feature Introduction Documentation
|
|
271
|
+
|
|
272
|
+
Create comprehensive guides when introducing new features that require user adoption.
|
|
273
|
+
|
|
274
|
+
### Integration Guide Documentation
|
|
275
|
+
|
|
276
|
+
Provide step-by-step integration instructions for features that connect with external systems.
|
|
277
|
+
|
|
278
|
+
### Migration Guide Documentation
|
|
279
|
+
|
|
280
|
+
Help users transition from old to new versions when making breaking changes.
|
|
281
|
+
|
|
282
|
+
### Tutorial-Style Documentation
|
|
283
|
+
|
|
284
|
+
Create learning-oriented guides that walk users through complete workflows.
|
|
285
|
+
|
|
286
|
+
## Usage Example
|
|
287
|
+
|
|
288
|
+
> "I've implemented a new authentication feature that supports OAuth and API keys. Create user documentation that helps
|
|
289
|
+
> developers integrate this into their applications."
|
|
290
|
+
|
|
291
|
+
* * *
|
|
292
|
+
|
|
293
|
+
This workflow ensures comprehensive, user-friendly documentation that enables successful adoption and use of your
|
|
294
|
+
features.
|
|
295
|
+
|
|
296
|
+
<documents>
|
|
297
|
+
<template name="user-guide">
|
|
298
|
+
# [Feature Name]
|
|
299
|
+
|
|
300
|
+
## Overview
|
|
301
|
+
|
|
302
|
+
Brief description of what this feature does and why users would want it.
|
|
303
|
+
|
|
304
|
+
## Quick Start
|
|
305
|
+
|
|
306
|
+
Minimal steps to get started with the most common use case.
|
|
307
|
+
|
|
308
|
+
```bash
|
|
309
|
+
# Example commands or code
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
## Prerequisites
|
|
313
|
+
|
|
314
|
+
- Required dependencies
|
|
315
|
+
- System requirements
|
|
316
|
+
- Access permissions needed
|
|
317
|
+
|
|
318
|
+
## Installation/Setup
|
|
319
|
+
|
|
320
|
+
Step-by-step setup instructions with examples.
|
|
321
|
+
|
|
322
|
+
## Basic Usage
|
|
323
|
+
|
|
324
|
+
### [Common Task 1]
|
|
325
|
+
|
|
326
|
+
How to accomplish the most common task.
|
|
327
|
+
|
|
328
|
+
```javascript
|
|
329
|
+
// Code example with annotations
|
|
330
|
+
const result = feature.doSomething({
|
|
331
|
+
option1: 'value', // Explanation of option
|
|
332
|
+
option2: true // Why this is needed
|
|
333
|
+
});
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
### [Common Task 2]
|
|
337
|
+
|
|
338
|
+
Another common use case with examples.
|
|
339
|
+
|
|
340
|
+
## Configuration
|
|
341
|
+
|
|
342
|
+
| Option | Type | Default | Description |
|
|
343
|
+
|--------|------|---------|-------------|
|
|
344
|
+
| timeout | number | 30 | Request timeout in seconds |
|
|
345
|
+
| retries | number | 3 | Number of retry attempts |
|
|
346
|
+
| debug | boolean | false | Enable debug logging |
|
|
347
|
+
|
|
348
|
+
## Advanced Usage
|
|
349
|
+
|
|
350
|
+
### [Advanced Feature 1]
|
|
351
|
+
|
|
352
|
+
More complex scenarios and patterns.
|
|
353
|
+
|
|
354
|
+
### Custom Extensions
|
|
355
|
+
|
|
356
|
+
How to extend or customize the feature.
|
|
357
|
+
|
|
358
|
+
## Troubleshooting
|
|
359
|
+
|
|
360
|
+
### Common Issues
|
|
361
|
+
|
|
362
|
+
**Problem**: Error message appears
|
|
363
|
+
**Solution**: Steps to resolve
|
|
364
|
+
|
|
365
|
+
**Problem**: Feature doesn't work as expected
|
|
366
|
+
**Solution**: Debugging steps
|
|
367
|
+
|
|
368
|
+
## Examples
|
|
369
|
+
|
|
370
|
+
### Example 1: [Use Case]
|
|
371
|
+
|
|
372
|
+
Complete working example with explanation.
|
|
373
|
+
|
|
374
|
+
### Example 2: [Integration]
|
|
375
|
+
|
|
376
|
+
How to integrate with other tools/features.
|
|
377
|
+
|
|
378
|
+
## API Reference
|
|
379
|
+
|
|
380
|
+
Link to generated API documentation or inline reference.
|
|
381
|
+
|
|
382
|
+
## Migration Guide
|
|
383
|
+
|
|
384
|
+
(If applicable) How to migrate from previous versions.
|
|
385
|
+
|
|
386
|
+
## FAQ
|
|
387
|
+
|
|
388
|
+
**Q: Question users often ask?**
|
|
389
|
+
A: Clear, helpful answer.
|
|
390
|
+
|
|
391
|
+
## Related Resources
|
|
392
|
+
|
|
393
|
+
- Link to related features
|
|
394
|
+
- External documentation
|
|
395
|
+
- Video tutorials
|
|
396
|
+
</template>
|
|
397
|
+
|
|
398
|
+
</documents>
|
|
399
|
+
|