Skip to content

copper-project/copper-rs-skills

Repository files navigation

copper-rs skills

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

Compatibility

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.

Install

Via the skills installer (recommended, cross-agent)

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-skills

Private-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.

As a Claude Code plugin (Claude only)

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.

Skills

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.

Orientation

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.

Writing code

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/.

Config & macros

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.

Debug & replay

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.

Recommended workflow

  1. Land in the repo → copper-arch orients you (architecture, where to start).
  2. 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.
  3. Writing or reviewing Rust → copper-coding-style keeps it on-house-style.
  4. Editing copperconfig.roncopper-ron-config is the schema reference.
  5. Implementing a source / task / sink / bridge → copper-component-design.
  6. Compile-time macro grief → copper-macro-debug.
  7. Building, testing, or chasing a bug in a recorded run → copper-workflow for the just targets, copper-debug-replay for the deep extract/resim/remote-debug flow.

Skills auto-activate from their description; you can also invoke one explicitly.

Contributing

See AGENTS.md for the skill-file spec and editorial ground rules, and CONTRIBUTING.md for the change process.

License

Apache-2.0 — see LICENSE.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors