name: projection-spec description: Manage named field selection specifications that control which columns appear in a view , in what order , and how they are formatted or computed . Each projection captures a JSON serialized ProjectionField [ ] describing key , optional label , visibility , formatter , computed expression , and weight . Projections can be merged so that overlay fields win on key conflict and new fields are appended , and can be evaluated directly against a JSON row array to produce projected rows containing only the specified fields in the specified order argument-hint: [command] [name] [fields] allowed-tools: Read, Grep, Glob, Bash
<!-- Auto-generated by Clef Clef Bind — claude-skills target --> <!-- Concept: ProjectionSpec --> <!-- Do not edit manually; regenerate with: clef interface generate -->ProjectionSpec
Manage named field selection specifications that control which columns appear in a view , in what order , and how they are formatted or computed . Each projection captures a JSON serialized ProjectionField [ ] describing key , optional label , visibility , formatter , computed expression , and weight . Projections can be merged so that overlay fields win on key conflict and new fields are appended , and can be evaluated directly against a JSON row array to produce projected rows containing only the specified fields in the specified order
Commands
create
Register a new named projection spec with the given field array . The fields string is a JSON serialized ProjectionField [ ] where each entry may carry key , label , visible , formatter , computed , and weight properties . An empty array [ ] is valid and represents a zero field projection .
Arguments: $0 name (string), $1 fields (string)
get
Return the projection spec identifier and its serialized field array for the given name .
Arguments: $0 name (string)
merge
Combine two projection specs : overlay fields win on key conflict ( matching by the key property ) , and fields present only in the overlay are appended after the base fields . The resulting projection is stored under the name base+overlay and its field array is returned .
Arguments: $0 base (string), $1 overlay (string)
evaluate
Apply the named projection spec to a JSON serialized row array . Each row is reduced to only the fields declared in the projection , in the order they appear in the spec . Fields marked visible : false are excluded . The result is a JSON serialized array of projected row objects .
Arguments: $0 name (string), $1 rows (string)
list
Return a JSON serialized array of all registered projection spec names .