# Resource CLI Reference The `agents resource` command group manages resource types and resource instances in the CleverAgents resource registry. ## Resource Instance Commands ### `agents resource add` Add a new resource instance of a given type. ```bash agents resource add git-checkout local/my-repo --path /home/user/repo agents resource add fs-directory local/data --path /data --read-only ``` ### `agents resource list` List registered resources with optional type filter. ```bash agents resource list agents resource list --type git-checkout agents resource list --format json ``` ### `agents resource show` Show details of a specific resource by name or ULID. ```bash agents resource show local/my-repo agents resource show 01HXYZ1234567890ABCDEFGHIJ ``` ### `agents resource remove` Remove a resource from the registry. ```bash agents resource remove local/my-repo agents resource remove --yes local/my-repo ``` ### `agents resource tree` Display a resource and its children as a tree (DAG). Output is deterministically ordered by resource name. **Options:** | Option | Description | |--------------|------------------------------------------| | `--depth N` | Maximum tree depth (-1 for unlimited) | | `--type TYPE`| Filter children by resource type | | `--format` | Output format (json/yaml/plain/table/rich) | **Examples:** ```bash # Show full tree agents resource tree local/my-repo # Limit depth to 2 levels agents resource tree local/my-repo --depth 2 # Show only fs-directory children agents resource tree local/my-repo --type fs-directory # JSON output agents resource tree local/my-repo --format json ``` ### `agents resource inspect` Show detailed information about a resource. Optionally display the child tree or read file content. **Options:** | Option | Description | |-----------------|----------------------------------------------| | `--tree` | Also show child tree | | `--file PATH` | Show file content (for git-checkout/fs-mount) | | `--format` | Output format (json/yaml/plain/table/rich) | **Examples:** ```bash # Basic inspect agents resource inspect local/my-repo # Inspect with child tree agents resource inspect local/my-repo --tree # Read a file from a git-checkout resource agents resource inspect local/my-repo --file README.md # JSON output agents resource inspect local/my-repo --format json ``` ### `agents resource link-child` Create a DAG edge between two resources (parent -> child). The child's resource type must be allowed by the parent's type constraints. Cycles are rejected. **Examples:** ```bash agents resource link-child local/my-repo local/my-dir agents resource link-child local/my-repo local/my-dir --format json ``` ### `agents resource unlink-child` Remove a DAG edge between two resources. Requires confirmation unless `--yes` is passed. **Options:** | Option | Description | |-----------|---------------------------| | `--yes` | Skip confirmation prompt | | `--format`| Output format | **Examples:** ```bash agents resource unlink-child local/my-repo local/my-dir agents resource unlink-child --yes local/my-repo local/my-dir ``` ## Resource Type Commands ### `agents resource type add` Register a custom resource type from a YAML configuration file. ```bash agents resource type add --config ./resource-types/my-type.yaml ``` ### `agents resource type list` List all registered resource types (built-in and custom). ```bash agents resource type list agents resource type list --format json ``` ### `agents resource type show` Show details of a registered resource type. ```bash agents resource type show git-checkout agents resource type show --format json local/my-type ``` ### `agents resource type remove` Remove a custom resource type. Built-in types cannot be removed. ```bash agents resource type remove local/my-type agents resource type remove --yes local/my-type ```