Agent skill

Search

by partcad in partcad/partcad

Find existing PartCAD parts and assemblies in the catalog that match a natural-language query, using the PartCAD CLI (pc search), then present the matches and optionally inspect or render a chosen…

Apache-2.0Auto-check passedGame Development

Install Search

skills CLI
$ npx skills add partcad/partcad --skill search -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install partcad/partcad search --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/partcad/partcad.git skills-src && mkdir -p .claude/skills && cp -r skills-src/ai-agents/common/skills/search .claude/skills/search && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
search
GitHub stars
503
Token cost
~960 tokens
SKILL.md length
452 words
Files
1
Skills in repo
12
Repo updated
First seen
Licence
Apache-2.0

At a glance

Find existing PartCAD parts and assemblies in the catalog that match a natural-language query, using the PartCAD CLI (pc search), then present the matches and optionally inspect or render a chosen…

  • Works in 5 steps: Understand the request → Make sure PartCAD is available → Search → …
  • The user asks to search
  • SKILL.md covers 1. Understand the request, 2. Make sure PartCAD is…, 3. Search and 4. Present the results, plus 1 more section
  • Calls python

What it does

Search is an agent skill from partcad/partcad. Find existing PartCAD parts and assemblies in the catalog that match a natural-language query, using the PartCAD CLI (pc search), then present the matches and optionally inspect or render a chosen one. Use for /pc:search or when the user asks to search, find, look up, or discover a part or assembly.

Its SKILL.md is about 960 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Game Development. It works with Python. The repository describes itself as: Package manager for things. Start designing modular hardware! PartCAD is the standard for documenting manufacturable physical products (a.k.a. Digital Thread or TDP). It comes… The licence is Apache-2.0.

When your agent uses it

  • The user asks to search
  • Discover a part

Example prompts

  • “/search”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Understand the request
  2. Make sure PartCAD is available
  3. Search
  4. Present the results
  5. Act on a chosen result (optional)

What it can do on your machine

Read from SKILL.md and the folder at commit e08683a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Search loads about 960 tokens when it runs. Until then it costs about 77 tokens; SKILL.md has 452 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~77
When it runs · the whole SKILL.md, loaded when a task matches
~960

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from partcad/partcad at commit e08683a, republished under its Apache-2.0 licence (© partcad). 452 words, ~960 tokens.

