Agent Skills › mattzh72/articraft

mattzh72/articraft

GitHub

用于创建、编辑、检查或最终化 Articraft 关节对象记录。支持原生生成、无密钥 Codex 生成及外部手动编辑三种模式,涵盖初始化、新建记录和编辑现有记录的完整工作流。

3 skills 1,363

Install All Skills

npx skills add mattzh72/articraft --all -g -y
More Options

List skills in collection

npx skills add mattzh72/articraft --list

Skills in Collection (3)

用于创建、编辑、检查或最终化 Articraft 关节对象记录。支持原生生成、无密钥 Codex 生成及外部手动编辑三种模式,涵盖初始化、新建记录和编辑现有记录的完整工作流。
用户要求创建新的 Articraft 资产或记录 用户要求编辑或修复现有的 Articraft 记录 用户要求检查或最终化 Articraft 记录
plugins/articraft/skills/articraft-authoring/SKILL.md
npx skills add mattzh72/articraft --skill articraft-authoring -g -y
SKILL.md
Frontmatter
{
    "name": "articraft-authoring",
    "description": "Use when creating, editing, checking, or finalizing Articraft articulated-object records in the local library."
}

Articraft Authoring

Use this skill when the user asks Codex to create, edit, fix, improve, check, or finalize an Articraft asset or record.

Core Rule

There are three supported Articraft authoring modes. Choose the mode from the user's request before creating a record.

  • Use native Articraft generation when the user needs Articraft-managed run metadata, cost accounting, turn counts, or the full agent trajectory. This path requires the relevant provider API key.
  • Use no-key Codex generation when the user wants Codex access without provider API keys. This path uses --provider codex-cli inside Articraft's internal harness, so Articraft still owns the loop, tools, compile feedback, turn counts, compile-attempt counts, record persistence, and trajectory.
  • Use external Codex authoring only when the user explicitly asks Codex to manually edit model.py outside the internal harness. This path creates an external-agent record and intentionally has no Articraft internal trace.

Never manually create record directories, invent record metadata, copy record folders, write traces, or bypass the CLI.

Read the repository contract before external authoring:

sed -n '1,220p' EXTERNAL_AGENT_DATA.md

Also read the core quality requirements before writing geometry:

agent/prompts/sections/designer_common.md
agent/prompts/sections/link_naming.md

Use SDK docs and examples while authoring:

sdk/_docs/
sdk/_examples/

Setup

From the Articraft repo root:

uv sync --group dev
uv run articraft init

If the user wants a specific data folder, pass --data-dir or set ARTICRAFT_DATA_DIR.

Create A New Record

For a full Articraft run with cost, turn count, and trajectory, use native generation:

uv run articraft generate "<prompt>"

For no-key Codex generation with Articraft loop parity, use the Codex CLI provider:

uv run articraft generate --provider codex-cli --model <codex-model-id> "<prompt>"

For image-conditioned no-key Codex generation:

uv run articraft generate --provider codex-cli --model <codex-model-id> --image <reference-image> "<prompt>"

For external Codex drafting, create the record through the external CLI and identify Codex:

uv run articraft external init --agent codex "<prompt>"

The command prints record_id and record_dir. Edit only that generated record's active revision.

Edit An Existing Record

Fork an existing record; do not manually copy record folders:

uv run articraft fork <record-id> "<edit request>"

For no-key Codex edits with Articraft loop parity:

uv run articraft fork --provider codex-cli --model <codex-model-id> <record-id> "<edit request>"

Authoring Standard

Build a realistic articulated asset with:

  • connected, non-floating structure
  • meaningful user-facing articulation
  • semantic link names
  • visible mechanisms and realistic materials
  • prompt-specific checks in run_tests()
  • no unintentional intersections or disconnected parts

Prefer relevant SDK helpers, CadQuery geometry, lofts, sweeps, booleans, mesh helpers, colors, and materials over boxy placeholder geometry.

Validation Loop

For native/API and no-key Codex provider runs, the harness calls compile_model during generation. Recompile or inspect after generation when needed:

uv run articraft compile <record-id>

