Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 7 additions & 11 deletions .agents/skills/argus/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ Resolve values in the existing order:
&& [ -n "${REALSEE_REGION:-}" ] && echo present || echo missing
```

2. If `~/.realsee/credentials` already exists, load it into the shell and probe presence. Never display the file:
2. If configuration is incomplete and `~/.realsee/credentials` already exists, load it into the shell and probe presence. Never display the file:

```bash
[ -f ~/.realsee/credentials ] && set -a && . ~/.realsee/credentials && set +a; \
Expand Down Expand Up @@ -77,11 +77,10 @@ The downloader publishes the directory only after every file passes its manifest

Before starting, ensure the user has selected the files and consented to sending them to Realsee for remote processing. An explicit request to upload those files is sufficient; file selection alone is not consent. If either is missing, ask one question stating that the selected files will leave the machine. Reuse existing consent for the same input and scope. Do not ask a redundant second confirmation.

For repeated images:
Run lifecycle commands in a shell with credentials resolved in step 2. For repeated images:

```bash
set -a; . ~/.realsee/credentials; set +a; \
node <skillDir>/scripts/run-argus.mjs start \
node <skillDir>/scripts/run-argus.mjs start \
--image "/absolute/path/a.jpg" \
--image "/absolute/path/b.webp" \
--workspace "/absolute/workspace-root" \
Expand All @@ -91,14 +90,13 @@ set -a; . ~/.realsee/credentials; set +a; \
For an existing ZIP:

```bash
set -a; . ~/.realsee/credentials; set +a; \
node <skillDir>/scripts/run-argus.mjs start \
node <skillDir>/scripts/run-argus.mjs start \
--zip "/absolute/path/input.zip" \
--workspace "/absolute/workspace-root" \
--yes --json
```

If credentials already exist in the inherited shell, omit the `source` prefix. Capture `workspace_dir` from the JSON response; it is the durable run handle for later commands.
When starting a new shell for `status` or `collect`, resolve credentials there before invoking the command. Capture `workspace_dir` from the JSON response; it is the durable run handle for later commands.

`start` validates and packages locally, uploads one ZIP, submits once, persists `task_code`, and returns. It does not poll in the background. Never automatically rerun `start` after `submission_unknown`: the submit operation is not idempotent and a blind retry may create a duplicate task.

Expand All @@ -107,8 +105,7 @@ If credentials already exist in the inherited shell, omit the `source` prefix. C
Run one status query:

```bash
set -a; . ~/.realsee/credentials; set +a; \
node <skillDir>/scripts/run-argus.mjs status \
node <skillDir>/scripts/run-argus.mjs status \
--workspace "<workspace_dir>" --json
```

Expand All @@ -119,8 +116,7 @@ Interpret `task_status` as `queued`, `processing`, `succeeded`, or `failed`. Whe
When the task succeeds, run:

```bash
set -a; . ~/.realsee/credentials; set +a; \
node <skillDir>/scripts/run-argus.mjs collect \
node <skillDir>/scripts/run-argus.mjs collect \
--workspace "<workspace_dir>" --json
```

Expand Down
5 changes: 3 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,12 @@ body:
id: environment
attributes:
label: Environment
description: Include OS, Node.js version, npm version, and relevant sanitized configuration names.
description: Include OS and agent host; for Argus include Node.js/npm versions and sanitized configuration names, or for local reconstruction include the Blender version.
placeholder: |
OS:
Node:
npm:
npm (Argus):
Blender (local reconstruction):
REALSEE_REGION:
validations:
required: true
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ body:
id: validation
attributes:
label: Runtime context
description: Explain whether this affects async mode, live mode, local installation, or agent runtime usage.
description: Explain whether this affects Argus start/status/collect, local Blender reconstruction, installation, or agent runtime usage.
validations:
required: true
- type: checkboxes
Expand Down
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@

- [ ] The change is scoped to one problem.
- [ ] Documentation reflects changed commands, configuration, release gates, or skill usage.
- [ ] Source skill changes were rebuilt into `plugins/realsee-skills/` when needed.
- [ ] Source skill changes were rebuilt into `plugins/realsee-skills/` and, for Argus, `arkclaw/argus/` when needed.
- [ ] No secrets, generated credentials, account identifiers, private URLs, GLB files, or temporary workspaces are committed.
- [ ] This change is a maintainer-controlled update, not an unsolicited roadmap or product feature proposal.
24 changes: 12 additions & 12 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[English](ARCHITECTURE.md) | [简体中文](ARCHITECTURE.zh-CN.md)

Argus Skill 2.0 has one canonical source, an explicit persisted lifecycle, and generated packages for each supported agent host.
Realsee Skills keeps canonical skill sources under `.agents/skills/` and generates host-specific distribution packages. Argus provides a Node.js remote-processing runtime; Blender reconstruction is a local instruction skill.

The additional instruction skill `.agents/skills/realsee-blender-reconstruction/` handles existing exports in local Blender. Claude packaging discovers canonical skill directories and checks byte consistency for all of them; it does not require an npm runtime for instruction-only skills. The Argus lifecycle and Arkclaw overlays below remain Argus-specific.

Expand All @@ -22,6 +22,11 @@ The additional instruction skill `.agents/skills/realsee-blender-reconstruction/
├── argus-output.schema.json JSON Schema 2020-12 output union
└── migration-v2*.md Bilingual 1.x migration guide

