Files
cleveragents-core/docs/reference/tool_cli.md
T
HAL9000 18d00c04c4
CI / lint (pull_request) Failing after 1m15s
CI / quality (pull_request) Successful in 1m21s
CI / typecheck (pull_request) Successful in 1m34s
CI / security (pull_request) Successful in 1m37s
CI / coverage (pull_request) Has been skipped
CI / unit_tests (pull_request) Failing after 1m37s
CI / docker (pull_request) Has been skipped
CI / build (pull_request) Successful in 33s
CI / helm (pull_request) Successful in 26s
CI / push-validation (pull_request) Successful in 19s
CI / e2e_tests (pull_request) Successful in 3m20s
CI / integration_tests (pull_request) Successful in 4m32s
CI / status-check (pull_request) Failing after 3s
fix(skills): implement multi-scope agent skill discovery for global, project, and local tiers
Implements AgentSkillDiscovery class to support discovering Agent Skills from
multiple configured directories across three scopes (global, project, local).
Handles name collisions with precedence: local > project > global.

Adds comprehensive BDD test coverage for multi-scope discovery scenarios including:
- Global-only, project-only, and local-only discovery
- Combined discovery from all scopes
- Name collision resolution with proper precedence
- Non-existent and empty scope directory handling
- Multiple skills in same scope discovery

ISSUES CLOSED: #9369
2026-05-06 19:55:22 +00:00

4.5 KiB

Tool & Validation CLI Reference

The agents tool and agents validation command groups manage tools and validations in the CleverAgents tool registry.

Tool Commands

agents tool add

Register a tool from a YAML configuration file.

agents tool add --config ./tools/line-counter.yaml
agents tool add --config ./tools/line-counter.yaml --update
agents tool add --config ./tools/line-counter.yaml --format json

Options:

Flag Description
--config Path to YAML configuration file
--update Update if tool already exists
--format Output format (json/yaml/plain/table/rich)

agents tool remove

Remove a tool by namespaced name.

agents tool remove local/line-counter
agents tool remove --yes local/line-counter

Options:

Flag Description
--yes Skip confirmation prompt

agents tool list

List tools with optional filters.

agents tool list
agents tool list --namespace local
agents tool list --source mcp
agents tool list --type validation
agents tool list "line-.*"
agents tool list --format json

Options:

Flag Description
--namespace Filter by namespace
--source Filter by source type
--type Filter by type (tool or validation)
--format Output format (json/yaml/plain/table/rich)

agents tool show

Show full details for a tool.

agents tool show local/line-counter
agents tool show --format json local/line-counter

Options:

Flag Description
--format Output format (json/yaml/plain/table/rich)

Validation Commands

agents validation add

Register a validation from a YAML configuration file.

agents validation add --config ./validations/coverage-check.yaml
agents validation add --config ./validations/coverage-check.yaml --update

Options:

Flag Description
--config Path to YAML configuration file
--update Update if validation already exists
--format Output format (json/yaml/plain/table/rich)

agents validation attach

Attach a validation to a resource.

agents validation attach git-checkout/my-repo local/coverage-check
agents validation attach --project myproj git-checkout/my-repo local/lint
agents validation attach --mode informational resource/r1 local/val1
agents validation attach git-checkout/my-repo local/check threshold=80

Options:

Flag Description
--project Project scope
--plan Plan ID scope
--mode Validation mode (required or informational)
--format Output format (json/yaml/plain/table/rich)

agents validation detach

Detach a validation from a resource.

agents validation detach 01HXYZ1234567890ABCDEFGHIJ
agents validation detach --yes 01HXYZ1234567890ABCDEFGHIJ

Options:

Flag Description
--yes Skip confirmation prompt
--format Output format (json/yaml/plain/table/rich)

YAML Configuration Examples

Tool Configuration

name: local/line-counter
description: Count lines in a file
source: custom
code: |
  def run(inputs):
      with open(inputs["path"]) as f:
          return {"count": sum(1 for _ in f)}
input_schema:
  type: object
  properties:
    path:
      type: string
capability:
  read_only: true
  idempotent: true
timeout: 60

Validation Configuration

name: local/coverage-check
description: Check code coverage meets threshold
source: custom
mode: required
code: |
  def run(inputs):
      return {"passed": inputs["coverage"] >= inputs.get("threshold", 80)}

Wrapped Validation

name: local/lint-check
description: Run linting as a validation
source: wrapped
wraps: local/run-lint
transform: |
  def transform(result):
      return {"passed": result.get("exit_code") == 0}
mode: informational