Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
677951d
feat: update catalogue (#286)
Woodii1998 Apr 28, 2025
8a4ceb6
Add Translations for Custom Panels and some broken links fix (#288)
yujingz May 12, 2025
5670794
Fix/broken links (#289)
yujingz May 12, 2025
d3d380b
New user-case: online-simulation-test (#291)
Fredzengfafa May 21, 2025
e6a2caf
Data Record Solution (#293)
Fredzengfafa May 26, 2025
aaddba0
renaming for beterr linuix support
yujingz May 26, 2025
70c7c83
Update embodied intelligence data collection solution documentation a…
yujingz May 26, 2025
a161dfd
Heterogeneous Robot Data Factory Docs 1.0 (#296)
Fredzengfafa Jun 3, 2025
3fa0afc
Better Links (#297)
yujingz Jun 3, 2025
0b6c126
Faster Builds (#298)
yujingz Jun 12, 2025
3787142
update changelog
heqi Jun 13, 2025
caec679
fix changelog
heqi Jun 13, 2025
2707ccd
updated changelog,device,rules (#299)
xiranyu01 Jun 13, 2025
9ec465f
enable device and homepage catalogue (#301)
heqi Jun 13, 2025
1ad61ec
Merge branch 'master' into dev
heqi Jun 13, 2025
98cba5c
Merge branch 'master' into dev
heqi Jun 19, 2025
93c3129
新增设备采集器文档中的模板语法使用部分,详细介绍了模板语法的概述、基本语法、支持的变量及时间格式化选项,提升了文档的可读性和实用性。 (#…
Woodii1998 Jun 19, 2025
cfe97f1
Add simulation translation (#305)
yujingz Jun 23, 2025
6cbf9a6
Merge branch 'master' into dev
yujingz Jun 27, 2025
406d760
Doc: update device config info (#308)
renyijiu Jun 27, 2025
44543c7
Feat/project resource (#307)
yujingz Jun 28, 2025
7c5c282
merge upstream changes
yujingz Jul 4, 2025
335653d
Feat/add token runtime info (#313)
yujingz Jul 8, 2025
755de86
add view client information hashtag (#315)
heqi Jul 8, 2025
aad3baf
colistener collect (#312)
heqi Jul 8, 2025
1a29b46
Changelog (#316)
xiranyu01 Jul 9, 2025
15b99a0
merge upstream
yujingz Jul 15, 2025
5d9e479
Update coCLI latest changes (#319)
yujingz Jul 24, 2025
84829f2
Create records by convention in Action (#321)
yujingz Jul 24, 2025
5d2f0b0
feat: add cocli category
heqi Jul 29, 2025
f260fd7
updated devcie & collect & some pages (#323)
xiranyu01 Jul 30, 2025
1a0396f
update catalogue; uninstall device command (#324)
heqi Jul 31, 2025
f5d4d5e
25.31 changelog (#325)
xiranyu01 Jul 31, 2025
fca4cc5
Update: Open API link in docusaurus.config.js to fix to new S3 storag…
Woodii1998 Aug 11, 2025
63bbde8
Merge branch 'master' into dev
heqi Aug 11, 2025
f3f3967
Feat/data collection (#331)
xiranyu01 Aug 19, 2025
d45bb57
Feat/changelog (#332)
xiranyu01 Aug 19, 2025
f359228
Merge branch 'master' into dev
heqi Aug 19, 2025
58d9ff7
add information of service definition. (#318)
Fredzengfafa Sep 2, 2025
d9d3528
fix: openapi url (#336)
heqi Sep 6, 2025
191b7bf
Merge branch 'master' into dev
heqi Sep 9, 2025
aceee99
Updated the changelog, S3, raw message panel, visual timeline, and pe…
xiranyu01 Sep 15, 2025
9bc9004
add user script (#340)
xiranyu01 Sep 24, 2025
38df2a6
Merge branch 'master' into dev
heqi Sep 25, 2025
991b5cd
changelog (#344)
xiranyu01 Oct 17, 2025
eec3173
Merge branch 'master' into dev
heqi Oct 17, 2025
a3a8f4d
Feature/new layout (#339)
Jacqui1031 Oct 20, 2025
9f5222e
Merge branch 'master' into dev
heqi Oct 20, 2025
2ad5488
feat: add changelog entries for v25.45.0 (#347)
xiranyu01 Nov 5, 2025
2482f52
Update CLI Docs (#349)
yujingz Nov 5, 2025
d3de117
Jacqui record update (#351)
Jacqui1031 Nov 12, 2025
26e8775
feat: add Sprint48 changelog entries for v25.48.0 (#353)
xiranyu01 Nov 25, 2025
75850ab
Merge branch 'master' into dev
heqi Nov 25, 2025
7f44a04
fix: update cli documents (#355)
birdstorm Dec 15, 2025
f3cf896
fix: sidebar category others i18n (#356)
heqi Dec 15, 2025
59ed9e1
Merge branch 'master' into dev
heqi Dec 16, 2025
09314a3
add extensions install docs (#360)
Woodii1998 Jan 13, 2026
de0a1f8
Device unistall (#358)
xiranyu01 Jan 13, 2026
d1c7097
Merge branch 'master' into dev
heqi Jan 13, 2026
6c09923
fix: cocli should use list all in scripts (#362)
birdstorm Jan 21, 2026
c04f868
feat: add CompressedVideo message schema documentation (#363)
Woodii1998 Mar 3, 2026
33a02b1
feat: add changelog entries for versions 26.10.0, 26.6.0, 26.3.0, and…
xiranyu01 Mar 3, 2026
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
4 changes: 2 additions & 2 deletions docs/developers/cocli/3-cli-action-operations.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@ fb1bb37a-7b27-11ee-b962-0242ac120002 system ros2-mcap-converter

```bash
# 使用 JSON 输出获取记录和动作, 比如要在第一个记录中执行 coScene-test 动作
RECORD_NAME=$(cocli record list -o json | jq -r '.records[0].name')
ACTION_NAME=$(cocli action list -o json | jq -r '.actions[] | select(.spec.name | contains("coScene-test")) | .name')
RECORD_NAME=$(cocli record list --page-size 10 -o json | jq -r '.records[0].name')
ACTION_NAME=$(cocli action list --all -o json | jq -r '.actions[] | select(.spec.name | contains("coScene-test")) | .name')
cocli action run $ACTION_NAME $RECORD_NAME
```

Expand Down
12 changes: 6 additions & 6 deletions docs/developers/cocli/97-cli-common-batch-tasks.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ sidebar_position: 4

```bash
# 使用 JSON 输出和 jq 提取记录 ID
cocli record list -o json | jq -r '.records[].name' | \
cocli record list --all -o json | jq -r '.records[].name' | \
xargs -I {} cocli record upload {} ./FILE_FLAG
```

Expand Down Expand Up @@ -52,7 +52,7 @@ done

```bash
# 使用 JSON 输出获取项目中的所有记录,遍历并提供记录的完整资源名称
cocli record list -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --all -o json | jq -r '.records[].name' | while read -r record_name; do
# 使用 $record_name 进行后续的批量操作
# 如需提取 record ID,可以使用: record_id=$(basename "$record_name")
done
Expand All @@ -63,7 +63,7 @@ done
### 找出所有不含任何文件的空记录

```bash
cocli record list -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --all -o json | jq -r '.records[].name' | while read -r record_name; do
# 获取记录中的文件数量
file_count=$(cocli record file list "$record_name" -o json 2>/dev/null | jq '.files | length')

Expand All @@ -79,7 +79,7 @@ done
### 给所有空记录打上标签

```bash
cocli record list -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --all -o json | jq -r '.records[].name' | while read -r record_name; do
# 获取记录中的文件数量
file_count=$(cocli record file list "$record_name" -o json 2>/dev/null | jq '.files | length')

Expand All @@ -95,7 +95,7 @@ done

```bash
# 使用 --labels 参数过滤特定标签的记录
cocli record list --labels test-label -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --labels test-label --all -o json | jq -r '.records[].name' | while read -r record_name; do
# 下载所有有 test-label 标签的记录
cocli record download "$record_name" download-folder
done
Expand All @@ -108,7 +108,7 @@ done
:::

```bash
cocli record list -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --all -o json | jq -r '.records[].name' | while read -r record_name; do
# 获取记录中的文件数量
file_count=$(cocli record file list "$record_name" -o json 2>/dev/null | jq '.files | length')

Expand Down
4 changes: 2 additions & 2 deletions docs/device/5-device-collect.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,10 @@ sidebar_position: 5
- 注:部分文件系统可能无法获取文件创建时间,仅根据最后修改时间判断文件是否在时间范围内
- **时间范围采集路径**
- 输入需要根据时间范围进行采集的绝对文件路径,如:`/home/bag/`,系统将采集该路径下(包括子文件夹)所有符合时间范围的文件
- 建议在[组织设备配置](./4-device-collector.md#数据收集器设置collector)中,将该路径设置为默认采集路径`collect_dirs`,以便后续无需手动输入
- 建议在[组织设备配置](./4-device-collector.md#device-collector-format)中,将该路径设置为默认采集路径`collect_dirs`,以便后续无需手动输入
- **具体附加文件路径**
- 输入需要额外采集的绝对文件路径(文件夹/文件),与时间范围无关,如:`/home/map/`、`/home/device/config.yaml`,系统将采集整个文件夹中的文件或指定的文件
- 建议在[组织设备配置](./4-device-collector.md#数据收集器设置collector)中,将该路径设置为默认采集路径`additional_files`,以便后续无需手动输入
- 建议在[组织设备配置](./4-device-collector.md#device-collector-format)中,将该路径设置为默认采集路径`additional_files`,以便后续无需手动输入
- **采集名称&记录名称**
- 采集名称:用于标识该次采集
- 记录名称:用于标识该次采集将数据保存到的记录
Expand Down
10 changes: 10 additions & 0 deletions docs/viz/4-panel/5-image-panel.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,16 @@ Linux:
| ROS 2 | [sensor_msgs/CompressedImage](https://github.com/ros2/common_interfaces/blob/master/sensor_msgs/msg/CompressedImage.msg) |
| 自定义 | [foxglove.CompressedImage](../message-schemas/compressed-image) |

### `CompressedVideo`

用于压缩视频流。编码格式支持 `h264`、`h265`(HEVC)。由于硬件与专利限制,不同平台的支持情况可能不同。

| 框架 | 消息类型 |
| ------ | -------------------------------------------------------------------------------------------------------------------- |
| ROS 1 | [foxglove_msgs/CompressedVideo](https://github.com/foxglove/foxglove-sdk/blob/main/schemas/ros1/CompressedVideo.msg) |
| ROS 2 | [foxglove_msgs/CompressedVideo](https://github.com/foxglove/foxglove-sdk/blob/main/schemas/ros2/CompressedVideo.msg) |
| 自定义 | [foxglove.CompressedVideo](../message-schemas/compressed-video) |

### `CameraCalibration`

提供可选的相机校准数据以在图像面板中渲染 3D 实体,或在 3D 面板中渲染图像。校准数据不是必需的,因为 ImageAnnotations 使用像素坐标。
Expand Down
5 changes: 1 addition & 4 deletions docs/viz/8-extensions/2-local-development.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,12 @@ sidebar_position: 2

## 安装

要将您的扩展构建并安装到本地 coStudio 扩展文件夹中,请运行 `npm run local-install`。这将在您的用户主目录下创建一个文件夹(例如 `~/.coStudio/extensions/unknown.myExtensionName-0.0.0`),其中包含您编译好的扩展。
对于本地开发者,如果需要将您开发中的扩展构建并安装到本地 coStudio 扩展文件夹中,请运行 `npm run local-install`。这将在您的用户主目录下创建一个文件夹(例如 `~/.coStudio/extensions/unknown.myExtensionName-0.0.0`),其中包含您编译好的扩展。

打开最新版本的 coStudio 桌面应用。现在,您应该能在应用设置中的已安装扩展列表中看到 `myExtensionName`。

安装后,您应该能够打开"添加面板"菜单,并看到一个名为 `ExamplePanel` 的选项。您已成功加载了您的第一个可视化扩展!

(🏗️施工中,预计 2025 年 5 月上线)
要在 Web 应用上安装本地扩展,您必须首先打包您的扩展,然后将 `.coe` 文件拖放到打开的可视化页面上。您也可以通过拖放或双击在桌面应用中打开 `.coe` 文件。

## 开发

每次对扩展进行更改时,您都必须运行 `npm run local-install` 将其构建到本地扩展文件夹中。
Expand Down
61 changes: 61 additions & 0 deletions docs/viz/8-extensions/extensions-install.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
sidebar_position: 2.1
---

# 扩展安装

对于普通用户,目前支持三种安装方式:
- 引用本地扩展文件安装
- 通过远程 URL 引用远程扩展文件安装
- 通过项目资源进行安装

## 引用本地扩展文件安装

您可以通过以下两种方式安装本地扩展文件:

1. **拖拽安装**:直接将扩展文件(`.coe` 格式)拖拽到可视化页面中即可完成安装。

2. **菜单安装**:点击右侧插件面板中的加号图标,选择【从本地安装】,然后选择对应的本地扩展文件进行安装。

<img src={require('./img/local-install-extensions.png').default} alt="本地安装扩展" style={{width: '50%'}} />

## 通过远程 URL 引用远程扩展文件安装

通过远程 URL 安装扩展时,您需要提供扩展文件的网络地址。

### 协议支持

- **Web 应用**:仅支持 `https` 协议的远程 URL
- **桌面应用**:支持 `http` 和 `https` 协议的远程 URL

### 安装步骤

1. 点击右侧插件面板中的加号图标
2. 选择【通过 URL 安装】
3. 在弹窗中输入远程扩展文件的 URL 地址
4. 点击确认完成安装

:::tip 注意事项
使用远程 URL 安装时,请确保文件服务器已配置 CORS(跨域资源共享),允许刻行时空平台访问该文件。
:::

<div style={{display: 'flex', gap: '16px', marginBottom: '16px'}}>
<img src={require('./img/remote-install-extensions-1.png').default} alt="远程安装扩展 1" style={{flex: 1, width: '50%'}} />
<img src={require('./img/remote-install-extensions-2.png').default} alt="远程安装扩展 2" style={{flex: 1, width: '50%'}} />
</div>

## 通过项目资源进行安装

如果扩展文件已上传到项目的通用文件中,您可以直接从项目资源中安装。

### 安装步骤

1. 点击右侧插件面板中的加号图标
2. 选择【从项目资源安装】
3. 在文件列表中选择对应的扩展文件
4. 点击确认完成安装

<div style={{display: 'flex', gap: '16px', marginBottom: '16px'}}>
<img src={require('./img/project-install-extensions-1.png').default} alt="项目资源安装扩展 1" style={{flex: 1, width: '50%'}} />
<img src={require('./img/project-install-extensions-2.png').default} alt="项目资源安装扩展 2" style={{flex: 1, width: '50%'}} />
</div>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 6 additions & 1 deletion docs/viz/9-message-schemas/compressed-video.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,14 @@
- 每个 CompressedVideo 消息应包含足够的 NAL 单元来解码恰好一个视频帧
- 每个包含关键帧(IDR)的消息还必须包含 SPS NAL 单元

- `h265`
- 使用 Annex A 格式的数据
- 每个 CompressedVideo 消息应包含足够的 NAL 单元来解码恰好一个视频帧
- 每个包含关键帧(IRAP)的消息还必须包含相关的 VPS/SPS/PPS NAL 单元

### `format`

支持的值:`h264`。
支持的值:`h264`、`h265`

注意:压缩视频支持受硬件限制和专利许可的影响,因此并非所有平台都支持所有编码。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ Using JSON output with the `jq` tool to extract IDs is more reliable and stable.
```bash
# Use JSON output to get record and action, e.g., to run the coScene-test action on the first record
RECORD_NAME=$(cocli record list -o json | jq -r '.records[0].name')
ACTION_NAME=$(cocli action list -o json | jq -r '.actions[] | select(.spec.name | contains("coScene-test")) | .name')
ACTION_NAME=$(cocli action list --all -o json | jq -r '.actions[] | select(.spec.name | contains("coScene-test")) | .name')
cocli action run $ACTION_NAME $RECORD_NAME
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ If your system doesn't have `jq` installed, you can install it with the followin

```bash
# Use JSON output and jq to extract record names
cocli record list -o json | jq -r '.records[].name' | \
cocli record list --all -o json | jq -r '.records[].name' | \
xargs -I {} cocli record upload {} ./FILE_FLAG
```

Expand Down Expand Up @@ -50,7 +50,7 @@ A common command line operation pattern is to iterate through all records in a u

```bash
# Use JSON output to get all records in the project, iterate and provide the full resource name
cocli record list -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --all -o json | jq -r '.records[].name' | while read -r record_name; do
# Use $record_name for subsequent batch operations
# To extract record ID, you can use: record_id=$(basename "$record_name")
done
Expand All @@ -61,7 +61,7 @@ This pattern can be extended to connect more complex batch operations.
### Find All Empty Records Without Any Files

```bash
cocli record list -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --all -o json | jq -r '.records[].name' | while read -r record_name; do
# Get the number of files in the record
file_count=$(cocli record file list "$record_name" -o json 2>/dev/null | jq '.files | length')

Expand All @@ -77,7 +77,7 @@ done
### Tag All Empty Records

```bash
cocli record list -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --all -o json | jq -r '.records[].name' | while read -r record_name; do
# Get the number of files in the record
file_count=$(cocli record file list "$record_name" -o json 2>/dev/null | jq '.files | length')

Expand All @@ -93,7 +93,7 @@ done

```bash
# Use --labels parameter to filter records with specific labels
cocli record list --labels test-label -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --labels test-label --all -o json | jq -r '.records[].name' | while read -r record_name; do
# Download all records with test-label
cocli record download "$record_name" download-folder
done
Expand All @@ -106,7 +106,7 @@ Please be very careful with the `delete` operation, as it may delete important d
:::

```bash
cocli record list -o json | jq -r '.records[].name' | while read -r record_name; do
cocli record list --all -o json | jq -r '.records[].name' | while read -r record_name; do
# Get the number of files in the record
file_count=$(cocli record file list "$record_name" -o json 2>/dev/null | jq '.files | length')

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,10 +124,9 @@ On the device side, execute the following command to uninstall the data collecti
Note: If the coScout client is installed under the root user, you need to switch to the root user when uninstalling.

```yaml
/bin/bash -c "$(curl -fsSL https://download.coscene.cn/coscout/uninstall_en.sh)"
/bin/bash -c "$(curl -fsSL https://download.coscene.io/cosbinary/script/latest/uninstall.sh)"
```

![Uninstall Client](./img/4-3-unload-1.png)

## Delete Devices

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ After completing the configuration, click [Save], and the configuration will tak

![org-dev-rule-save](./img/4-3-device-save-collector.png)

## Collection Rule Format Details
## Collection Rule Format Details {#device-collector-format}

Collection rules primarily configure 5 modules:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,11 @@ Collect existing files from devices including logs, images, and configurations.

- **Collection Path**
- Absolute path (e.g., `/home/bag/`)
- Recommend pre-configuring in [Device configuration](./4-device-collector.md#collection-rule-format-details)
- Recommend pre-configuring in [Device configuration](./4-device-collector.md#device-collector-format)

- **Additional Files**
- Paths to collect regardless of time (files/directories)
- Pre-configure in [Device configuration](./4-device-collector.md#collection-rule-format-details)
- Pre-configure in [Device configuration](./4-device-collector.md#device-collector-format)

- **Naming Convention**
- Collection Name: Identifier for collection job
Expand Down Expand Up @@ -83,7 +83,7 @@ See [Specific Data Format](../use-case/data-diagnosis/3-add-rule.md#specific-dat

> Only organization administrators can configure

In Organization Management - Devices - Device Configuration, enter directories for monitoring and collection: `listen_dirs`, `collect_dirs`. To monitor topics for collection, add `topics` definition. See [Device Configuration](./4-device-collector.md#collection-rule-format-details)
In Organization Management - Devices - Device Configuration, enter directories for monitoring and collection: `listen_dirs`, `collect_dirs`. To monitor topics for collection, add `topics` definition. See [Device Configuration](./4-device-collector.md#device-collector-format)

### Topic Monitoring Collection

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,12 +69,11 @@ When only software version upgrade is needed, without changing the host computer
1. Execute the following command in the terminal

```yaml
/bin/bash -c "$(curl -fsSL https://download.coscene.cn/coscout/uninstall_en.sh)"
/bin/bash -c "$(curl -fsSL https://download.coscene.io/cosbinary/script/latest/uninstall.sh)"
```

2. Closely monitor the output during execution until the uninstallation process is complete, ensuring that coLink service, cos service, and their related configuration files and directories are successfully removed

![Uninstall Client](./img/4-3-unload-1.png)

3. The device data is still retained in the backend database. If the device is no longer needed on the platform, click the [Delete] button in the organization devices to remove it

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Use the following scenario as an example to quickly get started with the automat
- /error_status
```

For more configuration options, see [Device Configuration Format](../../device/4-device-collector.md).
For more configuration options, see [Device Configuration Format](../../device/4-device-collector.md#device-collector-format).

## Create Rule
1. Enter the auto-upload project
Expand Down
Loading