.agents/skills/realsee-blender-reconstruction/ Canonical local modeling instructions
├── SKILL.md / SKILL.zh-CN.md Agent workflow
├── README.md / README.zh-CN.md User documentation
└── references/ Registration, modeling, performance, acceptance, extensions

plugins/realsee-skills/ Generated Claude plugin copy
arkclaw/argus/ Generated Arkclaw copy with deterministic CN-only overlays
release-channel.json Release maturity and version metadata
Expand Down Expand Up @@ -84,24 +89,19 @@ The file-token response is an in-memory upload lease. `bucket + region + prefix`
## Distribution flow

```text
.agents/skills/argus
canonical source
┌──────────────┼──────────────┐
│ │ │
▼ ▼ ▼
Claude plugin copy Codex / npx Arkclaw copy
byte-identical direct source canonical bytes +
CN-only overlays
.agents/skills/argus/ -> Claude plugin / npx skills / Codex installer
-> Arkclaw (CN-only overlays)
.agents/skills/realsee-blender-reconstruction/ -> Claude plugin / npx skills
```

`npm run rebuild` regenerates Claude and Arkclaw packages and checks them against canonical bytes. Deterministic Arkclaw overlays force `REALSEE_REGION=cn` in `scripts/run-argus.mjs`, restrict `scripts/download-examples.mjs` to CN, and make the generated Skill, README, and example guides state the same limitation. All remaining files must match canonical source byte-for-byte.

## Validation and release

`npm run ci` runs secret scanning, bilingual-doc checks, AI-index checks, repository-boundary checks, Skill validation, distribution regeneration and consistency checks, release metadata validation, and the full Skill test suite.
`npm run ci` runs secret scanning, bilingual-doc checks, AI-index checks, repository-boundary checks, Skill validation, distribution regeneration and consistency checks, release metadata validation, repository tests (`test:repo`), and Argus runtime tests (`test:skill`). These checks validate packaging and contracts; they do not execute a Blender reconstruction or a live Argus task.

Version `v1.0.2` remains the frozen legacy line. Version 2.0 follows this promotion order: publish uploader 0.1.1, cut `v2.0.0-rc.3`, complete real CN and global E2E (including partial/error collection), then mark `v2.0.0` stable. Until both regions pass, release metadata remains preview/development with a pending stable gate.
`release-channel.json` currently records Argus 2.0.0 as stable with a passed stable gate. It records Argus release readiness, not Blender acceptance. `v1.0.2` remains the frozen legacy line; the `v2.0.0` tag contains Argus only. See the [release guide](docs/release.md) for current gate requirements and the historical 2.0 promotion sequence.

## Generated files

Do not edit `plugins/realsee-skills/**` or `arkclaw/argus/**` by hand. Edit `.agents/skills/argus/**` and the narrow Arkclaw overlay generator, then run `npm run rebuild`.
Do not edit `plugins/realsee-skills/**` or `arkclaw/argus/**` by hand. Edit the relevant source under `.agents/skills/**`; change the Arkclaw overlay generator only for Argus-specific distribution differences. Then run `npm run rebuild`.
24 changes: 12 additions & 12 deletions ARCHITECTURE.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[English](ARCHITECTURE.md) | 简体中文

