@cyber-dash-tech/revela 0.18.10 → 0.18.11
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
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
**English** | [中文](README.zh-CN.md)
|
|
4
4
|
|
|
5
|
-
[](https://www.npmjs.com/package/@cyber-dash-tech/revela) [](LICENSE) [](https://www.npmjs.com/package/@cyber-dash-tech/revela) [](LICENSE) [](tests/) [](https://opencode.ai) [](https://bun.sh)
|
|
6
6
|
|
|
7
7
|
<p align="center">
|
|
8
8
|
<img src="assets/img/logo.png" alt="Revela" width="560" />
|
|
@@ -34,7 +34,7 @@ To install globally, add the same entry to `~/.config/opencode/opencode.json`.
|
|
|
34
34
|
Requirements:
|
|
35
35
|
|
|
36
36
|
- The Codex CLI must be installed and the `codex` command must be available in your shell.
|
|
37
|
-
- Your environment must be able to run `npx`; Revela uses `npx -y @cyber-dash-tech/revela@0.18.
|
|
37
|
+
- Your environment must be able to run `npx`; Revela uses `npx -y @cyber-dash-tech/revela@0.18.11 mcp` to start the MCP server.
|
|
38
38
|
- For interactive Review Apply actions, `codex exec` must also work because the Review UI uses it after saved comments are applied.
|
|
39
39
|
|
|
40
40
|
Optional preflight:
|
|
@@ -55,11 +55,11 @@ npm_config_cache=/tmp/revela-npm-cache bun run smoke:mcp-pack
|
|
|
55
55
|
Install Revela through the Codex Git marketplace:
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
|
-
codex plugin marketplace add https://github.com/cyber-dash-tech/revela --ref v0.18.
|
|
58
|
+
codex plugin marketplace add https://github.com/cyber-dash-tech/revela --ref v0.18.11
|
|
59
59
|
codex plugin add revela@revela
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
The Git marketplace install provides the Codex plugin shell, skills, hooks, and MCP configuration. When Codex starts the Revela MCP server for the first time, it runs `npx -y @cyber-dash-tech/revela@0.18.
|
|
62
|
+
The Git marketplace install provides the Codex plugin shell, skills, hooks, and MCP configuration. When Codex starts the Revela MCP server for the first time, it runs `npx -y @cyber-dash-tech/revela@0.18.11 mcp` so npm can fetch the published package and its dependencies.
|
|
63
63
|
|
|
64
64
|
You do not need to run `bun install` inside the Codex marketplace clone.
|
|
65
65
|
|
package/README.zh-CN.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[English](README.md) | **中文**
|
|
4
4
|
|
|
5
|
-
[](https://www.npmjs.com/package/@cyber-dash-tech/revela) [](LICENSE) [](https://www.npmjs.com/package/@cyber-dash-tech/revela) [](LICENSE) [](tests/) [](https://opencode.ai) [](https://bun.sh)
|
|
6
6
|
|
|
7
7
|
<p align="center">
|
|
8
8
|
<img src="assets/img/logo.png" alt="Revela" width="560" />
|
|
@@ -34,7 +34,7 @@ Revela 可在 [OpenCode](https://opencode.ai) 和 Codex 中使用,把来源材
|
|
|
34
34
|
环境要求:
|
|
35
35
|
|
|
36
36
|
- 需要已安装 Codex CLI,并且 shell 中可以执行 `codex`。
|
|
37
|
-
- 环境中需要可以执行 `npx`;Revela 会用 `npx -y @cyber-dash-tech/revela@0.18.
|
|
37
|
+
- 环境中需要可以执行 `npx`;Revela 会用 `npx -y @cyber-dash-tech/revela@0.18.11 mcp` 启动 MCP server。
|
|
38
38
|
- 如果使用 Review UI 的 Apply,需要 `codex exec` 可用;评论会先保存,点击 Apply 后才执行修复。
|
|
39
39
|
|
|
40
40
|
可选的安装前检查:
|
|
@@ -55,11 +55,11 @@ npm_config_cache=/tmp/revela-npm-cache bun run smoke:mcp-pack
|
|
|
55
55
|
通过 Codex Git marketplace 安装 Revela:
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
|
-
codex plugin marketplace add https://github.com/cyber-dash-tech/revela --ref v0.18.
|
|
58
|
+
codex plugin marketplace add https://github.com/cyber-dash-tech/revela --ref v0.18.11
|
|
59
59
|
codex plugin add revela@revela
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
Git marketplace 安装的是 Codex plugin 壳、skills、hooks 和 MCP 配置。Codex 第一次启动 Revela MCP server 时,会运行 `npx -y @cyber-dash-tech/revela@0.18.
|
|
62
|
+
Git marketplace 安装的是 Codex plugin 壳、skills、hooks 和 MCP 配置。Codex 第一次启动 Revela MCP server 时,会运行 `npx -y @cyber-dash-tech/revela@0.18.11 mcp`,由 npm 获取已发布 package 及其 dependencies。
|
|
63
63
|
|
|
64
64
|
不需要在 Codex marketplace clone 里运行 `bun install`。
|
|
65
65
|
|
package/lib/design/designs.ts
CHANGED
|
@@ -656,9 +656,9 @@ function writeDesignAssets(targetDir: string, assets?: DesignPackageAssetInput[]
|
|
|
656
656
|
|
|
657
657
|
function normalizeAssetPath(pathInput: string): string {
|
|
658
658
|
const normalized = pathInput.replace(/\\/g, "/").replace(/^\.\/+/, "")
|
|
659
|
-
if (!normalized.startsWith("assets/")) throw new Error(`Design asset
|
|
659
|
+
if (!normalized.startsWith("assets/")) throw new Error(`Design asset path must be located under assets/: ${pathInput}`)
|
|
660
660
|
if (normalized.includes("\0") || normalized.startsWith("/") || normalized.split("/").some((part) => !part || part === "." || part === "..")) {
|
|
661
|
-
throw new Error(`
|
|
661
|
+
throw new Error(`Design asset path must be located under assets/ and must not contain absolute paths, empty segments, '.', '..', or NUL characters: ${pathInput}`)
|
|
662
662
|
}
|
|
663
663
|
return normalized
|
|
664
664
|
}
|
package/package.json
CHANGED
package/plugins/revela/.mcp.json
CHANGED
|
@@ -526,11 +526,11 @@ function arrayObjectProp(description: string) {
|
|
|
526
526
|
function designAssetsProp() {
|
|
527
527
|
return {
|
|
528
528
|
type: "array",
|
|
529
|
-
description: "Optional design-owned assets to
|
|
529
|
+
description: "Optional design-owned assets for user-uploaded or local materials to archive under assets/**. Each item must use path plus content, contentBase64, or sourcePath.",
|
|
530
530
|
items: {
|
|
531
531
|
type: "object",
|
|
532
532
|
properties: {
|
|
533
|
-
path: { type: "string", description: "Package-relative asset path. Must start with assets/." },
|
|
533
|
+
path: { type: "string", description: "Package-relative asset path for uploaded or local design material. Must start with assets/." },
|
|
534
534
|
content: { type: "string", description: "UTF-8 text asset content." },
|
|
535
535
|
contentBase64: { type: "string", description: "Base64-encoded binary asset content." },
|
|
536
536
|
sourcePath: { type: "string", description: "Local file path to copy into the design asset." },
|
|
@@ -11,6 +11,8 @@ Use this skill when the user asks to create, customize, edit, validate, package,
|
|
|
11
11
|
|
|
12
12
|
- Designs define deck visual systems: rules, foundation, layouts, components, chart rules, and preview coverage.
|
|
13
13
|
- Designs may include package-owned `assets/**` such as cover or closing backgrounds; design tools surface these as design elements, not source evidence.
|
|
14
|
+
- When the user uploads or provides logo, cover, closing, background, texture, brand image, or similar design material, store it inside the design package with `revela_design_draft_create.assets`; use paths under `assets/**` only.
|
|
15
|
+
- Generated `preview.html` must actually reference uploaded design assets with package-relative `assets/...` paths rather than describing them only in text.
|
|
14
16
|
- Default authoring is workspace draft first, then validate, then install only when appropriate.
|
|
15
17
|
- Direct user-level creation is reserved for explicit create/install-now requests.
|
|
16
18
|
- Shareable design archives are `.tar` or `.tar.gz`; install archives only from trusted local paths.
|
|
@@ -30,7 +32,7 @@ For new or edited designs:
|
|
|
30
32
|
1. Call `revela_design_list`.
|
|
31
33
|
2. Read the requested base design or active design with `revela_design_read`.
|
|
32
34
|
3. Draft complete `DESIGN.md` and complete `preview.html` content.
|
|
33
|
-
4. Call `revela_design_draft_create
|
|
35
|
+
4. Call `revela_design_draft_create`; when uploaded or local design material exists, pass `assets: [{ path: "assets/...", contentBase64|content|sourcePath }]` so the files are written into the draft package.
|
|
34
36
|
5. Call `revela_design_draft_validate`.
|
|
35
37
|
6. If validation fails, revise the draft content and repeat draft create/validate.
|
|
36
38
|
7. Call `revela_design_draft_install` only after the draft validates and the user intent is to install it.
|
|
@@ -52,7 +54,9 @@ Use `revela_design_create` only when the user explicitly requests direct local c
|
|
|
52
54
|
- `DESIGN.md` must include valid frontmatter and complete design marker sections.
|
|
53
55
|
- Include design rules, foundation guidance, at least one layout, and at least one component.
|
|
54
56
|
- Optional assets must live under `assets/**`; reference them as package-relative paths like `assets/cover-background.png`.
|
|
57
|
+
- `DESIGN.md` may reference package assets in rules, layouts, or components with `assets/...`; do not reference workspace `assets/` media manifest entries for design-owned visuals.
|
|
55
58
|
- `preview.html` must use the fixed Revela preview canvas contract and visibly preview the design.
|
|
59
|
+
- If design assets are present, `preview.html` must visibly use the saved `assets/...` files, for example a cover hero background or logo image.
|
|
56
60
|
- Preview must include cover and closing examples and showcase every component.
|
|
57
61
|
- Preserve source inspiration and limitations explicitly; do not copy copyrighted design text or assets into the package.
|
|
58
62
|
|
|
@@ -61,6 +65,7 @@ Use `revela_design_create` only when the user explicitly requests direct local c
|
|
|
61
65
|
- Design draft path/status or installed design name.
|
|
62
66
|
- Archive path/status when packaging or installing a shareable design.
|
|
63
67
|
- Asset metadata surfaced by read/inventory tools when `assets/**` exists.
|
|
68
|
+
- Saved asset paths and intended uses, for example `assets/cover-background.png -> cover hero background`.
|
|
64
69
|
- Validation result and any remaining diagnostics.
|
|
65
70
|
- Whether the design was activated.
|
|
66
71
|
- Next step, usually `revela-research` for planning with the design or `revela-make-deck` when a valid `deck-plan.md` already exists.
|