Download SKILL.mdSave it as .claude/skills/search/SKILL.md (or your agent's skills folder).
name
search
description
Find existing PartCAD parts and assemblies in the catalog that match a natural-language query, using the PartCAD CLI (`pc search`), then present the matches and optionally inspect or render a chosen one. Use for /pc:search or when the user asks to search, find, look up, or discover a part or assembly.

Find existing PartCAD parts and assemblies that match a query, using PartCAD's own pc search. The text after the command ($ARGUMENTS) is what to look for — a natural-language description or a set of keywords. Present the matches and, when the user points at one, act on it (inspect or render). This searches the existing catalog; it does not create anything — to generate a new object, use /pc:gen instead.

1. Understand the request

  • $ARGUMENTS is the query. pc search matches a single keyword as a case-insensitive substring against each object's name, its configured fields (desc, type, path, …), and the contents of its source file. It does not parse natural language and does not rank by relevance.
  • So distill the query into a few concrete terms — e.g. "M3 hex standoff" → standoff, hex, m3 — search each, then union the results yourself.
  • Decide the scope. The default is the local/root package (//); the public PartCAD registry and other imported packages are only reached by naming the package with a ... suffix, which means that package and every package below it.

2. Make sure PartCAD is available

Resolve a command as /pc:init does (pc, then partcad, then python -m partcad_cli.click.command). If none is found, stop and run /pc:setup executable first.

Run one search per object kind you care about — parts and assemblies — for each keyword. The keyword is the required -k/--keyword option (quote multi-word terms):

sh
pc search parts -k "<keyword>"          # search parts
pc search assemblies -k "<keyword>"     # search assemblies

Widen the scope when the local package has no match — a ... suffix on the package walks every package below it (the public registry and any dependencies), which is where most catalog items live:

sh
pc search parts -k "<keyword>" -P //...           # all imported packages
pc search parts -k "<keyword>" -P //pub/std...    # scope to one package subtree

Sibling commands share the same flags if the query is broader: pc search all (parts, sketches, interfaces, assemblies, and packages at once), plus pc search sketches, pc search interfaces, and pc search packages.

Each match prints as <package> <name> followed by its description, and the run ends with Matches: N (or <none>). Read both columns — the package tells you where the object lives, which you need in order to act on it.

Show full SKILL.md (116 more words)Show less

4. Present the results

Collect the matches across all the keywords you tried, drop duplicates, and show the user a short list: the qualified name (<package> <name>) and its description, best-fit first (you judge fit from the description — the tool does not order results). If nothing matched, say so and suggest widening with -P //..., trying different terms, or generating it with /pc:gen.

5. Act on a chosen result (optional)

When the user picks a match, reference it by the two columns the search printed — -P <package> plus the object name; add -a when it is an assembly:

sh
pc ide view -P <package> <name>                            # view a part; add -a for an assembly
mkdir -p /tmp/pc-render                                    # the -O directory must already exist
pc render -t png -O /tmp/pc-render -P <package> <name>     # writes a PNG under /tmp/pc-render; add -a for an assembly

Then follow up as the user asks — for example describe it with /pc:describe, or add it to their project.

© partcad, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in ai-agents/common/skills/search of partcad/partcad.

Open the folder on GitHubat commit e08683a

Compare with similar skills

Search next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Search compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Search this skillpartcad/partcad503—~960Automated safety check: PassApache-2.0
Image to Three.js Modelimg2threejs/img2threejs18k1 repos~8.2kAutomated safety check: PassApache-2.0
2D Map and Scene Generator0x0funky/agent-sprite-forge4.4k—~2.9kAutomated safety check: PassMIT
Bambu Studio AIheyixuan2/bambu-studio-ai220—~4.3kAutomated safety check: PassMIT
Spine AnimationGenielabsOpenSource/spine-animation-ai518—~17kAutomated safety check: PassCC-BY-NC-4.0
Unreal BridgeTornLux/UnrealBridge305—~8.4kAutomated safety check: NotesMIT

Similar skills

  • Image to Three.js Model

    img2threejs/img2threejs

    Rebuilds the object in a reference image as a procedural, animation-ready Three.js model written entirely in code, using staged sculpting with quality checks.

    18k GitHub starsUsed in 1 repo~8.2k tokens
    Game DevelopmentAuto-check passed
  • 2D Map and Scene Generator

    0x0funky/agent-sprite-forge

    Plans and builds 2D game maps and scenes, from tilemaps and parallax backgrounds to HD-2D plates, with collision checks, a playable HTML preview and Tiled, Godot or LDtk export.

    4.4k GitHub stars~2.9k tokensUpdated 3 days ago
    Game DevelopmentAuto-check passed
  • Bambu Studio AI

    heyixuan2/bambu-studio-ai

    End-to-end 3D printing for Bambu Lab printers. An agent skill from heyixuan2/bambu-studio-ai.

    220 GitHub stars~4.3k tokensUpdated 20 days ago
    Game DevelopmentAuto-check passed
  • Spine Animation

    GenielabsOpenSource/spine-animation-ai

    Create Spine 2D skeletal animations from pre-existing character assets (separated body-part PNGs, atlas spritesheet, or a full character image).

    518 GitHub stars~17k tokensUpdated 1 mo ago
    Game DevelopmentAuto-check passed
  • Unreal Bridge

    TornLux/UnrealBridge

    Execute Python scripts inside a running Unreal Engine 5.3+ editor via TCP bridge.

    305 GitHub stars~8.4k tokensUpdated 8 days ago
    Game DevelopmentAuto-check: notes
  • 2D Sprite Generator

    0x0funky/agent-sprite-forge

    Produces game-ready 2D characters, creatures, props, icons and effects as master stills, sheets or clips, and exports frames for common game engines.

    4.4k GitHub stars~3.6k tokensUpdated 3 days ago
    Game DevelopmentAuto-check passed

More from partcad/partcad

All 12 skills in this repo
  • Add Interfaces

    partcad/partcad

    Enrich an existing PartCAD part with connection interfaces and ports (mating metadata) so it can be mated to other parts automatically.

    503 GitHub stars~3.3k tokensUpdated yesterday
    Auto-check passed
  • Convert

    partcad/partcad

    Convert a CAD file or a PartCAD object to another geometry format - STEP, BREP, STL, 3MF, OBJ, IGES, glTF, three.js, SVG, DXF, URDF, ASSY - with pc convert for an object a package declares (which…

    503 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Describe

    partcad/partcad

    Write a narratable, accessibility-oriented text description of an existing PartCAD part, assembly, or sketch from its measured bounding box and volume, from renders taken at several viewing angles…

    503 GitHub stars~2.1k tokensUpdated yesterday
    Auto-check passed
  • Export

    partcad/partcad

    Write a CAD file out of an object a PartCAD package declares - STEP, BREP, STL, 3MF, OBJ, IGES, glTF, three.js, URDF for 3D, SVG or DXF for a sketch, or a file type the package implements itself -…

    503 GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Gen Part

    partcad/partcad

    Generate a PartCAD part from a natural-language description (and optional reference images/requirements) by authoring a CAD script and validating it with the PartCAD CLI.

    503 GitHub stars~1.9k tokensUpdated yesterday
    Auto-check passed
  • Gen Sketch

    partcad/partcad

    Generate a PartCAD 2D sketch from a natural-language description by authoring the sketch (build123d / cadquery / dxf / svg / basic) and validating it with the PartCAD CLI.

    503 GitHub stars~672 tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Search

What does Search do?

Find existing PartCAD parts and assemblies in the catalog that match a natural-language query, using the PartCAD CLI (pc search), then present the matches and optionally inspect or render a chosen…. Search is an agent skill from partcad/partcad. Find existing PartCAD parts and assemblies in the catalog that match a natural-language query, using the PartCAD CLI (pc search), then present the matches and optionally inspect or render a chosen one.

When should I use Search?

Search fits situations like: the user asks to search; discover a part.

How do I install Search in Claude Code?

Run `npx skills add partcad/partcad --skill search -a claude-code`. Or copy the skill folder (ai-agents/common/skills/search in partcad/partcad) into .claude/skills/search in your project. Claude Code loads it when a task matches its description.

How do I install Search in Codex?

Run `npx skills add partcad/partcad --skill search -a codex`. Or copy the skill folder (ai-agents/common/skills/search in partcad/partcad) into .agents/skills/search in your project. Codex loads it when a task matches its description.

Can I use Search in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add partcad/partcad --skill search -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/search, .gemini/skills/search, .github/skills/search and .opencode/skills/search in your project.

What does Search need to run?

Going by SKILL.md and its folder, Search needs the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Search access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Search safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Search use?

Search is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Search use?

About 960 tokens (SKILL.md is roughly 3.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Search?

Skills that share tags, products or a category with Search: Image to Three.js Model (img2threejs/img2threejs, 18k stars), 2D Map and Scene Generator (0x0funky/agent-sprite-forge, 4.4k stars), Bambu Studio AI (heyixuan2/bambu-studio-ai, 220 stars) and Spine Animation (GenielabsOpenSource/spine-animation-ai, 518 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Search?

partcad (a GitHub organization) maintains it in partcad/partcad, which has 503 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 8, 2026.

Source: partcad/partcad on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.