Argus Skill 2.0 使用一个 canonical source、显式持久化生命周期,以及面向不同 agent host 的生成包。
Realsee Skills 将所有规范 skill 源码保存在 `.agents/skills/`,并生成面向各宿主的分发包。Argus 提供 Node.js 远程处理运行时;Blender 重建是本地指令型 skill。

新增的指令 skill `.agents/skills/realsee-blender-reconstruction/` 在本地 Blender 中处理已有导出。Claude 打包发现规范 skill 目录,并逐个检查字节一致性;纯指令 skill 不要求 npm 运行时。下文 Argus 生命周期和 Arkclaw overlay 仍仅适用于 Argus。

Expand All @@ -22,6 +22,11 @@ Argus Skill 2.0 使用一个 canonical source、显式持久化生命周期,
├── argus-output.schema.json JSON Schema 2020-12 输出联合
└── migration-v2*.md 双语 1.x 迁移指南

.agents/skills/realsee-blender-reconstruction/ 规范本地建模指令
├── SKILL.md / SKILL.zh-CN.md Agent 工作流
├── README.md / README.zh-CN.md 用户文档
└── references/ 配准、建模、性能、验收与按需扩展

plugins/realsee-skills/ 生成的 Claude plugin copy
arkclaw/argus/ 带确定性 CN-only overlay 的 Arkclaw copy
release-channel.json 发布成熟度与版本元数据
Expand Down Expand Up @@ -84,24 +89,19 @@ Gateway 基础地址与凭证/region 合同不变,只替换 Argus 接口:
## 分发流

```text
.agents/skills/argus
canonical source
┌──────────────┼──────────────┐
│ │ │
▼ ▼ ▼
Claude plugin copy Codex / npx Arkclaw copy
字节一致 直接用 source canonical bytes +
CN-only overlay
.agents/skills/argus/ -> Claude plugin / npx skills / Codex installer
-> Arkclaw (CN-only overlays)
.agents/skills/realsee-blender-reconstruction/ -> Claude plugin / npx skills
```

`npm run rebuild` 重新生成 Claude 与 Arkclaw 包,并与 canonical bytes 比较。确定性的 Arkclaw overlay 会在 `scripts/run-argus.mjs` 中强制 `REALSEE_REGION=cn`、把 `scripts/download-examples.mjs` 限制为 CN,并让生成后的 Skill、README 与示例指南明确同一限制;其余文件必须与 canonical source 字节级一致。

## 校验与发布

`npm run ci` 依次运行 secret 扫描、双语文档、AI 索引、仓库边界、Skill 校验、分发生成与一致性检查、发布元数据校验和完整 Skill 测试。
`npm run ci` 依次运行 secret 扫描、双语文档、AI 索引、仓库边界、Skill 校验、分发生成与一致性检查、发布元数据校验、仓库测试(`test:repo`)和 Argus 运行时测试(`test:skill`)。这些检查验证打包与合同,不执行 Blender 重建或真实 Argus 任务。

`v1.0.2` 保持为冻结的旧版本。2.0 按以下顺序发布:先发布 uploader 0.1.1,再切 `v2.0.0-rc.3`,完成 CN/Global 真机 E2E(含 partial/error 收集),最后把 `v2.0.0` 标记为 stable。两区都通过前,release metadata 保持 preview/development,stable gate 为 pending。
`release-channel.json` 当前记录 Argus 2.0.0 为 stable,stable gate 为 passed;它记录 Argus 发布就绪状态,不代表 Blender 验收。`v1.0.2` 保持为冻结旧版本,`v2.0.0` 标签仅包含 Argus。当前门禁要求与首次 2.0 发布历史见[发布指南](docs/zh-CN/release.md)。

## 生成文件

