@cyber-dash-tech/revela 0.18.7 → 0.18.9
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/README.md +5 -5
- package/README.zh-CN.md +5 -5
- package/lib/agents/research-prompt.ts +60 -18
- package/lib/narrative-state/deck-plan-artifact.ts +31 -0
- package/lib/narrative-state/render-plan.ts +2 -0
- package/lib/refine/server.ts +141 -62
- package/package.json +1 -1
- package/plugins/revela/.codex-plugin/plugin.json +4 -3
- package/plugins/revela/.mcp.json +1 -1
- package/plugins/revela/mcp/revela-server.ts +2 -2
- package/plugins/revela/skills/revela/SKILL.md +51 -0
- package/plugins/revela/skills/revela-helper/SKILL.md +8 -5
- package/plugins/revela/skills/revela-make-deck/SKILL.md +14 -10
- package/plugins/revela/skills/revela-research/SKILL.md +62 -15
- package/plugins/revela/skills/revela-spec/SKILL.md +71 -0
- package/tools/research-save.ts +8 -5
|
@@ -289,12 +289,12 @@ const tools = [
|
|
|
289
289
|
},
|
|
290
290
|
{
|
|
291
291
|
name: "revela_research_save",
|
|
292
|
-
description: "Save source-linked research findings under researches/{topic}/{filename}.md for deck-plan use.",
|
|
292
|
+
description: "Save source-linked research findings under researches/{topic}/{filename}.md for deck-plan use. Prefer structured blocks: ## Finding: <stable-id> for evidence, ## Synthesis: <stable-id> for interpretation across findings, ## Analysis: <stable-id> for analytical frameworks, ## Implementation Note: <stable-id> for render/data/API contracts, ## Asset Lead: <stable-id> for media leads, and ## Gaps for missing support.",
|
|
293
293
|
inputSchema: objectSchema({
|
|
294
294
|
workspaceRoot: stringProp("Optional workspace root."),
|
|
295
295
|
topic: requiredStringProp("Research topic key."),
|
|
296
296
|
filename: requiredStringProp("Findings filename without extension."),
|
|
297
|
-
content: requiredStringProp("Structured Markdown findings content."),
|
|
297
|
+
content: requiredStringProp("Structured Markdown findings content. Evidence findings should preserve source, quote/snippet, support scope or Supports, Evidence boundary or unsupported scope, Strength, Deck use, and optional Display note. Synthesis entries should preserve Basis, Interpretation, So what, Decision implication, Confidence, Alternative reading, Evidence boundary, and Deck use. Analysis and Implementation Note entries may support planning or rendering but are not external factual proof."),
|
|
298
298
|
sources: arrayProp("Source URLs or workspace files for YAML frontmatter."),
|
|
299
299
|
}, ["topic", "filename", "content"]),
|
|
300
300
|
},
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: revela
|
|
3
|
+
description: Route Revela requests to the right specialist workflow based on user intent and workspace state. Use when the user asks generally to use Revela, start or continue a Revela workflow, inspect next steps, or decide what to do from existing spec.md, researches/, deck-plan.md, or deck artifacts.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Revela Router
|
|
7
|
+
|
|
8
|
+
Use this skill as the main Revela entrypoint in Codex. It should inspect intent and file-native workspace state, then route to the narrow specialist skill that owns the next action.
|
|
9
|
+
|
|
10
|
+
## Contract
|
|
11
|
+
|
|
12
|
+
- This is a non-mutating router.
|
|
13
|
+
- It may inspect runtime, active design/domain, and workspace artifact status.
|
|
14
|
+
- It must not write `spec.md`, save research findings, write `deck-plan.md`, generate deck HTML, open Review UI, or export artifacts.
|
|
15
|
+
- Route quickly once the next workflow is clear.
|
|
16
|
+
|
|
17
|
+
## Required Tools
|
|
18
|
+
|
|
19
|
+
1. Call `revela_doctor` to inspect runtime and workspace status.
|
|
20
|
+
2. Call `revela_design_list` to identify the active design.
|
|
21
|
+
3. Call `revela_domain_list` to identify the active domain.
|
|
22
|
+
4. Read files only as needed to distinguish `spec.md`, `researches/`, `deck-plan.md`, `decks/*.html`, and `assets/` state.
|
|
23
|
+
|
|
24
|
+
## Routing Rules
|
|
25
|
+
|
|
26
|
+
- Custom visual system, design package, layout, component, or activation request: use `revela-design`.
|
|
27
|
+
- Custom narrative domain, industry guidance, evidence standard, or domain activation request: use `revela-domain`.
|
|
28
|
+
- No `spec.md`, unclear objective, missing audience, missing output target, or missing acceptance criteria: use `revela-spec`.
|
|
29
|
+
- `spec.md` exists but source support, material review, or findings are missing: use `revela-research`.
|
|
30
|
+
- `spec.md` and sufficient findings exist but `deck-plan.md` is missing or needs normal authoring: use `revela-research` Planning Handoff.
|
|
31
|
+
- Valid `deck-plan.md` exists and the user asks to make, generate, render, or update a deck: use `revela-make-deck`.
|
|
32
|
+
- Existing deck artifact and the user asks to review, diagnose, QA, or refine: use `revela-review`.
|
|
33
|
+
- Existing deck artifact and the user asks for PDF, PPTX, or PNG output: use `revela-export`.
|
|
34
|
+
- If the next step is still ambiguous after inspection, ask the smallest missing question and recommend the safest next specialist skill.
|
|
35
|
+
|
|
36
|
+
## Output
|
|
37
|
+
|
|
38
|
+
Report:
|
|
39
|
+
|
|
40
|
+
- Current workflow state: `spec.md`, `researches/`, `deck-plan.md`, `decks/*.html`, and `assets/`.
|
|
41
|
+
- Active design and active domain.
|
|
42
|
+
- The selected specialist skill and why.
|
|
43
|
+
- Any missing input that prevents routing.
|
|
44
|
+
|
|
45
|
+
## Must Not
|
|
46
|
+
|
|
47
|
+
- Do not write or patch files.
|
|
48
|
+
- Do not do external web research.
|
|
49
|
+
- Do not create or repair `spec.md` or `deck-plan.md`.
|
|
50
|
+
- Do not generate, review, patch, or export deck artifacts.
|
|
51
|
+
- Do not install or activate designs or domains; route those requests to `revela-design` or `revela-domain`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: revela-helper
|
|
3
|
-
description: Explain Revela, inspect the current Revela workspace status, and report active design/domain guidance in Codex.
|
|
3
|
+
description: Explain Revela, inspect the current Revela workspace status, and report active design/domain guidance in Codex. Use the revela router for workflow routing when the user wants to start or continue work.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Revela Helper
|
|
@@ -10,8 +10,9 @@ Use this skill when the user asks what Revela is, what the current workspace sta
|
|
|
10
10
|
## Contract
|
|
11
11
|
|
|
12
12
|
- This is a read-only helper and orientation surface.
|
|
13
|
+
- `revela` is the main workflow router; this skill explains status and capabilities.
|
|
13
14
|
- It may inspect runtime, design, domain, and workspace artifact status.
|
|
14
|
-
- It must not perform research, write files, create `deck-plan.md`, generate decks, open Review UI, or export artifacts.
|
|
15
|
+
- It must not perform research, write files, create `spec.md`, create `deck-plan.md`, generate decks, open Review UI, or export artifacts.
|
|
15
16
|
- Keep the answer short and operational.
|
|
16
17
|
|
|
17
18
|
## Preconditions
|
|
@@ -21,7 +22,7 @@ Use this skill when the user asks what Revela is, what the current workspace sta
|
|
|
21
22
|
## Inputs
|
|
22
23
|
|
|
23
24
|
- User questions about Revela, current status, active design/domain, or next workflow step.
|
|
24
|
-
- Optional workspace context such as existing `researches/`, `deck-plan.md`, `decks/*.html`, and `assets/`.
|
|
25
|
+
- Optional workspace context such as existing `spec.md`, `researches/`, `deck-plan.md`, `decks/*.html`, and `assets/`.
|
|
25
26
|
|
|
26
27
|
## Required Tools
|
|
27
28
|
|
|
@@ -37,11 +38,12 @@ Report:
|
|
|
37
38
|
- What Revela does: trusted, traceable, deck-first decision artifacts from local materials, research, data, and user intent.
|
|
38
39
|
- Runtime/version status from `revela_doctor`.
|
|
39
40
|
- Active design and active domain.
|
|
40
|
-
- Workspace artifact status: whether `researches/`, `deck-plan.md`, `decks/*.html`, and `assets/` appear available.
|
|
41
|
+
- Workspace artifact status: whether `spec.md`, `researches/`, `deck-plan.md`, `decks/*.html`, and `assets/` appear available.
|
|
41
42
|
- Recommended next step:
|
|
42
43
|
- Custom visual system requested: use `revela-design`.
|
|
43
44
|
- Custom narrative domain guidance requested: use `revela-domain`.
|
|
44
|
-
- No `
|
|
45
|
+
- No `spec.md` or unclear objective: run `revela-spec`.
|
|
46
|
+
- `spec.md` exists but no `researches/`: run `revela-research`.
|
|
45
47
|
- Research exists but no `deck-plan.md`: continue `revela-research` to the Planning Handoff.
|
|
46
48
|
- Valid `deck-plan.md` but no deck artifact: run `revela-make-deck`.
|
|
47
49
|
- Existing deck artifact: run `revela-review` or `revela-export` depending on the user goal.
|
|
@@ -50,6 +52,7 @@ Report:
|
|
|
50
52
|
|
|
51
53
|
- Do not write or patch files.
|
|
52
54
|
- Do not do external web research.
|
|
55
|
+
- Do not generate or repair `spec.md`.
|
|
53
56
|
- Do not generate or repair `deck-plan.md`.
|
|
54
57
|
- Do not generate, review, patch, or export deck artifacts.
|
|
55
58
|
- Do not create, install, or activate designs or domains; route those requests to `revela-design` or `revela-domain`.
|
|
@@ -11,6 +11,7 @@ Use this skill when the user asks to make, generate, render, or update a Revela
|
|
|
11
11
|
|
|
12
12
|
- Deck execution planning comes from canonical `deck-plan.md`.
|
|
13
13
|
- Local materials, material reviews, `researches/`, `assets/`, and user intent provide source context.
|
|
14
|
+
- Slide argument copy comes from `deck-plan.md` `Claim`, `Reasoning`, and `Audience takeaway` fields when present; raw findings are evidence/source context, not default body copy.
|
|
14
15
|
- Active/requested design tools define valid layouts, slots, components, nesting hints, and HTML writing rules.
|
|
15
16
|
- Active/requested domain guidance may inform communication framing, but it is not source evidence.
|
|
16
17
|
- Generated artifacts live under `decks/*.html`.
|
|
@@ -22,7 +23,7 @@ Use this skill when the user asks to make, generate, render, or update a Revela
|
|
|
22
23
|
|
|
23
24
|
- Required: readable `deck-plan.md`.
|
|
24
25
|
- An active or user-requested design must be readable.
|
|
25
|
-
- If `deck-plan.md` is missing, stop and tell the user to run `revela-
|
|
26
|
+
- If `deck-plan.md` is missing, stop and tell the user to run `revela` for routing, `revela-spec` for missing requirements, or `revela-research` for the Planning Handoff.
|
|
26
27
|
- If `deck-plan.md` is structurally invalid, only repair technical plan diagnostics reported during render preflight.
|
|
27
28
|
|
|
28
29
|
## Inputs
|
|
@@ -61,7 +62,9 @@ Allowed plan repairs are limited to technical diagnostics from `revela_read_deck
|
|
|
61
62
|
- Layout, slot, component, or `children` names that do not match `revela_design_inventory`.
|
|
62
63
|
- Component nesting fixes such as using `box.children` when the selected component model requires nested semantic groups.
|
|
63
64
|
|
|
64
|
-
Do not redesign the argument structure, add new slides, remove supported slides, rewrite claims, or add source links that were not reviewed or saved by `revela-research`. If normal plan authoring is needed, stop and send the user back to `revela-research` Planning Handoff.
|
|
65
|
+
Do not redesign the argument structure, add new slides, remove supported slides, rewrite claims, or add source links that were not reviewed or saved by `revela-research`. If normal plan authoring is needed, stop and send the user back to `revela` routing or `revela-research` Planning Handoff.
|
|
66
|
+
|
|
67
|
+
If a non-structural slide plan has source links but lacks `Claim`, `Reasoning`, or `Audience takeaway`, treat it as synthesis-thin: do not fill the gap by copying raw findings into slide body copy. Report that the plan needs `revela-research` Planning Handoff repair.
|
|
65
68
|
|
|
66
69
|
## Render Phase
|
|
67
70
|
|
|
@@ -70,14 +73,15 @@ Use this phase when the user asks to make, generate, render, or update an HTML d
|
|
|
70
73
|
1. Call `revela_read_deck_plan` before HTML generation and follow the current projection.
|
|
71
74
|
2. Read `htmlWritingBatches` before any HTML write. `revela_read_deck_plan` is QA/diagnostics, not a writer.
|
|
72
75
|
3. For new HTML files, call `revela_create_deck_foundation`.
|
|
73
|
-
4.
|
|
74
|
-
5.
|
|
75
|
-
6.
|
|
76
|
-
7.
|
|
77
|
-
8.
|
|
78
|
-
9.
|
|
79
|
-
10.
|
|
80
|
-
11.
|
|
76
|
+
4. Use the deck-plan's `Claim`, `Reasoning`, and `Audience takeaway` as the primary slide copy. Keep finding text in source notes, captions, evidence charts, or speaker notes unless the plan explicitly calls for a direct evidence quote.
|
|
77
|
+
5. Generate one `htmlWritingBatches` entry at a time.
|
|
78
|
+
6. A single HTML write/edit/apply_patch may add or rewrite at most 5 slide sections.
|
|
79
|
+
7. If a chapter is longer than 5 slides, use the consecutive batch parts returned by `revela_read_deck_plan`.
|
|
80
|
+
8. Patch slides into the foundation between Revela slide markers.
|
|
81
|
+
9. Preserve positive 1-based `data-slide-index` values.
|
|
82
|
+
10. Every slide must have exactly one direct `.slide-canvas` child.
|
|
83
|
+
11. Keep the HTML valid after each write.
|
|
84
|
+
12. After every HTML write, call `revela_run_deck_qa` and repair hard errors before continuing, review, or export.
|
|
81
85
|
|
|
82
86
|
## Outputs
|
|
83
87
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: revela-research
|
|
3
|
-
description: Research
|
|
3
|
+
description: Research from an existing or emerging Revela spec.md and public/workspace sources, using active domain/design guidance to save source-linked findings and hand off deck-plan.md.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Revela Research
|
|
@@ -10,6 +10,7 @@ Use this skill when the user asks to start from a goal, inspect local materials,
|
|
|
10
10
|
## Contract
|
|
11
11
|
|
|
12
12
|
- Research is the source-preparation workflow for Codex Revela.
|
|
13
|
+
- Prefer root-level `spec.md` as the demand contract. If it is missing or the objective is unclear, route to `revela-spec` unless the user gave enough intent to research immediately.
|
|
13
14
|
- Research output is saved under `researches/**/*.md` and, when the user goal is a deck and materials are sufficient, handed off as `deck-plan.md`.
|
|
14
15
|
- Local materials are only usable after direct text review or extracted read-view review.
|
|
15
16
|
- Active/requested domain guidance informs audience, decision framing, claim standards, evidence expectations, objection/risk interpretation, and research-gap priority.
|
|
@@ -21,11 +22,12 @@ Use this skill when the user asks to start from a goal, inspect local materials,
|
|
|
21
22
|
|
|
22
23
|
## Preconditions
|
|
23
24
|
|
|
24
|
-
- The user provides at least one of: objective, topic, audience, decision/action, source materials, or deck intent.
|
|
25
|
+
- The user provides at least one of: existing `spec.md`, objective, topic, audience, decision/action, source materials, or deck intent.
|
|
25
26
|
- If intent is unclear, inspect the workspace first and ask only the smallest missing high-impact questions.
|
|
26
27
|
|
|
27
28
|
## Inputs
|
|
28
29
|
|
|
30
|
+
- Root-level `spec.md` when present.
|
|
29
31
|
- User objective, constraints, audience, decision/action, and language preference when available.
|
|
30
32
|
- Workspace materials, extracted material read views, existing `researches/**/*.md`, existing `deck-plan.md`, and `assets/`.
|
|
31
33
|
- Active or user-requested domain guidance.
|
|
@@ -35,14 +37,15 @@ Use this skill when the user asks to start from a goal, inspect local materials,
|
|
|
35
37
|
|
|
36
38
|
1. Call `revela_domain_list`.
|
|
37
39
|
2. Call `revela_domain_read` for the active domain or user-requested domain.
|
|
38
|
-
3.
|
|
39
|
-
4.
|
|
40
|
-
5.
|
|
41
|
-
6.
|
|
42
|
-
7. Call `
|
|
43
|
-
8.
|
|
44
|
-
9.
|
|
45
|
-
10.
|
|
40
|
+
3. Read `spec.md` when present and use it to scope material review, findings, and deck-plan handoff.
|
|
41
|
+
4. Call `revela_prepare_local_materials`.
|
|
42
|
+
5. For Office/PDF sources, read the provided `allowedReadPath` / `read_view_path`; if missing, call `revela_extract_document_materials`.
|
|
43
|
+
6. Read original text/Markdown/CSV files or extracted read views before treating a material as usable.
|
|
44
|
+
7. Call `revela_record_material_review` for each reviewed Office/PDF source.
|
|
45
|
+
8. Call `revela_check_material_intake` before reporting research readiness.
|
|
46
|
+
9. Use external research only for public facts, user-authorized questions, or gaps not covered by local materials or `spec.md`.
|
|
47
|
+
10. Save useful findings with `revela_research_save`.
|
|
48
|
+
11. For deck goals with sufficient materials, run Planning Handoff:
|
|
46
49
|
- Call `revela_design_list`.
|
|
47
50
|
- Call `revela_design_read` with `section: "rules"` for the active/requested design.
|
|
48
51
|
- Call `revela_design_inventory`.
|
|
@@ -52,17 +55,55 @@ Use this skill when the user asks to start from a goal, inspect local materials,
|
|
|
52
55
|
|
|
53
56
|
## Finding Requirements
|
|
54
57
|
|
|
55
|
-
|
|
58
|
+
Saved research should use stable, reusable Markdown blocks. Evidence findings use:
|
|
59
|
+
|
|
60
|
+
```md
|
|
61
|
+
## Finding: <stable-id>
|
|
62
|
+
|
|
63
|
+
Source: <source name and date when known>
|
|
64
|
+
URL: <source URL when available>
|
|
65
|
+
Location: <page/slide/sheet/section when known>
|
|
66
|
+
Quote/Snippet: <short exact quote or compact snippet; note when no exact quote is available>
|
|
67
|
+
Supports: <narrow support scope or intended slide/source context>
|
|
68
|
+
Evidence boundary: <internal guardrail; what this finding does not prove>
|
|
69
|
+
Strength: <strong|directional|weak|context-only>
|
|
70
|
+
Deck use: <where this belongs in deck planning>
|
|
71
|
+
Display note: <optional short user-facing scope note for captions/source notes>
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Use synthesis blocks to turn multiple findings into decision-relevant interpretation before deck planning:
|
|
75
|
+
|
|
76
|
+
```md
|
|
77
|
+
## Synthesis: <stable-id>
|
|
78
|
+
|
|
79
|
+
Question answered: <research question this synthesis resolves>
|
|
80
|
+
Basis: <finding ids, source files, or URLs used>
|
|
81
|
+
Interpretation: <what the evidence means when read together>
|
|
82
|
+
So what: <why this matters for the audience or decision>
|
|
83
|
+
Decision implication: <what should change in the recommendation, story, or slide argument>
|
|
84
|
+
Confidence: <high|medium|low>
|
|
85
|
+
Alternative reading: <plausible competing interpretation or contradiction>
|
|
86
|
+
Evidence boundary: <internal guardrail; what this synthesis must not overclaim>
|
|
87
|
+
Deck use: <where this belongs in deck planning>
|
|
88
|
+
Display note: <optional short user-facing scope note>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Use `## Analysis: <stable-id>` for user/LLM analytical frameworks, `## Implementation Note: <stable-id>` for render/data/API contracts, `## Asset Lead: <stable-id>` for image/logo/media leads, and `## Gaps` for missing or insufficient source support.
|
|
92
|
+
|
|
93
|
+
Each saved evidence finding should include:
|
|
56
94
|
|
|
57
95
|
- Source URL or workspace path.
|
|
58
96
|
- Quote/snippet or explicit note when no exact quote is available.
|
|
59
97
|
- What it supports.
|
|
60
|
-
-
|
|
61
|
-
-
|
|
98
|
+
- `Evidence boundary` for internal support limits, unsupported scope, or uncertainty.
|
|
99
|
+
- `Deck use` for likely planning placement.
|
|
100
|
+
- Optional `Display note` for short audience-facing scope text.
|
|
62
101
|
- Date checked.
|
|
63
102
|
- Optional image/logo/screenshot leads with known source and license/attribution status.
|
|
64
103
|
|
|
65
|
-
If a finding is context only, label it as context and do not present it as proof.
|
|
104
|
+
If a finding is context only, label it as context and do not present it as proof. Internal boundaries must not be mechanically copied into deck text; use `Display note` for default visible caption/source-note scope, and expose `Evidence boundary` only when needed to avoid a misleading audience conclusion.
|
|
105
|
+
|
|
106
|
+
Do not use raw findings as the default deck argument. For deck goals, synthesize findings first; findings provide evidence basis, while `Synthesis` provides the interpretation, decision implication, and audience takeaway that should drive `deck-plan.md`.
|
|
66
107
|
|
|
67
108
|
## Outputs
|
|
68
109
|
|
|
@@ -82,12 +123,17 @@ Each non-structural slide block must include:
|
|
|
82
123
|
|
|
83
124
|
- Slide title and role when relevant.
|
|
84
125
|
- `#### Content Plan`
|
|
85
|
-
- `####
|
|
126
|
+
- In `#### Content Plan`: `Claim`, `Reasoning`, `Audience takeaway`, `Evidence basis`, and `Boundary handling`.
|
|
127
|
+
- `#### Source Links` for materials, finding-level references when available, assets, URLs, and caveats.
|
|
86
128
|
- `#### Design Plan`
|
|
87
129
|
- Selected layout from design inventory.
|
|
88
130
|
- Component plan using component names from design inventory.
|
|
89
131
|
- Valid slots from the selected layout.
|
|
90
132
|
- Valid component nesting hints, including `box.children` when multiple child components support one semantic idea.
|
|
133
|
+
- Base slide arguments on `Synthesis` blocks when available; use finding text as evidence/source context, not as default body copy.
|
|
134
|
+
- Use `Display note` for short visible caption/source-note scope.
|
|
135
|
+
- Keep `Evidence boundary` internal unless it is required to avoid a misleading audience conclusion.
|
|
136
|
+
- `Analysis` and `Implementation Note` entries may support deck structure or rendering, but must not be cited as external factual proof.
|
|
91
137
|
- Unresolved inputs, source limitations, and user review notes instead of AI-authored caveat/risk judgement.
|
|
92
138
|
|
|
93
139
|
Do not duplicate the same child as both nested and top-level. Do not add source links that were not reviewed or saved during research.
|
|
@@ -95,6 +141,7 @@ Do not duplicate the same child as both nested and top-level. Do not add source
|
|
|
95
141
|
## Must Not
|
|
96
142
|
|
|
97
143
|
- Do not generate `revela-narrative/`.
|
|
144
|
+
- Do not write `spec.md`; route demand changes to `revela-spec`.
|
|
98
145
|
- Do not write `decks/*.html`.
|
|
99
146
|
- Do not bind findings into a Narrative Vault or canonical evidence graph.
|
|
100
147
|
- Do not treat domain guidance as source evidence.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: revela-spec
|
|
3
|
+
description: Discover Revela artifact requirements and write a root-level spec.md before research or deck planning. Use when the user goal, audience, output type, constraints, acceptance criteria, or next workflow step is unclear or not yet captured.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Revela Spec
|
|
7
|
+
|
|
8
|
+
Use this skill to turn user intent and available workspace context into a concise root-level `spec.md` demand contract.
|
|
9
|
+
|
|
10
|
+
## Contract
|
|
11
|
+
|
|
12
|
+
- `spec.md` is the canonical demand and task specification for Codex Revela.
|
|
13
|
+
- The spec answers what to build, for whom, why it matters, what constraints apply, and how success will be judged.
|
|
14
|
+
- Local materials may be inspected only to ground scope and identify available inputs.
|
|
15
|
+
- This skill does not own research findings, deck planning, deck rendering, Review, or Export.
|
|
16
|
+
- Ask the smallest missing high-impact questions after local inspection.
|
|
17
|
+
|
|
18
|
+
## Preconditions
|
|
19
|
+
|
|
20
|
+
- The user provides at least one of: objective, topic, audience, decision/action, source material, desired artifact, or open problem.
|
|
21
|
+
- If no local workspace exists, write the spec from user intent and mark material gaps explicitly.
|
|
22
|
+
|
|
23
|
+
## Inputs
|
|
24
|
+
|
|
25
|
+
- User objective, audience, decision/action, output type, language, style, constraints, and deadline when available.
|
|
26
|
+
- Existing workspace context: local materials, `researches/`, `deck-plan.md`, `decks/*.html`, `assets/`, active design, and active domain.
|
|
27
|
+
|
|
28
|
+
## Workflow
|
|
29
|
+
|
|
30
|
+
1. Call `revela_doctor` to inspect workspace state.
|
|
31
|
+
2. Call `revela_domain_list` to capture active narrative guidance.
|
|
32
|
+
3. Call `revela_design_list` to capture active design guidance.
|
|
33
|
+
4. Call `revela_prepare_local_materials` when local material awareness is needed for scope.
|
|
34
|
+
5. For Office/PDF sources, do not treat them as reviewed evidence unless extracted/read in a later `revela-research` workflow.
|
|
35
|
+
6. Ask only for missing information that materially changes the spec or next step.
|
|
36
|
+
7. Write or update root-level `spec.md`.
|
|
37
|
+
8. End by recommending the next specialist skill:
|
|
38
|
+
- `revela-research` when sources or findings are needed.
|
|
39
|
+
- `revela-make-deck` only when a valid `deck-plan.md` already exists and the spec does not require new source work.
|
|
40
|
+
- `revela-design` or `revela-domain` when the spec requires custom guidance first.
|
|
41
|
+
|
|
42
|
+
## spec.md Requirements
|
|
43
|
+
|
|
44
|
+
`spec.md` must include these sections:
|
|
45
|
+
|
|
46
|
+
- `# Spec`
|
|
47
|
+
- `## Objective`
|
|
48
|
+
- `## Audience`
|
|
49
|
+
- `## Decision Or Action`
|
|
50
|
+
- `## Output`
|
|
51
|
+
- `## Constraints`
|
|
52
|
+
- `## Available Materials`
|
|
53
|
+
- `## Known Gaps`
|
|
54
|
+
- `## Acceptance Criteria`
|
|
55
|
+
- `## Recommended Next Step`
|
|
56
|
+
|
|
57
|
+
Use explicit `Unknown` or `Pending user input` entries instead of inventing requirements.
|
|
58
|
+
|
|
59
|
+
## Outputs
|
|
60
|
+
|
|
61
|
+
- Root-level `spec.md`.
|
|
62
|
+
- A short summary of open questions, source limitations, and the recommended next skill.
|
|
63
|
+
|
|
64
|
+
## Must Not
|
|
65
|
+
|
|
66
|
+
- Do not write `researches/**/*.md`.
|
|
67
|
+
- Do not write `deck-plan.md`.
|
|
68
|
+
- Do not write `decks/*.html`.
|
|
69
|
+
- Do not bind findings into a Narrative Vault or canonical evidence graph.
|
|
70
|
+
- Do not treat domain guidance or unreviewed local files as source evidence.
|
|
71
|
+
- Do not invent requirements, constraints, citations, source paths, URLs, numbers, licenses, or acceptance criteria.
|
package/tools/research-save.ts
CHANGED
|
@@ -6,7 +6,8 @@ export default tool({
|
|
|
6
6
|
"Save a research findings file to the workspace researches/ directory. " +
|
|
7
7
|
"Creates researches/{topic}/{filename}.md with YAML frontmatter. " +
|
|
8
8
|
"Each research axis gets its own file (e.g. 'market-data', 'catl-profile'). " +
|
|
9
|
-
"Content should use
|
|
9
|
+
"Content should use structured blocks such as ## Finding: <stable-id>, ## Synthesis: <stable-id>, ## Analysis: <stable-id>, " +
|
|
10
|
+
"## Implementation Note: <stable-id>, ## Asset Lead: <stable-id>, and ## Gaps.",
|
|
10
11
|
args: {
|
|
11
12
|
topic: tool.schema
|
|
12
13
|
.string()
|
|
@@ -23,10 +24,12 @@ export default tool({
|
|
|
23
24
|
content: tool.schema
|
|
24
25
|
.string()
|
|
25
26
|
.describe(
|
|
26
|
-
"Structured markdown findings.
|
|
27
|
-
"##
|
|
28
|
-
"##
|
|
29
|
-
"##
|
|
27
|
+
"Structured markdown findings. Prefer stable cards:\n" +
|
|
28
|
+
"## Finding: <stable-id> — evidence with Source, URL/path, Quote/Snippet, Supports, Evidence boundary, Strength, Deck use, and optional Display note\n" +
|
|
29
|
+
"## Synthesis: <stable-id> — interpretation across findings with Basis, Interpretation, So what, Decision implication, Confidence, Alternative reading, Evidence boundary, Deck use, and optional Display note\n" +
|
|
30
|
+
"## Analysis: <stable-id> — LLM/user analytical frameworks; not external factual proof\n" +
|
|
31
|
+
"## Implementation Note: <stable-id> — render/data/API contracts; not market evidence\n" +
|
|
32
|
+
"## Asset Lead: <stable-id> — image/logo/media leads with source, license/attribution status, alt text, and deck use\n" +
|
|
30
33
|
"## Gaps — topics not found or insufficiently covered",
|
|
31
34
|
),
|
|
32
35
|
sources: tool.schema
|