Coda Packs 管理:自动化 Pack 生命周期 - Openclaw Skills

作者:互联网

2026-03-26

AI教程

什么是 Coda Packs 管理?

Coda Packs 技能为开发者提供了一个精简的界面,用于与 Coda REST API v1 进行交互,特别侧重于 Coda Packs 的生命周期管理。此集成允许用户通过编程方式处理管理任务,例如列出所有私有 Pack、创建新的 Pack 外壳以及修改名称和描述等元数据。通过利用 Openclaw Skills,开发者可以桥接初始 Pack 构思与本地开发环境之间的鸿沟。

虽然完整的开发过程(包括构建、发布到库和查看分析)仍需要 Coda Pack SDK CLI,但此技能作为一个强大的管理层发挥作用。它专为需要一种快速、可脚本化的方式来组织其 Pack 生态系统,而无需手动操作 Coda Web 界面的开发者而设计。

下载入口:https://github.com/openclaw/skills/tree/main/skills/0x7466/coda-packs

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install coda-packs

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 coda-packs。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

Coda Packs 管理 应用场景

  • 以编程方式列出开发者账户中所有活动的 Coda Packs。
  • 自动化创建私有 Pack 外壳,作为大型项目启动工作流的一部分。
  • 在多个集成中更新 Pack 元数据,例如描述和自述文件。
  • 在测试阶段管理和清理未使用或过时的 Coda Packs。
Coda Packs 管理 工作原理
  1. 该技能利用安全的 CODA_API_TOKEN 环境变量对 Coda REST API v1 的请求进行身份验证。
  2. 用户通过基于 Python 的 CLI 发出命令以与 Pack 资源进行交互。
  3. 该工具执行智能 ID 解析,允许用户通过唯一的数字 ID 或显示名称来引用 Pack。
  4. 对于写入操作,该技能向 API 发送结构化的 JSON 载荷以创建或修改 Pack 定义。
  5. 破坏性操作(如删除 Pack)包含内置的安全确认,以防止意外数据丢失。

Coda Packs 管理 配置指南

要开始使用此技能,请确保您拥有具有 Pack 管理权限的有效 Coda API 令牌。

# 1. 设置您的 API 令牌
export CODA_API_TOKEN="your_coda_api_token"

# 2. 验证您的环境是否安装了 Python 3.7+ 和 requests 库
pip install requests

# 3. 列出您现有的 Packs 以验证连接
python scripts/coda_packs_cli.py packs list

Coda Packs 管理 数据架构与分类体系

该技能使用以下结构管理 Coda Pack 元数据:

属性 描述 示例
Pack ID Coda Pack 的唯一标识符 48093
名称 集成的面向公众的名称 我的集成
描述 Pack 功能的摘要 执行酷炫的操作
自述文件 Markdown 格式的详细文档 # 入门指南...
API 令牌 安全身份验证凭据 CODA_API_TOKEN
name: coda-packs
description: Manage Coda Packs via REST API v1. Supports listing, creating, updating, and deleting private Packs. Requires CODA_API_TOKEN. Delete requires confirmation. Note: Builds, Gallery submission, Analytics, and Collaborators require Coda's Pack SDK CLI, not available via REST API.

Coda Packs Skill

Manage Coda Packs through the REST API v1. Create, list, update, and delete private Packs.

?? API Limitations

The Coda REST API v1 has limited Pack management capabilities:

Feature REST API Pack SDK CLI
List Packs ? Available ?
Create Pack ? Available ?
Update Pack ? Available ?
Delete Pack ? Available ?
Build Versions ? Not available ? Required
Gallery Submit ? Not available ? Required
Analytics ? Not available ? Required
Collaborators ? Not available ? Required

For builds, gallery submission, and advanced features, use:

npx @codahq/packs-sdk register    # Create account
npx @codahq/packs-sdk build       # Build Pack
npx @codahq/packs-sdk release     # Submit to Gallery

When to Use

Use this skill when the user wants to:

  • List existing Coda Packs
  • Create new private Pack shells
  • Update Pack metadata (name, description)
  • Delete unused Packs

