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,307 @@
|
|
|
1
|
+
---
|
|
2
|
+
doc-type: workflow
|
|
3
|
+
title: Update Tools Documentation Workflow (v5)
|
|
4
|
+
purpose: Documentation for ace-docs/handbook/workflow-instructions/docs/update-tools.wf.md
|
|
5
|
+
ace-docs:
|
|
6
|
+
last-updated: 2026-02-22
|
|
7
|
+
last-checked: 2026-03-21
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Update Tools Documentation Workflow (v5)
|
|
11
|
+
|
|
12
|
+
> **Scope:** Updates `docs/tools.md` for ACE ecosystem tools. Focus on active tools used in current workflows.
|
|
13
|
+
>
|
|
14
|
+
> **CRITICAL COMPRESSION TARGET:** Keep total documentation under 500 lines. Each tool entry should be 10-15 lines
|
|
15
|
+
> maximum including the collapsible details section.
|
|
16
|
+
|
|
17
|
+
* * *
|
|
18
|
+
|
|
19
|
+
## 0 Goal
|
|
20
|
+
|
|
21
|
+
Maintain an ultra-compact tools reference focused on essential information only. Each tool gets: name, one-line purpose,
|
|
22
|
+
2-3 key flags, and ONE primary example. Extended documentation belongs in workflows/agents, not here.
|
|
23
|
+
|
|
24
|
+
* * *
|
|
25
|
+
|
|
26
|
+
## 1 Prerequisites
|
|
27
|
+
|
|
28
|
+
* A new or modified ACE tool executable exists
|
|
29
|
+
* You have run `tool-name --help` and/or reviewed the source
|
|
30
|
+
* Write access to `docs/tools.md`
|
|
31
|
+
|
|
32
|
+
* * *
|
|
33
|
+
|
|
34
|
+
## 2 Project Context Loading
|
|
35
|
+
|
|
36
|
+
### Load dev-tools context preset
|
|
37
|
+
|
|
38
|
+
context --preset dev-tools
|
|
39
|
+
{: .language-bash}
|
|
40
|
+
|
|
41
|
+
### Understand project purpose and architecture
|
|
42
|
+
|
|
43
|
+
* docs/vision.md
|
|
44
|
+
* docs/architecture.md
|
|
45
|
+
* docs/blueprint.md
|
|
46
|
+
* docs/tools.md
|
|
47
|
+
|
|
48
|
+
### Review current tools documentation
|
|
49
|
+
|
|
50
|
+
* docs/tools.md
|
|
51
|
+
|
|
52
|
+
* * *
|
|
53
|
+
|
|
54
|
+
## 3 High-Level Execution Plan
|
|
55
|
+
|
|
56
|
+
| Step | Action | Notes |
|
|
57
|
+
|----------
|
|
58
|
+
| **1 Plan** | Map the tool to function category, persona, and cheat-sheet row | Table 1 below |
|
|
59
|
+
| **2 Edit** | Add / update the tool entry using the *Mini-template* (§4) | Use `<details>` |
|
|
60
|
+
| **3 Update** | • Main cheat-sheet<br />• Persona cheat-sheet(s)<br />• Category lists | Keep rows alphabetical |
|
|
61
|
+
| **4 Validate** | Run scripts in §6 Validation | Ensure documentation is current and accurate |
|
|
62
|
+
|
|
63
|
+
* * *
|
|
64
|
+
|
|
65
|
+
## 4 Templates
|
|
66
|
+
|
|
67
|
+
### 4.1 Cheat-sheet row
|
|
68
|
+
|
|
69
|
+
| `tool-name` | 1-liner purpose | `--top-flag`, `--flag2` |
|
|
70
|
+
{: .language-markdown}
|
|
71
|
+
|
|
72
|
+
### 4.2 Tool entry (ULTRA-COMPACT)
|
|
73
|
+
|
|
74
|
+
### `tool-name` – 1-sentence pitch
|
|
75
|
+
<details><summary>Details</summary>
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
tool-name [ARGS] [OPTIONS]
|
|
79
|
+
{: .language-markdown}
|
|
80
|
+
|
|
81
|
+
**Key flags:** `--flag1` (purpose), `--flag2` (purpose)
|
|
82
|
+
|
|
83
|
+
**Example:**
|
|
84
|
+
|
|
85
|
+
tool-name foo --flag value # one clear example
|
|
86
|
+
{: .language-bash}
|
|
87
|
+
|
|
88
|
+
</details>
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
#### COMPRESSION RULES
|
|
92
|
+
- **MAXIMUM 3 flags** - only the most essential
|
|
93
|
+
- **ONE example** - the most common use case
|
|
94
|
+
- **NO** full `--help` output
|
|
95
|
+
- **NO** feature lists or marketing copy
|
|
96
|
+
- **NO** performance notes or detailed explanations
|
|
97
|
+
- **NO** multiple examples unless absolutely critical
|
|
98
|
+
- Keep details section to 5-8 lines max
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## 5 Process Steps
|
|
103
|
+
|
|
104
|
+
1. **Check Tool Eligibility**
|
|
105
|
+
- Focus on active ACE ecosystem tools used in current workflows
|
|
106
|
+
- Ensure tool provides value to AI agents and developers
|
|
107
|
+
|
|
108
|
+
2. **Identify Tool Category & Purpose**
|
|
109
|
+
- Test with `tool-name --help`, read source, determine function category
|
|
110
|
+
|
|
111
|
+
3. **Locate Correct Documentation Section**
|
|
112
|
+
- Find appropriate section in `docs/tools.md`
|
|
113
|
+
- Ensure consistent categorization with other ACE tools
|
|
114
|
+
|
|
115
|
+
4. **Create or Update Tool Entry**
|
|
116
|
+
- Use the *Mini-template* above.
|
|
117
|
+
- COMPRESS: Only essential flags, ONE example
|
|
118
|
+
|
|
119
|
+
5. **Add / Update Cheat-sheets & Persona Sections**
|
|
120
|
+
- Main cheat-sheet at top of file.
|
|
121
|
+
- Persona-specific cheat-sheets (*Human Dev*, *AI Agent*, *Release Manager*, *Git Power-User*).
|
|
122
|
+
- Keep cheat-sheets minimal - tool name, 5-word purpose, 1-2 flags max.
|
|
123
|
+
|
|
124
|
+
6. **Update Category & Workflow Sections**
|
|
125
|
+
- Add tool name to function and persona lists.
|
|
126
|
+
- Amend workflow snippets where the tool is relevant.
|
|
127
|
+
|
|
128
|
+
7. **Run Validation & Quality Checks** (see §6)
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## 6 Validation Checklist
|
|
133
|
+
|
|
134
|
+
### 6.1 Cheat-sheet parity
|
|
135
|
+
- [ ] Tool listed in **main** cheat-sheet
|
|
136
|
+
- [ ] Tool listed in at least one **persona** cheat-sheet
|
|
137
|
+
|
|
138
|
+
### 6.2 Content Completeness
|
|
139
|
+
- [ ] Tool name & one-sentence purpose
|
|
140
|
+
- [ ] Basic usage syntax
|
|
141
|
+
- [ ] ONE primary example
|
|
142
|
+
- [ ] 2-3 essential flags only
|
|
143
|
+
- [ ] Total entry under 15 lines
|
|
144
|
+
|
|
145
|
+
### 6.3 Documentation Quality
|
|
146
|
+
- [ ] Clear, concise prose
|
|
147
|
+
- [ ] Code blocks formatted
|
|
148
|
+
- [ ] Consistent style
|
|
149
|
+
|
|
150
|
+
### 6.4 Structural Integration
|
|
151
|
+
- [ ] Correct section & category
|
|
152
|
+
- [ ] No full paths
|
|
153
|
+
- [ ] Focus on active ACE ecosystem tools
|
|
154
|
+
|
|
155
|
+
### 6.5 Technical Accuracy
|
|
156
|
+
- [ ] Example tested
|
|
157
|
+
- [ ] Essential flags match `--help`
|
|
158
|
+
|
|
159
|
+
### 6.6 User Experience
|
|
160
|
+
- [ ] Single most common use case shown
|
|
161
|
+
- [ ] Entry fits on one screen when collapsed
|
|
162
|
+
|
|
163
|
+
#### Validation scripts
|
|
164
|
+
```bash
|
|
165
|
+
# markdown style
|
|
166
|
+
markdownlint docs/tools.md
|
|
167
|
+
|
|
168
|
+
# Check line count
|
|
169
|
+
lines=$(wc -l < docs/tools.md)
|
|
170
|
+
if [ $lines -gt 500 ]; then
|
|
171
|
+
echo "⚠️ File too large: $lines lines (target: <500)"
|
|
172
|
+
fi
|
|
173
|
+
|
|
174
|
+
* * *
|
|
175
|
+
|
|
176
|
+
## 7 Example Snippet (before → after)
|
|
177
|
+
|
|
178
|
+
### BEFORE (verbose):
|
|
179
|
+
|
|
180
|
+
### `search` – Unified intelligent search across project
|
|
181
|
+
<details><summary>Details</summary>
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
search [OPTIONS] PATTERN
|
|
185
|
+
{: .language-markdown}
|
|
186
|
+
|
|
187
|
+
| Flag | Purpose | Default |
|
|
188
|
+
|----------
|
|
189
|
+
| `-t, --type TYPE` | Search type (file, content, hybrid, auto) | `auto` |
|
|
190
|
+
| `-f, --files` | Search for files only | `false` |
|
|
191
|
+
| `-c, --content` | Search in file content only | `false` |
|
|
192
|
+
| `-i, --case-insensitive` | Case insensitive search | `false` |
|
|
193
|
+
| `-w, --whole-word` | Match whole words only | `false` |
|
|
194
|
+
| `-U, --multiline` | Enable multiline matching | `false` |
|
|
195
|
+
| `-A, --after NUM` | Show NUM lines after match | `0` |
|
|
196
|
+
| `-B, --before NUM` | Show NUM lines before match | `0` |
|
|
197
|
+
| `-C, --context NUM` | Show NUM lines of context | `0` |
|
|
198
|
+
| `-g, --glob PATTERN` | File glob pattern to include | None |
|
|
199
|
+
| `-e, --exclude PATTERN` | Pattern to exclude | None |
|
|
200
|
+
| `--since TIME` | Files modified since TIME | None |
|
|
201
|
+
| `--before TIME` | Files modified before TIME | None |
|
|
202
|
+
| `--staged` | Search staged files only | `false` |
|
|
203
|
+
| `--tracked` | Search tracked files only | `false` |
|
|
204
|
+
| `--changed` | Search changed files only | `false` |
|
|
205
|
+
| `--json` | Output in JSON format | `false` |
|
|
206
|
+
| `--yaml` | Output in YAML format | `false` |
|
|
207
|
+
| `-l, --files-with-matches` | Only print filenames | `false` |
|
|
208
|
+
| `--max-results NUM` | Limit number of results | None |
|
|
209
|
+
| `--fzf` | Use fzf for interactive selection | `false` |
|
|
210
|
+
| `-p, --preset NAME` | Use search preset | None |
|
|
211
|
+
| `--list-presets` | List available presets | N/A |
|
|
212
|
+
|
|
213
|
+
**Examples**
|
|
214
|
+
|
|
215
|
+
# Basic content search
|
|
216
|
+
search "TODO"
|
|
217
|
+
|
|
218
|
+
# Find all Ruby files
|
|
219
|
+
search "*.rb" --files
|
|
220
|
+
|
|
221
|
+
# Search with regex in content
|
|
222
|
+
search "def\s+initialize" --content
|
|
223
|
+
|
|
224
|
+
# Interactive selection with fzf
|
|
225
|
+
search "pattern" --fzf
|
|
226
|
+
|
|
227
|
+
# Use built-in preset
|
|
228
|
+
search --preset todo
|
|
229
|
+
|
|
230
|
+
# Search with path filtering
|
|
231
|
+
search "bug" --include "**/*.rb"
|
|
232
|
+
|
|
233
|
+
# Find recently modified files
|
|
234
|
+
search "*.md" --since "1 week ago"
|
|
235
|
+
|
|
236
|
+
# Case-insensitive whole word search
|
|
237
|
+
search "error" -i -w
|
|
238
|
+
|
|
239
|
+
# Search staged files only
|
|
240
|
+
search "console.log" --staged
|
|
241
|
+
|
|
242
|
+
# Output results as JSON
|
|
243
|
+
search "API" --json --max-results 10
|
|
244
|
+
{: .language-bash}
|
|
245
|
+
|
|
246
|
+
**Built-in Presets**
|
|
247
|
+
|
|
248
|
+
* `todo` - Find TODO, FIXME, HACK, XXX, NOTE comments
|
|
249
|
+
* `ruby` - Find all Ruby files (\*.rb)
|
|
250
|
+
* `tests` - Find all test files (\*\_spec.rb)
|
|
251
|
+
* `recent` - Find files modified in the last week
|
|
252
|
+
* `git-changes` - Find changed files in git
|
|
253
|
+
|
|
254
|
+
**Purpose:** The search tool provides unified, intelligent searching across your entire project. It uses DWIM (Do What I
|
|
255
|
+
Mean) heuristics to automatically determine whether you're searching for files or content, leverages ripgrep and fd for
|
|
256
|
+
blazing-fast performance, and supports interactive result selection with fzf. Perfect for single-project workflows with
|
|
257
|
+
streamlined, path-based results.
|
|
258
|
+
|
|
259
|
+
**Features:**
|
|
260
|
+
|
|
261
|
+
* Automatic mode detection (file vs content search)
|
|
262
|
+
* Streamlined, path-based output for single-project workflows
|
|
263
|
+
* Git-aware scopes (staged, tracked, changed files)
|
|
264
|
+
* Time-based file filtering
|
|
265
|
+
* Interactive result selection with fzf
|
|
266
|
+
* Configurable search presets
|
|
267
|
+
* Multiple output formats (text, JSON, YAML)
|
|
268
|
+
* Intelligent pattern analysis for optimal tool selection
|
|
269
|
+
* Simplified architecture focused on speed and usability
|
|
270
|
+
|
|
271
|
+
**Performance:**
|
|
272
|
+
|
|
273
|
+
* Uses ripgrep for content search (extremely fast)
|
|
274
|
+
* Uses fd for file search (faster than find)
|
|
275
|
+
* Streams results for immediate feedback
|
|
276
|
+
* Optimized for large codebases
|
|
277
|
+
|
|
278
|
+
</details>
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
### AFTER (ultra-compact):
|
|
282
|
+
```markdown
|
|
283
|
+
### `search` – Fast unified search for files and content
|
|
284
|
+
<details><summary>Details</summary>
|
|
285
|
+
|
|
286
|
+
```bash
|
|
287
|
+
search [PATTERN] [OPTIONS]
|
|
288
|
+
|
|
289
|
+
**Key flags:** `--files` (file search), `--preset NAME` (use preset), `--fzf` (interactive)
|
|
290
|
+
|
|
291
|
+
**Example:**
|
|
292
|
+
|
|
293
|
+
search "TODO" --preset todo # Find all TODO comments
|
|
294
|
+
{: .language-bash}
|
|
295
|
+
|
|
296
|
+
</details> \`\`\`
|
|
297
|
+
|
|
298
|
+
* * *
|
|
299
|
+
|
|
300
|
+
## 8 Design Principles (appendix)
|
|
301
|
+
|
|
302
|
+
1. **Ultra-compact** – total file under 500 lines, each tool 10-15 lines max
|
|
303
|
+
2. **Essential only** – workflows/agents have detailed usage, not here
|
|
304
|
+
3. **One example rule** – show the primary use case only
|
|
305
|
+
4. **Minimal flags** – 2-3 most important flags, not exhaustive lists
|
|
306
|
+
5. **No fluff** – zero marketing copy, feature lists, or performance notes
|
|
307
|
+
|