For external drafts, run the same one-record compile command during development, update the active model.py, and repeat until it passes.

Finalize

Finalize external records to upsert records_manifest.jsonl; pass a category only when the user asks for one:

uv run articraft external finalize <record-id>
uv run articraft external finalize <record-id> --category-slug <slug>

Preserve creator.mode=external_agent, creator.agent=codex, and creator.trace_available=false.

管理Articraft本地库记录,支持状态检查、数据验证、清单重建、列表查看及分类设置。适用于维护本地数据文件夹、执行贡献规范检查及分享前的质量验证工作。
查询或更新Articraft本地库记录 进行本地数据验证或清单重建 为记录分配分类 准备共享数据文件夹前的检查
plugins/articraft/skills/articraft-dataset/SKILL.md
npx skills add mattzh72/articraft --skill articraft-library -g -y
SKILL.md
Frontmatter
{
    "name": "articraft-library",
    "description": "Use when working with Articraft local library records, categories, manifest rebuilds, validation, or data-folder maintenance."
}

Articraft Local Library

Use this skill when the user asks about Articraft record authoring, categories, local data validation, manifest updates, or sharing a data folder.

Commands

From the repo root, prefer uv run articraft ... product commands and just shortcuts.

Check current state:

uv run articraft status
uv run articraft library status

Validate a local data folder:

uv run articraft library check --require-records

Rebuild the manifest:

uv run articraft library rebuild-manifest

List records:

uv run articraft library list

Assign a category:

uv run articraft library set-category <record-id> <category_slug>

Data Root

The default data root is the gitignored <repo-root>/data. To use another local/exportable folder, pass --data-dir or set:

export ARTICRAFT_DATA_DIR=/path/to/articraft-data

The data root contains top-level records/, categories/, records_manifest.jsonl, system_prompts/, and cache/.

Contribution Rules

Data authoring work should follow CONTRIBUTING.md and EXTERNAL_AGENT_DATA.md.

Before sharing a data folder, run the relevant checks and report exact commands:

uv run articraft library check --require-records
just smoke-tests

If viewer behavior or asset quality is part of the change, inspect records with the local viewer and include screenshots or notes when useful.

用于编译 Articraft 记录、启动本地查看器、检查关节资产可视化,以及开发或调试查看器的 API 和前端代码。支持视觉 QA 验证模型连通性、材质及历史记录。
编译 Articraft 记录 启动本地查看器 检查关节资产的可视化效果 开发或调试查看器 API 或 Web 前端代码
plugins/articraft/skills/articraft-viewer/SKILL.md
npx skills add mattzh72/articraft --skill articraft-viewer -g -y
SKILL.md
Frontmatter
{
    "name": "articraft-viewer",
    "description": "Use when compiling Articraft records, opening the local viewer, inspecting articulated assets visually, or working on viewer API\/web code."
}

Articraft Viewer

Use this skill when the user asks to compile records, browse generated objects, inspect articulation, start the viewer, or work on viewer/api or viewer/web.

Compile Records

For one record:

uv run articraft compile <record_id>

Start The Viewer

Built viewer flow:

just viewer

Development viewer flow with API and Vite:

just viewer-dev

API only:

uv run uvicorn viewer.api.app:app --reload --host 127.0.0.1 --port 8765

Frontend-only commands:

npm --prefix viewer/web run dev
npm --prefix viewer/web run typecheck
npm --prefix viewer/web run lint
npm --prefix viewer/web run build

Visual QA

When inspecting an asset, verify:

  • all primary parts are visible and connected
  • articulations move the intended parts
  • no major unintended overlap or floating geometry is visible
  • link names and controls are semantic
  • materials and colors match the object prompt
  • history/lineage is preserved for forked records

If the viewer or frontend code changed, run the relevant frontend checks:

npm --prefix viewer/web run typecheck
npm --prefix viewer/web run lint

If API behavior changed, run focused viewer/API tests:

uv run --group dev pytest -q tests/viewer

trang chủ - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-13 09:55
浙ICP备14020137号-1 $bản đồ khách truy cập$