siesa-agents 2.1.93 → 2.1.94
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.
- package/claude/skills/sa-user-guide-builder/SKILL.md +6 -0
- package/package.json +1 -1
- package/siesa-agents/sa/sa-user-guide-builder/SKILL.md +158 -0
- package/siesa-agents/sa/sa-user-guide-builder/references/templates.md +267 -0
- package/siesa-agents/sa/sa-user-guide-builder/references/writing-style.md +54 -0
- package/claude/skills/sa-create-user-guide/SKILL.md +0 -6
- package/claude/skills/sa-delivery-guides/SKILL.md +0 -240
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: sa-user-guide-builder
|
|
3
|
+
description: 'Build and maintain a project''s consolidated end-user guide in ONE process, driven by the sprint status. It validates in _bmad-output/implementation-artifacts/sprint-status.yaml which features already have their epics and stories developed (each epic''s -source entry points to the epic file that identifies the feature) — no RAG indexing step needed. Produces a folder of linked Spanish markdown chapters with a central index.md, Mermaid diagrams and screenshot placeholders. On the first run it lists the developed features and lets the engineer document all or a selection; on later runs it offers to document new features (integrated coherently into the existing guide) or re-document existing ones by inspecting the commits made since they were last documented. All decisions go through the AskUserQuestion tool. Use this skill whenever someone wants to create, extend, update or regenerate the user guide / guía de usuario of a project — trigger on /sa-user-guide-builder, "documentar features", "generar guía de usuario", "actualizar la guía de usuario", "documentar un nuevo feature", "re-documentar un feature", or any request to turn finished features into end-user documentation, even if the skill is not named. Replaces the old two-step sa-create-user-guide + sa-delivery-guides process.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @_siesa-agents/sa/sa-user-guide-builder/SKILL.md, READ its entire contents and follow its directions exactly!
|
package/package.json
CHANGED
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: sa-user-guide-builder
|
|
3
|
+
description: Build and maintain a project's consolidated end-user guide in ONE process, driven by the sprint status. It validates in _bmad-output/implementation-artifacts/sprint-status.yaml which features already have their epics and stories developed (each epic's -source entry points to the epic file that identifies the feature) — no RAG indexing step needed. Produces a folder of linked Spanish markdown chapters with a central index.md, Mermaid diagrams and screenshot placeholders. On the first run it lists the developed features and lets the engineer document all or a selection; on later runs it offers to document new features (integrated coherently into the existing guide) or re-document existing ones by inspecting the commits made since they were last documented. All decisions go through the AskUserQuestion tool. Use this skill whenever someone wants to create, extend, update or regenerate the user guide / guía de usuario of a project — trigger on /sa-user-guide-builder, "documentar features", "generar guía de usuario", "actualizar la guía de usuario", "documentar un nuevo feature", "re-documentar un feature", or any request to turn finished features into end-user documentation, even if the skill is not named. Replaces the old two-step sa-create-user-guide + sa-delivery-guides process.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# SA User Guide Builder
|
|
7
|
+
|
|
8
|
+
One process, one deliverable: a **folder** with the set of linked Spanish markdown files that form the project's end-user guide. The developer who finished the features runs this skill and the guide comes out already consolidated — there is no separate "dev documents, delivery consolidates" hand-off, and no RAG/MCP indexing in between.
|
|
9
|
+
|
|
10
|
+
**Sources (local project artifacts, never the MCP):**
|
|
11
|
+
- `{implementation_artifacts}/sprint-status.yaml` — the single source of truth for which epics and stories are actually developed, and for which epic file belongs to which feature (via each epic's `-source` path)
|
|
12
|
+
- The epic files referenced by `epic-*-source` — stories, acceptance criteria, GWT scenarios (these become the step-by-step workflows)
|
|
13
|
+
- `{planning_artifacts}/prd/feature-{slug}.md` — feature descriptions, FRs, key behaviors (read it when it exists for the feature)
|
|
14
|
+
- General context if present: `prd/goals.md`, `prd/background-context.md`, `prd/user-interface-design-goals.md`, `architecture.md`
|
|
15
|
+
|
|
16
|
+
**Deliverable:**
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
{output_folder}/documentation-artifacts/user-guide/
|
|
20
|
+
├── _guide-manifest.yaml ← state: which features are documented, where, at which commit
|
|
21
|
+
├── index.md ← cover + linked table of contents
|
|
22
|
+
├── 01-introduccion.md
|
|
23
|
+
├── 02-primeros-pasos.md
|
|
24
|
+
├── 03-{tema-1}.md ... NN-{tema-n}.md ← thematic chapters (related features grouped)
|
|
25
|
+
├── NN-solucion-de-problemas.md ← merged across all features
|
|
26
|
+
├── NN-preguntas-frecuentes.md ← merged across all features
|
|
27
|
+
└── NN-glosario.md ← merged across all features
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Never produce a single monolithic file — the guide would be too large to read and maintain. Never produce one file per feature either — group related features into thematic chapters so the folder stays navigable. The chapter architecture is the point of the consolidation.
|
|
31
|
+
|
|
32
|
+
File templates (manifest, index, chapters, shared files) live in `{project-root}/_siesa-agents/sa/sa-user-guide-builder/references/templates.md`. Writing rules and the technical→plain-language transformation table live in `{project-root}/_siesa-agents/sa/sa-user-guide-builder/references/writing-style.md`. Read both before generating any content.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Setup
|
|
37
|
+
|
|
38
|
+
1. Load `{project-root}/_bmad/bmm/config.yaml` and resolve: `project_name`, `communication_language`, `planning_artifacts`, `implementation_artifacts`, `output_folder`. Talk to the user in `{communication_language}` (typically Spanish); all generated guide content is Spanish for a non-technical end user.
|
|
39
|
+
2. Set `{guide_folder}` = `{output_folder}/documentation-artifacts/user-guide/` — the guide files always land directly here, with no per-project subfolder.
|
|
40
|
+
3. Greet with one warm, non-technical sentence. Don't narrate tool calls or file scans — the user cares about their guide, not the plumbing.
|
|
41
|
+
4. Check whether `{guide_folder}/_guide-manifest.yaml` exists:
|
|
42
|
+
- **Missing → First run** (the guide doesn't exist yet)
|
|
43
|
+
- **Present → Maintenance run** (the guide exists; offer to grow or refresh it)
|
|
44
|
+
|
|
45
|
+
## Interaction rules (both modes)
|
|
46
|
+
|
|
47
|
+
Every decision the user makes goes through **AskUserQuestion** — never free-text prompts like "type the IDs separated by commas". Practical constraints of that tool and how to work within them:
|
|
48
|
+
|
|
49
|
+
- Max 4 questions per call and max 4 options per question; an "Other" free-text option is always added automatically.
|
|
50
|
+
- To let the user pick features when there are more than 4: use `multiSelect: true` and split the feature list into groups of 4 options across up to 4 questions in one call ("Features (1/3)", "Features (2/3)", …). If there are more than 16, make additional AskUserQuestion calls. Selecting nothing in a group is fine.
|
|
51
|
+
- Option `label` = the feature title (short); `description` = one business-friendly line. Never surface technical noise (chunk counts, file paths, SHAs) in labels.
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## First run
|
|
56
|
+
|
|
57
|
+
### 1. Discover developed features from the sprint status
|
|
58
|
+
|
|
59
|
+
Read `{implementation_artifacts}/sprint-status.yaml`. If it doesn't exist, stop and tell the user it's required (it is produced by sprint-planning). This file is the only trustworthy signal of what is actually developed — never infer completion from feature-status.yaml, commit messages or file existence.
|
|
60
|
+
|
|
61
|
+
How to read `development_status`:
|
|
62
|
+
- Epic entries: `epic-{F}-{E}: backlog | in-progress | done` — `done` means all of the epic's stories were developed.
|
|
63
|
+
- Every epic has an `epic-{F}-{E}-source:` entry with the path of its epic file. That path is how you identify the feature: all epics sharing the feature number `{F}` point to the same `epic-feat-{F}-{name}.md`, and the `{name}` slug is the feature's name (the `# ===== Feature N — ... =====` header comments confirm the mapping).
|
|
64
|
+
- Story entries: `{F}-{E}.{HH}-{slug}: status` — collect the story IDs of `done` epics; they go into the manifest and later drive the re-documentation git filter.
|
|
65
|
+
|
|
66
|
+
Group the epics by feature number and classify each feature:
|
|
67
|
+
- **Documentable** — all its epics are `done`.
|
|
68
|
+
- **Partial** — some epics `done`, others still `backlog`/`in-progress`. Offer it labeled "parcial"; only the `done` epics feed the guide (never document behavior from unfinished stories).
|
|
69
|
+
- **Pending** — no `done` epics. Mention it as not yet documentable, don't offer it.
|
|
70
|
+
|
|
71
|
+
If nothing is documentable, say so clearly and stop.
|
|
72
|
+
|
|
73
|
+
Show the documentable (and partial) features as a short table (feature, epics done/total, last update), then ask with AskUserQuestion:
|
|
74
|
+
|
|
75
|
+
- **Question:** "¿Qué quieres documentar?" — options: **"Documentar todo (N features)"** / **"Elegir cuáles documentar"**.
|
|
76
|
+
- If the user chooses to pick: follow the multiSelect batching pattern above to collect the exact set.
|
|
77
|
+
|
|
78
|
+
### 2. Analyze sources
|
|
79
|
+
|
|
80
|
+
For each selected feature, read the epic file(s) referenced by its `epic-*-source` entries (only the `done` epics), plus the PRD feature file if one exists for that slug, plus the general context docs once. Extract per feature: what it does for the user, key behaviors, step-by-step workflows (from GWT scenarios of the done stories), warnings/limitations, and the source paths + story IDs (you'll record them in frontmatter and the manifest). Give one short progress line per feature — this step is autonomous.
|
|
81
|
+
|
|
82
|
+
### 3. Design the chapter plan
|
|
83
|
+
|
|
84
|
+
Group related features into thematic chapters (e.g. "Suscripciones y planes", "Facturación y pagos") — a user-need-oriented structure, not one chapter per feature. Two small related features share a chapter; a large feature can own one. Keep the file count manageable.
|
|
85
|
+
|
|
86
|
+
Present the plan as one line per file (filename → chapters/features it covers) and confirm with AskUserQuestion: **"¿Aprobar este plan de capítulos?"** — options "Aprobar" / "Ajustar" (the user describes adjustments via Other or a follow-up question). Iterate until approved.
|
|
87
|
+
|
|
88
|
+
### 4. Generate the guide
|
|
89
|
+
|
|
90
|
+
Read `_siesa-agents/sa/sa-user-guide-builder/references/templates.md` and `_siesa-agents/sa/sa-user-guide-builder/references/writing-style.md`, then write every file. The consolidation rules that make this ONE coherent manual instead of stitched-together feature docs:
|
|
91
|
+
|
|
92
|
+
- Shared concepts are explained **once** — access/login/navigation in `02-primeros-pasos.md`, terminology in the glossary — and chapters link to them instead of repeating.
|
|
93
|
+
- Troubleshooting, FAQ and glossary entries from all features are **merged** into their single files, deduplicated.
|
|
94
|
+
- Every file links back to `index.md` and to its previous/next sibling.
|
|
95
|
+
- Each feature section includes: plain description, numbered steps, ⚠️ inline warnings, a Mermaid diagram with Spanish labels for non-trivial flows, and 📸 screenshot placeholders (`UPPER_SNAKE_CASE` unique IDs) with a screenshot index section per file.
|
|
96
|
+
|
|
97
|
+
### 5. Record state
|
|
98
|
+
|
|
99
|
+
Write `_guide-manifest.yaml` (template in `references/templates.md`): one entry per documented feature with its chapter file, the epics and story IDs it covered (as they appear in `sprint-status.yaml`), sources, date, and `documented_at_commit` = current `git rev-parse HEAD`. The SHA and the story IDs are what make future re-documentation diffs possible — don't skip them.
|
|
100
|
+
|
|
101
|
+
### 6. Validate, then confirm
|
|
102
|
+
|
|
103
|
+
Self-check before presenting (fix silently, don't ask the user to review defects):
|
|
104
|
+
- Every planned file exists, is non-empty, and is reachable from `index.md`; the prev/next chain is unbroken.
|
|
105
|
+
- Every selected feature appears in exactly one chapter.
|
|
106
|
+
- Mermaid blocks are syntactically valid with Spanish labels; screenshot IDs are unique, `UPPER_SNAKE_CASE`, and all listed in their file's screenshot index.
|
|
107
|
+
- No TODO/TBD markers or empty sections; manifest matches what's on disk.
|
|
108
|
+
|
|
109
|
+
Close with a summary: folder path, file list, chapter→features mapping, totals (diagrams, screenshots), and the reminder that re-running the skill adds new features or refreshes existing ones.
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Maintenance run
|
|
114
|
+
|
|
115
|
+
### 1. Show guide state
|
|
116
|
+
|
|
117
|
+
Read `_guide-manifest.yaml` and summarize briefly: N features documented across M chapters, last update date.
|
|
118
|
+
|
|
119
|
+
### 2. Ask what to do
|
|
120
|
+
|
|
121
|
+
AskUserQuestion — **"Ya existe una guía para {project}. ¿Qué deseas hacer?"**:
|
|
122
|
+
- **"Documentar nuevos features"** — add features completed since the guide was built
|
|
123
|
+
- **"Re-documentar un feature existente"** — refresh features whose behavior may have changed
|
|
124
|
+
- **"Salir"** — nothing to do
|
|
125
|
+
|
|
126
|
+
### 3a. Document new features
|
|
127
|
+
|
|
128
|
+
Re-read `sprint-status.yaml` and find what became documentable since the guide was built: features with `done` epics that are **not** in the manifest, and also new `done` epics of features already documented (offer those as "ampliar {feature}" — their content folds into the feature's existing chapter, and their story IDs are appended to the manifest entry). If there are no candidates, say so and offer re-documentation instead. Otherwise reuse the first-run selection UX (all / pick).
|
|
129
|
+
|
|
130
|
+
Integrate **coherently with the existing guide** — this is the difference from a first run:
|
|
131
|
+
- Read the existing `index.md` and chapter files first to match tone, terminology and structure.
|
|
132
|
+
- Decide per feature: does it belong in an existing chapter (append a section there) or does it justify a new chapter file? If new, insert it before the troubleshooting file and renumber the trailing files — then fix every affected link (index, prev/next chain). Broken links are the most common failure of incremental updates; verify the chain explicitly.
|
|
133
|
+
- Merge the feature's FAQ/troubleshooting/glossary entries into the shared files without duplicating existing entries.
|
|
134
|
+
- Add the feature to the manifest with today's date and the current HEAD SHA.
|
|
135
|
+
|
|
136
|
+
### 3b. Re-document existing features
|
|
137
|
+
|
|
138
|
+
Let the user pick which documented feature(s) to refresh (multiSelect batches from the manifest list).
|
|
139
|
+
|
|
140
|
+
For each one, inspect what changed since it was documented:
|
|
141
|
+
1. Take `documented_at_commit` from the manifest.
|
|
142
|
+
2. Look for related commits: `git log --oneline {sha}..HEAD` filtered by the feature's slug, its story IDs from the manifest (sprint-status format, e.g. `1-4.02`), or its epic IDs (e.g. `epic-1-4`); plus direct diffs of its source docs: `git diff {sha}..HEAD -- {epic file} {prd file}`; plus a comparison of the feature's story list in `sprint-status.yaml` against the manifest (new `done` stories = new behavior to document). (If the feature's code lives in another repo, the doc-file diff and the sprint-status comparison are still the reliable signals — say so rather than guessing.)
|
|
143
|
+
3. **No relevant changes found:** tell the user, and ask via AskUserQuestion whether to regenerate anyway ("Regenerar de todas formas" / "Omitir").
|
|
144
|
+
4. **Changes found:** summarize them in business terms (what behavior changed, not which files), then update only the affected sections of the feature's chapter and the shared files. Don't rewrite untouched chapters.
|
|
145
|
+
5. Update the manifest entry (new date, new SHA).
|
|
146
|
+
|
|
147
|
+
### 4. Validate and confirm
|
|
148
|
+
|
|
149
|
+
Run the same self-check as the first run (link chain, uniqueness, no markers, manifest consistency) and close with a summary of what was added/updated.
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## Guardrails
|
|
154
|
+
|
|
155
|
+
- The manifest (`_guide-manifest.yaml`) is internal state — never link it from `index.md` or mention it in guide content.
|
|
156
|
+
- Generated content is always Spanish, always for a non-technical end user; the transformation table in `_siesa-agents/sa/sa-user-guide-builder/references/writing-style.md` governs how technical concepts are rewritten. Component names, `[Source:]` tags and other implementation details never appear in the body — traceability lives in frontmatter `sources:` and in the manifest.
|
|
157
|
+
- Don't invent features or behaviors not present in the sources. If a source is ambiguous, prefer omitting a claim over guessing.
|
|
158
|
+
- Never modify the source artifacts (sprint-status.yaml, PRDs, epics) — this skill only reads them.
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
# Templates — sa-user-guide-builder
|
|
2
|
+
|
|
3
|
+
All generated content is Spanish. Placeholders in `{curly braces}` are resolved at generation time.
|
|
4
|
+
|
|
5
|
+
## Table of contents
|
|
6
|
+
|
|
7
|
+
1. [`_guide-manifest.yaml`](#_guide-manifestyaml)
|
|
8
|
+
2. [`index.md`](#indexmd)
|
|
9
|
+
3. [`01-introduccion.md`](#01-introduccionmd)
|
|
10
|
+
4. [`02-primeros-pasos.md`](#02-primeros-pasosmd)
|
|
11
|
+
5. [Thematic chapter file](#thematic-chapter-file)
|
|
12
|
+
6. [Shared tail files (troubleshooting / FAQ / glossary)](#shared-tail-files)
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## `_guide-manifest.yaml`
|
|
17
|
+
|
|
18
|
+
Internal state file. Never linked from the guide, never shown to the end user.
|
|
19
|
+
|
|
20
|
+
```yaml
|
|
21
|
+
project_name: "{Project Name}"
|
|
22
|
+
created: "{YYYY-MM-DD}"
|
|
23
|
+
last_updated: "{YYYY-MM-DD}"
|
|
24
|
+
files:
|
|
25
|
+
- index.md
|
|
26
|
+
- 01-introduccion.md
|
|
27
|
+
- 02-primeros-pasos.md
|
|
28
|
+
- 03-{tema-1}.md
|
|
29
|
+
# ... every file of the guide, in order
|
|
30
|
+
features:
|
|
31
|
+
- feature: 1
|
|
32
|
+
slug: "calendar" # from the epic source filename: epic-feat-{F}-{slug}.md
|
|
33
|
+
title: "Calendario"
|
|
34
|
+
chapter_file: "03-calendario.md"
|
|
35
|
+
documented_date: "{YYYY-MM-DD}"
|
|
36
|
+
documented_at_commit: "{full git SHA of HEAD when documented}"
|
|
37
|
+
epics_documented: ["epic-1-1", "epic-1-2", "epic-1-3", "epic-1-4"] # only the epics that were `done` in sprint-status.yaml
|
|
38
|
+
sources:
|
|
39
|
+
- "_bmad-output/planning-artifacts/epics/epic-feat-1-calendar.md" # from epic-{F}-{E}-source
|
|
40
|
+
- "_bmad-output/planning-artifacts/prd/feature-calendar.md" # only if it exists
|
|
41
|
+
story_ids: ["1-1.01", "1-1.02", "1-2.01"] # sprint-status format {F}-{E}.{HH} — used to filter git log on re-documentation
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
`documented_at_commit`, `epics_documented` and `story_ids` are what make the re-documentation diff and the "new done epics" detection possible; fill them for every feature, every time.
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## `index.md`
|
|
49
|
+
|
|
50
|
+
```markdown
|
|
51
|
+
---
|
|
52
|
+
project: {project_name}
|
|
53
|
+
generated_date: {YYYY-MM-DD}
|
|
54
|
+
last_updated: {YYYY-MM-DD}
|
|
55
|
+
audience: Usuario final no técnico
|
|
56
|
+
type: indice-guia-usuario
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
# Guía de Usuario de {Proyecto}
|
|
60
|
+
|
|
61
|
+
Manual de usuario final. Esta guía reúne, de forma coherente, toda la documentación de uso del sistema.
|
|
62
|
+
|
|
63
|
+
## ¿Qué es {Proyecto}?
|
|
64
|
+
|
|
65
|
+
{2-3 frases. Qué hace y para quién es. Sin términos técnicos.}
|
|
66
|
+
|
|
67
|
+
## Contenido
|
|
68
|
+
|
|
69
|
+
1. [Introducción](01-introduccion.md)
|
|
70
|
+
2. [Primeros Pasos](02-primeros-pasos.md)
|
|
71
|
+
3. [{Capítulo temático 1}](03-{tema-1}.md)
|
|
72
|
+
4. [{Capítulo temático 2}](04-{tema-2}.md)
|
|
73
|
+
{...}
|
|
74
|
+
N. [Solución de Problemas](NN-solucion-de-problemas.md)
|
|
75
|
+
N. [Preguntas Frecuentes](NN-preguntas-frecuentes.md)
|
|
76
|
+
N. [Glosario](NN-glosario.md)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## `01-introduccion.md`
|
|
82
|
+
|
|
83
|
+
```markdown
|
|
84
|
+
---
|
|
85
|
+
project: {project_name}
|
|
86
|
+
chapter: Introducción
|
|
87
|
+
generated_date: {YYYY-MM-DD}
|
|
88
|
+
audience: Usuario final no técnico
|
|
89
|
+
sources:
|
|
90
|
+
- {source-path-1}
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
[⬅️ Índice](index.md)
|
|
94
|
+
|
|
95
|
+
# Introducción
|
|
96
|
+
|
|
97
|
+
## ¿Qué es {Proyecto}?
|
|
98
|
+
|
|
99
|
+
{2-3 párrafos: qué hace, qué problema resuelve, valor para el usuario.}
|
|
100
|
+
|
|
101
|
+
## ¿Para quién es esta guía?
|
|
102
|
+
|
|
103
|
+
{1 párrafo. Perfil del lector: profesional de negocio cómodo con aplicaciones, sin perfil técnico.}
|
|
104
|
+
|
|
105
|
+
## Cómo usar esta guía
|
|
106
|
+
|
|
107
|
+
{Estructura de la guía y cómo navegar entre capítulos.}
|
|
108
|
+
|
|
109
|
+
**Convenciones:**
|
|
110
|
+
- 📸 **[Screenshot: ID — Descripción]**: lugar donde irá una captura de pantalla
|
|
111
|
+
- ⚠️ **Advertencia**: información importante antes de realizar una acción
|
|
112
|
+
- 💡 **Tip**: consejo útil
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
[Índice](index.md) · [Siguiente ➡️](02-primeros-pasos.md)
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## `02-primeros-pasos.md`
|
|
121
|
+
|
|
122
|
+
Access, login and navigation live here **once** — chapters link here instead of repeating it.
|
|
123
|
+
|
|
124
|
+
```markdown
|
|
125
|
+
---
|
|
126
|
+
project: {project_name}
|
|
127
|
+
chapter: Primeros Pasos
|
|
128
|
+
generated_date: {YYYY-MM-DD}
|
|
129
|
+
audience: Usuario final no técnico
|
|
130
|
+
sources:
|
|
131
|
+
- {source-path-1}
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
[⬅️ Índice](index.md)
|
|
135
|
+
|
|
136
|
+
# Primeros Pasos
|
|
137
|
+
|
|
138
|
+
## Acceso al sistema
|
|
139
|
+
|
|
140
|
+
{Pasos numerados: URL/aplicación, inicio de sesión.}
|
|
141
|
+
|
|
142
|
+
📸 [Screenshot: UI_LOGIN — Pantalla de inicio de sesión]
|
|
143
|
+
|
|
144
|
+
## Navegación general
|
|
145
|
+
|
|
146
|
+
{Cómo está organizada la pantalla principal, en lenguaje visual simple.}
|
|
147
|
+
|
|
148
|
+
📸 [Screenshot: UI_DASHBOARD — Vista general]
|
|
149
|
+
|
|
150
|
+
```mermaid
|
|
151
|
+
flowchart LR
|
|
152
|
+
A[Iniciar sesión] --> B[Pantalla principal]
|
|
153
|
+
B --> C[{Módulo 1}]
|
|
154
|
+
B --> D[{Módulo 2}]
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## Índice de capturas de este capítulo
|
|
158
|
+
|
|
159
|
+
| ID | Descripción | Estado |
|
|
160
|
+
|----|-------------|--------|
|
|
161
|
+
| UI_LOGIN | Pantalla de inicio de sesión | Pendiente |
|
|
162
|
+
| UI_DASHBOARD | Vista general | Pendiente |
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
[⬅️ Anterior](01-introduccion.md) · [Índice](index.md) · [Siguiente ➡️](03-{tema-1}.md)
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## Thematic chapter file
|
|
171
|
+
|
|
172
|
+
One file per thematic chapter (`03-{tema}.md`, `04-{tema}.md`, …). Groups one or more related features.
|
|
173
|
+
|
|
174
|
+
```markdown
|
|
175
|
+
---
|
|
176
|
+
project: {project_name}
|
|
177
|
+
chapter: {Nombre del capítulo}
|
|
178
|
+
generated_date: {YYYY-MM-DD}
|
|
179
|
+
last_updated: {YYYY-MM-DD}
|
|
180
|
+
audience: Usuario final no técnico
|
|
181
|
+
features: [{F1}, {F4}]
|
|
182
|
+
sources:
|
|
183
|
+
- {source-path-1}
|
|
184
|
+
- {source-path-2}
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
[⬅️ Índice](index.md)
|
|
188
|
+
|
|
189
|
+
# {Nombre del Capítulo}
|
|
190
|
+
|
|
191
|
+
{1-2 frases: qué cubre este capítulo y cuándo lo necesitas.}
|
|
192
|
+
|
|
193
|
+
## {Funcionalidad 1}
|
|
194
|
+
|
|
195
|
+
### ¿Qué es?
|
|
196
|
+
{Un párrafo. Descripción simple.}
|
|
197
|
+
|
|
198
|
+
### ¿Para qué sirve?
|
|
199
|
+
{El beneficio práctico para el usuario.}
|
|
200
|
+
|
|
201
|
+
### ¿Cómo se usa?
|
|
202
|
+
1. {Acción clara por paso.}
|
|
203
|
+
2. ⚠️ {Advertencia en línea justo antes del paso riesgoso, si aplica.}
|
|
204
|
+
3. {...}
|
|
205
|
+
|
|
206
|
+
📸 [Screenshot: {FEATURE_ID}_{PASO} — Descripción]
|
|
207
|
+
|
|
208
|
+
{Si el flujo tiene decisiones o ramas, incluye un diagrama con labels en español:}
|
|
209
|
+
|
|
210
|
+
```mermaid
|
|
211
|
+
flowchart TD
|
|
212
|
+
Inicio --> Paso1[{Acción 1}]
|
|
213
|
+
Paso1 --> Decision{{"¿Condición?"}}
|
|
214
|
+
Decision -->|Sí| Paso2[{Acción 2}]
|
|
215
|
+
Decision -->|No| Fin
|
|
216
|
+
Paso2 --> Fin
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
## {Funcionalidad 2}
|
|
220
|
+
{misma estructura}
|
|
221
|
+
|
|
222
|
+
## Índice de capturas de este capítulo
|
|
223
|
+
|
|
224
|
+
| ID | Descripción | Estado |
|
|
225
|
+
|----|-------------|--------|
|
|
226
|
+
| {ID} | {Descripción} | Pendiente |
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
[⬅️ Anterior]({archivo-anterior}.md) · [Índice](index.md) · [Siguiente ➡️]({archivo-siguiente}.md)
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## Shared tail files
|
|
235
|
+
|
|
236
|
+
### `NN-solucion-de-problemas.md`
|
|
237
|
+
|
|
238
|
+
Merged from ALL features, deduplicated, grouped by symptom the user experiences (not by feature).
|
|
239
|
+
|
|
240
|
+
```markdown
|
|
241
|
+
[⬅️ Índice](index.md)
|
|
242
|
+
|
|
243
|
+
# Solución de Problemas
|
|
244
|
+
|
|
245
|
+
## {Problema en palabras del usuario}
|
|
246
|
+
|
|
247
|
+
**Qué ves:** {síntoma}
|
|
248
|
+
**Qué hacer:**
|
|
249
|
+
1. {paso}
|
|
250
|
+
2. {paso}
|
|
251
|
+
|
|
252
|
+
## Mensajes comunes
|
|
253
|
+
|
|
254
|
+
| Mensaje que aparece | Qué significa | Qué hacer |
|
|
255
|
+
|---|---|---|
|
|
256
|
+
| {mensaje} | {significado simple} | {acción} |
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
### `NN-preguntas-frecuentes.md`
|
|
260
|
+
|
|
261
|
+
Merged FAQ, no repeated questions, grouped by topic. Format: `**P:** … / **R:** …`. When an answer needs detail, link to the relevant chapter instead of repeating it.
|
|
262
|
+
|
|
263
|
+
### `NN-glosario.md`
|
|
264
|
+
|
|
265
|
+
Alphabetical, one plain-Spanish definition per term. Every term that appears in more than one chapter belongs here; chapters use the term and rely on the glossary rather than redefining it.
|
|
266
|
+
|
|
267
|
+
All three tail files carry the same frontmatter shape as chapters (with merged `sources:`) and end with the prev/next/index navigation footer.
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Writing Style — sa-user-guide-builder
|
|
2
|
+
|
|
3
|
+
The reader is comfortable with a smartphone but has no software background. Everything below exists to protect that reader.
|
|
4
|
+
|
|
5
|
+
## Voice and language
|
|
6
|
+
|
|
7
|
+
- Spanish, active voice, direct instructions: "Haz clic en…", "Escribe…", "Selecciona…".
|
|
8
|
+
- Short sentences. If a sentence needs a comma to explain a technical concept, rewrite it.
|
|
9
|
+
- One clear action per numbered step.
|
|
10
|
+
- If a concept gives the end user no practical value, drop it.
|
|
11
|
+
- ⚠️ warnings go inline, immediately **before** the step that can cause the problem — a warning after the mistake is decoration.
|
|
12
|
+
- Explain a term the first time it appears (or link to the glossary); after that, just use it.
|
|
13
|
+
|
|
14
|
+
## What to keep, transform, and omit from the sources
|
|
15
|
+
|
|
16
|
+
**Keep (rewritten in plain language):** feature purpose, step-by-step flows, key concepts, troubleshooting, FAQ, and the practical implication of every warning.
|
|
17
|
+
|
|
18
|
+
**Transform:**
|
|
19
|
+
|
|
20
|
+
| Source element | Treatment in the guide |
|
|
21
|
+
|---|---|
|
|
22
|
+
| `deep linking` / unique URL per record | "Cada registro tiene su propia dirección web que puedes guardar o compartir" |
|
|
23
|
+
| Component names (`ContactManager`, `EmptyState`, `ErrorPanel`, …) | Remove the name; describe what the user sees |
|
|
24
|
+
| `NIT/RUC` | Keep it — explain once: "número de identificación tributaria (NIT/RUC)" |
|
|
25
|
+
| `Toast` notification | "mensaje de confirmación que aparece brevemente en pantalla" |
|
|
26
|
+
| Retry button on error | "si aparece un error, haz clic en Reintentar" |
|
|
27
|
+
| Two-column panel | "La pantalla se divide en dos partes: a la izquierda la lista, a la derecha el detalle" |
|
|
28
|
+
| Inline validation | "mensajes de error junto al campo que necesita corrección" |
|
|
29
|
+
| GWT scenarios (Given/When/Then) | Rewrite as numbered user steps — never show the GWT wording |
|
|
30
|
+
|
|
31
|
+
**Omit from the body (traceability lives in frontmatter `sources:` and the manifest):**
|
|
32
|
+
- `[Source: FX Story Y.Z]` tags
|
|
33
|
+
- Implementation details, API names, architecture references
|
|
34
|
+
- `*Generado: ...*` footers from source docs
|
|
35
|
+
|
|
36
|
+
## Mermaid diagrams
|
|
37
|
+
|
|
38
|
+
- Include a diagram only when the flow has decisions, branches, or 4+ steps — a linear 2-step action doesn't need one.
|
|
39
|
+
- All node labels in Spanish, phrased as user actions or screens ("Iniciar sesión", "¿Guardar cambios?"), never component or endpoint names.
|
|
40
|
+
- Keep diagrams small: if a flow needs more than ~10 nodes, split the section instead.
|
|
41
|
+
|
|
42
|
+
## Screenshot placeholders
|
|
43
|
+
|
|
44
|
+
- Format: `📸 [Screenshot: ID — Descripción en español]`
|
|
45
|
+
- IDs in `UPPER_SNAKE_CASE`, unique across the whole guide, prefixed by context: `UI_` (general screens), `{FEATURE_ID}_` (feature steps, e.g. `F3_CREAR_CLIENTE`), `ERROR_` (error states).
|
|
46
|
+
- Place one at each visually meaningful step — the screen the user must recognize before acting.
|
|
47
|
+
- Every file that contains placeholders ends its content with an "Índice de capturas de este capítulo" table (ID, Descripción, Estado: Pendiente) so the delivery team can capture them without hunting through the text.
|
|
48
|
+
|
|
49
|
+
## Coherence across files (the point of consolidation)
|
|
50
|
+
|
|
51
|
+
- Access, login and navigation are explained once in `02-primeros-pasos.md`; chapters link there.
|
|
52
|
+
- Shared concepts are defined once (introduction or glossary) and referenced with relative links.
|
|
53
|
+
- FAQ, troubleshooting and glossary are single merged files — before adding an entry during maintenance, check it isn't already there under different wording.
|
|
54
|
+
- Consistent terminology: if one chapter says "cliente", no other chapter says "tercero" for the same thing. When re-documenting, match the vocabulary already used in the guide.
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: sa-create-user-guide
|
|
3
|
-
description: 'Genera guías de usuario comprehensivas en español e inglés desde épicas y PRDs, con diagramas Mermaid y trazabilidad completa'
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
IT IS CRITICAL THAT YOU FOLLOW THIS COMMAND: LOAD the FULL @_siesa-agents/bmm/workflows/5-documentation/create-user-guide/workflow.md, READ its entire contents and follow its directions exactly!
|
|
@@ -1,240 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: sa-delivery-guides
|
|
3
|
-
description: Consolidate the per-feature user-guide documents indexed in the mcp-siesa-docs MCP into ONE coherent, end-user friendly guide per project — a folder of linked Spanish markdown files with a central index. Use this skill when a delivery team member needs to turn the scattered per-feature user guides of a project into a single navigable end-user manual. Always trigger on /sa-delivery-guides. Also trigger when the user says "generar guía de entrega", "consolidar guías de usuario", "guía para el cliente", "documentación de entrega para [project]", "guía consolidada de usuario final", "guía para usuario final", or describes wanting to merge the indexed per-feature user guides into one coherent manual a non-technical client can read.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Delivery Agent Guides — Consolidador
|
|
7
|
-
|
|
8
|
-
Toma las guías de usuario **por feature** de un proyecto (que viven en el RAG y se consultan vía el MCP `mcp-siesa-docs`) y produce **una guía de usuario final consolidada y coherente**: una **carpeta con el nombre del proyecto** que contiene varios archivos Markdown enlazados entre sí y un `index.md` central que actúa como tabla de contenidos.
|
|
9
|
-
|
|
10
|
-
El resultado **no** es un solo documento gigante ni una copia 1:1 de cada feature. Es un manual **sintetizado**: se agrupan features afines en capítulos temáticos, se unifican los conceptos repetidos (acceso, navegación, glosario, FAQ) y se redacta una narrativa continua en español, para usuario final no técnico.
|
|
11
|
-
|
|
12
|
-
**El MCP es la única fuente de contenido. No se escanea el sistema de archivos local.**
|
|
13
|
-
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
## Herramientas del MCP disponibles (úsalas tal cual)
|
|
17
|
-
|
|
18
|
-
El servidor `mcp-siesa-docs` expone **solo tres** herramientas. **No existe `get_document`** — no la llames.
|
|
19
|
-
|
|
20
|
-
- `list_collections()` → inventario de colecciones. La colección indexada es **`siesa-docs`** (el nombre `mcp-siesa-docs` es el del servidor, no el de la colección).
|
|
21
|
-
- `list_projects()` → proyectos indexados con banderas `has_user_guide`, `has_technical_knowledge` y `document_count`. **Esta es la fuente para saber qué proyectos tienen guías de usuario.**
|
|
22
|
-
- `search_docs({ query, top_k, filter })` → recuperación híbrida que devuelve **chunks** relevantes (máx. `top_k` = 50). `filter` es un diccionario opcional de pares string→string (p. ej. `{ "project": "<proyecto>" }`).
|
|
23
|
-
|
|
24
|
-
> ⚠️ Como no hay `get_document`, el contenido de cada guía se reconstruye **a partir de chunks** vía `search_docs`. Por eso se hacen varias búsquedas temáticas con `top_k` alto, en vez de una sola.
|
|
25
|
-
|
|
26
|
-
---
|
|
27
|
-
|
|
28
|
-
## Flujo
|
|
29
|
-
|
|
30
|
-
### Paso 1: Descubrir proyectos con guías de usuario (automático)
|
|
31
|
-
|
|
32
|
-
Apenas se invoca la skill, sin preguntar primero:
|
|
33
|
-
|
|
34
|
-
1. **Saluda con un mensaje de bienvenida** antes de cualquier llamada técnica. Una sola frase cálida y no técnica, p. ej.:
|
|
35
|
-
> 👋 Bienvenido al generador de Guías de Usuario de Siesa. Voy a consultar los proyectos disponibles y te dejaré elegir uno para construir su manual de usuario final.
|
|
36
|
-
|
|
37
|
-
No narres las llamadas al MCP ("voy a cargar las herramientas", "llamando a list_collections…"). Mantén el tono de cara al usuario: limpio y orientado a negocio.
|
|
38
|
-
2. `list_collections()` para confirmar que **`siesa-docs`** está disponible.
|
|
39
|
-
3. `list_projects()` y filtra los que tengan **`has_user_guide: true`**.
|
|
40
|
-
4. Presenta los proyectos usando la herramienta **`AskUserQuestion`** (menú con selección por flechas, el usuario no escribe su opción):
|
|
41
|
-
- `header`: "Proyecto"
|
|
42
|
-
- `question`: "¿Para cuál proyecto quieres generar la guía consolidada de usuario final?"
|
|
43
|
-
- `options`: una por cada proyecto con `has_user_guide: true`. El `label` es **solo el nombre del proyecto** (sin conteos ni datos técnicos). El `description` puede ser una frase breve y no técnica (p. ej. "Guía de usuario final del sistema {proyecto}").
|
|
44
|
-
- `multiSelect`: false
|
|
45
|
-
- **Nunca** muestres el número de fragmentos ni `document_count` — es un dato técnico que no le interesa al usuario.
|
|
46
|
-
5. Toma la respuesta del menú como el proyecto seleccionado.
|
|
47
|
-
|
|
48
|
-
Si ninguno califica, dilo claramente ("No encontré proyectos con guías de usuario indexadas en el MCP") y detente (no presentes el menú).
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
### Paso 2: Mapear las guías por feature del proyecto
|
|
53
|
-
|
|
54
|
-
Objetivo: saber qué features/áreas cubre el proyecto, recuperando los chunks de sus guías de usuario.
|
|
55
|
-
|
|
56
|
-
1. Lanza un barrido de `search_docs` con `filter: { "project": "<proyecto>" }` y `top_k: 50`. Usa varias consultas amplias en español para maximizar cobertura, por ejemplo:
|
|
57
|
-
- `"guía de usuario funcionalidades del sistema"`
|
|
58
|
-
- `"cómo se usa pasos flujos de trabajo"`
|
|
59
|
-
- `"preguntas frecuentes y solución de problemas"`
|
|
60
|
-
2. De los resultados, quédate **solo con chunks de guías de usuario** (su `path`/origen está bajo `user-guide/`). Ignora chunks de specs técnicas, arquitectura, stories o épicas aunque aparezcan.
|
|
61
|
-
3. Construye la lista de **features/áreas** detectadas (agrupa los chunks por su documento/feature de origen). Conserva los `path` de origen — los citarás al final.
|
|
62
|
-
|
|
63
|
-
Si el barrido devuelve muy pocos chunks, repite con consultas más específicas por nombre de feature detectado.
|
|
64
|
-
|
|
65
|
-
---
|
|
66
|
-
|
|
67
|
-
### Paso 3: Diseñar la estructura del manual (capítulos)
|
|
68
|
-
|
|
69
|
-
Aplica una arquitectura de información orientada a la **necesidad del usuario** (Diátaxis simplificado), no un archivo por feature suelto:
|
|
70
|
-
|
|
71
|
-
1. **Agrupa las features afines en capítulos temáticos.** Ejemplo (ilustrativo, depende del proyecto): "Suscripciones y planes", "Saldos y consumo", "Facturación y pagos", "Portal y notificaciones".
|
|
72
|
-
2. Define el conjunto de archivos a crear. Estructura recomendada (ajústala al tamaño real del proyecto):
|
|
73
|
-
- `index.md` — portada + tabla de contenidos enlazada
|
|
74
|
-
- `01-introduccion.md` — qué es el sistema y para qué sirve
|
|
75
|
-
- `02-primeros-pasos.md` — acceso, primer ingreso, navegación general
|
|
76
|
-
- `03-{area-1}.md`, `04-{area-2}.md`, … — un archivo por capítulo temático
|
|
77
|
-
- `NN-solucion-de-problemas.md`
|
|
78
|
-
- `NN-preguntas-frecuentes.md`
|
|
79
|
-
- `NN-glosario.md`
|
|
80
|
-
3. **Mantén la cantidad de archivos manejable**: agrupa, no generes un archivo por cada feature. Si dos features son pequeñas y relacionadas, van en el mismo capítulo.
|
|
81
|
-
4. Muestra al usuario el plan de capítulos propuesto **en una línea por archivo** y continúa (no requiere aprobación explícita salvo que el usuario quiera ajustar).
|
|
82
|
-
|
|
83
|
-
> ❌ **Nunca** generes un único archivo monolítico (`delivery-guide.md`) con todo el contenido. El entregable es **siempre** la carpeta con varios archivos enlazados. Un solo documento gigante es justo el comportamiento a evitar.
|
|
84
|
-
|
|
85
|
-
---
|
|
86
|
-
|
|
87
|
-
### Paso 4: Generar los archivos del manual
|
|
88
|
-
|
|
89
|
-
Para **cada capítulo temático**, antes de redactar, recupera su contenido con `search_docs` enfocado (consulta con el nombre del área/feature, `filter` del proyecto, `top_k` alto). Luego escribe el archivo `.md` en español, con contenido **coherente y sintetizado** (no copiado por feature).
|
|
90
|
-
|
|
91
|
-
**Contenido a conservar y reescribir en lenguaje sencillo:**
|
|
92
|
-
- Nombre y propósito de cada funcionalidad
|
|
93
|
-
- Flujos paso a paso
|
|
94
|
-
- Conceptos clave y definiciones (simplificadas)
|
|
95
|
-
- Solución de problemas y FAQ
|
|
96
|
-
- Advertencias (⚠️) — reformula sin detalle técnico; conserva la implicación práctica
|
|
97
|
-
|
|
98
|
-
**Contenido a transformar:**
|
|
99
|
-
- Diagramas Mermaid → reescríbelos como una o dos frases que describan el flujo. **Nunca emitas sintaxis Mermaid.**
|
|
100
|
-
|
|
101
|
-
**Contenido a omitir:**
|
|
102
|
-
- Placeholders `📸 [Screenshot: ...]`
|
|
103
|
-
- Referencias de trazabilidad `[Source: FX Story Y.Z]`
|
|
104
|
-
- Tablas de índice de capturas
|
|
105
|
-
- Nombres de componentes de implementación (ContactManager, EmptyState, ErrorPanel, etc.) — describe el comportamiento
|
|
106
|
-
- Pies `*Generado: ...`
|
|
107
|
-
|
|
108
|
-
**Coherencia entre archivos (clave de la consolidación):**
|
|
109
|
-
- Los conceptos y términos repetidos en varias features se explican **una sola vez** (en `01-introduccion.md` o en `glosario.md`) y los capítulos los referencian con un enlace relativo.
|
|
110
|
-
- El acceso/login/navegación va **una vez** en `02-primeros-pasos.md`, no en cada capítulo.
|
|
111
|
-
- FAQ y Solución de Problemas se **fusionan** de todas las features en sus archivos únicos, sin repetir preguntas.
|
|
112
|
-
- Cada archivo enlaza al anterior/siguiente y de vuelta al `index.md` con enlaces relativos Markdown.
|
|
113
|
-
|
|
114
|
-
**Plantilla de un archivo de capítulo:**
|
|
115
|
-
```markdown
|
|
116
|
-
---
|
|
117
|
-
project: {proyecto}
|
|
118
|
-
chapter: {nombre del capítulo}
|
|
119
|
-
generated_date: {YYYY-MM-DD}
|
|
120
|
-
audience: Usuario final no técnico
|
|
121
|
-
sources:
|
|
122
|
-
- {mcp-path-1}
|
|
123
|
-
- {mcp-path-2}
|
|
124
|
-
---
|
|
125
|
-
|
|
126
|
-
[⬅️ Índice](index.md)
|
|
127
|
-
|
|
128
|
-
# {Nombre del Capítulo}
|
|
129
|
-
|
|
130
|
-
## {Funcionalidad 1}
|
|
131
|
-
|
|
132
|
-
### ¿Qué es?
|
|
133
|
-
Un párrafo. Descripción simple.
|
|
134
|
-
|
|
135
|
-
### ¿Para qué sirve?
|
|
136
|
-
El beneficio práctico para el usuario.
|
|
137
|
-
|
|
138
|
-
### ¿Cómo se usa?
|
|
139
|
-
Pasos numerados. Una acción clara por paso.
|
|
140
|
-
Incluye advertencias en línea (⚠️ ...) justo antes del paso que puede causar un problema.
|
|
141
|
-
|
|
142
|
-
## {Funcionalidad 2}
|
|
143
|
-
(misma estructura)
|
|
144
|
-
|
|
145
|
-
---
|
|
146
|
-
[⬅️ Anterior]({archivo-anterior}.md) · [Índice](index.md) · [Siguiente ➡️]({archivo-siguiente}.md)
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
**Plantilla de `index.md`:**
|
|
150
|
-
```markdown
|
|
151
|
-
---
|
|
152
|
-
project: {proyecto}
|
|
153
|
-
generated_date: {YYYY-MM-DD}
|
|
154
|
-
audience: Usuario final no técnico
|
|
155
|
-
type: indice-consolidado
|
|
156
|
-
sources:
|
|
157
|
-
- {mcp-path-1}
|
|
158
|
-
- {mcp-path-2}
|
|
159
|
-
---
|
|
160
|
-
|
|
161
|
-
# Guía de Usuario de {Proyecto}
|
|
162
|
-
|
|
163
|
-
Manual de usuario final. Esta guía reúne, de forma coherente, toda la documentación de uso del sistema.
|
|
164
|
-
|
|
165
|
-
## ¿Qué es {Proyecto}?
|
|
166
|
-
2-3 frases. Qué hace y para quién es. Sin términos técnicos.
|
|
167
|
-
|
|
168
|
-
## Contenido
|
|
169
|
-
|
|
170
|
-
1. [Introducción](01-introduccion.md)
|
|
171
|
-
2. [Primeros Pasos](02-primeros-pasos.md)
|
|
172
|
-
3. [{Capítulo temático 1}](03-{area-1}.md)
|
|
173
|
-
4. [{Capítulo temático 2}](04-{area-2}.md)
|
|
174
|
-
...
|
|
175
|
-
N. [Solución de Problemas](NN-solucion-de-problemas.md)
|
|
176
|
-
N. [Preguntas Frecuentes](NN-preguntas-frecuentes.md)
|
|
177
|
-
N. [Glosario](NN-glosario.md)
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
**Guías de redacción:**
|
|
181
|
-
- Lector cómodo con un smartphone pero sin formación en software.
|
|
182
|
-
- Voz activa, instrucciones directas: "Haz clic en...", "Escribe...", "Selecciona..."
|
|
183
|
-
- Frases cortas. Si una frase necesita una coma para explicar un concepto técnico, reescríbela.
|
|
184
|
-
- Si un concepto no aporta valor práctico al usuario final, elimínalo.
|
|
185
|
-
|
|
186
|
-
---
|
|
187
|
-
|
|
188
|
-
### Paso 5: Guardar y confirmar
|
|
189
|
-
|
|
190
|
-
Guarda todo en la carpeta del proyecto:
|
|
191
|
-
```
|
|
192
|
-
_bmad-output/documentation-artifacts/delivery-guides/{proyecto}/
|
|
193
|
-
├── index.md
|
|
194
|
-
├── 01-introduccion.md
|
|
195
|
-
├── 02-primeros-pasos.md
|
|
196
|
-
├── 03-{area-1}.md
|
|
197
|
-
├── ...
|
|
198
|
-
├── NN-solucion-de-problemas.md
|
|
199
|
-
├── NN-preguntas-frecuentes.md
|
|
200
|
-
└── NN-glosario.md
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
Crea la carpeta si no existe.
|
|
204
|
-
|
|
205
|
-
Luego confirma:
|
|
206
|
-
```
|
|
207
|
-
Guía consolidada guardada en: _bmad-output/documentation-artifacts/delivery-guides/{proyecto}/
|
|
208
|
-
|
|
209
|
-
Archivos generados:
|
|
210
|
-
- index.md
|
|
211
|
-
- 01-introduccion.md
|
|
212
|
-
- 02-primeros-pasos.md
|
|
213
|
-
- {capítulos...}
|
|
214
|
-
- NN-glosario.md
|
|
215
|
-
|
|
216
|
-
Capítulos / features incluidos:
|
|
217
|
-
- {capítulo 1}: {features que agrupa}
|
|
218
|
-
- {capítulo 2}: {features que agrupa}
|
|
219
|
-
|
|
220
|
-
Fuentes del MCP:
|
|
221
|
-
- {mcp-path-1}
|
|
222
|
-
- {mcp-path-2}
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
---
|
|
226
|
-
|
|
227
|
-
## Referencia de Transformación
|
|
228
|
-
|
|
229
|
-
| Elemento técnico | Tratamiento en la guía |
|
|
230
|
-
|---|---|
|
|
231
|
-
| `deep linking` / URL única por registro | "Cada registro tiene su propia dirección web que puedes guardar o compartir" |
|
|
232
|
-
| `ContactManager`, `EmptyState`, `ErrorPanel` | Quita el nombre; describe lo que el usuario ve |
|
|
233
|
-
| `NIT/RUC` | Consérvalo — explícalo una vez: "número de identificación tributaria (NIT/RUC)" |
|
|
234
|
-
| Notificación `Toast` | "mensaje de confirmación que aparece brevemente en pantalla" |
|
|
235
|
-
| Botón Reintentar ante error | "si aparece un error, haz clic en Reintentar" |
|
|
236
|
-
| Panel de dos columnas | "La pantalla se divide en dos partes: a la izquierda la lista, a la derecha el detalle" |
|
|
237
|
-
| Validación inline | "mensajes de error junto al campo que necesita corrección" |
|
|
238
|
-
| Bloque de código Mermaid | Una o dos frases que describan el flujo |
|
|
239
|
-
| `[Source: FX Story Y.Z]` | Omitir |
|
|
240
|
-
| `📸 [Screenshot: ...]` | Omitir |
|