[package]
edition = "2021"
name = "ggen-cli-lib"
version = "26.7.2"
authors = ["Sean Chatman <sean@chatmangpt.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "CLI interface for ggen"
readme = "README.md"
keywords = [
"cli",
"code-generation",
"rdf",
"templates",
]
categories = [
"development-tools",
"command-line-utilities",
]
license = "MIT"
repository = "https://github.com/seanchatmangpt/ggen"
[features]
autonomic = []
default = []
experimental = []
integration = []
live-llm-tests = []
lsp = [
"dep:ggen-lsp",
"dep:ggen-lsp-mcp",
]
[lib]
name = "ggen_cli_lib"
path = "src/lib.rs"
[[bin]]
name = "ggen"
path = "src/main.rs"
[[test]]
name = "a2a_agent_lifecycle"
path = "tests/a2a_agent_lifecycle.rs"
[[test]]
name = "agent_lifecycle_test"
path = "tests/agent_lifecycle_test.rs"
[[test]]
name = "chicago_tdd_critical_commands"
path = "tests/chicago_tdd_critical_commands.rs"
[[test]]
name = "chicago_tdd_working_capabilities"
path = "tests/chicago_tdd_working_capabilities.rs"
[[test]]
name = "clap_noun_verb_integration"
path = "tests/clap_noun_verb_integration.rs"
[[test]]
name = "cli_subcommand"
path = "tests/cli_subcommand.rs"
[[test]]
name = "coherence_gate_test"
path = "tests/coherence_gate_test.rs"
[[test]]
name = "construct_command_test"
path = "tests/construct_command_test.rs"
[[test]]
name = "doctor_adversarial_tests"
path = "tests/doctor_adversarial_tests.rs"
required-features = ["integration"]
[[test]]
name = "e2e"
path = "tests/e2e.rs"
required-features = ["integration"]
[[test]]
name = "e2e_pack_workflow_test"
path = "tests/e2e_pack_workflow_test.rs"
[[test]]
name = "entry_point_integration"
path = "tests/entry_point_integration.rs"
[[test]]
name = "gall_sync_actuation"
path = "tests/gall_sync_actuation.rs"
[[test]]
name = "graph_command_test"
path = "tests/graph_command_test.rs"
[[test]]
name = "init_git_hooks_test"
path = "tests/init_git_hooks_test.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "integration_ai_e2e"
path = "tests/integration_ai_e2e.rs"
[[test]]
name = "integration_build"
path = "tests/integration_build.rs"
[[test]]
name = "integration_cli"
path = "tests/integration_cli.rs"
[[test]]
name = "integration_cli_ux_e2e"
path = "tests/integration_cli_ux_e2e.rs"
[[test]]
name = "integration_graph_e2e"
path = "tests/integration_graph_e2e.rs"
[[test]]
name = "integration_marketplace_e2e"
path = "tests/integration_marketplace_e2e.rs"
[[test]]
name = "integration_ontology_e2e"
path = "tests/integration_ontology_e2e.rs"
[[test]]
name = "integration_project_e2e"
path = "tests/integration_project_e2e.rs"
[[test]]
name = "integration_template"
path = "tests/integration_template.rs"
[[test]]
name = "integration_template_e2e"
path = "tests/integration_template_e2e.rs"
[[test]]
name = "integration_tests"
path = "tests/integration_tests.rs"
[[test]]
name = "integration_utils_e2e"
path = "tests/integration_utils_e2e.rs"
[[test]]
name = "integration_workflow_e2e"
path = "tests/integration_workflow_e2e.rs"
[[test]]
name = "inverse_sync_cmd_test"
path = "tests/inverse_sync_cmd_test.rs"
[[test]]
name = "lifecycle_e2e_test"
path = "tests/lifecycle_e2e_test.rs"
[[test]]
name = "llm_e2e_test"
path = "tests/llm_e2e_test.rs"
[[test]]
name = "marketplace_comprehensive"
path = "tests/marketplace_comprehensive.rs"
[[test]]
name = "marketplace_registry_test"
path = "tests/marketplace_registry_test.rs"
[[test]]
name = "marketplace_sync_e2e"
path = "tests/marketplace_sync_e2e.rs"
[[test]]
name = "mcp_command_test"
path = "tests/mcp_command_test.rs"
[[test]]
name = "mcp_error_handling"
path = "tests/mcp_error_handling.rs"
[[test]]
name = "mcp_tool_operations"
path = "tests/mcp_tool_operations.rs"
[[test]]
name = "node_integration_test"
path = "tests/node_integration_test.rs"
[[test]]
name = "ontology_command_test"
path = "tests/ontology_command_test.rs"
[[test]]
name = "outdated_warning_tests"
path = "tests/outdated_warning_tests.rs"
[[test]]
name = "pack_cache_test"
path = "tests/pack_cache_test.rs"
[[test]]
name = "packs"
path = "tests/packs/mod.rs"
[[test]]
name = "packs_install_improvement_test"
path = "tests/packs_install_improvement_test.rs"
[[test]]
name = "packs_test"
path = "tests/packs_test.rs"
[[test]]
name = "performance"
path = "tests/performance.rs"
[[test]]
name = "proof_digest_reverify_test"
path = "tests/proof_digest_reverify_test.rs"
[[test]]
name = "proof_graph_test"
path = "tests/proof_graph_test.rs"
[[test]]
name = "proof_init_test"
path = "tests/proof_init_test.rs"
[[test]]
name = "proof_pack_test"
path = "tests/proof_pack_test.rs"
[[test]]
name = "proof_policy_doctor_utils_test"
path = "tests/proof_policy_doctor_utils_test.rs"
[[test]]
name = "receipt_command_test"
path = "tests/receipt_command_test.rs"
[[test]]
name = "receipt_generation_test"
path = "tests/receipt_generation_test.rs"
[[test]]
name = "sabotage_tests"
path = "tests/sabotage_tests.rs"
required-features = ["integration"]
[[test]]
name = "self_play_smoke_test"
path = "tests/self_play_smoke_test.rs"
[[test]]
name = "sync_command_test"
path = "tests/sync_command_test.rs"
[[test]]
name = "utils_command_test"
path = "tests/utils_command_test.rs"
[[test]]
name = "workflow_command_test"
path = "tests/workflow_command_test.rs"
[[test]]
name = "yawl_watch_test"
path = "tests/yawl_watch_test.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.base64]
version = "0.22"
[dependencies.blake3]
version = "1.5"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4.5"
features = ["derive"]
[dependencies.clap-noun-verb]
version = "=26.6.2"
[dependencies.clap-noun-verb-macros]
version = "=26.6.2"
[dependencies.clap_complete]
version = "4.5.58"
[dependencies.colored]
version = "3.0"
[dependencies.dirs]
version = "6.0"
[dependencies.dotenvy]
version = "0.15"
[dependencies.ed25519-dalek]
version = "2.1"
[dependencies.flate2]
version = "1.0"
[dependencies.futures]
version = "0.3"
[dependencies.genai]
version = "0.5"
[dependencies.ggen-a2a-mcp]
version = "26.7.1"
[dependencies.ggen-core]
version = "26.7.2"
features = ["otel"]
[dependencies.ggen-graph]
version = "26.7.2"
[dependencies.ggen-lsp]
version = "26.7.1"
optional = true
[dependencies.ggen-lsp-mcp]
version = "26.7.1"
optional = true
[dependencies.glob]
version = "0.3"
[dependencies.hex]
version = "0.4"
[dependencies.indexmap]
version = "2.7"
features = ["serde"]
[dependencies.indicatif]
version = "0.17"
[dependencies.linkme]
version = "0.3"
[dependencies.log]
version = "0.4.28"
[dependencies.md5]
version = "0.8"
[dependencies.notify]
version = "6.1"
[dependencies.notify-debouncer-full]
version = "0.3"
[dependencies.once_cell]
version = "1.19"
[dependencies.oxigraph]
version = "0.5.6"
features = ["rdf-12"]
[dependencies.rayon]
version = "1.11"
[dependencies.regex]
version = "1.12"
[dependencies.reqwest]
version = "0.12"
features = ["json"]
[dependencies.semver]
version = "1.0"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.serde_yaml]
version = "0.9"
[dependencies.sha2]
version = "0.10"
[dependencies.tar]
version = "0.4"
[dependencies.tera]
version = "1.20"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.47"
features = ["full"]
[dependencies.toml]
version = "1.1.0"
[dependencies.tracing]
version = "0.1"
[dependencies.uuid]
version = "1.18"
features = [
"v4",
"serde",
]
[dependencies.walkdir]
version = "2.5"
[dev-dependencies.assert_cmd]
version = "2"
[dev-dependencies.assert_fs]
version = "1"
[dev-dependencies.chicago-tdd-tools]
version = "26.7.1"
features = [
"testing-extras",
"testcontainers",
]
[dev-dependencies.criterion]
version = "0.5"
features = [
"async_tokio",
"html_reports",
]
[dev-dependencies.fake]
version = "4.4"
features = ["derive"]
[dev-dependencies.httpmock]
version = "0.7"
[dev-dependencies.libc]
version = "0.2"
[dev-dependencies.mockall]
version = "0.13"
[dev-dependencies.notify]
version = "6.1"
[dev-dependencies.oxigraph]
version = "0.5.6"
features = ["rdf-12"]
[dev-dependencies.predicates]
version = "3"
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.serde_yaml]
version = "0.9"
[dev-dependencies.serial_test]
version = "3.2"
[dev-dependencies.tempfile]
version = "3.23"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"json",
"ansi",
]
[lints.clippy]
assigning_clones = "allow"
blocks_in_conditions = "allow"
bool_comparison = "allow"
bool_to_int_with_if = "allow"
borrowed_box = "allow"
box_collection = "allow"
cargo_common_metadata = "allow"
case_sensitive_file_extension_comparisons = "allow"
cast_lossless = "allow"
cast_possible_truncation = "allow"
cast_possible_wrap = "allow"
cast_precision_loss = "allow"
cast_sign_loss = "allow"
checked_conversions = "allow"
clone_on_copy = "allow"
cloned_instead_of_copied = "allow"
collapsible_if = "allow"
collection_is_never_read = "allow"
default_trait_access = "allow"
derivable_impls = "allow"
doc_lazy_continuation = "allow"
doc_link_with_quotes = "allow"
doc_markdown = "allow"
double_ended_iterator_last = "allow"
double_must_use = "allow"
empty_enum_variants_with_brackets = "allow"
empty_line_after_doc_comments = "allow"
enum_glob_use = "allow"
equatable_if_let = "allow"
expect_used = "warn"
explicit_auto_deref = "allow"
explicit_iter_loop = "allow"
explicit_write = "allow"
field_reassign_with_default = "allow"
filter_map_next = "allow"
flat_map_option = "allow"
float_cmp = "allow"
fn_params_excessive_bools = "allow"
format_in_format_args = "allow"
format_push_string = "allow"
from_iter_instead_of_collect = "allow"
from_over_into = "allow"
get_first = "allow"
get_unwrap = "allow"
if_not_else = "allow"
if_then_some_else_none = "allow"
implicit_clone = "allow"
implied_bounds_in_impls = "allow"
inconsistent_struct_constructor = "allow"
indexing_slicing = "allow"
inherent_to_string = "allow"
inline_always = "allow"
invalid_upcast_comparisons = "allow"
items_after_statements = "allow"
iter_cloned_collect = "allow"
iter_not_returning_iterator = "allow"
iter_without_into_iter = "allow"
large_digit_groups = "allow"
large_futures = "allow"
large_stack_arrays = "allow"
large_types_passed_by_value = "allow"
len_zero = "allow"
let_and_return = "allow"
let_underscore_untyped = "allow"
linkedlist = "allow"
lossy_float_literal = "allow"
manual_abs_diff = "allow"
manual_assert = "allow"
manual_bits = "allow"
manual_clamp = "allow"
manual_contains = "allow"
manual_filter = "allow"
manual_find_map = "allow"
manual_inspect = "allow"
manual_instant_elapsed = "allow"
manual_is_ascii_check = "allow"
manual_is_multiple_of = "allow"
manual_let_else = "allow"
manual_next_back = "allow"
manual_ok_or = "allow"
manual_range_contains = "allow"
manual_rem_euclid = "allow"
manual_rotate = "allow"
manual_saturating_arithmetic = "allow"
manual_string_new = "allow"
manual_strip = "allow"
many_single_char_names = "allow"
map_clone = "allow"
map_entry = "allow"
map_err_ignore = "allow"
map_flatten = "allow"
map_identity = "allow"
map_unwrap_or = "allow"
match_bool = "allow"
match_same_arms = "allow"
match_wild_err_arm = "allow"
mem_forget = "allow"
min_ident_chars = "allow"
missing_const_for_fn = "allow"
missing_errors_doc = "allow"
missing_fields_in_debug = "allow"
missing_panics_doc = "allow"
missing_trait_methods = "allow"
mixed_case_hex_literals = "allow"
mixed_read_write_in_expression = "allow"
module_inception = "allow"
module_name_repetitions = "allow"
multiple_crate_versions = "allow"
multiple_inherent_impl = "allow"
must_use_candidate = "allow"
mutex_atomic = "allow"
naive_bytecount = "allow"
needless_borrow = "allow"
needless_borrows_for_generic_args = "allow"
needless_continue = "allow"
needless_doctest_main = "allow"
needless_for_each = "allow"
needless_pass_by_value = "allow"
needless_question_mark = "allow"
needless_range_loop = "allow"
needless_return = "allow"
needless_update = "allow"
neg_multiply = "allow"
new_without_default = "allow"
non_send_fields_in_send_ty = "allow"
nonstandard_macro_braces = "allow"
only_used_in_recursion = "allow"
option_if_let_else = "allow"
option_map_or_none = "allow"
option_option = "allow"
or_fun_call = "allow"
panic = "warn"
panic_in_result_fn = "allow"
path_buf_push_overwrite = "allow"
pattern_type_mismatch = "allow"
precedence = "allow"
print_literal = "allow"
print_with_newline = "allow"
ptr_arg = "allow"
ptr_as_ptr = "allow"
pub_underscore_fields = "allow"
question_mark_used = "allow"
range_minus_one = "allow"
range_plus_one = "allow"
rc_buffer = "allow"
recursive_format_impl = "allow"
redundant_clone = "allow"
redundant_closure = "allow"
redundant_closure_for_method_calls = "allow"
redundant_else = "allow"
redundant_feature_names = "allow"
redundant_field_names = "allow"
redundant_locals = "allow"
redundant_pattern = "allow"
redundant_pub_crate = "allow"
redundant_slicing = "allow"
ref_binding_to_reference = "allow"
ref_option_ref = "allow"
rest_pat_in_fully_bound_structs = "allow"
return_and_then = "allow"
return_self_not_must_use = "allow"
same_item_push = "allow"
same_name_method = "allow"
seek_from_current = "allow"
self_named_constructors = "allow"
semicolon_if_nothing_returned = "allow"
separated_literal_suffix = "allow"
shadow_unrelated = "allow"
should_implement_trait = "allow"
significant_drop_tightening = "allow"
similar_names = "allow"
single_component_path_imports = "allow"
single_match_else = "allow"
stable_sort_primitive = "allow"
string_add = "allow"
string_add_assign = "allow"
string_lit_as_bytes = "allow"
struct_field_names = "allow"
suspicious_operation_groupings = "allow"
suspicious_to_owned = "allow"
suspicious_xor_used_as_pow = "allow"
test_attr_in_doctest = "allow"
tests_outside_test_module = "allow"
todo = "warn"
too_many_lines = "allow"
trailing_empty_array = "allow"
trait_duplication_in_bounds = "allow"
trivially_copy_pass_by_ref = "allow"
try_err = "allow"
tuple_array_conversions = "allow"
type_complexity = "allow"
type_repetition_in_bounds = "allow"
undocumented_unsafe_blocks = "allow"
unimplemented = "warn"
uninlined_format_args = "allow"
unit_arg = "allow"
unnecessary_box_returns = "allow"
unnecessary_cast = "allow"
unnecessary_filter_map = "allow"
unnecessary_fold = "allow"
unnecessary_join = "allow"
unnecessary_lazy_evaluations = "allow"
unnecessary_literal_bound = "allow"
unnecessary_map_or = "allow"
unnecessary_mut_passed = "allow"
unnecessary_operation = "allow"
unnecessary_self_imports = "allow"
unnecessary_sort_by = "allow"
unnecessary_struct_initialization = "allow"
unnecessary_to_owned = "allow"
unnecessary_wraps = "allow"
unneeded_field_pattern = "allow"
unneeded_wildcard_pattern = "allow"
unreadable_literal = "allow"
unsafe_derive_deserialize = "allow"
unused_async = "allow"
unused_peekable = "allow"
unused_rounding = "allow"
unused_self = "allow"
unused_unit = "allow"
unwrap_in_result = "allow"
unwrap_or_default = "allow"
unwrap_used = "warn"
upper_case_acronyms = "allow"
use_self = "allow"
useless_asref = "allow"
useless_format = "allow"
useless_vec = "allow"
vec_box = "allow"
vec_init_then_push = "allow"
while_let_on_iterator = "allow"
wildcard_enum_match_arm = "allow"
wildcard_imports = "allow"
write_literal = "allow"
wrong_self_convention = "allow"
zero_sized_map_values = "allow"
zombie_processes = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.cargo]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
dead_code = "allow"
missing_docs = "allow"
unsafe_code = "warn"
unused_variables = "allow"
warnings = "allow"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(benchmark_mode)"]