agnostic-ai

mcp
Security Audit
Pass
Health Pass
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Community trust — 11 GitHub stars
Code Pass
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

One source of truth for AI agents, skills, rules, and hooks. Transpile to every AI CLI you use.

README.md

agnostic-ai

One spec. Every AI CLI.

Write your agents, skills, rules, and hooks once. Ship them to Claude Code, Codex, Gemini, Cursor, Copilot, and 20 more in their native format.

CI
Release
Downloads
Go
License: MIT


Why

You run more than one AI CLI: Claude Code in the terminal, Cursor in the editor, whichever model leads next month. Each wants the same conventions in its own format: CLAUDE.md, AGENTS.md, .cursor/rules, GEMINI.md.

agnostic-ai keeps one source of truth in Markdown plus YAML frontmatter, aligned with AGENTS.md. sync writes what each tool expects, where it expects it. Switching tools is one command. Running four is the same command.

Install

brew install --cask Chemaclass/tap/agnostic-ai                                                      # macOS / Linux
irm https://raw.githubusercontent.com/Chemaclass/agnostic-ai/main/scripts/install.ps1 | iex         # Windows
curl -fsSL https://raw.githubusercontent.com/Chemaclass/agnostic-ai/main/scripts/install.sh | bash  # no package manager

The scripts need no Go toolchain: each fetches the archive for your OS and CPU, verifies it against checksums.txt, and puts the binary on PATH.

Inside Claude Code, skills that install and drive the CLI for you:

/plugin marketplace add Chemaclass/agnostic-ai
/plugin install agnostic-ai@chemaclass

Other routes (go install, npx, winget, Scoop, prebuilt archives) and agnostic-ai upgrade, which detects the route you used: install reference.

Quickstart

agnostic-ai init --demo   # scaffold specs, one example per kind
agnostic-ai sync          # emit native config for every target

Edit anything under .agnostic-ai/, run sync again. Already have CLAUDE.md or .cursor/rules? agnostic-ai import claude (also cursor, codex, gemini, cline, ...) turns them into specs first.

Watch mode, shell completion, CI drift gate, commit-vs-ignore: Getting started.

How it works

diagram

One rule in .agnostic-ai/rules/conventional-commits.md:

---
name: conventional-commits
description: Always use Conventional Commits format.
globs: "**/*"
alwaysApply: true
---

Use Conventional Commits. Subject under 72 chars. Body explains why, not what.

agnostic-ai sync turns it into .cursor/rules/conventional-commits.mdc:

---
description: Always use Conventional Commits format.
globs: "**/*"
alwaysApply: true
---
<!-- Generated by agnostic-ai -->

Use Conventional Commits. Subject under 72 chars. Body explains why, not what.

The same file lands in every target's own rules directory: .claude/rules/, .kiro/steering/, .trae/rules/, and the rest. Tools without one (Codex, Gemini, Aider, Junie) get the body inlined in their entry-point instead. Every root file (CLAUDE.md, AGENTS.md, GEMINI.md, CONVENTIONS.md, .github/copilot-instructions.md) carries the same short pointer back to the specs, so no tool reads a stale copy.

Supported targets

25 targets, all first-class: find your row, read what works out of the box. sync enables 20 by default. Amp, Warp, Jules, Goose, and Augment are opt-in: add them to targets: or pass -t amp,warp,jules,goose,augment.

Target Agents Skills Rules Hooks MCPs
Claude Code
Codex CLI
Gemini CLI
Cursor
GitHub Copilot -
Aider - -
Cline - -
Windsurf / Devin -
Continue -
Amp -
Zed
Warp -
OpenCode -
Google Antigravity -
Junie (JetBrains) -
Kiro (AWS)
Crush (Charm) - -
Trae (ByteDance) -
Qoder (Alibaba) -
OpenHands (All Hands) - -
Factory (Droid) -
Kilo Code -
Jules (Google) - - - -
Goose (Block) - - -
Augment Code -
  • ✅ native — the tool's own format, at the path it auto-loads.
  • ◐ bundled — folded into the target's entry-point file, no per-spec file.
  • ○ opt-in — set the matching outputs.<target>.* key to materialize a file.
  • - not supported — skipped with a warning (silence it with on-unsupported: silent).

Five kinds here. command, settings, review, environment, and ignore are in the full matrix, which also carries a Verify with the real CLI checklist per target. Golden-snapshot tests lock every cell.

Documentation

Get started

Reference

Workflows

  • CI gate: drift checks on every PR
  • Git hooks: pre-commit, lefthook, husky recipes
  • Packs: share spec bundles across repos

Tools

Contributing


Write the rule once. Every AI tool obeys it. Outlive the tool.

Share user configuration across Claude Code and Cursor

Put user-wide instructions in ~/.agnostic-ai/AGNOSTIC_AI.md, with optional rules/, hooks/, and skills/ folders beside it. Then run this from any directory:

agnostic-ai sync --global

This mode is opt-in and separate from project sync. It writes native user configuration for 22 of the 25 targets. See global configuration.

Reviews (0)

No results found