不要手工修改 `plugins/realsee-skills/**` 或 `arkclaw/argus/**`。修改 `.agents/skills/argus/**` 和窄范围 Arkclaw overlay generator,然后运行 `npm run rebuild`。
不要手工修改 `plugins/realsee-skills/**` 或 `arkclaw/argus/**`。修改 `.agents/skills/**` 下对应源码;只有 Argus 分发差异涉及 overlay 时才修改 Arkclaw 生成器,然后运行 `npm run rebuild`。
10 changes: 6 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ Realsee Skills is published to expose supported skill capabilities. External pul
## Before You Start

1. Read the relevant skill README under `.agents/skills/`.
2. Check `release-channel.json` for the current skill state.
3. Avoid committing generated outputs, credentials, account identifiers, private URLs, `.env` files, downloaded Argus archives, extracted artifacts, or temporary workspace files.
2. Check `release-channel.json` for Argus release readiness and the selected skill README for its scope. The release metadata does not track Blender scene acceptance.
3. Avoid committing private runtime outputs, credentials, account identifiers, private URLs, `.env` files, downloaded Argus archives, extracted artifacts, or temporary workspace files.

## Maintainer Development Flow

Expand All @@ -32,6 +32,8 @@ npm run validate:docs
npm run ci
```

For Blender instruction changes, run `npm run validate:skills`, `npm run rebuild`, and `npm run ci`. When changing modeling behavior, verify the affected workflow using local evidence; documentation validation alone is not a Blender execution test. Keep English and Chinese instructions aligned. Generated Claude and Arkclaw distribution files are tracked and must be included when rebuilding changes them.

## Pull Request Checklist

- The change is scoped to one problem.
Expand All @@ -45,7 +47,7 @@ npm run ci
New skill packages are added by Realsee maintainers after the capability, API contract, and release gate are approved. A new skill package should include:

- `SKILL.md` with accurate frontmatter
- A skill `README.md`
- Tests with injectable fakes for upload, gateway, and download paths
- Bilingual user documentation (`README.md` and `README.zh-CN.md`) and a bundled `LICENSE`
- Tests with injectable fakes for upload, gateway, and download paths when a runtime uses those services; instruction-only skills need task-relevant verification instead
- References for external API contracts when remote services are involved
- Explicit consent language for workflows that upload local files
10 changes: 6 additions & 4 deletions CONTRIBUTING.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ Realsee Skills 用于公开受支持的 skill 能力。外部 pull request 不
## 开始之前

1. 阅读 `.agents/skills/` 下相关 skill 的 README。
2. 检查 `release-channel.json` 中的当前 skill 状态。
3. 避免提交生成产物、凭证、账号标识、私有 URL、`.env` 文件、下载的 Argus 压缩包、解压产物或临时 workspace 文件。
2. 检查 `release-channel.json` 中的 Argus 发布就绪状态,以及所选 skill README 的适用范围;发布元数据不记录 Blender 场景验收。
3. 避免提交私有运行产物、凭证、账号标识、私有 URL、`.env` 文件、下载的 Argus 压缩包、解压产物或临时 workspace 文件。

## 维护者开发流程

Expand All @@ -32,6 +32,8 @@ npm run validate:docs
npm run ci
```

修改 Blender 指令时,运行 `npm run validate:skills`、`npm run rebuild` 和 `npm run ci`。改变建模行为时,使用本地资料验证受影响的流程;文档校验不等于 Blender 执行测试。保持中英文指令一致。Claude 和 Arkclaw 的生成分发文件受版本控制,重建产生变化时应一并纳入修改。

## Pull Request 检查项

- 改动只解决一个明确问题。
Expand All @@ -45,7 +47,7 @@ npm run ci
新的 skill 包由 Realsee 维护者在能力、API 合同和发布门禁获批后加入。新的 skill 包应包含:

- 带准确 frontmatter 的 `SKILL.md`
- skill `README.md`
- 对 upload、gateway、download 路径可注入假对象的测试
- 双语用户文档(`README.md` 和 `README.zh-CN.md`)及随附 `LICENSE`
- 运行时涉及 upload、gateway、download 服务时,对相应路径提供可注入 fake 的测试;纯指令 skill 使用与实际任务相关的验证
- 涉及远程服务时的外部 API 合同引用
- 对上传本地文件流程的明确同意说明
Loading