Agent skills for working effectively in copper-rs
— the Rust robotics runtime + SDK (the cu29 crates). They encode the repo's
architecture, house coding style, and the CI-aligned build/test/debug workflow so AI
agents (and humans) can be productive without re-deriving it every time.
Table of contents: Compatibility · Install · Skills · Recommended workflow · Contributing
Tested with Claude Code and
OpenAI Codex. Each SKILL.md follows
the agentskills.io spec, so any
skills-aware agent listed by npx skills add --help should work.
Works for both Claude Code and Codex — pick the target(s) from the interactive
menu (--agent claude-code, --agent codex, or --agent '*').
Public-repo form:
npx skills add copper-project/copper-rs-skillsPrivate-repo form (clone with SSH, install from the local path):
git clone git@github.com:copper-project/copper-rs-skills.git
npx skills add "$PWD/copper-rs-skills"The installer prompts for skill selection, scope (-g for user-global,
otherwise per-project), and link method (symlink by default, --copy to copy).
Update later with npx skills update; remove with npx skills remove.
This repo is also a Claude Code plugin marketplace
(.claude-plugin/marketplace.json).
/plugin marketplace add copper-project/copper-rs-skills
/plugin install copper-rs-skills@copper-rs-skills
Private-repo variant: clone first, then pass the local path to
/plugin marketplace add.
Prefer not to use npx? Clone the repo and symlink each SKILL.md folder into
your agent's skills directory.
Eight skills, grouped by what you're doing. Each SKILL.md cross-references the
others by name so the right one is pulled in for a given task.
copper-arch — the mental model. Workspace map,
anatomy of a Copper app, the CuSrcTask/CuTask/CuSinkTask traits,
copperconfig.ron graphs, resources, missions, and the runtime's design biases
(static-over-dynamic, sacred real-time path, std/no_std). Start here when
landing in the repo.
copper-workflow — how the repo is built and
tested. The CI-aligned just targets (pr-check/lint/test/std-ci/
nostd-ci/api-check), environment setup, and a quick unified-log debugging
ladder. Use whenever just is involved or a run has produced a .copper log.
copper-coding-style — house style. Naming
(Cu prefix), import grouping, CuResult/CuError error handling, std/no_std
discipline, the interning debug!/info!/warning!/error! logging macros
({}-only), doctests, recurring clippy gotchas, payload trait bounds, test
layout.
copper-api-flavor — five non-negotiables for
shaping new user-facing traits and adapters (in-place &mut outputs, enums via
Deserialize+get_value, no cached inputs, payload/Tov placement, CuTask
lifecycle mirror). Read this before you sketch a new trait, adapter, or
config field — the maintainer enforces these on the diff.
copper-component-design — recipes for
implementing a source / task / sink / bridge. Skeletons and lifecycle patterns
anchored to real crates under components/.
copper-ron-config — deep schema reference for
copperconfig.ron: every top-level key, per-node/per-cnx/per-bridge field,
ComponentConfig accessor rules (get::<T> vs get_value::<T>), verbatim
validation errors, RON foot-guns.
copper-macro-debug — proc-macro debugging.
What #[copper_runtime] emits, common macro errors, when to cargo expand.
Compile-time only.
copper-debug-replay — the runtime-debug
playbook. cu29_export::run_cli subcommands, sim_mode+resim flow, the
debug.v1 remote-debug RPC over Zenoh, Python offline iterators, common
failure modes. Reach for this whenever the reflex is to add println! and
rerun.
- Land in the repo →
copper-archorients you (architecture, where to start). - Before you sketch a new user-facing trait, adapter, or config field, read
copper-api-flavor— the maintainer enforces these five rules on the diff, so it's much cheaper to bake them in than to unpick them at review. - Writing or reviewing Rust →
copper-coding-stylekeeps it on-house-style. - Editing
copperconfig.ron→copper-ron-configis the schema reference. - Implementing a source / task / sink / bridge →
copper-component-design. - Compile-time macro grief →
copper-macro-debug. - Building, testing, or chasing a bug in a recorded run →
copper-workflowfor thejusttargets,copper-debug-replayfor the deep extract/resim/remote-debug flow.
Skills auto-activate from their description; you can also invoke one explicitly.
See AGENTS.md for the skill-file spec and editorial ground rules, and CONTRIBUTING.md for the change process.
Apache-2.0 — see LICENSE.