ct — ct install community, ct install, ide skills, ct for AI agents, ct Deno integration, Claude Code, Cursor, Windsurf

v1.0.0
GitHub

About this Skill

Perfect for TypeScript Agents needing advanced type checking and piece operations ct is a command-line binary for CommonTools, providing a CLI interface for various operations, including type checking and piece management.

Features

Supports top-level commands via `deno task ct --help`
Enables piece operations with `deno task ct piece --help`
Performs type checking using `deno task ct check --help`
Requires an identity key for most operations, derivable with `deno run -A packages/cli/mod.ts id derive`
Utilizes Deno for task execution and TypeScript for development

# Core Topics

commontoolsinc commontoolsinc
[0]
[0]
Updated: 3/8/2026

Agent Capability Analysis

The ct skill by commontoolsinc is an open-source community AI agent skill for Claude Code and other IDE workflows, helping agents execute tasks with better context, repeatability, and domain-specific guidance. Optimized for ct install, ct for AI agents, ct Deno integration.

Ideal Agent Persona

Perfect for TypeScript Agents needing advanced type checking and piece operations

Core Value

Empowers agents to perform type checking and piece operations using the `ct` binary, leveraging Deno and TypeScript for robust development, with features like `--help` for top-level commands and support for identity keys

Capabilities Granted for ct

Performing type checking with `deno task ct check`
Executing piece operations with `deno task ct piece`
Deriving identity keys for local development with `deno run -A packages/cli/mod.ts id derive`

! Prerequisites & Limits

  • Requires Deno and TypeScript environment
  • Needs an identity key for most operations
Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

ct

Install ct, an AI agent skill for AI agent workflows and automation. Works with Claude Code, Cursor, and Windsurf with one-command setup.

SKILL.md
Readonly

CT CLI

The ct binary is the CLI for CommonTools. Use --help for current commands:

bash
1deno task ct --help # Top-level commands 2deno task ct piece --help # Piece operations 3deno task ct check --help # Type checking

Environment Setup

Identity key (required for most operations):

bash
1ls -la claude.key # Check for existing 2 3# For local dev: derive key matching toolshed's "implicit trust" identity 4deno run -A packages/cli/mod.ts id derive "implicit trust" > claude.key 5 6# For a fresh random key (e.g., against production): 7deno run -A packages/cli/mod.ts id new > claude.key

IMPORTANT: Do NOT use deno task ct id new > file — the deno task wrapper prints ANSI-colored preamble to stdout, which pollutes the key file. Always use deno run -A packages/cli/mod.ts when redirecting output.

Environment variables (avoid repeating flags):

bash
1export CT_API_URL=http://localhost:8000 # or https://toolshed.saga-castor.ts.net/ 2export CT_IDENTITY=./claude.key

Experimental flags (must be set on both servers AND CLI commands):

bash
1# Pass experiment env vars to CLI commands: 2EXPERIMENTAL_CANONICAL_HASHING=true \ 3EXPERIMENTAL_RICH_STORABLE_VALUES=true \ 4deno task ct piece new pattern.tsx ...

See docs/development/EXPERIMENTAL_OPTIONS.md for all available flags.

Local servers: See docs/development/LOCAL_DEV_SERVERS.md

Quick Command Reference

OperationCommand
Type checkdeno task ct check pattern.tsx --no-run
Deploy newdeno task ct piece new pattern.tsx -i key -a url -s space
Update existingdeno task ct piece setsrc pattern.tsx --piece ID -i key -a url -s space
Inspect statedeno task ct piece inspect --piece ID ...
Get fielddeno task ct piece get --piece ID fieldPath ...
Set fieldecho '{"data":...}' | deno task ct piece set --piece ID path ...
Call handlerdeno task ct piece call --piece ID handlerName ...
Trigger recomputedeno task ct piece step --piece ID ...
List piecesdeno task ct piece ls -i key -a url -s space
Visualizedeno task ct piece map ...

Check Command Flags

deno task ct check compiles and evaluates patterns. Key flags:

FlagPurpose
--no-runType check only, don't execute
--no-checkExecute without type checking
--show-transformedShow the transformed TypeScript after compilation
--verbose-errorsShow original TS errors alongside simplified hints
--pattern-jsonPrint the evaluated pattern export as JSON
--output <path>Store compiled JS to a file
--main-export <name>Select non-default export (default: "default")
--filename <name>Override filename for source maps

Common usage:

bash
1deno task ct check pattern.tsx # Compile + execute (quiet on success) 2deno task ct check pattern.tsx --no-run # Type check only (fast) 3deno task ct check pattern.tsx --no-check # Skip types, just execute 4deno task ct check pattern.tsx --show-transformed # Debug compiler transforms 5deno task ct check pattern.tsx --verbose-errors # Detailed error context

Core Workflow: setsrc vs new

Critical pattern: After initial deployment, use setsrc to iterate:

bash
1# First time only 2deno task ct piece new pattern.tsx ... 3# Output: Created piece bafyreia... <- Save this ID! 4 5# ALL subsequent iterations 6deno task ct piece setsrc pattern.tsx --piece bafyreia... ...

Why: new creates duplicate pieces. setsrc updates in-place.

JSON Input Format

All values to set and call must be valid JSON:

bash
1# Strings need nested quotes 2echo '"hello world"' | deno task ct piece set ... title 3 4# Numbers are bare 5echo '42' | deno task ct piece set ... count 6 7# Objects 8echo '{"name": "John"}' | deno task ct piece set ... user

Gotcha: Always step After set or call

Neither piece set nor piece call triggers recomputation automatically. You must run piece step after either one to get fresh computed values.

bash
1# After setting data: 2echo '[...]' | deno task ct piece set --piece ID expenses ... 3deno task ct piece step --piece ID ... # Required! 4deno task ct piece get --piece ID totalSpent ... 5 6# After calling a handler: 7deno task ct piece call --piece ID addItem '{"title": "Test"}' 8deno task ct piece step --piece ID ... # Required! 9deno task ct piece inspect --piece ID ...

Handler testing workflow (deploy → call → step → inspect):

bash
1# 1. Deploy 2deno task ct piece new pattern.tsx -i key -a url -s space 3# 2. Call a handler 4deno task ct piece call --piece ID handlerName '{"arg": "value"}' ... 5# 3. Step to process 6deno task ct piece step --piece ID ... 7# 4. Inspect result 8deno task ct piece inspect --piece ID ... 9# 5. Repeat 2-4 for each handler

See docs/common/workflows/handlers-cli-testing.md for the full workflow and docs/development/debugging/cli-debugging.md for debugging.

Troubleshooting

IssueFix
Commands hangCheck Tailnet connection for *.ts.net URLs
Permission deniedchmod 600 claude.key
JSON parse errorCheck nested quotes, no trailing commas
Local servers not responding./scripts/check-local-dev.sh then ./scripts/restart-local-dev.sh --force

References

  • packages/patterns/system/default-app.tsx - System pieces (allCharms list lives here)
  • docs/common/workflows/handlers-cli-testing.md - Handler testing
  • docs/development/debugging/cli-debugging.md - CLI debugging

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is ct?

Perfect for TypeScript Agents needing advanced type checking and piece operations ct is a command-line binary for CommonTools, providing a CLI interface for various operations, including type checking and piece management.

How do I install ct?

Run the command: npx killer-skills add commontoolsinc/labs. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for ct?

Key use cases include: Performing type checking with `deno task ct check`, Executing piece operations with `deno task ct piece`, Deriving identity keys for local development with `deno run -A packages/cli/mod.ts id derive`.

Which IDEs are compatible with ct?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for ct?

Requires Deno and TypeScript environment. Needs an identity key for most operations.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add commontoolsinc/labs. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use ct immediately in the current project.

Related Skills

Looking for an alternative to ct or another community skill for your workflow? Explore these related open-source skills.

View All

widget-generator

Logo of f
f

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

149.6k
0
AI

flags

Logo of vercel
vercel

flags is a Next.js feature management skill that enables developers to efficiently add or modify framework feature flags, streamlining React application development.

138.4k
0
Browser

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI