Agentctl banner
itslab42 itslab42

Agentctl

AI community

Description

One config for all your AI coding agents — Claude, Codex, Cursor, Kiro, OpenCode

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

agentctl

[![CI](https://github.com/itslab42/agentctl/actions/workflows/ci.yaml/badge.svg)](https://github.com/itslab42/agentctl/actions/workflows/ci.yaml) [![npm](https://img.shields.io/npm/v/@lab42/agentctl)](https://www.npmjs.com/package/@lab42/agentctl) [![license](https://img.shields.io/npm/l/@lab42/agentctl)](./LICENSE) [![Socket Badge](https://badge.socket.dev/npm/package/@lab42/agentctl)](https://badge.socket.dev/npm/package/@lab42/agentctl)

Single source of truth for AI coding-agent permissions. Define once in `.ai/`, generate configs for **Claude Code**, **Codex CLI**, **OpenCode**, **Cursor**, and **Kiro**.

Quick Start

# Try it instantly (no install)
npx @lab42/agentctl@latest init
npx @lab42/agentctl@latest sync
# Or add as a dev dependency for the team
pnpm add -D @lab42/agentctl
pnpm exec agentctl init
pnpm exec agentctl sync

Or reverse-import from existing configs:

npx @lab42/agentctl@latest scan   # detect .claude/, .codex/, .cursor/, .kiro/, .opencode/ and import

Commands

Command Description
agentctl init Scaffold .ai/config.yaml and .ai/permissions.yaml
agentctl sync Generate runtime config files from .ai/
agentctl validate Validate source files without generating
agentctl check Report drift without writing (exit 1 if drifted)
agentctl diff Unified diff of what sync would change
agentctl status One-line sync summary per runtime
agentctl scan Reverse-import existing runtime configs into `