When NOT to Use

  • Do NOT use for Doc management (tables, rows, pages) → use coda skill
  • Do NOT use for building Pack versions → use Pack SDK CLI
  • Do NOT use for Gallery submission → use Pack SDK CLI
  • Do NOT use for viewing analytics → use Pack SDK CLI or Coda web UI

Prerequisites

  1. API Token: Set environment variable CODA_API_TOKEN

    • Get token at: https://coda.io/account -> API Settings
    • Must have Pack management permissions
  2. Python 3.7+ with requests library

Quick Start

# Setup
export CODA_API_TOKEN="your_token_here"

# List your Packs
python scripts/coda_packs_cli.py packs list

# Create new Pack shell
python scripts/coda_packs_cli.py packs create r
  --name "My Integration" r
  --description "Does cool things"

# Update Pack
python scripts/coda_packs_cli.py packs update my-pack-id r
  --description "Updated description"

# Delete Pack (requires confirmation)
python scripts/coda_packs_cli.py packs delete my-pack-id

Full Pack Development Workflow

Since the REST API only supports basic Pack management, here's the complete workflow:

Step 1: Create Pack Shell (via REST API)

python scripts/coda_packs_cli.py packs create r
  --name "Karakeep Bookmarks" r
  --description "Save and search bookmarks"

Step 2-4: Use Pack SDK CLI (Required)

# Install Pack SDK
npm install -g @codahq/packs-sdk

# Initialize Pack project
npx @codahq/packs-sdk init karakeep-pack

# Develop your Pack (edit pack.ts)
# See: https://coda.io/packs/build/latest/guides/quickstart/

# Build and upload
npx @codahq/packs-sdk build
npx @codahq/packs-sdk upload

# Submit to Gallery (when ready)
npx @codahq/packs-sdk release

CLI Tool Usage

Pack Management

# List all your Packs
python scripts/coda_packs_cli.py packs list

# Get Pack details
python scripts/coda_packs_cli.py packs get 48093
python scripts/coda_packs_cli.py packs get "Karakeep"

# Create new Pack
python scripts/coda_packs_cli.py packs create r
  --name "My Pack" r
  --description "Description" r
  --readme "# My Pack

Details here"

# Update Pack metadata
python scripts/coda_packs_cli.py packs update my-pack-id r
  --name "New Name" r
  --description "New description"

# Delete Pack (requires confirmation)
python scripts/coda_packs_cli.py packs delete my-pack-id
# Or skip confirmation: --force

Pack ID Resolution

The CLI accepts both numeric Pack IDs and Pack Names:

# These are equivalent:
python scripts/coda_packs_cli.py packs get 48093
python scripts/coda_packs_cli.py packs get "Karakeep"

If the name is ambiguous, the CLI lists matches and exits.

Safety Guardrails

Operations Requiring Confirmation

Operation Risk Confirmation
Delete Pack Irreversible "Delete Pack 'X'? This cannot be undone."

No Confirmation Required

  • Create Pack: Safe, reversible
  • List/Get Packs: Read-only
  • Update Pack: Reversible

Error Handling

Common API errors:

Code Meaning Resolution
401 Invalid token Refresh CODA_API_TOKEN
403 Insufficient permissions Ensure token has Pack management rights
404 Pack not found Check Pack ID or name
429 Rate limited Wait and retry (handled automatically)

References

  • Pack SDK Guides: https://coda.io/packs/build/latest/guides/overview/
  • Pack SDK Quickstart: https://coda.io/packs/build/latest/guides/quickstart/
  • Coda API Docs: https://coda.io/developers/apis/v1
  • Pack SDK NPM: https://www.npmjs.com/package/@codahq/packs-sdk

Example: Karakeep Pack Shell

Created for testing:

  • Name: Karakeep
  • ID: 48093
  • Description: Karakeep bookmark manager - save URLs, search, and organize with tags

Next steps for full Pack development:

  1. Use Pack SDK CLI: npx @codahq/packs-sdk init karakeep-pack
  2. Implement Karakeep API integration (see https://docs.karakeep.app/api/)
  3. Build and upload: npx @codahq/packs-sdk build && npx @codahq/packs-sdk upload