agent-config 0.2.0

Install hooks/integrations into AI coding harnesses (Claude Code, Cursor, Gemini CLI, OpenCode, Codex CLI, Cline, Windsurf, ...) without learning each one's filesystem layout.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.95"
name = "agent-config"
version = "0.2.0"
build = false
exclude = [
    ".agents/",
    ".claude/",
    ".github/",
    ".mcp.json",
    ".synrepo/",
    ".syntext/",
    "AGENTS.md",
    "CLAUDE.md",
    "repomix-output.xml",
    "synrepo-context/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Install hooks/integrations into AI coding harnesses (Claude Code, Cursor, Gemini CLI, OpenCode, Codex CLI, Cline, Windsurf, ...) without learning each one's filesystem layout."
readme = "README.md"
keywords = [
    "ai",
    "hooks",
    "claude",
    "cursor",
    "cli",
]
categories = [
    "development-tools",
    "command-line-utilities",
]
license = "MIT"
repository = "https://github.com/whit3rabbit/agent-config"

[lib]
name = "agent_config"
path = "src/lib.rs"

[[example]]
name = "discover_capable_agents"
path = "examples/discover_capable_agents.rs"

[[example]]
name = "dry_run_plan"
path = "examples/dry_run_plan.rs"

[[example]]
name = "gen_schema"
path = "examples/gen_schema.rs"

[[example]]
name = "hooks_install_uninstall"
path = "examples/hooks_install_uninstall.rs"

[[example]]
name = "instruction_install"
path = "examples/instruction_install.rs"

[[example]]
name = "mcp_install"
path = "examples/mcp_install.rs"

[[example]]
name = "multi_consumer"
path = "examples/multi_consumer.rs"

[[example]]
name = "scopes_local_vs_global"
path = "examples/scopes_local_vs_global.rs"

[[example]]
name = "skill_install"
path = "examples/skill_install.rs"

[[example]]
name = "tui_dry_run"
path = "examples/tui_dry_run/main.rs"

[[test]]
name = "concurrency"
path = "tests/concurrency.rs"

[[test]]
name = "drift"
path = "tests/drift.rs"

[[test]]
name = "golden"
path = "tests/golden.rs"

[[test]]
name = "instruction_hook_collision"
path = "tests/instruction_hook_collision.rs"

[[test]]
name = "instruction_registry"
path = "tests/instruction_registry.rs"

[[test]]
name = "mcp_registry"
path = "tests/mcp_registry.rs"

[[test]]
name = "plan_api"
path = "tests/plan_api.rs"

[[test]]
name = "registry"
path = "tests/registry.rs"

[[test]]
name = "schema_golden"
path = "tests/schema_golden.rs"

[[test]]
name = "size_limit"
path = "tests/size_limit.rs"

[[test]]
name = "skill_registry"
path = "tests/skill_registry.rs"

[[test]]
name = "status_registry"
path = "tests/status_registry.rs"

[[test]]
name = "symlink_safety"
path = "tests/symlink_safety.rs"

[[test]]
name = "validation"
path = "tests/validation.rs"

[[test]]
name = "windows_paths"
path = "tests/windows_paths.rs"

[dependencies.anyhow]
version = "1"

[dependencies.dirs]
version = "5"

[dependencies.fluent-uri]
version = "0.4"

[dependencies.json5]
version = "1.3"

[dependencies.jsonc-parser]
version = "0.32.3"
features = ["serde"]

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"
features = ["preserve_order"]

[dependencies.sha2]
version = "0.10"

[dependencies.tempfile]
version = "3"

[dependencies.thiserror]
version = "1"

[dependencies.toml_edit]
version = "0.22"

[dependencies.yaml_serde]
version = "0.10"

[dev-dependencies.crossterm]
version = "0.29"

[dev-dependencies.pretty_assertions]
version = "1"

[dev-dependencies.ratatui]
version = "0.30"

[dev-dependencies.tempfile]
version = "3"

[lints.rust]
missing_docs = "warn"
unsafe_code = "forbid"