
Cli Objects
- 2 installs
- 52 repo stars
- Updated August 5, 2026
- constructive-io/constructive
CLI tool (csdk) for the objects API providing CRUD commands for 5 tables and 4 custom operations.
About
CLI tool (csdk) for the objects API provides CRUD commands for 5 tables and 4 custom operations.. Includes context management and authentication support.
- Context management for objects endpoints
- CRUD operations for object-related entities
Cli Objects by the numbers
- 2 all-time installs (skills.sh)
- Ranked #445 of 550 CLI & Terminal skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/constructive-io/constructive --skill cli-objectsAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 2 |
|---|---|
| repo stars | ★ 52 |
| Last updated | August 5, 2026 |
| Repository | constructive-io/constructive ↗ |
What it does
CLI tool (csdk) for the objects API providing CRUD commands for 5 tables and 4 custom operations.
Files
cli-objects
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
CLI tool (csdk) for the objects API — provides CRUD commands for 5 tables and 4 custom operations
Usage
# Context management
csdk context create <name> --endpoint <url>
csdk context use <name>
# Authentication
csdk auth set-token <token>
# Config variables
csdk config set <key> <value>
csdk config get <key>
# CRUD for any table (e.g. get-all-record)
csdk get-all-record list
csdk get-all-record get --id <value>
csdk get-all-record create --<field> <value>
# Non-interactive mode (skip all prompts, use flags only)
csdk --no-tty get-all-record listExamples
Set up and query
csdk context create local --endpoint http://localhost:5000/graphql
csdk context use local
csdk auth set-token <token>
csdk get-all-record listNon-interactive mode (for scripts and CI)
csdk --no-tty get-all-record create --<field> <value>References
See the references/ directory for detailed per-entity API documentation:
- context
- auth
- config
- get-all-record
- ref
- store
- object
- commit
- init-empty-repo
- set-data-at-path
- insert-node-at-path
- provision-bucket
Authentication
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Manage authentication tokens for csdk
Usage
csdk auth set-token <token>
csdk auth status
csdk auth logoutExamples
Authenticate with a token
csdk auth set-token eyJhbGciOiJIUzI1NiIs...Check auth status
csdk auth statuscommit
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
CRUD operations for Commit records via csdk CLI
Usage
csdk commit list
csdk commit list --where.<field>.<op> <value> --orderBy <values>
csdk commit list --limit 10 --after <cursor>
csdk commit find-first --where.<field>.<op> <value>
csdk commit get --id <UUID>
csdk commit create --databaseId <UUID> --storeId <UUID> [--message <String>] [--parentIds <UUID>] [--authorId <UUID>] [--committerId <UUID>] [--treeId <UUID>] [--date <Datetime>]
csdk commit update --id <UUID> [--message <String>] [--databaseId <UUID>] [--storeId <UUID>] [--parentIds <UUID>] [--authorId <UUID>] [--committerId <UUID>] [--treeId <UUID>] [--date <Datetime>]
csdk commit delete --id <UUID>Examples
List commit records
csdk commit listList commit records with pagination
csdk commit list --limit 10 --offset 0List commit records with cursor pagination
csdk commit list --limit 10 --after <cursor>Find first matching commit
csdk commit find-first --where.id.equalTo <value>List commit records with field selection
csdk commit list --select id,idList commit records with filtering and ordering
csdk commit list --where.id.equalTo <value> --orderBy ID_ASCCreate a commit
csdk commit create --databaseId <UUID> --storeId <UUID> [--message <String>] [--parentIds <UUID>] [--authorId <UUID>] [--committerId <UUID>] [--treeId <UUID>] [--date <Datetime>]Get a commit by id
csdk commit get --id <value>Config Variables
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Manage per-context key-value configuration variables for csdk
Usage
csdk config get <key>
csdk config set <key> <value>
csdk config list
csdk config delete <key>Examples
Store and retrieve a config variable
csdk config set orgId abc-123
csdk config get orgIdList all config variables
csdk config listconfirmUpload
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Confirm that a file has been uploaded to S3. Verifies the object exists in S3, checks content-type, and transitions the file status from 'pending' to 'ready'.
Usage
csdk confirm-upload --input.fileId <UUID>Examples
Run confirmUpload
csdk confirm-upload --input.fileId <UUID>Context Management
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Manage API endpoint contexts for csdk
Usage
csdk context create <name> --endpoint <url>
csdk context list
csdk context use <name>
csdk context current
csdk context delete <name>Examples
Create and activate a context
csdk context create production --endpoint https://api.example.com/graphql
csdk context use productionList all contexts
csdk context listfreezeObjects
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the freezeObjects mutation
Usage
csdk freeze-objects --input.clientMutationId <String> --input.databaseId <UUID> --input.id <UUID>Examples
Run freezeObjects
csdk freeze-objects --input.clientMutationId <String> --input.databaseId <UUID> --input.id <UUID>getAllObjectsFromRoot
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Reads and enables pagination through a set of Object.
Usage
csdk get-all-objects-from-root --databaseId <UUID> --id <UUID> --first <Int> --offset <Int> --after <Cursor>Examples
Run getAllObjectsFromRoot
csdk get-all-objects-from-root --databaseId <UUID> --id <UUID> --first <Int> --offset <Int> --after <Cursor>getAllRecord
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
CRUD operations for GetAllRecord records via csdk CLI
Usage
csdk get-all-record list
csdk get-all-record list --where.<field>.<op> <value> --orderBy <values>
csdk get-all-record list --limit 10 --after <cursor>
csdk get-all-record find-first --where.<field>.<op> <value>
csdk get-all-record get --id <UUID>
csdk get-all-record create --path <String> --data <JSON>
csdk get-all-record update --id <UUID> [--path <String>] [--data <JSON>]
csdk get-all-record delete --id <UUID>Examples
List getAllRecord records
csdk get-all-record listList getAllRecord records with pagination
csdk get-all-record list --limit 10 --offset 0List getAllRecord records with cursor pagination
csdk get-all-record list --limit 10 --after <cursor>Find first matching getAllRecord
csdk get-all-record find-first --where.id.equalTo <value>List getAllRecord records with field selection
csdk get-all-record list --select id,idList getAllRecord records with filtering and ordering
csdk get-all-record list --where.id.equalTo <value> --orderBy ID_ASCCreate a getAllRecord
csdk get-all-record create --path <String> --data <JSON>Get a getAllRecord by id
csdk get-all-record get --id <value>getObjectAtPath
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the getObjectAtPath query
Usage
csdk get-object-at-path --dbId <UUID> --storeId <UUID> --path <String> --refname <String>Examples
Run getObjectAtPath
csdk get-object-at-path --dbId <UUID> --storeId <UUID> --path <String> --refname <String>getPathObjectsFromRoot
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Reads and enables pagination through a set of Object.
Usage
csdk get-path-objects-from-root --databaseId <UUID> --id <UUID> --path <String> --first <Int> --offset <Int> --after <Cursor>Examples
Run getPathObjectsFromRoot
csdk get-path-objects-from-root --databaseId <UUID> --id <UUID> --path <String> --first <Int> --offset <Int> --after <Cursor>initEmptyRepo
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the initEmptyRepo mutation
Usage
csdk init-empty-repo --input.clientMutationId <String> --input.sId <UUID> --input.storeId <UUID>Examples
Run initEmptyRepo
csdk init-empty-repo --input.clientMutationId <String> --input.sId <UUID> --input.storeId <UUID>insertNodeAtPath
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the insertNodeAtPath mutation
Usage
csdk insert-node-at-path --input.clientMutationId <String> --input.sId <UUID> --input.root <UUID> --input.path <String> --input.data <JSON> --input.kids <UUID> --input.ktree <String>Examples
Run insertNodeAtPath
csdk insert-node-at-path --input.clientMutationId <String> --input.sId <UUID> --input.root <UUID> --input.path <String> --input.data <JSON> --input.kids <UUID> --input.ktree <String>object
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
CRUD operations for Object records via csdk CLI
Usage
csdk object list
csdk object list --where.<field>.<op> <value> --orderBy <values>
csdk object list --limit 10 --after <cursor>
csdk object find-first --where.<field>.<op> <value>
csdk object get --id <UUID>
csdk object create --databaseId <UUID> [--kids <UUID>] [--ktree <String>] [--data <JSON>]
csdk object update --id <UUID> [--databaseId <UUID>] [--kids <UUID>] [--ktree <String>] [--data <JSON>]
csdk object delete --id <UUID>Examples
List object records
csdk object listList object records with pagination
csdk object list --limit 10 --offset 0List object records with cursor pagination
csdk object list --limit 10 --after <cursor>Find first matching object
csdk object find-first --where.id.equalTo <value>List object records with field selection
csdk object list --select id,idList object records with filtering and ordering
csdk object list --where.id.equalTo <value> --orderBy ID_ASCCreate a object
csdk object create --databaseId <UUID> [--kids <UUID>] [--ktree <String>] [--data <JSON>]Get a object by id
csdk object get --id <value>provisionBucket
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Provision an S3 bucket for a logical bucket in the database. Reads the bucket config via RLS, then creates and configures the S3 bucket with the appropriate privacy policies, CORS rules, and lifecycle settings.
Usage
csdk provision-bucket --input.bucketKey <String> --input.ownerId <UUID>Examples
Run provisionBucket
csdk provision-bucket --input.bucketKey <String> --input.ownerId <UUID>ref
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
CRUD operations for Ref records via csdk CLI
Usage
csdk ref list
csdk ref list --where.<field>.<op> <value> --orderBy <values>
csdk ref list --limit 10 --after <cursor>
csdk ref find-first --where.<field>.<op> <value>
csdk ref get --id <UUID>
csdk ref create --name <String> --databaseId <UUID> --storeId <UUID> [--commitId <UUID>]
csdk ref update --id <UUID> [--name <String>] [--databaseId <UUID>] [--storeId <UUID>] [--commitId <UUID>]
csdk ref delete --id <UUID>Examples
List ref records
csdk ref listList ref records with pagination
csdk ref list --limit 10 --offset 0List ref records with cursor pagination
csdk ref list --limit 10 --after <cursor>Find first matching ref
csdk ref find-first --where.id.equalTo <value>List ref records with field selection
csdk ref list --select id,idList ref records with filtering and ordering
csdk ref list --where.id.equalTo <value> --orderBy ID_ASCCreate a ref
csdk ref create --name <String> --databaseId <UUID> --storeId <UUID> [--commitId <UUID>]Get a ref by id
csdk ref get --id <value>removeNodeAtPath
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the removeNodeAtPath mutation
Usage
csdk remove-node-at-path --input.clientMutationId <String> --input.dbId <UUID> --input.root <UUID> --input.path <String>Examples
Run removeNodeAtPath
csdk remove-node-at-path --input.clientMutationId <String> --input.dbId <UUID> --input.root <UUID> --input.path <String>requestUploadUrl
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Request a presigned URL for uploading a file directly to S3. Client computes SHA-256 of the file content and provides it here. If a file with the same hash already exists (dedup), returns the existing file ID and deduplicated=true with no uploadUrl.
Usage
csdk request-upload-url --input.bucketKey <String> --input.ownerId <UUID> --input.contentHash <String> --input.contentType <String> --input.size <Int> --input.filename <String>Examples
Run requestUploadUrl
csdk request-upload-url --input.bucketKey <String> --input.ownerId <UUID> --input.contentHash <String> --input.contentType <String> --input.size <Int> --input.filename <String>revParse
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the revParse query
Usage
csdk rev-parse --dbId <UUID> --storeId <UUID> --refname <String>Examples
Run revParse
csdk rev-parse --dbId <UUID> --storeId <UUID> --refname <String>setAndCommit
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the setAndCommit mutation
Usage
csdk set-and-commit --input.clientMutationId <String> --input.dbId <UUID> --input.storeId <UUID> --input.refname <String> --input.path <String> --input.data <JSON> --input.kids <UUID> --input.ktree <String>Examples
Run setAndCommit
csdk set-and-commit --input.clientMutationId <String> --input.dbId <UUID> --input.storeId <UUID> --input.refname <String> --input.path <String> --input.data <JSON> --input.kids <UUID> --input.ktree <String>setDataAtPath
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the setDataAtPath mutation
Usage
csdk set-data-at-path --input.clientMutationId <String> --input.sId <UUID> --input.root <UUID> --input.path <String> --input.data <JSON>Examples
Run setDataAtPath
csdk set-data-at-path --input.clientMutationId <String> --input.sId <UUID> --input.root <UUID> --input.path <String> --input.data <JSON>setPropsAndCommit
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the setPropsAndCommit mutation
Usage
csdk set-props-and-commit --input.clientMutationId <String> --input.dbId <UUID> --input.storeId <UUID> --input.refname <String> --input.path <String> --input.data <JSON>Examples
Run setPropsAndCommit
csdk set-props-and-commit --input.clientMutationId <String> --input.dbId <UUID> --input.storeId <UUID> --input.refname <String> --input.path <String> --input.data <JSON>store
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
CRUD operations for Store records via csdk CLI
Usage
csdk store list
csdk store list --where.<field>.<op> <value> --orderBy <values>
csdk store list --limit 10 --after <cursor>
csdk store find-first --where.<field>.<op> <value>
csdk store get --id <UUID>
csdk store create --name <String> --databaseId <UUID> [--hash <UUID>]
csdk store update --id <UUID> [--name <String>] [--databaseId <UUID>] [--hash <UUID>]
csdk store delete --id <UUID>Examples
List store records
csdk store listList store records with pagination
csdk store list --limit 10 --offset 0List store records with cursor pagination
csdk store list --limit 10 --after <cursor>Find first matching store
csdk store find-first --where.id.equalTo <value>List store records with field selection
csdk store list --select id,idList store records with filtering and ordering
csdk store list --where.id.equalTo <value> --orderBy ID_ASCCreate a store
csdk store create --name <String> --databaseId <UUID> [--hash <UUID>]Get a store by id
csdk store get --id <value>updateNodeAtPath
<!-- @constructive-io/graphql-codegen - DO NOT EDIT -->
Execute the updateNodeAtPath mutation
Usage
csdk update-node-at-path --input.clientMutationId <String> --input.dbId <UUID> --input.root <UUID> --input.path <String> --input.data <JSON> --input.kids <UUID> --input.ktree <String>Examples
Run updateNodeAtPath
csdk update-node-at-path --input.clientMutationId <String> --input.dbId <UUID> --input.root <UUID> --input.path <String> --input.data <JSON> --input.kids <UUID> --input.ktree <String>